:root{--black:#2c3031;--graphite:#35393a;--yellow:#f1efe8;--white:#f1efe8;--muted:#bfc1be;--line:#565b5c;--button:#f1efe8;--button-text:#2c3031;--hover:#414647;--focus:#f1efe8;--emblem-filter:none;--brand-filter:none;color-scheme:dark;background:var(--black);color:var(--white)}
:root[data-theme=marfim]{--black:#f1efe8;--graphite:#e7e5df;--yellow:#2c3031;--white:#2c3031;--muted:#5c6060;--line:#c4c5c0;--button:#2c3031;--button-text:#f1efe8;--hover:#e1e0db;--focus:#2c3031;--emblem-filter:brightness(0) opacity(.8);--brand-filter:brightness(0) opacity(.8);color-scheme:light}
body{background:var(--black)}.brand img{filter:var(--brand-filter)}.site-header{background:var(--black);border-bottom-color:var(--line)}a:focus-visible,button:focus-visible{outline-color:var(--focus)}::selection{background:var(--button);color:var(--button-text)}.navigation>a:not(.header-cta){color:var(--muted)}.navigation>a:hover{color:var(--white)}.navigation .header-cta{border-color:var(--line);border-radius:28px;font-weight:400;padding-inline:20px}.header-cta span{color:var(--white)}.hero-inner{display:block;padding-top:50px;max-width:1120px}.hero-copy{text-align:center}.hero-emblem{height:82px;width:auto;margin:0 auto 24px;filter:var(--emblem-filter)}.hero .eyebrow{justify-content:center;font-weight:400;letter-spacing:.16em;color:var(--muted);font-size:10px}.small-line{display:none}h1{font-size:clamp(52px,5.5vw,77px);font-weight:400;letter-spacing:-.055em;line-height:1.08;margin:26px auto 24px;max-width:940px}h1>span{color:var(--white)}.hero-description{max-width:600px;font-size:15px;line-height:1.8;margin:0 auto;color:var(--muted)}.hero-actions{justify-content:center;gap:22px;margin-top:28px}.button{border-radius:28px;min-height:53px;font-size:12px;font-weight:600;padding-inline:24px}.button-primary{background:var(--button);color:var(--button-text)}.button-primary:hover{background:var(--white);color:var(--black)}.button>span{font-size:17px}.text-link{font-size:12px;color:var(--white)}.text-link:hover{color:var(--yellow)}.hero-brand{display:none}.hero-bottom{margin-top:49px;border-color:var(--line);padding:20px 0;justify-content:space-between;gap:20px}.hero-bottom>span:first-child{font-size:13px;letter-spacing:0;color:var(--muted)}.hero-bottom>a{font-size:21px;min-width:44px;min-height:44px;display:grid;place-items:center;color:var(--white)}.section{padding-block:86px}.section .eyebrow{font-weight:400}.school-grid{grid-template-columns:1.05fr 1fr;gap:100px}.school h2{font-size:34px;max-width:440px;line-height:1.28;letter-spacing:-.035em;font-weight:400}.school-copy>p{font-size:15px;line-height:1.85}.school-copy>p+p{font-size:13px}.principles{font-size:11px}.principles li:before{background:var(--yellow);width:3px;height:3px}h2{font-size:44px;font-weight:400;line-height:1.17;letter-spacing:-.04em}.section-heading{margin-bottom:36px}.section-heading>p{font-size:12px}.class-list{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;border-top:0}.class-row{min-height:116px;grid-template-columns:minmax(0,1fr) 30px;grid-template-rows:auto auto;gap:0 10px;padding:25px 0;border-top:1px solid var(--line);border-bottom:0}.class-number{display:none}.class-row .class-name{grid-column:1;grid-row:1;font-size:23px;font-weight:400;line-height:1.45;align-self:end}.class-detail{grid-column:1;grid-row:2;font-size:12px;align-self:start;margin-top:5px}.class-arrow{grid-column:2;grid-row:1/3;color:var(--muted);font-size:20px}.class-row:hover{background:var(--hover);padding-inline:14px}.schedule-note{font-size:12px}.schedule-note a{text-decoration-color:var(--muted)}.contact{border-color:var(--line)}.contact-grid{grid-template-columns:1.2fr 1fr;gap:90px}.contact-copy h2{font-size:48px;line-height:1.15}.contact-info{border-color:var(--line)}.contact-info .text-link{color:var(--white);text-decoration-color:var(--muted)}.phone-block{border-color:var(--line)}.phone>span{color:var(--muted)}.footer-legal{border-color:var(--line)}.mobile-cta{background:var(--button);color:var(--button-text);border-radius:30px;box-shadow:0 5px 24px #17202526}.mobile-cta:focus-visible{outline-color:var(--focus)}.menu-toggle{color:var(--white)}
@media(max-width:1050px){.school-grid{gap:44px}.contact-grid{gap:50px}.hero-inner{padding-top:50px}.hero-bottom{margin-top:44px}h1{font-size:65px}.class-list{gap:0 32px}}
@media(max-width:760px){.container{width:calc(100% - 44px)}.header-inner{min-height:75px}.brand img{width:123px}.navigation .header-cta{border-color:var(--line)}.hero-inner{padding-top:34px}.hero-emblem{height:64px;margin-bottom:22px}.hero .eyebrow{font-size:8px;letter-spacing:.12em;line-height:1.8}.hero-copy{text-align:center}h1{font-size:clamp(36px,10vw,52px);line-height:1.15;letter-spacing:-.055em;margin:20px auto 20px;max-width:550px}.hero-description{font-size:13px;max-width:300px;line-height:1.8}.hero-actions{align-items:center;gap:8px;margin-top:25px}.hero-actions .button{min-width:253px;justify-content:center;gap:20px;min-height:51px}.hero-actions .text-link{font-size:11px;min-height:44px}.hero-bottom{margin-top:27px;padding-block:13px;gap:10px}.hero-bottom>span:first-child{font-size:10.5px}.hero-bottom>a{font-size:18px}.section{padding-block:54px}.section .eyebrow{font-size:8px;letter-spacing:.16em}.school-grid{grid-template-columns:1fr;gap:25px}.school h2{font-size:29px;line-height:1.3;max-width:400px;letter-spacing:-.035em}.school-copy>p{font-size:14px;line-height:1.9}.school-copy>p+p{font-size:12px;line-height:1.9}.principles{font-size:10px;gap:24px;margin-top:22px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:33px}.section-heading>p{font-size:11px;margin-top:17px}.class-list{gap:0 22px}.class-row{min-height:116px;padding-block:22px;grid-template-columns:minmax(0,1fr) 15px;gap:0 5px}.class-row .class-name{font-size:19px;line-height:1.35;align-self:end}.class-detail{font-size:10px;line-height:1.65;margin-top:7px}.class-arrow{font-size:16px}.class-row:hover{padding-inline:6px}.schedule-note{font-size:10.5px;line-height:1.9}.schedule-note a{display:block}.contact-grid{grid-template-columns:1fr;gap:37px}.contact-copy h2{font-size:38px;line-height:1.16}.contact-copy>p:not(.eyebrow){font-size:12px;margin-block:23px}.contact-info{padding-top:30px}.contact-info h3{font-size:28px}.phone{font-size:23px}.site-footer{padding-top:30px;padding-bottom:100px}.footer-brand img{width:108px}.footer-inner>p{font-size:10px}.mobile-cta{left:16px;right:16px;padding-inline:18px;min-height:51px;font-size:11px;gap:11px}.mobile-cta svg{width:19px;height:19px}.mobile-cta>span:last-child{font-size:17px}.back-top{font-size:10px}}
@media(max-width:360px){.container{width:calc(100% - 36px)}h1{font-size:36px;line-height:1.17}.hero .eyebrow{font-size:7.5px}.hero-description{font-size:12px}.hero-actions .button{min-width:242px;font-size:11px}.hero-bottom>span:first-child{font-size:9.5px}.school h2{font-size:27px}.class-list{column-gap:18px}.class-row .class-name{font-size:18px}.class-detail{font-size:10px}.contact-copy h2{font-size:34px}.mobile-cta{font-size:10.5px}}

/* Destaque pontual para a ação principal; demais botões preservam o grafite. */
.mobile-cta{background:#f7c83a;color:#2c3031}.mobile-cta:hover{background:#f3bf24}.mobile-cta:focus-visible{outline:2px solid #2c3031;outline-offset:4px;box-shadow:0 0 0 4px #f1efe8}
.school-address{font-style:normal;font-size:14px;line-height:1.8;color:var(--muted);margin:8px 0 0}
.location-map{width:100%;height:240px;overflow:hidden;border:1px solid var(--line);border-radius:8px;margin-top:18px;background:var(--black)}.location-map iframe{display:block;width:100%;height:100%;border:0}

/* Área do aluno: indicação de conteúdo futuro, sem link ou ação provisória. */
.navigation .student-area{display:flex;flex-direction:column;justify-content:center;gap:2px;color:var(--muted);font-size:12px;line-height:1.4;white-space:nowrap}
.student-area-note{font-size:9px;letter-spacing:.04em}
@media(min-width:761px){.header-inner{gap:24px}.navigation{gap:clamp(16px,2vw,30px)}}
@media(min-width:761px) and (max-width:1050px){.brand img{width:123px}.navigation{gap:16px}.navigation .header-cta{padding-inline:14px}.header-cta span{margin-left:10px}}
@media(max-width:760px){.navigation .student-area{flex-direction:row;align-items:center;justify-content:space-between;font-size:15px;padding-block:14px;border-top:1px solid var(--line);margin-top:8px}.student-area-note{font-size:10px}}

/* Tópicos das modalidades: preservar a grade e abrir os detalhes na largura completa. */
.class-list{display:block}.class-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}.class-pair:last-child{border-bottom:1px solid var(--line)}.class-toggle{width:100%;margin:0;background:transparent;color:var(--white);border-left:0;border-right:0;border-radius:0;text-align:left;font:inherit;cursor:pointer;scroll-margin-top:98px}.class-toggle .class-name{letter-spacing:-.035em}.class-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.class-toggle[aria-expanded=true] .class-name{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.class-panel{grid-column:1/-1;padding:28px 0 32px;border-top:1px solid var(--line);max-width:100%;overflow-wrap:anywhere}.class-panel[hidden]{display:none}.class-panel>h3{font-size:23px;font-weight:400;letter-spacing:-.03em;margin:0 0 20px}.class-topic{padding-block:14px;border-top:1px solid var(--line)}.class-topic h4{font-size:14px;line-height:1.65;font-weight:400;margin:0}.class-topic p,.class-topic ul{font-size:14px;line-height:1.8;color:var(--muted);margin:10px 0 0;max-width:720px}.class-panel>.text-link{margin-top:12px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.class-pair{column-gap:32px}}
@media(max-width:760px){.class-pair{column-gap:22px}.class-panel{padding-block:24px 28px}.class-panel>h3{font-size:21px;margin-bottom:18px}.class-topic h4,.class-topic p,.class-topic ul{font-size:13px}.class-toggle{scroll-margin-top:93px}}
@media(max-width:360px){.class-pair{column-gap:18px}}

/* Estrutura: cinco informações curtas, em leitura contínua e sem cartões. */
.facilities-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:90px}.facilities-heading h2{max-width:400px}.facilities-list{list-style:none;margin:0;padding:0}.facilities-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:20px;padding:23px 0;border-top:1px solid var(--line)}.facilities-list li:last-child{border-bottom:1px solid var(--line)}.facility-icon{display:block;width:22px;height:22px;margin-top:3px;color:var(--muted)}.facilities-list h3{font-size:21px;font-weight:400;line-height:1.4;letter-spacing:-.025em;margin:0 0 8px}.facilities-list p{font-size:14px;line-height:1.8;color:var(--muted);max-width:510px}.facilities+.classes{padding-top:0}
@media(max-width:1050px){.facilities-grid{gap:44px}}
@media(max-width:760px){.facilities-grid{grid-template-columns:1fr;gap:32px}.facilities-heading h2{font-size:33px}.facilities-list li{grid-template-columns:22px minmax(0,1fr);gap:14px;padding-block:21px}.facility-icon{width:20px;height:20px;margin-top:3px}.facilities-list h3{font-size:19px;margin-bottom:7px}.facilities-list p{font-size:13px;line-height:1.8}}

/* Acolhimento inicial: perguntas nativas, sem dependência de JavaScript. */
.first-steps:focus{outline:none}.first-steps-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:90px}.first-steps-heading h2{max-width:460px}.first-steps-heading>p:last-child{max-width:350px;margin-top:24px;font-size:14px;line-height:1.8;color:var(--muted)}.first-steps-questions{border-bottom:1px solid var(--line)}.first-steps-questions details{border-top:1px solid var(--line)}.first-steps-questions summary{display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;min-height:70px;padding:20px 0;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:-.015em;cursor:pointer}.first-steps-questions summary::-webkit-details-marker{display:none}.first-steps-questions summary>span{flex:0 0 16px;width:16px;height:16px;position:relative;color:var(--muted)}.first-steps-questions summary>span::before,.first-steps-questions summary>span::after{content:"";position:absolute;top:7px;left:2px;width:12px;height:1px;background:currentColor}.first-steps-questions summary>span::after{transform:rotate(90deg)}.first-steps-questions details[open] summary>span::after{display:none}.first-steps-questions summary:hover{color:var(--muted)}.first-steps-questions summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.first-steps-questions details>p{font-size:14px;line-height:1.85;color:var(--muted);padding-bottom:22px;max-width:520px}.first-steps-questions details>.text-link{margin-bottom:22px;text-decoration:underline;text-underline-offset:5px}.first-steps-contact{margin-top:28px;max-width:100%}
@media(max-width:1050px){.first-steps-grid{gap:44px}}
@media(max-width:760px){.first-steps-grid{grid-template-columns:1fr;gap:28px}.first-steps-heading h2{font-size:33px}.first-steps-heading>p:last-child{font-size:13px;margin-top:20px}.first-steps-questions summary{font-size:15px;min-height:65px;padding-block:18px;gap:15px}.first-steps-questions details>p{font-size:13px;padding-bottom:20px}.first-steps-contact{margin-top:24px}}
@media(max-width:360px){.first-steps-heading h2{font-size:29px}.hero-actions .button{gap:12px}}

/* Resumo das etapas infantis e acesso à página de metodologia. */
.class-stage{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}.class-panel-actions{display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap;margin-top:12px}.class-panel-actions .text-link{text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.class-panel-actions{align-items:flex-start;flex-direction:column;gap:8px}.class-panel-actions .button{font-size:11px;gap:18px}.class-stage{font-size:9px}}
