:root{--deep:#1c3d2e;--deep2:#2b573f;--main:#297357;--mint:#9ed9bf;--mintl:#ccebdb;--tint:#eaf6f0;--white:#fff;--paper:#f7f5eb;--ink:#1f382b;--coral:#e87a5c;--r:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,system-ui,sans-serif;color:var(--ink);background:var(--white);line-height:1.55;}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
em{font-style:normal;font-weight:800;color:var(--main)}
.hero,.fim{background:linear-gradient(180deg,var(--main),var(--deep));color:var(--paper);position:relative;overflow:hidden}
.hero:before,.fim:before{content:"";position:absolute;width:900px;height:900px;border-radius:50%;background:var(--mint);opacity:.09;right:-300px;top:-300px}
.hero .wrap,.fim .wrap{position:relative;padding-top:72px;padding-bottom:72px}
.hero em,.fim em{color:var(--mint)}
.marca{font-weight:800;letter-spacing:.3em;font-size:13px;color:var(--mint);margin:0 0 28px}
h1{font-size:clamp(26px,7.2vw,76px);line-height:1.12;font-weight:500;margin:0 0 24px}
h1 span{display:block;white-space:nowrap}
h2{font-size:clamp(28px,4.4vw,48px);line-height:1.15;font-weight:500;margin:0 0 16px;max-width:20ch}
.lead{font-size:clamp(17px,2.2vw,22px);max-width:36em;margin:0 0 28px}
.passos{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.passos li{background:rgba(255,255,255,.08);border:1px solid rgba(158,217,191,.3);border-radius:20px;padding:16px 18px;font-weight:600}
.passos b{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--mint);color:var(--deep);margin-right:10px}
.btn{display:inline-block;border:0;cursor:pointer;font:700 17px Manrope,sans-serif;padding:16px 30px;border-radius:999px;text-decoration:none;transition:transform .15s,opacity .15s}
.btn:hover{transform:translateY(-2px)}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.btn-coral{background:var(--coral);color:var(--paper)}.btn-claro{background:var(--paper);color:var(--deep)}
.sec{padding:80px 0}.sec-tint{background:var(--tint)}
.tag{font-weight:800;letter-spacing:.2em;font-size:13px;color:var(--coral);margin:0 0 12px}
.sub{font-size:19px;max-width:40em;margin:0 0 36px}
.perfil{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px;align-items:start}
.lista{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.lista li{position:relative;padding-left:30px;font-weight:600}
.lista li:before{content:"";position:absolute;left:0;top:8px;width:14px;height:14px;border-radius:50%;background:var(--main)}
figure{margin:0;position:relative}
figure img{width:100%;border-radius:28px;box-shadow:0 16px 40px rgba(28,61,46,.22);display:block;background:var(--mintl)}
.chip{display:inline-block;font-weight:800;letter-spacing:.15em;font-size:12px;padding:8px 18px;border-radius:999px;color:var(--paper);margin-bottom:14px}
.chip-escuro{background:var(--ink)}.chip-coral{background:var(--coral)}
.ph{display:grid;place-items:center;text-align:center;background:var(--mintl);color:var(--main);font-weight:700;border-radius:20px;min-height:260px;padding:16px;aspect-ratio:4/5}
.estilo{background:var(--white);border-radius:var(--r);padding:28px;margin-bottom:28px;border:3px solid transparent;box-shadow:0 8px 30px rgba(28,61,46,.08);transition:border-color .2s}
.estilo.on{border-color:var(--main)}
.estilo-top{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;margin-bottom:18px}
.estilo h3{margin:0;font-size:26px;font-weight:800}.estilo p{margin:4px 0 0;max-width:34em}
.estilo .n{font-weight:800;letter-spacing:.2em;font-size:12px;color:var(--coral)}
.escolher{display:flex;align-items:center;gap:12px;background:var(--tint);border:2px solid var(--main);color:var(--deep);padding:12px 22px;border-radius:999px;font:700 16px Manrope,sans-serif;cursor:pointer}
.escolher i{width:24px;height:24px;border-radius:8px;border:3px solid var(--main);display:inline-grid;place-items:center;font-style:normal;color:#fff;font-size:15px}
.estilo.on .escolher{background:var(--main);color:var(--paper)}.estilo.on .escolher i{background:var(--coral);border-color:var(--coral)}
.escolher[disabled]{opacity:.4;cursor:not-allowed}
.tira{display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x proximity}
.tira img,.tira .ph{flex:0 0 230px;width:230px;border-radius:20px;scroll-snap-align:start;box-shadow:0 8px 22px rgba(28,61,46,.18);background:var(--mintl);aspect-ratio:4/5}
.abas{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.aba{border:2px solid var(--main);background:var(--white);color:var(--main);font:700 16px Manrope,sans-serif;padding:10px 20px;border-radius:999px;cursor:pointer}
.aba.on{background:var(--main);color:var(--paper)}
.fmt{display:inline-block;font-weight:800;letter-spacing:.12em;font-size:12px;padding:7px 16px;border-radius:999px;color:var(--paper);margin-bottom:14px}
.fmt.reels{background:var(--coral)}.fmt.caixinha{background:var(--main)}
.roteiro-sub{font-size:18px;margin:0 0 22px;max-width:42em}
.ideias{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.ideia{background:var(--tint);border-radius:var(--r);padding:26px}
.ideia .id{display:inline-block;background:var(--main);color:var(--paper);font-weight:800;letter-spacing:.14em;font-size:12px;padding:6px 14px;border-radius:999px;margin-bottom:12px}
.ideia h4{font-size:22px;line-height:1.25;margin:0 0 14px;font-weight:800}
.ideia dt{font-weight:800;letter-spacing:.12em;font-size:11px;color:var(--coral);margin-top:14px}
.ideia dd{margin:4px 0 0;font-size:16px}.ideia dd.b{font-weight:700}
.dicas{margin-top:44px;background:var(--deep);color:var(--paper);border-radius:var(--r);padding:30px}
.dicas h3{margin:0 0 12px;font-size:24px;color:var(--mint)}.dicas ul{margin:0;padding-left:20px;display:grid;gap:10px}
.fim .botoes{display:flex;flex-wrap:wrap;gap:14px}.mini{margin:34px 0 0;color:var(--mint);font-weight:600}
.rodape{text-align:center;font-size:13px;color:var(--main);padding:26px 20px 10px;font-weight:600}
.ok{position:fixed;inset:0;background:rgba(10,30,20,.7);z-index:100;display:grid;place-items:center;padding:20px}
.ok[hidden]{display:none}.ok-box{background:var(--white);border-radius:32px;padding:36px;max-width:460px;text-align:center}
.ok-box h3{margin:0 0 10px;font-size:28px;color:var(--main)}
@media(max-width:820px){.perfil{grid-template-columns:1fr 1fr}.lista{grid-column:1/-1}.sec{padding:56px 0}.btn{text-align:center}.tira img,.tira .ph{flex-basis:190px;width:190px}}

.chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:10px 0 22px;min-height:8px}
.chips span{background:rgba(158,217,191,.22);border:1px solid var(--mint);border-radius:999px;padding:4px 14px;font-size:14px;font-weight:700;animation:pop .35s ease}
.escolha{background:linear-gradient(180deg,var(--main),var(--deep));color:var(--paper);border-radius:36px;padding:44px 28px;text-align:center;margin-top:10px;position:relative;overflow:hidden}
.escolha h3{font-size:clamp(24px,4vw,38px);line-height:1.2;font-weight:500;margin:0 auto 12px;max-width:20em}
.escolha-sub{max-width:34em;margin:0 auto 22px}.escolha strong{font-size:18px;color:var(--mint)}
.tag-mint{color:var(--mint)}
.prog{position:fixed;top:0;left:0;height:4px;width:100%;background:var(--coral);transform-origin:0 50%;transform:scaleX(0);z-index:60}
/* animações */
@keyframes up{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@keyframes float{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,40px)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(232,122,92,.55)}70%{box-shadow:0 0 0 18px rgba(232,122,92,0)}100%{box-shadow:0 0 0 0 rgba(232,122,92,0)}}
@keyframes shine{from{background-position:-200% 0}to{background-position:200% 0}}
.hero:before{animation:float 14s ease-in-out infinite}
.fim:before{animation:float 16s ease-in-out infinite reverse}
.anim{opacity:0;animation:up .9s cubic-bezier(.2,.7,.2,1) forwards}
.a1{animation-delay:.05s}.a3{animation-delay:.55s}.a4{animation-delay:.75s}.a5{animation-delay:.95s}
.h1-2 span{opacity:0;animation:up .9s cubic-bezier(.2,.7,.2,1) forwards}.h1-2 span:nth-child(1){animation-delay:.2s}.h1-2 span:nth-child(2){animation-delay:.38s}
.pulse{animation:up .9s cubic-bezier(.2,.7,.2,1) .75s forwards,pulse 2.4s ease-out 1.8s infinite}
[data-r]{opacity:0;transform:translateY(44px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s);will-change:transform,opacity}
[data-r=left]{transform:translateX(-50px)}[data-r=right]{transform:translateX(50px)}[data-r=zoom]{transform:scale(.92) translateY(20px)}
[data-r].in{opacity:1;transform:none}
[data-r]:not(.in){transition-duration:.45s;transition-delay:0s}
.estilo.on{animation:pop .4s ease}
.escolher i{transition:transform .2s}.estilo.on .escolher i{transform:scale(1.15)}
.btn-coral:not(.pulse):not([disabled]){background-image:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);background-size:200% 100%;animation:shine 3.5s linear infinite}
.tira img,.tira .ph{transition:transform .3s}.tira img:hover{transform:translateY(-6px) rotate(-1deg)}
/* roteiros em sequência */
.dest{margin-bottom:64px}
.dest-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:14px 0;border-bottom:2px solid var(--mintl);margin-bottom:22px}
.dest-n{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--main);color:var(--paper);font-weight:800;font-size:20px;flex:none}
.dest-head h3{margin:0;font-size:clamp(24px,4vw,34px);font-weight:800;line-height:1.1}
.dest-head .fmt{margin:0 0 0 auto}
.dest-prog{font-size:13px;font-weight:700;color:var(--main);letter-spacing:.1em;width:100%}
.ideia{transition:transform .3s,box-shadow .3s}.ideia:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(28,61,46,.14)}
@media(max-width:820px){
 .perfil{grid-template-columns:1fr;gap:34px}.lista{grid-column:auto}
 figure img{width:100%}
 .escolha{padding:34px 20px;border-radius:28px}
 .dest-head .fmt{margin-left:0}
 .sec{padding:52px 0}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}[data-r],.anim,.h1-2 span{opacity:1!important;transform:none!important}}
h1,h2,h3,h4,.sub,.lead,.roteiro-sub,.escolha-sub,.btn,.passos li,.lista li{text-wrap:balance}
p,dd,.dicas li{text-wrap:pretty}
.fmt-m{display:none}.roteiro-sub p{margin:0}
@media(max-width:820px){.dest-head{flex-wrap:nowrap;gap:12px;padding:10px 0}.dest-head .fmt{display:none}.fmt-m{display:inline-block}.dest-prog{width:auto;margin-left:auto;white-space:nowrap;font-size:12px}.dest-n{width:38px;height:38px;font-size:17px}.dest-head h3{font-size:22px}}

/* carrossel contínuo, sem animação de entrada */
.marq{overflow:hidden;border-radius:20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.track{display:flex;width:max-content;animation:marq var(--dur,30s) linear infinite}
.marq:hover .track,.marq:active .track{animation-play-state:paused}
.set{display:flex;gap:14px;padding-right:14px}
.set img,.set .ph{flex:0 0 230px;width:230px;border-radius:20px;box-shadow:0 8px 22px rgba(28,61,46,.18);background:var(--mintl);aspect-ratio:4/5;object-fit:cover}
.set img:hover{transform:none}
@keyframes marq{to{transform:translateX(-50%)}}
@media(max-width:820px){.set img,.set .ph{flex-basis:190px;width:190px}}
@media(prefers-reduced-motion:reduce){.marq{overflow-x:auto}.track{animation:none!important}}
