:root{
  --bg:#FAF8F2; --bg-2:#F2EEE2; --bg-3:#E8E2D2; --surface:#FFFFFF;
  --navy:#08142E; --navy-2:#0D1F45; --navy-3:#17315F;
  --ink:#0F1419; --ink-2:#4A5260; --ink-3:#7B8290;
  --ink-on-dark:#FAF8F2; --ink-on-dark-2:#B8C4D8;
  --gold:#D4A547; --gold-bright:#E8C36B; --gold-deep:#A87D2C; --gold-pale:#F5E5B8;
  --line:rgba(15,20,25,0.08); --line-2:rgba(15,20,25,0.16);
  --line-on-dark:rgba(250,248,242,0.14); --line-on-dark-2:rgba(250,248,242,0.24);
  --display:'Bricolage Grotesque',system-ui,sans-serif;
  --serif:'Fraunces',Georgia,serif;
  --sans:'Plus Jakarta Sans',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --container:1340px; --pad:clamp(20px,4vw,64px); --radius:16px; --radius-lg:24px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{
  background:var(--bg); color:var(--ink); font-family:var(--sans);
  font-size:16px; line-height:1.55; overflow-x:hidden;
  animation:pageIn 0.7s cubic-bezier(0.16,1,0.3,1);
}
@keyframes pageIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

a{color:inherit;text-decoration:none}
button{background:none;border:0;color:inherit;font:inherit;cursor:pointer}
img,svg{display:block;max-width:100%}

.wrap{max-width:var(--container);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}

/* TYPE */
.display{
  font-family:var(--display); font-weight:500; font-variation-settings:'opsz' 96,'wdth' 100;
  letter-spacing:-0.025em; line-height:0.98; font-size:clamp(44px,7.5vw,116px);
}
.display .em,.h2 .em,.door-title .em,.partner-name .em,.cover-title .em{
  font-family:var(--serif); font-style:italic; font-weight:300;
  font-variation-settings:'opsz' 144,'SOFT' 100; color:var(--navy); font-size:1.02em; letter-spacing:-0.03em;
}
.display .gold,.h2 .gold{color:var(--gold-deep)}
.h2{font-family:var(--display); font-weight:500; font-variation-settings:'opsz' 72,'wdth' 100;
  font-size:clamp(34px,4.8vw,68px); line-height:1; letter-spacing:-0.02em;}
.h3{font-family:var(--display); font-weight:500; font-size:clamp(22px,2.2vw,30px);
  line-height:1.1; letter-spacing:-0.015em;}
.eyebrow{font-family:var(--mono); font-size:11px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--ink-2); display:inline-flex; align-items:center; gap:10px;}
.eyebrow::before{content:'';width:8px;height:8px;background:var(--gold);border-radius:50%;flex-shrink:0}
.lead{font-size:clamp(17px,1.4vw,21px); line-height:1.5; color:var(--ink-2); max-width:54ch}

/* SCROLL PROGRESS */
.scroll-progress{
  position:fixed; top:0; left:0; height:2px; background:var(--gold);
  width:0%; z-index:1000; transition:width 0.1s linear;
}


/* ALERT */
.alert-bar{
  background:#050505; color:#FAF8F2; padding:10px var(--pad); font-size:12.5px;
  display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; position:relative; z-index:99;
  border-bottom:1px solid rgba(250,248,242,0.10);
}
.alert-bar .warn-tag{
  background:var(--gold); color:#050505; padding:3px 9px; border-radius:100px;
  font-family:var(--mono); font-size:10px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase;
}
.alert-bar a{color:var(--gold-bright);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.alert-bar a:hover{color:#fff}
.alert-bar .alert-title{color:#fff;font-weight:700;text-decoration:none}
.alert-bar .alert-title:hover{color:var(--gold-bright)}
.alert-bar .alert-more{
  color:#050505; background:#FAF8F2; text-decoration:none; padding:4px 10px; border-radius:999px;
  font-size:11px; font-weight:700; transition:transform .2s ease, background .2s ease;
}
.alert-bar .alert-more:hover{background:var(--gold-bright); color:#050505; transform:translateY(-1px)}

/* AVISO PAGE */
.notice-page{padding:110px var(--pad) 120px;background:var(--bg)}
.notice-card{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 40px 120px rgba(15,20,25,.10);padding:clamp(34px,6vw,76px)}
.notice-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-weight:600;margin-bottom:18px}
.notice-title{font-family:var(--display);font-weight:500;font-size:clamp(36px,5.8vw,76px);line-height:1;letter-spacing:-.035em;color:#050505;max-width:900px}
.notice-body{margin-top:36px;max-width:760px;color:#151515;font-size:18px;line-height:1.8}
.notice-body p+p{margin-top:24px}
.notice-list{margin:18px 0 0;display:grid;gap:12px;list-style:none}
.notice-list li{display:flex;gap:12px;align-items:flex-start;color:#151515}
.notice-list .num{background:#050505;color:#fff;width:24px;height:24px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 24px;margin-top:4px}
.notice-contact{margin-top:34px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:700;color:#050505;display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.notice-contact a{text-decoration:underline;text-underline-offset:4px}
.notice-actions{margin-top:34px;display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:700px){.notice-card{padding:30px 22px}.notice-body{font-size:16px}.alert-bar{justify-content:flex-start}}

/* NAV */
.nav{
  position:sticky; top:0; z-index:90; padding:18px var(--pad);
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(250,248,242,0.85); backdrop-filter:blur(18px) saturate(1.4);
  -webkit-backdrop-filter:blur(18px) saturate(1.4);
  border-bottom:1px solid transparent; transition:border-color 0.3s, padding 0.3s;
}
.nav.scrolled{border-bottom-color:var(--line); padding-top:14px; padding-bottom:14px}
.brand{
  font-family:var(--display); font-size:24px; font-weight:600; font-variation-settings:'wdth' 90;
  letter-spacing:-0.02em; color:var(--navy); display:inline-flex; align-items:center; gap:10px;
}
.brand .dot{width:10px;height:10px;background:var(--gold);border-radius:50%;transition:transform 0.4s ease}
.brand:hover .dot{transform:scale(1.4) rotate(45deg)}
.brand .sep{color:var(--gold-deep)}
.nav-links{display:flex; align-items:center; gap:30px}
.nav-links a{font-size:14.5px; color:var(--ink-2); font-weight:500; position:relative; transition:color 0.2s}
.nav-links a::after{
  content:''; position:absolute; left:0; right:0; bottom:-4px; height:1px;
  background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform 0.3s ease;
}
.nav-links a:hover{color:var(--navy)}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-links a.active{color:var(--navy)}
.nav-actions{display:flex;gap:10px;align-items:center}
.btn{
  display:inline-flex; align-items:center; gap:8px; padding:12px 20px; border-radius:100px;
  font-size:14px; font-weight:600; font-family:var(--sans); white-space:nowrap; cursor:pointer;
  border:1px solid transparent;
  transition:transform 0.18s ease, background 0.25s, color 0.25s, border-color 0.25s, box-shadow 0.3s;
}
.btn-primary{background:var(--navy); color:var(--bg)}
.btn-primary:hover{background:var(--navy-2); box-shadow:0 10px 30px -10px rgba(10,26,63,0.35); transform:translateY(-1px)}
.btn-gold{background:var(--gold); color:var(--navy)}
.btn-gold:hover{background:var(--gold-bright); box-shadow:0 10px 30px -10px rgba(212,165,71,0.45); transform:translateY(-1px)}
.btn-ghost{background:transparent; border-color:var(--line-2); color:var(--ink)}
.btn-ghost:hover{border-color:var(--navy); background:rgba(10,26,63,0.04)}
.btn svg{transition:transform 0.3s ease}
.btn:hover svg{transform:translateX(3px)}
.menu-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;border-radius:8px}
.menu-toggle svg{stroke:var(--navy);stroke-width:1.6;fill:none;width:20px;height:20px}
@media (max-width:1000px){.nav-links{display:none}.menu-toggle{display:flex}.nav-actions .btn-ghost{display:none}}

/* HERO HOME */
.hero{padding:60px var(--pad) 100px; position:relative; overflow:hidden}
.hero-grid{
  max-width:var(--container); margin:0 auto;
  display:grid; grid-template-columns:1.15fr 1fr; gap:60px; align-items:center;
}
@media (max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:48px}}
.hero-eyebrow{margin-bottom:28px;opacity:0;animation:up 0.9s 0.2s forwards}
.hero h1{margin-bottom:28px}
.hero .lead{margin-bottom:36px;opacity:0;animation:up 0.9s 0.8s forwards}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;opacity:0;animation:up 0.9s 1s forwards}
.hero-meta{
  margin-top:56px; display:flex; gap:48px; flex-wrap:wrap;
  opacity:0;animation:up 0.9s 1.2s forwards;
}
.hero-meta-item{display:flex;flex-direction:column;gap:6px}
.hero-meta-num{
  font-family:var(--display); font-size:34px; font-weight:600;
  letter-spacing:-0.02em; color:var(--navy); display:flex; align-items:baseline;
}
.hero-meta-num .plus{color:var(--gold);margin-left:2px}
.hero-meta-label{
  font-family:var(--mono); font-size:10.5px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--ink-3);
}

/* Kinetic reveal lines */
.kinetic{display:block;overflow:hidden}
.kinetic-line{
  display:inline-block; transform:translateY(110%);
  animation:lineUp 1.2s cubic-bezier(0.16,1,0.3,1) forwards;
}
.kinetic-line.d1{animation-delay:0.25s}
.kinetic-line.d2{animation-delay:0.45s}
.kinetic-line.d3{animation-delay:0.65s}
@keyframes lineUp{to{transform:translateY(0)}}

/* HERO VISUAL */
.hero-visual{
  position:relative; aspect-ratio:4/5; opacity:0;
  animation:up 1.2s 0.85s forwards; border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:0 40px 80px -30px rgba(10,26,63,0.35);
}
.hero-visual img{
  width:100%; height:100%; object-fit:cover;
  transition:transform 1.2s cubic-bezier(0.4,0,0.2,1);
}
.hero-visual:hover img{transform:scale(1.04)}
.hero-visual::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(10,26,63,0.1) 0%, rgba(10,26,63,0.5) 100%);
  pointer-events:none;
}
.hero-visual-tag{
  position:absolute; top:24px; left:24px; z-index:2;
  background:rgba(250,248,242,0.95); backdrop-filter:blur(10px);
  padding:8px 14px; border-radius:100px;
  font-family:var(--mono); font-size:11px; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--navy); font-weight:500;
  display:inline-flex; align-items:center; gap:8px;
}
.hero-visual-tag .pulse{width:7px;height:7px;background:var(--gold);border-radius:50%;animation:pulse 1.8s ease-in-out infinite}
.hero-visual-quote{
  position:absolute; bottom:32px; left:32px; right:32px; z-index:2;
  color:var(--bg); font-family:var(--serif); font-style:italic; font-weight:300;
  font-size:clamp(18px,2vw,24px); line-height:1.3; letter-spacing:-0.01em;
}
.hero-visual-quote-attr{
  font-family:var(--mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--gold-bright); font-style:normal; margin-top:14px; display:block;
}

@keyframes up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.85)}}
@keyframes spin-slow{to{transform:rotate(360deg)}}

/* MARQUEE */
.marquee{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:var(--bg-2); padding:28px 0; overflow:hidden;
}
.marquee-track{display:flex; gap:60px; width:fit-content; animation:marquee 45s linear infinite; white-space:nowrap}
.marquee-item{
  font-family:var(--display); font-size:clamp(22px,2.4vw,38px); color:var(--ink-2);
  display:inline-flex; align-items:center; gap:60px;
  font-variation-settings:'wdth' 95;
}
.marquee-item::after{content:'◆';color:var(--gold);font-size:0.4em;margin-left:60px}
.marquee-item em{font-family:var(--serif);font-style:italic;color:var(--navy);font-weight:300}
@keyframes marquee{to{transform:translateX(-50%)}}

/* AREA CARDS preview (home) */
.areas-preview{padding:120px var(--pad)}
.areas-preview-head{max-width:var(--container);margin:0 auto 64px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end}
@media (max-width:900px){.areas-preview-head{grid-template-columns:1fr;gap:24px}}
.areas-preview-head h2{margin-top:20px}
.areas-row{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:1100px){.areas-row{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.areas-row{grid-template-columns:1fr}}
.area-mini{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-lg);
  overflow:hidden; cursor:pointer; transition:transform 0.4s, box-shadow 0.4s;
  position:relative; min-height:340px; display:flex; flex-direction:column;
}
.area-mini:hover{transform:translateY(-6px);box-shadow:0 30px 60px -25px rgba(10,26,63,0.18)}
.area-mini-img{
  aspect-ratio:4/3; overflow:hidden; position:relative; background:var(--navy);
}
.area-mini-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(0.4,0,0.2,1);opacity:0.9}
.area-mini:hover .area-mini-img img{transform:scale(1.08)}
.area-mini-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,26,63,0.2), rgba(10,26,63,0.6))}
.area-mini-tag{
  position:absolute; top:16px; left:16px; z-index:1;
  font-family:var(--mono); font-size:10.5px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--gold-bright);
}
.area-mini-body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1}
.area-mini h3{margin-bottom:8px;font-size:22px}
.area-mini p{font-size:14px;color:var(--ink-2);line-height:1.5;margin-bottom:auto;padding-bottom:16px}
.area-mini-link{
  font-family:var(--mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--navy); font-weight:600; display:inline-flex; align-items:center; gap:8px;
  transition:gap 0.3s;
}
.area-mini:hover .area-mini-link{gap:14px;color:var(--gold-deep)}

/* SPLIT FEATURE (escritório / cobrança) */
.split{padding:120px var(--pad);background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.split-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:900px){.split-grid{grid-template-columns:1fr}}
.split-card{
  background:var(--surface); border-radius:var(--radius-lg); overflow:hidden; position:relative;
  display:flex; flex-direction:column; min-height:420px;
  transition:transform 0.5s, box-shadow 0.5s;
}
.split-card:hover{transform:translateY(-4px);box-shadow:0 40px 80px -30px rgba(10,26,63,0.2)}
.split-card-img{aspect-ratio:16/9;overflow:hidden;background:var(--navy);position:relative;isolation:isolate}
.split-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(0.4,0,0.2,1)}
.split-card:hover .split-card-img img{transform:scale(1.06)}
.split-card-body{padding:36px 32px 32px;flex:1;display:flex;flex-direction:column}
.split-card-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:14px}
.split-card h3{font-size:clamp(26px,3vw,36px);margin-bottom:14px;line-height:1.05}
.split-card h3 .em{font-family:var(--serif);font-style:italic;color:var(--navy);font-weight:300}
.split-card p{font-size:15.5px;color:var(--ink-2);line-height:1.55;margin-bottom:24px}
.split-card-foot{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.split-card-foot a{font-family:var(--mono);font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--navy);display:inline-flex;align-items:center;gap:8px;transition:gap 0.3s,color 0.3s}
.split-card-foot a:hover{gap:14px;color:var(--gold-deep)}
.split-card-foot small{font-family:var(--mono);font-size:10.5px;letter-spacing:0.1em;color:var(--ink-3)}

/* PORTAL BANNER (home) */
.portal-banner{padding:100px var(--pad);background:var(--navy);color:var(--ink-on-dark);position:relative;overflow:hidden}
.portal-banner::before{content:'';position:absolute;top:0;right:0;width:60%;height:100%;background:radial-gradient(ellipse at top right, rgba(212,165,71,0.18), transparent 60%);pointer-events:none}
.portal-banner .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}
@media (max-width:900px){.portal-banner .wrap{grid-template-columns:1fr}}
.portal-banner h2{color:var(--ink-on-dark)}
.portal-banner h2 .em{color:var(--gold-bright)}
.portal-banner p{color:var(--ink-on-dark-2);font-size:17px;line-height:1.55;max-width:46ch;margin-top:24px;margin-bottom:32px}
.portal-banner .btn-gold{align-self:flex-start}

/* COVER HEADER (other pages) */
.cover{padding:100px var(--pad) 80px;position:relative;overflow:hidden}
.cover-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
@media (max-width:900px){.cover-grid{grid-template-columns:1fr;gap:40px}}
.cover-eyebrow{margin-bottom:28px;opacity:0;animation:up 0.9s 0.2s forwards}
.cover-title{
  font-family:var(--display); font-weight:500; font-variation-settings:'opsz' 96,'wdth' 100;
  letter-spacing:-0.025em; line-height:0.98; font-size:clamp(48px,8vw,108px);
  margin-bottom:28px;
}
.cover-lead{font-size:clamp(17px,1.4vw,21px);line-height:1.5;color:var(--ink-2);max-width:50ch;opacity:0;animation:up 0.9s 0.8s forwards}
.cover-img{
  aspect-ratio:5/6; overflow:hidden; border-radius:var(--radius-lg); position:relative;
  opacity:0;animation:up 1.1s 0.6s forwards;
}
.cover-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.5s cubic-bezier(0.4,0,0.2,1)}
.cover-img:hover img{transform:scale(1.05)}
.cover-img-tag{
  position:absolute; bottom:24px; left:24px; right:24px; z-index:1;
  background:rgba(250,248,242,0.95); backdrop-filter:blur(10px); padding:14px 18px;
  border-radius:12px; font-family:var(--mono); font-size:11px; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--navy); font-weight:500;
  display:flex; justify-content:space-between; align-items:center;
}

/* AREAS DETAIL (atuacao.html) */
.area-detail{padding:80px var(--pad);border-top:1px solid var(--line)}
.area-detail:first-of-type{border-top:0}
.area-detail-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}
.area-detail:nth-of-type(even) .area-detail-grid{grid-template-columns:1.1fr 1fr}
.area-detail:nth-of-type(even) .area-detail-img{order:-1}
@media (max-width:900px){.area-detail-grid,.area-detail:nth-of-type(even) .area-detail-grid{grid-template-columns:1fr;gap:40px}.area-detail:nth-of-type(even) .area-detail-img{order:0}}
.area-detail-num{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:18px}
.area-detail h2{margin-bottom:24px}
.area-detail p.intro-p{font-size:17px;line-height:1.6;color:var(--ink-2);margin-bottom:32px;max-width:48ch}
.area-detail-list{list-style:none;display:flex;flex-direction:column;gap:14px;margin-bottom:32px}
.area-detail-list li{display:flex;gap:14px;font-size:15px;color:var(--ink-2);line-height:1.5;padding:14px 0;border-bottom:1px solid var(--line)}
.area-detail-list li svg{flex-shrink:0;width:18px;height:18px;color:var(--gold-deep);margin-top:3px}
.area-detail-list li strong{color:var(--ink);font-weight:600;display:block;margin-bottom:2px}
.area-detail-img{aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius-lg);position:sticky;top:120px;background:var(--navy)}
.area-detail-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(0.4,0,0.2,1)}
.area-detail-img:hover img{transform:scale(1.05)}

/* PARTNER CARDS (escritorio.html) */
.partners{padding:120px var(--pad)}
.partners-head{max-width:var(--container);margin:0 auto 64px}
.partners-head h2{margin-top:20px;max-width:18ch}
.partners-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media (max-width:800px){.partners-grid{grid-template-columns:1fr}}
.partner{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-lg);
  overflow:hidden; transition:transform 0.4s cubic-bezier(0.4,0,0.2,1), box-shadow 0.4s;
}
.partner:hover{transform:translateY(-4px);box-shadow:0 30px 60px -25px rgba(10,26,63,0.15)}
.partner-photo{aspect-ratio:4/3;overflow:hidden;position:relative;background:var(--navy)}
.partner-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(0.4,0,0.2,1)}
.partner:hover .partner-photo img{transform:scale(1.05)}
.partner-badge{
  position:absolute; top:24px; left:24px; background:rgba(255,255,255,0.95);
  backdrop-filter:blur(10px); padding:6px 14px; border-radius:100px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--navy); font-weight:500; z-index:2;
}
.partner-body{padding:32px 28px}
.partner-name{font-family:var(--display);font-size:26px;font-weight:500;letter-spacing:-0.02em;margin-bottom:8px;line-height:1.05}
.partner-role{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:20px}
.partner-bio{font-size:14.5px;color:var(--ink-2);line-height:1.55;margin-bottom:24px}
.partner-meta{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--line)}
.partner-meta .years{font-family:var(--display);font-size:22px;font-weight:600;color:var(--navy);letter-spacing:-0.01em}
.partner-meta .years span{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);font-weight:400;letter-spacing:0.12em;text-transform:uppercase;display:block;margin-top:2px}
.partner-meta a{width:40px;height:40px;border:1px solid var(--line-2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--navy);transition:background 0.3s, color 0.3s, border-color 0.3s}
.partner-meta a:hover{background:var(--navy);color:var(--bg);border-color:var(--navy)}
.partner-meta a svg{width:16px;height:16px;fill:currentColor}

/* VALUES (escritorio) */
.values{padding:120px var(--pad);background:var(--bg-2);border-top:1px solid var(--line)}
.values-head{max-width:var(--container);margin:0 auto 64px;text-align:center}
.values-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:900px){.values-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.values-grid{grid-template-columns:1fr}}
.value{padding:32px 28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:transform 0.3s, box-shadow 0.3s}
.value:hover{transform:translateY(-4px);box-shadow:0 20px 50px -25px rgba(10,26,63,0.15)}
.value-n{font-family:var(--display);font-size:36px;font-weight:500;color:var(--gold);letter-spacing:-0.03em;line-height:1;margin-bottom:16px}
.value h4{font-family:var(--display);font-size:20px;font-weight:500;margin-bottom:8px;letter-spacing:-0.015em}
.value p{font-size:14px;color:var(--ink-2);line-height:1.55}

/* COBRANÇA — editorial layout, sem ar de vendas */
.cobr-intro{padding:80px var(--pad)}
.cobr-intro-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}
@media (max-width:900px){.cobr-intro-grid{grid-template-columns:1fr;gap:40px}}
.cobr-intro h2{margin-bottom:0;position:sticky;top:120px}
.cobr-intro-body p{font-size:17px;line-height:1.7;color:var(--ink-2);margin-bottom:24px}
.cobr-intro-body p:last-child{margin-bottom:0}
.cobr-intro-body p strong{color:var(--ink);font-weight:600}

.cobr-pillars{padding:80px var(--pad);border-top:1px solid var(--line)}
.cobr-pillars-head{max-width:var(--container);margin:0 auto 48px}
.cobr-pillars-head h2{margin-top:20px}
.cobr-pillars-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius)}
@media (max-width:1000px){.cobr-pillars-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.cobr-pillars-grid{grid-template-columns:1fr}}
.pillar{background:var(--bg);padding:36px 28px;transition:background 0.3s}
.pillar:hover{background:var(--surface)}
.pillar-n{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:24px}
.pillar h4{font-family:var(--display);font-size:21px;font-weight:500;letter-spacing:-0.015em;margin-bottom:12px;line-height:1.1}
.pillar p{font-size:14.5px;color:var(--ink-2);line-height:1.55}

.cobr-process{padding:120px var(--pad);background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cobr-process-head{max-width:var(--container);margin:0 auto 48px}
.cobr-process-head h2{margin-top:20px}
.cobr-steps{max-width:var(--container);margin:0 auto;display:flex;flex-direction:column;gap:0}
.cobr-step{
  display:grid;grid-template-columns:80px 1fr 200px;gap:32px;
  padding:32px 0;border-bottom:1px solid var(--line);transition:padding 0.4s ease;
  align-items:start;
}
.cobr-step:last-child{border-bottom:0}
.cobr-step:hover{padding-left:16px}
.cobr-step-n{font-family:var(--mono);font-size:13px;color:var(--gold-deep);letter-spacing:0.12em;padding-top:6px;font-weight:500}
.cobr-step-body h4{font-family:var(--display);font-size:clamp(22px,2.2vw,30px);font-weight:500;letter-spacing:-0.015em;margin-bottom:10px}
.cobr-step-body p{font-size:15px;color:var(--ink-2);line-height:1.55;max-width:60ch}
.cobr-step-tag{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);padding-top:8px;text-align:right}
@media (max-width:800px){.cobr-step{grid-template-columns:1fr;gap:8px}.cobr-step-tag{text-align:left}}

/* PORTAL MOCKUP */
.portal-feature{padding:120px var(--pad)}
.portal-feature-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
@media (max-width:900px){.portal-feature-grid{grid-template-columns:1fr;gap:48px}}
.portal-feature h2{margin-bottom:24px}
.portal-feature p.intro{font-size:17px;line-height:1.6;color:var(--ink-2);margin-bottom:32px;max-width:48ch}
.portal-feat-list{list-style:none;display:flex;flex-direction:column;gap:18px;margin-bottom:36px}
.portal-feat-list li{display:flex;align-items:flex-start;gap:14px;font-size:15px;color:var(--ink-2);line-height:1.4}
.portal-feat-list li svg{flex-shrink:0;width:22px;height:22px;color:var(--gold-deep);stroke:currentColor;stroke-width:1.5;fill:none;margin-top:1px}
.portal-feat-list li strong{color:var(--ink);font-weight:600;display:block;margin-bottom:2px}
.portal-mockup{
  position:relative; aspect-ratio:5/6; background:var(--navy); border-radius:var(--radius-lg);
  overflow:hidden; box-shadow:0 50px 100px -40px rgba(10,26,63,0.4);
}
.portal-mockup::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 20%, rgba(212,165,71,0.2), transparent 50%);pointer-events:none}
.pm-header{padding:20px 24px;border-bottom:1px solid var(--line-on-dark);display:flex;align-items:center;justify-content:space-between}
.pm-dots{display:flex;gap:6px}
.pm-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,0.18)}
.pm-url{font-family:var(--mono);font-size:11px;color:var(--ink-on-dark-2);padding:6px 12px;background:rgba(0,0,0,0.2);border-radius:100px}
.pm-url .lock{color:var(--gold-bright);margin-right:4px}
.pm-body{padding:28px 24px;color:var(--ink-on-dark)}
.pm-greet{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-on-dark-2);margin-bottom:10px}
.pm-name{font-family:var(--display);font-size:28px;font-weight:500;letter-spacing:-0.015em;margin-bottom:32px}
.pm-name em{color:var(--gold-bright);font-family:var(--serif);font-style:italic;font-weight:300}
.pm-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.pm-card{background:rgba(255,255,255,0.06);border:1px solid var(--line-on-dark);border-radius:12px;padding:16px}
.pm-card .label{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-on-dark-2);margin-bottom:8px}
.pm-card .v{font-family:var(--display);font-size:22px;font-weight:500;letter-spacing:-0.015em}
.pm-card.gold{background:rgba(212,165,71,0.12);border-color:rgba(212,165,71,0.3)}
.pm-card.gold .v{color:var(--gold-bright)}
.pm-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid var(--line-on-dark);font-size:13px}
.pm-row .l{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-on-dark-2)}
.pm-row .r{font-weight:600}
.pm-cta{margin-top:20px;padding:14px;background:var(--gold);color:var(--navy);border-radius:12px;text-align:center;font-weight:600;font-size:13.5px;display:flex;align-items:center;justify-content:center;gap:8px}

/* CONTATO */
.contact-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:60px var(--pad) 120px}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:48px}}
.contact-head h2{margin-bottom:28px;margin-top:8px}
.contact-head .lead{margin-bottom:40px}
.contact-channels{display:flex;flex-direction:column;gap:14px;margin-bottom:40px}
.channel{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  padding:20px 22px; display:flex; align-items:center; gap:20px;
  transition:border-color 0.3s, transform 0.3s;
}
.channel:hover{border-color:var(--navy);transform:translateX(4px)}
.channel-icon{width:48px;height:48px;background:var(--bg-2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--navy);flex-shrink:0}
.channel-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.6;fill:none}
.channel-info{flex:1}
.channel-info .l{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px}
.channel-info .v{font-family:var(--display);font-size:19px;font-weight:500;letter-spacing:-0.01em;color:var(--navy)}
.channel-arrow{color:var(--ink-3);transition:color 0.3s, transform 0.3s}
.channel:hover .channel-arrow{color:var(--navy);transform:translate(4px,-4px)}
.contact-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px 36px}
@media (max-width:700px){.contact-form{padding:28px 22px}}
.contact-form h3{margin-bottom:8px}
.contact-form p.hint{font-size:14px;color:var(--ink-2);margin-bottom:28px}
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.field input,.field select,.field textarea{
  width:100%; background:var(--bg); border:1px solid var(--line-2); border-radius:10px;
  padding:13px 14px; color:var(--ink); font-family:inherit; font-size:15px;
  transition:border-color 0.25s, background 0.25s;
}
.field textarea{min-height:90px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);background:var(--surface)}
.form-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}
.form-foot small{font-size:12px;color:var(--ink-3);max-width:24ch;line-height:1.45}

/* OFFICES */
.offices{padding:0 var(--pad) 120px}
.offices-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:800px){.offices-grid{grid-template-columns:1fr}}
.office{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-lg);
  overflow:hidden; transition:transform 0.3s, box-shadow 0.3s;
}
.office:hover{transform:translateY(-4px);box-shadow:0 30px 60px -25px rgba(10,26,63,0.15)}
.office-img{aspect-ratio:16/9;overflow:hidden;position:relative;background:var(--navy)}
.office-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(0.4,0,0.2,1)}
.office:hover .office-img img{transform:scale(1.06)}
.office-img-city{position:absolute;bottom:24px;left:28px;z-index:1;font-family:var(--display);font-size:36px;font-weight:500;color:var(--ink-on-dark);letter-spacing:-0.025em;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,0.5)}
.office-img-city .em{color:var(--gold-bright);font-family:var(--serif);font-style:italic;font-weight:300}
.office-body{padding:28px}
.office-body h3{margin-bottom:10px}
.office-addr{font-size:14.5px;color:var(--ink-2);line-height:1.55;margin-bottom:20px}
.office-meta{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-3)}
.office-meta a{color:var(--navy);font-weight:500;display:inline-flex;align-items:center;gap:6px}
.office-meta a:hover{color:var(--gold-deep)}

/* FOOTER */
.footer{background:var(--navy);color:var(--ink-on-dark);padding:80px var(--pad) 36px}
.footer-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:56px;margin-bottom:64px}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:48px 32px}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}
.footer-brand .brand{color:var(--bg);font-size:32px}
.footer-brand p{font-size:14px;color:var(--ink-on-dark-2);line-height:1.55;max-width:38ch;margin:16px 0 24px}
.footer-brand .cnpj{font-family:var(--mono);font-size:11px;color:var(--ink-on-dark-2);letter-spacing:0.06em;line-height:1.7}
.footer-col h5{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:20px;font-weight:400}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.footer-col a{font-size:14px;color:var(--ink-on-dark-2);transition:color 0.2s}
.footer-col a:hover{color:var(--gold-bright)}
.footer-bottom{max-width:var(--container);margin:0 auto;padding-top:32px;border-top:1px solid var(--line-on-dark);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-family:var(--mono);font-size:11px;color:var(--ink-on-dark-2);letter-spacing:0.05em}

/* REVEAL */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.9s ease, transform 0.9s cubic-bezier(0.16,1,0.3,1)}
.reveal.in{opacity:1;transform:translateY(0)}

::selection{background:var(--gold);color:var(--navy)}

/* ===== V4 refinements: home, menu, portal, footer, mobile ===== */
.refined-display{font-size:clamp(42px,6.8vw,104px)}
.hero-abstract{background:radial-gradient(circle at 30% 20%, rgba(212,165,71,.22), transparent 34%), radial-gradient(circle at 80% 70%, rgba(10,26,63,.30), transparent 42%), linear-gradient(135deg, #0A1A3F, #111827); min-height:620px; display:flex; align-items:center; justify-content:center;}
.hero-abstract::after{background:linear-gradient(180deg, rgba(10,26,63,0.02) 0%, rgba(10,26,63,0.18) 100%)}
.abstract-orbit{position:absolute;border:1px solid rgba(250,248,242,.18);border-radius:50%;}
.orbit-one{width:68%;height:68%;animation:spin-slow 36s linear infinite}
.orbit-two{width:44%;height:44%;border-style:dashed;animation:spin-slow 48s linear infinite reverse}
.abstract-core{position:relative;z-index:2;width:170px;height:170px;border-radius:38px;background:rgba(250,248,242,.95);color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.18)}
.abstract-core span{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
.abstract-core strong{font-family:var(--display);font-size:27px;line-height:1;margin-top:8px;letter-spacing:-.03em}
.abstract-node{display:none}
.abstract-node.n1{left:11%;top:19%}.abstract-node.n2{right:11%;top:23%}.abstract-node.n3{right:17%;bottom:24%}.abstract-node.n4{left:15%;bottom:20%}
.abstract-card-img,.abstract-split-img{position:relative;background:radial-gradient(circle at 28% 22%, rgba(232,195,107,.30), transparent 28%), radial-gradient(circle at 76% 68%, rgba(10,26,63,.40), transparent 46%), linear-gradient(135deg,#08142E,#14264B)}
.abstract-split-img.cobr{background:radial-gradient(circle at 70% 20%, rgba(232,195,107,.26), transparent 30%), radial-gradient(circle at 25% 75%, rgba(10,26,63,.34), transparent 42%), linear-gradient(135deg,#06101F,#0F2538)}
.abstract-lines{position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(250,248,242,.18) 1px, transparent 1px),linear-gradient(90deg,rgba(250,248,242,.18) 1px, transparent 1px);background-size:28px 28px;mask-image:radial-gradient(circle at center, black, transparent 76%);pointer-events:none}
.portal-cover-card{background:linear-gradient(135deg,#08142E,#0D1524);padding:28px;color:var(--ink-on-dark);display:flex;flex-direction:column;justify-content:space-between}
.portal-cover-card::after{display:none}.portal-card-top{display:flex;justify-content:space-between;gap:18px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-on-dark-2)}.portal-card-top strong{color:var(--gold-bright);font-weight:500}.portal-card-center{margin:auto 0;text-align:left;max-width:360px}.portal-card-icon{width:62px;height:62px;border-radius:20px;background:rgba(232,195,107,.16);display:flex;align-items:center;justify-content:center;margin-bottom:22px;font-size:24px}.portal-card-center h3{font-family:var(--display);font-size:42px;line-height:1;letter-spacing:-.03em;margin-bottom:14px}.portal-card-center p{color:var(--ink-on-dark-2);font-size:16px;line-height:1.6}
.footer-grid-refined{grid-template-columns:1.45fr .9fr .9fr .9fr .8fr;gap:42px}.legal-page{padding-top:90px}.legal-card{max-width:1040px}.legal-card .notice-body{max-width:820px}

.legal-content{display:grid;gap:28px}
.legal-section{border-top:1px solid var(--line);padding-top:22px}
.legal-section:first-child{border-top:0;padding-top:0}
.legal-section h2{font-family:var(--display);font-size:clamp(24px,2.3vw,34px);line-height:1.05;letter-spacing:-0.02em;margin-bottom:14px;color:var(--ink)}
.legal-section p{font-size:16.5px;line-height:1.8;color:var(--ink-2)}
.legal-section p + p{margin-top:14px}
.legal-list{margin:14px 0 0 0;padding-left:18px;display:grid;gap:10px;color:var(--ink-2)}
.legal-list li{line-height:1.75}
.legal-note{margin-top:10px;font-size:14px;color:var(--ink-3)}
.cover-abstract-panel{background:radial-gradient(circle at 24% 20%, rgba(212,165,71,.18), transparent 22%),radial-gradient(circle at 76% 68%, rgba(8,20,46,.26), transparent 38%),linear-gradient(135deg,#08142E,#122443);min-height:420px;display:flex;flex-direction:column;justify-content:space-between;padding:32px;position:relative;overflow:hidden}
.cover-abstract-panel::before{content:'';position:absolute;inset:24px;border:1px solid rgba(250,248,242,.14);border-radius:24px}
.cover-abstract-copy{position:relative;z-index:1;max-width:280px;color:var(--ink-on-dark)}
.cover-abstract-copy strong{display:block;font-family:var(--display);font-size:34px;line-height:1;letter-spacing:-.03em;margin-top:10px}
.cover-abstract-copy span{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright)}
.cover-abstract-mark{position:relative;z-index:1;align-self:flex-end;background:rgba(250,248,242,.94);padding:12px 16px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}

@media (max-width:1100px){.footer-grid-refined{grid-template-columns:1fr 1fr 1fr}.hero-abstract{min-height:520px}}
@media (max-width:1000px){
  .nav{align-items:center}.nav.mobile-open .nav-links{display:flex;position:absolute;left:var(--pad);right:var(--pad);top:calc(100% + 8px);flex-direction:column;align-items:stretch;gap:0;background:rgba(250,248,242,.98);border:1px solid var(--line);box-shadow:0 30px 80px rgba(10,26,63,.12);border-radius:18px;padding:10px}.nav.mobile-open .nav-links a{padding:14px 16px;border-radius:12px}.nav.mobile-open .nav-links a:hover,.nav.mobile-open .nav-links a.active{background:var(--bg-2)}.nav.mobile-open .nav-links a::after{display:none}.nav-actions .btn-primary{display:none}.nav.mobile-open .nav-actions .btn-primary{display:inline-flex}.alert-bar{font-size:12px;justify-content:flex-start}.hero{padding-top:50px}.hero-meta{gap:24px}.portal-cover-card{min-height:420px}
}
@media (max-width:760px){
  .display,.refined-display{font-size:clamp(40px,13vw,64px);line-height:1.02}.h2{font-size:clamp(32px,9vw,48px)}.hero{padding-bottom:70px}.hero-actions{align-items:stretch}.hero-actions .btn{justify-content:center;width:100%}.hero-meta{display:grid;grid-template-columns:1fr;gap:18px;margin-top:40px}.hero-abstract{min-height:430px;border-radius:18px}.abstract-core{width:132px;height:132px;border-radius:28px}.abstract-core strong{font-size:22px}.abstract-node{font-size:9px;padding:7px 9px}.areas-preview,.split,.portal-banner,.partners{padding-top:78px;padding-bottom:78px}.footer-grid-refined{grid-template-columns:1fr}.footer{padding-top:58px}.footer-bottom{align-items:flex-start;flex-direction:column}.cover{padding-top:68px}.cover-img{position:relative;top:auto}.notice-page{padding-top:70px}
}

.split-card{border:1px solid var(--line)}
.split-card-img{aspect-ratio:auto;height:168px}
.split-card-body{padding:30px 28px 28px}
.split-card h3{max-width:14ch}
@media (max-width:900px){.split-card-img{height:132px}}


/* ============ HERO V2 ============ */
.hero-v2{
  position:relative;
  padding:60px var(--pad) 0;
  min-height:calc(100vh - 60px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
}
.hero-v2 .hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
.hero-v2 .hero-bg-svg{width:100%;height:100%;transition:transform 0.6s cubic-bezier(0.4,0,0.2,1)}
.hero-v2-inner{
  position:relative;
  z-index:1;
  max-width:var(--container);
  margin:0 auto;
  width:100%;
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px 0 60px;
}

.hero-v2-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:48px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--ink-3);
  opacity:0;
  animation:up 0.9s 0.1s forwards;
}
.hero-status{display:inline-flex;align-items:center;gap:10px}
.hero-status-dot{
  width:8px;height:8px;
  background:var(--gold);
  border-radius:50%;
  box-shadow:0 0 10px var(--gold);
  animation:pulse 1.8s ease-in-out infinite;
}
.hero-status-sep{color:var(--ink-3);opacity:0.5}
.hero-time{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}
.hero-time .tz{opacity:0.5}

.hero-v2-display{
  font-family:var(--display);
  font-weight:500;
  font-variation-settings:'opsz' 96,'wdth' 100;
  letter-spacing:-0.03em;
  line-height:0.96;
  font-size:clamp(48px, 9vw, 144px);
  margin-bottom:64px;
  color:var(--ink);
}
.hero-v2-display .line{display:block;overflow:hidden}
.hero-v2-display .w{
  display:inline-block;
  transform:translateY(110%);
  animation:lineUp 1.2s cubic-bezier(0.16,1,0.3,1) forwards;
  transition:font-variation-settings 0.5s ease, color 0.4s;
  cursor:default;
}
.hero-v2-display .line:nth-child(1) .w{animation-delay:0.25s}
.hero-v2-display .line:nth-child(2) .w{animation-delay:0.4s}
.hero-v2-display .line:nth-child(3) .w{animation-delay:0.55s}
.hero-v2-display .w:hover{
  font-variation-settings:'opsz' 144,'wdth' 130;
  color:var(--navy);
}
.hero-v2-display .it{
  font-family:var(--serif);
  font-style:italic;
  font-weight:300;
  color:var(--navy);
  font-variation-settings:'opsz' 144,'SOFT' 100;
  font-size:1.02em;
}
.hero-v2-display .it:hover{
  font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;
  color:var(--gold-deep);
}

.hero-v2-bottom{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:80px;
  align-items:end;
}
@media (max-width:1000px){.hero-v2-bottom{grid-template-columns:1fr;gap:48px}}

.hero-v2-left{opacity:0;animation:up 0.9s 0.9s forwards}
.hero-v2-lead{
  font-size:clamp(17px, 1.4vw, 21px);
  line-height:1.5;
  color:var(--ink-2);
  max-width:50ch;
  margin-bottom:32px;
}
.hero-v2-right{opacity:0;animation:up 0.9s 1.1s forwards}
.hero-stack{
  display:flex;
  flex-direction:column;
  gap:0;
  border-top:1px solid var(--line);
}
.hero-stack-item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:24px;
  padding:20px 0;
  border-bottom:1px solid var(--line);
  align-items:center;
  transition:padding 0.4s ease;
}
.hero-stack-item:hover{padding-left:12px}
.hero-stack-n{
  font-family:var(--display);
  font-size:42px;
  font-weight:500;
  letter-spacing:-0.03em;
  color:var(--navy);
  line-height:1;
  min-width:90px;
  font-variation-settings:'opsz' 96,'wdth' 95;
}
.hero-stack-n .sep{color:var(--gold);margin:0 4px}
.hero-stack-l{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--ink-2);
  line-height:1.6;
}

/* thin marquee at bottom */
.hero-marquee-thin{
  position:relative;
  z-index:1;
  border-top:1px solid var(--line);
  background:var(--bg-2);
  padding:14px 0;
  overflow:hidden;
}
.hero-marquee-track{
  display:flex;
  gap:32px;
  width:fit-content;
  animation:marquee 50s linear infinite;
  white-space:nowrap;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--ink-2);
}
.hero-marquee-track .dot{color:var(--gold);font-size:0.7em}

/* BTN GLOW */
.btn-glow{position:relative;overflow:hidden}
.btn-glow::before{
  content:'';
  position:absolute;
  top:50%;left:50%;
  width:300px;height:300px;
  background:radial-gradient(circle, var(--gold-bright) 0%, transparent 60%);
  border-radius:50%;
  transform:translate(-50%,-50%) scale(0);
  transition:transform 0.6s cubic-bezier(0.16,1,0.3,1);
  pointer-events:none;
  opacity:0.4;
}
.btn-glow:hover::before{transform:translate(-50%,-50%) scale(1)}
.btn-glow > *{position:relative;z-index:1}

/* ============ ABSTRACT LINES — pattern único por área ============ */
.area-mini .abstract-card-img{
  position:relative;
  overflow:hidden;
  background:var(--navy);
}
.area-mini .abstract-card-img::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(10,26,63,0.3), rgba(10,26,63,0.7));
  z-index:2;
}
.area-mini .abstract-card-img .area-mini-tag{z-index:3}

.area-mini .abstract-lines{
  position:absolute;
  inset:0;
  z-index:1;
  transition:transform 0.8s cubic-bezier(0.4,0,0.2,1), opacity 0.5s;
}
.area-mini:hover .abstract-lines{transform:scale(1.08) rotate(-1deg)}

/* Empresarial — grid corporativo */
.areas-row .area-mini:nth-child(1) .abstract-lines{
  background:
    linear-gradient(to right, rgba(212,165,71,0.15) 1px, transparent 1px) 0 0/40px 100%,
    linear-gradient(to bottom, rgba(212,165,71,0.1) 1px, transparent 1px) 0 0/100% 40px,
    var(--navy);
}

/* Bancário — diagonal stripes (estrutura/garantia) */
.areas-row .area-mini:nth-child(2) .abstract-lines{
  background:repeating-linear-gradient(
    -45deg,
    var(--navy) 0 12px,
    var(--navy-2) 12px 13px,
    var(--navy) 13px 28px
  );
}
.areas-row .area-mini:nth-child(2) .abstract-lines::after{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 70% 30%, rgba(212,165,71,0.2), transparent 60%);
}

/* Recuperação — dots em grid (dados, pontos) */
.areas-row .area-mini:nth-child(3) .abstract-lines{
  background:
    radial-gradient(circle, var(--gold) 1.5px, transparent 2px) 0 0/24px 24px,
    var(--navy);
  opacity:0.95;
}

/* Imobiliário — blueprint concêntrico */
.areas-row .area-mini:nth-child(4) .abstract-lines{
  background:var(--navy);
}
.areas-row .area-mini:nth-child(4) .abstract-lines::before{
  content:'';
  position:absolute;
  top:50%;left:50%;
  width:200%;height:200%;
  transform:translate(-50%,-50%);
  background:
    repeating-radial-gradient(
      circle at center,
      transparent 0 28px,
      rgba(212,165,71,0.18) 28px 29px
    );
  animation:blueprint-spin 80s linear infinite;
}
@keyframes blueprint-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* Split cards — variação */
.abstract-split-img{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9;
}
.abstract-split-img .split-card-img-label{
  position:absolute;
  bottom:20px;left:24px;
  z-index:2;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--gold-bright);
}
.abstract-split-img.adv{
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 100%);
}
.abstract-split-img.adv .abstract-lines{
  position:absolute;inset:0;
  background:
    linear-gradient(to right, rgba(212,165,71,0.12) 1px, transparent 1px) 0 0/60px 100%,
    linear-gradient(to bottom, rgba(212,165,71,0.08) 1px, transparent 1px) 0 0/100% 60px;
}
.abstract-split-img.cobr{
  background:linear-gradient(135deg, var(--navy-2) 0%, #061230 100%);
}
.abstract-split-img.cobr .abstract-lines{
  position:absolute;inset:0;
  background:
    radial-gradient(circle, var(--gold) 1px, transparent 2px) 0 0/28px 28px;
  opacity:0.4;
  animation:driftDots 60s linear infinite;
}
@keyframes driftDots{to{background-position:280px 280px}}

/* mockup animation */
.pm-cursor{
  display:inline-block;
  margin-left:2px;
  color:var(--gold-bright);
  font-family:var(--display);
  font-style:normal;
  font-weight:300;
  animation:blink 1s steps(2) infinite;
}
@keyframes blink{50%{opacity:0}}

.pm-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--gold-bright);
}
.pm-status-dot{
  width:6px;height:6px;
  background:var(--gold-bright);
  border-radius:50%;
  box-shadow:0 0 8px var(--gold-bright);
  animation:pulse 1.8s ease-in-out infinite;
}

.pm-cta{
  transition:transform 0.3s ease;
  display:flex;
}
.pm-cta svg{transition:transform 0.3s ease}
.pm-cta:hover{transform:translateY(-2px)}
.pm-cta:hover svg{transform:translateX(4px)}

.scroll-indicator{
  position:fixed;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  z-index:80;
  display:flex;
  flex-direction:column;
  gap:14px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--ink-3);
  pointer-events:none;
  opacity:0;
  transition:opacity 0.4s;
}
.scroll-indicator.visible{opacity:1}
.scroll-indicator-line{
  width:1px;
  height:60px;
  background:var(--line);
  position:relative;
}
.scroll-indicator-line::before{
  content:'';
  position:absolute;
  top:0;left:0;
  width:100%;
  height:var(--p, 0%);
  background:var(--gold);
  transition:height 0.1s linear;
}
@media (max-width:900px){.scroll-indicator{display:none}}


/* ===== Correção final: cards da home sem buraco/corte no mobile ===== */
.split-refined{padding:110px var(--pad);background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.split-head{max-width:var(--container);margin:0 auto 48px;display:grid;grid-template-columns:1fr .75fr;gap:48px;align-items:end}
.split-head .h2{margin-top:22px}.split-head .lead{align-self:end;max-width:48ch}
.split-grid-refined{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.split-card-refined{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;position:relative;display:flex;flex-direction:column;min-height:auto;transition:transform .45s ease,box-shadow .45s ease,border-color .45s ease}
.split-card-refined:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 34px 80px -34px rgba(8,20,46,.32)}
.split-card-refined .split-card-img{height:174px;aspect-ratio:auto;overflow:hidden;background:var(--navy);position:relative;isolation:isolate}
.split-card-refined .split-card-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,46,.05),rgba(8,20,46,.28));z-index:1;pointer-events:none}
.split-card-refined .abstract-lines{position:absolute;inset:0;opacity:.32;background-image:linear-gradient(rgba(250,248,242,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(250,248,242,.18) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(circle at center,black,transparent 78%);pointer-events:none}
.split-card-img-label{position:absolute;left:20px;bottom:18px;z-index:2;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright)}
.split-card-refined .split-card-body{padding:30px 30px 28px;display:flex;flex-direction:column;gap:16px;flex:0 0 auto}
.split-card-refined .split-card-eyebrow{margin:0;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}
.split-card-refined h3{margin:0;max-width:16ch;font-size:clamp(30px,3.2vw,44px);line-height:.98;letter-spacing:-.025em}
.split-card-refined h3 .em{font-family:var(--serif);font-style:italic;color:var(--navy);font-weight:300}
.split-card-refined p{margin:0;max-width:58ch;font-size:15.5px;color:var(--ink-2);line-height:1.65}
.split-card-refined .split-card-foot{margin-top:8px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--navy)}
.split-card-refined .split-card-foot svg{flex:0 0 auto;transition:transform .28s ease}.split-card-refined:hover .split-card-foot svg{transform:translateX(4px)}
@media(max-width:900px){.split-refined{padding:76px var(--pad)}.split-head{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.split-grid-refined{grid-template-columns:1fr;gap:18px}.split-card-refined .split-card-img{height:96px}.split-card-refined .split-card-body{padding:22px 20px 20px;gap:13px}.split-card-refined h3{max-width:12ch;font-size:clamp(28px,9vw,38px);line-height:.98}.split-card-refined p{font-size:14px;line-height:1.55}.split-card-refined .split-card-foot{margin-top:4px;padding-top:14px;align-items:flex-start;font-size:9.5px;line-height:1.45}}
@media(max-width:520px){.split-card-refined .split-card-img{height:78px}.split-card-img-label{left:16px;bottom:14px;font-size:9px;letter-spacing:.14em}.split-card-refined .split-card-body{padding:20px 18px 18px}}
/* Responsivo extra para Hero V2 */
@media(max-width:760px){.hero-v2{min-height:auto;padding-top:46px}.hero-v2-inner{padding:12px 0 44px}.hero-v2-top{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:34px}.hero-v2-display{font-size:clamp(44px,14vw,72px);margin-bottom:40px}.hero-stack-n{font-size:34px;min-width:78px}.hero-marquee-thin{padding:12px 0}.hero-marquee-track{font-size:10px;gap:22px}}
