/* Reconstructed from analysis/protoken-v4/reference-desktop.png, 1536 x 1024. */
.header { width:100%; max-width:none; margin:0; top:0; border:0; border-radius:0; min-height:112px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 4.166667%; border-bottom:1px solid var(--line); background:var(--ink); }
.header .brand { display:block; position:relative; overflow:hidden; flex-shrink:0; width:278px; height:54px; }
.header .brand img { position:absolute; width:397px; height:397px; max-width:none; left:-67px; top:-175px; }
nav { position:absolute; left:50%; transform:translateX(-50%); width:446px; justify-content:space-between; display:flex; gap:24px; border:1px solid var(--line-strong); border-radius:999px; padding:16px 36px; font-size:14px; }
nav a { position:relative; padding:0; }
nav a::after { width:auto; content:''; position:absolute; left:0; right:100%; bottom:-5px; height:1px; background:var(--accent); transition:right .3s var(--ease-control); }
nav a:hover::after { width:auto; right:0; }
.header-cta { border:0; padding:14px 32px; background:var(--action); border-radius:999px; font-size:18px; font-weight:600; transition:background .2s; }
.header-cta:hover,.hero .button:hover { background:var(--action-hover); }
.hero.wrap,.promise>.wrap { width:calc(100% - 128px); max-width:1440px; margin-inline:auto; }
.hero { display:block; min-height:0; height:742px; padding:0; position:relative; padding-top:88px; isolation:isolate; }
.hero-copy { text-align:left; position:relative; z-index:1; width:63%; max-width:885px; }
.hero .eyebrow::before { display:none; }
.hero .eyebrow { padding:0; display:block; color:var(--accent); font-size:15px; line-height:1.4; font-weight:600; letter-spacing:2px; margin-bottom:18px; text-transform:uppercase; }
.hero h1 { font-size:clamp(48px,4.49vw,69px); line-height:1.01; letter-spacing:-2.6px; font-weight:700; }
.hero h1 em { display:block; color:var(--muted); font-style:normal; font-weight:700; }
.hero-description { color:var(--white); font-size:22px; line-height:1.45; max-width:760px; margin-top:28px; }
.hero .button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:6px 6px 6px 38px; min-height:76px; border-radius:999px; background:var(--action); color:var(--white); font-size:21px; font-weight:600; margin-top:38px; transition:background .2s,transform .16s var(--ease-control); }
.hero .button>span { background:var(--white); display:grid; place-items:center; width:64px; height:64px; border-radius:50%; flex-shrink:0; color:var(--ink); font-size:34px; font-weight:400; transition:transform .3s var(--ease-control); }
.hero .button:hover>span { background:var(--white); transform:rotate(45deg); }
.hero-note { max-width:745px; font-size:16px; line-height:1.5; color:var(--muted); margin-top:24px; }
.hero-portrait { display:block; height:auto; margin:0; position:absolute; top:0; bottom:0; right:-34px; width:46.5%; overflow:hidden; z-index:0; }
.hero-portrait img { transform:none; display:block; width:100%; height:auto; max-width:none; }
.promise { border:0; background:var(--paper); color:var(--ink); }
.promise>.wrap { display:grid; grid-template-columns:1fr 1fr 1fr; gap:0; padding:34px 0 44px; min-height:170px; counter-reset:promises; }
.promise span { display:block; max-width:none; text-align:left; padding:0 32px; font-size:32px; line-height:1.3; font-weight:600; letter-spacing:-1.2px; }
.promise span+span { border-left:1px solid var(--dark-line); padding-left:80px; }
.promise span::before { counter-increment:promises; content:'0' counter(promises); display:block; color:var(--accent-on-light); font-size:18px; font-weight:600; line-height:1.5; letter-spacing:0; margin-bottom:5px; }
@media(max-width:1200px) {
 .header { min-height:94px; padding:22px 40px; }
 .header .brand { width:210px; height:42px; } .header .brand img { width:300px; height:300px; left:-51px; top:-132px; }
 nav { width:auto; gap:24px; padding:13px 24px; font-size:12px; } .header-cta { font-size:14px; padding:13px 24px; }
 .hero.wrap,.promise>.wrap { width:calc(100% - 80px); } .hero { height:710px; padding-top:75px; } .hero-copy { width:62%; }
 .hero h1 { font-size:48px; letter-spacing:-2px; } .hero h1 br { display:none; } .hero .eyebrow { font-size:11px; letter-spacing:1.5px; }
 .hero-description { color:var(--white); font-size:18px; max-width:530px; } .hero-note { font-size:12px; max-width:520px; }
 .hero-portrait { width:44%; top:65px; right:-25px; } .hero-portrait img { min-height:100%; width:100%; object-fit:cover; object-position:top; }
 .hero .button { min-height:60px; font-size:15px; padding-left:26px; margin-top:28px; } .hero .button>span { width:46px; height:46px; font-size:28px; }
 .promise>.wrap { min-height:132px; padding:30px 0; } .promise span,.promise span+span { font-size:23px; padding:0 24px; } .promise span::before { font-size:13px; }
}
@media(max-width:900px) { nav { display:none; } .hero { height:740px; } .hero h1 { font-size:43px; } .hero-description { color:var(--white); font-size:17px; } .hero-portrait { width:43%; top:170px; } .promise span { font-size:20px; } }
@media(max-width:767px) {
 .header { min-height:82px; padding:20px; gap:12px; } .header .brand { width:150px; height:30px; } .header .brand img { width:213px; height:213px; left:-36px; top:-94px; } .header-cta { font-size:11px; padding:11px 15px; }
 .hero.wrap,.promise>.wrap { width:calc(100% - 40px); } .hero { height:auto; padding-top:48px; } .hero-copy { width:100%; max-width:540px; margin:auto; }
 .hero .eyebrow { font-size:9px; letter-spacing:1px; margin-bottom:22px; } .hero h1 { font-size:38px; letter-spacing:-1.5px; line-height:1.08; } .hero h1 em { margin-top:8px; }
 .hero-description { color:var(--white); font-size:16px; line-height:1.7; margin-top:25px; } .hero .button { font-size:13px; min-height:58px; gap:18px; padding:5px 5px 5px 22px; margin-top:26px; } .hero .button>span { width:46px; height:46px; font-size:28px; }
 .hero-note { font-size:11px; margin-top:19px; } .hero-portrait { position:relative; top:auto; right:auto; width:100%; max-width:390px; height:350px; margin:30px auto 0; } .hero-portrait img { width:100%; height:auto; min-height:0; }
 .promise>.wrap { display:block; padding:26px 0; } .promise span { display:flex; align-items:baseline; gap:20px; font-size:22px; padding:18px 0; border:0; } .promise span+span { border-left:0; border-top:1px solid var(--dark-line); padding-left:0; } .promise span::before { font-size:12px; margin:0; letter-spacing:0; }
}
@media(max-width:360px) { .header { padding-inline:16px; } .header .brand { width:125px; height:26px; } .header .brand img { width:179px; height:179px; left:-30px; top:-79px; } .header-cta { font-size:10px; padding:11px 13px; } .hero h1 { font-size:33px; } .hero .eyebrow { font-size:8px; } .hero .button { gap:12px; font-size:11px; padding-left:18px; } .hero-portrait { height:310px; } }
@media(prefers-reduced-motion:reduce) { * { transition:none!important; scroll-behavior:auto!important; } }

/* Current portrait and two-field capture, scoped to the LP. */
.hero-portrait { top:70px; bottom:auto; right:0; width:34%; height:auto; aspect-ratio:1054/1493; border-radius:14px; }
.hero-portrait img { width:100%; height:100%; object-fit:cover; object-position:center 12%; }
.icon { width:1em; height:1em; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.carousel-controls button { display:grid; place-items:center; }
.team-photo { height:auto; max-height:none; aspect-ratio:3/4; object-position:center 12%; border-radius:14px; margin-bottom:24px; }
.founder--rodrigo .team-photo { object-position:center 18%; }
.capture { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; padding-block:48px 60px; border-top:1px solid var(--line); }
.capture h2 { font-size:36px; font-weight:500; line-height:1.2; letter-spacing:-1px; margin-bottom:18px; }
.capture p { color:var(--muted); font-size:15px; }
.capture-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.capture label { display:block; font-size:13px; line-height:1.6; }
.capture input:not([type=checkbox]) { width:100%; display:block; min-height:50px; margin-top:8px; padding:13px 15px; border:1px solid var(--control-line); border-radius:10px; color:var(--white); background:var(--surface); font:400 16px/1.5 Manrope,sans-serif; }
.capture .consent { display:flex; align-items:flex-start; gap:10px; margin:20px 0; font-size:12px; color:var(--muted); }
.capture .consent input { width:18px; height:18px; margin:2px 0 0; flex-shrink:0; accent-color:var(--action); }
.capture .button { width:100%; }
.capture .button:disabled { opacity:.65; cursor:wait; }
.capture .trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#capture-error { color:var(--error); }
#capture-status:not(:empty),#capture-error:not(:empty) { margin-top:15px; }
#capture-whatsapp { display:inline-flex; margin-top:16px; }
@media(max-width:900px) { .capture { gap:32px; } .capture-fields { grid-template-columns:1fr; gap:16px; } .capture h2 { font-size:30px; } }
@media(max-width:767px) { .hero-portrait { top:auto; bottom:auto; right:auto; width:100%; height:auto; margin-bottom:35px; } .hero-portrait img { height:auto; aspect-ratio:3/4; object-fit:cover; } .capture { grid-template-columns:1fr; gap:26px; padding-block:38px 45px; } }
