/* FESN / Próximo — v1.0. Original semantic tokens. */
:root {
 --canvas:#F7F8FC; --surface:#FFFFFF; --surface-alt:#EDF0F8; --warm:#FFF1DA;
 --primary:#313177; --primary-hover:#25255F; --dark:#171C41; --ink:#1A2049;
 --muted:#59627C; --inverse:#FFFFFF; --inverse-muted:#E1E4F5;
 --accent:#FFC400; --orange:#FF8A3D; --border:#DCE0EC; --focus:#235CC8;
 --success:#176047; --warning:#84540B; --danger:#A12D38;
 --font:'Manrope','Segoe UI',system-ui,sans-serif;
 --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px;
 --space-6:24px; --space-8:32px; --space-10:40px; --space-12:48px; --space-16:64px;
 --gutter:20px; --container:1184px; --hub:420px; --section:88px;
 --radius-sm:10px; --radius-md:16px; --radius-banner:22px; --radius-lg:32px; --radius-pill:999px;
 --shadow-sm:0 4px 14px #171C410A; --shadow-banner:0 12px 28px -12px #171C4140;
 --shadow-hover:0 20px 34px -16px #171C4166;
 --fast:150ms; --standard:220ms; --expressive:300ms; --ease:cubic-bezier(.2,.7,.2,1);
 --type-display:clamp(40px,5.8vw,76px); --type-h1:28px; --type-h2:24px; --type-h3:20px;
 --type-body:16px; --type-sm:14px; --type-caption:12px;
}

@font-face{font-family:Manrope;src:url('fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--canvas);font-family:var(--font);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;display:block}img{height:auto}a{-webkit-tap-highlight-color:transparent;color:inherit}h1,h2,p{margin:0}h1,h2{line-height:1.12;letter-spacing:-.045em}::selection{background:var(--accent);color:var(--ink)}a:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.skip{position:fixed;left:16px;top:-100px;z-index:20;padding:12px 18px;border-radius:12px;background:white;min-height:44px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* One campaign banner: link + real text + isolated scene. */
.journey{position:relative;display:block;isolation:isolate;overflow:hidden;min-height:140px;border-radius:var(--radius-banner);padding:20px;background:var(--primary);color:white;text-decoration:none;box-shadow:var(--shadow-banner);border:1px solid transparent}
.journey::before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 105% 30%,#6363B7 0,transparent 65%)}
.journey::after{content:'';position:absolute;right:-55px;top:-60px;width:235px;height:235px;border:1px solid #FFFFFF26;border-radius:50%;z-index:-1}
.journey-copy{position:relative;z-index:3;display:block;width:64%;max-width:290px}.journey-title{display:block;font-size:20px;font-weight:800;line-height:1.1;letter-spacing:-.04em;max-width:205px}.journey-desc{display:block;font-size:12px;line-height:1.45;margin-top:8px;max-width:24ch;color:var(--inverse-muted)}.journey-cta{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;margin-top:12px}.journey-cta svg{width:16px;height:16px;stroke:currentColor}.scene{position:absolute;z-index:1;inset:0 0 0 60%;pointer-events:none}.scene img{position:absolute;max-width:none}.scene .dne{width:170px;right:-25px;top:30px;transform:rotate(-13deg);filter:drop-shadow(0 12px 9px #080B3533)}.scene .orbit{width:230px;right:-55px;top:-50px;opacity:.9}.journey-dne .journey-cta{color:var(--accent)}
.journey-quiz{color:var(--ink);background:var(--warm);border-color:#F0DBB8}.journey-quiz::before{background:radial-gradient(ellipse at 100% 70%,#F8CB88,transparent 65%)}.journey-quiz::after{border-color:#C2792526}.journey-quiz .journey-desc{color:#4C536B}.scene .consulta{width:154px;right:-15px;top:0;transform:rotate(5deg)}
.journey-benefits{background:var(--dark)}.journey-benefits::before{background:radial-gradient(ellipse at 120% 80%,#414D92,transparent 70%)}.journey-benefits .journey-copy{width:63%}.journey-benefits .journey-desc{max-width:23ch}.clube-logo{width:96px;height:auto!important;margin-bottom:9px}.scene .phone{width:95px;right:16px;top:25px;transform:rotate(12deg);filter:drop-shadow(0 10px 8px #0004)}.scene .ticket{width:95px;right:38px;top:-21px;transform:rotate(-17deg)}

.journey{container-type:inline-size}.journey:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.journey:active{transform:scale(.985);box-shadow:var(--shadow-sm)}.journey-benefits{padding-top:16px;padding-bottom:16px}.journey-benefits .clube-logo{margin-bottom:6px}.journey-benefits .journey-cta{margin-top:9px}@container(max-width:240px){.journey-copy{width:100%!important}.journey-title,.journey-desc{overflow-wrap:anywhere}.scene{opacity:.12}}


.ambient{background:radial-gradient(ellipse at 86% 8%,#FCE9C6 0,transparent 38%),radial-gradient(ellipse at 5% 94%,#E4E8FC 0,transparent 45%),var(--canvas)}
.hub-shell{width:min(calc(100% - 40px),420px);margin:auto;padding:28px 0 max(24px,env(safe-area-inset-bottom));min-height:100svh}
.hub-brand{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hub-brand img{width:106px}.hub-brand p{font-size:10px;color:var(--muted);line-height:1.4;border-left:1px solid var(--border);padding-left:14px;max-width:155px}.hub-intro{margin:28px 0 24px}.hub-intro h1{font-size:28px;letter-spacing:-.05em;line-height:1.1;max-width:12ch}.hub-intro p{font-size:13px;color:var(--muted);margin-top:10px}.hub-options{display:grid;gap:12px}.hub-options .journey-benefits{min-height:152px}.hub-footer{font-size:10px;color:var(--muted);text-align:center;margin-top:20px}.hub-footer p{margin:0}
@media(min-width:768px){.hub-shell{width:min(calc(100% - 96px),960px);display:grid;grid-template-columns:1fr 1.2fr;gap:28px 48px;align-items:center;align-content:center;padding-top:48px;padding-bottom:48px}.hub-context{grid-column:1;grid-row:1}.hub-brand{margin-bottom:48px}.hub-intro{margin:0}.hub-intro h1{font-size:44px;max-width:11ch}.hub-intro p{font-size:15px;max-width:27ch}.hub-options{grid-column:2;grid-row:1/3;gap:16px}.hub-options .journey{min-height:152px;padding:24px}.journey-title{font-size:22px}.hub-footer{grid-column:1;grid-row:2;align-self:start;text-align:left;margin:0}.scene .dne{right:-10px;top:40px;width:190px}.scene .consulta{right:0;width:170px}.scene .phone{right:25px;width:105px}.scene .ticket{right:55px}}
@media(max-width:359px){.hub-shell{width:calc(100% - 32px)}.journey{padding:16px;min-height:145px}.journey-title{font-size:18px}.journey-copy{width:65%}.journey-desc{max-width:20ch}.scene .dne{width:132px;right:-26px;top:40px}.scene .consulta{width:130px;right:-21px;top:12px}.scene .phone{width:81px;right:7px;top:35px}.scene .ticket{width:75px;right:30px;top:-12px}.hub-brand p{font-size:9px}.hub-intro h1{font-size:26px}.hub-options .journey-benefits{min-height:154px}}
@media(min-width:360px) and (max-width:430px){.journey-title{font-size:20px}.journey-dne .journey-copy,.journey-quiz .journey-copy{width:65%}.scene .dne{width:147px;right:-24px;top:38px}.scene .consulta{width:146px;right:-22px;top:7px}.scene .phone{right:7px;width:90px}.scene .ticket{right:35px;width:83px}}
@media(min-width:768px) and (max-width:900px){.scene .dne{width:145px;right:-19px;top:48px}.scene .consulta{width:140px;right:-12px;top:16px}.scene .phone{width:90px;right:6px;top:40px}.scene .ticket{width:78px;right:30px;top:-12px}}

.journey,.arrow-circle{transition:transform var(--standard) var(--ease),box-shadow var(--standard) var(--ease),background-color var(--fast)}.journey-cta svg{transition:transform var(--standard) var(--ease)}@media(hover:hover) and (pointer:fine){.journey:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.journey:hover .journey-cta svg{transform:translateX(3px)}.arrow-circle:hover{transform:translateX(2px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.journey:hover,.journey:active,.journey.is-hover,.journey.is-pressed{transform:none!important}}
