/* Philos Beauty - app styles. Source: index.html standalone design. */
/* ===== Fonts (local, lightweight) ===== */
  @font-face{font-family:Manrope;src:url('../fonts/manrope/Manrope-VariableFont_wght.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
  @font-face{font-family:Literata;src:url('../fonts/literata/Literata72pt-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
  @font-face{font-family:Literata;src:url('../fonts/literata/Literata72pt-RegularItalic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
  @font-face{font-family:Literata;src:url('../fonts/literata/Literata72pt-SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

  /* ===== Tokens ===== */
  :root{
    --cream:#FBF8FE;--cream-deep:#F1ECFA;--peach:#F4C6E0;--peach-soft:#FBEAF4;
    --mint:#C3CFF0;--mint-soft:#EAEFFB;--periwinkle:#4A69BD;
    --magenta:#D84B9C;--magenta-deep:#B83A8A;--rose:#C9A6E9;--violet:#7B4397;
    --ink:#16152B;--ink-soft:#3D3A5C;--muted:#7A7796;--line:#E7E0F2;--surface:#fff;
    --grad-cta:linear-gradient(135deg,#D84B9C 0%,#7B4397 100%);
    --grad-iris:linear-gradient(120deg,#D84B9C 0%,#C9A6E9 42%,#4A69BD 100%);
    --sans:"Manrope",system-ui,-apple-system,sans-serif;
    --serif:"Literata",Georgia,serif;
    --container:min(1320px,calc(100% - 3rem));
    --nav-h:84px;
    --ease:cubic-bezier(.22,1,.36,1);
    --r:24px;
  }
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth}
  body{font-family:var(--sans);font-size:clamp(1rem,.3vw + .95rem,1.08rem);line-height:1.7;color:var(--ink-soft);background:var(--cream);overflow-x:hidden}
  img{max-width:100%;height:auto;display:block}
  a{color:inherit;text-decoration:none}
  ul{list-style:none}
  ::selection{background:var(--magenta);color:#fff}
  .container{width:var(--container);margin-inline:auto}

  h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.06;color:var(--ink);letter-spacing:-.015em}
  .display{font-family:var(--serif);font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--ink)}
  .ital{font-style:italic;color:var(--magenta-deep)}

  .eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--sans);font-size:.74rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--magenta-deep)}
  .eyebrow::before{content:"";width:28px;height:1px;background:currentColor;opacity:.6}
  .eyebrow.c{justify-content:center}.eyebrow.c::before{display:none}

  /* ===== Calm dewy backdrop (cheap) ===== */
  .bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:linear-gradient(180deg,var(--cream),#F6F1FB 45%,var(--cream-deep))}
  .bg span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;will-change:transform}
  .bg span:nth-child(1){width:46vw;height:46vw;top:-12%;left:-8%;background:radial-gradient(circle at 30% 30%,var(--peach),transparent 70%);animation:d1 32s ease-in-out infinite}
  .bg span:nth-child(2){width:42vw;height:42vw;top:32%;right:-12%;background:radial-gradient(circle,var(--mint),transparent 70%);animation:d2 38s ease-in-out infinite}
  .bg span:nth-child(3){width:38vw;height:38vw;bottom:-10%;left:26%;background:radial-gradient(circle,var(--rose),transparent 70%);opacity:.38;animation:d3 44s ease-in-out infinite}
  @keyframes d1{50%{transform:translate(6%,8%) scale(1.12)}}
  @keyframes d2{50%{transform:translate(-7%,-5%) scale(1.08)}}
  @keyframes d3{50%{transform:translate(5%,-7%) scale(1.15)}}
  .page{position:relative;z-index:2}

  /* ===== Buttons ===== */
  .btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--sans);font-weight:600;font-size:.94rem;padding:1rem 1.9rem;border-radius:100px;border:1.5px solid transparent;overflow:hidden;isolation:isolate;transition:color .35s var(--ease),border-color .35s,transform .25s var(--ease)}
  .btn span{position:relative;z-index:2}
  .btn::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;transform:translateY(101%);transition:transform .45s var(--ease)}
  .btn:hover{transform:translateY(-2px)}
  .btn:hover::after{transform:translateY(0)}
  .btn--primary{background:var(--magenta);color:#fff}
  .btn--primary::after{background:linear-gradient(135deg,var(--violet),var(--ink))}
  .btn--primary:hover{color:#fff}
  .btn--ghost{background:rgba(255,255,255,.6);color:var(--ink);border-color:rgba(22,21,43,.22)}
  .btn--ghost::after{background:var(--grad-cta)}
  .btn--ghost:hover{color:#fff;border-color:transparent}
  .btn--light{background:#fff;color:var(--ink)}
  .btn--light::after{background:var(--grad-cta)}
  .btn--light:hover{color:#fff}
  .btn--block{width:100%}
  .btn .arr{transition:transform .35s var(--ease)}
  .btn:hover .arr{transform:translateX(4px)}

  /* ===== Nav ===== */
  .nav{position:fixed;top:0;left:0;width:100%;z-index:100;padding:1.1rem 0;transition:padding .4s var(--ease)}
  .nav::before{content:"";position:absolute;inset:0 0 auto;height:140px;pointer-events:none;background:linear-gradient(180deg,rgba(251,246,252,.92),transparent);transition:opacity .4s;z-index:-1}
  .nav.scrolled::before,body.menu-open .nav::before{opacity:0}
  .nav__in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:var(--container);margin-inline:auto;padding:.5rem .5rem .5rem 1.4rem;border:1px solid transparent;border-radius:100px;transition:background .4s var(--ease),box-shadow .4s,border-color .4s}
  .nav.scrolled .nav__in{background:rgba(255,255,255,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:rgba(255,255,255,.7);box-shadow:0 14px 44px rgba(46,41,90,.12)}
  .nav__brand img{height:42px;width:auto}
  .nav__links{display:flex;align-items:center;gap:2rem}
  .nav__links a:not(.btn){font-size:.94rem;font-weight:500;color:var(--ink-soft);position:relative}
  .nav__links a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1.5px;background:var(--magenta);transition:width .3s var(--ease)}
  .nav__links a:not(.btn):hover{color:var(--ink)}
  .nav__links a:not(.btn):hover::after{width:100%}
  .nav__cta,.nav__cta span{color:#fff}
  .nav__cta{padding:.7rem 1.4rem;font-size:.9rem}
  .nav__burger{display:none;flex-direction:column;gap:5px;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.6);align-items:center;justify-content:center;cursor:pointer}
  .nav__burger span{display:block;width:20px;height:2px;background:var(--ink);transition:.35s var(--ease)}
  body.menu-open .nav__burger span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
  body.menu-open .nav__burger span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}

  /* ===== Hero ===== */
  .hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:8rem 0 4rem;overflow:hidden;background:#FBEFF6}
  .hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:78% center;z-index:0}
  .hero__ov{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(100deg,#FBF6FC 0%,rgba(251,246,252,.94) 26%,rgba(251,246,252,.6) 46%,rgba(251,246,252,.1) 64%,transparent 78%)}
  .hero__in{position:relative;z-index:2}
  .hero__copy{max-width:37rem}
  .hero__tag{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.8rem;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--magenta-deep);background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.85);padding:.55rem 1.1rem;border-radius:100px;box-shadow:0 8px 22px rgba(46,41,90,.08)}
  .hero__tag .dot{width:8px;height:8px;border-radius:50%;background:var(--periwinkle)}
  .hero h1{font-size:clamp(2.6rem,6.6vw,5.8rem);margin-bottom:1.5rem}
  .hero__sub{font-size:clamp(1.05rem,1.3vw,1.25rem);color:var(--ink-soft);max-width:33rem;margin-bottom:2.2rem}
  .hero__cta{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:2.4rem}
  .hero__badges{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
  .hero__badges span{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--ink-soft)}
  .hero__badges span::before{content:"✦";color:var(--magenta)}
  .hero__scroll{position:absolute;z-index:2;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
  .hero__scroll i{width:1px;height:42px;background:linear-gradient(var(--magenta),transparent);animation:drop 2s var(--ease) infinite}
  @keyframes drop{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

  /* ===== Marquee ===== */
  .marquee{padding:2rem 0;border-block:1px solid var(--line);background:rgba(255,255,255,.45);overflow:hidden}
  .marquee__track{display:flex;gap:3.5rem;width:max-content;animation:marq 55s linear infinite}
  .marquee:hover .marquee__track{animation-play-state:paused}
  @keyframes marq{to{transform:translateX(-50%)}}
  .marquee__item{display:inline-flex;align-items:center;gap:1rem;font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.9rem);color:var(--ink);white-space:nowrap}
  .marquee__item svg{width:24px;height:24px;color:var(--magenta);flex:none}

  /* ===== Sections ===== */
  .section{position:relative;padding:clamp(4.5rem,10vw,8rem) 0;scroll-margin-top:var(--nav-h)}
  .section.tint{background:linear-gradient(180deg,rgba(234,239,251,0),rgba(234,239,251,.55))}
  .head{max-width:760px;margin:0 auto clamp(2.5rem,5vw,4rem);text-align:center}
  .head .eyebrow{margin-bottom:1.1rem}
  .head h2{font-size:clamp(1.9rem,4.4vw,3.4rem);margin-bottom:.9rem}
  .head p{color:var(--muted);font-size:1.1rem}

  /* ===== About ===== */
  .about{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,5rem);align-items:center}
  .about h2{font-size:clamp(1.8rem,3.6vw,2.9rem);margin:1.1rem 0}
  .about p{margin-bottom:1.3rem;color:var(--ink-soft)}
  .card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.8rem,3.5vw,2.6rem);box-shadow:0 24px 60px rgba(46,41,90,.09)}
  .card h3{font-size:1.35rem;margin-bottom:1.2rem}
  .ticklist li{position:relative;padding-left:1.9rem;margin-bottom:.8rem;color:var(--ink-soft)}
  .ticklist li::before{content:"";position:absolute;left:0;top:.5em;width:11px;height:11px;border-radius:50%;background:var(--grad-iris)}
  .card .btn{margin-top:1rem}

  /* ===== Why ===== */
  .why{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
  .why__intro h2{font-size:clamp(1.8rem,3.6vw,2.9rem);margin:1.1rem 0}
  .why__intro p{color:var(--muted);max-width:28rem}
  .why__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
  .why__card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;box-shadow:0 16px 44px rgba(46,41,90,.07);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
  .why__card:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(46,41,90,.13)}
  .why__card .n{font-family:var(--serif);font-size:1.6rem;color:var(--magenta);opacity:.55;margin-bottom:.6rem}
  .why__card h3{font-size:1.2rem;margin-bottom:.4rem}
  .why__card p{font-size:.95rem;color:var(--muted)}

  /* ===== Products (native scroll-snap carousel) ===== */
  .prod{padding:clamp(4.5rem,10vw,8rem) 0 0;scroll-margin-top:var(--nav-h);overflow:hidden}
  #hasil{padding-top:clamp(1.5rem,3vw,2.5rem)}
  .prod-intro{flex:0 0 clamp(300px,42vw,460px);align-self:center;padding-right:1.5rem}
  .prod-intro .eyebrow{margin-bottom:1.2rem}
  .prod-intro h2{font-size:clamp(1.9rem,3.4vw,3rem);margin:.2rem 0 1.4rem}
  .prod-intro p{color:var(--muted);margin-bottom:1.7rem}
  .prod-hint{display:inline-block;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
  .prod-h{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .prod-h::-webkit-scrollbar{display:none}
  .prod-h.is-pinned{overflow:hidden;height:100svh;display:flex;align-items:center;scroll-snap-type:none}
  .prod-track{display:flex;gap:1.5rem;align-items:stretch;width:max-content;padding:.5rem max(1.5rem,calc((100vw - 1320px)/2)) 1.5rem;will-change:transform}
  .pcard{flex:0 0 clamp(290px,80vw,380px);scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 26px 60px rgba(46,41,90,.1)}
  .pcard__media{position:relative;height:300px;overflow:hidden;background:var(--mint-soft)}
  .pcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
  .pcard:hover .pcard__media img{transform:scale(1.06)}
  .pcard__idx{position:absolute;top:1.1rem;left:1.3rem;z-index:2;font-family:var(--serif);color:#fff;text-shadow:0 1px 8px rgba(22,21,43,.28)}
  .pcard__bpom{position:absolute;top:1.1rem;right:1.3rem;z-index:2;font-size:.68rem;font-weight:600;color:var(--periwinkle);background:rgba(255,255,255,.85);padding:.28rem .65rem;border-radius:100px}
  .pcard__body{padding:1.5rem 1.7rem 1.8rem;display:flex;flex-direction:column;flex:1}
  .pcard__label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--magenta-deep)}
  .pcard__body h3{font-family:var(--serif);font-size:1.4rem;margin:.3rem 0 .6rem}
  .pcard__body p{font-size:.9rem;color:var(--muted);margin-bottom:1.2rem}
  .pcard__body .btn{margin-top:auto;align-self:flex-start;padding:.78rem 1.3rem;font-size:.85rem}
  .pcard__body .btn--primary{background:var(--grad-cta)}

  /* ===== Stats + Clinical ===== */
  .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-bottom:3rem}
  .stat{text-align:center;padding:1.9rem 1rem;border-radius:var(--r);background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(46,41,90,.07)}
  .stat .num{font-family:var(--serif);font-size:clamp(2.4rem,4.6vw,3.6rem);line-height:1;background:var(--grad-iris);-webkit-background-clip:text;background-clip:text;color:transparent}
  .stat .lbl{font-size:.9rem;color:var(--ink-soft);margin-top:.6rem}
  .stat .lbl small{display:block;color:var(--muted);font-size:.74rem;margin-top:.2rem}
  .clinic{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  .clinic figure{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 14px 40px rgba(46,41,90,.08)}
  .clinic img{width:100%;aspect-ratio:1;object-fit:cover}
  .clinic .clinic__contain img{object-fit:contain;background:#fff}
  .clinic figcaption{padding:.8rem 1rem;font-size:.78rem;color:var(--muted)}
  .disclaimer{text-align:center;color:var(--muted);font-size:.85rem;margin-top:2.2rem;max-width:48rem;margin-inline:auto}

  /* ===== Banner ===== */
  .banner{position:relative;border-radius:36px;overflow:hidden;padding:clamp(2.8rem,6vw,5rem);text-align:center;color:#fff;background:var(--grad-cta)}
  .banner::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 120% at 80% 10%,rgba(255,255,255,.25),transparent 50%)}
  .banner>*{position:relative}
  .banner h2{color:#fff;font-size:clamp(1.7rem,3.6vw,2.8rem);margin-bottom:1.1rem}
  .banner p{color:rgba(255,255,255,.92);max-width:52rem;margin:0 auto 1.8rem}

  /* ===== B2B ===== */
  .b2b{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
  .b2b h2{font-size:clamp(1.8rem,3.6vw,2.9rem);margin:1.1rem 0}
  .b2b__list{margin:1.5rem 0 2rem;display:flex;flex-direction:column;gap:.75rem}
  .b2b__list li{position:relative;padding-left:1.9rem;color:var(--ink-soft)}
  .b2b__list li::before{content:"✦";position:absolute;left:0;color:var(--magenta)}
  .b2b__visual{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 34px 80px rgba(46,41,90,.18)}
  .b2b__visual img{width:100%;aspect-ratio:4/3.5;object-fit:cover}
  .b2b__visual figcaption{position:absolute;left:1.4rem;right:1.4rem;bottom:1.4rem;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);border-radius:16px;padding:1rem 1.2rem;font-size:.88rem;color:var(--ink-soft)}
  .b2b__visual figcaption strong{color:var(--ink)}

  /* ===== Steps ===== */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
  .step{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:2.2rem 1.9rem;overflow:hidden}
  .step .n{font-family:var(--serif);font-size:3rem;line-height:1;color:var(--magenta);opacity:.16;position:absolute;top:1rem;right:1.4rem}
  .step h3{font-size:1.2rem;margin-bottom:.4rem}
  .step p{font-size:.93rem;color:var(--muted)}
  .steps-cta{text-align:center;margin-top:2.6rem}

  /* ===== FAQ ===== */
  .faq{max-width:820px;margin:0 auto}
  .faq details{border-top:1px solid var(--line)}
  .faq details:last-child{border-bottom:1px solid var(--line)}
  .faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.3rem;padding:1.5rem .3rem;font-family:var(--serif);font-size:clamp(1.05rem,1.7vw,1.35rem);color:var(--ink)}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"+";font-size:1.5rem;color:var(--magenta);transition:transform .3s var(--ease);flex:none}
  .faq details[open] summary::after{transform:rotate(45deg)}
  .faq p{padding:0 .3rem 1.5rem;color:var(--ink-soft);font-size:.97rem;max-width:62ch}

  /* ===== Footer CTA + Footer ===== */
  .fcta{text-align:center;padding:clamp(4.5rem,9vw,7rem) 0}
  .fcta h2{font-size:clamp(2rem,5vw,4rem);max-width:16ch;margin:1.2rem auto 2rem}
  .footer{background:var(--ink);color:rgba(255,255,255,.66);padding:clamp(3.5rem,7vw,5.5rem) 0 2rem}
  .footer a:hover{color:var(--peach)}
  .footer__grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:2.5rem 3rem;margin-bottom:3rem}
  .footer__logo{height:62px;width:auto;margin-bottom:1.3rem;filter:brightness(0) invert(1)}
  .footer__desc{font-size:.92rem;line-height:1.8;color:rgba(255,255,255,.6);max-width:42ch;margin-bottom:1.5rem}
  .footer__social{display:flex;gap:.7rem;margin-bottom:1.5rem}
  .footer__social a{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.18);color:#fff;transition:background .35s var(--ease),border-color .35s,transform .35s var(--ease)}
  .footer__social a:hover{background:var(--grad-cta);border-color:transparent;color:#fff;transform:translateY(-4px)}
  .footer__social svg{width:19px;height:19px;fill:currentColor}
  .footer__nap{font-size:.88rem;line-height:1.85;color:rgba(255,255,255,.6)}
  .footer__nap strong{color:#fff}
  .footer h4{color:#fff;font-family:var(--serif);font-size:1.05rem;margin-bottom:1rem}
  .footer__links li{margin-bottom:.6rem}
  .footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:1.4rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;font-size:.78rem;color:rgba(255,255,255,.45)}

  /* ===== Sticky WhatsApp ===== */
  .wa{position:fixed;bottom:1.5rem;right:1.5rem;z-index:90;display:inline-flex;align-items:center;gap:.5rem;background:#25D366;color:#fff;font-weight:600;font-size:.9rem;padding:.85rem 1.3rem;border-radius:100px;box-shadow:0 14px 32px rgba(37,211,102,.42);transition:transform .3s var(--ease),opacity .3s var(--ease)}
  .wa:hover{transform:translateY(-4px)}
  .wa svg{width:22px;height:22px;fill:currentColor}
  .wa.is-product-hidden{opacity:0;pointer-events:none;transform:translateY(12px) scale(.9)}

  /* ===== Reveal ===== */
  .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .reveal.in{opacity:1;transform:none}

  /* ===== Responsive ===== */
  @media (min-width:1001px){
    .pcard__media{height:240px}
    .pcard__body{padding:1.15rem 1.4rem 1.35rem}
    .pcard__body h3{font-size:1.3rem;margin:.2rem 0 .4rem}
    .pcard__body p{font-size:.84rem;line-height:1.55;margin-bottom:.9rem}
    .pcard__body .btn{padding:.7rem 1.15rem;font-size:.8rem}
  }
  @media (max-width:1000px){
    .about,.why,.b2b{grid-template-columns:1fr}
    .prod-h{overflow:visible;scroll-snap-type:none}
    .prod-track{flex-direction:column;width:min(760px,calc(100% - 3rem));margin-inline:auto;padding:.5rem 0 1.5rem;will-change:auto}
    .prod-intro{flex:none;width:100%;align-self:stretch;padding-right:0;margin-bottom:1rem}
    .prod-hint{display:none}
    .pcard{flex:none;width:100%;scroll-snap-align:none}
    .pcard__media{height:clamp(220px,58vw,380px)}
    .pcard__body .btn{align-self:stretch;width:100%}
    .stats{grid-template-columns:repeat(2,1fr)}
    .clinic{grid-template-columns:repeat(2,1fr)}
    .steps{grid-template-columns:1fr}
    .footer__grid{grid-template-columns:1fr 1fr}
  }
  @media (max-width:760px){
    .nav__links{position:fixed;inset:0 0 0 auto;width:min(82vw,360px);flex-direction:column;align-items:flex-start;justify-content:center;gap:1.6rem;padding:3rem 2.2rem;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);box-shadow:-20px 0 60px rgba(46,41,90,.16);transform:translateX(100%);transition:transform .45s var(--ease)}
    body.menu-open .nav__links{transform:none}
    .nav__links a{font-size:1.15rem}
    .nav__cta{display:none}
    .nav__burger{display:flex}
    /* mobile: full-width edge-to-edge bar (no floating capsule), logo flush-left */
    .nav{padding:0}
    .nav::before{display:none}
    .nav__in{width:100%;margin:0;border-radius:0;border:0;border-bottom:1px solid var(--line);padding:.6rem 1.1rem;background:rgba(255,255,255,.92);box-shadow:none}
    /* drop blur so the fixed menu panel isn't trapped by a backdrop-filter containing block */
    .nav.scrolled .nav__in{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(46,41,90,.08)}
    .nav__brand img{height:36px}
    body.menu-open .nav{transform:none}
    .hero__tag{display:none}
    .why__grid{grid-template-columns:1fr}
    .footer__grid{grid-template-columns:1fr}
    .footer__bottom{flex-direction:column}
    .wa{right:1rem;bottom:1rem;width:52px;height:52px;padding:0;justify-content:center;gap:0}
    .wa span{display:none}
  }
  @media (max-width:460px){
    .prod-track{width:calc(100% - 2rem)}
    .pcard__body{padding:1.25rem 1.2rem 1.4rem}
    .stats{grid-template-columns:1fr}
    .clinic{grid-template-columns:1fr}
  }

  /* ===== Lenis smooth scroll ===== */
  html.lenis,html.lenis body{height:auto}
  .lenis.lenis-smooth{scroll-behavior:auto!important}
  .lenis.lenis-stopped{overflow:hidden}

  /* ===== Preloader ===== */
  .loader{position:fixed;inset:0;z-index:300;background:radial-gradient(120% 120% at 50% 44%,#241f3f 0%,var(--ink) 72%);color:#fff;overflow:hidden}
  .loader__mandala{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(150vw,150vh);aspect-ratio:1}
  .loader__mandala svg{width:100%;height:100%;display:block;overflow:visible}
  .loader__mandala [data-draw]{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
  .loader__foot{position:absolute;left:0;right:0;bottom:clamp(2rem,7vh,4.5rem);display:flex;flex-direction:column;align-items:center;gap:1rem;z-index:1}
  .loader__brand{font-family:var(--sans);font-size:clamp(.7rem,2.6vw,.8rem);font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--peach)}
  .loader__num{display:inline-flex;align-items:center;padding:.5rem 1.5rem;border-radius:100px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-family:var(--serif);font-size:clamp(1.5rem,5.5vw,2.1rem);line-height:1;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.02em}
  .loader__num::after{content:"%";font-size:.55em;vertical-align:super;color:var(--peach);margin-left:.12em}
  .loader__bar{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--grad-iris)}

  /* Custom cursor disabled — native mouse cursor stays visible */
  .cursor{display:none}

  /* ===== Scroll progress ===== */
  .progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:var(--grad-iris);z-index:130}

  /* ===== Split text ===== */
  .word{display:inline-block;overflow:hidden;vertical-align:top;line-height:1.06}
  .word>i{display:inline-block;font-style:inherit;will-change:transform}

  /* nav hide on scroll-down */
  .nav{transition:padding .4s var(--ease),transform .5s var(--ease)}
  .nav.hide{transform:translateY(-135%)}

  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .reveal{opacity:1;transform:none;transition:none}
    .word>i{transform:none}
    .bg span,.marquee__track,.hero__scroll i{animation:none}
    .loader,.cursor{display:none}
  }
