@media(min-width:1500px){.hero{min-height:800px}}@media(max-width:1100px){.header-inner{gap:18px}.nav{gap:14px}.header-inner>.button{display:none}.grid-2{gap:36px}.hero{min-height:690px}}@media(max-width:800px){.container{width:calc(100% - 40px)}.header-inner{min-height:76px;flex-wrap:wrap;justify-content:space-between}.brand{font-size:24px}.menu-toggle{display:inline-flex;background:transparent;border:1px solid #ffffff60;color:var(--cream);padding:10px 15px;border-radius:4px;min-height:44px}.nav{width:100%;margin:0;flex-wrap:wrap;gap:6px 22px;padding-bottom:20px}.js .nav:not(.is-open){display:none}.nav a{font-size:15px}.hero{padding:65px 0 35px;min-height:710px}.hero:after{background:linear-gradient(90deg,#10291ee8,#10291e80),linear-gradient(0deg,#10291eaa,transparent)}.hero h1{max-width:620px}.hero-facts{max-width:650px}.grid-2,.evening-grid{grid-template-columns:1fr;gap:36px}.formats{gap:18px}.format-card{padding:25px}.format-card h3{font-size:28px}.grid-3{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.symbol-panel{min-height:330px}.contact-card{grid-template-columns:minmax(0,1fr);gap:24px}}@media(max-width:560px){.container{width:calc(100% - 32px)}.hero{padding-top:50px;min-height:760px}.hero h1{font-size:48px}.hero .lead{font-size:16px}.hero .eyebrow{font-size:10px}.hero-facts{grid-template-columns:1fr 1fr;gap:24px 12px;margin-top:38px}.fact{padding-left:14px}.hero-facts .fact:nth-child(3){border:0;padding-left:0}.fact strong{font-size:26px}.hero-foot{font-size:9px}.hero-foot span:last-child{display:none}.hero .actions{display:grid}.hero .button{width:100%}.formats,.steps,.inclusions{grid-template-columns:1fr}.format-card{padding:26px}.format-card .button{width:100%}.steps{gap:20px}.steps li{margin:0}.time-row{grid-template-columns:1fr;gap:5px}.footer-bottom{flex-direction:column}.program-stats{gap:20px}.program-stats strong{font-size:38px}.program-stats span{font-size:12px}.page-intro{padding:45px 0}.table-wrap th,.table-wrap td{padding:14px 9px;font-size:12px;overflow-wrap:anywhere}.actions>.button{flex:1 1 180px}.symbol-ring{width:190px;height:190px}.lead{font-size:17px}}
.home .hero{min-height:830px;padding-top:170px}
@media(max-width:1100px){.home .header-inner{padding-inline:22px}.home .hero{min-height:790px}}
@media(max-width:800px){
  .home .site-header{top:12px;width:calc(100% - 32px);border-radius:10px}
  .home .header-inner{padding-inline:18px;min-height:72px}
  .home .hero{padding-top:135px;min-height:820px}
  html:not(.js) .home .hero{padding-top:245px}
}
@media(max-width:560px){
  .home .site-header{top:10px;width:calc(100% - 24px)}
  .home .header-inner{padding-inline:14px}
  .home .brand{font-size:22px}
  .home .hero{padding-top:130px;min-height:850px}
}

/* Keep the logo and toggle in a stable first row when navigation expands. */
@media(max-width:800px){
  .header-inner,.home .header-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:52px;
    grid-auto-rows:auto;
    align-content:start;
    align-items:center;
    gap:0 12px;
    padding-block:12px;
    min-height:76px;
  }
  .header-inner>.brand{grid-column:1;grid-row:1}
  .header-inner>.menu-toggle{
    grid-column:2;
    grid-row:1;
    width:48px;
    height:48px;
    padding:10px;
    font-size:14px;
    white-space:nowrap;
    align-items:center;
    justify-content:center;
  }
  .header-inner>.nav{
    grid-column:1/-1;
    grid-row:2;
    min-width:0;
    padding-block:12px 4px;
  }
}

@media(max-width:560px){
  .site-header .brand,.home .site-header .brand{font-size:18px;letter-spacing:.1em;gap:8px}
  .site-header .brand-logo{width:36px;height:36px}
  .site-header .brand small{display:none}
  #application .contact-details .actions{display:grid;grid-template-columns:minmax(0,1fr)}
  #application .contact-details .actions .button{width:100%;min-width:0}
  .format-comparison thead th{overflow-wrap:normal;word-break:normal;hyphens:none}
}

@media(max-width:800px){
  .contacts-page .contact-section{
    min-height:calc(100vh - 77px);
    min-height:calc(100svh - 77px);
    padding-block:24px;
  }
  .contacts-page .contact-card{gap:28px}
  .contacts-page .contact-intro .eyebrow{margin-bottom:12px}
  .contacts-page .contact-intro h1{font-size:32px;margin-bottom:16px}
  .contacts-page .contact-intro .lead{font-size:17px;line-height:1.5}
  .contacts-page .contact-details .phone{font-size:26px;margin-bottom:12px}
  .contacts-page .contact-details .fine{line-height:1.5;margin-bottom:16px}
  .contacts-page #application .contact-details .actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  .contacts-page .contact-details .button{width:100%;min-width:0;font-size:13px;padding:10px 8px;min-height:48px}
}

@media(max-width:800px){
  .site-header{
    position:sticky;
    top:0;
    max-height:100vh;
    max-height:100svh;
    overflow-y:auto;
  }
  .home .site-header{
    position:fixed;
    max-height:calc(100vh - 24px);
    max-height:calc(100svh - 24px);
  }
}

@media(max-width:800px){
  .header-inner>.menu-toggle{border-radius:12px}
  .menu-toggle-icon{position:relative;width:24px;height:24px;display:block}
  .menu-toggle-icon span{
    position:absolute;
    top:11px;
    left:0;
    width:24px;
    height:2px;
    border-radius:2px;
    background:currentColor;
    transition:transform .2s ease,opacity .2s ease;
  }
  .menu-toggle-icon span:first-child{transform:translateY(-7px)}
  .menu-toggle-icon span:last-child{transform:translateY(7px)}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:first-child{transform:rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:last-child{transform:rotate(-45deg)}
}
@media(prefers-reduced-motion:reduce){.menu-toggle-icon span{transition:none}}

.mobile-nav-panel{display:contents}
@media(max-width:800px){
  .js .header-inner>.mobile-nav-panel{
    display:grid;
    grid-column:1/-1;
    grid-row:2;
    grid-template-rows:0fr;
    min-width:0;
    opacity:0;
    visibility:hidden;
    padding-block:0;
    transition:grid-template-rows .2s ease,opacity .2s ease,padding .2s ease,visibility 0s .2s;
  }
  .js .header-inner>.mobile-nav-panel.is-open{
    grid-template-rows:1fr;
    opacity:1;
    visibility:visible;
    padding-block:12px 4px;
    transition:grid-template-rows .2s ease,opacity .2s ease,padding .2s ease,visibility 0s;
  }
  .js .header-inner>.mobile-nav-panel>.nav{
    display:flex;
    min-height:0;
    overflow:hidden;
    padding-block:0;
  }
}
@media(prefers-reduced-motion:reduce){
  .js .header-inner>.mobile-nav-panel,
  .js .header-inner>.mobile-nav-panel.is-open{transition:none}
}

@media(max-width:800px){
  .header-inner .nav{
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:4px;
  }
  .header-inner .nav a{
    display:flex;
    align-items:center;
    flex-shrink:0;
    width:100%;
    min-height:48px;
    padding:12px 16px;
    border-radius:8px;
    font-size:16px;
  }
}

/* Keep desktop navigation visible without covering the inner-page content. */
@media(min-width:801px){
  .site-header{position:sticky;top:0}
  .home .site-header{position:fixed}
  .header-inner,.home .header-inner{min-height:72px}
}
