:root{--paper:#f6f5f0;--white:#fff;--ink:#1a1c1a;--muted:#62665f;--orange:#f76a24;--line:#d9dbd2;--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}p{line-height:1.65}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #2457b8;outline-offset:5px}.container{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.orange{color:var(--orange)}.skip-link{position:fixed;z-index:100;left:16px;top:-80px;background:white;padding:15px}.skip-link:focus{top:10px}.proposal-bar{height:32px;background:var(--ink);color:#e4e5df;font-size:10px;letter-spacing:1.2px;display:flex;align-items:center;justify-content:space-between;padding:0 34px}.proposal-bar a{letter-spacing:0;font-size:11px}.proposal-bar a span{margin-left:6px}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:98px;display:flex;align-items:center;gap:26px;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand img{height:46px;width:46px;border-radius:50%}.brand-text{display:block}.brand-text>span{font-size:35px;line-height:1;letter-spacing:-1.7px}.brand-text b{font-weight:400;color:var(--orange)}.brand-text small{display:block;font-size:8px;letter-spacing:2.8px;margin-top:5px}.header-inner nav{display:flex;align-items:center;gap:28px;font-size:12px}.header-inner nav a{padding-block:10px;white-space:nowrap}.header-inner nav a:hover{color:#b9440e}.header-contact{background:var(--ink);color:white;padding:15px 19px;display:flex;gap:23px;align-items:center;font-size:12px;white-space:nowrap}.header-contact:hover{background:#343932}.header-contact span{font-size:21px;color:var(--orange)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:48px;padding-block:58px 60px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;display:flex;align-items:center;gap:8px}.dot{width:7px;height:7px;background:var(--orange);border-radius:50%}.hero h1{font-size:clamp(54px,6.2vw,89px);line-height:1.015;letter-spacing:-4.7px;margin-top:27px;font-weight:700}.hero h1>span{display:block}.hero-intro{font-size:15px;max-width:390px;color:var(--muted);margin-top:25px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:28px}.button{min-height:53px;padding:17px 21px;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;font-size:12px;font-weight:700;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:var(--ink)}.button-orange:hover{background:#ed5813}.button span{font-size:23px;line-height:16px;font-weight:400}.text-link{display:inline-flex;align-items:center;gap:19px;font-size:12px;font-weight:700;padding-block:5px;border-bottom:1px solid currentColor}.text-link:hover{color:#b9440e}.text-link span{font-size:19px;line-height:20px;font-weight:400}.hero-foot{display:flex;gap:13px;align-items:center;margin-top:38px;padding-top:23px;border-top:1px solid var(--line);max-width:390px}.hero-foot p{font-size:10px;line-height:1.6;color:var(--muted)}.hero-foot strong{font-weight:400;color:var(--ink)}.mini-road{width:25px;min-width:25px;height:34px;border-left:1px solid #777b72;border-right:1px solid #777b72;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:3px}.mini-road i{width:1px;height:6px;background:var(--orange)}.hero-photo{height:590px;position:relative;isolation:isolate}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:44% center}.hero-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.58));z-index:0}.hero-photo figcaption{position:absolute;z-index:1;bottom:26px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:11px;line-height:1.6;letter-spacing:1.5px}.hero-photo figcaption strong{font-size:17px;letter-spacing:.4px}.photo-arrow{font-size:50px;font-weight:400}.photo-side{position:absolute;right:-22px;top:0;writing-mode:vertical-rl;font-size:8px;letter-spacing:1.9px}.journey-strip{background:var(--orange);padding-block:23px}.journey-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:clamp(11px,1.32vw,17px);letter-spacing:1.2px;font-weight:700}.journey-strip svg{flex-shrink:0}.section{padding-block:96px}.section-label{display:flex;gap:13px;align-items:center;font-size:10px;font-weight:700;letter-spacing:1.5px}.section-label>span{width:33px;height:1px;background:var(--orange);display:block}.section-heading{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;margin-top:27px;margin-bottom:39px}h2{font-size:clamp(37px,4vw,56px);line-height:1.08;letter-spacing:-2.6px;font-weight:700}.section-heading>p{font-size:13px;color:var(--muted);max-width:350px;padding-bottom:3px}.category-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);border-bottom:0}.category-tab{border:0;background:transparent;padding:22px 23px;display:flex;align-items:center;gap:15px;text-align:left;cursor:pointer;border-right:1px solid var(--line);font-size:11px;min-width:0}.category-tab:last-child{border-right:0}.category-tab:hover{background:#eaece3}.category-tab[aria-selected="true"]{background:var(--orange)}.tab-code{font-size:30px;font-weight:700;letter-spacing:-1px;min-width:40px}.tab-arrow{margin-left:auto;font-size:19px}.category-panel{display:grid;grid-template-columns:1fr 1.1fr;min-height:345px;background:#eceee5}.category-art{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:320px}.category-art>span{position:absolute;left:35px;top:-33px;font-size:350px;font-weight:700;letter-spacing:-24px;line-height:1;color:#e0e3d7;user-select:none}.vehicle-icon{position:relative;width:240px;max-width:70%;color:#343b30;z-index:1}.vehicle-icon [hidden]{display:none}.category-copy{align-self:center;padding:41px 51px 41px 20px}.category-copy .eyebrow{color:#b34716}.category-copy h3{font-size:36px;line-height:1.1;letter-spacing:-1.3px;margin-top:13px;max-width:380px}.category-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:395px;margin-top:15px}.category-copy .text-link{margin-top:20px}.category-copy .category-note{font-size:10px!important;max-width:360px!important;color:#666b60!important}.extra-service{margin-top:22px;display:flex;justify-content:space-between;gap:25px;align-items:center;padding:24px 0;border-block:1px solid var(--line)}.extra-service p{font-size:12px;color:var(--muted)}.extra-service strong{color:var(--ink);font-weight:700}.school-section{background:#20231f;color:white;padding-block:86px}.school-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;align-items:center}.school-photo{position:relative;max-width:460px}.school-photo img{width:100%;height:520px;object-fit:cover;object-position:center}.school-photo figcaption{position:absolute;left:0;bottom:0;padding:14px 20px;background:var(--orange);color:var(--ink);font-size:9px;letter-spacing:1.6px}.school-copy h2{margin-top:31px;font-size:clamp(35px,3.8vw,52px)}.school-copy h2 span{color:var(--orange)}.school-copy>p:not(.section-label){color:#c0c6bc;font-size:13px;max-width:415px;margin-top:22px;line-height:1.8}.school-facts{display:grid;grid-template-columns:1fr 1fr;margin-block:30px;border-block:1px solid #45493f;padding-block:21px;max-width:415px;gap:15px}.school-facts>div{display:flex;gap:12px;align-items:start}.school-facts span{font-size:9px;color:var(--orange);padding-top:3px}.school-facts p{font-size:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding:0;list-style:none;margin-top:55px}.steps li{border-top:1px solid var(--ink);padding-top:20px}.step-number{font-size:13px;font-weight:700;color:#c34a13}.steps h3{font-size:23px;letter-spacing:-.8px;margin-top:36px}.steps p{font-size:13px;color:var(--muted);margin-top:13px;max-width:300px}.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;margin-top:88px;padding-top:42px;border-top:1px solid var(--line)}.faq>div>h3{font-size:34px;line-height:1.1;letter-spacing:-1.4px;margin-top:17px}.faq .eyebrow{font-size:9px}.faq details{border-bottom:1px solid var(--line);padding-block:17px}.faq details:first-child{padding-top:0}.faq summary{list-style:none;cursor:pointer;font-size:14px;font-weight:700;display:flex;justify-content:space-between;gap:20px;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:24px;color:#bc4914;line-height:20px;transition:transform .15s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;color:var(--muted);padding-top:14px;max-width:520px;padding-right:20px}.site-footer{background:#20231f;color:white;padding-block:35px}.site-footer>.container{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-brand{font-size:30px;letter-spacing:-1.8px;line-height:1}.footer-brand b{color:var(--orange);font-weight:400}.footer-brand span{font-size:7px;letter-spacing:2.15px;display:block;margin-top:7px}.site-footer p{font-size:9px;color:#b7bcb2;line-height:1.9}.back-top{font-size:10px;display:flex;align-items:center;gap:22px}.back-top span{font-size:21px;color:var(--orange)}.mobile-contact{display:none}
@media(min-width:1500px){.hero{gap:85px}.hero-photo{height:630px}.hero h1{font-size:98px}}
@media(max-width:1100px){.container{width:calc(100% - 72px)}.header-inner{gap:18px;height:90px}.header-inner nav{gap:18px;font-size:11px}.brand-text>span{font-size:30px}.brand-text small{font-size:7px;letter-spacing:2.3px}.brand img{height:40px;width:40px}.header-contact{padding:13px;font-size:11px;gap:13px}.hero{gap:34px;padding-top:44px}.hero h1{letter-spacing:-3.7px}.hero-photo{height:560px}.hero-actions{gap:18px}.button{gap:24px}.hero-actions .text-link{font-size:11px;gap:12px}.hero-intro{font-size:14px}.category-tab{padding:19px 18px;gap:12px}.category-tab>span:nth-child(2){font-size:10px}.category-copy{padding-right:32px}.school-grid{gap:55px}.school-photo img{height:490px}}
@media(max-width:900px){html{scroll-padding-top:84px}.container{width:calc(100% - 48px)}.header-inner{height:80px}.brand img{height:36px;width:36px}.brand-text>span{font-size:29px}.brand-text small{font-size:6px}.header-contact{margin-left:auto}.menu-toggle{display:flex;align-items:center;gap:10px;font-size:11px;background:none;border:1px solid var(--line);padding:12px;cursor:pointer;order:3}.menu-lines{height:12px;width:17px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:block}.header-inner nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:15px 24px 24px;border-bottom:1px solid var(--line);font-size:15px;align-items:stretch}.header-inner nav.is-open{display:flex;flex-direction:column;gap:3px}.header-inner nav a{padding-block:14px;border-bottom:1px solid var(--line)}.hero{gap:28px;padding-block:38px 43px}.hero h1{font-size:clamp(44px,6.2vw,58px);letter-spacing:-2.8px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.hero-photo{height:490px}.hero-intro{font-size:13px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px;margin-top:22px}.hero-foot{margin-top:24px;padding-top:18px}.hero-photo figcaption{left:17px;right:17px;bottom:18px;font-size:8px}.hero-photo figcaption strong{font-size:12px}.photo-arrow{font-size:35px}.photo-side{right:-17px;font-size:7px}.journey-strip .container{font-size:10px;letter-spacing:.7px}.journey-strip svg{width:45px}.section{padding-block:68px}.section-heading{gap:30px}.section-heading>p{font-size:12px;max-width:260px}h2{font-size:39px;letter-spacing:-1.9px}.category-tab{flex-wrap:wrap;padding:17px 15px;gap:7px}.category-tab>span:nth-child(2){order:3;flex-basis:100%;font-size:10px}.tab-code{min-width:0;font-size:28px}.category-copy h3{font-size:30px}.category-copy>p:not(.eyebrow){font-size:12px}.category-art>span{font-size:280px;top:0;left:20px;letter-spacing:-20px}.school-grid{gap:38px}.school-copy h2{font-size:36px;letter-spacing:-1.9px}.school-copy>p:not(.section-label){font-size:12px;margin-top:18px}.school-photo img{height:470px}.school-section{padding-block:65px}.school-facts p{font-size:10px}.school-facts{gap:9px}.school-facts>div{gap:7px}.steps{gap:25px}.steps h3{font-size:21px}.steps p{font-size:12px}.faq{grid-template-columns:1fr 1.6fr;gap:30px}.faq>div>h3{font-size:29px}.faq summary{font-size:12px}.site-footer p{font-size:8px;max-width:250px}}
@media(max-width:600px){.proposal-bar{height:29px;padding-inline:20px;font-size:8px;letter-spacing:.8px}.proposal-bar a{font-size:9px}.container{width:calc(100% - 40px)}.header-inner{height:76px;gap:12px}.brand{gap:8px}.brand-text>span{font-size:30px}.brand-text small{font-size:6px;letter-spacing:2.1px}.brand img{width:36px;height:36px}.header-contact{display:none}.menu-toggle{margin-left:auto;padding:10px}.hero{grid-template-columns:1fr;gap:32px;padding-top:32px;padding-bottom:32px}.hero .eyebrow{font-size:8px;letter-spacing:.9px}.hero h1{font-size:clamp(46px,12.4vw,72px);letter-spacing:-3.4px;line-height:1.02;margin-top:23px}.hero-intro{font-size:14px;max-width:345px;margin-top:23px}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:25px}.hero-actions .text-link{font-size:10px;gap:8px}.hero-actions .button{font-size:11px;padding:16px 17px;gap:21px;min-height:51px}.hero-foot{display:none}.hero-photo{height:430px;width:100%}.hero-photo>img{object-position:center 41%}.hero-photo figcaption{bottom:21px;left:20px;right:20px;font-size:10px}.hero-photo figcaption strong{font-size:15px}.photo-side{display:none}.journey-strip{padding-block:18px}.journey-strip .container{gap:12px;font-size:9px;line-height:1.5;letter-spacing:.4px}.journey-strip svg{width:32px;min-width:24px}.journey-strip span{max-width:135px}.section{padding-block:54px}.section-label{font-size:8px;letter-spacing:1.1px;gap:10px}.section-label>span{width:24px}.section-heading{display:block;margin-top:23px;margin-bottom:28px}h2{font-size:36px;letter-spacing:-1.9px}.section-heading>p{margin-top:20px;font-size:12px;max-width:320px}.category-tab{padding:15px 11px;gap:7px}.tab-code{font-size:25px;letter-spacing:-1px}.category-tab>span:nth-child(2){font-size:8px}.tab-arrow{font-size:15px}.category-panel{grid-template-columns:1fr}.category-art{min-height:175px;height:175px}.category-art>span{font-size:235px;left:50%;transform:translateX(-50%);top:-30px;letter-spacing:-12px}.vehicle-icon{width:180px;height:125px}.category-copy{padding:18px 25px 28px}.category-copy h3{font-size:31px;max-width:300px}.category-copy>p:not(.eyebrow){font-size:12px}.category-copy .eyebrow{font-size:9px}.extra-service{align-items:flex-start;flex-direction:column;gap:12px;margin-top:18px;padding-block:22px}.extra-service p{font-size:11px}.extra-service .text-link{font-size:11px}.school-section{padding-block:48px}.school-grid{grid-template-columns:1fr;gap:35px}.school-photo{max-width:none}.school-photo img{height:390px;object-position:50% 37%}.school-photo figcaption{font-size:8px;padding:12px 16px}.school-copy h2{font-size:39px;margin-top:24px}.school-copy>p:not(.section-label){font-size:13px;max-width:none}.school-facts{max-width:none;margin-block:25px}.school-facts p{font-size:12px}.school-copy .button{min-height:50px;font-size:11px}.steps{grid-template-columns:1fr;gap:27px;margin-top:35px}.steps li{position:relative;padding-left:54px;padding-top:18px;min-height:104px}.step-number{position:absolute;left:0;top:21px;font-size:11px}.steps h3{margin-top:0;font-size:23px}.steps p{font-size:12px;margin-top:9px;max-width:none}.faq{grid-template-columns:1fr;gap:30px;margin-top:48px;padding-top:29px}.faq>div>h3{font-size:30px}.faq>div>h3 br{display:none}.faq summary{font-size:13px}.faq details p{font-size:12px;padding-right:10px}.site-footer{padding-block:29px 90px}.site-footer>.container{flex-wrap:wrap;gap:25px 22px}.footer-brand{font-size:30px}.site-footer p{font-size:8px;margin-left:auto;text-align:right;max-width:170px}.back-top{font-size:10px;flex-basis:100%;justify-content:space-between;border-top:1px solid #45493f;padding-top:18px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;z-index:25;background:var(--orange);color:var(--ink);padding:16px 21px calc(16px + env(safe-area-inset-bottom));font-size:12px;font-weight:700;box-shadow:0 -3px 12px #00000012}.mobile-contact span{font-size:23px;line-height:20px}}
/* O painel mais extenso define a altura comum das quatro categorias. */
.category-panels{display:grid}.category-panel{grid-area:1 / 1;min-width:0}.category-panel[aria-hidden="true"]{visibility:hidden;pointer-events:none}.category-copy{min-width:0}
@media(max-width:600px){.category-panel{grid-template-rows:175px 1fr}}


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

/* Contactos: dados e ligações alinhados; horários numa faixa própria. */
.contact-section{background:#e8eade;padding-block:74px 69px}
.contact-heading{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:32px}
.contact-heading h2{font-size:clamp(43px,5vw,69px);line-height:1.08;letter-spacing:-3.4px}
.contact-heading h2 span{color:#b84814}
.contact-round{height:95px;width:95px;border:1px solid #8c9383;flex-shrink:0;border-radius:50%;display:grid;place-items:center;font-size:59px;transition:background .2s}
.contact-round:hover{background:var(--orange)}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:34px;align-items:start;border-top:1px solid #bfc3b3;margin-top:44px;padding-top:30px}
.contact-card{display:grid;grid-template-rows:auto minmax(82px,auto) auto;align-content:start;min-width:0}
.contact-label{font-size:10px;line-height:1.5;letter-spacing:1.5px;font-weight:700;margin-bottom:18px}
.contact-detail{min-width:0}
.phone{display:inline-block;font-size:32px;line-height:1.15;letter-spacing:-1.1px;font-weight:700;white-space:nowrap}
.phone:hover{color:#b84814}
.call-note{font-size:11px;line-height:1.5;margin-top:8px;color:#505849}
.contact-detail address{font-style:normal;font-size:15px;line-height:1.75;margin:0}
.contact-action{display:inline-flex;align-items:center;justify-self:start;align-self:start;gap:10px;min-height:32px;padding:0 0 6px;border-bottom:1px solid currentColor;font-size:13px;line-height:1.4;font-weight:700;transition:color .15s}
.contact-action:hover{color:#b84814}
.contact-action svg{display:block;width:21px;height:21px;flex:none}
.contact-action .contact-action-arrow{font-size:22px;font-weight:400;line-height:1;margin-left:12px}
.contact-hours{grid-column:1/-1;border-top:1px solid #bfc3b3;padding-top:28px;min-width:0}
.hours-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.hours-group{min-width:0;background:#f3f4ed;border:1px solid #c5cbbb;padding:22px 26px}
.hours-group>h3{font-size:17px;line-height:1.4;letter-spacing:-.2px;margin:0;padding-bottom:14px;border-bottom:1px solid #c5cbbb}
.hours{margin:0;font-size:14px;line-height:1.5}
.hours>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;align-items:start;padding:12px 0;border-bottom:1px solid #d8dccf}
.hours>div:last-child{border-bottom:0;padding-bottom:0}
.hours dt{font-weight:400;color:#3e4538;min-width:0}
.hours dd{display:grid;gap:4px;margin:0;font-weight:600;font-variant-numeric:tabular-nums;text-align:left;min-width:0}
.hours dd span{display:block;white-space:nowrap}
@media(max-width:1100px){.contact-grid{column-gap:40px}.hours-groups{gap:22px}.hours-group{padding:22px}.hours>div{grid-template-columns:125px minmax(0,1fr);gap:16px}}
@media(max-width:900px){.contact-section{padding-block:64px 50px}.contact-heading h2{font-size:54px}.contact-round{height:75px;width:75px;font-size:45px}.contact-grid{column-gap:36px}}
@media(max-width:760px){.contact-grid{grid-template-columns:1fr;row-gap:26px;margin-top:32px;padding-top:26px}.contact-card{grid-template-rows:auto auto auto}.contact-detail{margin-bottom:20px}.contact-card+.contact-card{border-top:1px solid #bfc3b3;padding-top:24px}.contact-hours{padding-top:24px}.hours-groups{grid-template-columns:1fr;gap:18px}}
@media(max-width:600px){.contact-section{padding-block:45px}.contact-heading{margin-top:25px;align-items:flex-start;gap:20px}.contact-heading h2{font-size:39px;letter-spacing:-2px}.contact-round{height:48px;width:48px;font-size:29px;margin-top:3px}.contact-label{font-size:10px;margin-bottom:16px}.phone{font-size:32px}.contact-detail address{font-size:14px}.hours-group>h3{font-size:16px}}
@media(max-width:480px){.hours-group{padding:18px}.hours>div{grid-template-columns:110px minmax(0,1fr);gap:12px;padding-block:11px}.hours{font-size:14px}}

/* Blocos de imagem e página de informação legal. */
.hero-visual,.school-visual{min-width:0}
.school-visual{max-width:460px}





.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.site-footer>.footer-legal{justify-content:flex-end;margin-top:24px;padding-top:12px;border-top:1px solid #45493f}
.footer-legal a{font-size:11px;line-height:1.5;min-height:32px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px;color:#c0c6bc}
.footer-legal a:hover{color:var(--orange)}
.legal-header .header-inner{gap:20px}
.header-return{display:inline-flex;align-items:center;gap:9px;font-size:13px;min-height:44px}
.header-return:hover{color:#b9440e}
.legal-content{padding-block:70px 80px;min-height:65vh}
.legal-content h1{font-size:clamp(36px,4vw,56px);line-height:1.1;letter-spacing:-2px;margin-top:24px}
.legal-content section{max-width:740px;border-top:1px solid var(--line);margin-top:38px;padding-top:28px;scroll-margin-top:24px}
.legal-content h2{font-size:24px;line-height:1.3;letter-spacing:-.6px;margin-bottom:20px}
.legal-content section p,.legal-content address{font-size:15px;line-height:1.8;color:#50564b;margin-top:16px}
.legal-content address{font-style:normal}
.legal-content section a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.legal-content section a:hover{color:#b9440e}
.legal-content small{font-size:12px}
@media(max-width:600px){.school-visual{max-width:none}.site-footer>.footer-legal{justify-content:flex-start;gap:0;margin-top:20px;padding-top:10px}.legal-content{padding-block:42px 50px}.legal-content section{margin-top:30px;padding-top:24px}.legal-content h2{font-size:22px}.legal-content section p,.legal-content address{font-size:14px}}

/* Categorias: limites e acessos comparáveis, com altura comum. */
.category-copy{align-self:stretch;padding:36px 42px 36px 20px}
.category-copy h3{font-size:32px;max-width:430px}
.category-specs{margin:22px 0 0;font-size:13px;line-height:1.5;border-top:1px solid #c4cbb9}
.category-specs>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid #d1d6c8}
.category-specs dt{color:#58604f;font-weight:400}
.category-specs dd{margin:0;font-weight:600}
.category-copy>.category-detail{font-size:12px;line-height:1.65;max-width:430px;color:#505849;margin-top:18px}
.category-art{padding-bottom:30px}
/* Silhuetas da referência: três recortes da mesma imagem, sem deformação. */
.category-art .vehicle-icon{width:360px;max-width:84%;height:auto}
.category-vehicle-label{position:absolute;left:20px;right:20px;bottom:34px;text-align:center;font-size:11px;font-weight:700;letter-spacing:1px;color:#505849}
.category-guidance{margin-top:22px}
.category-help{border-block:1px solid var(--line);padding:18px 0}
.category-help summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font-size:14px;font-weight:700;line-height:1.5}
.category-help summary::-webkit-details-marker{display:none}
.category-help summary>span{font-size:24px;color:#b9440e;font-weight:400;line-height:1;transition:transform .15s}
.category-help[open] summary>span{transform:rotate(45deg)}
.category-help p{max-width:850px;font-size:13px;color:var(--muted);margin-top:14px}
.category-access-note{font-size:12px;color:var(--muted);max-width:960px;margin-top:18px}
.category-sources{font-size:11px;color:var(--muted);line-height:1.8;margin-top:10px}
.category-sources a{text-decoration:underline;text-underline-offset:3px}
.category-sources a:hover{color:#b9440e}
@media(max-width:1100px){.category-copy{padding:30px 28px 30px 16px}.category-specs>div{grid-template-columns:125px minmax(0,1fr);gap:12px}.category-copy h3{font-size:30px}}
@media(max-width:900px){.category-specs{font-size:12px}.category-specs>div{grid-template-columns:112px minmax(0,1fr);gap:12px}.category-copy h3{font-size:28px}.category-art .vehicle-icon{max-width:92%}.category-vehicle-label{font-size:10px;letter-spacing:.5px}}
@media(max-width:600px){.category-panel{grid-template-rows:210px 1fr}.category-art{min-height:210px;height:210px;padding-bottom:28px}.category-art .vehicle-icon{width:280px;max-width:90%;height:auto}.category-vehicle-label{bottom:12px}.category-copy{padding:20px 22px 28px}.category-copy h3{font-size:29px}.category-specs{font-size:13px;margin-top:20px}.category-specs>div{grid-template-columns:115px minmax(0,1fr);gap:14px}.category-copy>.category-detail{font-size:12px}.category-help summary{font-size:13px}.category-help p{font-size:12px}}
@media(max-width:360px){.category-specs>div{grid-template-columns:103px minmax(0,1fr);gap:12px}.category-copy{padding-inline:18px}.category-copy h3{font-size:27px}}

/* Inscrição: documentos de base, menores e início antecipado. */
.enrolment{margin-top:55px;padding-top:34px;border-top:1px solid var(--line)}
.enrolment-heading h3{font-size:30px;line-height:1.2;letter-spacing:-1px;margin-top:14px}
.enrolment-heading>p:last-child{font-size:13px;line-height:1.7;color:var(--muted);max-width:660px;margin-top:16px}
.enrolment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:28px}
.enrolment-card{border:1px solid var(--line);padding:26px 28px;background:#fbfbf7;min-width:0}
.enrolment-card h4{font-size:17px;line-height:1.4;margin:0;font-weight:700;letter-spacing:-.2px}
.enrolment-minors{background:#eceee5}
.document-list{list-style:none;padding:0;margin:20px 0 0}
.document-list li{display:flex;align-items:flex-start;gap:13px;padding-block:16px;border-top:1px solid var(--line)}
.document-list li:first-child{padding-top:0;border-top:0}
.document-list li:last-child{padding-bottom:0}
.document-check{display:grid;place-items:center;width:22px;height:22px;flex:none;border:1px solid #b7c0aa;border-radius:50%;font-size:13px;color:#8f3c15;line-height:1;margin-top:1px}
.document-list strong{font-size:14px;line-height:1.5;display:block}
.document-list p,.enrolment-card-intro{font-size:12px;line-height:1.7;color:var(--muted);margin-top:6px}
.enrolment-card-intro{margin-top:12px}
.enrolment-timing{display:flex;align-items:center;gap:30px;background:#f9e5d8;border-left:3px solid var(--orange);padding:25px 30px;margin-top:26px}
.timing-number{display:flex;align-items:center;gap:16px;flex:none;padding-right:30px;border-right:1px solid #ddbea9;line-height:1}
.timing-number strong{font-size:58px;letter-spacing:-3px;line-height:1;color:#b84814}
.timing-number span{font-size:9px;letter-spacing:1px;font-weight:700;max-width:50px;line-height:1.7}
.enrolment-timing h4{font-size:16px;line-height:1.5;margin:0}
.enrolment-timing>div p{font-size:12px;line-height:1.7;margin-top:6px;max-width:800px;color:#5c4c42}
.enrolment-source{font-size:11px;line-height:1.8;color:var(--muted);margin-top:14px;max-width:900px}
.enrolment-source a{text-decoration:underline;text-underline-offset:3px}
.enrolment-source a:hover{color:#b9440e}
@media(max-width:900px){.enrolment-grid{gap:20px}.enrolment-card{padding:24px 22px}.enrolment-timing{gap:22px;padding:23px}.timing-number{padding-right:22px;gap:12px}}
@media(max-width:600px){.enrolment{margin-top:35px;padding-top:28px}.enrolment-heading h3{font-size:27px}.enrolment-grid{grid-template-columns:1fr;gap:18px;margin-top:24px}.enrolment-card{padding:23px 21px}.document-list strong{font-size:13px}.enrolment-timing{align-items:flex-start;gap:17px;padding:22px 20px}.timing-number{display:block;border:0;padding:0;min-width:45px}.timing-number strong{font-size:48px;letter-spacing:-2px;display:block}.timing-number span{display:block;font-size:8px;margin-top:8px;max-width:44px}.enrolment-timing h4{font-size:15px}.enrolment-timing>div p{font-size:12px}}

/* Nota sobre as composições concentrada no rodapé. */
.site-footer>.footer-legal{justify-content:space-between;align-items:flex-start;gap:12px 28px}
.site-footer .footer-image-notice{font-size:11px;line-height:1.7;max-width:820px;color:#c0c6bc;text-align:left;margin:0;flex:1;min-width:0}
@media(max-width:600px){.site-footer>.footer-legal{flex-direction:column;align-items:stretch;gap:10px}.footer-legal a{align-self:flex-start}}


/* Perfis individuais preparados a partir das fotografias de referência. */

/* Setas vectoriais uniformes em todos os dispositivos. */
.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:middle;flex-shrink:0;overflow:visible}
.category-tab>span:nth-child(2){font-size:13px}
@media(max-width:900px){.category-tab>span:nth-child(2){font-size:12px}}
@media(max-width:600px){.category-tab>span:nth-child(2){font-size:10px}.tab-arrow{font-size:16px}}

/* Destaque para a antecipação da aprendizagem. */
.enrolment-timing{background:var(--orange);border-left:0;padding:32px 34px;gap:34px;color:var(--ink)}
.enrolment-timing .timing-number{border-right:0;padding-right:0;gap:18px}
.enrolment-timing .timing-number strong{font-size:76px;color:var(--ink)}
.enrolment-timing .timing-number span{font-size:11px;max-width:62px;letter-spacing:1.2px}
.enrolment-timing h4{font-size:22px;line-height:1.3;letter-spacing:-.5px}
.enrolment-timing>div p{font-size:14px;color:var(--ink);line-height:1.65;margin-top:10px}
@media(max-width:600px){.enrolment-timing{flex-direction:column;gap:20px;padding:26px 24px}.enrolment-timing .timing-number{display:flex;align-items:center;gap:15px}.enrolment-timing .timing-number strong{font-size:64px}.enrolment-timing .timing-number span{font-size:11px;margin-top:0;max-width:65px}.enrolment-timing h4{font-size:22px}.enrolment-timing>div p{font-size:13px}}

/* Aulas de treino a encartados e ligações dos contactos. */
.extra-service{background:#eceee5;border:0;padding:30px 32px;gap:30px;margin-top:28px}
.extra-service p{font-size:14px;line-height:1.65}
.extra-service p strong{display:inline-block;font-size:21px;line-height:1.3;letter-spacing:-.4px;margin-bottom:5px}
.extra-service .text-link{background:var(--orange);border:0;padding:15px 20px;min-height:50px;white-space:nowrap;gap:24px;color:var(--ink)}
.extra-service .text-link:hover{background:#ed5813}
.contact-action{border-bottom:0;padding-bottom:0}
@media(max-width:600px){.extra-service{padding:25px 23px;gap:20px}.extra-service p{font-size:13px}.extra-service p strong{font-size:20px}.extra-service .text-link{font-size:12px}}

.school-photo img{height:auto;aspect-ratio:1/1;object-fit:contain;object-position:center}

.extra-service{background:var(--orange)}
.extra-service p{color:var(--ink)}
.extra-service .text-link{background:#eceee5}
.extra-service .text-link:hover{background:#e0e3d7}

.extra-service .text-link{background:var(--ink);color:var(--paper)}
.extra-service .text-link span{color:var(--orange)}
.extra-service .text-link:hover{background:#343932;color:var(--paper)}

.category-art .vehicle-profile{display:block;aspect-ratio:36/23;object-fit:contain;background:transparent}

@media(max-width:600px){.category-tabs{grid-template-columns:repeat(5,minmax(108px,1fr));overflow-x:auto}.category-tab>span:nth-child(2){font-size:11px}}

/* Escala proporcional e base comum para letras e viaturas. */
.category-art{container-type:inline-size;min-height:320px;padding:0}
.category-art>span{left:50%;top:auto;bottom:calc(70px - .03em);transform:translateX(-50%);font-size:min(60cqw,300px);line-height:.75;letter-spacing:-.06em;white-space:nowrap}
.vehicle-frame{position:absolute;left:50%;bottom:70px;transform:translateX(-50%);width:min(84cqw,420px);z-index:1}
#panel-b1 .vehicle-frame{width:min(60.48cqw,302.4px)}
#panel-a1 .vehicle-frame{width:min(41cqw,205px)}
#panel-a2 .vehicle-frame{width:min(43.2cqw,216px)}
#panel-a .vehicle-frame{width:min(44cqw,220px)}
.category-art .vehicle-frame .vehicle-profile{position:absolute;left:var(--image-left);top:var(--image-top);width:var(--image-width);max-width:none;height:auto;aspect-ratio:auto;display:block}
@media(max-width:600px){.category-art{min-height:210px;height:210px}.category-art>span{bottom:calc(42px - .03em);font-size:min(60cqw,210px)}.vehicle-frame{bottom:42px}.category-vehicle-label{bottom:12px}}
