/* Design system do projeto Ricardo Bello (moodboard):
   azul-petróleo principal, azul-marinho de apoio, bronze em destaques, grafite/prata/branco para leitura,
   azul-gelo só em acento pontual. Títulos em serifada editorial (equivalente ao Anona), texto em sans humanista (equivalente ao The Sans).
   Layout: página única, faixas escuras e claras alternadas, grade de 12 colunas implícita, linhas finas como divisórias. */
:root{
  --pet:#082C39; --nav:#0F3B4C; --br:#B08A57; --br-ink:#7C5E2E; --graf:#1E1E1E; --prata:#C0C6CC; --gelo:#6EC1FF;
  --off:#F3F5F6; --branco:#FFFFFF; --muted:#40525B; --hair:#D5DCE0; --hair-d:rgba(176,138,87,.4);
  --serif:'Cormorant Garamond','Cambria','Georgia',serif; --sans:'Source Sans 3','Calibri','Segoe UI',Arial,sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--pet);color:var(--branco);font-family:var(--sans);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
.ic{width:1em;height:1em;flex:none}
.wrap{width:100%;max-width:1180px;margin-inline:auto;padding-inline:clamp(16px,4vw,48px)}
section{padding-block:clamp(64px,9vw,120px)}
.dark{background:var(--pet);color:var(--branco)}
.mid{background:var(--nav);color:var(--branco)}
.light{background:var(--off);color:var(--pet)}
.eb{font:700 .78rem/1.2 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--br);margin-bottom:20px}
.light .eb{color:var(--br-ink)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(3rem,7.2vw,5.6rem)}
h2{font-size:clamp(2.1rem,4.4vw,3.5rem);margin-bottom:clamp(28px,4vw,48px);max-width:20ch}
h2.wide{max-width:26ch}
h3{font-size:1.5rem;line-height:1.2}
p{max-width:62ch}
.lead{font-size:clamp(1.1rem,1.6vw,1.3rem);color:var(--prata)}
.light .lead,.light p{color:var(--muted)}
.dark p,.mid p{color:var(--prata)}
.light h2,.light h3{color:var(--pet)}
.dark h2,.dark h3,.mid h2,.mid h3{color:var(--branco)}
.i-br{color:var(--br)} .light .i-br{color:var(--br-ink)}
/* header */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(8,44,57,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--hair-d)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:600 .82rem/1.1 var(--sans);letter-spacing:.24em;color:var(--br);white-space:nowrap}
.brand img{width:38px;height:38px}
.top nav{display:flex;gap:28px}
.top nav a{font-size:.95rem;text-decoration:none;color:var(--prata);padding:6px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.top nav a:hover,.top nav a:focus-visible{color:var(--branco);border-color:var(--br)}
.btn{display:inline-flex;align-items:center;gap:10px;font:700 .95rem/1 var(--sans);letter-spacing:.04em;text-decoration:none;padding:15px 24px;border:1px solid var(--br);color:var(--pet);background:var(--br);transition:background .2s,color .2s}
.btn:hover,.btn:focus-visible{background:transparent;color:var(--br)}
.btn.ghost{background:transparent;color:var(--branco)}
.btn.ghost:hover,.btn.ghost:focus-visible{background:var(--br);color:var(--pet)}
.btn.sm{padding:11px 18px;font-size:.85rem}
:focus-visible{outline:2px solid var(--gelo);outline-offset:3px}
@media(max-width:900px){.top nav{display:none}}
/* hero */
.hero{position:relative;overflow:hidden;padding-block:clamp(40px,6vw,80px) 0}
.hero::before{content:"";position:absolute;inset:0;background:var(--rays) top right/min(760px,90vw) no-repeat;opacity:1;pointer-events:none}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,72px);align-items:end}
.hero-text{padding-bottom:clamp(40px,7vw,96px)}
.hero h1{margin-bottom:24px}
.hero h1 em{font-style:italic;color:var(--br)}
.hero .lead{margin-bottom:36px;max-width:46ch}
.cta-row{display:flex;flex-wrap:wrap;gap:14px}
.role{font:700 .78rem/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--prata);margin-top:44px}
.portrait{position:relative;align-self:end}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 12%;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24%),linear-gradient(to top,transparent 0,#000 12%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 24%),linear-gradient(to top,transparent 0,#000 0);}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.portrait{max-width:420px;margin-inline:auto}.portrait img{-webkit-mask-image:linear-gradient(to top,transparent 0,#000 0);mask-image:none}}
/* desafio */
.sinais{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(24px,5vw,72px)}
.sinal{display:flex;gap:20px;align-items:flex-start;padding-block:26px;border-top:1px solid var(--hair)}
.sinal .ic{font-size:2rem;margin-top:3px}
.sinal b{display:block;font:600 1.5rem/1.2 var(--serif);color:var(--pet);margin-bottom:4px}
.sinal span{color:var(--muted)}
.fecho{margin-top:36px;font:italic 500 1.7rem/1.3 var(--serif);color:var(--pet);max-width:34ch}
@media(max-width:760px){.sinais{grid-template-columns:1fr}}
/* proposta */
.tres{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(36px,5vw,64px)}
.tres>div{padding:8px clamp(20px,3vw,40px) 8px 0;margin-right:clamp(20px,3vw,40px);border-right:1px solid var(--hair-d)}
.tres>div:last-child{border:0;margin:0}
.tres .ic{font-size:2.2rem;margin-bottom:20px}
.tres h3{margin-bottom:10px}
@media(max-width:860px){.tres{grid-template-columns:1fr;gap:32px}.tres>div{border:0;border-bottom:1px solid var(--hair-d);padding:0 0 28px;margin:0}.tres>div:last-child{border:0}}
/* sobre */
.sobre{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,88px)}
.stat{font:500 clamp(5rem,12vw,8.5rem)/.9 var(--serif);color:var(--br-ink)}
.stat span{font-size:.38em;margin-left:.18em;letter-spacing:.02em}
.stat-l{font-size:1.2rem;color:var(--pet);margin:12px 0 28px;max-width:20ch}
.form{font-size:.95rem;color:var(--muted);border-top:1px solid var(--hair);padding-top:18px}
.form b{display:block;font:700 .78rem/1.2 var(--sans);letter-spacing:.2em;color:var(--br-ink);margin-bottom:8px}
.pts{list-style:none;display:grid;gap:22px;margin-bottom:36px}
.pts li{display:flex;gap:18px;align-items:flex-start;font-size:1.15rem;color:var(--pet);padding-bottom:22px;border-bottom:1px solid var(--hair)}
.pts .ic{font-size:1.7rem;margin-top:2px}
blockquote{font:italic 500 clamp(1.5rem,2.6vw,2rem)/1.3 var(--serif);color:var(--pet);max-width:30ch}
blockquote small{display:block;margin-top:14px;font:700 .78rem/1 var(--sans);letter-spacing:.2em;font-style:normal;color:var(--br-ink)}
@media(max-width:860px){.sobre{grid-template-columns:1fr}}
.seg-grid{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:0 clamp(16px,2vw,28px)}
.seg-grid li{display:flex;flex-direction:column;gap:14px;padding:20px 0 24px;border-top:1px solid var(--pet)}
.seg-grid .ic{width:34px;height:34px;color:var(--br-ink)}
.seg-grid span{font:500 1.2rem/1.25 var(--serif);color:var(--pet);font-size:1.28rem}
@media(max-width:980px){.seg-grid{grid-template-columns:repeat(2,1fr)}}
.seg-lead{font-size:1.15rem;color:var(--pet);max-width:52ch;margin-bottom:24px}
.tl-title{font:700 .78rem/1.2 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--br-ink);margin:clamp(48px,6vw,80px) 0 18px}
/* experiência */
.exp{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,40px)}
.exp article{border-top:1px solid var(--br);padding-top:22px}
.exp .sub{font-size:.88rem;color:var(--prata);margin:6px 0 22px}
.exp dt{font:700 .75rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--br);margin-top:18px}
.exp dd{margin-top:6px;color:var(--branco);font-size:1rem;line-height:1.5}
.nota{margin-top:36px;font-size:.9rem;color:var(--prata)}
@media(max-width:900px){.exp{grid-template-columns:1fr}}
/* áreas */
.areas{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.area{background:var(--off);padding:26px 22px 28px;display:flex;flex-direction:column;gap:10px}
.area .ic{font-size:1.9rem;margin-bottom:8px}
.area h3{font-size:1.35rem}
.area p{font-size:.95rem;line-height:1.45}
.compl{background:var(--pet);color:var(--branco);padding:26px 22px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.compl b{font:700 .75rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--br)}
.compl span{font-size:1.1rem;color:var(--branco)}
@media(max-width:980px){.areas{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.areas{grid-template-columns:1fr}}
/* soluções */
.sol{border-top:1px solid var(--hair-d)}
.sol details{border-bottom:1px solid var(--hair-d)}
.sol summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr 1fr 1fr auto;gap:clamp(14px,3vw,36px);align-items:center;padding-block:26px}
.sol summary::-webkit-details-marker{display:none}
.sol summary .ic{font-size:2rem;color:var(--br)}
.sol summary h3{font-size:1.55rem}
.sol .col small{display:block;font:700 .7rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--br);margin-bottom:4px}
.sol .col{font-size:.98rem;color:var(--prata);line-height:1.45}
.sol .plus{font-size:1.4rem;color:var(--br);transition:transform .2s}
.sol details[open] .plus{transform:rotate(45deg)}
.sol .body{padding:0 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:12px clamp(24px,5vw,72px)}
.sol .body ul{list-style:none;display:grid;gap:8px}
.sol .body li{padding-left:18px;position:relative;color:var(--branco);font-size:1rem}
.sol .body li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;background:var(--br);transform:rotate(45deg)}
.sol .body h4{font:700 .75rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--br);margin-bottom:10px}
.sol .body .ob{font-size:.9rem;color:var(--prata);margin-top:12px;grid-column:1/-1}
@media(max-width:900px){.sol summary{grid-template-columns:auto 1fr auto}.sol summary .col{display:none}.sol .body{grid-template-columns:1fr}}
/* método */
.passos{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.passo{padding:0 20px 0 0;margin-right:20px;border-right:1px solid var(--hair)}
.passo:last-child{border:0;margin:0;padding:0}
.passo h3{font-size:1.4rem;padding:14px 0;border-bottom:1px solid var(--pet);margin-bottom:18px}
.passo b{display:block;font:700 .72rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--br-ink);margin-bottom:6px}
.passo p{font-size:.95rem;line-height:1.45;margin-bottom:20px;color:var(--pet)}
.passo p.eq{color:var(--muted)}
.metodo-fecho{margin-top:30px;font:italic 500 1.5rem/1.3 var(--serif);color:var(--pet);max-width:38ch}
@media(max-width:980px){.passos{grid-template-columns:1fr}.passo{border:0;margin:0;padding:0 0 12px}}
/* contratação */
.formatos{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.fmt{display:flex;gap:20px;padding:28px;background:var(--nav);border:1px solid var(--hair-d)}
.fmt .ic{font-size:2rem;color:var(--br);margin-top:2px}
.fmt h3{margin-bottom:8px;font-size:1.4rem}
.fmt p{font-size:.98rem}
.sem{margin-top:28px;font:italic 500 1.4rem/1.3 var(--serif);color:var(--branco)}
@media(max-width:760px){.formatos{grid-template-columns:1fr}}
/* contato */
.contato{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}
.lockup{display:block;width:min(210px,56vw);height:auto;margin-bottom:28px}
.cl{list-style:none;margin-top:28px;display:grid;gap:0}
.cl li{display:flex;gap:16px;align-items:center;padding-block:16px;border-top:1px solid var(--hair);flex-wrap:wrap}
.cl .ic{font-size:1.5rem;color:var(--br-ink)}
.cl b{display:block;font:700 .72rem/1.2 var(--sans);letter-spacing:.2em;color:var(--br-ink)}
.cl .v{font-size:1.1rem;color:var(--pet);word-break:break-word;user-select:all}
.cl .grow{flex:1;min-width:0}
.cp{font:600 .8rem/1 var(--sans);letter-spacing:.06em;background:transparent;border:1px solid var(--hair);color:var(--muted);padding:9px 12px;cursor:pointer}
.cp:hover{border-color:var(--br-ink);color:var(--pet)}
form.card{background:var(--branco);border:1px solid var(--hair);padding:clamp(22px,3vw,36px);display:grid;gap:18px}
form label{display:grid;gap:6px;font:700 .75rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--br-ink)}
form input,form textarea{font:400 1rem/1.4 var(--sans);color:var(--pet);background:var(--off);border:1px solid var(--hair);padding:13px 14px;width:100%;border-radius:0}
form textarea{min-height:120px;resize:vertical}
form input:focus,form textarea:focus{border-color:var(--pet);outline:2px solid var(--gelo);outline-offset:1px}
.card .hint{font-size:.88rem;color:var(--muted)}
.card .btn{justify-content:center;width:100%}
.card .btn:hover{color:var(--br-ink);background:transparent}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:900px){.contato{grid-template-columns:1fr}}
@media(max-width:520px){.row2{grid-template-columns:1fr}}
/* rodapé */
footer{background:var(--pet);border-top:1px solid var(--hair-d);padding-block:36px}
footer .wrap{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
footer .brand img{width:44px;height:44px;flex:none}
footer .brand{white-space:normal;letter-spacing:.16em;line-height:1.35}
footer p{font-size:.88rem;color:var(--prata)}
.wa-fix{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:30;display:flex;align-items:center;gap:10px;background:var(--br);color:var(--pet);text-decoration:none;font:700 .9rem/1 var(--sans);padding:14px 18px;box-shadow:0 6px 24px rgba(0,0,0,.35);transition:background .2s}
.wa-fix:hover,.wa-fix:focus-visible{background:var(--branco)}
.wa-fix .ic{font-size:1.2rem}
@media(max-width:520px){.wa-fix span{display:none}.wa-fix{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
:root{--rays:url("../img/rays.svg")}
