/* ==========================================================================
   OCTAVIA — Shared stylesheet for inner pages
   Design system mirrors index.html (navy / gold, Blocklyn + Cormorant + JetBrains Mono)
   ========================================================================== */

@font-face {
  font-family: 'Blocklyn';
  src: url('../fonts/Blocklyn-Condensed.woff2') format('woff2'),
       url('../fonts/Blocklyn-Condensed.ttf') format('truetype');
  font-weight: 400 900; font-style: normal; font-display: swap;
}

:root {
  --gold: #E5B978;
  --gold-soft: #D4A85F;
  --gold-deep: #B8924A;
  --navy: #0F1B2D;
  --navy-deep: #08111E;
  --navy-mid: #1A2940;
  --ivory: #F5F1E8;
  --ivory-dim: #E8E1D0;
  --cream: #FAF6EC;
  --cream-deep: #F0E9D6;
  --line: rgba(229,185,120,0.18);
  --line-dark: rgba(15,27,45,0.12);
  --text-muted: rgba(245,241,232,0.65);
  --text-dim: rgba(245,241,232,0.45);
  --text-navy-muted: rgba(15,27,45,0.65);
  --text-navy-dim: rgba(15,27,45,0.45);
  --ease: cubic-bezier(0.22,1,0.36,1);
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  font-family:'Inter Tight',sans-serif;
  background:var(--navy-deep); color:var(--ivory);
  overflow-x:hidden; -webkit-font-smoothing:antialiased;
  opacity:0; animation:pageIn .9s var(--ease) .1s forwards;
}
@keyframes pageIn { to { opacity:1; } }
img { max-width:100%; display:block; }

body::before {
  content:''; position:fixed; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
  opacity:.025; pointer-events:none; z-index:9999; mix-blend-mode:overlay;
}

.wrap { max-width:1400px; margin:0 auto; }

/* ── NAV ───────────────────────────────────────────────────────────────── */
.site-nav {
  position:fixed; top:0; left:0; right:0; z-index:150;
  padding:14px 48px; display:flex; align-items:center; justify-content:space-between;
  background:rgba(8,17,30,.92);
  backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
  border-bottom:1px solid var(--line); transition:padding .4s;
}
.site-nav img.nav-logo { height:56px; width:auto; transition:height .4s; }
.site-nav.scrolled { padding:10px 48px; }
.site-nav.scrolled img.nav-logo { height:42px; }
.nav-menu { display:flex; align-items:center; gap:26px; }
.nav-item { position:relative; }
.nav-link {
  color:var(--ivory); text-decoration:none;
  font-size:.82rem; font-weight:400; letter-spacing:.08em; text-transform:uppercase;
  padding:8px 0; position:relative; display:inline-flex; align-items:center; gap:6px;
  transition:color .3s; white-space:nowrap; background:none; border:0; cursor:pointer;
  font-family:'Inter Tight',sans-serif;
}
.nav-link::after {
  content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%);
  width:0; height:1.5px; background:var(--gold); transition:width .4s var(--ease);
}
.nav-link:hover { color:var(--gold); }
.nav-link:hover::after { width:100%; }
.nav-link.active { color:var(--gold); }
.nav-link.active::after { width:100%; }
.nav-link .caret { width:8px; height:8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translate(-2px,-2px); transition:transform .3s; opacity:.7; }
.nav-item:hover .nav-link .caret { transform:rotate(225deg) translate(-3px,-3px); }

.nav-drop {
  position:absolute; top:100%; left:-20px; min-width:230px;
  background:rgba(8,17,30,.98); border:1px solid var(--line);
  padding:10px 0; opacity:0; visibility:hidden; transform:translateY(10px);
  transition:all .3s var(--ease);
  backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
}
.nav-item:hover .nav-drop, .nav-item:focus-within .nav-drop { opacity:1; visibility:visible; transform:translateY(0); }
.nav-drop a {
  display:block; padding:11px 22px; color:var(--text-muted); text-decoration:none;
  font-size:.86rem; font-weight:300; transition:all .25s; border-left:2px solid transparent;
}
.nav-drop a:hover, .nav-drop a.active { color:var(--gold); background:rgba(229,185,120,.05); border-left-color:var(--gold); }

.nav-cta {
  border:1px solid var(--gold); color:var(--gold);
  padding:11px 22px; text-decoration:none;
  font-family:'JetBrains Mono',monospace; font-size:.68rem;
  letter-spacing:.2em; text-transform:uppercase;
  transition:color .35s var(--ease); position:relative; overflow:hidden; background:transparent;
  white-space:nowrap;
}
.nav-cta::before {
  content:''; position:absolute; inset:0; background:var(--gold);
  transform:translateX(-101%); transition:transform .4s var(--ease); z-index:0;
}
.nav-cta span { position:relative; z-index:1; }
.nav-cta:hover { color:var(--navy); }
.nav-cta:hover::before { transform:translateX(0); }

.mobile-burger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:0; padding:0; }
.mobile-burger span { width:26px; height:1.5px; background:var(--gold); display:block; transition:all .3s; }

/* Mobile drawer */
.drawer-backdrop { position:fixed; inset:0; background:rgba(8,17,30,.7); opacity:0; visibility:hidden; transition:all .4s; z-index:190; backdrop-filter:blur(4px); }
.drawer-backdrop.open { opacity:1; visibility:visible; }
.mobile-drawer {
  position:fixed; top:0; right:0; bottom:0; width:min(88vw,360px);
  background:var(--navy-deep); border-left:1px solid var(--line);
  transform:translateX(102%); transition:transform .5s var(--ease);
  z-index:200; padding:28px 28px 40px; overflow-y:auto;
}
.mobile-drawer.open { transform:translateX(0); }
.drawer-close { position:absolute; top:20px; right:24px; background:none; border:0; color:var(--gold); font-size:2rem; line-height:1; cursor:pointer; }
.mobile-drawer h6 {
  font-family:'JetBrains Mono',monospace; font-size:.6rem; letter-spacing:.24em;
  text-transform:uppercase; color:var(--gold); margin:26px 0 10px; font-weight:400;
}
.mobile-drawer a.m-link {
  display:block; padding:11px 0; color:var(--ivory); text-decoration:none;
  font-size:1rem; font-weight:300; border-bottom:1px solid rgba(229,185,120,.08);
  transition:color .3s;
}
.mobile-drawer a.m-link:hover, .mobile-drawer a.m-link.active { color:var(--gold); }
.drawer-cta {
  display:block; text-align:center; margin-top:28px; padding:14px;
  border:1px solid var(--gold); color:var(--gold); text-decoration:none;
  font-family:'JetBrains Mono',monospace; font-size:.7rem; letter-spacing:.2em; text-transform:uppercase;
}
.drawer-contact { margin-top:24px; font-size:.85rem; color:var(--text-muted); line-height:1.9; }
.drawer-contact a { color:var(--gold); text-decoration:none; }

/* ── PAGE HERO ─────────────────────────────────────────────────────────── */
.page-hero {
  background:var(--navy-deep); position:relative; overflow:hidden;
  padding:150px 48px 64px; border-bottom:1px solid var(--line);
  display:flex; align-items:flex-end;
}
.page-hero::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 20% 60%,rgba(229,185,120,.08),transparent 55%),
             radial-gradient(ellipse at 80% 20%,rgba(229,185,120,.05),transparent 50%);
  pointer-events:none;
}
.page-hero.has-img::after {
  content:''; position:absolute; inset:0; z-index:0;
  background-size:cover; background-position:center;
  opacity:.16; background-image:var(--hero-img);
}
.page-hero-inner { position:relative; z-index:2; max-width:1400px; width:100%; margin:0 auto; padding-left:32px; }
.page-hero-inner::before {
  content:''; position:absolute; left:0; top:4px; bottom:4px; width:1px;
  background:linear-gradient(to bottom,transparent,var(--gold) 30%,var(--gold) 70%,transparent); opacity:.5;
}
.eyebrow {
  font-family:'JetBrains Mono',monospace; font-size:.7rem; letter-spacing:.28em;
  text-transform:uppercase; color:var(--gold); display:block; margin-bottom:18px;
}
.page-hero h1 {
  font-family:'Blocklyn','Cormorant Garamond',serif;
  font-size:clamp(2.6rem,6vw,5rem); font-weight:700; line-height:.94;
  letter-spacing:-.01em; text-transform:uppercase; color:var(--ivory); margin-bottom:22px;
}
.page-hero h1 em {
  font-family:'Cormorant Garamond',serif; color:var(--gold); font-style:italic;
  font-weight:300; text-transform:none; letter-spacing:-.02em;
}
.page-hero-sub { font-size:1.02rem; color:var(--text-muted); font-weight:300; line-height:1.75; max-width:600px; }

/* Breadcrumbs */
.crumbs {
  display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:28px;
  font-family:'JetBrains Mono',monospace; font-size:.62rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--text-dim);
}
.crumbs a { color:var(--text-dim); text-decoration:none; transition:color .3s; }
.crumbs a:hover { color:var(--gold); }
.crumbs .sep { color:var(--gold); opacity:.55; }
.crumbs [aria-current] { color:var(--gold); }

/* ── SECTIONS ──────────────────────────────────────────────────────────── */
.sec { padding:88px 48px; position:relative; }
.sec.light { background:var(--cream); color:var(--navy); }
.sec.mid { background:var(--navy); }
.sec.tight { padding:64px 48px; }
.sec-inner { max-width:1400px; margin:0 auto; }
.sec.light .eyebrow { color:var(--gold-deep); }

.sec-head { margin-bottom:48px; max-width:820px; }
.sec-head h2 {
  font-family:'Cormorant Garamond',serif; font-size:clamp(1.9rem,4vw,3rem);
  font-weight:400; line-height:1.15; letter-spacing:-.01em; margin-bottom:18px;
}
.sec-head h2 em { color:var(--gold); font-style:italic; font-weight:300; }
.sec.light .sec-head h2 em { color:var(--gold-deep); }
.sec-head p { font-size:1rem; font-weight:300; line-height:1.8; color:var(--text-muted); }
.sec.light .sec-head p { color:var(--text-navy-muted); }

.prose { max-width:780px; }
.prose p { font-size:1rem; font-weight:300; line-height:1.9; color:var(--text-muted); margin-bottom:20px; }
.sec.light .prose p { color:var(--text-navy-muted); }
.prose h3 {
  font-family:'Cormorant Garamond',serif; font-size:1.6rem; font-weight:400;
  margin:36px 0 14px; color:var(--ivory);
}
.sec.light .prose h3 { color:var(--navy); }
.prose a { color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(229,185,120,.35); transition:border-color .3s; }
.sec.light .prose a { color:var(--gold-deep); border-bottom-color:rgba(184,146,74,.4); }
.prose a:hover { border-bottom-color:currentColor; }
.prose ul { list-style:none; margin:4px 0 22px; }
.prose ul li { position:relative; padding-left:24px; margin-bottom:11px; font-size:.97rem; font-weight:300; line-height:1.75; color:var(--text-muted); }
.sec.light .prose ul li { color:var(--text-navy-muted); }
.prose ul li::before { content:''; position:absolute; left:2px; top:12px; width:7px; height:1px; background:var(--gold); }
.sec.light .prose ul li::before { background:var(--gold-deep); }

/* ── SPLIT (text + image) ──────────────────────────────────────────────── */
.split { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.split.rev .split-visual { order:-1; }
.split-visual { position:relative; overflow:hidden; }
.split-visual img { width:100%; height:100%; object-fit:cover; transition:transform 1s var(--ease); }
.split-visual:hover img { transform:scale(1.04); }

/* ── STAT GRID ─────────────────────────────────────────────────────────── */
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.stat { background:var(--navy-deep); padding:34px 28px; }
.sec.light .stat { background:var(--cream); }
.sec.mid .stat { background:var(--navy); }
.stat .lbl {
  font-family:'JetBrains Mono',monospace; font-size:.6rem; letter-spacing:.2em;
  text-transform:uppercase; color:var(--text-dim); display:block; margin-bottom:12px;
}
.sec.light .stat .lbl { color:var(--text-navy-dim); }
.stat .val { font-family:'Cormorant Garamond',serif; font-size:1.9rem; font-weight:400; color:var(--gold); line-height:1.2; }
.sec.light .stat .val { color:var(--gold-deep); }
.stat .note { font-size:.8rem; font-weight:300; color:var(--text-muted); margin-top:8px; line-height:1.6; }
.sec.light .stat .note { color:var(--text-navy-muted); }

/* ── CARD GRID ─────────────────────────────────────────────────────────── */
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; }
.card {
  border:1px solid var(--line); padding:32px 30px; background:rgba(229,185,120,.02);
  transition:border-color .4s,transform .5s var(--ease); position:relative;
}
.sec.light .card { border-color:var(--line-dark); background:rgba(255,255,255,.5); }
.card:hover { border-color:var(--gold); transform:translateY(-4px); }
.card .num {
  font-family:'JetBrains Mono',monospace; font-size:.62rem; letter-spacing:.2em;
  color:var(--gold); display:block; margin-bottom:14px;
}
.sec.light .card .num { color:var(--gold-deep); }
.card img.ico { width:44px; height:44px; object-fit:contain; margin-bottom:16px; }
.card h3 { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:400; margin-bottom:11px; line-height:1.3; }
.card p { font-size:.92rem; font-weight:300; line-height:1.75; color:var(--text-muted); }
.sec.light .card p { color:var(--text-navy-muted); }

/* ── LIST / FEATURE ROWS ───────────────────────────────────────────────── */
.rows { border-top:1px solid var(--line); }
.sec.light .rows { border-top-color:var(--line-dark); }
.row {
  display:grid; grid-template-columns:70px 1fr auto; gap:26px; align-items:center;
  padding:22px 0; border-bottom:1px solid var(--line); transition:padding-left .4s var(--ease);
}
.sec.light .row { border-bottom-color:var(--line-dark); }
.row:hover { padding-left:12px; }
.row .idx { font-family:'JetBrains Mono',monospace; font-size:.65rem; letter-spacing:.16em; color:var(--gold); }
.sec.light .row .idx { color:var(--gold-deep); }
.row .nm { font-size:1.02rem; font-weight:300; }
.row .dist { font-family:'JetBrains Mono',monospace; font-size:.78rem; color:var(--text-muted); letter-spacing:.08em; }
.sec.light .row .dist { color:var(--text-navy-muted); }

/* ── GALLERY ───────────────────────────────────────────────────────────── */
.gal { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.gal figure { position:relative; overflow:hidden; aspect-ratio:4/3; }
.gal figure.wide { grid-column:span 2; aspect-ratio:8/5; }
.gal img { width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease); }
.gal figure:hover img { transform:scale(1.06); }
.gal figcaption {
  position:absolute; left:0; right:0; bottom:0; padding:22px 20px 16px;
  background:linear-gradient(to top,rgba(8,17,30,.92),transparent);
  font-family:'JetBrains Mono',monospace; font-size:.62rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--ivory);
}
.gal figcaption b { display:block; color:var(--gold); font-weight:400; margin-bottom:5px; }

/* ── FAQ ───────────────────────────────────────────────────────────────── */
.faq { max-width:900px; border-top:1px solid var(--line); }
.faq-item { border-bottom:1px solid var(--line); }
.faq-q {
  width:100%; background:none; border:0; cursor:pointer; text-align:left;
  padding:24px 44px 24px 0; position:relative; color:var(--ivory);
  font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:400; line-height:1.4;
  transition:color .3s;
}
.faq-q:hover { color:var(--gold); }
.faq-q::after {
  content:''; position:absolute; right:8px; top:50%; width:11px; height:11px;
  border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold);
  transform:translateY(-70%) rotate(45deg); transition:transform .35s var(--ease);
}
.faq-item.open .faq-q::after { transform:translateY(-30%) rotate(225deg); }
.faq-a { max-height:0; overflow:hidden; transition:max-height .45s var(--ease); }
.faq-item.open .faq-a { max-height:600px; }
.faq-a p { font-size:.96rem; font-weight:300; line-height:1.85; color:var(--text-muted); padding:0 40px 26px 0; }

/* ── FORM ──────────────────────────────────────────────────────────────── */
.form-shell { border:1px solid var(--line); padding:40px 38px; background:rgba(229,185,120,.025); }
.form-shell h3 { font-family:'Cormorant Garamond',serif; font-size:1.7rem; font-weight:400; margin-bottom:8px; }
.form-shell h3 em { color:var(--gold); font-style:italic; font-weight:300; }
.form-shell > p.intro { font-size:.92rem; font-weight:300; color:var(--text-muted); margin-bottom:26px; line-height:1.7; }
.fld { margin-bottom:20px; position:relative; }
.fld label {
  display:block; font-family:'JetBrains Mono',monospace; font-size:.6rem;
  letter-spacing:.18em; text-transform:uppercase; color:var(--text-dim); margin-bottom:8px;
}
.fld input, .fld select, .fld textarea {
  width:100%; background:transparent; border:0; border-bottom:1px solid var(--line);
  padding:11px 0; color:var(--ivory); font-family:'Inter Tight',sans-serif;
  font-size:.98rem; font-weight:300; transition:border-color .35s;
}
.fld select option { background:var(--navy-deep); color:var(--ivory); }
.fld textarea { resize:vertical; min-height:70px; }
.fld input:focus, .fld select:focus, .fld textarea:focus { outline:none; border-bottom-color:var(--gold); }
.fld input::placeholder, .fld textarea::placeholder { color:rgba(245,241,232,.28); }
.form-note { font-size:.76rem; font-weight:300; color:var(--text-dim); margin-top:16px; line-height:1.7; }
.form-note a { color:var(--gold); text-decoration:none; }

/* ── BUTTONS ───────────────────────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; gap:11px; text-decoration:none;
  font-family:'JetBrains Mono',monospace; font-size:.7rem; letter-spacing:.2em;
  text-transform:uppercase; padding:15px 30px; border:1px solid var(--gold);
  position:relative; overflow:hidden; cursor:pointer; transition:color .35s var(--ease);
  background:transparent;
}
.btn::before { content:''; position:absolute; inset:0; background:var(--gold); transform:translateX(-101%); transition:transform .45s var(--ease); z-index:0; }
.btn span, .btn .arr { position:relative; z-index:1; }
.btn:hover::before { transform:translateX(0); }
.btn .arr { transition:transform .3s; }
.btn:hover .arr { transform:translateX(5px); }
.btn-gold { color:var(--gold); }
.btn-gold:hover { color:var(--navy); }
.btn-solid { background:var(--gold); color:var(--navy); }
.btn-solid::before { background:var(--ivory); }
.btn-solid:hover { color:var(--navy); }
.btn-row { display:flex; flex-wrap:wrap; gap:16px; margin-top:34px; }

/* ── CTA BAND ──────────────────────────────────────────────────────────── */
.cta-band { background:var(--navy); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:76px 48px; text-align:center; position:relative; overflow:hidden; }
.cta-band::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 120%,rgba(229,185,120,.12),transparent 60%); pointer-events:none; }
.cta-band-inner { position:relative; z-index:2; max-width:760px; margin:0 auto; }
.cta-band h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,4vw,2.8rem); font-weight:400; line-height:1.2; margin-bottom:16px; }
.cta-band h2 em { color:var(--gold); font-style:italic; font-weight:300; }
.cta-band p { font-size:1rem; font-weight:300; color:var(--text-muted); line-height:1.8; margin-bottom:8px; }
.cta-band .btn-row { justify-content:center; }

/* ── RELATED LINKS ─────────────────────────────────────────────────────── */
.related { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.related a {
  background:var(--navy-deep); padding:30px 28px; text-decoration:none; display:block;
  transition:background .4s; position:relative;
}
.related a:hover { background:var(--navy-mid); }
.related a .k { font-family:'JetBrains Mono',monospace; font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); display:block; margin-bottom:10px; }
.related a .t { font-family:'Cormorant Garamond',serif; font-size:1.3rem; color:var(--ivory); font-weight:400; display:block; margin-bottom:8px; }
.related a .d { font-size:.86rem; font-weight:300; color:var(--text-muted); line-height:1.6; }

/* ── FOOTER ────────────────────────────────────────────────────────────── */
.site-foot { background:var(--navy-deep); border-top:1px solid var(--line); padding:72px 48px 34px; }
.foot-grid { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1.1fr; gap:44px; }
.foot-brand img.flogo { height:52px; width:auto; margin-bottom:20px; }
.foot-brand .tag { font-family:'Cormorant Garamond',serif; font-size:1.1rem; color:var(--gold); margin-bottom:16px; font-style:italic; font-weight:300; }
.foot-brand p { font-size:.86rem; font-weight:300; line-height:1.85; color:var(--text-muted); }
.foot-logos { display:flex; gap:26px; margin-top:24px; flex-wrap:wrap; }
.foot-logos .li { display:flex; flex-direction:column; gap:7px; }
.foot-logos .li small { font-family:'JetBrains Mono',monospace; font-size:.52rem; letter-spacing:.18em; text-transform:uppercase; color:var(--text-dim); }
.foot-logos .li img { height:30px; width:auto; opacity:.85; }
.foot-col h5 { font-family:'JetBrains Mono',monospace; font-size:.62rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:18px; font-weight:400; }
.foot-col ul { list-style:none; }
.foot-col li { margin-bottom:10px; }
.foot-col a { color:var(--text-muted); text-decoration:none; font-size:.88rem; font-weight:300; transition:color .3s; }
.foot-col a:hover { color:var(--gold); }
.foot-rera img { width:100%; max-width:230px; height:auto; }
.foot-disc { font-size:.68rem; font-weight:300; line-height:1.75; color:var(--text-dim); margin-top:16px; }
.foot-bottom {
  max-width:1400px; margin:44px auto 0; padding-top:28px; border-top:1px solid var(--line);
  display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;
}
.foot-bottom p { font-family:'JetBrains Mono',monospace; font-size:.65rem; letter-spacing:.1em; color:var(--text-dim); }
.foot-bottom a { color:var(--text-dim); text-decoration:none; border-bottom:1px solid rgba(229,185,120,.28); transition:color .3s,border-color .3s; }
.foot-bottom a:hover { color:var(--gold); border-bottom-color:var(--gold); }
.socials { display:flex; gap:14px; }
.socials a { width:34px; height:34px; border:1px solid var(--line); display:grid; place-items:center; transition:all .35s; border-bottom:1px solid var(--line); }
.socials a:hover { border-color:var(--gold); background:rgba(229,185,120,.08); }
.socials svg { width:15px; height:15px; fill:var(--text-muted); transition:fill .35s; }
.socials a:hover svg { fill:var(--gold); }

/* ── WHATSAPP FLOAT ────────────────────────────────────────────────────── */
.wa-float {
  position:fixed; bottom:28px; right:28px; width:56px; height:56px;
  background:#25D366; color:#fff; border-radius:50%; display:grid; place-items:center;
  text-decoration:none; box-shadow:0 8px 30px rgba(37,211,102,.4); z-index:120;
  transition:transform .3s; animation:waPulse 2s ease-in-out infinite;
}
.wa-float:hover { transform:scale(1.1); }
.wa-float svg { width:26px; height:26px; fill:currentColor; }
@keyframes waPulse {
  0%,100% { box-shadow:0 8px 30px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,.5); }
  50% { box-shadow:0 8px 30px rgba(37,211,102,.4),0 0 0 16px rgba(37,211,102,0); }
}

/* ── REVEAL ────────────────────────────────────────────────────────────── */
.reveal { opacity:0; transform:translateY(28px); transition:all .85s var(--ease); }
.reveal.in { opacity:1; transform:translateY(0); }
.reveal-d1 { transition-delay:.1s; } .reveal-d2 { transition-delay:.2s; } .reveal-d3 { transition-delay:.3s; }

/* ── RESPONSIVE ────────────────────────────────────────────────────────── */
@media (max-width:1180px) { .nav-menu { gap:18px; } .nav-link { font-size:.76rem; } }
@media (max-width:1024px) {
  .site-nav, .site-nav.scrolled { padding:13px 28px; }
  .page-hero { padding:130px 28px 56px; }
  .sec, .sec.tight { padding:64px 28px; }
  .cta-band { padding:60px 28px; }
  .site-foot { padding:56px 28px 30px; }
  .foot-grid { grid-template-columns:1fr 1fr 1fr; gap:36px; }
  .split { grid-template-columns:1fr; gap:36px; }
  .split.rev .split-visual { order:0; }
  .stats { grid-template-columns:repeat(2,1fr); }
  .gal { grid-template-columns:repeat(2,1fr); }
  .gal figure.wide { grid-column:span 2; }
}
@media (max-width:768px) {
  .site-nav, .site-nav.scrolled { padding:12px 20px; }
  .site-nav img.nav-logo, .site-nav.scrolled img.nav-logo { height:44px; }
  .nav-menu { display:none; }
  .mobile-burger { display:flex; }
  .page-hero { padding:104px 20px 44px; }
  .page-hero-inner { padding-left:18px; }
  .page-hero h1 { font-size:clamp(2rem,9vw,3rem); }
  .sec, .sec.tight { padding:52px 20px; }
  .sec-head { margin-bottom:34px; }
  .cta-band { padding:52px 20px; }
  .site-foot { padding:48px 20px 26px; }
  .foot-grid { grid-template-columns:1fr; gap:34px; }
  .gal { grid-template-columns:1fr; }
  .gal figure.wide { grid-column:span 1; }
  .form-shell { padding:28px 22px; }
  .row { grid-template-columns:46px 1fr; gap:14px; }
  .row .dist { grid-column:2; font-size:.72rem; }
  .foot-bottom { flex-direction:column; align-items:flex-start; }
  .btn { padding:13px 24px; font-size:.65rem; }
}
@media (max-width:480px) {
  .stats { grid-template-columns:1fr; }
  .page-hero h1 { font-size:1.95rem; }
  .btn-row .btn { width:100%; justify-content:center; }
}
