/* LAWTER v5.1 Signature Experience ----------------------------------------- */
:root{--signature-line:rgba(237,207,149,.48);--signature-glow:rgba(216,183,125,.16)}

/* Page progress integrated into the corporate header */
.site-header{--page-progress:0%}
.site-header::after{content:"";position:absolute;left:0;bottom:-1px;width:var(--page-progress);height:1px;background:linear-gradient(90deg,transparent 0,var(--gold-300) 16%,var(--gold-500) 78%,transparent 100%);box-shadow:0 0 18px rgba(237,207,149,.30);pointer-events:none;transition:width .08s linear}

/* Fixed section rail: an editorial, structural navigation layer */
.section-rail,.service-chapter-rail{position:fixed;right:18px;top:50%;z-index:875;display:grid;gap:11px;transform:translateY(-50%)}
.section-rail::before,.service-chapter-rail::before{content:"";position:absolute;right:6px;top:7px;bottom:7px;width:1px;background:rgba(194,158,106,.20)}
.section-rail a,.service-chapter-rail a{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:24px;color:var(--muted-2)}
.section-rail a::after,.service-chapter-rail a::after{content:"";position:relative;z-index:2;width:13px;height:13px;border:1px solid rgba(194,158,106,.40);background:var(--navy-950);transform:rotate(45deg);transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.section-rail .rail-copy,.service-chapter-rail .rail-copy{max-width:0;overflow:hidden;white-space:nowrap;opacity:0;transform:translateX(8px);font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-200);transition:max-width .35s var(--ease),opacity .25s,transform .35s var(--ease)}
.section-rail .rail-no,.service-chapter-rail .rail-no{font-family:var(--serif);font-size:10px;color:var(--gold-400)}
.section-rail a:hover .rail-copy,.section-rail a:focus-visible .rail-copy,.section-rail a.is-active .rail-copy,.service-chapter-rail a:hover .rail-copy,.service-chapter-rail a:focus-visible .rail-copy,.service-chapter-rail a.is-active .rail-copy{max-width:180px;opacity:1;transform:none}
.section-rail a.is-active::after,.service-chapter-rail a.is-active::after{border-color:var(--gold-300);background:var(--gold-500);transform:rotate(45deg) scale(1.08);box-shadow:0 0 0 4px rgba(194,158,106,.08),0 0 20px rgba(216,183,125,.24)}

/* Hero: the logo geometry becomes a live sector instrument */
.hero-v5{position:relative;isolation:isolate}
.hero-v5::before{content:"";position:absolute;left:0;right:0;top:18%;height:1px;background:linear-gradient(90deg,transparent 4%,rgba(194,158,106,.10) 24%,transparent 62%);pointer-events:none}
.hero-structure{isolation:isolate;padding-bottom:142px}
.hero-sector-backdrop{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;opacity:.13;filter:saturate(.62) contrast(1.08);transform:scale(1.02);transition:opacity .35s var(--ease),transform .8s var(--ease)}
.hero-structure::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,11,23,.22),rgba(2,11,23,.76) 66%,rgba(2,11,23,.97));pointer-events:none}
.structure-pillars{bottom:158px}
.structure-baseline{bottom:122px}
.structure-pillar{width:18%;transition:transform .35s var(--ease),background .35s,border-color .35s,box-shadow .35s,filter .35s}
.structure-pillar:hover,.structure-pillar:focus-visible,.structure-pillar.is-active{width:18%;transform:translateY(-7px);background:rgba(194,158,106,.17);border-color:var(--gold-300);box-shadow:0 18px 42px rgba(0,0,0,.25),inset 0 0 0 1px rgba(237,207,149,.10)}
.structure-pillar.is-active img,.structure-pillar:hover img,.structure-pillar:focus-visible img{opacity:.68;transform:scale(1.05)}
.structure-pillar.is-active::before{content:"";position:absolute;z-index:3;inset:0;border-top:2px solid var(--gold-300);box-shadow:inset 0 18px 28px rgba(194,158,106,.08);pointer-events:none}
.hero-sector-preview{position:absolute;z-index:8;left:22px;right:22px;bottom:19px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px 16px;border:1px solid rgba(194,158,106,.30);background:linear-gradient(90deg,rgba(2,11,23,.94),rgba(7,26,49,.86));backdrop-filter:blur(16px);box-shadow:0 14px 38px rgba(0,0,0,.26)}
.hero-sector-preview::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold-metal)}
.hero-sector-no{font-family:var(--serif);font-size:27px;line-height:1;color:var(--gold-300)}
.hero-sector-copy{min-width:0}.hero-sector-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--serif);font-size:19px;font-weight:400;color:var(--cream-100)}.hero-sector-copy p{margin:3px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-2);font-size:10px}
.hero-sector-link{display:inline-flex;align-items:center;gap:8px;font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-300)}
.hero-sector-preview.is-switching .hero-sector-copy,.hero-sector-preview.is-switching .hero-sector-no{opacity:.32;transform:translateY(4px)}
.hero-sector-copy,.hero-sector-no{transition:opacity .18s,transform .18s}

/* Capability stage: editorial detail rather than a generic image caption */
.capability-media figcaption{left:26px;right:26px;bottom:24px;display:block;padding-top:18px;border-top:1px solid rgba(237,207,149,.30)}
.capability-media figcaption .cap-stage-kicker{display:flex;justify-content:space-between;gap:14px;margin-bottom:8px;font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold-400)}
.capability-media figcaption strong{display:block;font-size:clamp(25px,2.2vw,34px);line-height:1.05;margin-bottom:9px}
.capability-media figcaption p{margin:0 0 14px;max-width:360px;color:var(--cream-200);font-size:11px;line-height:1.55}
.capability-media figcaption a{display:inline-flex;align-items:center;gap:8px;color:var(--gold-300);font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.capability-row{position:relative}.capability-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold-metal);transform:scaleY(0);transform-origin:center;transition:transform .3s var(--ease)}.capability-row.is-active::before{transform:scaleY(1)}
.capability-row.is-active>a{background:linear-gradient(90deg,rgba(194,158,106,.10),transparent 68%)}

/* Structural section accents and media reveals */
[data-rail-section]{position:relative;scroll-margin-top:calc(var(--header) + 22px)}
[data-rail-section]>.section-signature-line{position:absolute;left:0;top:0;width:0;height:1px;background:linear-gradient(90deg,var(--gold-500),transparent);transition:width 1s var(--ease)}
[data-rail-section].is-section-active>.section-signature-line{width:min(38.2%,620px)}
[data-media-reveal]{clip-path:inset(0 100% 0 0);transition:clip-path 1s var(--ease)}
[data-media-reveal].is-media-visible{clip-path:inset(0 0 0 0)}
[data-media-reveal] img{transform:scale(1.025);transition:transform 1.15s var(--ease)}
[data-media-reveal].is-media-visible img{transform:scale(1)}

/* Operating model gets an architectural running line */
.operating-steps{position:relative}.operating-steps::before{content:"";position:absolute;left:34px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,var(--gold-500),rgba(194,158,106,.08))}.operating-step{position:relative;padding-left:12px}.operating-step>span{position:relative;z-index:1;background:var(--navy-850)}

/* Service chapters: discreet navigation and stronger chapter hierarchy */
.service-hero,.service-overview,.service-focus,.service-process,.related{scroll-margin-top:calc(var(--header) + 28px)}
.service-hero-media{isolation:isolate}.service-hero-media::before{content:"";position:absolute;z-index:3;right:18px;top:18px;width:34px;height:34px;border-top:1px solid var(--gold-300);border-right:1px solid var(--gold-300);opacity:.65}
.service-overview-copy,.focus-heading,.process-head,.related-head{position:relative}.service-overview-copy::before,.focus-heading::before,.process-head::before,.related-head::before{content:"";position:absolute;left:0;top:-18px;width:34px;height:1px;background:var(--gold-500)}
.related-head h2{font-size:clamp(38px,4.4vw,62px)}

/* Premium pointer states only on precise pointers */
@media(hover:hover) and (pointer:fine){
  .hero-sector-link:hover,.capability-media figcaption a:hover{color:var(--cream-100)}
  .cap-panel-link:hover i,.related-grid a:hover i{transform:translate(2px,-2px)}
  .cap-panel-link i,.related-grid i{transition:transform .2s var(--ease)}
}

@media(max-width:1320px){.section-rail,.service-chapter-rail{display:none}}
@media(max-width:960px){
  .hero-structure{padding-bottom:126px}.structure-pillars{bottom:144px}.structure-baseline{bottom:111px}
  .hero-sector-preview{left:16px;right:16px;bottom:15px}
  [data-media-reveal]{clip-path:none}[data-media-reveal] img{transform:none}
}
@media(max-width:680px){
  .site-header::after{height:1px}
  .hero-structure{min-height:470px;padding-bottom:128px}.structure-pillars{bottom:148px}.structure-baseline{bottom:116px}
  .hero-sector-preview{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px 13px}.hero-sector-no{font-size:23px}.hero-sector-copy strong{font-size:16px}.hero-sector-copy p{font-size:9px}.hero-sector-link{display:none}
  .structure-pillar:hover,.structure-pillar:focus-visible,.structure-pillar.is-active{width:19%;transform:translateY(-4px)}
  .operating-steps::before{left:23px}.operating-step{padding-left:0}
}
@media(max-width:390px){.hero-sector-copy p{display:none}.hero-structure{min-height:440px}}
@media(prefers-reduced-motion:reduce){
  .site-header::after,.hero-sector-backdrop,.hero-sector-copy,.hero-sector-no,[data-media-reveal],[data-media-reveal] img,.capability-row::before{transition:none!important}
  [data-media-reveal]{clip-path:none}.structure-pillar.is-active{transform:none}
}
