/* Responsive refinements layer. The approved desktop remains the source of truth. */
.mobile-nav-contact,.menu-icon,.menu-caption{display:none}
@media(max-width:999px){
 html{scroll-padding-top:100px}
 .header-inner{height:80px;min-height:80px;flex-wrap:nowrap;padding-block:0;gap:20px}
 .header-inner .brand{max-width:calc(100% - 72px)}
 .header-inner .brand img{width:clamp(190px,30vw,260px);max-width:100%;height:auto}
 .header .header-tools{display:none}
 .menu-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;padding:0;border:1px solid #bdcdb8;border-radius:50%;background:#fffefa75;color:var(--ink);cursor:pointer;position:relative;z-index:12}
 .menu-icon{display:flex;flex-direction:column;gap:6px;width:20px}
 .menu-icon>span{width:20px;height:1.5px;background:currentColor;transition:transform .35s cubic-bezier(.22,1,.36,1)}
 .menu-toggle[aria-expanded=true] .menu-icon>span:first-child{transform:translateY(3.75px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] .menu-icon>span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
 .header .nav{display:flex;position:static;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);padding:20px;border:1px solid var(--line);border-radius:22px}
 .js .header .nav{position:fixed;top:88px;left:20px;right:20px;max-height:calc(100dvh - 108px);overflow-y:auto;overscroll-behavior:contain;z-index:11;padding:24px;visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .25s ease,transform .35s cubic-bezier(.22,1,.36,1),visibility .35s;box-shadow:0 30px 80px -30px #173e4270;background:radial-gradient(ellipse at 100% 0,#dfead3,#f6f5ed 75%)}
 .js .header .nav.open{visibility:visible;opacity:1;transform:none;pointer-events:auto}
 .header .nav>a{font-family:Manrope,sans-serif;font-size:clamp(24px,5vw,34px);line-height:1.25;letter-spacing:-.035em;padding:15px 0;min-height:56px;border-bottom:1px solid #173e4218}
 .header .nav>a::after{display:none}
 .header .nav>a[aria-current]{color:#52745c}
 .header .nav>a[aria-current]::before{content:none}
 .mobile-nav-contact{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px}
 .header .mobile-nav-contact>.btn{display:inline-flex;height:52px;min-height:52px;padding:0 20px;font-size:12px}
 .mobile-nav-contact .icon-button{height:44px;width:44px}
 .menu-backdrop{position:fixed;inset:80px 0 0;background:#14363465;backdrop-filter:blur(5px);z-index:10}
 .header:has(.nav.open){isolation:isolate}
 .menu-open .floating-wa{opacity:0;pointer-events:none;visibility:hidden}
 .hero-art{transform:none;max-width:440px;width:100%;height:auto;aspect-ratio:.86}
 .hero{gap:36px}
 .hero .actions{gap:20px}
 .about-identity{flex-wrap:wrap;gap:20px}
 .fit-content{opacity:1;width:auto;height:auto}
 .treatment-stack-item{position:relative;top:auto!important;scroll-margin-top:104px;padding-bottom:32px}
 .treatment-stack-card{transform:none!important;gap:28px;min-height:0}
 .treatment-stack-image{align-self:start;height:auto!important;min-height:0;aspect-ratio:4/5}
 .treatment-stack-item:last-child .treatment-stack-image{aspect-ratio:1200/1722}
 .treatment-stack-image img{object-fit:contain;object-position:center!important}
 .treatment-stack-copy>.btn{white-space:normal;line-height:1.45;height:auto;min-height:56px;padding-block:14px;text-align:left}
 .treatment-stack-copy>.btn .btn-label{min-width:0}
 .article-toc nav{position:static}
 .article-layout{grid-template-columns:1fr;gap:24px;margin-top:40px}
 .article-toc ol{columns:2;column-gap:32px}.article-toc li{break-inside:avoid}
 .article-prose{max-width:760px;margin-inline:auto}
 .footer{padding-bottom:100px}
 .floating-wa{transition:opacity .2s ease,transform .3s,background .3s}
 .floating-wa.is-obscuring{opacity:0;visibility:hidden;pointer-events:none}
 .contact-field input,.contact-field textarea,.blog-search input{font-size:16px}
}
@media(min-width:701px) and (max-width:999px){
 .hero{padding-block:48px;gap:32px;grid-template-columns:1fr 1fr}
 .hero h1{font-size:clamp(42px,5.6vw,56px)}
 .hero .btn{font-size:12px;padding-inline:18px;min-height:56px;height:auto;padding-block:16px}
 .hero-copy>p{font-size:15px}
 .about-grid{gap:40px;align-items:start}.about-copy h2{font-size:36px}
 .treatment-stack-card{padding:28px;grid-template-columns:1fr 1fr}
 .contact-world-grid{grid-template-columns:1fr;gap:40px}
 .contact-world-info{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;overflow:visible}
 .contact-world-info>h2,.contact-world-info>p,.contact-world-links{grid-column:1}
 .contact-world-info .contact-globe-panel{grid-column:2;grid-row:1/5;min-height:240px;margin-top:0}
 .contact-fields-row{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
 .wrap{width:calc(100% - 40px)}
 .header-inner .brand img{width:220px}
 .hero{padding-block:36px 40px;gap:32px}
 .hero h1{font-size:clamp(38px,10.7vw,54px);line-height:1.08}
 .hero-copy>p{font-size:15px;line-height:1.75;margin-top:24px}
 .hero .actions{align-items:flex-start;flex-direction:column;gap:20px;margin-top:28px}
 .hero .btn{min-height:56px;height:auto;padding:18px 24px}
 .hero-art{max-width:400px}
 .portrait-label{left:12px;right:12px;bottom:16px;padding:14px;gap:10px}
 .portrait-label strong{font-size:12px;line-height:1.45}.portrait-label small{font-size:9px;letter-spacing:.02em;line-height:1.5}
 .portrait-label>span{flex-shrink:0}
 .section,.myths-wheel{padding-block:64px}
 .section-head{gap:24px}
 .diagnosis-v2 .diagnosis-heading h2{font-size:clamp(32px,9vw,40px)}
 .diagnosis-v2 .diagnosis-visual{aspect-ratio:3/2}
 .diagnosis-v2 .diagnosis-visual>img{object-fit:contain;object-position:center}
 .diagnosis-v2 .diagnosis-copy .btn{height:auto;min-height:56px;padding:16px 20px;max-width:100%;white-space:normal;text-align:left;line-height:1.5}
 .about-grid{gap:32px}.about-image{width:100%;max-width:430px;justify-self:center;aspect-ratio:1122/1402}
 .honesty-section{gap:32px}.honesty-section .principle{padding:28px;min-height:0}.honesty-section .principles{gap:24px}
 .fit-content{padding:28px 24px}.fit-content h3{font-size:28px}.fit-content .btn{min-height:56px;height:auto;padding:16px 20px;max-width:100%;white-space:normal}
 .fit-card::before{background-position:65% center}.fit-card::after{background:linear-gradient(90deg,#102f33ee,#173e42b8)}
 .faq summary{min-height:60px;padding-block:22px;padding-right:30px;font-size:15px;line-height:1.55}
 .faq details p{font-size:14px;line-height:1.8}
 .cta-box{min-height:0;padding:36px 24px;gap:28px;border-radius:24px}
 .cta-box h2{font-size:clamp(30px,8.5vw,38px);line-height:1.15}
 .cta-box .btn{height:auto;min-height:56px;padding:16px 20px;white-space:normal}
 .cta-box:before{background-position:61% center}
 .cta-section{padding-bottom:64px}
 .treatment-stack-card{padding:20px;gap:24px}
 .treatment-stack-image{grid-row:1;width:100%;height:auto!important;aspect-ratio:4/5}
 .treatment-stack-copy h2{font-size:30px}.treatment-stack-copy{gap:20px}
 .treatment-stack-image figcaption{left:16px;right:16px;bottom:16px;gap:10px;font-size:12px}
 .treatment-stack-copy>.btn{width:100%;justify-content:space-between;font-size:12px}
 .page-title{padding-top:40px}.page-title h1{font-size:clamp(35px,9vw,46px);line-height:1.12}
 .post-copy{padding:24px}.post-copy h2{font-size:27px}.post-image{aspect-ratio:3/2}
 .article-preview>.page-title{padding-block:28px 36px}.article-preview .page-title h1{font-size:clamp(33px,9vw,46px)}
 .article-toc ol{columns:auto}.article-prose{font-size:16px;line-height:1.85}
 .share-actions{gap:8px}.share-actions .icon-button{width:44px;height:44px}
 .contact-world{padding-top:40px}.contact-world-heading h1{font-size:clamp(35px,9vw,44px)}
 .contact-form-card{padding:24px 20px}.contact-modality label{min-height:44px}
 #contact-message-form>.btn{width:100%;height:auto;min-height:56px;padding:16px 20px;white-space:normal;font-size:12px}
 .footer-links{gap:32px;justify-content:space-between}.footer-bottom{gap:14px}
 .floating-wa{bottom:max(16px,env(safe-area-inset-bottom));right:16px}
}
@media(max-width:360px){
 .wrap{width:calc(100% - 32px)}.js .header .nav{left:16px;right:16px;padding:20px}
 .header-inner{gap:12px}.header-inner .brand img{width:205px}
 .hero .btn{width:100%;padding-inline:16px;font-size:11px;gap:12px}
 .portrait-label{padding:12px;left:10px;right:10px}.portrait-label strong{font-size:10px}.portrait-label small{font-size:8px}
 .post-copy{padding:20px}.fit-content{padding:24px 20px}
 .share-actions{gap:6px}.share-actions .icon-button{width:42px;height:42px}
 .blog-search>div{gap:6px;padding-left:12px}.blog-search button{padding-inline:12px}
}
@media(max-height:600px) and (max-width:999px){
 .header-inner{height:64px;min-height:64px}.header-inner .brand img{width:200px}.menu-toggle{width:44px;height:44px}
 .js .header .nav{top:72px;max-height:calc(100dvh - 88px);padding:16px 24px;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
 .header .nav>a{font-size:24px;padding:12px 0;min-height:48px}.mobile-nav-contact{grid-column:1/-1;margin-top:16px}.menu-backdrop{top:64px}
 .hero{padding-block:32px}.hero-art{max-width:340px}.hero h1{font-size:42px}
 .treatment-stack-image{max-width:340px;justify-self:center}
}
@media(hover:none){
 .treatment:hover,.post-card:hover,.btn:hover,.instagram-badge:hover{transform:none}
 .step::before{transform:scaleX(1)}
 .post-card:hover img{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .js .header .nav,.menu-icon>span{transition:none}
}
@media(max-width:999px){
 html:not(.js) .header-inner{height:auto;flex-wrap:wrap;padding-block:16px}
 html:not(.js) .menu-toggle{display:none}
 html:not(.js) .header .nav{width:100%;order:3}
}
@media(max-width:999px){.article-layout{grid-template-columns:minmax(0,1fr)}.article-prose{width:100%;min-width:0}}
@media(max-width:999px){.header{position:sticky;top:0;background:#f5f4ecef;backdrop-filter:blur(16px);z-index:80}}
@media(max-width:999px){.header{background:#f5f4ec;backdrop-filter:none}}
@media(max-width:999px) and (prefers-reduced-motion:reduce){
 .trust-track{width:100%}.trust-group{flex:1;min-width:0;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:20px;gap:18px 24px}
 .trust-group span{white-space:normal;line-height:1.6}.trust-group[aria-hidden=true]{display:none}
}
@media(max-width:360px) and (prefers-reduced-motion:reduce){.trust-group{grid-template-columns:1fr}}
@media(max-width:999px){html:not(.js) .header{position:relative}}
@media(max-width:999px){.footer-credit{opacity:1;color:#526456}}
@media(max-width:999px){.cta-box::before{background-image:url('/images/next-step-mobile.webp')}}
