:root {
  --ink-950: #091821;
  --ink-900: #102630;
  --ink-800: #173946;
  --steel-500: #7d9baa;
  --accent-500: #b49a6b;
  --paper-50: #fcfbf8;
  --paper-100: #f3f0e9;
  --paper-150: #ece8df;
  --text: #101a20;
  --text-soft: #66727a;
  --line: rgba(15, 31, 42, 0.12);
  --line-light: rgba(255,255,255,.14);
  --shadow-sm: 0 14px 36px rgba(4,18,28,.08);
  --shadow-lg: 0 30px 100px rgba(2,14,24,.22);
  --radius-sm: 14px;
  --radius-md: 24px;
  --radius-lg: 38px;
  --radius-pill: 999px;
  --container: 1280px;
  --gutter: clamp(20px, 4vw, 56px);
  --section-y: clamp(78px, 9vw, 148px);
  --header-h: 76px;
  --ease-premium: cubic-bezier(.22,1,.36,1);
  --font-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--paper-50); color:var(--text); font-family:var(--font-sans); font-size:16px; line-height:1.6; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; }
body.is-locked { overflow:hidden; }
img { display:block; max-width:100%; height:auto; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button { color:inherit; }
:focus-visible { outline:3px solid rgba(125,155,170,.55); outline-offset:4px; }
.container { width:min(100% - (var(--gutter) * 2), var(--container)); margin-inline:auto; }
.section { position:relative; padding-block:var(--section-y); }
.section--dark { background:var(--ink-950); color:#fff; }
.section--editorial { background:var(--paper-100); }
.skip-link { position:fixed; left:16px; top:16px; z-index:9999; padding:10px 14px; border-radius:10px; background:#fff; transform:translateY(-180%); }
.skip-link:focus { transform:translateY(0); }

.eyebrow { display:inline-flex; align-items:center; gap:10px; margin-bottom:18px; color:var(--text-soft); font-size:12px; font-weight:760; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow::before { content:""; width:28px; height:1px; background:currentColor; opacity:.55; }
.eyebrow--light { color:rgba(255,255,255,.58); }
.display-title { margin:0; max-width:980px; font-size:clamp(48px,7.15vw,112px); line-height:.92; letter-spacing:-.057em; font-weight:430; text-wrap:balance; }
.display-title span,.display-title strong { display:block; }
.display-title strong { font-weight:790; }
.section-title { margin:0; max-width:940px; font-size:clamp(38px,5.15vw,74px); line-height:1.01; letter-spacing:-.046em; font-weight:600; text-wrap:balance; }
.section-title--light { color:#fff; }
.body-large { font-size:clamp(20px,2vw,28px); line-height:1.45; color:var(--text-soft); }

.button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 20px; border:1px solid transparent; border-radius:var(--radius-pill); cursor:pointer; font-size:14px; font-weight:740; letter-spacing:-.01em; transition:transform .3s var(--ease-premium), background-color .3s ease, border-color .3s ease, color .3s ease, box-shadow .3s ease; }
.button:hover { transform:translateY(-2px); }
.button--primary { background:var(--paper-50); color:var(--ink-950); box-shadow:0 10px 28px rgba(0,0,0,.12); }
.button--primary:hover { box-shadow:0 14px 38px rgba(0,0,0,.2); }
.button--secondary { background:transparent; border-color:var(--line); color:var(--text); }
.button--secondary:hover { background:rgba(14,37,52,.05); }
.button--ghost { min-height:44px; padding-inline:16px; border-color:rgba(255,255,255,.12); color:#fff; background:rgba(255,255,255,.04); }
.button--glass { color:#fff; background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.16); backdrop-filter:blur(18px) saturate(140%); -webkit-backdrop-filter:blur(18px) saturate(140%); }
.button--light { background:rgba(255,255,255,.94); color:var(--ink-950); }
.button--wide { width:100%; }
.text-link { display:inline-flex; align-items:center; gap:10px; font-size:14px; font-weight:750; }
.text-link span { transition:transform .3s var(--ease-premium); }
.text-link:hover span { transform:translateX(5px); }
.text-link--light { color:#fff; }

.glass-shell,.glass-panel { background:linear-gradient(140deg,rgba(255,255,255,.69),rgba(255,255,255,.35)); border:1px solid rgba(255,255,255,.34); box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 18px 50px rgba(0,0,0,.08); backdrop-filter:blur(24px) saturate(150%); -webkit-backdrop-filter:blur(24px) saturate(150%); }

.site-header { position:fixed; inset:0 0 auto 0; z-index:1000; padding:14px var(--gutter); pointer-events:none; }
.site-header__shell { width:min(100%,1440px); min-height:var(--header-h); margin-inline:auto; padding:10px 12px 10px 20px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:22px; border-radius:24px; background:linear-gradient(140deg,rgba(11,27,39,.12),rgba(255,255,255,.04)); border-color:rgba(255,255,255,.13); box-shadow:none; pointer-events:auto; transition:min-height .35s var(--ease-premium),background .35s ease,box-shadow .35s ease,border-color .35s ease; }
.site-header.is-scrolled .site-header__shell { min-height:64px; background:linear-gradient(140deg,rgba(12,29,40,.8),rgba(13,31,43,.64)); border-color:rgba(255,255,255,.16); box-shadow:0 18px 50px rgba(0,0,0,.18); }
.custom-logo { max-width:170px; max-height:46px; width:auto; height:auto; }
.brand-wordmark,.footer-wordmark { font-weight:820; letter-spacing:-.035em; }
.brand-wordmark { color:#fff; font-size:20px; }
.desktop-nav { justify-self:center; }
.desktop-nav__list { list-style:none; display:flex; gap:clamp(18px,2vw,34px); margin:0; padding:0; color:rgba(255,255,255,.82); font-size:14px; font-weight:620; }
.desktop-nav__list a { position:relative; }
.desktop-nav__list a::after { content:""; position:absolute; left:0; right:100%; bottom:-8px; height:1px; background:#fff; transition:right .3s var(--ease-premium); }
.desktop-nav__list a:hover::after,.desktop-nav__list .current-menu-item a::after { right:0; }
.site-header__actions { display:flex; align-items:center; gap:8px; }
.menu-toggle { display:none; min-width:48px; height:48px; border:0; border-radius:50%; background:rgba(255,255,255,.1); color:#fff; cursor:pointer; }
.menu-toggle__label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.menu-toggle__icon { width:18px; display:grid; gap:5px; }
.menu-toggle__icon i { display:block; height:1px; background:currentColor; transition:transform .3s ease; }
.menu-toggle[aria-expanded="true"] .menu-toggle__icon i:first-child { transform:translateY(3px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-toggle__icon i:last-child { transform:translateY(-3px) rotate(-45deg); }
.mobile-nav { position:fixed; inset:0; z-index:990; padding:104px 20px 20px; background:rgba(8,21,30,.88); backdrop-filter:blur(30px); -webkit-backdrop-filter:blur(30px); opacity:0; visibility:hidden; transition:opacity .32s ease,visibility .32s ease; pointer-events:auto; }
.mobile-nav.is-open { opacity:1; visibility:visible; }
.mobile-nav__inner { height:100%; display:flex; flex-direction:column; justify-content:space-between; }
.mobile-nav__list { list-style:none; margin:0; padding:20px 0; }
.mobile-nav__list li { border-bottom:1px solid rgba(255,255,255,.1); }
.mobile-nav__list a { display:block; padding:15px 4px; color:#fff; font-size:clamp(28px,8vw,44px); line-height:1.05; letter-spacing:-.04em; }
.mobile-nav__footer { display:grid; gap:10px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
.mobile-nav__footer .button--secondary { color:#fff; border-color:rgba(255,255,255,.16); }

.hero { min-height:94svh; position:relative; display:flex; align-items:end; background:radial-gradient(circle at 74% 18%,rgba(125,155,170,.2),transparent 28%),linear-gradient(135deg,#0b202a,#163642); color:#fff; overflow:hidden; isolation:isolate; }
.hero.has-image { background-image:var(--hero-image); background-size:cover; background-position:center; }
.hero__ambient { position:absolute; width:48vw; aspect-ratio:1; right:-12vw; top:8vh; border-radius:50%; background:radial-gradient(circle,rgba(180,154,107,.18),rgba(125,155,170,.07) 42%,transparent 70%); filter:blur(24px); z-index:-1; }
.hero__veil { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,15,23,.86) 0%,rgba(4,15,23,.6) 43%,rgba(4,15,23,.2) 76%,rgba(4,15,23,.34) 100%),linear-gradient(180deg,rgba(4,15,23,.14),rgba(4,15,23,.55)); }
.hero__inner { position:relative; z-index:1; padding-top:170px; padding-bottom:clamp(80px,9vw,132px); }
.hero__content { max-width:1020px; }
.hero .eyebrow { color:rgba(255,255,255,.68); }
.hero__lead { max-width:680px; margin:28px 0 0; color:rgba(255,255,255,.77); font-size:clamp(18px,1.8vw,24px); line-height:1.45; }
.hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:36px; }
.hero__trust { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:44px; color:rgba(255,255,255,.54); font-size:12px; letter-spacing:.09em; text-transform:uppercase; }
.hero__trust span { display:inline-flex; align-items:center; gap:8px; }
.hero__trust span::before { content:""; width:4px; height:4px; border-radius:50%; background:var(--accent-500); box-shadow:0 0 0 4px rgba(180,154,107,.08); }
.hero__scroll { position:absolute; right:var(--gutter); bottom:28px; z-index:2; width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); border-radius:50%; }
.hero__scroll span { width:1px; height:16px; background:#fff; opacity:.7; }

.editorial-grid { display:grid; grid-template-columns:80px minmax(0,1.5fr) minmax(280px,.7fr); gap:clamp(28px,5vw,86px); align-items:start; }
.section-index { color:var(--text-soft); font-size:13px; letter-spacing:.12em; }
.editorial-copy { padding-top:46px; }
.editorial-copy p { margin:0 0 28px; font-size:20px; color:var(--text-soft); }
.section-heading-row { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:clamp(42px,6vw,82px); }

.practice-section { overflow:hidden; }
.practice-section::after { content:""; position:absolute; inset:auto -20% -44% 30%; height:70%; background:radial-gradient(circle,rgba(125,155,170,.11),transparent 62%); pointer-events:none; }
.practice-explorer { display:grid; grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr); gap:clamp(32px,5vw,80px); align-items:start; }
.practice-list { border-top:1px solid rgba(255,255,255,.14); position:relative; z-index:2; }
.practice-row { display:grid; grid-template-columns:58px 1fr 28px; gap:18px; align-items:center; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.12); transition:padding .3s var(--ease-premium),background .3s ease,opacity .3s ease; }
.practice-row:hover,.practice-row.is-active { padding-left:14px; padding-right:14px; background:rgba(255,255,255,.045); }
.practice-row__index { color:rgba(255,255,255,.4); font-size:12px; }
.practice-row__title { font-size:clamp(23px,2.35vw,34px); letter-spacing:-.032em; line-height:1.1; }
.practice-row__arrow { justify-self:end; font-size:22px; }
.practice-preview { min-height:560px; position:sticky; top:110px; overflow:hidden; border-radius:var(--radius-lg); background:linear-gradient(145deg,#173946,#0c202a); border:1px solid rgba(255,255,255,.12); box-shadow:0 36px 90px rgba(0,0,0,.28); }
.practice-preview__media { position:absolute; inset:0; background:radial-gradient(circle at 70% 24%,rgba(180,154,107,.25),transparent 32%),linear-gradient(145deg,#173946,#0c202a); background-size:cover; background-position:center; transform:scale(1.02); transition:background-image .4s ease,transform .8s var(--ease-premium); }
.practice-preview__media.has-image { background-image:var(--practice-image); }
.practice-preview:hover .practice-preview__media { transform:scale(1.05); }
.practice-preview__overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,16,23,.08),rgba(5,16,23,.82) 76%,rgba(5,16,23,.95)); }
.practice-preview__content { position:absolute; inset:auto 0 0 0; z-index:2; padding:clamp(26px,4vw,46px); }
.practice-preview__label { display:block; margin-bottom:10px; color:rgba(255,255,255,.55); font-size:11px; font-weight:760; letter-spacing:.14em; text-transform:uppercase; }
.practice-preview h3 { margin:0; font-size:clamp(34px,4vw,58px); line-height:1; letter-spacing:-.045em; }
.practice-preview p { max-width:580px; margin:18px 0 24px; color:rgba(255,255,255,.66); }
.empty-state { padding:30px; border:1px dashed var(--line); border-radius:var(--radius-md); color:var(--text-soft); }
.section--dark .empty-state { border-color:rgba(255,255,255,.16); color:rgba(255,255,255,.62); }

.difference-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(36px,7vw,110px); align-items:center; }
.difference-visual { padding:clamp(24px,4vw,52px); border-radius:var(--radius-lg); background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(238,241,239,.56)); position:relative; overflow:hidden; }
.difference-visual::after { content:""; position:absolute; width:220px; height:220px; border-radius:50%; right:-90px; bottom:-120px; background:radial-gradient(circle,rgba(125,155,170,.2),transparent 70%); }
.difference-stat { display:grid; grid-template-columns:58px 1fr; gap:20px; padding:24px 0; border-top:1px solid var(--line); position:relative; z-index:1; }
.difference-stat strong { color:var(--text-soft); font-size:13px; }
.difference-stat span { font-size:clamp(20px,2vw,28px); line-height:1.25; letter-spacing:-.025em; }
.difference-copy .section-title { margin-bottom:24px; }

.experience-section { background:var(--ink-900); color:#fff; }
.experience-heading { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr); gap:clamp(30px,6vw,90px); align-items:end; margin-bottom:clamp(42px,6vw,78px); }
.experience-heading__copy { margin:0; color:rgba(255,255,255,.6); font-size:17px; }
.experience-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.13); }
.experience-card { min-height:330px; padding:26px clamp(20px,3vw,38px) 32px 0; border-right:1px solid rgba(255,255,255,.11); display:flex; flex-direction:column; align-items:flex-start; }
.experience-card + .experience-card { padding-left:clamp(20px,3vw,38px); }
.experience-card:last-child { border-right:0; }
.experience-card__meta { color:rgba(255,255,255,.42); font-size:11px; font-weight:760; letter-spacing:.12em; text-transform:uppercase; }
.experience-card h3 { margin:54px 0 14px; font-size:clamp(25px,2.5vw,34px); line-height:1.1; letter-spacing:-.035em; }
.experience-card p { margin:0 0 28px; color:rgba(255,255,255,.58); }
.experience-card .text-link { margin-top:auto; }
.experience-card--placeholder { opacity:.82; }

.team-section { background:#fff; }
.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.lawyer-card__media { display:block; aspect-ratio:4/5; overflow:hidden; border-radius:var(--radius-md); background:var(--paper-100); }
.lawyer-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease-premium),filter .5s ease; }
.lawyer-card:hover img { transform:scale(1.035); }
.lawyer-card__body { padding:18px 2px 0; }
.lawyer-card__body h3 { margin:0; font-size:22px; letter-spacing:-.025em; }
.lawyer-card__body p { margin:6px 0 0; color:var(--text-soft); }
.media-placeholder { width:100%; height:100%; display:block; background:linear-gradient(135deg,#dfe4e2,#eef0ed); }

.resources-section { background:var(--paper-100); }
.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.resource-card { border-top:1px solid var(--line); padding-top:16px; }
.resource-card__media { display:block; aspect-ratio:16/10; overflow:hidden; border-radius:var(--radius-sm); background:#e8e6df; }
.resource-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease-premium); }
.resource-card:hover img { transform:scale(1.03); }
.resource-card__body { padding-top:18px; }
.resource-card__meta { color:var(--text-soft); font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.resource-card h3 { margin:8px 0; font-size:24px; line-height:1.18; letter-spacing:-.03em; }
.resource-card p { color:var(--text-soft); }

.final-cta-section { background:var(--paper-50); padding-top:0; }
.final-cta { position:relative; overflow:hidden; padding:clamp(30px,5vw,70px); border-radius:var(--radius-lg); display:flex; align-items:end; justify-content:space-between; gap:40px; }
.final-cta::after { content:""; position:absolute; right:-10%; top:-80%; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,rgba(125,155,170,.2),transparent 70%); pointer-events:none; }
.final-cta h2 { margin:0; max-width:820px; font-size:clamp(34px,5vw,70px); line-height:1; letter-spacing:-.045em; }
.final-cta__actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; position:relative; z-index:2; }

.site-footer { padding:80px 0 26px; background:var(--ink-950); color:#fff; }
.site-footer__grid { display:grid; grid-template-columns:1.2fr .8fr 1fr 1fr; gap:clamp(30px,5vw,72px); }
.site-footer__brand p,.site-footer p,.site-footer li { color:rgba(255,255,255,.58); }
.footer-wordmark { font-size:28px; color:#fff; }
.footer-heading { color:#fff !important; font-size:12px; font-weight:750; text-transform:uppercase; letter-spacing:.12em; }
.footer-menu,.footer-contact { list-style:none; margin:0; padding:0; }
.footer-menu li,.footer-contact li { margin:8px 0; }
.footer-social { display:flex; flex-wrap:wrap; gap:14px; margin-top:22px; color:rgba(255,255,255,.62); font-size:13px; }
.site-footer a:hover { color:#fff; }
.site-footer__bottom { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:70px; padding-top:20px; border-top:1px solid rgba(255,255,255,.1); font-size:12px; }
.site-footer__bottom p:last-child { text-align:right; }

.assistant { position:fixed; inset:0; z-index:2000; display:grid; place-items:center; padding:clamp(12px,3vw,32px); opacity:0; visibility:hidden; transition:opacity .28s ease,visibility .28s ease; }
.assistant.is-open { opacity:1; visibility:visible; }
.assistant__backdrop { position:absolute; inset:0; background:rgba(4,13,20,.68); backdrop-filter:blur(9px); -webkit-backdrop-filter:blur(9px); }
.assistant__panel { position:relative; z-index:1; width:min(760px,100%); max-height:calc(100dvh - 24px); overflow:hidden; border-radius:28px; background:linear-gradient(145deg,rgba(253,253,251,.97),rgba(242,243,240,.9)); box-shadow:var(--shadow-lg); display:flex; flex-direction:column; }
.assistant__topbar { flex:0 0 auto; display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:24px 26px 18px; border-bottom:1px solid var(--line); }
.assistant__eyebrow { color:var(--text-soft); font-size:11px; font-weight:800; letter-spacing:.15em; }
.assistant__topbar h2 { margin:4px 0 0; font-size:26px; letter-spacing:-.03em; }
.assistant__close { width:42px; height:42px; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.7); cursor:pointer; font-size:25px; line-height:1; }
.assistant__form { min-height:0; display:flex; flex-direction:column; }
.assistant__scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:26px; -webkit-overflow-scrolling:touch; scrollbar-width:thin; }
.assistant__step { border:0; padding:0; margin:0; }
.assistant__step legend { margin-bottom:10px; font-size:clamp(24px,4vw,36px); line-height:1.05; font-weight:650; letter-spacing:-.04em; }
.assistant__hint { margin:0 0 20px; color:var(--text-soft); font-size:13px; }
.choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.choice-card { position:relative; cursor:pointer; }
.choice-card input { position:absolute; opacity:0; pointer-events:none; }
.choice-card span { min-height:64px; display:flex; align-items:center; padding:14px 16px; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.62); transition:border-color .2s ease,background .2s ease,transform .2s ease; }
.choice-card:hover span { transform:translateY(-1px); }
.choice-card input:checked + span { border-color:var(--ink-800); background:rgba(23,52,67,.08); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.field { display:grid; gap:7px; color:var(--text-soft); font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.field small { font-size:10px; font-weight:600; text-transform:none; }
.field--full { grid-column:1/-1; }
.field input,.field textarea { width:100%; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.76); color:var(--text); padding:14px 15px; outline:0; text-transform:none; letter-spacing:normal; font-weight:500; }
.field input:focus,.field textarea:focus { border-color:rgba(23,52,67,.45); box-shadow:0 0 0 4px rgba(120,152,170,.12); }
.consent { display:flex; gap:10px; margin-top:18px; color:var(--text-soft); font-size:12px; line-height:1.45; }
.assistant__actions { flex:0 0 auto; display:flex; justify-content:flex-end; gap:10px; padding:16px 26px max(16px,env(safe-area-inset-bottom)); border-top:1px solid var(--line); background:rgba(251,251,249,.88); }
.assistant__success { padding:36px 28px 40px; overflow-y:auto; }
.assistant__success h3 { margin:8px 0 12px; font-size:34px; letter-spacing:-.04em; }
.assistant__success p,.assistant__notice { color:var(--text-soft); }

.archive-hero,.single-hero,.page-hero { padding-top:180px; padding-bottom:90px; background:var(--ink-950); color:#fff; }
.archive-hero h1,.single-hero h1,.page-hero h1 { margin:0; max-width:980px; font-size:clamp(46px,7vw,96px); line-height:.98; letter-spacing:-.05em; }
.archive-hero p,.single-hero p,.page-hero p { max-width:760px; color:rgba(255,255,255,.65); font-size:20px; }
.content-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:clamp(36px,7vw,100px); }
.prose { font-size:18px; line-height:1.8; }
.prose > *:first-child { margin-top:0; }
.prose h2 { margin-top:2em; font-size:clamp(32px,4vw,52px); line-height:1.08; letter-spacing:-.035em; }
.prose h3 { margin-top:1.8em; font-size:28px; }
.sticky-panel { position:sticky; top:110px; padding:24px; border:1px solid var(--line); border-radius:var(--radius-md); }
.archive-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.archive-card { border-top:1px solid var(--line); padding-top:18px; }
.archive-card h2 { font-size:28px; line-height:1.12; letter-spacing:-.03em; }

.firm-story { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr); gap:clamp(40px,8vw,120px); align-items:start; }
.firm-story__aside { position:sticky; top:120px; padding:28px; border:1px solid var(--line); border-radius:var(--radius-md); background:rgba(255,255,255,.7); }
.firm-values { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:52px; }
.firm-value { padding:26px; border-top:1px solid var(--line); background:rgba(255,255,255,.46); }
.firm-value strong { display:block; margin-bottom:14px; font-size:28px; letter-spacing:-.04em; }
.firm-value p { margin:0; color:var(--text-soft); }
.contact-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr); gap:clamp(36px,7vw,100px); }
.contact-cards { display:grid; gap:12px; }
.contact-card { padding:22px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.contact-card span { display:block; color:var(--text-soft); font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.contact-card strong,.contact-card a { display:block; margin-top:6px; font-size:20px; letter-spacing:-.02em; }
.contact-conversion { padding:clamp(28px,5vw,56px); border-radius:var(--radius-lg); background:var(--ink-900); color:#fff; }
.contact-conversion p { color:rgba(255,255,255,.62); }
.contact-conversion__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.contact-conversion .button--secondary { color:#fff; border-color:rgba(255,255,255,.16); }

.reveal-item,.reveal-title { opacity:0; transform:translateY(24px); filter:blur(8px); transition:opacity .8s var(--ease-premium),transform .8s var(--ease-premium),filter .8s var(--ease-premium); }
.reveal-item.is-visible,.reveal-title.is-visible { opacity:1; transform:translateY(0); filter:blur(0); }

@media (max-width:1100px) {
  .desktop-nav,.header-assistant-trigger { display:none; }
  .menu-toggle { display:grid; place-items:center; }
  .team-grid { grid-template-columns:repeat(2,1fr); }
  .site-footer__grid { grid-template-columns:1.2fr 1fr; }
  .practice-explorer { grid-template-columns:1fr; }
  .practice-preview { position:relative; top:auto; min-height:440px; }
  .experience-grid { grid-template-columns:1fr; border-top:1px solid rgba(255,255,255,.13); }
  .experience-card,.experience-card + .experience-card { min-height:0; padding:28px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.11); }
  .experience-card:last-child { border-bottom:0; }
  .experience-card h3 { margin-top:24px; }
}

@media (max-width:820px) {
  :root { --header-h:62px; }
  .site-header { padding:10px 12px; }
  .site-header__shell { padding:7px 8px 7px 14px; border-radius:19px; }
  .header-cta { display:none; }
  .custom-logo { max-width:145px; max-height:38px; }
  .hero { min-height:100svh; }
  .hero__inner { padding-top:150px; padding-bottom:92px; }
  .hero__lead { margin-top:22px; }
  .hero__actions { margin-top:28px; }
  .hero__trust { margin-top:30px; }
  .editorial-grid { grid-template-columns:1fr; gap:22px; }
  .section-index { display:none; }
  .editorial-copy { padding-top:0; }
  .section-heading-row { align-items:flex-start; flex-direction:column; }
  .difference-grid,.experience-heading,.firm-story,.contact-layout { grid-template-columns:1fr; }
  .difference-visual { order:2; }
  .firm-story__aside { position:static; }
  .firm-values { grid-template-columns:1fr; }
  .resource-grid { grid-template-columns:1fr; }
  .final-cta { align-items:flex-start; flex-direction:column; }
  .site-footer__grid { grid-template-columns:1fr; }
  .site-footer__bottom { grid-template-columns:1fr; }
  .site-footer__bottom p:last-child { text-align:left; }
  .content-grid { grid-template-columns:1fr; }
  .sticky-panel { position:static; }
  .archive-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:560px) {
  :root { --gutter:18px; --section-y:74px; }
  .display-title { font-size:clamp(46px,14vw,66px); }
  .section-title { font-size:clamp(36px,11vw,52px); }
  .hero__veil { background:linear-gradient(180deg,rgba(4,15,23,.3),rgba(4,15,23,.74) 58%,rgba(4,15,23,.91)); }
  .hero__scroll { display:none; }
  .hero__actions { display:grid; grid-template-columns:1fr; }
  .hero__trust { display:grid; gap:9px; }
  .button { min-height:52px; }
  .practice-row { grid-template-columns:38px 1fr 22px; gap:12px; padding:21px 0; }
  .practice-row:hover,.practice-row.is-active { padding-left:0; padding-right:0; background:transparent; }
  .practice-row__title { font-size:25px; }
  .practice-preview { min-height:390px; }
  .practice-preview__content { padding:24px; }
  .team-grid { grid-template-columns:1fr; }
  .choice-grid,.form-grid { grid-template-columns:1fr; }
  .field--full { grid-column:auto; }
  .assistant { padding:8px; align-items:end; }
  .assistant__panel { width:100%; max-height:calc(100dvh - 8px); border-radius:24px 24px 16px 16px; }
  .assistant__topbar { padding:18px 18px 14px; }
  .assistant__topbar h2 { font-size:22px; }
  .assistant__scroll { padding:20px 18px; }
  .assistant__actions { padding:12px 18px max(12px,env(safe-area-inset-bottom)); }
  .assistant__actions .button { flex:1; padding-inline:12px; }
  .archive-grid { grid-template-columns:1fr; }
  .contact-conversion__actions { display:grid; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .reveal-item,.reveal-title { opacity:1; transform:none; filter:none; }
}

/* Legacy semantic bridge — staging migration aid. */
.prose--page { max-width:960px; }
.legacy-content { display:grid; gap:clamp(18px,2.4vw,30px); }
.legacy-content > h2,
.legacy-content > h3,
.legacy-content > h4 { margin-bottom:-8px; }
.legacy-content__richtext > *:first-child { margin-top:0; }
.legacy-content__richtext > *:last-child { margin-bottom:0; }
.legacy-content__media { margin:8px 0; overflow:hidden; border-radius:var(--radius-md); background:#e8e6df; }
.legacy-content__media img { display:block; width:100%; height:auto; }
.legacy-content ul { margin:0; padding-left:1.25em; }
.legacy-accordion { display:grid; gap:10px; }
.legacy-accordion details { border-top:1px solid var(--line); padding:16px 0; }
.legacy-accordion details:last-child { border-bottom:1px solid var(--line); }
.legacy-accordion summary { cursor:pointer; font-weight:700; }
.legacy-accordion details > div { padding-top:12px; color:var(--text-soft); }
.legacy-stat { display:flex; align-items:baseline; gap:16px; padding:18px 0; border-top:1px solid var(--line); }
.legacy-stat strong { font-size:clamp(38px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.legacy-stat span { color:var(--text-soft); }
.legacy-content blockquote { margin:8px 0; padding:24px 0 24px 28px; border-left:2px solid var(--ink-950); }
.legacy-content blockquote p { margin:0; font-size:clamp(24px,3vw,38px); line-height:1.25; letter-spacing:-.03em; }
.legacy-content blockquote cite { display:block; margin-top:12px; color:var(--text-soft); font-size:13px; font-style:normal; }

/* v0.4 — strategic home + legal intelligence */
.strategic-focus-section { background:var(--paper-50); }
.strategic-focus { display:grid; grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr); gap:clamp(44px,8vw,120px); align-items:start; }
.strategic-focus__intro { position:sticky; top:118px; }
.strategic-focus__intro .body-large { max-width:650px; margin:30px 0 0; font-size:clamp(18px,1.5vw,23px); }
.strategic-focus__grid { border-top:1px solid var(--line); }
.focus-card { min-height:190px; display:grid; grid-template-columns:56px minmax(0,1fr) auto; gap:20px; align-items:start; padding:32px 0; border-bottom:1px solid var(--line); }
.focus-card__index { padding-top:5px; color:var(--text-soft); font-size:12px; letter-spacing:.12em; }
.focus-card h3 { margin:0; font-size:clamp(28px,3vw,44px); line-height:1.02; letter-spacing:-.04em; }
.focus-card p { max-width:680px; margin:14px 0 0; color:var(--text-soft); font-size:17px; }
.focus-card__action { display:inline-flex; align-items:center; gap:10px; padding:8px 0; border:0; background:transparent; cursor:pointer; font-size:13px; font-weight:760; }
.focus-card__action i { font-style:normal; transition:transform .3s var(--ease-premium); }
.focus-card__action:hover i { transform:translate(3px,-3px); }

.legal-intelligence-section { padding-top:0; background:var(--paper-50); }
.legal-intelligence { position:relative; overflow:hidden; min-height:560px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(320px,.65fr); gap:clamp(40px,8vw,120px); align-items:end; padding:clamp(34px,6vw,82px); border-radius:clamp(28px,4vw,52px); background:radial-gradient(circle at 80% 12%,rgba(125,155,170,.24),transparent 26%),linear-gradient(135deg,#081922,#112f3b 66%,#163b49); color:#fff; box-shadow:var(--shadow-lg); isolation:isolate; }
.legal-intelligence__ambient { position:absolute; right:-8%; bottom:-40%; width:55%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(180,154,107,.22),transparent 68%); filter:blur(20px); z-index:-1; }
.legal-intelligence__copy { max-width:760px; }
.legal-intelligence__copy h2 { margin:0; font-size:clamp(42px,5.8vw,80px); line-height:.98; letter-spacing:-.052em; text-wrap:balance; }
.legal-intelligence__copy p { max-width:680px; margin:26px 0 0; color:rgba(255,255,255,.68); font-size:clamp(17px,1.5vw,21px); }
.legal-intelligence__actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:32px; }
.legal-intelligence__flow { display:grid; align-self:stretch; border:1px solid rgba(255,255,255,.12); border-radius:28px; background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035)); backdrop-filter:blur(20px) saturate(140%); -webkit-backdrop-filter:blur(20px) saturate(140%); }
.intelligence-step { position:relative; display:grid; grid-template-columns:38px 1fr; grid-template-rows:auto auto; column-gap:12px; align-content:center; min-height:112px; padding:18px 22px; border-bottom:1px solid rgba(255,255,255,.1); }
.intelligence-step:last-child { border-bottom:0; }
.intelligence-step span { grid-row:1 / 3; align-self:center; display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(255,255,255,.15); border-radius:50%; color:rgba(255,255,255,.56); font-size:11px; }
.intelligence-step strong { font-size:16px; }
.intelligence-step small { color:rgba(255,255,255,.5); }
.intelligence-step.is-active span { background:#fff; color:var(--ink-950); border-color:#fff; box-shadow:0 0 0 6px rgba(255,255,255,.06); }

.assistant__progress { flex:0 0 auto; height:3px; background:rgba(14,37,52,.08); overflow:hidden; }
.assistant__progress span { display:block; width:var(--assistant-progress,33.333%); height:100%; background:linear-gradient(90deg,var(--steel-500),var(--accent-500)); transition:width .4s var(--ease-premium); }
.assistant__layout { min-height:0; display:grid; grid-template-columns:240px minmax(0,1fr); flex:1 1 auto; overflow:hidden; }
.assistant__summary { padding:24px 20px; border-right:1px solid var(--line); background:rgba(239,238,233,.58); overflow-y:auto; }
.assistant__summary-label { display:block; margin-bottom:16px; color:var(--text-soft); font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.assistant__summary dl { margin:0; }
.assistant__summary dl div { padding:11px 0; border-top:1px solid var(--line); }
.assistant__summary dt { color:var(--text-soft); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.assistant__summary dd { margin:4px 0 0; font-size:13px; font-weight:720; line-height:1.3; }
.assistant__summary p { margin:24px 0 0; color:var(--text-soft); font-size:10px; line-height:1.5; }
.assistant__form { min-width:0; }
.assistant-question-group + .assistant-question-group { margin-top:26px; padding-top:24px; border-top:1px solid var(--line); }
.assistant-question-label { display:block; margin-bottom:12px; font-size:13px; font-weight:780; }
.choice-grid--compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.choice-grid--compact .choice-card span { min-height:58px; padding:12px; }
.assistant__success { grid-column:2; min-width:0; }
.assistant__success-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:22px 0; }
.assistant__success-summary div { padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.72); }
.assistant__success-summary span { display:block; color:var(--text-soft); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.assistant__success-summary strong { display:block; margin-top:4px; font-size:12px; line-height:1.3; }
.assistant__restart { margin-top:18px; padding:0; border:0; background:transparent; cursor:pointer; }

@media (max-width:980px) {
  .strategic-focus { grid-template-columns:1fr; }
  .strategic-focus__intro { position:static; }
  .legal-intelligence { grid-template-columns:1fr; align-items:start; }
  .legal-intelligence__flow { grid-template-columns:repeat(2,1fr); }
  .intelligence-step:nth-child(2) { border-right:0; }
  .intelligence-step { border-right:1px solid rgba(255,255,255,.1); }
  .assistant__layout { grid-template-columns:1fr; }
  .assistant__summary { display:none; }
  .assistant__success { grid-column:auto; }
}

@media (max-width:560px) {
  .focus-card { min-height:0; grid-template-columns:36px 1fr; padding:24px 0; }
  .focus-card__action { grid-column:2; justify-self:start; }
  .legal-intelligence { min-height:0; padding:28px 22px; border-radius:28px; }
  .legal-intelligence__actions { align-items:stretch; flex-direction:column; }
  .legal-intelligence__actions .button { width:100%; }
  .legal-intelligence__flow { grid-template-columns:1fr; }
  .intelligence-step { min-height:84px; border-right:0; }
  .choice-grid--compact { grid-template-columns:1fr; }
  .assistant__success-summary { grid-template-columns:1fr; }
}

.team-empty,.resources-empty,.practice-fallback { max-width:820px; padding:34px 0; }
.team-empty h3,.resources-empty h3 { margin:0; font-size:clamp(30px,4vw,52px); line-height:1.05; letter-spacing:-.04em; }
.team-empty p,.resources-empty p { max-width:650px; color:var(--text-soft); }
.practice-fallback { color:rgba(255,255,255,.74); font-size:clamp(20px,2.2vw,30px); }
.practice-fallback p { max-width:950px; }
.practice-fallback .button { margin-top:18px; }

/* v0.5 — La Firma + master practice architecture */
.firm-hero {
  position:relative;
  min-height:86svh;
  display:flex;
  align-items:end;
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:
    radial-gradient(circle at 78% 20%,rgba(125,155,170,.18),transparent 28%),
    linear-gradient(132deg,#071721 0%,#0d2834 58%,#143b48 100%);
}
.firm-hero__ambient {
  position:absolute;
  z-index:-1;
  width:min(680px,56vw);
  aspect-ratio:1;
  right:-12%;
  top:8%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(180,154,107,.18),rgba(125,155,170,.06) 42%,transparent 70%);
  filter:blur(22px);
}
.firm-hero__grid {
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);
  gap:clamp(40px,8vw,120px);
  align-items:end;
  padding-top:180px;
  padding-bottom:clamp(80px,8vw,118px);
}
.firm-hero__copy h1 {
  margin:0;
  max-width:940px;
  font-size:clamp(52px,7.4vw,108px);
  line-height:.93;
  letter-spacing:-.058em;
  font-weight:430;
  text-wrap:balance;
}
.firm-hero__copy h1 strong { display:block; font-weight:800; }
.firm-hero__copy p {
  max-width:720px;
  margin:28px 0 0;
  color:rgba(255,255,255,.68);
  font-size:clamp(18px,1.7vw,24px);
}
.firm-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.firm-hero__principles {
  display:grid;
  border-top:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);
}
.firm-hero__principles div {
  display:grid;
  grid-template-columns:34px 1fr;
  gap:4px 12px;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.firm-hero__principles div:last-child { border-bottom:0; }
.firm-hero__principles span { grid-row:1/3; color:rgba(255,255,255,.36); font-size:11px; letter-spacing:.08em; }
.firm-hero__principles strong { font-size:16px; }
.firm-hero__principles small { color:rgba(255,255,255,.48); }
.firm-editor-content { margin-top:28px; padding-top:26px; border-top:1px solid var(--line); }
.firm-operating-model__lead { max-width:560px; margin:0; color:rgba(255,255,255,.58); font-size:18px; }
.firm-model-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.13); }
.firm-model-card { min-height:300px; padding:32px clamp(24px,3vw,42px) 34px 0; border-right:1px solid rgba(255,255,255,.1); }
.firm-model-card + .firm-model-card { padding-left:clamp(24px,3vw,42px); }
.firm-model-card:last-child { border-right:0; }
.firm-model-card > span { color:rgba(255,255,255,.38); font-size:12px; letter-spacing:.12em; }
.firm-model-card h3 { margin:100px 0 12px; font-size:clamp(32px,3.4vw,48px); line-height:1; letter-spacing:-.045em; }
.firm-model-card p { max-width:390px; margin:0; color:rgba(255,255,255,.56); }
.firm-adn__intro { max-width:900px; }
.firm-mission-vision { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:clamp(48px,7vw,90px); background:var(--line); border:1px solid var(--line); }
.firm-statement { min-height:320px; padding:clamp(28px,4vw,54px); background:var(--paper-50); }
.firm-statement > span { display:block; color:var(--text-soft); font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.firm-statement p { margin:70px 0 0; font-size:clamp(24px,2.8vw,40px); line-height:1.22; letter-spacing:-.035em; }
.firm-values-premium { display:grid; grid-template-columns:repeat(3,1fr); margin-top:56px; border-top:1px solid var(--line); }
.firm-value-premium { min-height:260px; padding:28px 28px 30px 0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.firm-value-premium:nth-child(3n+2),.firm-value-premium:nth-child(3n+3) { padding-left:28px; }
.firm-value-premium:nth-child(3n) { border-right:0; }
.firm-value-premium > span { color:var(--text-soft); font-size:11px; letter-spacing:.12em; }
.firm-value-premium h3 { margin:64px 0 10px; font-size:clamp(26px,2.6vw,38px); letter-spacing:-.04em; }
.firm-value-premium p { max-width:360px; margin:0; color:var(--text-soft); }
.firm-positioning__grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.58fr); gap:clamp(40px,8vw,110px); align-items:end; }
.firm-positioning__copy p { margin:0 0 26px; color:var(--text-soft); font-size:19px; }

.practice-archive-hero {
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding-top:190px;
  padding-bottom:clamp(90px,9vw,140px);
  color:#fff;
  background:linear-gradient(135deg,#071821,#0f303d 70%,#163e4b);
}
.practice-archive-hero__ambient {
  position:absolute;
  z-index:-1;
  inset:-20% -10% auto auto;
  width:55vw;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(180,154,107,.18),transparent 67%);
  filter:blur(16px);
}
.practice-archive-hero__grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr); gap:clamp(42px,8vw,120px); align-items:end; }
.practice-archive-hero h1 { margin:0; max-width:900px; font-size:clamp(50px,7vw,100px); line-height:.94; letter-spacing:-.057em; font-weight:430; }
.practice-archive-hero h1 strong { display:block; font-weight:800; }
.practice-archive-hero__copy p { margin:0 0 28px; color:rgba(255,255,255,.64); font-size:19px; }
.practice-catalog__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(44px,6vw,78px) clamp(24px,4vw,52px); }
.practice-catalog-card { min-width:0; }
.practice-catalog-card__media {
  position:relative;
  min-height:clamp(310px,36vw,500px);
  display:block;
  overflow:hidden;
  border-radius:var(--radius-md);
  background:
    linear-gradient(180deg,rgba(6,20,29,.05),rgba(6,20,29,.72)),
    var(--catalog-image,linear-gradient(135deg,#173a47,#0b202a));
  background-size:cover;
  background-position:center;
  box-shadow:0 22px 60px rgba(5,20,29,.12);
}
.practice-catalog-card__media::after { content:""; position:absolute; inset:0; background:linear-gradient(145deg,transparent 45%,rgba(180,154,107,.08)); }
.practice-catalog-card__number,.practice-catalog-card__arrow { position:absolute; z-index:2; top:20px; display:grid; place-items:center; min-width:40px; height:40px; border:1px solid rgba(255,255,255,.16); border-radius:50%; color:#fff; background:rgba(7,24,33,.18); backdrop-filter:blur(12px); }
.practice-catalog-card__number { left:20px; font-size:11px; }
.practice-catalog-card__arrow { right:20px; font-size:18px; transition:transform .35s var(--ease-premium); }
.practice-catalog-card:hover .practice-catalog-card__arrow { transform:translate(3px,-3px); }
.practice-catalog-card__body { padding-top:22px; }
.practice-catalog-card__body > span { color:var(--text-soft); font-size:11px; font-weight:780; letter-spacing:.12em; text-transform:uppercase; }
.practice-catalog-card__body h3 { margin:8px 0 12px; font-size:clamp(30px,3.2vw,46px); line-height:1.03; letter-spacing:-.045em; }
.practice-catalog-card__body p { max-width:580px; margin:0 0 18px; color:var(--text-soft); }
.practice-empty { max-width:760px; padding:40px 0; border-top:1px solid var(--line); }
.practice-empty h3 { margin:0; font-size:clamp(30px,4vw,48px); letter-spacing:-.04em; }
.practice-empty p { color:var(--text-soft); }
.practice-archive-intelligence__grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.5fr); gap:clamp(40px,8vw,100px); align-items:end; }
.practice-archive-intelligence__grid p { color:rgba(255,255,255,.6); font-size:18px; }
.navigation.pagination { margin-top:64px; }
.nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.page-numbers { min-width:42px; min-height:42px; display:grid; place-items:center; padding:6px 12px; border:1px solid var(--line); border-radius:999px; }
.page-numbers.current { background:var(--ink-950); color:#fff; border-color:var(--ink-950); }

.practice-hero {
  position:relative;
  min-height:86svh;
  display:flex;
  align-items:end;
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:radial-gradient(circle at 78% 18%,rgba(125,155,170,.2),transparent 28%),linear-gradient(135deg,#071922,#113440);
}
.practice-hero.has-image { background-image:var(--practice-hero-image); background-size:cover; background-position:center; }
.practice-hero__veil { position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(3,14,21,.9) 0%,rgba(3,14,21,.68) 46%,rgba(3,14,21,.3) 80%),linear-gradient(180deg,rgba(4,15,22,.1),rgba(4,15,22,.62)); }
.practice-hero__inner { width:100%; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.46fr); gap:clamp(42px,7vw,100px); align-items:end; padding-top:180px; padding-bottom:clamp(76px,8vw,120px); }
.practice-hero__copy h1 { margin:0; max-width:960px; font-size:clamp(54px,7.2vw,104px); line-height:.94; letter-spacing:-.06em; text-wrap:balance; }
.practice-hero__copy p { max-width:760px; margin:26px 0 0; color:rgba(255,255,255,.69); font-size:clamp(18px,1.7vw,24px); }
.practice-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.practice-hero__signal { padding:24px 0; border-top:1px solid rgba(255,255,255,.15); border-bottom:1px solid rgba(255,255,255,.15); }
.practice-hero__signal span,.practice-hero__signal small { display:block; color:rgba(255,255,255,.45); }
.practice-hero__signal span { font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.practice-hero__signal strong { display:block; margin:10px 0; font-size:20px; letter-spacing:-.02em; }
.practice-hero__signal small { line-height:1.5; }
.practice-intro__grid { display:grid; grid-template-columns:minmax(0,.86fr) minmax(0,.78fr); gap:clamp(48px,9vw,140px); align-items:start; }
.practice-intro__heading { position:sticky; top:118px; }
.practice-intro__body { color:var(--text-soft); }
.practice-intro__body p:first-child { margin-top:0; font-size:clamp(20px,2vw,28px); line-height:1.5; color:var(--text); }
.practice-problem-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); }
.practice-problem-card { min-height:190px; display:grid; grid-template-columns:54px 1fr; gap:18px; padding:26px 28px 26px 0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.practice-problem-card:nth-child(even) { padding-left:28px; border-right:0; }
.practice-problem-card > span { color:var(--text-soft); font-size:11px; letter-spacing:.1em; }
.practice-problem-card p { margin:0; align-self:end; font-size:clamp(20px,2vw,28px); line-height:1.32; letter-spacing:-.025em; }
.practice-scope__layout { display:grid; grid-template-columns:minmax(280px,.56fr) minmax(0,1fr); gap:clamp(40px,8vw,120px); align-items:start; }
.practice-scope__sticky { position:sticky; top:118px; }
.practice-scope__sticky > p { max-width:430px; color:var(--text-soft); }
.practice-scope__sticky .button { margin-top:16px; }
.practice-scope__list { border-top:1px solid var(--line); }
.practice-service-row { display:grid; grid-template-columns:58px 1fr; gap:22px; padding:28px 0; border-bottom:1px solid var(--line); }
.practice-service-row > span { color:var(--text-soft); font-size:11px; letter-spacing:.12em; }
.practice-service-row h3 { margin:0; font-size:clamp(26px,3vw,40px); line-height:1.06; letter-spacing:-.04em; }
.practice-service-row p { max-width:650px; margin:10px 0 0; color:var(--text-soft); }
.practice-fit__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.62fr); gap:clamp(38px,8vw,100px); align-items:stretch; }
.practice-fit__column h2 { margin:0 0 36px; max-width:720px; font-size:clamp(38px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.practice-fit__column ul { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.14); }
.practice-fit__column li { position:relative; padding:17px 0 17px 24px; border-bottom:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.7); }
.practice-fit__column li::before { content:""; position:absolute; left:0; top:26px; width:5px; height:5px; border-radius:50%; background:var(--accent-500); }
.practice-fit__column--glass { align-self:start; padding:clamp(24px,3vw,38px); border:1px solid rgba(255,255,255,.13); border-radius:var(--radius-md); background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)); backdrop-filter:blur(20px); }
.practice-method__grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.practice-method-card { min-height:300px; padding:26px 30px 30px 0; border-right:1px solid var(--line); }
.practice-method-card + .practice-method-card { padding-left:30px; }
.practice-method-card:last-child { border-right:0; }
.practice-method-card > span { color:var(--text-soft); font-size:11px; }
.practice-method-card h3 { margin:92px 0 12px; font-size:clamp(30px,3vw,42px); letter-spacing:-.04em; }
.practice-method-card p { margin:0; color:var(--text-soft); }
.practice-lawyers-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.practice-lawyer-card__media { min-height:390px; display:block; overflow:hidden; border-radius:var(--radius-md); background:linear-gradient(145deg,#dcdedb,#c9d0cf); }
.practice-lawyer-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease-premium); }
.practice-lawyer-card:hover img { transform:scale(1.035); }
.practice-lawyer-card__media > span { display:block; width:100%; height:100%; background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.45),transparent 30%),linear-gradient(145deg,#d7dbd8,#bdc8c8); }
.practice-lawyer-card > div { padding-top:16px; }
.practice-lawyer-card > div > span { color:var(--text-soft); font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.practice-lawyer-card h3 { margin:5px 0 0; font-size:28px; letter-spacing:-.035em; }
.practice-faq__grid { display:grid; grid-template-columns:minmax(280px,.62fr) minmax(0,1fr); gap:clamp(44px,8vw,120px); align-items:start; }
.practice-faq__grid > div:first-child { position:sticky; top:118px; }
.practice-faq__grid > div:first-child > p { color:var(--text-soft); }
.practice-faq__items { border-top:1px solid var(--line); }
.practice-faq-item { border-bottom:1px solid var(--line); }
.practice-faq-item summary { list-style:none; display:grid; grid-template-columns:1fr 34px; gap:20px; align-items:center; padding:22px 0; cursor:pointer; font-size:clamp(20px,2vw,28px); font-weight:680; letter-spacing:-.025em; }
.practice-faq-item summary::-webkit-details-marker { display:none; }
.practice-faq-item summary span { display:grid; place-items:center; width:32px; height:32px; border:1px solid var(--line); border-radius:50%; transition:transform .3s ease; }
.practice-faq-item[open] summary span { transform:rotate(45deg); }
.practice-faq-item > div { padding:0 52px 24px 0; color:var(--text-soft); }
.practice-faq-item > div p { margin:0; }
.practice-contact-strip { padding-top:0; }
.practice-contact-strip__inner { display:flex; justify-content:space-between; gap:40px; align-items:end; padding:clamp(28px,4vw,52px); border-radius:var(--radius-lg); border-color:var(--line); }
.practice-contact-strip__inner h2 { margin:0; max-width:720px; font-size:clamp(34px,4.5vw,60px); line-height:1.02; letter-spacing:-.045em; }
.practice-contact-strip__inner p { max-width:700px; margin:16px 0 0; color:var(--text-soft); }

@media (max-width:980px) {
  .firm-hero__grid,.practice-archive-hero__grid,.practice-hero__inner,.practice-intro__grid,.practice-scope__layout,.practice-fit__grid,.practice-faq__grid,.firm-positioning__grid,.practice-archive-intelligence__grid { grid-template-columns:1fr; }
  .firm-hero__principles,.practice-hero__signal { max-width:560px; }
  .firm-model-grid,.practice-method__grid { grid-template-columns:1fr; }
  .firm-model-card,.firm-model-card + .firm-model-card,.practice-method-card,.practice-method-card + .practice-method-card { min-height:0; padding:28px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.1); }
  .practice-method-card,.practice-method-card + .practice-method-card { border-bottom:1px solid var(--line); }
  .firm-model-card:last-child,.practice-method-card:last-child { border-bottom:0; }
  .firm-model-card h3,.practice-method-card h3 { margin-top:36px; }
  .firm-values-premium { grid-template-columns:repeat(2,1fr); }
  .firm-value-premium,.firm-value-premium:nth-child(3n+2),.firm-value-premium:nth-child(3n+3) { padding:26px; border-right:1px solid var(--line); }
  .firm-value-premium:nth-child(even) { border-right:0; }
  .practice-intro__heading,.practice-scope__sticky,.practice-faq__grid > div:first-child { position:static; }
  .practice-lawyers-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:700px) {
  .firm-hero { min-height:100svh; }
  .firm-hero__grid,.practice-hero__inner { padding-top:150px; padding-bottom:76px; }
  .firm-hero__actions,.practice-hero__actions { display:grid; grid-template-columns:1fr; }
  .firm-mission-vision,.practice-catalog__grid,.practice-problem-grid { grid-template-columns:1fr; }
  .firm-statement { min-height:0; }
  .firm-statement p { margin-top:40px; }
  .firm-values-premium { grid-template-columns:1fr; }
  .firm-value-premium,.firm-value-premium:nth-child(3n+2),.firm-value-premium:nth-child(3n+3),.firm-value-premium:nth-child(even) { min-height:0; padding:24px 0; border-right:0; }
  .firm-value-premium h3 { margin-top:38px; }
  .practice-archive-hero { padding-top:160px; padding-bottom:86px; }
  .practice-catalog-card__media { min-height:340px; }
  .practice-problem-card,.practice-problem-card:nth-child(even) { min-height:0; grid-template-columns:36px 1fr; padding:22px 0; border-right:0; }
  .practice-service-row { grid-template-columns:38px 1fr; gap:14px; }
  .practice-lawyers-grid { grid-template-columns:1fr; }
  .practice-lawyer-card__media { min-height:430px; }
  .practice-contact-strip__inner { align-items:flex-start; flex-direction:column; }
  .practice-contact-strip__inner .button { width:100%; }
}

/* =========================================================
   V0.6 — TEAM / LAWYERS + RESOURCES / EDITORIAL SYSTEM
   ========================================================= */
.section--paper { background:var(--paper-100); }
.button--ghost-light { color:#fff; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.04); }
.button--ghost-light:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.28); }
.chip-row { display:flex; flex-wrap:wrap; gap:7px; }
.chip { display:inline-flex; align-items:center; min-height:30px; padding:5px 10px; border:1px solid var(--line); border-radius:var(--radius-pill); color:var(--text-soft); font-size:10px; font-weight:760; letter-spacing:.06em; text-transform:uppercase; }
.editorial-list { list-style:none; margin:28px 0 0; padding:0; border-top:1px solid var(--line); }
.editorial-list li { position:relative; padding:18px 0 18px 28px; border-bottom:1px solid var(--line); color:var(--text-soft); }
.editorial-list li::before { content:""; position:absolute; left:2px; top:28px; width:6px; height:6px; border-radius:50%; background:var(--accent-500); }
.editorial-list--compact { margin-top:32px; }

.team-archive-hero { min-height:78svh; display:flex; align-items:end; padding-top:170px; padding-bottom:clamp(72px,8vw,116px); color:#fff; background:radial-gradient(circle at 80% 14%,rgba(125,155,170,.22),transparent 30%),linear-gradient(135deg,#071820 0%,#102f3a 60%,#0b2029 100%); }
.team-archive-hero__grid { width:100%; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.5fr); gap:clamp(44px,8vw,120px); align-items:end; }
.team-archive-hero h1 { margin:10px 0 0; max-width:940px; font-size:clamp(54px,7vw,102px); line-height:.94; letter-spacing:-.06em; text-wrap:balance; }
.team-archive-hero__aside { padding-top:20px; border-top:1px solid rgba(255,255,255,.16); }
.team-archive-hero__aside p { margin:0 0 28px; color:rgba(255,255,255,.64); font-size:18px; }
.team-directory-section { background:#fff; }
.team-directory-heading { align-items:end; }
.team-directory-heading__copy { max-width:430px; margin:0; color:var(--text-soft); }
.team-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(26px,3vw,42px); }
.team-directory-card { min-width:0; }
.team-directory-card__media { position:relative; display:block; aspect-ratio:4/5; overflow:hidden; border-radius:var(--radius-md); background:linear-gradient(145deg,#d9ddda,#c6cecc); }
.team-directory-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .75s var(--ease-premium),filter .5s ease; }
.team-directory-card:hover .team-directory-card__media img { transform:scale(1.035); }
.team-directory-card__index { position:absolute; left:14px; bottom:14px; display:grid; place-items:center; min-width:40px; height:40px; padding:0 10px; border:1px solid rgba(255,255,255,.25); border-radius:50%; color:#fff; background:rgba(6,24,33,.25); backdrop-filter:blur(14px); font-size:10px; letter-spacing:.12em; }
.team-directory-card__body { padding:20px 2px 0; }
.team-directory-card__position { color:var(--text-soft); font-size:11px; font-weight:780; letter-spacing:.1em; text-transform:uppercase; }
.team-directory-card__body h2 { margin:6px 0 12px; font-size:clamp(30px,3vw,42px); line-height:1; letter-spacing:-.045em; }
.team-directory-card__body > p { min-height:76px; margin:0 0 18px; color:var(--text-soft); }
.team-directory-card__body .chip-row { margin-bottom:22px; }
.team-directory-empty,.resources-empty { max-width:820px; padding:clamp(28px,5vw,58px); border:1px solid var(--line); border-radius:var(--radius-lg); }
.team-directory-empty h3,.resources-empty h2 { margin:8px 0 12px; font-size:clamp(34px,4vw,56px); line-height:1.03; letter-spacing:-.045em; }
.team-directory-empty p,.resources-empty p { color:var(--text-soft); }
.team-principle-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1fr); gap:clamp(48px,8vw,120px); align-items:start; }
.team-principle-list { border-top:1px solid rgba(255,255,255,.16); }
.team-principle-list > div { display:grid; grid-template-columns:46px minmax(160px,.38fr) 1fr; gap:20px; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.12); }
.team-principle-list span { color:rgba(255,255,255,.42); font-size:11px; letter-spacing:.12em; }
.team-principle-list h3 { margin:0; color:#fff; font-size:22px; }
.team-principle-list p { margin:0; color:rgba(255,255,255,.58); }

.lawyer-profile-hero { min-height:94svh; display:flex; align-items:end; padding-top:130px; background:radial-gradient(circle at 78% 18%,rgba(125,155,170,.18),transparent 28%),var(--ink-950); color:#fff; }
.lawyer-profile-hero__grid { width:100%; display:grid; grid-template-columns:minmax(320px,.76fr) minmax(0,1.16fr); gap:clamp(42px,7vw,100px); align-items:end; }
.lawyer-profile-hero__media { align-self:end; aspect-ratio:4/5; max-height:740px; overflow:hidden; border-radius:var(--radius-lg) var(--radius-lg) 0 0; background:linear-gradient(145deg,#344a52,#172a32); }
.lawyer-profile-hero__media img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.lawyer-profile-hero__content { padding:0 0 clamp(66px,8vw,110px); }
.lawyer-profile-hero__content h1 { margin:9px 0 24px; max-width:820px; font-size:clamp(58px,7vw,104px); line-height:.9; letter-spacing:-.065em; text-wrap:balance; }
.lawyer-profile-hero__statement { max-width:760px; margin:0; color:rgba(255,255,255,.67); font-size:clamp(19px,2vw,27px); line-height:1.5; }
.lawyer-profile-hero__practices { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.lawyer-profile-hero__practices a { display:inline-flex; min-height:34px; align-items:center; padding:6px 12px; border:1px solid rgba(255,255,255,.15); border-radius:var(--radius-pill); color:rgba(255,255,255,.68); font-size:11px; }
.lawyer-profile-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.lawyer-profile-main { background:#fff; }
.lawyer-profile-main__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.42fr); gap:clamp(50px,9vw,130px); align-items:start; }
.lawyer-profile-prose { max-width:830px; }
.lawyer-profile-prose > .eyebrow { margin-bottom:24px; }
.lawyer-profile-block { margin-top:64px; }
.lawyer-profile-sidebar { min-width:0; }
.lawyer-profile-facts { position:sticky; top:110px; padding:clamp(24px,3vw,34px); border:1px solid var(--line); border-radius:var(--radius-md); }
.lawyer-fact { padding:20px 0; border-bottom:1px solid var(--line); }
.lawyer-fact:first-of-type { margin-top:8px; border-top:1px solid var(--line); }
.lawyer-fact > span { display:block; margin-bottom:9px; color:var(--text-soft); font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.lawyer-fact p { margin:5px 0; }
.lawyer-fact ul { list-style:none; margin:0; padding:0; }
.lawyer-fact li { margin:7px 0; color:var(--text-soft); line-height:1.45; }
.lawyer-profile-facts > .text-link { margin-top:22px; }
.lawyer-credentials-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(48px,8vw,120px); }
.lawyer-credentials-grid > div { min-width:0; }
.lawyer-articles-section { background:#fff; }

.resources-archive-hero { min-height:74svh; display:flex; align-items:end; padding-top:170px; padding-bottom:clamp(72px,8vw,116px); color:#fff; background:radial-gradient(circle at 18% 12%,rgba(180,154,107,.16),transparent 28%),linear-gradient(135deg,#081922,#11313d 70%,#0b222c); }
.resources-archive-hero__grid { width:100%; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.5fr); gap:clamp(44px,8vw,120px); align-items:end; }
.resources-archive-hero h1 { margin:10px 0 0; max-width:950px; font-size:clamp(54px,7vw,102px); line-height:.94; letter-spacing:-.06em; text-wrap:balance; }
.resources-archive-hero__aside { padding-top:20px; border-top:1px solid rgba(255,255,255,.16); }
.resources-archive-hero__aside p { margin:0 0 28px; color:rgba(255,255,255,.64); font-size:18px; }
.resources-directory-section { background:var(--paper-100); }
.resources-filter-row { display:flex; gap:7px; overflow-x:auto; padding:0 0 24px; margin-bottom:36px; border-bottom:1px solid var(--line); scrollbar-width:none; }
.resources-filter-row::-webkit-scrollbar { display:none; }
.resource-filter { flex:0 0 auto; display:inline-flex; align-items:center; min-height:38px; padding:7px 14px; border:1px solid var(--line); border-radius:var(--radius-pill); color:var(--text-soft); font-size:11px; font-weight:760; letter-spacing:.06em; }
.resource-filter:hover,.resource-filter.is-active { color:#fff; border-color:var(--ink-900); background:var(--ink-900); }
.resource-grid--archive { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:clamp(44px,6vw,80px); }
.resource-card--premium { min-width:0; }
.resource-card__placeholder { position:relative; display:block; width:100%; height:100%; overflow:hidden; background:linear-gradient(145deg,#dfe2de,#cbd1ce); }
.resource-card__placeholder::after { content:"SANDINO LAW"; position:absolute; left:18px; bottom:16px; color:rgba(9,24,33,.45); font-size:11px; font-weight:850; letter-spacing:.15em; }
.resource-card__placeholder i { position:absolute; width:190px; height:190px; right:-40px; top:-60px; border:1px solid rgba(9,24,33,.09); border-radius:50%; }
.resource-card--premium .resource-card__meta { display:flex; justify-content:space-between; gap:12px; }
.resource-card--premium h3 { margin:10px 0 12px; font-size:clamp(25px,2.3vw,34px); }
.resource-card__footer { display:flex; justify-content:space-between; gap:20px; margin-top:22px; padding-top:14px; border-top:1px solid var(--line); color:var(--text-soft); font-size:11px; }
.resource-pagination { margin-top:70px; }
.resource-pagination .page-numbers { list-style:none; display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin:0; padding:0; }
.resource-pagination .page-numbers li { margin:0; }
.resource-pagination a,.resource-pagination span { display:grid; place-items:center; min-width:42px; height:42px; padding:0 12px; border:1px solid var(--line); border-radius:var(--radius-pill); }
.resource-pagination .current { color:#fff; background:var(--ink-900); border-color:var(--ink-900); }
.resources-editorial-principle__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.52fr); gap:clamp(48px,8vw,120px); align-items:end; }
.resources-editorial-principle__grid > p { margin:0 0 5px; color:rgba(255,255,255,.6); font-size:18px; }

.article-hero { padding-top:clamp(170px,16vw,235px); padding-bottom:clamp(68px,8vw,112px); background:var(--ink-950); color:#fff; }
.article-hero__inner { max-width:1120px; }
.article-hero__meta { display:flex; flex-wrap:wrap; gap:10px 22px; color:rgba(255,255,255,.5); font-size:11px; font-weight:780; letter-spacing:.1em; text-transform:uppercase; }
.article-hero h1 { margin:20px 0 28px; max-width:1080px; font-size:clamp(48px,6.5vw,92px); line-height:.96; letter-spacing:-.058em; text-wrap:balance; }
.article-hero__excerpt { max-width:830px; margin:0; color:rgba(255,255,255,.66); font-size:clamp(19px,2vw,27px); line-height:1.5; }
.article-hero__byline { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:38px; padding-top:18px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.56); font-size:12px; }
.article-featured-media { margin-top:clamp(-40px,-3vw,-24px); position:relative; z-index:2; }
.article-featured-media img { width:100%; max-height:720px; object-fit:cover; border-radius:var(--radius-lg); }
.article-body-section { background:#fff; }
.article-body-grid { display:grid; grid-template-columns:190px minmax(0,800px); gap:clamp(48px,8vw,110px); justify-content:center; align-items:start; }
.article-share-rail { position:sticky; top:112px; display:grid; gap:8px; padding-top:8px; }
.article-share-rail > span { margin-top:14px; color:var(--text-soft); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.article-share-rail > span:first-child { margin-top:0; }
.article-share-rail strong { font-size:14px; }
.article-practice-links { display:grid; gap:6px; }
.article-practice-links a { color:var(--text-soft); font-size:13px; line-height:1.35; }
.article-practice-links a:hover { color:var(--text); }
.article-content { min-width:0; font-size:clamp(17px,1.45vw,19px); }
.article-content > p:first-of-type { font-size:clamp(20px,2vw,27px); line-height:1.58; color:var(--text); }
.article-content blockquote { margin:48px 0; padding:6px 0 6px 28px; border-left:2px solid var(--accent-500); font-size:clamp(24px,3vw,38px); line-height:1.25; letter-spacing:-.03em; }
.article-content img { border-radius:var(--radius-md); }
.article-author-section { padding:0 0 var(--section-y); background:#fff; }
.article-author-card { display:grid; grid-template-columns:180px minmax(0,1fr); gap:clamp(26px,5vw,60px); align-items:center; max-width:980px; padding:clamp(24px,4vw,44px); border:1px solid var(--line); border-radius:var(--radius-lg); }
.article-author-card__media { display:block; aspect-ratio:4/5; overflow:hidden; border-radius:18px; background:var(--paper-100); }
.article-author-card__media img { width:100%; height:100%; object-fit:cover; }
.article-author-card h2 { margin:5px 0 3px; font-size:clamp(32px,4vw,48px); letter-spacing:-.045em; }
.article-author-card strong { color:var(--text-soft); font-size:12px; }
.article-author-card p { max-width:620px; color:var(--text-soft); }
.related-resources-section { background:var(--paper-100); }

@media (max-width:1100px) {
  .team-directory-grid,.resource-grid--archive { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-archive-hero__grid,.resources-archive-hero__grid,.team-principle-grid,.resources-editorial-principle__grid { grid-template-columns:1fr; }
  .team-archive-hero__aside,.resources-archive-hero__aside { max-width:620px; }
  .team-directory-heading { align-items:flex-start; flex-direction:column; }
  .lawyer-profile-hero__grid { grid-template-columns:minmax(280px,.75fr) minmax(0,1fr); }
  .lawyer-profile-main__grid { grid-template-columns:minmax(0,1fr) 300px; gap:50px; }
}

@media (max-width:820px) {
  .lawyer-profile-hero { min-height:0; }
  .lawyer-profile-hero__grid,.lawyer-profile-main__grid,.lawyer-credentials-grid { grid-template-columns:1fr; }
  .lawyer-profile-hero__media { width:min(100%,560px); max-height:none; border-radius:var(--radius-lg); }
  .lawyer-profile-hero__content { padding-bottom:72px; }
  .lawyer-profile-facts { position:static; }
  .article-body-grid { grid-template-columns:1fr; }
  .article-share-rail { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 22px; padding-bottom:22px; border-bottom:1px solid var(--line); }
  .article-practice-links { grid-column:1/-1; }
}

@media (max-width:700px) {
  .team-archive-hero,.resources-archive-hero { min-height:100svh; padding-top:150px; padding-bottom:74px; }
  .team-directory-grid,.resource-grid--archive { grid-template-columns:1fr; }
  .team-directory-card__body > p { min-height:0; }
  .team-principle-list > div { grid-template-columns:36px 1fr; }
  .team-principle-list p { grid-column:2; }
  .lawyer-profile-hero { padding-top:132px; }
  .lawyer-profile-hero__media { aspect-ratio:4/5; }
  .lawyer-profile-hero__content h1 { font-size:clamp(50px,15vw,76px); }
  .lawyer-profile-hero__actions { display:grid; grid-template-columns:1fr; }
  .lawyer-profile-hero__actions .button { width:100%; }
  .resource-filter { min-height:42px; }
  .resource-card__footer { align-items:flex-start; flex-direction:column; gap:5px; }
  .article-hero { padding-top:152px; }
  .article-hero h1 { font-size:clamp(43px,13vw,67px); }
  .article-featured-media { width:100%; margin-top:0; }
  .article-featured-media img { border-radius:0; max-height:none; }
  .article-share-rail { grid-template-columns:1fr; }
  .article-author-card { grid-template-columns:90px 1fr; align-items:start; }
  .article-author-card__media { border-radius:14px; }
  .article-author-card p,.article-author-card .text-link { grid-column:1/-1; }
}
.lawyer-card__chips { margin-top:14px; }
.lawyer-card__chips .chip { font-size:9px; min-height:27px; }

/* =========================================================
   V0.7 — SANDINO LAW PREMIUM EXPERIENCE SYSTEM
   Brand hierarchy supplied by client: Navy > Gold > Light Gold > Ink
   ========================================================= */
:root {
  --brand-navy: #061a63;
  --brand-navy-deep: #020b35;
  --brand-navy-soft: #0d2f78;
  --brand-gold: #b77000;
  --brand-gold-deep: #855400;
  --brand-gold-light: #ffba52;
  --brand-ink: #242239;
  --brand-ivory: #f7f4ed;
  --brand-paper: #fcfbf8;
  --brand-text: #131528;
  --brand-muted: #686978;
  --brand-line: rgba(16, 20, 58, .12);
  --brand-glass: rgba(255,255,255,.085);
  --brand-glass-line: rgba(255,255,255,.18);
  --font-display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;
  --font-ui: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --container-wide: 1440px;
  --section-y-premium: clamp(92px, 10vw, 168px);
}

body { background:var(--brand-paper); color:var(--brand-text); font-family:var(--font-ui); }
.section { padding-block:var(--section-y-premium); }
.section-title { font-weight:570; color:var(--brand-text); }
.section-title em,.editorial-statement em { color:var(--brand-gold); font-family:var(--font-display); font-weight:500; font-style:italic; }
.body-large { color:var(--brand-muted); }

.brand-lockup { display:block; position:relative; width:clamp(150px,14vw,208px); aspect-ratio:2.7/1; }
.brand-lockup__logo { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:left center; transition:opacity .35s ease,filter .35s ease; }
.brand-lockup__logo--light { opacity:1; }
.brand-lockup__logo--color { opacity:0; }
.site-header.is-scrolled .brand-lockup__logo--light { opacity:1; }
.site-header.is-scrolled .brand-lockup__logo--color { opacity:0; }

.site-header { padding:14px clamp(14px,2.4vw,34px); }
.site-header__shell { width:min(100%, var(--container-wide)); min-height:70px; padding:8px 10px 8px 18px; border-radius:22px; background:linear-gradient(135deg,rgba(2,11,53,.18),rgba(255,255,255,.045)); border:1px solid rgba(255,255,255,.12); backdrop-filter:blur(20px) saturate(145%); -webkit-backdrop-filter:blur(20px) saturate(145%); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.site-header.is-scrolled .site-header__shell { min-height:62px; background:linear-gradient(135deg,rgba(2,11,53,.88),rgba(6,26,99,.7)); border-color:rgba(255,255,255,.14); box-shadow:0 14px 42px rgba(1,6,35,.28),inset 0 1px 0 rgba(255,255,255,.1); }
.desktop-nav__list { color:rgba(255,255,255,.76); gap:clamp(16px,1.8vw,30px); font-size:12px; font-weight:670; }
.desktop-nav__list a::after { background:var(--brand-gold-light); }
.button--header { min-height:44px; padding:0 17px; color:#fff; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.18); box-shadow:inset 0 1px 0 rgba(255,255,255,.09); }
.button--header:hover { background:rgba(255,255,255,.12); }
.button--header i { color:var(--brand-gold-light); font-style:normal; }

.premium-kicker { display:inline-flex; align-items:center; gap:10px; color:rgba(255,255,255,.67); font-size:11px; font-weight:790; letter-spacing:.145em; text-transform:uppercase; }
.premium-kicker i { width:22px; height:1px; background:var(--brand-gold-light); box-shadow:0 0 14px rgba(255,186,82,.45); }
.premium-kicker--dark { color:var(--brand-muted); }
.premium-kicker--dark i { background:var(--brand-gold); }

.premium-hero { position:relative; min-height:100svh; display:flex; align-items:flex-end; overflow:hidden; color:#fff; background:linear-gradient(125deg,var(--brand-navy-deep) 0%,#061a63 47%,#0b246d 100%); isolation:isolate; }
.premium-hero.has-image::before { content:""; position:absolute; inset:0; z-index:-4; background-image:var(--hero-image); background-size:cover; background-position:center; filter:saturate(.75) contrast(1.03); opacity:.43; }
.premium-hero.has-image::after { content:""; position:absolute; inset:0; z-index:-3; background:linear-gradient(90deg,rgba(2,11,53,.95) 0%,rgba(2,11,53,.78) 48%,rgba(2,11,53,.34) 100%),linear-gradient(0deg,rgba(2,11,53,.34),transparent 50%); }
.premium-hero__backdrop { position:absolute; inset:0; z-index:-2; pointer-events:none; overflow:hidden; }
.premium-hero__orb { position:absolute; display:block; border-radius:50%; filter:blur(8px); }
.premium-hero__orb--one { width:min(70vw,960px); aspect-ratio:1; right:-25%; top:-28%; background:radial-gradient(circle,rgba(34,74,182,.44),rgba(8,32,109,.08) 54%,transparent 70%); }
.premium-hero__orb--two { width:min(40vw,560px); aspect-ratio:1; right:12%; bottom:-26%; background:radial-gradient(circle,rgba(183,112,0,.22),transparent 66%); }
.premium-hero__grid { position:absolute; inset:0; opacity:.17; background-image:linear-gradient(rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:96px 96px; mask-image:linear-gradient(90deg,transparent 2%,black 28%,black 100%); }
.premium-hero__mark { position:absolute; width:min(58vw,780px); height:auto; right:-6%; bottom:-14%; opacity:.035; transform:rotate(-1deg); }
.premium-hero__layout { width:100%; display:grid; grid-template-columns:minmax(0,1.22fr) minmax(300px,.52fr); gap:clamp(44px,7vw,110px); align-items:end; padding-top:clamp(150px,16vh,210px); padding-bottom:clamp(74px,9vh,112px); }
.premium-hero__content { max-width:980px; }
.premium-display { margin:24px 0 0; font-size:clamp(56px,7vw,112px); line-height:.9; letter-spacing:-.06em; font-weight:470; text-wrap:balance; }
.premium-display span,.premium-display strong { display:block; }
.premium-display strong { max-width:900px; margin-top:8px; color:#fff; font-family:var(--font-display); font-weight:500; font-style:italic; letter-spacing:-.055em; }
.premium-hero__lead { max-width:780px; margin:30px 0 0; color:rgba(255,255,255,.68); font-size:clamp(18px,1.55vw,23px); line-height:1.58; }
.premium-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.button--gold { color:#1a160d; background:linear-gradient(135deg,#ffc56b,#e69d2a); border-color:rgba(255,255,255,.18); box-shadow:0 14px 38px rgba(183,112,0,.2),inset 0 1px 0 rgba(255,255,255,.55); }
.button--gold:hover { box-shadow:0 18px 48px rgba(183,112,0,.28),inset 0 1px 0 rgba(255,255,255,.6); }
.premium-hero__audience { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:28px; color:rgba(255,255,255,.48); font-size:11px; font-weight:720; letter-spacing:.1em; text-transform:uppercase; }
.premium-hero__audience i { width:3px; height:3px; border-radius:50%; background:var(--brand-gold-light); opacity:.72; }
.premium-hero__panel { min-height:430px; align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; padding:22px; border-radius:30px; background:linear-gradient(155deg,rgba(255,255,255,.12),rgba(255,255,255,.045)); border:1px solid rgba(255,255,255,.16); box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 90px rgba(0,0,0,.18); backdrop-filter:blur(24px) saturate(150%); -webkit-backdrop-filter:blur(24px) saturate(150%); }
.premium-hero__panel-head,.premium-hero__panel-foot { display:flex; justify-content:space-between; gap:14px; align-items:center; color:rgba(255,255,255,.45); font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.live-dot { display:inline-flex; align-items:center; gap:7px; }
.live-dot::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 0 5px rgba(255,186,82,.09); }
.premium-hero__panel-main { margin:auto 0; }
.premium-hero__panel-index { display:block; margin-bottom:32px; color:var(--brand-gold-light); font-size:12px; letter-spacing:.12em; }
.premium-hero__panel-main p { margin:0; max-width:380px; font-family:var(--font-display); font-size:clamp(28px,3vw,42px); line-height:1.05; letter-spacing:-.035em; }
.premium-hero__panel-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:24px; }
.premium-hero__panel-list span { padding:10px 12px; border:1px solid rgba(255,255,255,.1); border-radius:999px; color:rgba(255,255,255,.58); font-size:10px; text-align:center; }
.premium-hero__scroll { position:absolute; left:50%; bottom:24px; z-index:2; transform:translateX(-50%); display:flex; align-items:center; gap:10px; color:rgba(255,255,255,.38); font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
.premium-hero__scroll span { width:28px; height:42px; border:1px solid rgba(255,255,255,.2); border-radius:999px; position:relative; }
.premium-hero__scroll span::after { content:""; position:absolute; left:50%; top:8px; width:3px; height:8px; transform:translateX(-50%); border-radius:999px; background:var(--brand-gold-light); animation:slScroll 1.8s ease-in-out infinite; }
@keyframes slScroll { 0%,100%{transform:translate(-50%,0);opacity:.35} 50%{transform:translate(-50%,13px);opacity:1} }

.principle-section { background:var(--brand-ivory); }
.principle-grid { display:grid; grid-template-columns:150px minmax(0,1.2fr) minmax(260px,.48fr); gap:clamp(30px,6vw,92px); align-items:start; }
.principle-meta { display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
.principle-meta .section-index { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--brand-line); border-radius:50%; color:var(--brand-gold); font-size:11px; }
.editorial-statement { margin:0; max-width:1040px; font-size:clamp(48px,6vw,92px); line-height:.97; letter-spacing:-.055em; font-weight:540; text-wrap:balance; }
.principle-copy .body-large { max-width:800px; margin:34px 0 0; }
.premium-link { margin-top:28px; color:var(--brand-navy); }
.principle-pillars { border-top:1px solid var(--brand-line); }
.principle-pillars > div { display:grid; grid-template-columns:34px 1fr; gap:10px 16px; padding:20px 0; border-bottom:1px solid var(--brand-line); }
.principle-pillars span { color:var(--brand-gold); font-size:10px; }
.principle-pillars strong { font-size:16px; }
.principle-pillars small { grid-column:2; color:var(--brand-muted); line-height:1.45; }

.premium-section-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.42fr); gap:clamp(34px,7vw,110px); align-items:end; margin-bottom:clamp(46px,6vw,82px); }
.premium-section-head__copy { margin:0 0 5px; color:var(--brand-muted); font-size:17px; line-height:1.7; }
.solutions-section { background:#fff; }
.solutions-section .section-title { max-width:1040px; }
.solutions-explorer { display:grid; grid-template-columns:minmax(0,.88fr) minmax(340px,.72fr); gap:clamp(30px,5vw,72px); align-items:stretch; }
.solutions-list { border-top:1px solid var(--brand-line); }
.solution-row { min-height:84px; display:grid; grid-template-columns:52px 1fr 38px; gap:16px; align-items:center; border-bottom:1px solid var(--brand-line); color:var(--brand-text); transition:padding .35s var(--ease-premium),color .25s ease,background .25s ease; }
.solution-row:hover,.solution-row.is-active { padding-left:14px; color:var(--brand-navy); background:linear-gradient(90deg,rgba(6,26,99,.04),transparent); }
.solution-row__index { color:var(--brand-muted); font-size:10px; letter-spacing:.1em; }
.solution-row__title { font-size:clamp(20px,2vw,28px); font-weight:620; letter-spacing:-.025em; }
.solution-row__arrow { justify-self:end; color:var(--brand-gold); transition:transform .3s var(--ease-premium); }
.solution-row:hover .solution-row__arrow,.solution-row.is-active .solution-row__arrow { transform:translate(3px,-3px); }
.solutions-preview { position:sticky; top:112px; min-height:600px; overflow:hidden; border-radius:32px; color:#fff; background:linear-gradient(145deg,#07184e,#0c2f78); box-shadow:0 28px 80px rgba(6,26,99,.16); isolation:isolate; }
.solutions-preview__media { position:absolute; inset:0; z-index:-3; background-image:radial-gradient(circle at 76% 20%,rgba(255,186,82,.17),transparent 28%),linear-gradient(145deg,#07184e,#0c2f78); background-size:cover; background-position:center; transition:opacity .35s ease,transform .8s var(--ease-premium); }
.solutions-preview__media.has-image { background-image:linear-gradient(145deg,rgba(2,11,53,.45),rgba(2,11,53,.12)),var(--practice-image); }
.solutions-preview:hover .solutions-preview__media { transform:scale(1.025); }
.solutions-preview__scrim { position:absolute; inset:0; z-index:-2; background:linear-gradient(180deg,rgba(2,11,53,.2),rgba(2,11,53,.76) 78%,rgba(2,11,53,.94)); }
.solutions-preview__top { display:flex; justify-content:space-between; gap:20px; padding:22px 24px; color:rgba(255,255,255,.52); font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.solutions-preview__content { position:absolute; inset:auto 0 0; padding:clamp(26px,4vw,48px); }
.solutions-preview__label { color:var(--brand-gold-light); font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.solutions-preview h3 { margin:12px 0 14px; max-width:540px; font-family:var(--font-display); font-size:clamp(40px,4.5vw,64px); line-height:.96; font-weight:500; letter-spacing:-.045em; }
.solutions-preview p { max-width:560px; margin:0 0 24px; color:rgba(255,255,255,.68); font-size:16px; }

.audience-section { background:var(--brand-ivory); overflow:hidden; }
.audience-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.42fr); gap:clamp(34px,7vw,110px); align-items:end; margin-bottom:56px; }
.audience-heading .body-large { margin:0 0 5px; font-size:clamp(18px,1.6vw,23px); }
.audience-rail { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--brand-line); border-left:1px solid var(--brand-line); }
.audience-card { min-height:360px; display:flex; flex-direction:column; padding:26px; border-right:1px solid var(--brand-line); border-bottom:1px solid var(--brand-line); background:rgba(255,255,255,.25); transition:background .3s ease,transform .35s var(--ease-premium); }
.audience-card:hover { background:#fff; transform:translateY(-3px); }
.audience-card__index { color:var(--brand-gold); font-size:10px; letter-spacing:.1em; }
.audience-card h3 { margin:auto 0 14px; font-size:clamp(27px,2.8vw,40px); line-height:1.02; letter-spacing:-.04em; }
.audience-card p { margin:0; color:var(--brand-muted); }
.audience-card__action { align-self:flex-start; margin-top:22px; padding:0; border:0; background:none; color:var(--brand-navy); font-weight:740; cursor:pointer; }
.audience-card__action span { color:var(--brand-gold); margin-left:6px; }

.sectors-section { position:relative; overflow:hidden; color:#fff; background:linear-gradient(135deg,var(--brand-navy-deep),var(--brand-navy) 70%,#102c75); }
.sectors-section__ambient { position:absolute; width:700px; height:700px; right:-260px; top:-300px; border-radius:50%; background:radial-gradient(circle,rgba(255,186,82,.19),transparent 62%); filter:blur(10px); }
.sectors-layout { position:relative; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,.72fr); gap:clamp(50px,9vw,150px); align-items:start; }
.sectors-copy { position:sticky; top:120px; }
.sectors-copy .section-title { margin-top:22px; max-width:760px; }
.sectors-copy > p { max-width:620px; margin:28px 0 0; color:rgba(255,255,255,.58); font-size:18px; }
.sectors-list { border-top:1px solid rgba(255,255,255,.14); }
.sector-row { min-height:72px; display:grid; grid-template-columns:42px 1fr 28px; gap:12px; align-items:center; border-bottom:1px solid rgba(255,255,255,.1); transition:padding .3s var(--ease-premium),background .25s ease; }
.sector-row:hover { padding-left:12px; background:linear-gradient(90deg,rgba(255,255,255,.055),transparent); }
.sector-row span { color:rgba(255,255,255,.34); font-size:10px; }
.sector-row strong { font-size:clamp(19px,2vw,27px); font-weight:540; }
.sector-row i { justify-self:end; color:var(--brand-gold-light); font-style:normal; }

.methodology-section { background:#fff; }
.methodology-intro { max-width:1000px; margin-bottom:56px; }
.methodology-track { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--brand-line); border-left:1px solid var(--brand-line); }
.methodology-step { min-height:280px; display:grid; grid-template-columns:42px 1fr; gap:16px; padding:26px; border-right:1px solid var(--brand-line); border-bottom:1px solid var(--brand-line); }
.methodology-step__index { color:var(--brand-gold); font-size:10px; }
.methodology-step > div { display:flex; flex-direction:column; justify-content:flex-end; }
.methodology-step h3 { margin:0 0 12px; font-size:clamp(28px,2.7vw,38px); letter-spacing:-.04em; }
.methodology-step p { margin:0; color:var(--brand-muted); }

.experience-section--premium { color:#fff; background:var(--brand-ink); }
.premium-section-head--dark .premium-section-head__copy { color:rgba(255,255,255,.58); }
.experience-grid--premium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.12); border-left:1px solid rgba(255,255,255,.12); }
.experience-card--premium { min-height:440px; display:flex; flex-direction:column; padding:28px; border-right:1px solid rgba(255,255,255,.12); border-bottom:1px solid rgba(255,255,255,.12); background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.008)); }
.experience-card--premium .experience-card__meta { color:rgba(255,255,255,.4); }
.experience-card__signal { display:block; margin:auto 0 20px; color:var(--brand-gold-light); font-family:var(--font-display); font-size:clamp(48px,5vw,74px); font-weight:500; letter-spacing:-.04em; }
.experience-card--premium h3 { margin:0 0 14px; font-size:clamp(27px,2.7vw,38px); line-height:1.05; }
.experience-card--premium p { margin:0 0 24px; color:rgba(255,255,255,.58); }

.technology-section { background:var(--brand-ivory); }
.technology-shell { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,.9fr) minmax(360px,.62fr); gap:clamp(44px,7vw,100px); padding:clamp(34px,6vw,80px); border-radius:38px; color:#fff; background:linear-gradient(135deg,var(--brand-navy-deep),var(--brand-navy)); box-shadow:0 34px 100px rgba(6,26,99,.17); }
.technology-shell__glow { position:absolute; width:520px; height:520px; right:-180px; top:-210px; border-radius:50%; background:radial-gradient(circle,rgba(255,186,82,.22),transparent 64%); pointer-events:none; }
.technology-copy { position:relative; z-index:1; }
.technology-copy h2 { margin:24px 0 0; max-width:820px; font-size:clamp(42px,5.2vw,76px); line-height:.98; letter-spacing:-.05em; }
.technology-copy h2 em { color:var(--brand-gold-light); font-family:var(--font-display); font-weight:500; }
.technology-copy > p { max-width:720px; margin:26px 0 0; color:rgba(255,255,255,.64); font-size:17px; line-height:1.72; }
.technology-standards { display:flex; flex-wrap:wrap; gap:7px; margin-top:30px; }
.technology-standards span { padding:8px 11px; border:1px solid rgba(255,255,255,.13); border-radius:999px; color:rgba(255,255,255,.58); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.technology-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:32px; }
.technology-interface { position:relative; align-self:stretch; min-height:470px; padding:22px; border:1px solid rgba(255,255,255,.15); border-radius:28px; background:linear-gradient(145deg,rgba(255,255,255,.115),rgba(255,255,255,.04)); box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 22px 60px rgba(0,0,0,.16); backdrop-filter:blur(22px); }
.technology-interface__top { display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.45); font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.technology-interface__top i { color:var(--brand-gold-light); font-style:normal; }
.technology-interface__question { margin:60px 0 26px; font-family:var(--font-display); font-size:clamp(30px,3vw,44px); line-height:1.03; }
.technology-interface__options { display:grid; gap:9px; }
.technology-interface__options span { padding:14px 16px; border:1px solid rgba(255,255,255,.1); border-radius:14px; color:rgba(255,255,255,.62); background:rgba(255,255,255,.025); }
.technology-interface__options span.is-active { color:#fff; border-color:rgba(255,186,82,.36); background:linear-gradient(90deg,rgba(255,186,82,.12),rgba(255,255,255,.035)); }
.technology-interface__status { position:absolute; left:22px; right:22px; bottom:22px; display:flex; justify-content:space-between; gap:16px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.46); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.technology-interface__status span { display:flex; align-items:center; gap:8px; }
.technology-interface__status span i { width:6px; height:6px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 0 5px rgba(255,186,82,.08); }

.consultation-section { background:#fff; padding-top:0; }
.consultation-shell { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:34px 70px; align-items:end; padding:clamp(32px,6vw,74px); border:1px solid var(--brand-line); border-radius:38px; background:linear-gradient(135deg,#fff,var(--brand-ivory)); box-shadow:0 24px 70px rgba(22,21,42,.07); }
.consultation-shell::after { content:""; position:absolute; width:430px; height:430px; right:-200px; top:-230px; border-radius:50%; background:radial-gradient(circle,rgba(183,112,0,.12),transparent 68%); }
.consultation-shell h2 { margin:18px 0 0; max-width:900px; font-size:clamp(42px,5.6vw,82px); line-height:.97; letter-spacing:-.055em; }
.consultation-shell h2 em { color:var(--brand-gold); font-family:var(--font-display); font-weight:500; }
.consultation-shell p { margin:24px 0 0; color:var(--brand-muted); font-size:18px; }
.consultation-shell__actions { position:relative; z-index:2; display:grid; gap:9px; min-width:230px; }
.button--navy { color:#fff; background:var(--brand-navy); border-color:var(--brand-navy); }
.button--outline-dark { color:var(--brand-navy); background:transparent; border-color:rgba(6,26,99,.2); }
.consultation-shell__note { grid-column:1/-1; padding-top:20px; border-top:1px solid var(--brand-line); color:var(--brand-muted); font-size:11px; }

.site-footer { background:var(--brand-navy-deep); }
.footer-wordmark { color:#fff; font-family:var(--font-display); font-weight:500; }

.assistant__eyebrow { color:var(--brand-gold); }
.assistant__panel { border:1px solid rgba(255,255,255,.5); }
.assistant__summary { background:linear-gradient(145deg,var(--brand-navy-deep),var(--brand-navy)); }
.assistant__summary-label { color:var(--brand-gold-light); }
.choice-card input:checked + span { border-color:rgba(6,26,99,.45); background:rgba(6,26,99,.07); }

@media (max-width:1180px) {
  .premium-hero__layout { grid-template-columns:minmax(0,1fr) minmax(300px,.45fr); gap:40px; }
  .premium-hero__panel { min-height:390px; }
  .principle-grid { grid-template-columns:100px minmax(0,1fr); }
  .principle-pillars { grid-column:2; display:grid; grid-template-columns:repeat(3,1fr); }
  .principle-pillars > div { display:block; padding-right:18px; border-right:1px solid var(--brand-line); }
  .principle-pillars > div:last-child { border-right:0; }
  .principle-pillars strong,.principle-pillars small { display:block; margin-top:8px; }
  .solutions-explorer { grid-template-columns:minmax(0,.9fr) minmax(320px,.65fr); }
  .audience-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .methodology-track { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .technology-shell { grid-template-columns:1fr minmax(320px,.58fr); }
}

@media (max-width:980px) {
  .premium-hero { min-height:auto; }
  .premium-hero__layout { min-height:100svh; grid-template-columns:1fr; align-content:end; padding-top:150px; padding-bottom:92px; }
  .premium-hero__panel { display:none; }
  .premium-display { max-width:900px; }
  .principle-grid,.premium-section-head,.audience-heading,.sectors-layout,.technology-shell { grid-template-columns:1fr; }
  .principle-meta { flex-direction:row; align-items:center; }
  .principle-pillars { grid-column:1; }
  .solutions-explorer { grid-template-columns:1fr; }
  .solutions-preview { position:relative; top:auto; min-height:500px; }
  .sectors-copy { position:static; }
  .experience-grid--premium { grid-template-columns:1fr; }
  .experience-card--premium { min-height:320px; }
  .experience-card__signal { margin-top:70px; }
  .technology-interface { min-height:430px; }
  .consultation-shell { grid-template-columns:1fr; }
  .consultation-shell__actions { grid-template-columns:repeat(2,minmax(0,1fr)); min-width:0; }
}

@media (max-width:760px) {
  :root { --section-y-premium:clamp(72px,18vw,100px); }
  .site-header { padding:10px; }
  .site-header__shell { min-height:60px; border-radius:18px; padding:7px 8px 7px 14px; }
  .brand-lockup { width:145px; }
  .button--header { display:none; }
  .premium-hero__grid { background-size:64px 64px; opacity:.12; }
  .premium-hero__mark { width:120vw; right:-42%; bottom:-9%; }
  .premium-hero__layout { padding-top:132px; padding-bottom:82px; }
  .premium-display { margin-top:20px; font-size:clamp(48px,14vw,68px); line-height:.92; letter-spacing:-.055em; }
  .premium-display strong { margin-top:6px; }
  .premium-hero__lead { margin-top:24px; font-size:17px; line-height:1.55; }
  .premium-hero__actions { display:grid; grid-template-columns:1fr; }
  .premium-hero__actions .button { width:100%; }
  .premium-hero__audience { gap:8px; font-size:9px; }
  .premium-hero__scroll { display:none; }
  .principle-grid { grid-template-columns:1fr; }
  .principle-meta { gap:14px; }
  .editorial-statement { font-size:clamp(42px,12vw,60px); }
  .principle-copy .body-large { margin-top:26px; font-size:19px; }
  .principle-pillars { display:grid; grid-template-columns:1fr; }
  .principle-pillars > div { display:grid; grid-template-columns:34px 1fr; padding:18px 0; border-right:0; }
  .principle-pillars strong { margin-top:0; }
  .principle-pillars small { grid-column:2; margin-top:4px; }
  .premium-section-head,.audience-heading { margin-bottom:36px; }
  .solution-row { min-height:72px; grid-template-columns:38px 1fr 28px; }
  .solution-row__title { font-size:19px; }
  .solutions-preview { min-height:430px; border-radius:24px; }
  .solutions-preview__content { padding:24px; }
  .solutions-preview h3 { font-size:42px; }
  .audience-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; border-left:0; gap:10px; padding-bottom:8px; scrollbar-width:none; }
  .audience-rail::-webkit-scrollbar { display:none; }
  .audience-card { flex:0 0 min(84vw,340px); min-height:330px; scroll-snap-align:start; border:1px solid var(--brand-line); border-radius:22px; background:rgba(255,255,255,.55); }
  .sectors-list { margin-top:34px; }
  .sector-row { min-height:66px; }
  .methodology-track { grid-template-columns:1fr; border-left:0; }
  .methodology-step { min-height:210px; border-left:1px solid var(--brand-line); }
  .experience-card--premium { min-height:350px; padding:24px; }
  .technology-shell { padding:26px; border-radius:28px; }
  .technology-copy h2 { font-size:clamp(40px,11vw,58px); }
  .technology-actions { display:grid; grid-template-columns:1fr; }
  .technology-actions .button { width:100%; }
  .technology-interface { min-height:410px; padding:18px; border-radius:22px; }
  .consultation-shell { padding:28px; border-radius:28px; }
  .consultation-shell h2 { font-size:clamp(40px,11vw,58px); }
  .consultation-shell__actions { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .premium-hero__scroll span::after { animation:none; }
}

/* =========================================================
   Sandino Law Premium v0.8.0 — interaction & evidence layer
   ========================================================= */

html { overflow-x:clip; }
.site-scroll-progress { position:absolute; left:clamp(32px,4.5vw,68px); right:clamp(32px,4.5vw,68px); bottom:8px; z-index:3; height:1px; transform:scaleX(0); transform-origin:left center; background:linear-gradient(90deg,var(--brand-gold-light),rgba(255,255,255,.72)); box-shadow:0 0 12px rgba(255,186,82,.32); opacity:.72; pointer-events:none; will-change:transform; }
.site-header:not(.is-scrolled) .site-scroll-progress { opacity:.34; }
.site-header.is-scrolled .site-scroll-progress { opacity:.82; }

.solution-row__mobile-copy { display:none; }

/* Sector intelligence explorer */
.sectors-copy { display:flex; flex-direction:column; align-items:flex-start; }
.sector-context { width:100%; max-width:690px; margin-top:42px; padding:24px; border:1px solid rgba(255,255,255,.14); border-radius:26px; background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035)); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 20px 60px rgba(0,0,0,.12); backdrop-filter:blur(20px) saturate(140%); -webkit-backdrop-filter:blur(20px) saturate(140%); }
.sector-context__top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.1); }
.sector-context__top span { color:var(--brand-gold-light); font-size:11px; font-weight:780; letter-spacing:.12em; }
.sector-context__top small { color:rgba(255,255,255,.38); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.sector-context h3 { margin:26px 0 12px; font-family:var(--font-display); font-size:clamp(34px,3.5vw,54px); line-height:1; font-weight:500; letter-spacing:-.04em; }
.sector-context > p { margin:0; color:rgba(255,255,255,.62); font-size:15px; line-height:1.7; }
.sector-context__tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:24px; }
.sector-context__tags span { padding:8px 10px; border:1px solid rgba(255,255,255,.11); border-radius:999px; color:rgba(255,255,255,.56); font-size:9px; letter-spacing:.07em; text-transform:uppercase; }
.sector-row { width:100%; appearance:none; border:0; border-bottom:1px solid rgba(255,255,255,.1); border-radius:0; padding:0; color:#fff; background:transparent; font-family:inherit; text-align:left; cursor:pointer; }
.sector-row:first-child { border-top:0; }
.sector-row:hover,.sector-row.is-active { padding-left:12px; background:linear-gradient(90deg,rgba(255,255,255,.065),transparent); }
.sector-row.is-active strong { color:#fff; }
.sector-row.is-active i { transform:translate(3px,-3px); }
.sector-row i { transition:transform .3s var(--ease-premium); }
.sector-row__mobile-copy { display:none; }

/* Experience explorer */
.experience-explorer { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.52fr); gap:clamp(24px,4vw,54px); align-items:stretch; }
.experience-stage { position:relative; min-height:650px; display:flex; flex-direction:column; overflow:hidden; padding:clamp(26px,4vw,48px); border:1px solid rgba(255,255,255,.13); border-radius:34px; background:radial-gradient(circle at 92% 2%,rgba(255,186,82,.13),transparent 28%),linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 28px 80px rgba(0,0,0,.12); transition:opacity .16s ease,transform .2s var(--ease-premium),filter .2s ease; }
.experience-stage::after { content:""; position:absolute; width:420px; height:420px; right:-220px; bottom:-250px; border-radius:50%; border:1px solid rgba(255,255,255,.07); box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 110px rgba(255,255,255,.012); pointer-events:none; }
.experience-stage.is-changing { opacity:.54; transform:translateY(4px); filter:blur(2px); }
.experience-stage__head { position:relative; z-index:2; display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.42); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.experience-stage__status { display:flex; align-items:center; gap:8px; }
.experience-stage__status i { width:6px; height:6px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 0 5px rgba(255,186,82,.07); }
.experience-stage__hero { position:relative; z-index:2; display:grid; grid-template-columns:minmax(160px,.36fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:end; margin:auto 0 52px; }
.experience-stage__hero strong { color:var(--brand-gold-light); font-family:var(--font-display); font-size:clamp(48px,6vw,88px); line-height:.88; font-weight:500; letter-spacing:-.05em; }
.experience-stage__hero h3 { margin:0; max-width:760px; font-size:clamp(34px,4vw,58px); line-height:1; font-weight:560; letter-spacing:-.045em; text-wrap:balance; }
.experience-stage__detail { position:relative; z-index:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,4vw,52px); padding-top:26px; border-top:1px solid rgba(255,255,255,.1); }
.experience-stage__detail small,.experience-stage__result small { display:block; margin-bottom:10px; color:rgba(255,255,255,.35); font-size:9px; font-weight:760; letter-spacing:.12em; text-transform:uppercase; }
.experience-stage__detail p { margin:0; color:rgba(255,255,255,.6); line-height:1.65; }
.experience-stage__result { position:relative; z-index:2; margin-top:30px; padding:20px 22px; border:1px solid rgba(255,255,255,.09); border-radius:20px; background:rgba(255,255,255,.035); }
.experience-stage__result p { margin:0; max-width:880px; color:rgba(255,255,255,.7); }
.experience-stage__result .text-link { margin-top:16px; }
.text-link.is-disabled { display:none; }
.experience-rail { border-top:1px solid rgba(255,255,255,.12); }
.experience-selector { width:100%; min-height:138px; display:grid; grid-template-columns:32px 1fr 24px; gap:14px; align-items:center; padding:18px 4px; border:0; border-bottom:1px solid rgba(255,255,255,.1); color:#fff; background:transparent; text-align:left; cursor:pointer; transition:padding .3s var(--ease-premium),background .25s ease; }
.experience-selector:hover,.experience-selector.is-active { padding-left:12px; background:linear-gradient(90deg,rgba(255,255,255,.055),transparent); }
.experience-selector > span { color:var(--brand-gold-light); font-size:10px; }
.experience-selector small { display:block; margin-bottom:8px; color:rgba(255,255,255,.35); font-size:9px; letter-spacing:.09em; text-transform:uppercase; }
.experience-selector strong { display:block; font-size:17px; line-height:1.28; font-weight:570; letter-spacing:-.02em; }
.experience-selector > i { justify-self:end; color:var(--brand-gold-light); font-style:normal; transition:transform .3s var(--ease-premium); }
.experience-selector.is-active > i,.experience-selector:hover > i { transform:translate(3px,-3px); }
.experience-disclaimer { max-width:880px; margin:28px 0 0; color:rgba(255,255,255,.34); font-size:11px; line-height:1.6; }

/* Mid-size laptop QA: 1280–1440 */
@media (min-width:1200px) and (max-width:1440px) {
  .premium-display { font-size:clamp(68px,6.2vw,90px); }
  .premium-hero__layout { padding-top:145px; padding-bottom:84px; gap:48px; }
  .premium-hero__panel { min-height:380px; }
  .premium-hero__panel-main p { font-size:34px; }
  .solutions-preview { min-height:550px; }
  .experience-stage { min-height:610px; }
}

@media (max-width:1100px) {
  .experience-explorer { grid-template-columns:1fr; }
  .experience-rail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-left:1px solid rgba(255,255,255,.12); }
  .experience-selector { border-right:1px solid rgba(255,255,255,.1); }
}

@media (max-width:980px) {
  .sector-context { max-width:none; }
  .sectors-copy { position:static; }
  .experience-stage { min-height:600px; }
}

@media (max-width:760px) {
  .site-scroll-progress { left:24px; right:24px; bottom:5px; }
  .solution-row { align-items:start; padding-block:20px; min-height:0; }
  .solution-row:hover,.solution-row.is-active { padding-left:10px; }
  .solution-row__index,.solution-row__title,.solution-row__arrow { align-self:center; }
  .solution-row__mobile-copy { grid-column:2/-1; display:block; max-height:0; margin-top:0; color:var(--brand-muted); font-size:14px; line-height:1.55; opacity:0; overflow:hidden; transition:max-height .42s var(--ease-premium),opacity .25s ease,margin .35s ease; }
  .solution-row__mobile-copy small { display:block; margin-top:12px; color:var(--brand-gold); font-size:10px; font-weight:760; letter-spacing:.09em; text-transform:uppercase; }
  .solution-row.is-active .solution-row__mobile-copy { max-height:240px; margin-top:10px; opacity:1; }
  .solutions-preview { display:none; }

  .sector-context { display:none; }
  .sector-row { min-height:0; grid-template-columns:38px 1fr 28px; padding:20px 0; align-items:start; }
  .sector-row:hover,.sector-row.is-active { padding-left:8px; }
  .sector-row__index,.sector-row > strong,.sector-row > i { align-self:center; }
  .sector-row__mobile-copy { grid-column:2/-1; display:block; max-height:0; margin:0; overflow:hidden; color:rgba(255,255,255,.54); font-size:13px; line-height:1.55; opacity:0; transition:max-height .45s var(--ease-premium),opacity .3s ease,margin .35s ease; }
  .sector-row.is-active .sector-row__mobile-copy { max-height:220px; margin-top:12px; opacity:1; }

  .experience-stage { min-height:0; padding:24px; border-radius:26px; }
  .experience-stage__head { align-items:flex-start; }
  .experience-stage__status { display:none; }
  .experience-stage__hero { grid-template-columns:1fr; gap:18px; margin:58px 0 36px; }
  .experience-stage__hero strong { font-size:clamp(52px,16vw,72px); }
  .experience-stage__hero h3 { font-size:clamp(34px,10vw,46px); }
  .experience-stage__detail { grid-template-columns:1fr; gap:22px; }
  .experience-stage__result { margin-top:24px; }
  .experience-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:10px; border:0; padding:14px 0 4px; scrollbar-width:none; }
  .experience-rail::-webkit-scrollbar { display:none; }
  .experience-selector { flex:0 0 min(84vw,340px); min-height:156px; padding:18px; border:1px solid rgba(255,255,255,.1); border-radius:20px; scroll-snap-align:start; background:rgba(255,255,255,.018); }
  .experience-selector:hover,.experience-selector.is-active { padding-left:18px; border-color:rgba(255,186,82,.26); background:rgba(255,186,82,.05); }
}

@media (max-width:430px) {
  .premium-display { font-size:clamp(45px,13vw,58px); }
  .premium-hero__lead { font-size:16px; }
  .premium-hero__audience { max-width:320px; }
  .editorial-statement { font-size:clamp(39px,11.7vw,52px); }
  .section-title { font-size:clamp(37px,10.7vw,50px); }
}

@media (max-width:390px) {
  .brand-lockup { width:132px; }
  .menu-toggle { min-width:48px; }
  .menu-toggle__label { display:none; }
  .premium-hero__layout { padding-top:116px; }
  .premium-display { font-size:44px; }
  .premium-hero__audience { font-size:8px; }
  .experience-stage { padding:20px; }
  .experience-selector { flex-basis:86vw; }
}

@media (prefers-reduced-motion:reduce) {
  .experience-stage,.site-scroll-progress,.sector-row,.experience-selector { transition:none !important; }
}

/* Experience archive / single — v0.8 */
.experience-single-hero { position:relative; overflow:hidden; background:linear-gradient(135deg,var(--brand-navy-deep),var(--brand-ink)); }
.experience-single-hero::after { content:""; position:absolute; width:580px; height:580px; right:-180px; top:-260px; border-radius:50%; background:radial-gradient(circle,rgba(255,186,82,.16),transparent 66%); pointer-events:none; }
.experience-single-signal { display:block; margin:34px 0 18px; color:var(--brand-gold-light); font-family:var(--font-display); font-size:clamp(50px,7vw,104px); line-height:.9; font-weight:500; letter-spacing:-.055em; }
.experience-single-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:clamp(44px,8vw,120px); }
.experience-single-block { display:grid; grid-template-columns:54px minmax(0,1fr); gap:22px; padding:34px 0; border-top:1px solid var(--brand-line); }
.experience-single-block > span { color:var(--brand-gold); font-size:10px; letter-spacing:.1em; }
.experience-single-block small { display:block; margin-bottom:12px; color:var(--brand-muted); font-size:10px; font-weight:780; letter-spacing:.1em; text-transform:uppercase; }
.experience-single-block p { margin:0; max-width:900px; font-size:clamp(19px,2vw,25px); line-height:1.55; letter-spacing:-.015em; }
.experience-single-block--result { margin-top:18px; padding:32px; border:1px solid rgba(6,26,99,.1); border-radius:24px; background:linear-gradient(145deg,#fff,var(--brand-ivory)); }
.experience-single-prose { margin-top:60px; }
.experience-single-disclaimer { margin:42px 0 0; color:var(--brand-muted); font-size:11px; line-height:1.6; }
.experience-single-cta { background:#fff; box-shadow:0 20px 70px rgba(6,26,99,.07); }
.experience-single-cta h3 { margin:10px 0 12px; font-size:28px; line-height:1.08; letter-spacing:-.035em; }
.experience-single-cta p { color:var(--brand-muted); }
.experience-archive-section { background:var(--brand-ivory); }
.experience-archive-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.experience-archive-card { min-height:420px; display:flex; flex-direction:column; padding:30px; border:1px solid var(--brand-line); border-radius:26px; background:#fff; transition:transform .35s var(--ease-premium),box-shadow .35s ease; }
.experience-archive-card:hover { transform:translateY(-4px); box-shadow:0 24px 70px rgba(6,26,99,.08); }
.experience-archive-card__top { display:flex; justify-content:space-between; gap:18px; color:var(--brand-muted); font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.experience-archive-card__top strong { color:var(--brand-gold); font-family:var(--font-display); font-size:20px; font-weight:500; letter-spacing:-.02em; text-transform:none; }
.experience-archive-card h2 { margin:auto 0 16px; font-size:clamp(31px,3.5vw,48px); line-height:1.03; letter-spacing:-.045em; }
.experience-archive-card p { margin:0 0 24px; color:var(--brand-muted); }
@media (max-width:900px) {
  .experience-single-layout { grid-template-columns:1fr; }
  .experience-single-aside { order:-1; }
  .experience-single-aside .sticky-panel { position:static; }
  .experience-archive-grid { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .experience-single-block { grid-template-columns:34px minmax(0,1fr); gap:12px; padding:26px 0; }
  .experience-single-block--result { padding:24px 20px; }
  .experience-archive-card { min-height:350px; padding:24px; }
}

/* =========================================================
   Sandino Law Premium v0.9.0 — cinematic mobile-first layer
   Preserves v0.8 typography; adds liquid emphasis + slider.
   ========================================================= */
:root {
  --hero-blue-deep:#01072a;
  --hero-blue-mid:#061a63;
  --hero-blue-soft:#123a89;
  --gold-glass-1:#ffe39c;
  --gold-glass-2:#ffba52;
  --gold-glass-3:#b77000;
  --glass-shadow:0 28px 90px rgba(0,8,45,.28);
}

/* V0.8 typography is intentionally preserved. */
.section-title em,
.editorial-statement em,
.technology-copy h2 em,
.consultation-shell h2 em,
.hero-slide__title em,
.liquid-emphasis {
  font-family:var(--font-display);
  font-style:italic;
  font-weight:500;
  color:transparent;
  -webkit-text-fill-color:transparent;
  background:linear-gradient(118deg,var(--gold-glass-3) 0%,var(--gold-glass-2) 30%,var(--gold-glass-1) 49%,var(--gold-glass-2) 67%,#956000 100%);
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.28)) drop-shadow(0 8px 16px rgba(183,112,0,.12));
  text-shadow:0 0 22px rgba(255,186,82,.07);
  animation:slLiquidText 7s ease-in-out infinite;
}
.section-title--light em,
.sectors-section .section-title em,
.experience-section--premium .section-title em,
.technology-copy h2 em,
.hero-slide__title em {
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.24)) drop-shadow(0 0 18px rgba(255,186,82,.18));
}
@keyframes slLiquidText {
  0%,100% { background-position:0% 50%; }
  50% { background-position:100% 50%; }
}

/* Word-level motion. JS preserves nested <em> emphasis. */
.word-reveal {
  display:inline-block;
  opacity:0;
  transform:translate3d(0,.72em,0) rotateX(-5deg);
  filter:blur(9px);
  transform-origin:50% 100%;
  transition:opacity .72s var(--ease-premium),transform .82s var(--ease-premium),filter .72s var(--ease-premium);
  transition-delay:calc(var(--word-index,0) * 34ms);
  will-change:transform,opacity,filter;
}
.reveal-title[data-split-ready="true"] { opacity:1; transform:none; filter:none; }
.reveal-title.is-visible .word-reveal,
.hero-slide.is-active .word-reveal {
  opacity:1;
  transform:translate3d(0,0,0) rotateX(0);
  filter:blur(0);
}
.hero-slide:not(.is-active) .word-reveal { transition-delay:0ms; }

/* Cinematic slider */
.hero-slider {
  position:relative;
  min-height:100svh;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 76% 22%,rgba(35,89,178,.32),transparent 31%),
    radial-gradient(circle at 30% 88%,rgba(15,52,132,.32),transparent 34%),
    linear-gradient(128deg,var(--hero-blue-deep) 0%,#03113f 32%,var(--hero-blue-mid) 68%,var(--hero-blue-soft) 135%);
  isolation:isolate;
}
.hero-slider::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(1,7,42,.94) 0%,rgba(2,12,52,.78) 42%,rgba(5,24,83,.26) 74%,rgba(2,9,39,.45) 100%);
  pointer-events:none;
}
.hero-slider__ambient { position:absolute; inset:0; z-index:-2; overflow:hidden; pointer-events:none; }
.hero-slider__glow { position:absolute; border-radius:50%; filter:blur(30px); opacity:.68; }
.hero-slider__glow--one { width:min(68vw,980px); aspect-ratio:1; right:-22vw; top:-40%; background:radial-gradient(circle,rgba(34,95,211,.3),transparent 65%); }
.hero-slider__glow--two { width:min(45vw,700px); aspect-ratio:1; left:15%; bottom:-42%; background:radial-gradient(circle,rgba(255,186,82,.09),transparent 67%); }
.hero-slider__grain { position:absolute; inset:0; opacity:.09; background-image:radial-gradient(rgba(255,255,255,.72) .55px,transparent .55px); background-size:8px 8px; mask-image:linear-gradient(90deg,transparent,black 40%,black 90%,transparent); }
.hero-slider__track { position:relative; min-height:100svh; }
.hero-slide {
  position:absolute;
  inset:0;
  z-index:1;
  min-height:100svh;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:scale(1.012);
  transition:opacity .9s var(--ease-premium),transform 1.25s var(--ease-premium),visibility .9s;
}
.hero-slide.is-active { z-index:2; opacity:1; visibility:visible; pointer-events:auto; transform:scale(1); }
.hero-slide__layout {
  position:relative;
  min-height:100svh;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr);
  gap:clamp(38px,6vw,92px);
  align-items:center;
  padding-top:clamp(126px,13vh,174px);
  padding-bottom:clamp(112px,12vh,150px);
}
.hero-slide__copy { position:relative; z-index:6; max-width:860px; }
.hero-slide__kicker { opacity:0; transform:translateY(14px); transition:opacity .65s .12s ease,transform .75s .12s var(--ease-premium); }
.hero-slide.is-active .hero-slide__kicker { opacity:1; transform:none; }
.hero-slide__title {
  margin:24px 0 0;
  max-width:900px;
  color:#fff;
  font-family:var(--font-ui);
  font-size:clamp(54px,6.3vw,98px);
  line-height:.94;
  letter-spacing:-.058em;
  font-weight:570;
  text-wrap:balance;
}
.hero-slide__title em { letter-spacing:-.045em; }
.hero-slide__lead {
  max-width:690px;
  margin:28px 0 0;
  color:rgba(255,255,255,.68);
  font-size:clamp(17px,1.4vw,21px);
  line-height:1.62;
  opacity:0;
  transform:translateY(18px);
  filter:blur(5px);
  transition:opacity .65s .38s ease,transform .75s .38s var(--ease-premium),filter .65s .38s ease;
}
.hero-slide.is-active .hero-slide__lead { opacity:1; transform:none; filter:none; }
.hero-slide__actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:32px;
  opacity:0;
  transform:translateY(16px);
  transition:opacity .65s .5s ease,transform .75s .5s var(--ease-premium);
}
.hero-slide.is-active .hero-slide__actions { opacity:1; transform:none; }
.hero-slide__trust {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:30px;
  color:rgba(255,255,255,.38);
  font-size:10px;
  font-weight:730;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hero-slide__trust i { width:3px; height:3px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 10px rgba(255,186,82,.55); }
.hero-slide__visual {
  position:relative;
  z-index:3;
  min-height:min(70vh,720px);
  align-self:end;
  transform:translate3d(var(--hero-depth-x,0),var(--hero-depth-y,0),0);
  transition:transform .25s ease-out;
  pointer-events:none;
}
.hero-slide__visual::after {
  content:"";
  position:absolute;
  inset:auto 5% 2% 10%;
  height:14%;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(3,8,27,.74),transparent 70%);
  filter:blur(16px);
  z-index:0;
}
.hero-symbol-stack {
  position:absolute;
  z-index:4;
  left:50%;
  top:52%;
  width:min(49vw,590px);
  transform:translate(-50%,-50%) perspective(900px) rotateY(-7deg) rotateX(3deg);
  animation:slSymbolFloat 7s ease-in-out infinite;
  filter:drop-shadow(0 34px 42px rgba(0,0,0,.28));
}
.hero-symbol-stack img { position:relative; z-index:2; width:100%; height:auto; filter:drop-shadow(0 0 20px rgba(255,186,82,.08)); }
.hero-symbol-stack__halo { position:absolute; inset:12% 8%; z-index:0; border-radius:50%; background:radial-gradient(circle,rgba(43,102,214,.34),rgba(255,186,82,.08) 42%,transparent 70%); filter:blur(24px); }
@keyframes slSymbolFloat { 0%,100% { transform:translate(-50%,-50%) perspective(900px) rotateY(-7deg) rotateX(3deg) translateY(0); } 50% { transform:translate(-50%,-50%) perspective(900px) rotateY(5deg) rotateX(-1deg) translateY(-12px); } }

.hero-portrait__halo { position:absolute; z-index:0; width:72%; aspect-ratio:1; right:4%; top:20%; border-radius:50%; background:radial-gradient(circle,rgba(44,99,196,.34),rgba(255,186,82,.08) 44%,transparent 72%); filter:blur(25px); }
.hero-portrait { position:absolute; z-index:4; right:-4%; bottom:-1%; width:min(48vw,670px); max-height:82vh; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 24px 32px rgba(0,0,0,.28)); opacity:0; transform:translate3d(42px,24px,0) scale(.98); transition:opacity .8s .12s ease,transform 1.05s .12s var(--ease-premium); }
.hero-slide.is-active .hero-portrait { opacity:1; transform:translate3d(0,0,0) scale(1); }
.hero-portrait--desk { right:-5%; width:min(54vw,760px); max-height:79vh; }

.hero-orbit-scene { position:absolute; inset:5% -4% 3% -8%; z-index:2; perspective:800px; }
.hero-orbit-ring { position:absolute; left:50%; top:50%; width:82%; aspect-ratio:1.55; border:1px solid rgba(255,186,82,.2); border-radius:50%; transform:translate(-50%,-50%) rotate(-10deg); box-shadow:0 0 40px rgba(49,102,198,.1); }
.hero-orbit-ring--two { width:64%; transform:translate(-50%,-50%) rotate(18deg); border-color:rgba(112,157,244,.13); }
.hero-orbit-icon {
  position:absolute;
  z-index:5;
  width:clamp(72px,7vw,106px);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:var(--brand-gold-light);
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 22px 60px rgba(0,0,0,.19),0 0 26px rgba(255,186,82,.08);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  animation:slOrbitFloat 6.5s ease-in-out infinite;
}
.hero-orbit-icon svg { width:48%; height:48%; fill:none; stroke:currentColor; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; }
.hero-orbit-icon--one { left:4%; top:13%; animation-delay:-1.2s; }
.hero-orbit-icon--two { right:4%; top:8%; width:clamp(64px,6vw,92px); animation-delay:-3.2s; filter:blur(.15px); }
.hero-orbit-icon--three { right:-1%; top:55%; animation-delay:-4.3s; }
.hero-orbit-icon--four { left:0%; bottom:10%; width:clamp(68px,6vw,94px); animation-delay:-2.4s; }
@keyframes slOrbitFloat { 0%,100% { transform:translate3d(0,0,18px) rotate(0); } 50% { transform:translate3d(0,-13px,42px) rotate(2deg); } }
.hero-orbit-spark { position:absolute; width:6px; height:6px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 18px 5px rgba(255,186,82,.18); animation:slSparkPulse 4s ease-in-out infinite; }
.hero-orbit-spark--one { left:18%; top:56%; }
.hero-orbit-spark--two { right:22%; top:29%; animation-delay:-1.3s; }
.hero-orbit-spark--three { right:17%; bottom:16%; animation-delay:-2.5s; }
@keyframes slSparkPulse { 0%,100% { opacity:.24; transform:scale(.65); } 50% { opacity:.92; transform:scale(1); } }

.hero-slider__controls {
  position:absolute;
  z-index:10;
  left:50%;
  bottom:max(24px,env(safe-area-inset-bottom));
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:12px;
  pointer-events:none;
}
.hero-slider__controls > * { pointer-events:auto; }
.hero-slider__arrow { width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.16); border-radius:50%; color:#fff; background:rgba(255,255,255,.035); backdrop-filter:blur(14px); cursor:pointer; transition:transform .25s var(--ease-premium),background .25s ease,border-color .25s ease; }
.hero-slider__arrow:hover { transform:translateY(-2px); background:rgba(255,255,255,.08); border-color:rgba(255,186,82,.32); }
.hero-slider__dots { display:flex; align-items:center; gap:12px; margin-inline:6px; }
.hero-slider__dots button { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.24); cursor:pointer; transition:width .3s var(--ease-premium),background .3s ease,box-shadow .3s ease; }
.hero-slider__dots button.is-active { width:28px; border-radius:999px; background:linear-gradient(90deg,var(--brand-gold-light),var(--brand-gold)); box-shadow:0 0 18px rgba(255,186,82,.2); }
.hero-slider__counter { margin-left:auto; display:flex; align-items:baseline; gap:6px; min-width:84px; color:rgba(255,255,255,.46); font-size:13px; }
.hero-slider__counter strong { color:var(--brand-gold-light); font-family:var(--font-display); font-size:28px; font-weight:500; }
.hero-slider__timer { position:absolute; left:0; right:0; bottom:-10px; height:1px; overflow:hidden; background:rgba(255,255,255,.08); }
.hero-slider__timer i { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:linear-gradient(90deg,var(--brand-gold),var(--brand-gold-light)); }
.hero-slider.is-playing .hero-slider__timer i { animation:slHeroTimer 5s linear forwards; }
@keyframes slHeroTimer { from { transform:scaleX(0); } to { transform:scaleX(1); } }

/* Carry the approved language through the home. */
.home .solutions-section,
.home .methodology-section,
.home .team-section {
  background:
    radial-gradient(circle at 90% 10%,rgba(18,58,137,.055),transparent 26%),
    linear-gradient(180deg,#fff 0%,var(--brand-paper) 100%);
}
.home .audience-section,
.home .resources-section,
.home .technology-section {
  background:
    radial-gradient(circle at 10% 0%,rgba(255,186,82,.07),transparent 24%),
    linear-gradient(180deg,var(--brand-ivory),#f3f1eb);
}
.home .premium-section-head,
.home .audience-heading,
.home .section-heading-row { position:relative; z-index:2; }
.home .audience-card {
  border:1px solid rgba(255,255,255,.72);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.32));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 18px 54px rgba(6,26,99,.055);
  backdrop-filter:blur(18px);
}
.home .audience-card:hover { transform:translateY(-6px); box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 28px 70px rgba(6,26,99,.09); }
.home .methodology-step {
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(247,244,237,.42));
  transition:transform .35s var(--ease-premium),background .3s ease,box-shadow .35s ease;
}
.home .methodology-step::after { content:""; position:absolute; width:160px; height:160px; right:-100px; top:-100px; border-radius:50%; background:radial-gradient(circle,rgba(255,186,82,.14),transparent 68%); opacity:0; transition:opacity .3s ease; }
.home .methodology-step:hover { z-index:2; transform:translateY(-4px); background:#fff; box-shadow:0 22px 60px rgba(6,26,99,.07); }
.home .methodology-step:hover::after { opacity:1; }
.home .methodology-step__index { color:var(--brand-gold); text-shadow:0 0 14px rgba(255,186,82,.18); }
.home .lawyer-card { min-width:0; }
.home .lawyer-card__media { position:relative; border:1px solid rgba(6,26,99,.08); border-radius:28px; box-shadow:0 20px 65px rgba(6,26,99,.08); }
.home .lawyer-card__media::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 1px 0 rgba(255,255,255,.54); pointer-events:none; }
.home .lawyer-card__body { margin:-22px 12px 0; position:relative; z-index:2; padding:20px; border:1px solid rgba(255,255,255,.75); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.55)); box-shadow:0 16px 50px rgba(6,26,99,.07); backdrop-filter:blur(17px); }
.home .resource-card--premium { padding:14px; border:1px solid rgba(6,26,99,.08); border-radius:24px; background:rgba(255,255,255,.6); box-shadow:0 18px 54px rgba(6,26,99,.045); transition:transform .35s var(--ease-premium),box-shadow .35s ease; }
.home .resource-card--premium:hover { transform:translateY(-5px); box-shadow:0 28px 74px rgba(6,26,99,.09); }
.home .resource-card__media { border-radius:18px; }
.home .technology-shell {
  border:1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at 82% 6%,rgba(52,111,222,.24),transparent 27%),
    radial-gradient(circle at 10% 100%,rgba(255,186,82,.09),transparent 26%),
    linear-gradient(132deg,var(--hero-blue-deep),var(--brand-navy) 64%,var(--hero-blue-soft));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 34px 100px rgba(3,12,52,.22);
}
.home .technology-interface { border-color:rgba(255,255,255,.18); background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.025)); }
.home .consultation-shell { border-color:rgba(6,26,99,.1); background:linear-gradient(140deg,rgba(255,255,255,.96),rgba(247,244,237,.72)); }
.home .consultation-shell::before { content:""; position:absolute; inset:12px; border:1px solid rgba(255,255,255,.75); border-radius:30px; pointer-events:none; }
.home .sectors-section,
.home .experience-section--premium {
  background:
    radial-gradient(circle at 88% 10%,rgba(43,101,214,.24),transparent 29%),
    radial-gradient(circle at 8% 92%,rgba(255,186,82,.08),transparent 27%),
    linear-gradient(132deg,var(--hero-blue-deep),#061752 52%,var(--brand-navy) 100%);
}
.home .experience-stage { background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.014)); backdrop-filter:blur(16px); }

@media (max-width:1100px) {
  .hero-slide__layout { grid-template-columns:minmax(0,1fr) minmax(340px,.7fr); gap:24px; }
  .hero-slide__title { font-size:clamp(52px,6.8vw,78px); }
  .hero-portrait { width:min(52vw,600px); right:-11%; }
  .hero-symbol-stack { width:min(52vw,520px); }
}

@media (max-width:760px) {
  .hero-slider { min-height:100svh; }
  .hero-slider__track,.hero-slide { min-height:100svh; }
  .hero-slider::after { background:linear-gradient(180deg,rgba(1,7,42,.97) 0%,rgba(2,12,52,.87) 52%,rgba(5,24,83,.44) 78%,rgba(1,7,42,.86) 100%); }
  .hero-slide__layout { display:block; min-height:100svh; padding-top:116px; padding-bottom:112px; }
  .hero-slide__copy { max-width:100%; position:relative; z-index:8; }
  .hero-slide__kicker { font-size:9px; }
  .hero-slide__title { max-width:96%; margin-top:18px; font-size:clamp(43px,12.2vw,58px); line-height:.96; letter-spacing:-.052em; }
  .hero-slide__lead { max-width:92%; margin-top:20px; font-size:15px; line-height:1.55; }
  .hero-slide__actions { display:grid; grid-template-columns:1fr; gap:9px; width:min(100%,360px); margin-top:24px; }
  .hero-slide__actions .button { width:100%; min-height:52px; }
  .hero-slide__trust { display:none; }
  .hero-slide__visual { position:absolute; inset:auto -18vw -2vh 18vw; z-index:3; min-height:48svh; height:48svh; opacity:.44; }
  .hero-slide__visual--symbol { opacity:.32; }
  .hero-slide__visual--desk { inset:auto -24vw -5vh 13vw; opacity:.39; }
  .hero-portrait { right:0; bottom:0; width:auto; height:100%; max-height:none; object-fit:contain; object-position:right bottom; }
  .hero-portrait--desk { right:-2%; width:auto; height:96%; }
  .hero-symbol-stack { width:min(84vw,470px); left:57%; top:57%; }
  .hero-orbit-scene { inset:4% -4%; }
  .hero-orbit-icon { width:66px; opacity:.7; }
  .hero-orbit-icon--two { width:58px; }
  .hero-orbit-icon--four { display:none; }
  .hero-slider__controls { width:calc(100% - 40px); bottom:max(18px,env(safe-area-inset-bottom)); gap:9px; }
  .hero-slider__arrow { width:42px; height:42px; }
  .hero-slider__counter { margin-left:auto; min-width:68px; }
  .hero-slider__counter strong { font-size:24px; }
  .hero-slider__timer { bottom:-6px; }
  .home .lawyer-card__body { margin:-18px 8px 0; }
}

@media (max-width:430px) {
  .hero-slide__layout { padding-top:108px; }
  .hero-slide__title { font-size:clamp(40px,11.8vw,52px); }
  .hero-slide__lead { font-size:14px; }
  .hero-slider__dots { gap:9px; }
  .hero-slider__dots button.is-active { width:22px; }
  .hero-slider__arrow { width:40px; height:40px; }
}

@media (max-width:390px) {
  .hero-slide__title { font-size:42px; }
  .hero-slide__visual { inset:auto -25vw -3vh 12vw; opacity:.38; }
  .hero-slide__actions { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  .section-title em,.editorial-statement em,.technology-copy h2 em,.consultation-shell h2 em,.hero-slide__title em,.liquid-emphasis { animation:none !important; }
  .word-reveal { opacity:1 !important; transform:none !important; filter:none !important; transition:none !important; }
  .hero-slide,.hero-portrait,.hero-slide__kicker,.hero-slide__lead,.hero-slide__actions,.hero-symbol-stack,.hero-orbit-icon,.hero-orbit-spark { animation:none !important; transition:none !important; transform:none; }
  .hero-slide { opacity:0; }
  .hero-slide.is-active { opacity:1; }
  .hero-slider__timer { display:none; }
}
/* Ensure the first hero title receives an initial painted frame before reveal. */
.hero-slide.is-active .word-reveal { opacity:0; transform:translate3d(0,.72em,0) rotateX(-5deg); filter:blur(9px); }
.hero-slider.is-ready .hero-slide.is-active .word-reveal { opacity:1; transform:translate3d(0,0,0) rotateX(0); filter:blur(0); }

/* =========================================================
   Sandino Law Premium v1.0.0 — production hero/header polish
   ========================================================= */

/* Header: complete site navigation + WhatsApp + social SVGs. */
.site-header__shell {
  grid-template-columns:minmax(160px,auto) minmax(0,1fr) auto;
  gap:clamp(12px,1.5vw,24px);
}
.site-header__brand { min-width:0; }
.header-whatsapp,
.header-social a,
.mobile-nav__social a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
}
.header-whatsapp {
  min-height:42px;
  gap:8px;
  padding:0 13px;
  border:1px solid rgba(255,186,82,.34);
  border-radius:999px;
  color:var(--brand-gold-light);
  background:linear-gradient(145deg,rgba(255,186,82,.08),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 32px rgba(0,0,0,.08);
  font-size:12px;
  font-weight:760;
  white-space:nowrap;
  transition:transform .28s var(--ease-premium),background .28s ease,border-color .28s ease;
}
.header-whatsapp:hover { transform:translateY(-2px); background:rgba(255,186,82,.12); border-color:rgba(255,186,82,.55); }
.header-whatsapp svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.header-social { display:flex; align-items:center; gap:4px; padding-left:5px; border-left:1px solid rgba(255,255,255,.12); }
.header-social a,
.mobile-nav__social a { width:36px; height:36px; border-radius:50%; transition:transform .25s var(--ease-premium),background .25s ease,color .25s ease; }
.header-social a:hover,
.mobile-nav__social a:hover { transform:translateY(-2px); color:var(--brand-gold-light); background:rgba(255,255,255,.07); }
.header-social svg,
.mobile-nav__social svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.header-social svg .is-fill,
.mobile-nav__social svg .is-fill { fill:currentColor; stroke:none; }
.header-social a[aria-label="Facebook"] svg,
.mobile-nav__social a[aria-label="Facebook"] svg { fill:currentColor; stroke:none; }
.mobile-nav__brand img { width:min(240px,64vw); height:auto; }
.mobile-nav__social { display:flex; align-items:center; gap:8px; padding-top:8px; }
.mobile-nav__social a { width:44px; height:44px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.045); }

/* Hero typography: keep v0.8 family, prevent broken editorial lines. */
.hero-slide__copy { min-width:0; }
.hero-slide__title {
  max-width:820px;
  font-family:var(--font-ui);
  font-weight:590;
  font-size:clamp(50px,5.45vw,86px);
  line-height:.99;
  letter-spacing:-.052em;
  text-wrap:pretty;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}
.hero-slide__title .word-reveal { white-space:nowrap; }
.hero-slide__title .word-reveal--emphasis { white-space:normal; }

/* The emphasis itself carries the Liquid Glass paint; never its children. */
.word-reveal--emphasis {
  display:inline-block;
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-background-clip:text;
  background-clip:text;
}
.hero-slide__title em.word-reveal--emphasis,
.editorial-statement em.word-reveal--emphasis,
.section-title em.word-reveal--emphasis,
.technology-copy h2 em.word-reveal--emphasis,
.consultation-shell h2 em.word-reveal--emphasis {
  background:linear-gradient(118deg,#9b6200 0%,#d88e09 23%,#ffba52 43%,#ffe29a 52%,#ffba52 64%,#a96900 100%);
  background-size:240% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  animation:slLiquidText 6.5s ease-in-out infinite;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.28)) drop-shadow(0 0 18px rgba(255,186,82,.12));
}
.hero-slide__title em.word-reveal--emphasis { filter:drop-shadow(0 1px 0 rgba(255,255,255,.3)) drop-shadow(0 0 20px rgba(255,186,82,.2)); }

.button--assistant-glass {
  color:#fff;
  border-color:rgba(255,255,255,.21);
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 14px 44px rgba(0,0,0,.11);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
}
.button--assistant-glass:hover { border-color:rgba(255,186,82,.38); background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,186,82,.06)); }
.button__spark { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; color:var(--brand-gold-light); background:rgba(255,186,82,.08); box-shadow:0 0 18px rgba(255,186,82,.12); }

/* The first conceptual slide uses the white symbol supplied by the brand. */
.hero-slide__visual--symbol .hero-symbol-stack img {
  filter:brightness(1.08) drop-shadow(0 0 24px rgba(255,255,255,.1)) drop-shadow(0 30px 50px rgba(0,0,0,.28));
}

/* Motion paint: active titles remain readable throughout transitions. */
.hero-slider.is-ready .hero-slide.is-active .word-reveal,
.reveal-title.is-visible .word-reveal {
  opacity:1;
  transform:translate3d(0,0,0) rotateX(0);
  filter:blur(0);
}
.word-reveal--emphasis { transform-origin:50% 70%; }

/* Assistant now reads visually as a premium web-app flow. */
.assistant__panel {
  width:min(980px,100%);
  background:linear-gradient(145deg,rgba(252,250,245,.97),rgba(241,240,236,.91));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 40px 130px rgba(0,8,45,.34);
}
.assistant__summary {
  background:
    radial-gradient(circle at 90% 10%,rgba(48,104,215,.22),transparent 28%),
    linear-gradient(150deg,var(--hero-blue-deep),var(--brand-navy));
}
.assistant__summary dd { color:#fff; }
.assistant__summary dt,.assistant__summary p { color:rgba(255,255,255,.56); }
.choice-card span { min-height:70px; border-color:rgba(6,26,99,.11); background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(255,255,255,.48)); box-shadow:inset 0 1px 0 rgba(255,255,255,.84); }
.choice-card input:checked + span { border-color:rgba(183,112,0,.48); background:linear-gradient(145deg,rgba(255,186,82,.16),rgba(255,255,255,.7)); box-shadow:0 10px 28px rgba(183,112,0,.08); }

@media (max-width:1320px) {
  .desktop-nav__list { gap:clamp(12px,1.35vw,22px); font-size:12px; }
  .header-social { display:none; }
  .site-header__shell { padding-left:16px; }
  .brand-lockup { width:clamp(142px,13vw,190px); }
}
@media (max-width:1140px) {
  .header-whatsapp { display:none; }
  .hero-slide__layout { grid-template-columns:minmax(0,1.12fr) minmax(330px,.76fr); }
  .hero-slide__title { font-size:clamp(50px,6vw,72px); }
}
@media (max-width:1100px) {
  .desktop-nav,.header-assistant-trigger { display:none; }
  .menu-toggle { display:grid; place-items:center; }
}
@media (max-width:760px) {
  .hero-slide__layout { padding-top:112px; padding-bottom:122px; }
  .hero-slide__title { max-width:100%; font-size:clamp(41px,11vw,54px); line-height:1.01; letter-spacing:-.048em; }
  .hero-slide__title .word-reveal { white-space:normal; }
  .hero-slide__actions { width:100%; grid-template-columns:1fr; }
  .hero-slide__actions .button { min-height:50px; }
  .hero-slide__visual { opacity:.33; }
  .assistant__panel { max-height:calc(100dvh - 8px); }
}
@media (max-width:430px) {
  .hero-slide__title { font-size:clamp(39px,10.8vw,48px); }
  .hero-slide__lead { max-width:100%; }
  .hero-slide__visual { opacity:.28; }
}
\n\n/* =========================================================\n   Sandino Law Premium v1.1.0 — conversion, service IA & ultrawide\n   ========================================================= */\n\n/* Full-width system: full-bleed surfaces with controlled reading measure. */\n:root {\n  --container: 1560px;\n  --container-wide: 1840px;\n}\n@media (min-width:1920px) {\n  :root { --container: 1680px; --container-wide: 1880px; --gutter:clamp(32px,4vw,84px); }\n}\n@media (min-width:2200px) {\n  :root { --container: 1880px; --container-wide: 2160px; --gutter:clamp(48px,5vw,120px); }\n  .hero-slide__layout { grid-template-columns:minmax(0,1.04fr) minmax(600px,.96fr); gap:clamp(80px,7vw,160px); }\n  .hero-slide__copy { max-width:980px; }\n  .hero-slide__title { max-width:960px; font-size:clamp(72px,4.4vw,108px); }\n  .hero-slide__lead { max-width:760px; font-size:22px; }\n  .hero-portrait { width:min(43vw,840px); }\n  .solutions-explorer,.sectors-layout,.experience-explorer { gap:clamp(56px,5vw,120px); }\n}\n@media (min-width:2800px) {\n  :root { --container: 2140px; --container-wide: 2480px; }\n  .hero-slide__title { font-size:118px; }\n  .editorial-statement { max-width:1280px; }\n}\n\n/* Correct dark-section cascade: global section title must never make light headings dark. */\n.section-title--light,\n.sectors-section .section-title,\n.experience-section--premium .section-title,\n.technology-section .section-title { color:#fff; }\n\n/* Header conversion control: icon + animated "Escríbenos" tab. */\n.header-whatsapp--write {\n  width:auto; min-height:42px; padding:4px 5px; gap:0; overflow:hidden;\n  border-color:rgba(255,186,82,.34); background:rgba(255,255,255,.045);\n}\n.header-whatsapp__icon {\n  width:34px; height:34px; display:grid; place-items:center; flex:0 0 34px; border-radius:50%;\n  color:var(--brand-gold-light); background:linear-gradient(145deg,rgba(255,186,82,.18),rgba(255,186,82,.055));\n  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 20px rgba(255,186,82,.08);\n}\n.header-whatsapp__tab {\n  max-width:0; opacity:0; overflow:hidden; padding:0; white-space:nowrap;\n  color:#fff; font-size:11px; font-weight:760; letter-spacing:.01em;\n  animation:slWriteTab 6s var(--ease-premium) infinite;\n}\n@keyframes slWriteTab {\n  0%,14%,80%,100% { max-width:0; opacity:0; padding-left:0; padding-right:0; }\n  24%,68% { max-width:92px; opacity:1; padding-left:9px; padding-right:9px; }\n}\n.header-whatsapp--write:hover .header-whatsapp__tab,\n.header-whatsapp--write:focus-visible .header-whatsapp__tab { max-width:92px; opacity:1; padding-left:9px; padding-right:9px; animation:none; }\n.header-social__placeholder,.mobile-nav__social-placeholder {\n  display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%;\n  color:rgba(255,255,255,.42); cursor:help;\n}\n.header-social__placeholder svg,.mobile-nav__social-placeholder svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; }\n.mobile-nav__social-placeholder { width:44px; height:44px; border:1px solid rgba(255,255,255,.09); }\n\n/* Home service hierarchy: overview first, independent landing second. */\n.premium-section-head__aside { max-width:520px; }\n.premium-section-head__aside .text-link { margin-top:18px; }\n.solution-row__mobile-copy small { display:block; margin-top:8px; color:var(--brand-gold); font-weight:720; }\n\n/* Experience: prevent long signals from colliding with titles at 1024–1600 px. */\n.experience-stage__hero { grid-template-columns:minmax(230px,.42fr) minmax(0,.58fr); align-items:center; }\n.experience-stage__hero strong { min-width:0; max-width:100%; font-size:clamp(42px,4.6vw,72px); line-height:.92; overflow-wrap:normal; word-break:normal; text-wrap:balance; }\n.experience-stage__hero strong.is-long { font-size:clamp(36px,3.8vw,58px); line-height:.95; }\n.experience-stage__hero h3 { min-width:0; font-size:clamp(34px,3.45vw,56px); line-height:1.02; overflow-wrap:normal; }\n\n/* Assistant → WhatsApp: make the handoff unmistakable. */\n.assistant__whatsapp-action { width:100%; justify-content:center; margin-top:8px; }\n.assistant__whatsapp-action.is-ready { box-shadow:0 16px 42px rgba(183,112,0,.16),inset 0 1px 0 rgba(255,255,255,.2); }\n.assistant__whatsapp-note { margin:10px 0 0; color:var(--brand-muted); font-size:12px; line-height:1.5; }\n\n/* Preserve real full-width behavior without long unreadable prose. */\n.sectors-copy > p,.premium-section-head__copy,.experience-stage__detail p,.experience-stage__result p { max-width:70ch; }\n\n@media (max-width:1320px) {\n  .header-social { display:flex; }\n  .header-social a,.header-social__placeholder { width:32px; height:32px; }\n}\n@media (max-width:1180px) {\n  .header-social { display:none; }\n}\n@media (max-width:760px) {\n  .experience-stage__hero { grid-template-columns:1fr; align-items:start; }\n  .experience-stage__hero strong,.experience-stage__hero strong.is-long { max-width:92%; font-size:clamp(44px,14vw,68px); }\n  .experience-stage__hero h3 { font-size:clamp(32px,9.5vw,45px); }\n  .premium-section-head__aside { max-width:none; }\n  .header-whatsapp--write { display:inline-flex; }\n  .header-whatsapp__tab { display:none; }\n}\n@media (prefers-reduced-motion:reduce) {\n  .header-whatsapp__tab { max-width:92px; opacity:1; padding-left:9px; padding-right:9px; animation:none; }\n}\n
/* =========================================================
   Sandino Law Premium v1.2.0 — interaction, motion & layout QA
   ========================================================= */

html { scroll-behavior:smooth; }

/* Performance: less paint-heavy entrance animation, more physical motion. */
.reveal-item {
  opacity:0;
  transform:translate3d(0,28px,0) scale(.992);
  filter:none;
  transition:opacity .72s var(--ease-premium), transform .9s var(--ease-premium);
  will-change:transform,opacity;
}
.reveal-title {
  opacity:0;
  transform:translate3d(0,20px,0);
  filter:blur(3px);
  transition:opacity .62s var(--ease-premium), transform .78s var(--ease-premium), filter .6s ease;
}
.reveal-item.is-visible,.reveal-title.is-visible { opacity:1; transform:none; filter:none; }

/* Guarantee dark-section readability after JS word splitting. */
.sectors-section .section-title,
.sectors-section .section-title > .word-reveal,
.experience-section--premium .section-title,
.experience-section--premium .section-title > .word-reveal,
.technology-section .section-title,
.technology-section .section-title > .word-reveal { color:#fff !important; }

/* White / paper rhythm: the team section intentionally breaks the navy sequence. */
.home .team-section {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 12%,rgba(6,26,99,.045),transparent 24%),
    linear-gradient(180deg,#ffffff 0%,#fbfaf7 100%) !important;
}
.home .team-section::before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(183,112,0,.24),transparent);
}
.team-grid:has(.team-empty--visual) { grid-template-columns:1fr; }
.team-empty--visual {
  max-width:none;
  width:100%;
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(480px,1.28fr);
  gap:clamp(40px,6vw,108px);
  align-items:center;
  padding:clamp(18px,3vw,40px) 0;
}
.team-empty__copy { max-width:570px; }
.team-empty__copy .eyebrow { color:var(--brand-gold); }
.team-empty__copy h3 {
  max-width:520px;
  margin:16px 0 18px;
  color:var(--brand-text);
  font-size:clamp(40px,4.5vw,72px);
  line-height:.98;
  letter-spacing:-.05em;
  text-wrap:balance;
}
.team-empty__copy p { max-width:48ch; font-size:clamp(16px,1.25vw,20px); line-height:1.68; }
.team-empty__copy .text-link { margin-top:22px; }
.team-empty__media {
  --media-x:0px;
  --media-y:0px;
  position:relative;
  min-height:clamp(340px,34vw,560px);
  overflow:hidden;
  border-radius:clamp(24px,2.4vw,38px);
  background:#0b1b4a;
  box-shadow:0 30px 90px rgba(6,26,99,.14);
  transform:translate3d(var(--media-x),var(--media-y),0);
  transition:transform .45s var(--ease-premium),box-shadow .45s ease;
  isolation:isolate;
}
.team-empty__media::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 28%),linear-gradient(180deg,transparent 62%,rgba(2,11,45,.12));
  pointer-events:none;
}
.team-empty__media picture,.team-empty__media img { display:block; width:100%; height:100%; }
.team-empty__media img {
  position:absolute;
  inset:0;
  object-fit:cover;
  object-position:center;
  transform:scale(1.035);
  transition:transform 1.4s var(--ease-premium),filter .6s ease;
}
.team-section.is-inview .team-empty__media img { transform:scale(1); }
.team-empty__media:hover { box-shadow:0 38px 110px rgba(6,26,99,.18); }
.team-empty__media:hover img { transform:scale(1.018); }
.team-empty__media-glow {
  position:absolute;
  z-index:3;
  width:190px;
  height:190px;
  right:-60px;
  top:-60px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,186,82,.22),transparent 68%);
  mix-blend-mode:screen;
  animation:slTeamGlow 6s ease-in-out infinite;
  pointer-events:none;
}
@keyframes slTeamGlow { 0%,100%{transform:translate3d(0,0,0) scale(.9);opacity:.45} 50%{transform:translate3d(-24px,22px,0) scale(1.08);opacity:.8} }

/* Technology panel is now an actual interaction surface, not decorative UI. */
.technology-interface { overflow:hidden; }
.technology-interface::before {
  content:"";
  position:absolute;
  inset:-40% 48% 52% -22%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,186,82,.12),transparent 68%);
  opacity:0;
  transform:translate3d(-16px,-8px,0);
  transition:opacity .7s ease,transform 1s var(--ease-premium);
  pointer-events:none;
}
.technology-section.is-inview .technology-interface::before { opacity:1; transform:none; }
.technology-interface__hint {
  margin:-14px 0 20px;
  color:rgba(255,255,255,.56);
  font-size:12px;
  line-height:1.55;
}
.technology-interface__options button {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  color:rgba(255,255,255,.82);
  background:rgba(255,255,255,.025);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:transform .28s var(--ease-premium),border-color .28s ease,background .28s ease,box-shadow .28s ease,color .28s ease;
}
.technology-interface__options button + button { margin-top:9px; }
.technology-interface__options button i { color:var(--brand-gold-light); font-style:normal; opacity:.62; transform:translateX(-5px); transition:transform .28s var(--ease-premium),opacity .28s ease; }
.technology-interface__options button:hover,
.technology-interface__options button:focus-visible {
  color:#fff;
  transform:translateX(4px);
  border-color:rgba(255,186,82,.48);
  background:linear-gradient(90deg,rgba(255,186,82,.14),rgba(255,255,255,.045));
  box-shadow:0 12px 30px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.1);
}
.technology-interface__options button:hover i,
.technology-interface__options button:focus-visible i { opacity:1; transform:translateX(0); }
.technology-interface__options button:active { transform:translateX(4px) scale(.992); }
.technology-interface__status strong { color:rgba(255,255,255,.62); }

/* Prefill feedback inside the real assistant. */
.choice-card.is-prefilled span,
.choice-card:has(input:checked) span { animation:slPrefillPulse .52s var(--ease-premium); }
@keyframes slPrefillPulse { 0%{transform:scale(.985);box-shadow:0 0 0 rgba(255,186,82,0)} 70%{transform:scale(1.006);box-shadow:0 0 0 7px rgba(255,186,82,.06)} 100%{transform:none;box-shadow:0 10px 28px rgba(183,112,0,.08)} }

/* Experience: robust layout at real laptop widths; no overlap between signal and title. */
.experience-stage__hero {
  grid-template-columns:minmax(190px,300px) minmax(0,1fr) !important;
  gap:clamp(34px,4.5vw,76px) !important;
  align-items:center !important;
}
.experience-stage__hero strong {
  display:block;
  width:100%;
  max-width:280px !important;
  margin:0;
  font-size:clamp(44px,4.4vw,72px) !important;
  line-height:.9 !important;
  white-space:normal;
  text-wrap:balance;
}
.experience-stage__hero strong.is-long { font-size:clamp(34px,3.2vw,52px) !important; }
.experience-stage__hero h3 {
  width:100%;
  max-width:820px;
  margin:0 !important;
  font-size:clamp(38px,4vw,64px) !important;
  line-height:.98 !important;
  text-wrap:balance;
}
@media (max-width:1180px) {
  .experience-stage__hero { grid-template-columns:1fr !important; gap:22px !important; align-items:start !important; }
  .experience-stage__hero strong,.experience-stage__hero strong.is-long { max-width:100% !important; font-size:clamp(48px,7.6vw,72px) !important; }
  .experience-stage__hero h3 { max-width:900px; font-size:clamp(38px,5.7vw,58px) !important; }
}

/* Section atmosphere and modern scroll-driven enhancement (progressive enhancement). */
.section { position:relative; }
.section::after {
  content:"";
  position:absolute;
  left:var(--gutter);
  right:var(--gutter);
  top:0;
  height:1px;
  opacity:0;
  transform:scaleX(.7);
  background:linear-gradient(90deg,transparent,rgba(183,112,0,.18),transparent);
  transition:opacity .7s ease,transform 1.1s var(--ease-premium);
  pointer-events:none;
}
.section.is-inview::after { opacity:1; transform:scaleX(1); }
@supports (animation-timeline:view()) {
  .motion-media img,
  .lawyer-card__media img,
  .resource-card__media img {
    animation:slViewMedia linear both;
    animation-timeline:view();
    animation-range:entry 0% cover 38%;
  }
  @keyframes slViewMedia {
    from { transform:scale(1.06) translateY(18px); }
    to { transform:scale(1) translateY(0); }
  }
}

/* Ultra-wide: full-bleed surfaces, controlled readable columns. */
@media (min-width:1920px) {
  .team-empty--visual { grid-template-columns:minmax(420px,.72fr) minmax(720px,1.28fr); }
  .team-empty__copy { max-width:680px; }
  .team-empty__media { min-height:620px; }
  .technology-interface { min-height:540px; }
}
@media (min-width:2560px) {
  .team-empty--visual { gap:150px; }
  .team-empty__media { min-height:700px; }
}

@media (max-width:900px) {
  .team-empty--visual { grid-template-columns:1fr; gap:30px; }
  .team-empty__copy { max-width:680px; }
  .team-empty__media { min-height:clamp(300px,62vw,500px); }
}
@media (max-width:600px) {
  .team-empty__copy h3 { font-size:clamp(38px,11vw,54px); }
  .team-empty__media { border-radius:22px; min-height:300px; }
  .technology-interface__question { margin-top:42px; }
  .technology-interface__options button { min-height:58px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .team-empty__media,.team-empty__media img,.technology-interface::before,.technology-interface__options button,.technology-interface__options button i { transition:none !important; animation:none !important; transform:none !important; }
  .section::after { transition:none; }
}


/* ==========================================================
   Sandino Law Premium v1.2.1 — Team editorial integration
   White section + seamless image fade + controlled headline wrap
   ========================================================== */
.home .team-section {
  background:#fff !important;
}
.home .team-section .container {
  width:min(92vw,1780px);
  max-width:none;
}
.team-empty--visual {
  position:relative;
  grid-template-columns:minmax(460px,.88fr) minmax(720px,1.12fr);
  gap:clamp(18px,2.4vw,48px);
  min-height:clamp(520px,34vw,650px);
  align-items:center;
  padding:clamp(32px,3.8vw,68px) 0;
}
.team-empty__copy {
  position:relative;
  z-index:4;
  max-width:650px;
  padding-left:clamp(0px,1vw,18px);
}
.team-empty__copy h3.team-empty__title {
  width:min(100%,640px);
  max-width:none;
  margin:16px 0 24px;
  font-size:clamp(48px,3.25vw,66px);
  line-height:.98;
  letter-spacing:-.052em;
  text-wrap:pretty;
}
.team-title__line {
  display:block;
  width:max-content;
  max-width:100%;
}
.team-empty__copy p {
  max-width:44ch;
  margin-top:0;
  color:#66727c;
  font-size:clamp(17px,1.05vw,20px);
  line-height:1.62;
  text-wrap:pretty;
}
.team-empty__media {
  position:relative;
  z-index:1;
  align-self:stretch;
  min-height:clamp(500px,32vw,640px);
  margin-left:clamp(-80px,-4vw,-32px);
  overflow:hidden;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  isolation:isolate;
}
.team-empty__media::before {
  content:"";
  position:absolute;
  inset:-2px;
  z-index:3;
  background:
    linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 5%,rgba(255,255,255,.86) 12%,rgba(255,255,255,.48) 21%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,#fff 0%,rgba(255,255,255,.72) 4%,rgba(255,255,255,0) 12%,rgba(255,255,255,0) 88%,rgba(255,255,255,.72) 96%,#fff 100%);
  pointer-events:none;
}
.team-empty__media picture,
.team-empty__media img {
  width:100%;
  height:100%;
}
.team-empty__media img {
  object-fit:cover;
  object-position:center 48%;
  transform:scale(1.025);
  filter:saturate(.96) contrast(1.02);
}
.team-section.is-inview .team-empty__media img { transform:scale(1); }
.team-empty__media:hover,
.team-empty__media:hover img { box-shadow:none; }
.team-empty__media:hover img { transform:scale(1.01); }
.team-empty__media-glow {
  right:3%;
  top:8%;
  opacity:.38;
}

@media (min-width:1700px) {
  .team-empty--visual {
    grid-template-columns:minmax(540px,.86fr) minmax(900px,1.14fr);
    min-height:650px;
  }
  .team-empty__copy h3.team-empty__title { font-size:clamp(58px,3.05vw,72px); }
  .team-empty__media { min-height:650px; margin-left:-110px; }
}
@media (min-width:2200px) {
  .home .team-section .container { width:min(90vw,2140px); }
  .team-empty--visual { min-height:720px; }
  .team-empty__copy { max-width:760px; }
  .team-empty__copy h3.team-empty__title { width:720px; font-size:76px; }
  .team-empty__copy p { max-width:48ch; font-size:21px; }
  .team-empty__media { min-height:720px; margin-left:-140px; }
}
@media (max-width:1180px) {
  .team-empty--visual {
    grid-template-columns:minmax(380px,.9fr) minmax(520px,1.1fr);
    gap:12px;
  }
  .team-empty__copy h3.team-empty__title { font-size:clamp(43px,4.2vw,58px); }
  .team-empty__media { margin-left:-38px; }
}
@media (max-width:900px) {
  .home .team-section .container { width:min(92vw,760px); }
  .team-empty--visual { grid-template-columns:1fr; min-height:0; gap:12px; padding:44px 0 28px; }
  .team-empty__copy { max-width:680px; }
  .team-empty__copy h3.team-empty__title { width:100%; font-size:clamp(40px,8vw,58px); }
  .team-title__line { width:auto; }
  .team-empty__media {
    min-height:clamp(330px,62vw,500px);
    margin:0 -4vw;
  }
  .team-empty__media::before {
    background:
      linear-gradient(180deg,#fff 0%,rgba(255,255,255,.5) 5%,rgba(255,255,255,0) 15%,rgba(255,255,255,0) 84%,rgba(255,255,255,.72) 95%,#fff 100%),
      linear-gradient(90deg,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 16%,rgba(255,255,255,0) 100%);
  }
}
@media (max-width:600px) {
  .team-empty__copy h3.team-empty__title { font-size:clamp(38px,11.5vw,52px); line-height:.97; }
  .team-empty__copy p { font-size:17px; line-height:1.58; }
  .team-empty__media { min-height:320px; }
}

/* =========================================================
   Sandino Law Premium v1.2.3 — direct WhatsApp micro-intake
   ========================================================= */

/* The technology section no longer repeats the full assistant UI.
   It uses one compact direct-contact form with progressive disclosure. */
.technology-contact {
  position:relative;
  align-self:stretch;
  min-height:470px;
  display:flex;
  flex-direction:column;
  padding:clamp(20px,2.2vw,30px);
  border:1px solid rgba(255,255,255,.16);
  border-radius:28px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.115),rgba(255,255,255,.035)),
    radial-gradient(circle at 100% 0,rgba(255,186,82,.11),transparent 42%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 24px 70px rgba(0,0,0,.17);
  backdrop-filter:blur(22px) saturate(135%);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  overflow:hidden;
}
.technology-contact::before {
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-80px;
  top:-90px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,186,82,.15),transparent 70%);
  pointer-events:none;
}
.technology-contact__top {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.09);
  color:rgba(255,255,255,.5);
  font-size:10px;
  font-weight:760;
  text-transform:uppercase;
  letter-spacing:.11em;
}
.technology-contact__top i { color:var(--brand-gold-light); font-style:normal; }
.technology-contact__heading { position:relative; z-index:1; margin:clamp(24px,3vw,38px) 0 22px; }
.technology-contact__heading h3 {
  max-width:520px;
  margin:0;
  color:#fff;
  font-size:clamp(30px,3.25vw,48px);
  line-height:1.02;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.technology-contact__heading h3 em {
  font-family:var(--font-accent);
  font-weight:400;
  font-style:italic;
  letter-spacing:-.025em;
  color:var(--brand-gold-light);
  background:linear-gradient(115deg,#ffe29b 0%,#ffba52 34%,#b77000 76%,#ffd36f 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 5px 18px rgba(255,186,82,.12));
}
.technology-contact__heading p { max-width:48ch; margin:12px 0 0; color:rgba(255,255,255,.58); font-size:13px; line-height:1.6; }
.technology-contact__field { position:relative; z-index:1; display:grid; gap:7px; margin-top:12px; }
.technology-contact__field > span { color:rgba(255,255,255,.48); font-size:10px; font-weight:760; text-transform:uppercase; letter-spacing:.09em; }
.technology-contact__field select,
.technology-contact__field input,
.technology-contact__field textarea {
  width:100%;
  min-height:52px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  outline:none;
  color:#fff;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  font:inherit;
  transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s var(--ease-premium);
}
.technology-contact__field textarea { min-height:96px; resize:vertical; }
.technology-contact__field select { color-scheme:dark; cursor:pointer; }
.technology-contact__field input::placeholder,
.technology-contact__field textarea::placeholder { color:rgba(255,255,255,.35); }
.technology-contact__field select:focus,
.technology-contact__field input:focus,
.technology-contact__field textarea:focus {
  border-color:rgba(255,186,82,.58);
  background:rgba(255,255,255,.065);
  box-shadow:0 0 0 4px rgba(255,186,82,.07),inset 0 1px 0 rgba(255,255,255,.07);
}
.technology-contact__progressive {
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  transform:translate3d(0,10px,0);
  transition:grid-template-rows .45s var(--ease-premium),opacity .35s ease,transform .45s var(--ease-premium);
}
.technology-contact__progressive > * { min-height:0; overflow:hidden; }
.technology-contact.is-started .technology-contact__progressive {
  grid-template-rows:1fr;
  opacity:1;
  transform:none;
}
.technology-contact__submit { position:relative; z-index:1; align-self:flex-start; margin-top:18px; }
.technology-contact:not(.is-started) .technology-contact__submit { opacity:.58; pointer-events:none; }
.technology-contact__note { position:relative; z-index:1; margin:auto 0 0; padding-top:16px; color:rgba(255,255,255,.42); font-size:10px; line-height:1.55; text-transform:uppercase; letter-spacing:.055em; }
.technology-contact__note span { color:var(--brand-gold-light); margin-right:6px; }
.technology-contact.is-sending .technology-contact__submit { transform:translateY(1px) scale(.992); }

/* Home assistant restraint: the full assistant remains a global conversion tool,
   but supporting content now routes to content/service pages instead of reopening it. */
.focus-card__action,
.audience-card__action { text-decoration:none; }

@media (max-width:980px) {
  .technology-contact { min-height:auto; }
}
@media (max-width:620px) {
  .technology-contact { padding:20px; border-radius:22px; }
  .technology-contact__heading h3 { font-size:clamp(30px,9vw,40px); }
  .technology-contact__submit { width:100%; justify-content:center; }
}
@media (prefers-reduced-motion:reduce) {
  .technology-contact__progressive { transition:none; transform:none; }
}

/* =========================================================
   Sandino Law Premium v1.2.4 — verified contact data
   ========================================================= */
.header-email {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 10px;
  border-radius:999px;
  color:rgba(255,255,255,.82);
  text-decoration:none;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.035);
  transition:transform .28s var(--ease-premium),border-color .28s var(--ease-premium),background .28s var(--ease-premium),color .28s var(--ease-premium);
}
.header-email:hover,.header-email:focus-visible {
  transform:translateY(-2px);
  color:#fff;
  border-color:rgba(255,186,82,.34);
  background:rgba(255,186,82,.07);
}
.header-email__icon { width:18px; height:18px; display:grid; place-items:center; color:var(--brand-gold-light); }
.header-email__icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.header-email__label { font-size:11px; font-weight:680; white-space:nowrap; letter-spacing:.005em; }
.mobile-nav__email {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
  color:rgba(255,255,255,.8);
  text-decoration:none;
  font-size:14px;
}
.mobile-nav__email svg { width:18px; height:18px; fill:none; stroke:var(--brand-gold-light); stroke-width:1.7; }
@media (max-width:1480px) {
  .header-email__label { display:none; }
  .header-email { width:40px; padding:0; justify-content:center; }
}
@media (max-width:1180px) {
  .header-email { display:none; }
}

/* =========================================================
   Sandino Law Premium v1.3.1 — header social alignment
   ========================================================= */
.site-header__actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-height:44px;
}

/* One optical size for WhatsApp, email and social SVG controls. */
.header-whatsapp--write {
  min-height:40px;
  padding:1px 4px;
  align-items:center;
  border-radius:999px;
}
.header-whatsapp__icon,
.header-social a {
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:inline-grid;
  place-items:center;
  border-radius:50%;
}
.header-whatsapp__icon {
  color:#fff;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 0 0 rgba(255,186,82,0);
  transition:color .28s var(--ease-premium),background .28s var(--ease-premium),border-color .28s var(--ease-premium),box-shadow .28s var(--ease-premium),transform .28s var(--ease-premium);
}
.header-whatsapp--write:hover .header-whatsapp__icon,
.header-whatsapp--write:focus-visible .header-whatsapp__icon {
  color:var(--brand-gold-light);
  background:linear-gradient(145deg,rgba(255,186,82,.14),rgba(183,112,0,.055));
  border-color:rgba(255,186,82,.38);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 22px rgba(255,186,82,.13);
  transform:translateY(-1px);
}
.header-whatsapp__icon svg,
.header-social svg {
  width:18px;
  height:18px;
  display:block;
}

/* Social rail: white by default, warm Sandino accent on interaction. */
.header-social {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-height:40px;
  margin-left:2px;
  padding-left:8px;
  border-left:1px solid rgba(255,255,255,.12);
}
.header-social a {
  color:rgba(255,255,255,.94);
  background:transparent;
  border:1px solid transparent;
  transition:color .25s var(--ease-premium),background .25s var(--ease-premium),border-color .25s var(--ease-premium),transform .25s var(--ease-premium),box-shadow .25s var(--ease-premium);
}
.header-social a:hover,
.header-social a:focus-visible {
  color:var(--brand-gold-light);
  background:linear-gradient(145deg,rgba(255,186,82,.10),rgba(183,112,0,.035));
  border-color:rgba(255,186,82,.22);
  box-shadow:0 0 18px rgba(255,186,82,.10);
  transform:translateY(-1px);
}

/* Email remains a one-tap contact, vertically aligned with the icon rail. */
.header-email {
  min-height:40px;
  align-items:center;
  justify-content:center;
}
.header-email__icon {
  width:18px;
  height:18px;
  flex:0 0 18px;
}

/* Keep the write tab visually centered next to a social-sized WhatsApp icon. */
.header-whatsapp__tab {
  line-height:1;
  align-self:center;
}

/* Mobile uses the same SVG scale and visual hierarchy. */
.mobile-nav__social {
  align-items:center;
  gap:8px;
}
.mobile-nav__social a {
  width:44px;
  height:44px;
  color:#fff;
}
.mobile-nav__social a:hover,
.mobile-nav__social a:focus-visible {
  color:var(--brand-gold-light);
}
.mobile-nav__social svg {
  width:19px;
  height:19px;
}

@media (max-width:1320px) {
  .header-social a { width:36px; height:36px; flex-basis:36px; }
  .header-whatsapp__icon { width:36px; height:36px; flex-basis:36px; }
}


/* =========================================================
   Sandino Law Premium v1.3.2 — custom glass select
   Avoids inconsistent native dropdown rendering across browsers.
   ========================================================= */
.technology-contact__native-select {
  position:absolute !important;
  inline-size:1px !important;
  block-size:1px !important;
  margin:-1px !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.technology-contact__select {
  position:relative;
  display:grid;
  gap:8px;
}
.technology-contact__select-trigger {
  width:100%;
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  color:#fff;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s var(--ease-premium);
}
.technology-contact__select-trigger:hover,
.technology-contact__select.is-open .technology-contact__select-trigger {
  border-color:rgba(255,186,82,.58);
  background:rgba(255,255,255,.07);
  box-shadow:0 0 0 4px rgba(255,186,82,.07),inset 0 1px 0 rgba(255,255,255,.07);
}
.technology-contact__select-trigger:focus-visible {
  outline:none;
  border-color:rgba(255,186,82,.72);
  box-shadow:0 0 0 4px rgba(255,186,82,.11),inset 0 1px 0 rgba(255,255,255,.08);
}
.technology-contact__select-trigger svg {
  flex:0 0 20px;
  width:20px;
  height:20px;
  fill:none;
  stroke:var(--brand-gold-light);
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .32s var(--ease-premium);
}
.technology-contact__select.is-open .technology-contact__select-trigger svg { transform:rotate(180deg); }
.technology-contact__select-menu {
  position:relative;
  z-index:12;
  display:grid;
  max-height:0;
  overflow:hidden;
  opacity:0;
  transform:translate3d(0,-6px,0);
  border:1px solid transparent;
  border-radius:14px;
  background:linear-gradient(155deg,rgba(10,30,92,.98),rgba(20,61,146,.96));
  box-shadow:0 22px 52px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(18px) saturate(135%);
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  transition:max-height .38s var(--ease-premium),opacity .24s ease,transform .32s var(--ease-premium),border-color .24s ease;
}
.technology-contact__select.is-open .technology-contact__select-menu {
  max-height:238px;
  overflow-y:auto;
  opacity:1;
  transform:none;
  border-color:rgba(255,255,255,.13);
  scrollbar-width:thin;
  scrollbar-color:rgba(255,186,82,.55) transparent;
}
.technology-contact__select-menu::-webkit-scrollbar { width:7px; }
.technology-contact__select-menu::-webkit-scrollbar-thumb { background:rgba(255,186,82,.48); border-radius:999px; }
.technology-contact__select-menu button {
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  padding:10px 14px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:rgba(255,255,255,.78);
  background:transparent;
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:color .2s ease,background .2s ease,padding-left .25s var(--ease-premium);
}
.technology-contact__select-menu button:last-child { border-bottom:0; }
.technology-contact__select-menu button:hover,
.technology-contact__select-menu button:focus-visible,
.technology-contact__select-menu button.is-active,
.technology-contact__select-menu button[aria-selected="true"] {
  outline:none;
  color:#fff;
  background:linear-gradient(90deg,rgba(255,186,82,.16),rgba(255,255,255,.045));
  padding-left:18px;
}
.technology-contact__select-menu button[aria-selected="true"]::after {
  content:"✓";
  margin-left:auto;
  color:var(--brand-gold-light);
  font-weight:800;
}
.technology-contact__select.has-value .technology-contact__select-trigger {
  border-color:rgba(255,186,82,.34);
}

@media (max-width:620px) {
  .technology-contact__select.is-open .technology-contact__select-menu { max-height:214px; }
  .technology-contact__select-menu button { min-height:48px; }
}
@media (prefers-reduced-motion:reduce) {
  .technology-contact__select-trigger,
  .technology-contact__select-trigger svg,
  .technology-contact__select-menu,
  .technology-contact__select-menu button { transition:none !important; }
}

/* =========================================================
   Sandino Law Premium v1.4.0 — Sectors app workspace
   Master-detail UX: control and result stay in one viewport.
   ========================================================= */
.sectors-section--workspace {
  --sector-shift:0;
  min-height:clamp(980px,118vh,1320px);
  padding-block:clamp(88px,9vw,150px) clamp(150px,16vw,250px);
  overflow:clip;
}
.sectors-section--workspace .sectors-section__ambient {
  pointer-events:none;
  will-change:transform;
}
.sectors-section__ambient--one {
  width:min(62vw,980px); height:min(62vw,980px); right:-28vw; top:-28vw;
  background:radial-gradient(circle,rgba(53,104,255,.22),rgba(25,64,174,.08) 42%,transparent 70%);
  filter:blur(18px);
}
.sectors-section__ambient--two {
  position:absolute; width:520px; height:520px; left:-260px; bottom:4%; border-radius:50%;
  background:radial-gradient(circle,rgba(255,186,82,.085),transparent 67%); filter:blur(24px);
}
.sectors-app { position:relative; z-index:2; }
.sectors-intro {
  display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);
  gap:clamp(48px,8vw,150px); align-items:end;
}
.sectors-intro__copy { max-width:900px; }
.sectors-intro .section-title { margin-top:20px; max-width:880px; }
.sectors-intro__lead {
  max-width:520px; margin:0 0 10px; color:rgba(255,255,255,.62);
  font-size:clamp(16px,1.2vw,19px); line-height:1.75;
}
.sector-workspace {
  position:sticky; top:clamp(92px,8vw,124px);
  display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:clamp(16px,1.7vw,28px); margin-top:clamp(48px,6vw,84px);
  min-height:610px;
}
.sector-tabs,
.sector-stage {
  border:1px solid rgba(255,255,255,.13); border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 80px rgba(0,0,0,.16);
  backdrop-filter:blur(24px) saturate(145%); -webkit-backdrop-filter:blur(24px) saturate(145%);
}
.sector-tabs { overflow:hidden; align-self:stretch; }
.sector-tabs__head {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  min-height:66px; padding:0 24px; border-bottom:1px solid rgba(255,255,255,.10);
}
.sector-tabs__head span { color:#fff; font-size:12px; font-weight:760; letter-spacing:.05em; text-transform:uppercase; }
.sector-tabs__head small { color:rgba(255,255,255,.34); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.sector-tabs__scroller { display:flex; flex-direction:column; }
.sector-tab {
  position:relative; width:100%; min-height:66px; display:grid;
  grid-template-columns:42px minmax(0,1fr) 24px; gap:12px; align-items:center;
  padding:0 24px; border:0; border-bottom:1px solid rgba(255,255,255,.085);
  color:#fff; background:transparent; font:inherit; text-align:left; cursor:pointer;
  transition:background .35s var(--ease-premium),transform .35s var(--ease-premium),padding .35s var(--ease-premium);
}
.sector-tab:last-child { border-bottom:0; }
.sector-tab::before {
  content:""; position:absolute; left:0; top:12px; bottom:12px; width:2px; border-radius:2px;
  background:linear-gradient(180deg,var(--brand-gold-light),var(--brand-gold));
  transform:scaleY(0); transform-origin:center; opacity:0;
  transition:transform .35s var(--ease-premium),opacity .25s ease;
}
.sector-tab:hover { background:linear-gradient(90deg,rgba(255,255,255,.065),rgba(255,255,255,.015)); }
.sector-tab.is-active {
  padding-left:30px;
  background:linear-gradient(90deg,rgba(74,111,215,.26),rgba(255,255,255,.025));
}
.sector-tab.is-active::before { transform:scaleY(1); opacity:1; }
.sector-tab__index { color:rgba(255,255,255,.36); font-size:10px; font-weight:740; letter-spacing:.08em; }
.sector-tab strong { min-width:0; color:rgba(255,255,255,.88); font-size:clamp(18px,1.45vw,24px); font-weight:560; line-height:1.1; }
.sector-tab.is-active strong { color:#fff; }
.sector-tab__arrow { justify-self:end; color:var(--brand-gold-light); font-size:14px; transition:transform .35s var(--ease-premium); }
.sector-tab.is-active .sector-tab__arrow { transform:translate(3px,-3px); }
.sector-tab:focus-visible { outline:2px solid var(--brand-gold-light); outline-offset:-4px; }

.sector-stage {
  position:relative; min-width:0; overflow:hidden; padding:clamp(28px,3vw,48px);
  display:flex; flex-direction:column; justify-content:space-between;
  background:
    linear-gradient(145deg,rgba(64,101,202,.17),rgba(255,255,255,.035) 48%,rgba(255,186,82,.035)),
    rgba(8,27,86,.52);
  isolation:isolate;
}
.sector-stage::after {
  content:""; position:absolute; inset:auto -12% -28% auto; width:62%; aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle,rgba(255,186,82,.08),transparent 66%); filter:blur(10px); z-index:-1;
}
.sector-stage__visual { position:absolute; inset:0; overflow:hidden; z-index:-1; opacity:.78; }
.sector-stage__ring {
  position:absolute; right:clamp(-160px,-7vw,-60px); top:50%; border:1px solid rgba(255,186,82,.16);
  border-radius:50%; transform:translateY(calc(-50% + var(--sector-shift) * 10px));
  transition:transform .8s var(--ease-premium),opacity .5s ease;
}
.sector-stage__ring--one { width:520px; height:520px; }
.sector-stage__ring--two { width:390px; height:390px; right:-90px; border-color:rgba(255,255,255,.08); }
.sector-stage__ring--three { width:250px; height:250px; right:-18px; border-color:rgba(255,186,82,.12); }
.sector-stage__pulse {
  position:absolute; right:17%; top:33%; width:8px; height:8px; border-radius:50%; background:var(--brand-gold-light);
  box-shadow:0 0 0 0 rgba(255,186,82,.25); animation:slSectorPulse 3.4s ease-out infinite;
}
@keyframes slSectorPulse { 0%{box-shadow:0 0 0 0 rgba(255,186,82,.28)} 70%,100%{box-shadow:0 0 0 28px rgba(255,186,82,0)} }
.sector-stage__top { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; }
.sector-stage__top > div { display:flex; flex-direction:column; gap:8px; }
.sector-stage__top small { color:rgba(255,255,255,.4); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.sector-stage__counter { color:rgba(255,255,255,.42); font-size:12px; }
.sector-stage__counter b { color:var(--brand-gold-light); font-weight:780; }
.sector-stage__status { display:inline-flex; align-items:center; gap:8px; color:rgba(255,255,255,.46); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.sector-stage__status i { width:7px; height:7px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 0 5px rgba(255,186,82,.08); }
.sector-stage__body { max-width:720px; padding-block:clamp(48px,6vw,92px); }
.sector-stage__body h3 {
  margin:0; max-width:13ch; color:#fff; font-family:var(--font-display);
  font-size:clamp(52px,5vw,86px); font-weight:520; line-height:.92; letter-spacing:-.055em; text-wrap:balance;
}
.sector-stage__body p { max-width:64ch; margin:28px 0 0; color:rgba(255,255,255,.67); font-size:clamp(16px,1.25vw,19px); line-height:1.72; }
.sector-stage__tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.sector-stage__tags span {
  padding:9px 12px; border:1px solid rgba(255,255,255,.12); border-radius:999px;
  color:rgba(255,255,255,.62); background:rgba(255,255,255,.035); font-size:10px; letter-spacing:.06em; text-transform:uppercase;
}
.sector-stage__footer {
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
  padding-top:22px; border-top:1px solid rgba(255,255,255,.1);
}
.sector-stage__footer p { max-width:48ch; margin:0; color:rgba(255,255,255,.38); font-size:12px; line-height:1.55; }
.sector-stage__footer .text-link { flex:0 0 auto; }
.sector-stage.is-changing .sector-stage__body,
.sector-stage.is-changing .sector-stage__footer { opacity:0; transform:translate3d(0,14px,0); }
.sector-stage__body,.sector-stage__footer {
  transition:opacity .28s ease,transform .42s var(--ease-premium);
  transform:translate3d(0,0,0);
}

@media (max-width:1180px) {
  .sectors-section--workspace { min-height:auto; padding-bottom:clamp(100px,12vw,160px); }
  .sectors-intro { grid-template-columns:1fr; gap:24px; }
  .sectors-intro__lead { max-width:720px; }
  .sector-workspace { position:relative; top:auto; grid-template-columns:minmax(270px,.65fr) minmax(0,1.35fr); min-height:560px; }
  .sector-tab { min-height:60px; padding-inline:18px; }
  .sector-stage__body h3 { font-size:clamp(44px,5.5vw,66px); }
}
@media (max-width:820px) {
  .sectors-section--workspace { padding-block:82px 110px; }
  .sector-workspace { display:block; min-height:0; }
  .sector-tabs { border-radius:24px; overflow:visible; background:transparent; border:0; box-shadow:none; backdrop-filter:none; }
  .sector-tabs__head { min-height:auto; padding:0 0 14px; border-bottom:0; }
  .sector-tabs__scroller {
    flex-direction:row; gap:10px; overflow-x:auto; padding:2px 2px 14px; scroll-snap-type:x proximity;
    scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  .sector-tabs__scroller::-webkit-scrollbar { display:none; }
  .sector-tab {
    flex:0 0 auto; min-height:52px; width:auto; max-width:82vw; grid-template-columns:auto 1fr auto;
    gap:9px; padding:0 16px; border:1px solid rgba(255,255,255,.12); border-radius:999px;
    background:rgba(255,255,255,.035); scroll-snap-align:start;
  }
  .sector-tab::before { display:none; }
  .sector-tab.is-active { padding-left:16px; border-color:rgba(255,186,82,.42); background:linear-gradient(145deg,rgba(255,186,82,.15),rgba(255,255,255,.045)); }
  .sector-tab strong { font-size:15px; white-space:nowrap; }
  .sector-tab__arrow { display:none; }
  .sector-stage { margin-top:12px; min-height:520px; border-radius:26px; }
  .sector-stage__body { padding-block:54px; }
  .sector-stage__body h3 { max-width:12ch; font-size:clamp(44px,12vw,64px); }
  .sector-stage__footer { align-items:flex-start; flex-direction:column; }
}
@media (max-width:520px) {
  .sectors-intro .section-title { font-size:clamp(42px,12.5vw,58px); }
  .sector-stage { min-height:500px; padding:24px 20px; }
  .sector-stage__status { display:none; }
  .sector-stage__body { padding-block:42px; }
  .sector-stage__body h3 { font-size:clamp(42px,13vw,56px); }
  .sector-stage__body p { font-size:15px; }
  .sector-stage__footer p { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .sector-stage__pulse { animation:none; }
  .sector-stage__ring,.sector-stage__body,.sector-stage__footer,.sector-tab { transition:none !important; }
}

/* =========================================================
   Sandino Law Premium v1.5.0 — Services hub + master landing
   ========================================================= */
.services-hub-page,
.service-landing { overflow:clip; }
.services-hub-page em,
.service-landing em { color:var(--brand-gold); font-family:var(--font-display); font-weight:500; font-style:italic; }

/* Services hub hero */
.services-hub-hero {
  position:relative; min-height:78svh; display:flex; flex-direction:column; justify-content:flex-end;
  padding:clamp(170px,16vh,220px) 0 clamp(56px,7vw,92px); overflow:hidden; isolation:isolate;
  color:#fff; background:
    radial-gradient(circle at 78% 20%,rgba(52,95,205,.28),transparent 30%),
    radial-gradient(circle at 64% 68%,rgba(255,186,82,.055),transparent 34%),
    linear-gradient(118deg,#020a2f 0%,#06154c 48%,#153884 100%);
}
.services-hub-hero::after {
  content:""; position:absolute; inset:auto -12% -38% auto; width:min(72vw,1180px); aspect-ratio:1; border-radius:50%;
  border:1px solid rgba(255,186,82,.11); box-shadow:0 0 0 110px rgba(255,255,255,.018),0 0 0 220px rgba(255,186,82,.02); z-index:-1;
}
.services-hub-hero__ambient { position:absolute; inset:0; pointer-events:none; z-index:-1; }
.services-hub-hero__ambient span { position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.07); }
.services-hub-hero__ambient span:nth-child(1) { width:380px;height:380px;right:7%;top:18%;animation:slServiceOrbit 22s linear infinite; }
.services-hub-hero__ambient span:nth-child(2) { width:520px;height:520px;right:1%;top:8%;border-color:rgba(255,186,82,.08);animation:slServiceOrbit 31s linear reverse infinite; }
.services-hub-hero__ambient span:nth-child(3) { width:9px;height:9px;right:31%;top:30%;border:0;background:var(--brand-gold-light);box-shadow:0 0 32px rgba(255,186,82,.7);animation:slServicePulse 3.8s ease-in-out infinite; }
@keyframes slServiceOrbit { to { transform:rotate(360deg); } }
@keyframes slServicePulse { 0%,100%{opacity:.35;transform:scale(.8)} 50%{opacity:1;transform:scale(1.25)} }
.services-hub-hero__grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.52fr); gap:clamp(42px,8vw,140px); align-items:end; }
.services-hub-hero h1 { margin:22px 0 0; max-width:1040px; font-size:clamp(58px,7.6vw,118px); line-height:.91; letter-spacing:-.065em; font-weight:620; text-wrap:balance; }
.services-hub-hero h1 em { display:block; margin-top:8px; color:var(--brand-gold-light); font-size:.88em; line-height:.92; text-shadow:0 0 28px rgba(255,186,82,.10); }
.services-hub-hero__aside { padding-bottom:8px; }
.services-hub-hero__aside p { max-width:480px; margin:0 0 26px; color:rgba(255,255,255,.68); font-size:clamp(17px,1.4vw,21px); line-height:1.7; }
.services-hub-hero__meta { display:flex; flex-wrap:wrap; gap:10px 30px; padding-top:34px; margin-top:46px; border-top:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.46); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.services-hub-hero__meta span { display:flex; align-items:center; gap:9px; }
.services-hub-hero__meta span::before { content:""; width:4px; height:4px; border-radius:50%; background:var(--brand-gold-light); box-shadow:0 0 0 5px rgba(255,186,82,.07); }

/* Service hub app */
.services-hub-explorer-section { background:var(--paper-50); }
.services-hub-heading { align-items:start; }
.services-hub-heading .section-title { max-width:940px; }
.services-hub {
  display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); gap:clamp(16px,1.7vw,28px); align-items:stretch;
  min-height:680px;
}
.services-hub__rail,
.services-hub__stage { border:1px solid var(--line); border-radius:30px; overflow:hidden; }
.services-hub__rail { display:flex; flex-direction:column; background:rgba(255,255,255,.62); box-shadow:0 24px 70px rgba(4,17,50,.07); }
.services-hub__tab {
  position:relative; min-height:82px; display:grid; grid-template-columns:42px minmax(0,1fr) 26px; gap:14px; align-items:center;
  padding:0 24px; border:0; border-bottom:1px solid var(--line); color:var(--brand-navy-deep); background:transparent; text-align:left; cursor:pointer;
  transition:background .35s var(--ease-premium),padding .35s var(--ease-premium),transform .35s var(--ease-premium);
}
.services-hub__tab:last-child { border-bottom:0; }
.services-hub__tab::before { content:""; position:absolute; left:0; top:14px; bottom:14px; width:2px; border-radius:2px; background:linear-gradient(180deg,var(--brand-gold-light),var(--brand-gold)); transform:scaleY(0); opacity:0; transition:transform .35s var(--ease-premium),opacity .25s ease; }
.services-hub__tab:hover { background:rgba(7,28,91,.035); }
.services-hub__tab.is-active { padding-left:30px; background:linear-gradient(90deg,rgba(7,38,122,.09),rgba(255,186,82,.035)); }
.services-hub__tab.is-active::before { transform:scaleY(1); opacity:1; }
.services-hub__tab-index { color:#8290a0; font-size:10px; font-weight:760; letter-spacing:.08em; }
.services-hub__tab-title { font-size:clamp(19px,1.55vw,26px); line-height:1.08; font-weight:620; letter-spacing:-.025em; }
.services-hub__tab-arrow { justify-self:end; color:var(--brand-gold); transition:transform .35s var(--ease-premium); }
.services-hub__tab.is-active .services-hub__tab-arrow { transform:translate(3px,-3px); }
.services-hub__tab:focus-visible { outline:2px solid var(--brand-gold); outline-offset:-4px; }
.services-hub__stage {
  position:relative; min-width:0; display:grid; grid-template-rows:minmax(250px,.65fr) minmax(0,1fr);
  background:linear-gradient(145deg,#06153d,#0d2f78 55%,#183f88); color:#fff; box-shadow:0 30px 90px rgba(4,17,50,.16);
}
.services-hub__visual { position:relative; overflow:hidden; min-height:280px; background:radial-gradient(circle at 68% 38%,rgba(255,186,82,.15),transparent 23%),linear-gradient(140deg,#081b51,#153b8c); background-size:cover; background-position:center; }
.services-hub__visual.has-image { background-image:linear-gradient(180deg,rgba(2,10,38,.12),rgba(2,10,38,.66)),var(--service-image); }
.services-hub__visual::after { content:""; position:absolute; inset:auto 0 0; height:52%; background:linear-gradient(180deg,transparent,#081c52); }
.services-hub__visual-orbit { position:absolute; width:410px; height:410px; right:-90px; top:-110px; border:1px solid rgba(255,186,82,.17); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(255,186,82,.02); transition:transform .9s var(--ease-premium); }
.services-hub__stage-index { position:absolute; left:28px; top:24px; z-index:2; color:var(--brand-gold-light); font-family:var(--font-display); font-size:clamp(48px,5vw,78px); line-height:1; }
.services-hub__stage-body { padding:clamp(28px,3.5vw,52px); transition:opacity .25s ease,transform .42s var(--ease-premium); }
.services-hub__eyebrow { color:rgba(255,255,255,.45); font-size:10px; font-weight:760; letter-spacing:.12em; text-transform:uppercase; }
.services-hub__stage h3 { margin:14px 0 16px; max-width:13ch; font-family:var(--font-display); font-size:clamp(44px,5vw,76px); line-height:.94; font-weight:500; letter-spacing:-.05em; }
.services-hub__stage p { max-width:68ch; margin:0; color:rgba(255,255,255,.66); font-size:clamp(16px,1.25vw,19px); line-height:1.7; }
.services-hub__capabilities,.services-hub__sectors { display:flex; flex-wrap:wrap; gap:8px; }
.services-hub__capabilities { margin-top:28px; }
.services-hub__capabilities span,.services-hub__sectors span { padding:8px 11px; border:1px solid rgba(255,255,255,.11); border-radius:999px; background:rgba(255,255,255,.035); color:rgba(255,255,255,.62); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.services-hub__stage-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-top:34px; padding-top:24px; border-top:1px solid rgba(255,255,255,.1); }
.services-hub__stage .button--secondary { color:#fff; border-color:rgba(255,255,255,.18); }
.services-hub__stage.is-changing .services-hub__stage-body { opacity:0; transform:translate3d(0,14px,0); }
.services-hub__stage.is-changing .services-hub__visual-orbit { transform:scale(.92) rotate(-8deg); }
.services-hub-method { background:var(--paper-100); }
.services-hub-method__grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(50px,9vw,160px); align-items:start; }
.services-hub-method__steps { border-top:1px solid var(--line); }
.services-hub-method__steps article { display:grid; grid-template-columns:56px minmax(0,1fr); gap:18px; padding:28px 0; border-bottom:1px solid var(--line); }
.services-hub-method__steps article > span { color:var(--brand-gold); font-size:11px; }
.services-hub-method__steps h3 { margin:0; font-size:clamp(28px,2.8vw,42px); letter-spacing:-.04em; }
.services-hub-method__steps p { margin:6px 0 0; color:var(--text-soft); }
.services-hub-contact { padding:0 0 var(--section-y); background:var(--paper-100); }
.services-hub-contact__inner { display:flex; align-items:end; justify-content:space-between; gap:40px; padding:clamp(32px,5vw,70px); border-radius:34px; color:#fff; background:linear-gradient(118deg,#03103e,#0a2e79 56%,#1b4993); box-shadow:0 30px 90px rgba(3,17,56,.15); }
.services-hub-contact h2 { margin:16px 0 0; max-width:880px; font-size:clamp(38px,5.2vw,72px); line-height:.98; letter-spacing:-.05em; }
.services-hub-contact h2 em { color:var(--brand-gold-light); }

/* Master service landing */
.service-landing [id] { scroll-margin-top:130px; }
.service-hero {
  position:relative; min-height:90svh; display:flex; align-items:end; padding:clamp(170px,17vh,220px) 0 clamp(70px,8vw,118px);
  color:#fff; overflow:hidden; isolation:isolate; background:
    radial-gradient(circle at 76% 20%,rgba(62,105,220,.28),transparent 30%),
    linear-gradient(118deg,#020a2f 0%,#07174c 50%,#153b84 100%);
}
.service-hero.has-image { background-image:linear-gradient(90deg,rgba(2,10,35,.92) 0%,rgba(2,10,35,.76) 48%,rgba(2,10,35,.28) 100%),var(--service-hero-image); background-size:cover; background-position:center; }
.service-hero__ambient { position:absolute; inset:0; z-index:-1; pointer-events:none; }
.service-hero__ambient span { position:absolute; border:1px solid rgba(255,186,82,.1); border-radius:50%; }
.service-hero__ambient span:nth-child(1){width:520px;height:520px;right:-160px;top:10%;}
.service-hero__ambient span:nth-child(2){width:360px;height:360px;right:-20px;top:22%;border-color:rgba(255,255,255,.07);}
.service-hero__ambient span:nth-child(3){width:8px;height:8px;right:24%;top:34%;border:0;background:var(--brand-gold-light);box-shadow:0 0 24px rgba(255,186,82,.7);}
.service-hero__grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.58fr); gap:clamp(42px,8vw,130px); align-items:end; }
.service-hero__back { display:inline-flex; margin-bottom:28px; color:rgba(255,255,255,.5); font-size:12px; }
.service-hero h1 { margin:18px 0 0; max-width:980px; font-size:clamp(60px,7.8vw,118px); line-height:.9; letter-spacing:-.067em; text-wrap:balance; }
.service-hero__copy > p { max-width:760px; margin:28px 0 0; color:rgba(255,255,255,.68); font-size:clamp(18px,1.6vw,23px); line-height:1.6; }
.service-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.service-hero__visual { min-height:560px; position:relative; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:34px; background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025)); box-shadow:0 32px 90px rgba(0,0,0,.22); backdrop-filter:blur(18px); }
.service-hero__visual-media { position:absolute; inset:0; background:radial-gradient(circle at 68% 28%,rgba(255,186,82,.15),transparent 26%),linear-gradient(145deg,rgba(54,93,198,.16),transparent 60%); }
.service-hero.has-image .service-hero__visual-media { background:linear-gradient(180deg,rgba(2,10,35,.02),rgba(2,10,35,.58)); }
.service-hero__visual-media::before,.service-hero__visual-media::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,186,82,.13); }
.service-hero__visual-media::before { width:440px;height:440px;right:-120px;top:-80px;box-shadow:0 0 0 76px rgba(255,255,255,.015); }
.service-hero__visual-media::after { width:12px;height:12px;right:25%;top:31%;background:var(--brand-gold-light);box-shadow:0 0 24px rgba(255,186,82,.7); }
.service-hero__visual-glass { position:absolute; inset:auto 18px 18px; padding:24px; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:linear-gradient(145deg,rgba(7,27,87,.7),rgba(255,255,255,.05)); backdrop-filter:blur(18px); }
.service-hero__visual-glass > span { color:rgba(255,255,255,.45); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.service-hero__visual-glass strong { display:block; margin:8px 0 18px; font-size:clamp(22px,2.2vw,32px); line-height:1.1; }
.service-hero__sectors { display:flex; flex-wrap:wrap; gap:8px; }
.service-hero__sectors i { padding:8px 11px; border:1px solid rgba(255,255,255,.1); border-radius:999px; color:rgba(255,255,255,.58); font-size:10px; font-style:normal; text-transform:uppercase; letter-spacing:.06em; }
.service-subnav { position:sticky; top:88px; z-index:90; border-bottom:1px solid var(--line); background:rgba(252,251,248,.86); backdrop-filter:blur(18px) saturate(135%); }
.service-subnav__inner { display:flex; gap:8px; overflow-x:auto; padding-block:10px; scrollbar-width:none; }
.service-subnav__inner::-webkit-scrollbar { display:none; }
.service-subnav a { flex:0 0 auto; padding:9px 13px; border-radius:999px; color:#62707b; font-size:11px; font-weight:700; transition:color .25s ease,background .25s ease; }
.service-subnav a:hover,.service-subnav a:focus-visible { color:var(--brand-navy-deep); background:#fff; }
.service-intro { background:#fff; }
.service-intro__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(360px,.72fr); gap:clamp(50px,9vw,160px); align-items:start; }
.service-intro__body { max-width:720px; color:var(--text-soft); font-size:clamp(18px,1.45vw,22px); line-height:1.8; }
.service-problems { background:var(--paper-100); }
.service-problems__rail { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.service-problem { min-height:240px; display:flex; flex-direction:column; justify-content:space-between; padding:24px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.54); transition:transform .35s var(--ease-premium),box-shadow .35s ease,border-color .35s ease; }
.service-problem:hover { transform:translateY(-5px); border-color:rgba(183,112,0,.24); box-shadow:0 20px 52px rgba(4,17,50,.07); }
.service-problem > span { color:var(--brand-gold); font-size:10px; }
.service-problem p { margin:54px 0 0; font-size:clamp(18px,1.4vw,22px); line-height:1.5; letter-spacing:-.02em; }
.service-scope { background:#fff; }
.service-scope__grid { display:grid; grid-template-columns:minmax(280px,.55fr) minmax(0,1fr); gap:clamp(48px,9vw,150px); align-items:start; }
.service-scope__intro { position:sticky; top:150px; }
.service-scope__intro > p { max-width:430px; color:var(--text-soft); }
.service-scope__list { border-top:1px solid var(--line); }
.service-scope__item { display:grid; grid-template-columns:48px minmax(0,1fr) 24px; gap:18px; align-items:start; padding:30px 0; border-bottom:1px solid var(--line); transition:padding .35s var(--ease-premium),background .35s ease; }
.service-scope__item:hover { padding-left:12px; padding-right:12px; background:linear-gradient(90deg,rgba(7,38,122,.035),transparent); }
.service-scope__item > span { color:#8b96a0; font-size:10px; }
.service-scope__item h3 { margin:0; font-size:clamp(28px,2.7vw,42px); line-height:1.05; letter-spacing:-.04em; }
.service-scope__item p { max-width:680px; margin:10px 0 0; color:var(--text-soft); }
.service-scope__item > i { justify-self:end; color:var(--brand-gold); font-style:normal; }
.service-fit { color:#fff; background:linear-gradient(118deg,#020a2f,#071a56 54%,#163b84); overflow:hidden; }
.service-fit::after { content:""; position:absolute; width:640px;height:640px;right:-280px;bottom:-340px;border:1px solid rgba(255,186,82,.1);border-radius:50%;box-shadow:0 0 0 100px rgba(255,255,255,.015),0 0 0 200px rgba(255,186,82,.018); }
.service-fit__grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(54px,9vw,160px); align-items:start; position:relative; z-index:2; }
.service-fit__intro h2 { margin:18px 0 0; max-width:750px; font-size:clamp(42px,5.5vw,78px); line-height:.98; letter-spacing:-.052em; }
.service-fit__intro h2 em { color:var(--brand-gold-light); }
.service-fit__panels { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.service-fit__panel { padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:26px; background:rgba(255,255,255,.035); }
.service-fit__panel--glass { background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025)); backdrop-filter:blur(18px); }
.service-fit__panel > span { color:var(--brand-gold-light); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.service-fit__panel ul { list-style:none; padding:0; margin:28px 0 0; }
.service-fit__panel li { position:relative; padding:16px 0 16px 18px; border-top:1px solid rgba(255,255,255,.085); color:rgba(255,255,255,.68); }
.service-fit__panel li::before { content:""; position:absolute; left:0; top:25px; width:5px;height:5px;border-radius:50%;background:var(--brand-gold-light); }
.service-method { background:#fff; }
.service-method__track { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); }
.service-method__track::before { content:""; position:absolute; top:-1px; left:0; width:25%; height:1px; background:linear-gradient(90deg,var(--brand-gold),var(--brand-gold-light)); }
.service-method__step { min-height:320px; padding:24px 28px 28px 0; border-right:1px solid var(--line); }
.service-method__step + .service-method__step { padding-left:28px; }
.service-method__step:last-child { border-right:0; }
.service-method__step > span { color:var(--brand-gold); font-size:10px; }
.service-method__step h3 { margin:100px 0 12px; font-size:clamp(30px,3vw,44px); letter-spacing:-.04em; }
.service-method__step p { margin:0; color:var(--text-soft); }
.service-experience { background:var(--paper-100); }
.service-experience__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.service-experience__card { min-height:320px; display:flex; flex-direction:column; align-items:flex-start; padding:26px; border:1px solid var(--line); border-radius:26px; background:#fff; transition:transform .35s var(--ease-premium),box-shadow .35s ease; }
.service-experience__card:hover { transform:translateY(-5px); box-shadow:0 22px 58px rgba(4,17,50,.08); }
.service-experience__card > span { color:var(--brand-gold); font-family:var(--font-display); font-size:clamp(34px,3.8vw,54px); line-height:1; }
.service-experience__card h3 { margin:auto 0 12px; font-size:clamp(24px,2.3vw,34px); line-height:1.08; letter-spacing:-.035em; }
.service-experience__card p { margin:0 0 22px; color:var(--text-soft); }
.service-experience__card > i { color:var(--brand-gold); font-style:normal; }
.service-team { background:#fff; }
.service-team__grid { display:grid; grid-template-columns:minmax(280px,.58fr) minmax(0,1fr); gap:clamp(48px,8vw,130px); align-items:start; }
.service-team__people { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.service-team__photo { aspect-ratio:4/5; overflow:hidden; border-radius:22px; background:var(--paper-100); }
.service-team__photo img { width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease-premium); }
.service-team__person:hover img { transform:scale(1.035); }
.service-team__person > span { display:block; margin-top:16px; color:var(--text-soft); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.service-team__person h3 { margin:5px 0 0; font-size:22px; letter-spacing:-.03em; }
.service-faq { background:var(--paper-50); }
.service-faq__grid { display:grid; grid-template-columns:minmax(280px,.58fr) minmax(0,1fr); gap:clamp(48px,8vw,140px); align-items:start; }
.service-faq__grid > div:first-child { position:sticky; top:150px; }
.service-faq__grid > div:first-child > p { max-width:440px; color:var(--text-soft); }
.service-faq__items { border-top:1px solid var(--line); }
.service-faq__item { border-bottom:1px solid var(--line); }
.service-faq__item summary { list-style:none; display:flex; justify-content:space-between; gap:24px; padding:24px 0; cursor:pointer; font-size:clamp(19px,1.7vw,25px); font-weight:650; letter-spacing:-.025em; }
.service-faq__item summary::-webkit-details-marker { display:none; }
.service-faq__item summary span { color:var(--brand-gold); transition:transform .3s var(--ease-premium); }
.service-faq__item[open] summary span { transform:rotate(45deg); }
.service-faq__item div { padding:0 0 24px; }
.service-faq__item p { max-width:720px; margin:0; color:var(--text-soft); }
.service-contact { padding:0 0 var(--section-y); background:var(--paper-50); }
.service-contact__inner { display:flex; align-items:end; justify-content:space-between; gap:40px; padding:clamp(34px,5vw,70px); border-radius:34px; color:#fff; background:linear-gradient(118deg,#020a2f,#0b2f79 58%,#17438d); }
.service-contact h2 { margin:18px 0 0; max-width:900px; font-size:clamp(40px,5.2vw,74px); line-height:.98; letter-spacing:-.052em; }
.service-contact h2 em { color:var(--brand-gold-light); }
.service-contact p { max-width:620px; margin:18px 0 0; color:rgba(255,255,255,.58); }

@media (min-width:1800px) {
  .services-hub-page .container,.service-landing .container { --container:1540px; }
  .services-hub__stage { grid-template-rows:minmax(300px,.72fr) minmax(0,1fr); }
  .service-hero__visual { min-height:640px; }
}
@media (min-width:2400px) {
  .services-hub-page .container,.service-landing .container { --container:1780px; }
  .services-hub-hero h1,.service-hero h1 { max-width:1220px; }
}
@media (max-width:1180px) {
  .services-hub-hero__grid,.service-hero__grid,.service-fit__grid { grid-template-columns:1fr; }
  .services-hub-hero__aside { max-width:720px; }
  .services-hub { grid-template-columns:minmax(250px,.62fr) minmax(0,1.38fr); }
  .service-hero__visual { min-height:420px; max-width:760px; }
  .service-problems__rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-scope__grid,.service-team__grid,.service-faq__grid { grid-template-columns:1fr; }
  .service-scope__intro,.service-faq__grid > div:first-child { position:static; }
  .service-fit__panels { max-width:900px; }
}
@media (max-width:900px) {
  .services-hub-hero { min-height:auto; padding-top:150px; }
  .services-hub-hero h1,.service-hero h1 { font-size:clamp(50px,11vw,82px); }
  .services-hub { display:block; min-height:0; }
  .services-hub__rail { flex-direction:row; gap:10px; overflow-x:auto; padding:2px 2px 14px; border:0; border-radius:0; background:transparent; box-shadow:none; scrollbar-width:none; scroll-snap-type:x proximity; }
  .services-hub__rail::-webkit-scrollbar { display:none; }
  .services-hub__tab { flex:0 0 auto; width:auto; min-height:52px; grid-template-columns:auto 1fr; gap:8px; padding:0 16px; border:1px solid var(--line); border-radius:999px; background:#fff; scroll-snap-align:start; }
  .services-hub__tab::before,.services-hub__tab-arrow { display:none; }
  .services-hub__tab.is-active { padding-left:16px; border-color:rgba(183,112,0,.35); background:linear-gradient(145deg,rgba(255,186,82,.11),#fff); }
  .services-hub__tab-title { font-size:15px; white-space:nowrap; }
  .services-hub__stage { margin-top:10px; border-radius:26px; }
  .services-hub-method__grid { grid-template-columns:1fr; }
  .services-hub-contact__inner,.service-contact__inner { align-items:flex-start; flex-direction:column; }
  .service-subnav { top:78px; }
  .service-problems__rail { grid-template-columns:1fr 1fr; }
  .service-method__track { grid-template-columns:1fr 1fr; }
  .service-method__step,.service-method__step + .service-method__step { min-height:250px; padding:24px; border-bottom:1px solid var(--line); }
  .service-method__step:nth-child(2n) { border-right:0; }
  .service-method__step h3 { margin-top:56px; }
  .service-experience__grid,.service-team__people { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .services-hub-hero { padding:132px 0 62px; }
  .services-hub-hero h1 { font-size:clamp(46px,13vw,64px); }
  .services-hub-hero__meta { gap:8px 18px; }
  .services-hub__visual { min-height:220px; }
  .services-hub__stage h3 { font-size:clamp(42px,12vw,58px); }
  .services-hub__stage-footer { align-items:flex-start; flex-direction:column; }
  .services-hub__stage .button { width:100%; }
  .services-hub-contact__inner { border-radius:26px; }
  .service-hero { min-height:auto; padding:140px 0 64px; }
  .service-hero h1 { font-size:clamp(48px,13vw,66px); }
  .service-hero__actions { display:grid; grid-template-columns:1fr; }
  .service-hero__visual { min-height:360px; border-radius:26px; }
  .service-subnav { top:72px; }
  .service-problems__rail { grid-template-columns:1fr; }
  .service-problem { min-height:190px; }
  .service-fit__panels,.service-method__track,.service-experience__grid,.service-team__people { grid-template-columns:1fr; }
  .service-method__step,.service-method__step + .service-method__step { min-height:0; padding:26px 0; border-right:0; }
  .service-method__step h3 { margin-top:34px; }
  .service-contact__inner { border-radius:26px; }
}
@media (prefers-reduced-motion:reduce) {
  .services-hub-hero__ambient span,.services-hub__stage-body,.services-hub__visual-orbit,.services-hub__tab,.service-problem,.service-scope__item { animation:none !important; transition:none !important; }
}
