/* ═══════════════════════════════════════════════════════
   SELLOUK LAW — Brand Design System 2026
   Palette  Midnight · Onyx · Justice · Goldleaf · Cloud
   Fonts    Poppins (sans) · DroidSerif (serif) · SeasonMix (display)
   ═══════════════════════════════════════════════════════ */

/* ── @font-face ──────────────────────────────────────── */
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Thin.woff2')format('woff2');font-weight:100;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-ExtraLight.woff2')format('woff2');font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Light.woff2')format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Regular.woff2')format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Italic.woff2')format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Medium.woff2')format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-SemiBold.woff2')format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Bold.woff2')format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-BoldItalic.woff2')format('woff2');font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-ExtraBold.woff2')format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/Poppins-Black.woff2')format('woff2');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:'DroidSerif';src:url('fonts/DroidSerif.woff2')format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'DroidSerif';src:url('fonts/DroidSerif-Italic.woff2')format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'DroidSerif';src:url('fonts/DroidSerif-Bold.woff2')format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'SeasonMix';src:url('fonts/SeasonMix-Bold.woff2')format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'SeasonMix';src:url('fonts/SeasonMixMedium-Regular.woff2')format('woff2');font-weight:500;font-style:normal;font-display:swap}

/* ── Design Tokens ───────────────────────────────────── */
:root {
  /* Brand palette (exact hex values from SVG files) */
  --midnight:   #131923;
  --onyx:       #0e0e0e;
  --justice:    #24304b;
  --goldleaf:   #b8955a;
  --gold-hi:    #d4a96b;
  --gold-lo:    #8a6e3a;
  --slate:      #8f9db2;
  --storm:      #c5c8c9;
  --cloud:      #ebecf0;
  --cream:      #f5f3ef;
  --white:      #ffffff;

  /* Semantic aliases */
  --accent:     var(--goldleaf);
  --accent-hi:  var(--gold-hi);
  --border:     rgba(255,255,255,.06);
  --border-gold:rgba(184,149,90,.3);

  /* Type */
  --sans:       'Poppins',   -apple-system, sans-serif;
  --serif:      'DroidSerif', Georgia, serif;
  --display:    'SeasonMix', 'Poppins', sans-serif;

  /* Layout */
  --max:        1320px;
  --gutter:     clamp(24px, 5.5vw, 88px);

  /* Motion */
  --ease:       cubic-bezier(0.16, 1, 0.3, 1);
  --swift:      cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --dur:        0.75s;
}

/* ── Reset ───────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  scroll-behavior:smooth;
  scroll-snap-type:y proximity;
}
#hero{scroll-snap-align:start}
.why-section{scroll-snap-align:start}
.practice-section{scroll-snap-align:start}

/* ── Site frame (FoundersCard-style) ─────────────────── */
/* body is the visible "border" — cream background shows as an 8px frame */
html { background: #ffffff; }
body { padding: 8px; background: #ffffff; }
#site-frame {
  border-radius: 18px;
  overflow-x: hidden;
  overflow-y: visible;
  min-height: calc(100vh - 16px);
  background: var(--onyx);
  position: relative;
}
img,svg{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font:inherit}

/* ── Base ────────────────────────────────────────────── */
body {
  font-family: var(--sans);
  font-weight: 300;
  color: var(--cloud);
  background: var(--onyx);
  overflow-x: hidden;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* Subtle film grain — premium editorial feel */
body::after {
  content:'';
  position:fixed;inset:0;
  background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='256' height='256'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='256' height='256' filter='url(%23g)' opacity='1'/></svg>");
  opacity:.025;pointer-events:none;z-index:9990;
}

.container{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}

/* ── Custom Cursor ───────────────────────────────────── */
#cur{
  position:fixed;width:7px;height:7px;
  background:var(--accent);border-radius:50%;
  pointer-events:none;z-index:9999;
  transform:translate(-50%,-50%);
  transition:width .14s,height .14s,background .2s;
  opacity:0;
}
#cur-r{
  position:fixed;width:30px;height:30px;
  border:1px solid rgba(156,139,106,.3);border-radius:50%;
  pointer-events:none;z-index:9998;
  transform:translate(-50%,-50%);
  transition:width .22s var(--ease),height .22s var(--ease),border-color .2s;
  opacity:0;
}
#cur.active,#cur-r.active{opacity:1;}
body:has(a:hover) #cur{width:11px;height:11px;background:var(--gold-hi)}
body:has(a:hover) #cur-r{width:46px;height:46px;border-color:rgba(196,170,133,.45)}
@media(hover:none),@media(pointer:coarse){#cur,#cur-r{display:none!important}}

/* ── Navigation ──────────────────────────────────────── */
#nav{
  position:fixed;top:8px;left:8px;right:8px;z-index:1000;
  border-radius:18px 18px 0 0;
  display:flex;align-items:center;justify-content:space-between;
  padding:28px var(--gutter);
  transition:background .5s var(--ease),padding .4s var(--ease),border-color .4s;
  border-bottom:1px solid transparent;
}
#nav.stuck,#nav.nav-solid{
  background:rgba(13,13,13,.95);
  backdrop-filter:blur(28px)saturate(180%);
  -webkit-backdrop-filter:blur(28px)saturate(180%);
  padding:16px var(--gutter);
  border-bottom-color:var(--border);
}
.nav-logo{display:flex;flex-direction:row;align-items:center;gap:12px}
.nav-mono{display:none}
.nav-logo-text{display:flex;flex-direction:column;align-items:center;gap:5px}
.nav-logo-text img{height:22px;width:auto;opacity:.9;transition:opacity .2s}
.nav-logo:hover .nav-logo-text img{opacity:1}
.nav-tagline{
  font-size:.55rem;font-weight:500;letter-spacing:.2em;
  text-transform:uppercase;color:var(--goldleaf);opacity:.65;
  line-height:1;text-align:center;
}
.nav-links{display:flex;align-items:center;gap:40px}
.nav-links a{
  font-size:11px;font-weight:500;letter-spacing:.15em;
  text-transform:uppercase;color:rgba(235,236,240,.4);
  transition:color .2s;
}
.nav-links a:hover{color:var(--cloud)}
.nav-cta{
  color:var(--midnight)!important;
  background:var(--accent);
  padding:10px 22px;border-radius:2px;
  font-size:.62rem!important;font-weight:600!important;letter-spacing:.1em!important;
  transition:background .2s!important;
}
.nav-cta:hover{background:var(--gold-hi)!important}

/* Language Toggle */
.lang-toggle{
  font-size:.55rem!important;font-weight:600!important;letter-spacing:.18em!important;
  border:1px solid var(--border-gold)!important;color:var(--goldleaf)!important;
  padding:7px 14px!important;border-radius:2px;
  transition:background .2s,color .2s!important;
  background:transparent!important;
  text-transform:uppercase!important;
}
.lang-toggle:hover{background:var(--goldleaf)!important;color:var(--midnight)!important}
.mob-lang{font-size:1rem!important;color:var(--goldleaf)!important;padding:6px 0!important;letter-spacing:.1em;font-weight:500}

/* Hamburger */
.hamburger{display:none;flex-direction:column;gap:6px;padding:10px;min-width:44px;min-height:44px;justify-content:center;align-items:center}
.hamburger span{display:block;width:24px;height:1px;background:var(--cloud);transition:transform .3s var(--ease),opacity .3s}

/* ── Mobile Menu ─────────────────────────────────────── */
.mob-menu{
  position:fixed;inset:8px;border-radius:18px;background:var(--midnight);z-index:1100;
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;
  transform:translateX(100%);transition:transform .55s var(--ease);
}
.mob-menu.open{transform:translateX(0)}
.mob-close{position:absolute;top:28px;right:var(--gutter);font-size:1.8rem;color:var(--cloud);opacity:.4;transition:opacity .2s}
.mob-close:hover{opacity:1}
.mob-lnk{
  font-family:var(--sans);font-size:clamp(1.35rem,4.5vw,1.9rem);font-weight:200;
  letter-spacing:0;color:var(--cloud);padding:10px 0;transition:color .2s;
}
.mob-lnk strong{font-weight:200}
.mob-lnk:hover{color:var(--accent)}
.mob-sub{
  font-size:clamp(1rem,3.5vw,1.2rem);font-weight:300;
  color:var(--goldleaf);padding:4px 0 4px 24px;
}
.mob-cta{
  margin-top:24px;background:var(--accent);color:var(--midnight)!important;
  padding:16px 44px!important;border-radius:2px;font-size:.9rem!important;font-weight:700;
  min-height:44px;display:flex;align-items:center;justify-content:center;
}

/* ── HERO ────────────────────────────────────────────── */
#hero{
  position:relative;
  min-height:100svh;
  display:flex;flex-direction:column;
  background:var(--midnight);
  overflow:hidden;
}
#hero::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 80% 90% at 20% 50%, rgba(36,48,75,.75) 0%, transparent 65%),
    radial-gradient(ellipse 60% 60% at 80% 80%, rgba(156,139,106,.05) 0%, transparent 55%);
  pointer-events:none;z-index:1;
}
#hero::after{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent 0%,var(--goldleaf) 50%,transparent 100%);
  opacity:.4;z-index:2;
}

.hero-body{
  flex:1;
  display:flex;align-items:flex-end;
  padding:clamp(60px,8vh,100px) var(--gutter) clamp(48px,5vh,72px);
  position:relative;z-index:2;
}
.hero-body .container{
  width:100%;
  display:grid;
  grid-template-columns:55fr 45fr;
  gap:clamp(32px,5vw,72px);
  align-items:center;
}

/* Left text column */
.hero-text-col{
  display:flex;flex-direction:column;align-items:flex-start;
}

/* Right visual column */
.hero-visual-col{
  display:flex;align-items:center;justify-content:center;
  position:relative;
  align-self:stretch;
}
.hero-visual-svg{
  width:100%;
  height:100%;
  max-height:82vh;
  opacity:.82;
  filter:drop-shadow(0 0 60px rgba(156,139,106,.1));
}

/* Kicker */
h2.hero-kicker{font-size:inherit;font-weight:inherit;margin:0}
.hero-kicker{
  display:flex;align-items:center;gap:16px;
  margin-bottom:40px;
  justify-content:flex-start;
}
.hero-kicker-line{
  display:block;width:36px;height:1px;
  background:var(--accent);flex-shrink:0;
}
.hero-kicker-text::after{ content:none; }
.hero-kicker-text{
  font-size:.58rem;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;color:var(--accent);
  overflow-wrap:break-word;word-break:break-word;min-width:0;
}

/* Hero headline */
.hero-h1{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(2.8rem,4.8vw,5.8rem);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:0.92;
  color:var(--cloud);
  margin-bottom:40px;
  text-align:left;
  text-wrap:balance;
}
.hero-h1 em{font-style:italic;color:var(--gold-hi)}

.hero-divider{
  width:clamp(60px,10vw,120px);height:1px;
  background:linear-gradient(90deg,var(--border-gold),transparent);
  margin-bottom:36px;
}
.hero-foot{
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  max-width:500px;
}
.hero-sub{
  font-size:clamp(1rem,1.5vw,1.15rem);font-weight:300;
  color:rgba(220,222,224,.82);line-height:1.75;
  text-align:left;letter-spacing:.005em;
  margin-bottom:20px;
}
.hero-sub-em{
  font-style:normal;font-weight:400;
  color:rgba(220,222,224,.97);
}
.hero-btns{
  display:flex;flex-direction:row;gap:14px;flex-wrap:nowrap;align-items:stretch;
  margin-top:8px;
}

/* Credibility line */
.hero-cred{
  font-size:.74rem;font-weight:400;letter-spacing:.06em;
  color:rgba(184,149,90,.7);line-height:1.65;
  text-transform:none;max-width:500px;
  padding-left:0;
  margin-bottom:28px;
  border-left:2px solid rgba(184,149,90,.3);
  padding-left:12px;
}

/* No fee reassurance */
.hero-no-fee{
  font-size:.72rem;font-weight:500;letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(184,149,90,.78);
  margin-bottom:24px;
}

/* Support text below CTAs */
.hero-support{
  font-size:.66rem;font-weight:400;letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(197,200,201,.5);
  margin-top:14px;
}

/* ── Stats Bar ───────────────────────────────────────── */
.hero-stats-bar{
  position:relative;z-index:2;
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:2px solid var(--goldleaf);
  background:rgba(10,14,24,.92);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.hsb-item{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:40px 36px;gap:10px;
  border-right:1px solid rgba(255,255,255,.04);
  position:relative;
}
.hsb-item:last-child{border-right:none}
.hsb-item::before{
  content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:32px;height:2px;
  background:linear-gradient(90deg,transparent,var(--goldleaf),transparent);
  opacity:.85;
}
.hsb-n{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(1.05rem,1.9vw,1.35rem);
  font-weight:600;color:var(--cloud);letter-spacing:.01em;line-height:1.2;
  text-align:center;
}
.hsb-l{
  font-size:11px;font-weight:300;letter-spacing:.12em;
  color:rgba(197,200,201,.48);text-align:center;line-height:1.6;
  text-transform:uppercase;
}

/* ── Buttons ─────────────────────────────────────────── */
.btn-white,.btn-gold,.btn-primary{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--accent);color:var(--midnight);
  font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 34px;border-radius:2px;
  transition:background .22s,transform .22s var(--ease),box-shadow .22s;
}
.btn-white:hover,.btn-gold:hover,.btn-primary:hover{
  background:var(--gold-hi);transform:translateY(-2px);
  box-shadow:0 8px 32px rgba(156,139,106,.25);
}
.btn-ghost,.btn-ghost-white{
  display:inline-flex;align-items:center;gap:10px;
  border:1px solid rgba(235,236,240,.2);color:var(--cloud);
  font-family:var(--sans);font-size:.68rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 28px;border-radius:2px;
  transition:border-color .22s,color .22s;
}
.btn-ghost:hover,.btn-ghost-white:hover{border-color:var(--accent);color:var(--accent)}
.btn-lg{padding:20px 48px;font-size:.88rem}
.arrow{font-style:normal}
/* Aliases used across inner pages */
.btn-solid{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--accent);color:var(--midnight);
  font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 34px;border-radius:2px;
  transition:background .22s,transform .22s var(--ease),box-shadow .22s;
}
.btn-solid:hover{background:var(--gold-hi);transform:translateY(-2px);box-shadow:0 8px 32px rgba(156,139,106,.25)}
.btn-outline{
  display:inline-flex;align-items:center;gap:10px;
  border:1px solid rgba(235,236,240,.2);color:var(--cloud);
  font-family:var(--sans);font-size:.68rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 28px;border-radius:2px;
  transition:border-color .22s,color .22s;
}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
/* White-context variants (used in cta-band on dark backgrounds) */
.btn-solid-w{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--accent);color:var(--midnight);
  font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 34px;border-radius:2px;
  transition:background .22s,transform .22s var(--ease),box-shadow .22s;
}
.btn-solid-w:hover{background:var(--gold-hi);transform:translateY(-2px);box-shadow:0 8px 32px rgba(156,139,106,.25)}
.btn-outline-w{
  display:inline-flex;align-items:center;gap:10px;
  border:1px solid rgba(235,236,240,.25);color:var(--cloud);
  font-family:var(--sans);font-size:.68rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;padding:16px 28px;border-radius:2px;
  transition:border-color .22s,color .22s;
}
.btn-outline-w:hover{border-color:var(--accent);color:var(--accent)}
.cta-band{
  background:var(--midnight);
  padding:clamp(64px,8vw,100px) 0;
}
.cta-btns{
  display:flex;align-items:center;justify-content:center;
  gap:16px;flex-wrap:wrap;
}

/* ── Practice Bar ────────────────────────────────────── */
.practice-bar{
  background:var(--midnight);
  border-top:1px solid rgba(156,139,106,.45);
  border-bottom:1px solid var(--border);
}
.practice-bar-inner{
  max-width:var(--max);margin:0 auto;
  padding:0 var(--gutter);
  display:flex;align-items:center;justify-content:space-between;
}
.pbar-link{
  display:block;
  padding:14px 0;
  font-size:.62rem;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--slate);text-decoration:none;
  transition:color .2s;white-space:nowrap;
}
.pbar-link:hover{color:var(--gold-hi);transition:color .2s;}
.pbar-sep{
  width:1px;height:14px;
  background:rgba(143,157,178,.18);flex-shrink:0;
}

/* ── Section Typography ──────────────────────────────── */
.eyebrow{
  font-size:11px;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;color:var(--accent);
  display:flex;align-items:center;gap:14px;
  margin-bottom:22px;
}
.eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--accent);flex-shrink:0}
.eyebrow-center{justify-content:center}
.eyebrow-center::before{display:none}

.sec-title{
  font-family: 'Cormorant Garamond', var(--serif);
  font-size:clamp(2.4rem,5vw,4.2rem);
  font-weight:500;line-height:1.04;letter-spacing:-.02em;
  color:var(--cloud);margin-bottom:24px;
}
.sec-title.dark{color:var(--midnight)}
.sec-title em,.serif-em{
  font-style:italic;
  color:var(--accent);font-size:1em;letter-spacing:-.01em;
}
.sec-title.dark em,.sec-title.dark .serif-em{color:var(--goldleaf)}

.sec-body{
  font-size:clamp(.88rem,1.4vw,.98rem);font-weight:300;
  color:rgba(197,200,201,.6);line-height:1.85;max-width:440px;
}
.sec-body.dark{color:#5a5a5a}

.txt-link{
  font-size:.64rem;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--accent);
  display:inline-flex;align-items:center;gap:8px;
  margin-top:32px;transition:gap .2s,color .2s;
}
.txt-link:hover{gap:16px;color:var(--gold-hi)}
.txt-link.dark{color:var(--goldleaf)}
.txt-link.dark:hover{color:var(--gold-lo)}

/* ── WHY SECTION ─────────────────────────────────────── */
.why-section{
  background:var(--cream);
  padding:clamp(96px,12vw,160px) 0;
  position:relative;
}
/* Subtle top border gradient */
.why-section::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(156,139,106,.3),transparent);
}
.why-grid{
  display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(60px,8vw,120px);
  align-items:start;
}
.why-left .eyebrow{color:var(--goldleaf)}
.why-left .eyebrow::before{background:var(--goldleaf)}
.why-left .sec-body.dark{color:#555}

.why-right{display:flex;flex-direction:column}
.why-row{
  display:grid;grid-template-columns:80px 1fr;gap:24px;
  align-items:start;
  padding:40px 0;
  border-bottom:1px solid rgba(0,0,0,.08);
  position:relative;
}
.why-row::before{
  content:'';
  position:absolute;left:0;top:0;bottom:0;width:2px;
  background:transparent;
  transition:background .3s;
}
.why-row:hover::before{background:var(--goldleaf)}
.why-row:first-child{padding-top:0}
.why-row:last-child{border-bottom:none}

.wr-num{
  font-family:var(--sans);font-size:clamp(1.4rem,2.5vw,1.8rem);
  font-weight:800;color:var(--goldleaf);letter-spacing:-.04em;
  line-height:1;padding-top:3px;
}
.wr-title{
  font-family:var(--sans);font-size:.92rem;font-weight:700;
  color:var(--midnight);letter-spacing:-.01em;margin-bottom:8px;line-height:1.3;
}
.wr-desc{
  font-family:var(--sans);font-size:.86rem;font-weight:300;
  color:#666;line-height:1.8;
}

/* ── Why Cards Section ───────────────────────────────── */
.why-cards-section{
  background:var(--midnight);
  padding:clamp(80px,12vh,120px) 0 clamp(70px,10vh,100px);
}
.sec-sub-intro{
  font-size:.95rem;font-weight:300;color:var(--storm);
  line-height:1.8;max-width:560px;margin:20px auto 0;text-align:center;
}
.why-cards-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:rgba(184,149,90,.15);
  border:1px solid rgba(184,149,90,.15);
}
.why-card{
  background:rgba(255,255,255,.03);
  border:1px solid var(--border-gold);
  padding:48px 40px;
  position:relative;
}
.wc-num{
  font-family:var(--serif);font-size:.7rem;font-weight:600;
  color:var(--goldleaf);letter-spacing:.2em;margin-bottom:20px;opacity:.7;
}
.wc-title{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:1.5rem;font-weight:500;color:var(--gold-hi);
  margin-bottom:16px;line-height:1.2;
}
.wc-line{
  width:32px;height:2px;background:var(--goldleaf);
  margin-bottom:16px;opacity:.7;
}
.wc-desc{
  font-size:.87rem;font-weight:300;color:var(--storm);line-height:1.8;
}

/* ── Fee Comparison Section ──────────────────────────── */
.fee-section{
  background:var(--midnight);
  padding:clamp(80px,12vh,120px) 0;
}
.fee-layout{
  display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);
  align-items:center;
  position:relative;
}
/* Vertical connector between left text and right table */
.fee-layout::before{
  content:'';
  position:absolute;
  left:50%;top:5%;height:90%;
  width:1px;
  background:linear-gradient(to bottom,transparent,rgba(184,149,90,.18) 20%,rgba(184,149,90,.18) 80%,transparent);
  pointer-events:none;
}
/* ── Fee Comparison Chart ─────────────────────────────── */
.fee-compare-card{
  border:1px solid var(--border-gold);
  overflow:hidden;
}
.fcc-title-block{
  padding:22px 28px 18px;
  border-bottom:1px solid rgba(184,149,90,.2);
  background:rgba(184,149,90,.06);
}
.fcc-settlement-title{
  display:block;
  font-family:var(--serif);font-size:1.1rem;font-weight:700;
  color:var(--cloud);letter-spacing:.02em;margin-bottom:5px;
}
.fcc-settlement-sub{
  display:block;font-size:.66rem;font-weight:300;
  color:rgba(197,200,201,.65);letter-spacing:.06em;margin-bottom:6px;
}
.fcc-settlement-micro{
  display:block;font-size:.6rem;font-weight:500;
  color:rgba(184,149,90,.55);letter-spacing:.1em;text-transform:uppercase;
}
/* Horizontal scroll wrapper for mobile */
.fcc-scroll-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
/* Desktop/mobile toggle */
.fcc-mobile-only{display:none}
.fcc-desktop-only{display:block}
/* Mobile stacked cards */
.fcc-mob-card{
  border:1px solid rgba(255,255,255,.08);
  padding:20px 20px 16px;
  margin:0;
}
.fcc-mob-card+.fcc-mob-card{border-top:none}
.fcc-mob-card-sellouk{
  background:rgba(184,149,90,.06);
  border-color:var(--border-gold);
  border-top:2px solid var(--goldleaf)!important;
}
.fcc-mob-firm{
  font-size:.95rem;font-weight:600;color:var(--cloud);
  margin-bottom:14px;letter-spacing:.01em;
}
.fcc-mob-firm-gold{color:var(--gold-hi)}
.fcc-mob-row{
  display:flex;justify-content:space-between;align-items:center;
  padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);
}
.fcc-mob-settle{border-bottom:none;padding-top:12px;margin-top:4px}
.fcc-mob-label{
  font-size:.65rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(184,149,90,.7);
}
.fcc-mob-val{
  font-size:.9rem;font-weight:300;color:var(--storm);
}
.fcc-mob-gold{color:var(--goldleaf)!important;font-weight:500}
.fcc-mob-amt{
  font-size:1.5rem;font-weight:300;
  color:rgba(197,200,201,.6);font-family:var(--serif);
}
.fcc-mob-amt-sellouk{
  font-size:1.8rem;font-weight:400;
  color:var(--gold-hi);font-family:var(--serif);
  display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;
}
.fcc-scroll-wrap::-webkit-scrollbar{display:none}
/* Fee comparison — clean HTML table */
.fee-table{
  width:100%;min-width:560px;border-collapse:collapse;table-layout:fixed;
}
.fee-table th,
.fee-table td{
  padding:18px 16px;text-align:left;vertical-align:middle;
  border-bottom:1px solid rgba(255,255,255,.06);
  font-size:.9rem;font-weight:300;color:var(--storm);white-space:nowrap;
}
.fee-table thead th{
  font-size:.65rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--goldleaf);
  background:rgba(184,149,90,.08);padding:14px 16px;
  border-bottom:1px solid var(--border-gold);
}
.fee-table .col-firm{width:22%}
.fee-table .col-fee{width:18%}
.fee-table .col-costs{width:13%}
.fee-table .col-liens{width:26%}
.fee-table .col-receive{
  width:26%;text-align:center;
  background:rgba(184,149,90,.05);
  border-left:1px solid var(--border-gold);
}
.fee-table thead .col-receive{
  background:rgba(184,149,90,.12);
  color:var(--gold-hi);font-size:.7rem;letter-spacing:.12em;
}
.fee-table .row-typical{background:rgba(255,255,255,.01)}
.fee-table .row-sellouk{
  background:rgba(184,149,90,.04);
  border-top:1px solid var(--border-gold);
}
.fee-table tbody .col-firm{font-size:.95rem;color:var(--cloud);font-weight:400}
.fee-table .row-sellouk .col-firm{font-weight:600}
.fee-table .gold{color:var(--goldleaf)!important;font-weight:500}
.fee-table .pct{
  display:block;font-size:.72rem;color:var(--slate);
  font-weight:300;margin-top:3px;
}
.fee-table .pct.gold{color:var(--goldleaf);opacity:.75}
.fee-table .typical-amt{
  font-size:1.6rem;font-weight:300;
  color:rgba(197,200,201,.6);font-family:var(--serif);
}
.fee-table .sellouk-amt{
  font-size:2rem;font-weight:400;
  color:var(--gold-hi);font-family:var(--serif);line-height:1.1;
  white-space:normal;
}
.savings-inline{
  display:block;
  font-size:.65rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--midnight);
  background:var(--goldleaf);padding:3px 10px;
  margin-top:6px;
}
/* Card footer — conclusion of the table */
.fcc-footer{
  padding:20px 28px 18px;
  border-top:1px solid rgba(184,149,90,.2);
  background:rgba(184,149,90,.04);
  display:flex;flex-direction:column;gap:4px;
}
.fcc-amp-main{
  font-size:.88rem;font-weight:600;color:var(--cloud);letter-spacing:.01em;
}
.fcc-amp-sub{
  font-size:.7rem;font-weight:300;color:rgba(197,200,201,.4);
  letter-spacing:.02em;
}
.fee-disclaimer{
  font-size:.58rem;font-weight:300;
  color:rgba(197,200,201,.22);line-height:1.7;
  font-style:italic;margin-top:4px;
}

/* ── Credentials Bar ─────────────────────────────────── */
.cred-bar{
  background:var(--cloud);
  border-top:1px solid rgba(184,149,90,.2);
  border-bottom:1px solid rgba(184,149,90,.2);
  padding:24px 0;
}
.cred-inner{
  display:flex;align-items:center;justify-content:center;
  flex-wrap:wrap;
}
.cred-item{
  display:flex;align-items:center;gap:10px;
  font-size:.6rem;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(30,40,60,.55);
  padding:10px 36px;
}
.cred-item svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}
.cred-sep{width:1px;height:18px;background:rgba(184,149,90,.25)}

/* ── Practice Areas ──────────────────────────────────── */
.practice-section{
  background:var(--midnight);
  padding:clamp(64px,8vw,100px) 0 clamp(80px,10vw,120px);
}
.section-header{
  display:flex;align-items:flex-end;justify-content:space-between;
  margin-bottom:40px;flex-wrap:wrap;gap:24px;
}
.section-header .sec-title{margin-bottom:0}
.practice-all{
  font-size:.62rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent);
  white-space:nowrap;align-self:flex-end;
  display:inline-flex;align-items:center;gap:8px;
  transition:gap .2s,color .2s;
}
.practice-all:hover{gap:16px;color:var(--gold-hi)}

.practice-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:rgba(184,149,90,.15);
  border:1px solid rgba(184,149,90,.15);
}
.pcard{
  display:flex;flex-direction:column;
  padding:48px 40px 44px;
  background:rgba(255,255,255,.03);
  position:relative;overflow:hidden;
  transition:background .3s;
  cursor:pointer;
}
/* Gold bottom bar on hover */
.pcard::after{
  content:'';
  position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--accent);
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s var(--ease);
}
.pcard:hover{background:rgba(184,149,90,.06)}
.pcard:hover::after{transform:scaleX(1)}

.pc-num{
  font-family:var(--display);font-size:.75rem;font-weight:700;
  letter-spacing:.2em;color:var(--accent);
  margin-bottom:28px;opacity:.6;
}
.pc-icon{
  width:26px;height:26px;color:var(--accent);
  margin-bottom:22px;flex-shrink:0;
  transition:transform .3s var(--ease);
}
.pcard:hover .pc-icon{transform:translateY(-3px)}
.pc-title{
  font-family:var(--sans);font-size:1.2rem;font-weight:700;
  color:var(--cloud);letter-spacing:-.01em;
  margin-bottom:14px;line-height:1.25;
}
.pc-desc{
  font-family:var(--sans);font-size:.84rem;font-weight:300;
  color:rgba(197,200,201,.6);line-height:1.8;flex:1;margin-bottom:32px;
}
.pc-link{
  font-size:.6rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent);
  display:inline-flex;align-items:center;gap:6px;
  transition:gap .2s,color .2s;
}
.pcard:hover .pc-link{gap:12px;color:var(--gold-hi)}

/* Ghost number */
.pcard-ghost{
  position:absolute;right:20px;bottom:12px;
  font-family:var(--display);font-size:5.5rem;font-weight:700;
  color:var(--midnight);opacity:.04;letter-spacing:-.04em;line-height:1;
  pointer-events:none;user-select:none;
}

/* ── Process Section ─────────────────────────────────── */
.process-section{
  background:var(--onyx);
  padding:clamp(96px,12vw,160px) 0;
  position:relative;overflow:hidden;
}
.process-section::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 55% 90% at 15% 55%,rgba(36,48,75,.35) 0%,transparent 65%);
  pointer-events:none;
}
.process-layout{
  display:grid;grid-template-columns:1fr 1.5fr;
  gap:clamp(60px,8vw,120px);align-items:start;
  position:relative;z-index:1;
}
.process-sticky{position:sticky;top:128px}
.process-sticky .sec-body{color:rgba(197,200,201,.5)}
.process-sticky .eyebrow{color:rgba(156,139,106,.6)}
.process-sticky .eyebrow::before{background:rgba(156,139,106,.5)}

/* Steps with vertical gold line */
.process-steps{
  display:flex;flex-direction:column;
  position:relative;
}
.process-steps::before{
  content:'';
  position:absolute;left:27px;top:8px;bottom:8px;width:1px;
  background:linear-gradient(to bottom,var(--accent),rgba(156,139,106,.1));
  opacity:.35;
}
.step{
  display:grid;grid-template-columns:56px 1fr;gap:32px;
  padding:40px 0;
  border-bottom:1px solid var(--border);
  position:relative;z-index:1;
  transition:opacity .3s;
}
.step:last-child{border-bottom:none}
.step-num-wrap{
  display:flex;flex-direction:column;align-items:center;
}
.step-number{
  width:56px;height:56px;border-radius:50%;
  border:1px solid var(--border-gold);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--sans);font-size:.62rem;font-weight:700;
  letter-spacing:.12em;color:var(--accent);
  background:rgba(156,139,106,.06);
  flex-shrink:0;
  transition:background .3s,border-color .3s;
}
.step:hover .step-number{background:rgba(156,139,106,.12);border-color:var(--accent)}
.step-title{
  font-family:var(--sans);font-size:1rem;font-weight:700;
  color:var(--cloud);letter-spacing:-.01em;margin-bottom:12px;line-height:1.3;
}
.step-desc{
  font-family:var(--sans);font-size:.86rem;font-weight:300;
  color:rgba(197,200,201,.5);line-height:1.85;
}

/* ── Testimonials ────────────────────────────────────── */
.testimonials-section{
  background:var(--midnight);
  padding:clamp(96px,12vw,160px) 0;
  position:relative;overflow:hidden;
}
.testimonials-section::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(156,139,106,.3),transparent);
}

/* Featured single quote layout */
.testi-featured{
  display:grid;grid-template-columns:1fr 2fr;
  gap:clamp(48px,7vw,100px);
  align-items:center;
}
.testi-left{
  display:flex;flex-direction:column;gap:0;
}
.testi-left .eyebrow{color:rgba(156,139,106,.6)}
.testi-left .eyebrow::before{background:rgba(156,139,106,.5)}
.testi-nav{
  display:flex;gap:12px;margin-top:40px;
}
.testi-dot{
  width:28px;height:2px;background:var(--border-gold);
  border:none;cursor:pointer;transition:background .2s,width .2s;
}
.testi-dot.active{background:var(--accent);width:44px;}

.testi-right{position:relative}
.testi-bigquote{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(6rem,12vw,13rem);
  line-height:.7;color:var(--accent);opacity:.2;
  position:absolute;top:-20px;left:-16px;
  user-select:none;pointer-events:none;
  font-weight:400;
}
.testi-body{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(1.5rem,2.8vw,2.4rem);
  font-weight:400;font-style:italic;
  color:var(--cloud);line-height:1.45;
  letter-spacing:-.01em;
  margin-bottom:40px;
  position:relative;z-index:1;
  transition:opacity .2s ease;
}
.testi-stars{display:flex;gap:4px;margin-bottom:16px}
.testi-stars span{color:var(--accent);font-size:.8rem}
.testi-name{
  font-family:var(--sans);font-size:.82rem;font-weight:700;
  color:var(--cloud);letter-spacing:.06em;text-transform:uppercase;
}
.testi-case{
  font-family:var(--sans);font-size:.64rem;font-weight:400;
  color:var(--slate);letter-spacing:.08em;margin-top:4px;
}

/* ── Attorney Bio Page ───────────────────────────────── */
.bio-section{
  background:var(--white);
  padding-top:80px; /* clears fixed nav */
  min-height:100vh;
}
.bio-layout{
  display:grid;
  grid-template-columns:320px 1fr;
  max-width:1160px;
  margin:0 auto;
  padding:0 40px;
  gap:0;
  align-items:start;
}

/* ── Sidebar ── */
.bio-sidebar{
  position:sticky;
  top:80px;
  padding:56px 40px 56px 0;
  border-right:1px solid rgba(184,149,90,.15);
}
.bio-photo-wrap{
  width:100%;
  aspect-ratio:3/4;
  background:var(--midnight);
  border:1px solid var(--border-gold);
  overflow:hidden;
  position:relative;
  margin-bottom:28px;
  display:flex;align-items:center;justify-content:center;
}
.bio-photo-wrap img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:center top;
  display:block;
}
.bio-mono-placeholder{
  position:absolute!important;
  inset:auto!important;
  top:50%!important;left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:52%!important;height:auto!important;
  max-width:180px;
  object-fit:initial!important;
  z-index:1;
  opacity:.55;
  filter:brightness(1.4) sepia(.3) saturate(.6);
  pointer-events:none;
}
/* Hide monogram once a real photo src is set */
.bio-photo-wrap img[src]:not([src=""]) ~ .bio-mono-placeholder{display:none}
.bio-sidebar-body{
  display:flex;flex-direction:column;
}
.bio-name{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:1.75rem;font-weight:500;
  color:var(--midnight);letter-spacing:.01em;line-height:1.1;
  margin-bottom:6px;
}
.bio-title{
  font-size:.72rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--goldleaf);
  margin-bottom:3px;
}
.bio-firm-line{
  font-size:.75rem;font-weight:400;letter-spacing:.08em;
  color:rgba(30,40,60,.45);
}
.bio-sidebar-rule{
  width:100%;height:1px;
  background:rgba(184,149,90,.18);
  margin:20px 0;
}
.bio-contact-block{
  display:flex;flex-direction:column;gap:10px;
  margin-bottom:4px;
}
.bio-contact-row{
  display:flex;align-items:center;gap:10px;
  font-size:.78rem;font-weight:400;
  color:rgba(30,40,60,.65);
  text-decoration:none;
  transition:color .2s;
}
a.bio-contact-row:hover{color:var(--goldleaf)}
.bio-contact-icon{
  width:14px;height:14px;flex-shrink:0;
  color:var(--goldleaf);opacity:.7;
}
.bio-cta-btn{
  display:block;width:100%;
  background:var(--midnight);color:var(--goldleaf);
  font-family:var(--sans);font-size:.62rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  text-align:center;padding:14px 20px;
  border:1px solid rgba(184,149,90,.3);
  margin-top:20px;margin-bottom:8px;
  transition:background .22s,border-color .22s;
}
.bio-cta-btn:hover{background:var(--justice);border-color:var(--goldleaf)}
.bio-cta-secondary{
  display:block;width:100%;
  font-family:var(--sans);font-size:.62rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;
  text-align:center;padding:13px 20px;
  color:rgba(30,40,60,.5);
  border:1px solid rgba(30,40,60,.12);
  transition:color .2s,border-color .2s;
}
.bio-cta-secondary:hover{color:var(--midnight);border-color:rgba(30,40,60,.3)}

/* ── Main content ── */
.bio-main{
  padding:56px 0 80px 56px;
}
.bio-intro-block{
  padding-bottom:40px;
  border-bottom:1px solid rgba(184,149,90,.15);
  margin-bottom:0;
}
.bio-intro-text{
  font-size:.97rem;font-weight:300;
  color:rgba(30,40,60,.78);line-height:1.9;
  margin-bottom:18px;
}
.bio-intro-text:last-child{margin-bottom:0}
.bio-cred-block{
  padding:36px 0;
  border-bottom:1px solid rgba(184,149,90,.15);
}
.bio-cred-block:last-child{border-bottom:none}
.bio-cred-heading{
  font-size:.6rem;font-weight:700;letter-spacing:.24em;
  text-transform:uppercase;color:var(--goldleaf);
  margin-bottom:20px;
}
.bio-cred-list{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:10px;
}
.bio-cred-list li{
  font-size:.93rem;font-weight:400;
  color:rgba(30,40,60,.75);
  padding-left:16px;
  position:relative;
}
.bio-cred-list li::before{
  content:'';
  position:absolute;left:0;top:.55em;
  width:5px;height:1px;
  background:var(--goldleaf);opacity:.6;
}

/* ── Responsive ── */
@media(max-width:900px){
  .bio-layout{grid-template-columns:1fr;padding:0 24px}
  .bio-sidebar{
    position:static;border-right:none;
    border-bottom:1px solid rgba(184,149,90,.15);
    padding:40px 0 36px;
    display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:start;
  }
  .bio-photo-wrap{margin-bottom:0}
  .bio-main{padding:40px 0 60px}
}
@media(max-width:600px){
  .bio-sidebar{grid-template-columns:1fr}
  .bio-photo-wrap{aspect-ratio:3/2;max-width:280px}
}

/* ── About Page ──────────────────────────────────────── */
.about-section{
  background:var(--white);
  padding:clamp(80px,10vw,130px) 0;
}
.about-grid{
  display:grid;grid-template-columns:1fr 1.15fr;
  gap:clamp(48px,7vw,96px);align-items:start;
}
.about-logo-col{position:relative}
.about-logo-box{
  width:100%;
  aspect-ratio:1/1;
  background:var(--midnight);
  border:1px solid rgba(184,149,90,.15);
  display:flex;align-items:center;justify-content:center;
  padding:clamp(48px,12%,96px);
}
.about-logo-box img{
  width:100%;height:auto;display:block;
}
.about-text-col{
  display:flex;flex-direction:column;gap:0;
  padding-top:8px;
}
.about-headline{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(2rem,3.5vw,3rem);
  font-weight:500;color:var(--midnight);
  line-height:1.2;letter-spacing:-.01em;
  margin-bottom:24px;
}
.about-body{
  font-size:.92rem;font-weight:300;
  color:rgba(30,40,60,.7);line-height:1.85;
  margin-bottom:16px;
}
.about-cred{
  font-size:.88rem;font-weight:400;
  color:rgba(30,40,60,.55);line-height:1.8;
  font-style:italic;
  border-left:2px solid rgba(184,149,90,.4);
  padding-left:16px;
  margin-bottom:28px;
}
.about-bullets{
  list-style:none;padding:0;margin:0 0 28px;
  display:flex;flex-direction:column;gap:10px;
}
.about-bullets li{
  font-size:.88rem;font-weight:400;
  color:rgba(30,40,60,.75);
  display:flex;align-items:flex-start;gap:10px;line-height:1.6;
}
.about-bullets li::before{
  content:'';
  flex-shrink:0;
  width:16px;height:1px;
  background:var(--goldleaf);
  margin-top:.65em;
}
.about-close{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:1.15rem;font-weight:500;font-style:italic;
  color:var(--midnight);letter-spacing:.01em;line-height:1.5;
  border-top:1px solid rgba(184,149,90,.2);
  padding-top:24px;
}
@media(max-width:768px){
  .about-grid{grid-template-columns:1fr;gap:40px}
  .about-logo-box{aspect-ratio:4/3;max-width:320px;margin:0 auto}
}

/* ── CTA Section ─────────────────────────────────────── */
.cta-section{
  background:var(--midnight);
  padding:clamp(60px,8vw,100px) 0;
  position:relative;overflow:hidden;
}
.cta-shield{display:none}
.cta-inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:72px;
}
.cta-left .eyebrow{color:rgba(156,139,106,.6)}
.cta-left .eyebrow::before{background:rgba(156,139,106,.5)}
.cta-title{
  font-family:'Cormorant Garamond',var(--serif);font-size:clamp(2.8rem,5vw,4.8rem);
  font-weight:500;line-height:1.0;letter-spacing:-.01em;
  color:var(--cloud);margin-bottom:20px;
}
.cta-title em{
  font-family:var(--serif);font-weight:400;
  font-style:italic;color:var(--accent);
}
.cta-body{
  font-size:.92rem;font-weight:300;
  color:rgba(197,200,201,.5);line-height:1.85;max-width:420px;
}
.cta-right{
  display:flex;flex-direction:column;align-items:flex-start;gap:18px;
  min-width:280px;flex-shrink:0;
}
.cta-phone{
  font-family:var(--sans);font-size:1.35rem;font-weight:700;
  color:var(--cloud);letter-spacing:.01em;
  transition:color .2s;
}
.cta-phone:hover{color:var(--accent)}
.cta-fine{
  font-size:.58rem;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:var(--slate);
}

/* ── Nav Dropdown ────────────────────────────────────── */
.nav-has-drop{position:relative}
.nav-has-drop>a::after{
  content:'▾';font-size:.55em;margin-left:5px;opacity:.6;
}
.nav-has-drop::after{
  content:'';position:absolute;top:100%;left:0;right:0;height:16px;
}
.nav-drop{
  display:none;
  position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);
  background:rgba(10,12,22,.97);
  backdrop-filter:blur(20px);
  border:1px solid rgba(184,149,90,.18);
  min-width:220px;
  padding:8px 0;
  z-index:2000;
}
.nav-drop li{list-style:none}
.nav-drop a{
  display:block;padding:10px 20px;
  font-size:.6rem;font-weight:500;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(235,236,240,.65)!important;
  transition:color .18s,background .18s;white-space:nowrap;
}
.nav-drop a:hover{color:var(--goldleaf)!important;background:rgba(184,149,90,.06)}
.nav-has-drop:hover .nav-drop{display:block}

/* ── Practice Area Pages ─────────────────────────────── */
.pa-hero-tag{
  font-size:.58rem;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;color:var(--goldleaf);
  margin-bottom:16px;
  display:flex;align-items:center;gap:12px;
}
.pa-hero-tag::before{content:'';width:28px;height:1px;background:var(--goldleaf);flex-shrink:0}
.breadcrumb{
  background:var(--midnight);
  border-bottom:1px solid rgba(184,149,90,.12);
  padding:12px 0;
}
.breadcrumb .container{
  display:flex;align-items:center;gap:8px;
  font-size:.62rem;font-weight:400;letter-spacing:.06em;
  text-transform:uppercase;color:var(--storm);
}
.breadcrumb a{color:var(--storm);transition:color .18s}
.breadcrumb a:hover{color:var(--goldleaf)}
.breadcrumb span{opacity:.4}
.breadcrumb .bc-current{color:var(--goldleaf);opacity:1}
.pa-body{
  background:var(--white);
  padding:clamp(56px,7vw,88px) 0 clamp(64px,8vw,100px);
}
.pa-layout{
  display:grid;
  grid-template-columns:1fr 300px;
  gap:clamp(40px,5vw,72px);
  align-items:start;
}
.pa-content{display:flex;flex-direction:column;gap:0}
.pa-section{
  padding:36px 0;
  border-bottom:1px solid rgba(184,149,90,.1);
}
.pa-section:first-child{padding-top:0}
.pa-section:last-child{border-bottom:none}
.pa-section h2{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:500;
  color:var(--midnight);letter-spacing:.01em;line-height:1.25;
  margin-bottom:16px;
}
.pa-section p{
  font-size:.92rem;font-weight:300;
  color:rgba(30,40,60,.72);line-height:1.9;
  margin-bottom:14px;
}
.pa-section p:last-child{margin-bottom:0}
.pa-section ul,.pa-section ol{
  padding-left:0;margin:0;
  display:flex;flex-direction:column;gap:10px;
  list-style:none;
}
.pa-section ul li,.pa-section ol li{
  font-size:.9rem;font-weight:300;
  color:rgba(30,40,60,.72);line-height:1.7;
  padding-left:18px;position:relative;
}
.pa-section ul li::before{
  content:'';position:absolute;left:0;top:.6em;
  width:6px;height:1px;background:var(--goldleaf);
}
.pa-section ol{counter-reset:pa-ol;gap:14px}
.pa-section ol li{counter-increment:pa-ol;padding-left:28px}
.pa-section ol li::before{
  content:counter(pa-ol);
  position:absolute;left:0;top:0;
  font-size:.65rem;font-weight:700;color:var(--goldleaf);
  font-family:var(--serif);
}
.pa-section strong{font-weight:600;color:var(--midnight)}
.pa-stat-row{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;background:rgba(184,149,90,.15);
  border:1px solid rgba(184,149,90,.15);
  margin:28px 0 0;
}
.pa-stat{
  background:var(--white);
  padding:24px 20px;
  display:flex;flex-direction:column;gap:6px;
}
.pa-stat-num{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:2rem;font-weight:500;color:var(--goldleaf);line-height:1;
}
.pa-stat-label{
  font-size:.62rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(30,40,60,.5);line-height:1.4;
}
/* Sidebar */
.pa-sidebar{
  position:sticky;top:88px;
  display:flex;flex-direction:column;gap:24px;
}
.pa-cta-box{
  background:var(--midnight);
  border:1px solid rgba(184,149,90,.2);
  padding:28px 24px;
}
.pa-cta-box-title{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:1.2rem;font-weight:500;color:var(--cloud);
  margin-bottom:8px;
}
.pa-cta-box-text{
  font-size:.78rem;font-weight:300;color:rgba(197,200,201,.55);
  line-height:1.7;margin-bottom:20px;
}
.pa-cta-box .btn-solid{
  display:flex;justify-content:center;
  margin-bottom:10px;font-size:.62rem;
}
.pa-cta-box .btn-outline{
  display:flex;justify-content:center;
  font-size:.62rem;
}
.pa-related{
  border:1px solid rgba(184,149,90,.15);
  padding:24px;
}
.pa-related h4{
  font-size:.58rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--goldleaf);
  margin-bottom:16px;
}
.pa-related ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.pa-related li a{
  font-size:.82rem;font-weight:400;color:rgba(30,40,60,.65);
  transition:color .18s;
  display:flex;align-items:center;gap:8px;
}
.pa-related li a::before{content:'→';font-size:.7rem;color:var(--goldleaf);opacity:.7}
.pa-related li a:hover{color:var(--midnight)}
/* FAQ */
.faq-section{
  background:var(--midnight);
  padding:clamp(64px,8vw,96px) 0;
  color:var(--cloud);
}
.faq-section .eyebrow{margin-bottom:8px}
.faq-section .sec-title,.faq-section h2,.faq-section h3{
  color:var(--cloud);
  margin-bottom:48px;font-size:clamp(1.8rem,3vw,2.6rem);
}
.faq-list{display:flex;flex-direction:column;max-width:800px}
.faq-item{
  border-bottom:1px solid rgba(184,149,90,.2);
}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:22px 0;background:none;border:none;cursor:pointer;
  text-align:left;
}
.faq-q-text{
  font-size:.95rem;font-weight:500;color:var(--gold-hi);line-height:1.4;
}
.faq-icon{
  width:16px;height:16px;flex-shrink:0;color:var(--goldleaf);
  transition:transform .25s;
}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{
  font-size:.88rem;font-weight:300;color:var(--storm);
  line-height:1.85;padding-bottom:22px;
  display:none;
}
.faq-item.open .faq-a{display:block}

/* ── Practice Area Bottom CTA ────────────────────────── */
.pa-cta-bottom{
  background:var(--midnight);
  padding:clamp(60px,8vh,100px) 0;
  text-align:center;
  border-top:1px solid rgba(184,149,90,.2);
}
.pa-cta-bottom h2{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;
  color:var(--cloud);margin-bottom:16px;line-height:1.2;
}
.pa-cta-bottom h2 em{color:var(--gold-hi);font-style:italic}
.pa-cta-bottom p{
  font-size:.9rem;font-weight:300;color:var(--storm);
  margin:0 auto 36px;max-width:400px;line-height:1.7;
}
.pa-cta-bottom .cta-btns{justify-content:center}

/* ── Testimonials Section (homepage) ─────────────────── */
.testi-section{
  background:var(--midnight);
  padding:clamp(80px,10vh,120px) 0;
  text-align:center;
  border-top:1px solid rgba(184,149,90,.15);
}
.testi-section blockquote{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(1.2rem,2vw,1.5rem);font-weight:400;font-style:italic;
  color:var(--cloud);line-height:1.5;
  max-width:720px;margin:24px auto 20px;
  opacity:1;transition:opacity .2s ease;
}
.testi-section cite{
  display:block;font-style:normal;font-size:.9rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--gold-hi);
  margin-bottom:4px;
}
.testi-section .testi-case-label{
  display:block;font-size:.8rem;font-weight:300;
  color:var(--slate);margin-bottom:32px;
}
.testi-dots{display:flex;justify-content:center;gap:10px}
.testi-dots .testi-dot{
  width:28px;height:2px;background:var(--border-gold);
  border:none;cursor:pointer;transition:background .2s,width .2s;padding:0;
}
.testi-dots .testi-dot.active{background:var(--accent);width:44px;}

@media(max-width:900px){
  .pa-layout{grid-template-columns:1fr}
  .pa-sidebar{position:static}
  .pa-stat-row{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){
  .pa-stat-row{grid-template-columns:1fr}
}

/* ── Contact Page ────────────────────────────────────── */
.ct-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:100vh;
  padding-top:72px; /* nav clearance */
}
/* Left dark panel */
.ct-left{
  background:var(--midnight);
  border-right:1px solid rgba(184,149,90,.15);
  display:flex;align-items:flex-start;
}
.ct-left-inner{
  padding:clamp(52px,7vw,88px) clamp(36px,5vw,72px);
  width:100%;
}
.ct-eyebrow{
  font-size:.58rem;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;color:var(--goldleaf);
  margin-bottom:20px;
  display:flex;align-items:center;gap:12px;
}
.ct-eyebrow::before{
  content:'';width:28px;height:1px;background:var(--goldleaf);flex-shrink:0;
}
.ct-headline{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:clamp(2.4rem,4vw,3.6rem);font-weight:500;
  color:var(--cloud);line-height:1.15;letter-spacing:-.01em;
  margin-bottom:20px;
}
.ct-headline em{color:var(--goldleaf);font-style:italic}
.ct-subline{
  font-size:.9rem;font-weight:300;color:rgba(197,200,201,.6);
  line-height:1.8;max-width:380px;
}
.ct-rule{
  width:100%;height:1px;
  background:rgba(184,149,90,.18);
  margin:32px 0;
}
.ct-info-list{
  display:flex;flex-direction:column;gap:22px;
}
.ct-info-row{
  display:flex;align-items:flex-start;gap:16px;
  text-decoration:none;
  transition:opacity .2s;
}
a.ct-info-row:hover{opacity:.8}
.ct-info-icon{
  width:18px;height:18px;flex-shrink:0;
  color:var(--goldleaf);margin-top:2px;
}
.ct-info-label{
  font-size:.58rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(184,149,90,.6);
  margin-bottom:3px;
}
.ct-info-val{
  font-size:.92rem;font-weight:400;color:var(--cloud);
  letter-spacing:.01em;
}
.ct-trust-list{
  display:flex;flex-direction:column;gap:12px;
}
.ct-trust-row{
  display:flex;align-items:center;gap:10px;
  font-size:.78rem;font-weight:400;color:rgba(197,200,201,.55);
  letter-spacing:.03em;
}
.ct-trust-icon{
  width:13px;height:13px;flex-shrink:0;
  color:var(--goldleaf);
}
/* Right form panel */
.ct-right{
  background:var(--white);
  display:flex;align-items:flex-start;
}
.ct-form-inner{
  padding:clamp(52px,7vw,88px) clamp(36px,5vw,72px);
  width:100%;
}
.ct-form-heading{
  font-family:'Cormorant Garamond',var(--serif);
  font-size:1.6rem;font-weight:500;color:var(--midnight);
  margin-bottom:6px;
}
.ct-form-sub{
  font-size:.76rem;font-weight:300;color:rgba(30,40,60,.45);
  letter-spacing:.04em;margin-bottom:36px;
}
.ct-form{
  display:flex;flex-direction:column;gap:20px;
}
.ct-row{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.ct-fgrp{
  display:flex;flex-direction:column;gap:7px;
}
.ct-label{
  font-size:.6rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(30,40,60,.5);
}
.ct-input{
  width:100%;
  background:var(--cloud);
  border:1px solid rgba(30,40,60,.1);
  border-radius:2px;
  padding:13px 16px;
  font-family:var(--sans);font-size:.85rem;font-weight:300;
  color:var(--midnight);
  outline:none;
  transition:border-color .2s,background .2s;
  appearance:none;
}
.ct-input:focus{
  border-color:rgba(184,149,90,.5);
  background:var(--white);
}
.ct-input::placeholder{color:rgba(30,40,60,.3)}
.ct-select{cursor:pointer}
.ct-textarea{
  min-height:130px;resize:vertical;line-height:1.6;
}
.ct-submit{
  width:100%;
  background:var(--goldleaf);color:var(--midnight);
  font-family:var(--sans);font-size:.66rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;
  padding:17px 24px;border:1px solid var(--goldleaf);
  cursor:pointer;
  transition:background .22s,border-color .22s;
  margin-top:4px;
}
.ct-submit:hover{background:var(--gold-hi);border-color:var(--gold-hi)}
.ct-form-disc{
  font-size:.62rem;font-weight:300;color:rgba(30,40,60,.35);
  line-height:1.7;font-style:italic;
  margin-top:-4px;
}
@media(max-width:900px){
  .ct-split{grid-template-columns:1fr;padding-top:72px}
  .ct-row{grid-template-columns:1fr}
}

/* ── Footer ──────────────────────────────────────────── */
footer{
  background:var(--onyx);
  border-top:1px solid var(--border);
  padding:clamp(52px,6vw,80px) 0 44px;
}
.footer-top{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:64px;
  padding-bottom:64px;border-bottom:1px solid var(--border);
}
.f-logo{height:24px;width:auto;opacity:.8;margin-bottom:20px}
.f-tag{
  font-size:.58rem;font-weight:500;letter-spacing:.2em;
  text-transform:uppercase;color:var(--slate);margin-bottom:18px;
}
.f-desc{
  font-size:.84rem;font-weight:300;
  color:rgba(143,157,178,.7);line-height:1.8;
  max-width:280px;margin-bottom:28px;
}
.social-row{display:flex;gap:10px}
.social-link{
  width:36px;height:36px;border-radius:50%;
  border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  color:var(--slate);
  transition:border-color .2s,color .2s,background .2s;
}
.social-link svg{width:14px;height:14px}
.social-link:hover{border-color:var(--accent);color:var(--accent);background:rgba(156,139,106,.08)}
.social-link[href="#"]{pointer-events:none;opacity:.35}
.f-col h4{
  font-size:.7rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:rgba(235,236,240,.5);
  margin-bottom:24px;
}
.f-col ul{display:flex;flex-direction:column;gap:12px}
.f-col a{
  font-size:.84rem;font-weight:300;
  color:rgba(143,157,178,.55);transition:color .2s;
}
.f-col a:hover{color:var(--accent)}
.f-cta{font-weight:600!important;color:var(--accent)!important}
.footer-bottom{
  padding-top:32px;display:flex;justify-content:space-between;
  align-items:flex-start;gap:40px;flex-wrap:wrap;
}
.f-copy{
  font-size:.68rem;font-weight:400;
  color:rgba(143,157,178,.3);letter-spacing:.04em;
}
.f-disc{
  font-size:11px;color:rgba(143,157,178,.45);
  max-width:580px;line-height:1.65;
}

/* ── Sticky Bar ──────────────────────────────────────── */
.sticky-bar{
  position:fixed;bottom:8px;left:8px;right:8px;border-radius:0 0 18px 18px;
  background:rgba(19,25,35,.97);
  border-top:1px solid var(--border-gold);
  backdrop-filter:blur(20px);
  display:flex;align-items:center;justify-content:space-between;
  padding:14px var(--gutter);
  z-index:800;
  transform:translateY(100%);
  transition:transform .5s var(--ease);
}
.sticky-bar.show{transform:translateY(0)}
.sticky-txt,.sticky-bar-txt{
  font-size:.65rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--storm);
}
.sticky-txt span,.sticky-bar-txt span{color:var(--slate);font-weight:400}
.sticky-btn,.sticky-bar-btn{
  font-size:.65rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;
  background:var(--accent);color:var(--midnight);
  padding:12px 26px;border-radius:2px;
  transition:background .2s;white-space:nowrap;
}
.sticky-btn:hover,.sticky-bar-btn:hover{background:var(--gold-hi)}

/* ── Scroll Reveal ───────────────────────────────────── */
.r,.rl,.rr{
  opacity:0;
  transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.r{transform:translateY(32px)}
.rl{transform:translateX(-36px)}
.rr{transform:translateX(36px)}
.r.on,.rl.on,.rr.on{opacity:1;transform:none}

/* ── Inner Page Hero ─────────────────────────────────── */
.hero-page{
  position:relative;
  display:flex;align-items:flex-end;
  background:var(--midnight);overflow:hidden;
  padding:80px 0 20px;
}
.hero-page .hero-content{
  padding-top:clamp(40px,6vh,60px);
  padding-bottom:0;
}
.hero-page::after{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--goldleaf),transparent);opacity:.4;
}
.hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(156,139,106,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(156,139,106,.035) 1px,transparent 1px);
  background-size:80px 80px;pointer-events:none;
}
.hero-light{
  position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 80% at 65% 25%,rgba(36,48,75,.55) 0%,transparent 65%);
  pointer-events:none;
}
.hero-mono{
  position:absolute;right:var(--gutter);bottom:-24px;
  font-family:var(--sans);font-size:clamp(7rem,18vw,15rem);
  font-weight:900;letter-spacing:-.04em;
  color:var(--cloud);opacity:.028;
  line-height:1;pointer-events:none;user-select:none;
}
.hero-content{
  position:relative;z-index:2;
  padding:clamp(100px,14vh,140px) var(--gutter) 0;
  width:100%;
}
.hero-content .hero-kicker{margin-bottom:28px}
.hero-content .hero-h1-inner{
  font-family:var(--sans);
  font-size:clamp(2.4rem,6vw,5.2rem);
  font-weight:800;line-height:1.04;letter-spacing:-.03em;color:var(--cloud);
  max-width:760px;
}
.hero-content .hero-h1-inner em{
  font-family:var(--serif);font-weight:400;font-style:italic;color:var(--accent);
}
/* Line-by-line reveal for inner page hero */
.line{display:block;overflow:visible;padding-bottom:0.2em}
.line>span{display:block;overflow:hidden;padding-bottom:0.2em;transform:translateY(110%);animation:lineUp .85s var(--ease) forwards}
.line:nth-child(2)>span{animation-delay:.1s}
.line:nth-child(3)>span{animation-delay:.2s}
@keyframes lineUp{to{transform:translateY(0)}}

/* ── About / inner page sections ─────────────────────── */
.intro-section{background:var(--white);padding:clamp(80px,10vw,130px) 0}
.intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(48px,7vw,100px);align-items:center}
.intro-visual{position:relative}
.intro-img-box{
  aspect-ratio:4/5;background:var(--midnight);border-radius:2px;overflow:hidden;
}
.intro-img-box img{width:100%;height:100%;object-fit:cover}
.intro-corner{
  position:absolute;bottom:-20px;right:-20px;width:72px;height:72px;
  border-right:2px solid var(--goldleaf);border-bottom:2px solid var(--goldleaf);
}
.sec-subtitle{font-size:.94rem;font-weight:300;color:#555;line-height:1.85}
.divider{width:36px;height:2px;background:var(--goldleaf);margin:28px 0}
.italic{font-style:italic}.gold{color:var(--goldleaf)}
.intro-values{margin-top:40px;display:flex;flex-direction:column}
.val-row{
  display:flex;gap:20px;align-items:flex-start;
  padding:20px 0;border-bottom:1px solid rgba(0,0,0,.07);
}
.val-row:last-child{border-bottom:none}
.val-num{font-size:.58rem;font-weight:700;letter-spacing:.15em;color:var(--goldleaf);flex-shrink:0;padding-top:2px}
.val-title{font-size:.88rem;font-weight:700;color:var(--midnight);margin-bottom:4px}
.val-desc{font-size:.84rem;font-weight:300;color:#666;line-height:1.75}

/* ── Shared footer grid (about/team/contact) ─────────── */
.footer-grid{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:64px;
  padding-bottom:64px;border-bottom:1px solid var(--border);
}
.f-brand-desc{
  font-size:.84rem;font-weight:300;
  color:rgba(143,157,178,.55);line-height:1.8;max-width:280px;margin-bottom:28px;
}

/* ── Responsive ──────────────────────────────────────── */
@media(max-width:1100px){
  .why-cards-grid{grid-template-columns:repeat(2,1fr)}
  .practice-grid{grid-template-columns:repeat(2,1fr)}
  .footer-top,.footer-grid{grid-template-columns:1fr 1fr;gap:44px}
}
@media(max-width:900px){
  .why-cards-grid{grid-template-columns:1fr}
  .fee-layout{grid-template-columns:1fr;gap:48px}
  .why-grid{grid-template-columns:1fr;gap:56px}
  .process-layout{grid-template-columns:1fr;gap:64px}
  .process-sticky{position:static}
  .cta-inner{grid-template-columns:1fr;gap:48px}
  .cta-right{align-items:flex-start}
  .testi-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}
  .hero-foot{flex-direction:column;gap:32px}
  .intro-grid{grid-template-columns:1fr}
  .hero-body{align-items:center}
  .hero-body .container{grid-template-columns:1fr;gap:0}
  .hero-visual-col{display:none}
  .hero-text-col{align-items:center}
  .hero-kicker{justify-content:center;margin-top:32px}
  .hero-h1{text-align:center}
  .hero-divider{background:linear-gradient(90deg,transparent,var(--border-gold),transparent)}
  .hero-foot{align-items:center;text-align:center}
  .hero-sub{text-align:center}
  .hero-btns{justify-content:center}
}
/* Mobile language bar — visible only on small screens */
.mob-lang-bar{display:none}
@media(max-width:768px){
  .mob-lang-bar{
    display:flex;align-items:center;justify-content:center;
    position:fixed;top:0;left:0;right:0;
    z-index:1001;
    background:var(--midnight);
    text-align:center;
    height:32px;
  }
  .mob-lang-bar a{
    font-family:var(--sans);font-size:.58rem;font-weight:600;
    letter-spacing:.15em;text-transform:uppercase;
    color:var(--goldleaf);
  }
  #nav{top:32px}
  /* Homepage hero: 32px lang bar + ~54px nav + breathing room */
  .hero-body{padding-top:110px}
  /* Inner page heroes need more top clearance: 32px lang bar + ~64px nav */
  .hero-page{padding-top:130px}
  /* Blog article top clears fixed header */
  .blog-article{padding-top:130px}
  /* Contact page split layout */
  .ct-split{padding-top:130px!important}
  /* Prevent iOS auto-zoom on form inputs (requires 16px) */
  .ct-input{font-size:16px}
  /* Anchor links clear fixed header */
  html{scroll-padding-top:100px}
  /* Sticky bar: full-width on mobile, respect iOS home indicator */
  .sticky-bar{left:0;right:0;bottom:0;border-radius:0;padding-bottom:max(14px,env(safe-area-inset-bottom))}
  .sticky-bar-btn,.sticky-btn{padding:10px 18px}
}
@media(max-width:768px){
  html{background:#0e0e0e}
  body{padding:0;background:#0e0e0e;overflow-x:hidden;max-width:100%}
  #site-frame{border-radius:0;min-height:100vh;overflow:visible}
  .nav-links{display:none}
  .hamburger{display:flex}
  .practice-grid{grid-template-columns:1fr}
  .footer-top,.footer-grid{grid-template-columns:1fr}
  .hero-h1 .h-light,.hero-h1 .h-bold{font-size:clamp(2.4rem,9vw,3.4rem)}
  .hero-h1 .h-serif{font-size:clamp(2.2rem,8.5vw,3.2rem)}
  .section-header{flex-direction:column;align-items:flex-start}
  .cred-inner{flex-direction:column;gap:4px}
  .cred-sep{display:none}
  .hsb-item{padding:24px 12px}
  .process-steps::before{display:none}
  #cur,#cur-r{display:none!important}
  .hsb-l{font-size:.74rem;letter-spacing:.08em}
  /* Practice bar — horizontal scroll on mobile */
  .practice-bar-inner{
    justify-content:flex-start;
    overflow-x:auto;
    gap:20px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .practice-bar-inner::-webkit-scrollbar{display:none}
  .pbar-link{padding:14px 0;flex-shrink:0}
  .pbar-sep{flex-shrink:0}
  /* Hero cleanup */
  #nav{left:0;right:0;border-radius:0}
  .mob-menu{inset:0;border-radius:0}
  .hero-no-fee{display:none}
  .hero-foot{gap:0}
  .hero-sub{margin-bottom:16px;font-size:.95rem}
  .hero-btns{flex-direction:column;align-items:stretch;width:100%;max-width:360px;margin:0 auto}
  .btn-white,.btn-ghost-white{justify-content:center;width:100%}
  /* Stats bar */
  .hsb-item{padding:20px 4px}
  .hsb-n{font-size:.75rem;letter-spacing:0}
  .hsb-l{display:none}
  /* Fee comparison — switch to stacked cards on mobile */
  .fee-layout::before{display:none}
  .fcc-desktop-only{display:none}
  .fcc-mobile-only{display:block}
  .fcc-footer{padding:16px 20px 14px}
  .fcc-amp-main{font-size:.82rem;white-space:normal}
  .fcc-title-block{padding:18px 20px 14px}
}
@media(max-width:480px){
  :root{--gutter:20px}
  .hero-btns{flex-direction:column;align-items:stretch}
  .btn-white,.btn-ghost-white{justify-content:center}
  .testi-grid{max-width:100%}
  .tcard{padding:36px 28px}
}

/* ── Reduced Motion ──────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .r,.rl,.rr{opacity:1;transform:none}
  .line>span{transform:none;animation:none}
}

/* ── Urgency Section ─────────────────────────────────── */
.urgency-section{
  background:var(--justice);
  border-top:1px solid var(--border-gold);
  border-bottom:1px solid var(--border-gold);
  padding:56px var(--gutter);
}
.urgency-inner{
  text-align:center;max-width:680px;margin:0 auto;
}
.urgency-heading{
  font-family:var(--sans);font-size:clamp(1.5rem,3.5vw,2.2rem);
  font-weight:700;letter-spacing:-.02em;color:var(--cloud);
  margin-bottom:16px;line-height:1.2;
}
.urgency-heading em{color:var(--goldleaf);font-style:normal}
.urgency-body{
  font-size:clamp(.9rem,1.8vw,1.05rem);font-weight:300;
  color:rgba(235,236,240,.7);line-height:1.75;margin-bottom:32px;
}
.urgency-body strong{color:var(--cloud);font-weight:600}
.urgency-btn{margin:0 auto}

/* ── Blog ────────────────────────────────────────────── */
.blog-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;
}
.blog-card{
  background:rgba(255,255,255,.03);border:1px solid var(--border-gold);border-radius:2px;
  padding:36px 32px;display:flex;flex-direction:column;gap:16px;
  transition:box-shadow .3s var(--ease),transform .3s var(--ease),background .3s;
}
.blog-card:hover{
  background:rgba(184,149,90,.05);box-shadow:0 12px 40px rgba(0,0,0,.25);transform:translateY(-3px);
}
.blog-card-meta{display:flex;align-items:center;gap:12px}
.blog-tag{
  font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--goldleaf);background:rgba(174,135,70,.08);
  padding:4px 10px;border-radius:2px;
}
.blog-date{font-size:.75rem;font-weight:300;color:var(--storm)}
.blog-card-title{
  font-family:var(--sans);font-size:1.08rem;font-weight:700;
  color:var(--cloud);line-height:1.4;margin:0;flex-grow:1;
}
.blog-card-excerpt{
  font-size:.85rem;font-weight:300;color:var(--storm);
  line-height:1.8;margin:0;
}
.blog-card-link{
  font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--goldleaf);text-decoration:none;margin-top:auto;
  display:inline-flex;align-items:center;gap:4px;
  transition:gap .2s ease;
}
.blog-card-link:hover{gap:8px}

/* Blog article page */
.blog-article{max-width:760px;margin:0 auto;padding:80px var(--gutter) 100px}
.blog-article-header{margin-bottom:48px;padding-bottom:32px;border-bottom:1px solid var(--border)}
.blog-article-meta{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.blog-article h1{
  font-family:var(--sans);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;
  color:var(--midnight);line-height:1.2;letter-spacing:-.02em;margin:0 0 16px;
}
.blog-article .blog-byline{
  font-size:.82rem;font-weight:300;color:rgba(13,13,13,.45);
}
.blog-article-body h2{
  font-family:var(--sans);font-size:1.25rem;font-weight:700;color:var(--midnight);
  margin:2.4rem 0 .8rem;letter-spacing:-.01em;
}
.blog-article-body h3{
  font-family:var(--sans);font-size:1rem;font-weight:700;color:var(--midnight);
  margin:1.8rem 0 .5rem;
}
.blog-article-body p{
  font-size:.95rem;font-weight:300;color:rgba(13,13,13,.78);
  line-height:1.9;margin:0 0 1.2rem;
}
.blog-article-body ul,.blog-article-body ol{
  padding-left:1.4rem;margin:0 0 1.4rem;
}
.blog-article-body li{
  font-size:.93rem;font-weight:300;color:rgba(13,13,13,.78);
  line-height:1.85;margin-bottom:.5rem;
}
.blog-article-body strong{font-weight:600;color:var(--midnight)}
.blog-callout{
  background:rgba(174,135,70,.07);border-left:3px solid var(--goldleaf);
  padding:20px 24px;border-radius:0 2px 2px 0;margin:2rem 0;
}
.blog-callout p{margin:0;font-size:.9rem;color:rgba(13,13,13,.72)}
.blog-cta-inline{
  background:var(--midnight);color:var(--cloud);
  border-radius:2px;padding:36px 40px;margin:3rem 0;text-align:center;
}
.blog-cta-inline h3{
  font-family:var(--sans);font-size:1.15rem;font-weight:700;color:var(--cloud);margin:0 0 8px;
}
.blog-cta-inline p{font-size:.88rem;color:var(--slate);margin:0 0 20px}
.blog-cta-inline .btn-solid{display:inline-block}

@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}}
