@media (min-width:1500px) { 
    .hero-grid { padding-top:90px; padding-bottom:85px; } 
}

@media (min-width:1101px) {
    .hero { min-height:100vh; display:flex; flex-direction:column; }
    .hero-grid { flex:1; }
    .section,.closing { min-height:80vh; display:flex; align-items:center; }
    .experience,.enrollment { min-height:90vh; }
    .curriculum { min-height:100vh; }
}

@media (max-width:1100px) { 
    .container { width:calc(100% - 64px); } 
    .navigation { gap:18px; } 
    .hero-grid { gap:25px; } 
    .two-columns { gap:45px; } 
    .enrollment-grid { gap:50px; } 
    .course-facts>div { padding-left:15px; gap:8px; } 
    .course-facts p { font-size:11px; } 
    .fact-icon { font-size:20px; } 
    .day-arrow { display:none; } 
}

@media (max-width:1100px) { 
    .navigation.is-open { max-height:calc(100dvh - 90px); overflow-y:auto; } 
}

@media (max-width:960px) {
    .course-facts {display: flex; padding: 35px 8px;}
    .course-facts>div {padding-left: 10px; gap: 5px; width: 25%; box-sizing: border-box;}
    .course-facts>div:first-child {margin-left: 0}

    .intro {height: auto;}

    .day-card {padding: 18px;}

    .two-columns {grid-auto-flow: row; grid-template-columns: 1fr;}

    .mentor-panel {align-items: center;}
    .mentor-panel img {height: 660px;}
}

@media (max-width:800px) { 
    .container { width:calc(100% - 40px); } 
    .header-inner { min-height:76px; } 
    .brand-name { font-size:10px; } 
    .brand-name small { font-size:6px; } 
    .navigation { gap:14px; } 
    .navigation>a:not(.button) { font-size:11px; } 
    .navigation .button { padding:10px; gap:10px; font-size:10px; } 
    .hero-grid { grid-template-columns:1fr; padding-top:50px; gap:0; } 
    .hero .hero-headline { font-family:'Manrope',Arial,sans-serif; color:white; font-size:43px; letter-spacing:-2px; } 
    .hero-course { font-size:16px; } 
    .course-facts { flex-wrap: wrap; padding: 25px 10px; gap: 10px;} 
    .course-facts>div {width: calc(50% - 5px);}
    .course-facts>div:nth-child(3) { border:0; padding-left:0; } 
    .course-facts p { font-size:13px; } 
    .audience-grid {grid-template-columns: 1fr;}
    .audience-grid article:first-child {border-left: solid 1px #3c555d; padding-inline: 20px;}
    .audience-grid h3 {height: auto; min-height: auto;}
    .section-heading {flex-direction: column; align-items: flex-start;}
    .section-heading>p {max-width: 800px;}
    .section { padding:70px 0; } 
    .mentor-panel img {height: 560px;}
    .two-columns { gap:30px; } 
    .day-grid {grid-template-columns: 1fr;}
    .day-content h3 { font-size:23px; } 
    .day-top { margin-bottom:35px; } 
    .day-number { font-size:48px; } 
    .audience-grid article { padding-inline:20px; } 
    .audience-grid h3 { font-size:19px; } 
    .enrollment-grid { gap:30px; grid-template-columns: 1fr; } 
    .price-card { padding:25px; } 
    .price { font-size:49px; } 
    .footer-top { flex-wrap:wrap; } 
}

@media (max-width:620px) { 
    html { scroll-padding-top:var(--header-height,71px); } 
    .container { width:calc(100% - 40px); } 
    .header-inner { min-height:70px; } 
    .menu-toggle { display:flex; width:42px; height:42px; border:1px solid var(--line); border-radius:3px; background:transparent; justify-content:center; align-items:center; flex-direction:column; gap:6px; } 
    .menu-toggle span { width:18px; height:1px; background:var(--ink); transition:transform .2s; } 
    .menu-toggle[aria-expanded=true] span:first-child { transform:translateY(3.5px) rotate(45deg); } 
    .menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-3.5px) rotate(-45deg); } 
    .navigation { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; padding:12px 20px; background:var(--paper); border-bottom:1px solid var(--line); position:absolute; left:0; right:0; top:70px; } 
    .js .navigation { display:none; } 
    .js .navigation.is-open { display:flex; flex-direction:column; align-items:stretch; gap:0; padding:12px 20px 20px; } 
    .navigation>a:not(.button) { padding:12px 0; font-size:14px; } 
    .navigation .button { padding:13px 16px; font-size:12px; } 
    .hero-grid { display:flex; flex-direction:column; padding-top:55px; padding-bottom:20px; align-items:stretch; } 
    .hero .hero-headline { font-family:'Manrope',Arial,sans-serif; color:white; font-size:clamp(36px,9.7vw,58px); letter-spacing:-2px; } 
    .hero .eyebrow { font-size:8px; letter-spacing:1.7px; } 
    .hero-course { font-size:17px; } 
    .hero-description { font-size:13px; max-width:360px; } 
    .course-facts p { font-size:11px; } 
    .course-facts small { font-size:7px; letter-spacing:.6px; } 
    .fact-icon { font-size:20px; } 
    .section { padding:60px 0; } 
    .two-columns,.day-grid,.enrollment-grid { grid-template-columns:1fr; gap:32px; } h2 { font-size:32px; letter-spacing:-1.4px; } 
    .eyebrow { font-size:8px; margin-bottom:18px; } 
    .intro-text h3 { font-size:19px; } 
    .intro-text p { font-size:14px; } 
    .section-heading { flex-direction:column; align-items:start; gap:20px; margin-bottom:28px; } 
    .section-heading>p { max-width:100%; } 
    .day-grid { gap:16px; } 
    .day-card { padding:26px; } 
    .day-content h3 { font-size:27px; } 
    .day-top { margin-bottom:30px; } 
    .day-content p { font-size:13px; } 
    .section-footnote { font-size:10px; } 
    .small-label { margin-top:20px; } 
    .accordion summary h3 { font-size:13px; } 
    .accordion summary { gap:12px; } 
    .audience-grid { grid-template-columns:1fr; margin-top:28px; } 
    .audience-grid article { margin-top:0; padding:24px 0; border-left:0; border-bottom:1px solid #3c555d; } 
    .audience-grid h3 { min-height:0; font-size:22px; margin:12px 0; } 
    .audience-grid h3 br { display:none; } 
    .audience-grid p { max-width:100%; } 
    .mentor-panel { min-height:340px; } 
    .mentor-copy h3 { margin-top:23px; } 
    .enrollment h2 { font-size:37px; } 
    .enrollment-grid { gap:35px; } 
    .price-card { padding:28px; } 
    .price { font-size:58px; } 
    .enrollment-grid>div>p br { display:none; } 
    .closing { padding:50px 0; } 
    .closing h2 { font-size:25px; } 
    .closing h2 br { display:none; } 
    .closing .eyebrow { font-size:7px; letter-spacing:1.3px; } 
    .footer-top { flex-direction:column; align-items:center; gap:22px; } 
    .footer-top>div>a {text-align: center;}
    .footer-bottom { flex-direction:column; align-items: center; gap:10px; padding: 0;} 
}

@media (max-width: 460px) {
    .course-facts {flex-direction: column; padding: 12px;}
    .course-facts>div {width: 100%; padding: 0; border: none;}
}

@media (prefers-reduced-motion:reduce) { 
    html { scroll-behavior:auto; } *,*:before,*:after { transition:none!important; } 
}

@media (min-width:621px) and (max-width:800px) { 
    .hero { padding-top:77px; } 
}

@media (max-width:620px) { 
    .hero { padding-top:71px; } 
    .header .menu-toggle { border-color:#ffffff40; } 
    .header .menu-toggle span { background:var(--mint); } 
    .header .navigation { background:var(--ink); border-bottom-color:#ffffff24; } 
}

@media (min-width:621px) and (max-width:1100px) {
    .menu-toggle { display:flex; width:42px; height:42px; border:1px solid #ffffff40; border-radius:3px; background:transparent; justify-content:center; align-items:center; flex-direction:column; gap:6px; }
    .menu-toggle span { width:18px; height:1px; background:var(--mint); transition:transform .2s; }
    .menu-toggle[aria-expanded=true] span:first-child { transform:translateY(3.5px) rotate(45deg); }
    .menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
    .navigation { position:absolute; top:100%; left:0; right:0; background:var(--ink); padding:16px 32px; display:flex; flex-wrap:wrap; }
    .js .navigation { display:none; }
    .js .navigation.is-open { display:grid; grid-template-columns:1fr 1fr; gap:8px 24px; }
    .navigation>a:not(.button) { padding:10px 0; font-size:14px; }
}



@media (max-width:800px) { 
    .faq-layout { grid-template-columns:1fr; gap:32px; } 
    .faq-contact { max-width:none; } 
}

@media (max-width:620px) { 
    .faq-contact { padding:24px; } 
    .accordion-cards summary { padding:19px 16px; gap:12px; } 
    .accordion-cards summary h3 { font-size:13px; } 
    .accordion-cards details>p { padding:0 20px 22px 43px; font-size:13px; } 
}

@media (max-width:620px) { 
    .accordion-cards details>ul { padding:0 20px 22px 59px; font-size:13px; } 
}

@media (min-width:1101px) {
    .header-inner { gap:clamp(24px,4vw,76px); }
    .header-inner>.brand { flex-shrink:0; }
    .navigation { flex:1; justify-content:space-between; gap:clamp(10px,calc(3vw - 24px),40px); }
    .navigation>a { white-space:nowrap; }
}
