/* Desktop keeps the original page; phone navigation is a separate responsive control. */
.nav-toggle,.header .page-nav{display:none}
.mobile-page{display:contents}
.mobile-about-portrait,.mobile-calculus-note,.mobile-subject-break{display:none}
@media(max-width:640px){
 .header{gap:17px;padding:20px}
 .header{justify-content:space-between;position:relative;z-index:20}
 .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;padding:12px;border:1px solid #c6d7ce;border-radius:6px;background:#e6efea;color:#175d52;cursor:pointer}
 .nav-toggle span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
 .nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .nav-toggle:focus-visible{outline:2px solid #175d52;outline-offset:4px}
 .header .page-nav{display:grid;grid-template-columns:1fr;position:absolute;top:calc(100% - 5px);left:20px;right:20px;width:auto;gap:5px!important;padding:10px;border:1px solid #d9e1d9;border-radius:8px;background:#f7f8f3;box-shadow:0 18px 36px #103d3526;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-24px) scale(.96);transform-origin:top right;transition:opacity .3s ease,transform .34s cubic-bezier(.2,.8,.2,1),visibility 0s .34s}
 .header .page-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition-delay:0s}
 .header .page-nav>a:not(.button){display:flex!important;align-items:center;justify-content:flex-start;padding:13px 16px;background:transparent;font-size:14px;min-height:46px}
 .header .page-nav .header-contact{margin:0;min-height:46px;padding:13px 16px;width:100%;font-size:14px}
 .header .page-nav>a[aria-current=page]:not(.button){background:#dbe9e1}
 .mobile-page>.section:first-child{padding-top:32px}
 .mobile-page .modern-hero{padding-top:30px}
 #faqs{padding-block:32px 45px}
 .mobile-page[data-mobile-page=home] .modern-proof{margin-bottom:32px}
 .mobile-page .about-section,.mobile-page .demo-section{margin-top:0}
}

@media(max-width:640px){
 .header .desktop-nav{display:none}
 .mobile-page{display:block;min-height:0}
 .mobile-page[hidden]{display:none!important}
 .header .page-nav>a::after{display:none!important}
 .header .page-nav>a[aria-current=page]:not(.button){color:#175d52;font-weight:700}
 #shared-contact>.referral-reminder{margin-top:30px;margin-bottom:28px}
}
@media(max-width:640px) and (prefers-reduced-motion:reduce){.header .page-nav,.nav-toggle span{transition:none!important}}

@media(max-width:640px){
 .header .page-nav>a{opacity:0;transform:translateY(-7px);transition:opacity .24s ease,transform .28s ease!important;transition-delay:0s!important}
 .header .page-nav.is-open>a{opacity:1;transform:translateY(0);transition-delay:calc(var(--menu-order,0)*25ms + 45ms)!important}
 .header .page-nav>a:nth-child(2){--menu-order:1}.header .page-nav>a:nth-child(3){--menu-order:2}.header .page-nav>a:nth-child(4){--menu-order:3}.header .page-nav>a:nth-child(5){--menu-order:4}.header .page-nav>a:nth-child(6){--menu-order:5}
 .mobile-about-portrait{display:block;margin:0 0 32px}
 .mobile-about-portrait .proof-photo{width:100%;max-width:330px;aspect-ratio:740/900;border-radius:8px;overflow:hidden}
 .mobile-about-portrait figcaption{padding-top:14px;display:flex;flex-direction:column;gap:5px}
 .mobile-about-portrait figcaption strong{font-size:20px;letter-spacing:-.5px}
 .mobile-about-portrait figcaption span{font-size:9px;letter-spacing:1.1px;color:#64736b}
 #subjects .subject-grid{display:grid;gap:18px}
 #subjects .subject-card{display:block;padding:25px 23px;border:1px solid #dedfd3;border-radius:10px;background:#f1eee4;overflow:hidden}
 #subjects .subject-card .subject-symbol{display:block;margin-bottom:20px}
 #subjects .subject-card h3{font-size:27px;line-height:1.15;margin:10px 0 12px}
 #subjects .subject-card ul{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 23px;padding:0;list-style:none}
 #subjects .subject-card li{border:1px solid #d6d9c9;background:#ffffff70;border-radius:4px;padding:8px 10px;font-size:12px;line-height:1.5}
 #subjects .subject-card li::before{display:none}
 #subjects .subject-card a{font-size:13px}
 #subjects .subject-card.featured{background:#175d52;color:#fff;border-color:#175d52}
 #subjects .subject-card.featured h3,#subjects .subject-card.featured p,#subjects .subject-card.featured a,#subjects .subject-card.featured .subject-symbol{color:#fff}
 #subjects .subject-card.featured .eyebrow{color:#bfe1d3}
 #subjects .subject-card.featured li{border-color:#ffffff35;background:#ffffff0d;color:#eaf7ef}
 .mobile-calculus-note{display:flex;flex-direction:column;gap:8px;border-bottom:1px solid #ffffff35;margin:0 0 24px;padding-bottom:20px}
 .mobile-calculus-note span{font-size:9px;letter-spacing:1.1px;color:#bfe1d3}
 .mobile-calculus-note strong{font-size:18px;line-height:1.3;font-weight:500}
 #subjects .subject-card:nth-child(3){background:#e7eff0;border-color:#ccdddf}
 #subjects .subject-card:nth-child(3) .subject-symbol{color:#326375}
 .mobile-subject-break{display:block;margin:26px 0;padding:28px 23px;border-left:3px solid #175d52;background:#fffdf6}
 .mobile-subject-break .eyebrow{font-size:9px;line-height:1.6;letter-spacing:.8px}
 .mobile-subject-break h3{font-size:26px;letter-spacing:-.6px;margin:12px 0}
 .mobile-subject-break>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#64736b;margin-bottom:18px}
 .mobile-subject-break a{font-size:13px}
}
@media(max-width:640px) and (prefers-reduced-motion:reduce){.header .page-nav>a{transition:none!important}}
