/* D075. V12's original styles are unchanged. These rules cover new controls
   and specific responsive defects, never replace the original choreography. */
[hidden]{display:none!important}
.restored-form{min-width:0}
.restored-form label{display:block;font:500 13px/1.6 Body,sans-serif;margin-bottom:22px}
.restored-form input,.restored-form select,.restored-form textarea{display:block;width:100%;min-width:0;color:inherit;background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:12px 0;font:400 18px/1.5 Body,sans-serif;outline-offset:4px}
.restored-form textarea{min-height:110px;resize:vertical}
.restored-form select option{color:#48142b;background:#fff9ee}
.restored-form .j-trap,.restored-form .trap{display:none!important}
.restored-form button[type=submit]{width:100%;padding:20px 0;display:flex;justify-content:space-between;border:0;border-bottom:1px solid currentColor;background:none;color:inherit;font:500 19px/1.5 Body,sans-serif;text-align:left;cursor:pointer}
.restored-form button:disabled{opacity:.65;cursor:wait}
.restored-form [role=status]{font-size:14px;line-height:1.6;margin-top:20px}
.restored-form .j-note{font-size:12px;line-height:1.6;margin:18px 0}
.restored-form .j-success{margin-top:25px;border-top:1px solid currentColor;padding-top:25px}
.restored-form .j-success h3{font:500 28px/1.2 Brand,sans-serif}
.restored-form .j-success p{font:400 16px/1.6 Body,sans-serif;margin:12px 0}
.restored-form .j-link{display:block;width:fit-content;border-bottom:1px solid currentColor;padding:12px 0;font-size:15px;line-height:1.5}
.restored-plan{display:inline-block;margin-top:28px;font-size:15px}
.restored-dose{background:#f5b9cf;color:#48142b;display:grid;grid-template-columns:1.15fr 1fr;gap:8vw}
.restored-dose h2{font:500 clamp(40px,5.6vw,86px)/1.05 Brand,sans-serif;letter-spacing:-.06em;margin-top:30px}
.restored-dose>div>p:not(.eyebrow){font-size:18px;line-height:1.65;margin-bottom:24px;max-width:600px}
.restored-dose .text-link{font-size:17px;margin-top:16px}
.restored-contact{padding-top:65px}
.restored-contact h1{font-size:clamp(45px,6.5vw,96px);max-width:1000px;margin:25px 0 55px;line-height:1.03}
.restored-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:9vw}
.restored-contact-layout>div{min-width:0}
.restored-utility .functional{padding:70px 6vw 100px;min-height:65svh}
.restored-utility .functional .meeting,.restored-utility .functional .space{margin:0 auto;max-width:1100px;padding:0}
.restored-utility .functional h1{font:500 clamp(42px,6vw,88px)/1.05 Brand,sans-serif;letter-spacing:-.05em;max-width:1000px}
.restored-packages dl{margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:0 30px;font:400 16px/1.6 Body,sans-serif}
.restored-packages dt,.restored-packages dd{margin:0;padding:12px 0;border-top:1px solid #48142b44;overflow-wrap:anywhere}
.restored-packages h3{font:600 clamp(45px,6vw,84px)/1 Tall,sans-serif}
.restored-packages h4{font:500 28px/1.2 Brand,sans-serif}
.price-block .big-word{font-size:clamp(56px,9vw,150px);line-height:.9}
.restored-issue-image{width:100%;height:100%;max-height:600px;object-fit:cover;display:block}
.issue-visual:has(.restored-issue-image){padding:0;height:55svh;max-height:700px}
.edition-art:has(.restored-issue-image){padding:0}
.edition-art .restored-issue-image{min-height:100%;aspect-ratio:1}
.email-row{min-width:0}
.email-row input{min-width:0}
.subscribe>*{min-width:0}
.site-menu a,.dose-nav nav a{overflow-wrap:normal}
.dose-nav nav{flex-wrap:wrap}
.site-footer{position:relative}
@media(max-width:700px){
 .restored-dose{grid-template-columns:1fr;gap:28px}
 .restored-dose h2{font-size:12vw;margin-top:24px}
 .restored-dose>div>p:not(.eyebrow){font-size:17px}
 .restored-contact-layout{grid-template-columns:1fr;gap:35px}
 .restored-contact h1{font-size:12vw;margin-bottom:30px}
 .restored-contact .restored-form{margin-top:0}
 .restored-contact{padding-top:35px}
 .restored-form input,.restored-form select,.restored-form textarea{font-size:16px}
 .restored-form button[type=submit]{font-size:17px}
 .restored-utility .functional{padding:35px 6vw 70px}
 .restored-utility .functional h1{font-size:12vw}
 .restored-packages dl{grid-template-columns:1fr;gap:0;font-size:15px}
 .restored-packages dd{border:0;padding-top:0;font-weight:600}
 .restored-packages dt{padding-bottom:4px}
 .restored-packages h4{font-size:24px}
 .price-block .big-word{font-size:16vw}
 .subscribe .email-row{display:flex;flex-direction:column;gap:12px}
 .subscribe .email-row button{width:100%;min-height:48px}
 .dose-nav nav{gap:14px;font-size:12px}
 .issue-visual:has(.restored-issue-image){height:38svh}
 .site-footer nav{flex-wrap:wrap;min-width:0}
}
@media(max-width:600px){
 /* Keep the V12 pinning and scene timing; fit their stage to a real phone. */
 .opening-sticky,.journey-stage{min-height:100svh}
 .belief-pin{min-height:100svh}
 .belief{min-height:0}
 .chapter-nav{max-width:100%}
 .opening-bottom .home-index-link{padding-right:50px}
}
@media(max-width:600px) and (max-height:650px){
 .opening-copy{padding-top:105px;padding-bottom:28px}
 .opening h1{font-size:15vw;margin-top:22px}
 .opening-bottom p{font-size:13px;margin:20px 0 12px}
 .opening-bottom a{font-size:12px}
 .journey-captions{inset:16% var(--gutter,6vw) 85px}
 .journey .chapter h2{font-size:11.5vw;margin:18px 0}
 .journey .chapter>p:not(.eyebrow){font-size:15px}
 .belief h2{font-size:17vw}
 .belief-pin{padding-top:45px;padding-bottom:45px}
}
/* D081 live review: comfortable controls and readable open states. */
#credits-button{min-height:44px;padding-block:12px}
footer summary,.site-footer summary,.credits summary{min-height:44px;padding-block:12px;cursor:pointer}
.qualification-demo{display:grid;gap:22px;margin:24px 0}
.qualification-demo label{display:grid;gap:10px;font:500 16px/1.5 Body,sans-serif;min-width:0}
.qualification-demo select{width:100%;min-width:0;max-width:100%;padding:14px 10px;font:400 16px/1.5 Body,sans-serif;border:1px solid #48142b;background:#fff9ee;color:#48142b;border-radius:0}
.qualification-demo output{display:block;border-top:2px solid currentColor;padding-top:20px;font:500 19px/1.6 Body,sans-serif;overflow-wrap:anywhere}
.qualification-demo + .demo-note{font-size:13px;line-height:1.6}
:where(input,textarea,select):focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:700px){.prose h3{font-size:25px;line-height:1.2;margin:30px 0 15px}.qualification-demo select{font-size:16px}}
