.base-page{--base-space:clamp(56px,7vw,96px)}
.base-page main{overflow:clip}
.base-section{padding-block:var(--base-space)}
.base-band{background:var(--panel);border-block:1px solid var(--line)}
.base-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-block:52px 64px}
.base-hero h1{font-size:clamp(3rem,5.3vw,4.8rem);line-height:1.02;letter-spacing:-.005em}
.base-hero h1 span{color:var(--gold)}
.base-hero .eyebrow{color:var(--gold);margin-bottom:22px}
.base-intro{font-size:1.125rem;color:#d5d7d0;margin-top:26px}
.base-hero .base-support{font-size:1rem;color:var(--muted);margin-top:18px}
.base-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:30px}
.base-photo{margin:0;overflow:hidden;border-radius:14px;border:1px solid #ffffff29;background:#20231e;box-shadow:0 24px 38px -16px #000d,0 6px 10px #0006,0 1px 0 #ffffff24}
.base-photo img{width:100%;height:auto;display:block}
.base-hero-photo{width:100%;max-width:440px;aspect-ratio:3/4;justify-self:center;position:relative}
.base-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.base-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:30px 0;border-block:1px solid var(--line);gap:20px}
.base-stats div{padding-left:24px;border-left:1px solid var(--line)}
.base-stats div:first-child{border-left:0;padding-left:0}
.base-stats strong{display:block;color:var(--gold);font:600 clamp(2.1rem,3vw,3rem)/1.05 var(--display);text-transform:uppercase}
.base-stats span{display:block;font-size:.875rem;line-height:1.6;margin-top:9px;color:#c5c8c0}
.base-heading{max-width:880px;margin-bottom:40px}
.base-heading h2{font-size:clamp(2.3rem,4vw,3.5rem)}
.base-heading p:not(.eyebrow){color:var(--muted);margin-top:22px;max-width:740px}
.base-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.base-market{grid-template-columns:1.1fr .9fr}
.base-copy h2{font-size:clamp(2.1rem,3.6vw,3.1rem);margin-bottom:28px}
.base-copy p:not(.eyebrow){color:#c4c7bf}
.base-copy .base-emphasis{font:600 clamp(1.7rem,2.5vw,2.4rem)/1.15 var(--display);text-transform:uppercase;color:var(--gold)!important;margin-block:25px}
.base-problem-photo{max-width:450px;justify-self:center}
.base-problem-photo img{max-height:620px;object-fit:cover;object-position:center 30%}
.base-brand-photo{padding:30px;background:#f4f4ef;max-width:430px;justify-self:center}
.base-brand-photo img{height:auto;object-fit:contain}
.base-system-intro{display:grid;grid-template-columns:240px 1fr;gap:68px;align-items:center}
.base-symbol{text-align:center;display:grid;justify-items:center;gap:24px}
.base-symbol img:first-child{width:140px;height:140px;object-fit:contain}
.base-symbol img:last-child{width:230px;height:auto}
.base-principle{font:600 clamp(2rem,4vw,3.5rem)/1.1 var(--display);text-transform:uppercase;text-align:center;max-width:970px;padding-top:44px;margin:44px auto 0;border-top:1px solid var(--line)}
.base-principle span{color:var(--gold)}
.base-wide{width:calc(100% - 2 * clamp(20px,3vw,48px));max-width:none;margin-inline:auto;overflow-wrap:break-word}
#metodologia>.base-heading{margin-bottom:clamp(20px,2vw,28px);text-align:center}
.base-system-section{padding-bottom:clamp(20px,2.5vw,36px)}
.base-pillars-section{padding-top:clamp(20px,2.5vw,36px)}
.base-pillars,.base-program{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.base-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:30px;position:relative}
.base-card .base-number{font:600 2.8rem/1 var(--display);color:var(--gold);display:block;margin-bottom:24px}
.base-card h3{font-size:1.8rem;margin-bottom:16px;line-height:1.15}
.base-card p,.base-card li{color:#c4c7bf}
.base-card ul{padding-left:20px;margin:0}
.base-card li+li{margin-top:9px}
.base-card li::marker{color:var(--gold)}
.base-center-cta{margin-top:38px}
.base-pillars-section>.base-center-cta{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}
.base-pillars-section>.base-center-cta .button{max-width:100%;justify-content:center}
.base-center-cta p{font-size:.875rem;color:var(--muted);margin-top:12px}
.base-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.base-comparison article{--comparison-accent:#e1a29c;padding:32px;border:1px solid #8a514966;border-top:3px solid #985b5266;border-radius:14px;background:linear-gradient(145deg,#322222,#251d1d);box-shadow:0 18px 30px -22px #000c,inset 0 1px 0 #ffffff08}
.base-comparison article:last-child{--comparison-accent:#a5d6b5;border-color:#54866870;border-top-color:#75ac8977;background:linear-gradient(145deg,#21372a,#19281f)}
.base-comparison h3{color:var(--comparison-accent);margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid #ffffff14}
.base-comparison ul{list-style:none;padding:0;color:#e0e1da;margin:0}
.base-comparison li{position:relative;padding-left:24px;line-height:1.65}
.base-comparison li::before{content:'−';position:absolute;left:0;color:var(--comparison-accent);font-weight:600}
.base-comparison article:last-child li::before{content:'✓'}
.base-comparison li+li{margin-top:18px}
.base-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:var(--gold) #30342b;padding:6px 0 28px;scroll-behavior:smooth}
.base-gallery:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
.base-gallery figure{margin:0;scroll-snap-align:start;min-width:0}
.base-gallery-controls{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px;color:var(--muted);font-size:.875rem}
.base-gallery-controls>div{display:flex;gap:10px}
.base-gallery-controls button{width:48px;height:48px;border:1px solid var(--line)!important;border-radius:50%;color:var(--gold);font-size:1.4rem}
.base-gallery-controls button:hover{background:#cdac221a}
.base-gallery a{display:block;transition:transform .2s}
.base-gallery a:hover{transform:translateY(-3px)}
.base-gallery img{width:100%;aspect-ratio:3/4;object-fit:contain;background:#0a0b09}
.base-gallery figcaption{font-size:.875rem;color:var(--muted);margin-top:12px}
.base-includes{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}
.base-includes ul{list-style:none;margin:0;padding:0}
.base-includes li{padding:18px 0;border-bottom:1px solid var(--line);color:#c4c7bf}
.base-includes strong{display:block;color:var(--text);font:600 1.5rem/1.2 var(--display);text-transform:uppercase;margin-bottom:8px}
.base-shirt{max-width:420px;justify-self:center;background:#141613}
.base-shirt img{object-fit:contain;aspect-ratio:1}
.base-teacher{grid-template-columns:.8fr 1.2fr}
.base-teacher figure{max-width:430px;justify-self:center;background:radial-gradient(ellipse at top,#3e4435,#151713 80%)}
.base-teacher img{object-fit:contain;max-height:590px}
.base-teacher .base-title{color:var(--gold)!important;font-size:1.125rem;margin-bottom:22px}
.base-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.base-reviews figure{break-inside:avoid;margin:0 0 24px;background:#fff}
.base-reviews img{width:100%;height:auto}
.base-reviews a{display:block}
.base-cities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.base-agenda-intro{color:var(--muted);margin:-16px 0 32px}
.base-city{display:flex;flex-direction:column;min-width:0;border-radius:14px;border:1px solid #ffffff26;overflow:hidden;background:#1c201a;box-shadow:0 15px 25px -14px #000c}
.base-city-media{position:relative;width:100%;aspect-ratio:16/10;flex-shrink:0;overflow:hidden;background:#272c24;border-bottom:1px solid #ffffff14}
.base-city-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.base-city-body{padding:25px;display:flex;flex-direction:column;flex:1;align-items:stretch}
.base-city h3{font-size:1.95rem;line-height:1.12;overflow-wrap:break-word}
.base-city .base-date{color:var(--gold);font-size:1.125rem;font-weight:600;line-height:1.5;margin-top:8px}
.base-city .base-city-course{font-size:.875rem;color:var(--muted);margin-top:22px;margin-bottom:24px}
.base-city .button{width:100%;min-height:60px;margin-top:auto;justify-content:center;padding:14px 12px;gap:10px;letter-spacing:0;font-size:.8rem;white-space:normal}
.base-city[hidden]{display:none}
.base-city-waitlist{position:relative;isolation:isolate;border-color:#cdac2266;background:linear-gradient(145deg,#20251b,#151913)}
.base-city-waitlist::before{content:"";position:absolute;inset:28px 18px 86px;background:url("assets/brasil-novas-cidades.svg") center/contain no-repeat;opacity:.22;pointer-events:none;z-index:0}
.base-city-waitlist .base-city-body{position:relative;z-index:1;justify-content:flex-start;padding:25px}
.base-city-waitlist .eyebrow{color:var(--gold);margin:0 0 20px}
.base-city-waitlist h3{margin:0 0 20px;text-shadow:0 2px 8px #101410}
.base-city-waitlist .base-waitlist-copy{font-size:1rem;line-height:1.75;color:#e5e8df;margin:0 0 28px;text-shadow:0 1px 5px #101410}
.base-city-waitlist .button{margin-top:auto}
.base-faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}
.base-faq-grid .base-heading{position:sticky;top:120px}
.base-faq details{border-bottom:1px solid var(--line)}
.base-faq details:first-child{border-top:1px solid var(--line)}
.base-faq summary{cursor:pointer;list-style:none;padding:24px 36px 24px 0;position:relative;font-weight:600;font-size:1rem;line-height:1.6}
.base-faq summary::-webkit-details-marker{display:none}
.base-faq summary::after{content:'+';position:absolute;right:6px;top:24px;color:var(--gold);font-size:1.5rem;line-height:1}
.base-faq details[open] summary::after{content:'−'}
.base-faq-answer{padding:0 25px 25px 0;color:#c4c7bf}
.base-faq-answer a{color:var(--gold);text-decoration:underline}
.base-end{border-top:1px solid var(--line);padding-block:50px;display:flex;align-items:center;justify-content:center}
.base-end .base-center-cta{margin:0;max-width:100%;text-align:center}
.base-end .button{max-width:100%;white-space:normal;justify-content:center}
.base-closing{padding-bottom:clamp(28px,4vw,48px)}
.base-closing .base-principle{margin-top:0;padding-top:0;border-top:0}
@media(max-width:1000px){.base-hero{gap:32px}.base-split{gap:36px}.base-cities{grid-template-columns:repeat(2,minmax(0,1fr))}.base-gallery{gap:18px}.base-system-intro{grid-template-columns:190px 1fr;gap:40px}.base-includes{gap:36px}.base-faq-grid{grid-template-columns:.8fr 1.2fr;gap:35px}}
@media(max-width:800px){.base-hero{grid-template-columns:1fr;padding-top:36px;gap:36px}.base-hero h1{max-width:680px}.base-hero-photo{max-width:420px}.base-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.base-stats div:nth-child(3){border-left:0;padding-left:0}.base-split,.base-includes,.base-teacher{grid-template-columns:1fr;gap:36px}.base-problem-photo{max-width:390px}.base-problem-photo img{max-height:480px}.base-gallery{grid-auto-columns:calc((100% - 18px)/2)}.base-brand-photo{width:100%}.base-system-intro{grid-template-columns:1fr;gap:34px}.base-symbol{display:flex;justify-content:flex-start}.base-symbol img:first-child{width:70px;height:70px}.base-symbol img:last-child{width:210px}.base-shirt{max-width:340px}.base-teacher figure{width:100%;max-width:390px}.base-faq-grid{grid-template-columns:1fr;gap:0}.base-faq-grid .base-heading{position:static}}
@media(max-width:560px){.base-hero h1{font-size:clamp(2.6rem,10.3vw,3.6rem)}.base-intro{font-size:1.0625rem}.base-stats div{padding-left:18px}.base-stats strong{font-size:2.2rem}.base-stats span{font-size:.875rem}.base-pillars,.base-program,.base-comparison,.base-cities{grid-template-columns:1fr}.base-card{padding:26px}.base-gallery{gap:22px;grid-auto-columns:88%}.base-gallery img{aspect-ratio:auto;max-height:610px}.base-gallery figcaption{margin-top:10px}.base-reviews{grid-template-columns:1fr;max-width:380px;margin-inline:auto}.base-city h3{font-size:2rem;min-height:0}.base-city .base-date{min-height:0}.base-comparison article{padding:26px}.base-city .button{min-height:60px;font-size:.875rem}.base-actions{align-items:stretch}.base-actions .button{justify-content:center}.base-faq summary{padding-block:22px}.base-section h2{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){.base-gallery{scroll-behavior:auto}.base-gallery a{transition:none}.base-gallery a:hover{transform:none}}

.base-photo-credit{font-size:.75rem;line-height:1.5;color:var(--muted);margin:12px 0 0}
.base-photo-credit a{text-decoration:underline;text-underline-offset:2px}
