
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Manrope:wght@500;600;700;800&family=DM+Sans:wght@400;500;600&display=swap');

:root{
 --black:#080909;--black2:#11120f;--black3:#181914;--cream:#e7e0d4;--paper:#f3efe8;--sand:#d8cdbb;
 --gold:#b49a67;--gold2:#786448;--ink:#171817;--muted:#9ea099;--line:rgba(255,255,255,.11);
 --serif:'Cormorant Garamond',serif;--sans:'Manrope',sans-serif;--body:'DM Sans',sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#f5f2ea;font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.nav{height:82px;position:fixed;z-index:100;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;background:rgba(8,9,9,.74);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06);transition:.3s}.nav.scrolled{background:rgba(8,9,9,.97);box-shadow:0 6px 30px rgba(0,0,0,.18)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:41px;height:41px;border:1px solid #ada18a;border-radius:50%;display:grid;place-items:center;font:700 12px var(--sans)}.brand-copy{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#a8aaa5;line-height:1.28}
.nav-links{display:flex;gap:21px}.nav-links a{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#bbbdb8;transition:.25s}.nav-links a:hover{color:#fff}.nav-cta,.btn{display:inline-flex;align-items:center;gap:9px;border:1px solid #827765;padding:12px 17px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;transition:.25s}.nav-cta:hover,.btn:hover{background:var(--gold);color:#111;border-color:var(--gold)}.btn.dark{background:#111;color:#fff;border-color:#111}.btn.dark:hover{background:#fff;color:#111}
.eyebrow{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#aa9877}.hero{min-height:100svh;padding-top:82px;display:grid;grid-template-columns:1.02fr .98fr;background:var(--black)}.hero-copy{padding:10vh 6vw 9vh 7vw;display:flex;flex-direction:column;justify-content:center}.hero h1,.page-hero h1{font:500 clamp(60px,7.2vw,112px)/.88 var(--serif);letter-spacing:-.045em;margin:20px 0 28px}.hero h1 em,.page-hero h1 em{font-style:italic;color:#cbbb9c}.hero p,.page-hero p{max-width:700px;color:#b9bbb5;font-size:17px;line-height:1.78}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.hero-meta{margin-top:32px;color:#737570;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.hero-media{position:relative;overflow:hidden}.hero-media .image,.page-hero-media .image{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(55%) brightness(.62) contrast(1.05);transform:scale(1.03);animation:slowZoom 16s ease-out forwards}.hero-media:after,.page-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,9,.76),transparent 28%),linear-gradient(0deg,rgba(8,9,9,.35),transparent 58%),radial-gradient(circle at 70% 35%,rgba(180,154,103,.14),transparent 28%)}@keyframes slowZoom{to{transform:scale(1.1)}}
.statement{background:var(--sand);color:var(--ink);padding:10vw 8vw;text-align:center}.statement p{max-width:1100px;margin:auto;font:500 clamp(42px,5.8vw,82px)/1.02 var(--serif)}.statement i{color:var(--gold2)}
.section{padding:9vw 7vw}.dark{background:var(--black2)}.black{background:var(--black)}.cream{background:var(--cream);color:var(--ink)}.paper{background:var(--paper);color:var(--ink)}.section-head{max-width:920px}.section-head h2{font:500 clamp(44px,5.2vw,74px)/1 var(--serif);margin:18px 0 24px;letter-spacing:-.025em}.section-head h2 i{font-style:italic;color:var(--gold2)}.section-head p{max-width:740px;line-height:1.78;font-size:15px}.dark .section-head p,.black .section-head p{color:#a6a8a2}.cream .section-head p,.paper .section-head p{color:#62645e}
.house-ribbon{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0d0e0d}.house-ribbon a{padding:22px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px;min-height:94px;transition:.25s}.house-ribbon a:last-child{border-right:0}.house-ribbon a:hover{background:#161713}.house-ribbon b{font-size:9px;letter-spacing:.15em;color:#baa77f}.house-ribbon span{font:500 19px/1 var(--serif);color:#f0ede6}
.division{min-height:76vh;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}.division.reverse .division-media{order:2}.division.reverse .division-copy{order:1}.division-media{position:relative;overflow:hidden;min-height:560px}.division-media .image{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(68%) brightness(.54) contrast(1.05);transform:scale(1.02);transition:transform 8s,filter 1s}.division:hover .division-media .image{transform:scale(1.08);filter:grayscale(30%) brightness(.62)}.division-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,9,9,.5),transparent 58%)}.division-copy{padding:7vw;display:flex;flex-direction:column;justify-content:center;background:var(--black2)}.division.light .division-copy{background:var(--cream);color:var(--ink)}.division-copy .num{font-size:9px;letter-spacing:.17em;color:#a9916b}.division-copy h3{font:500 clamp(42px,4.8vw,68px)/.98 var(--serif);margin:28px 0 16px}.division-copy p{max-width:620px;line-height:1.75;color:#a8aaa4;font-size:15px}.division.light .division-copy p{color:#62645e}.micro{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0 6px;max-width:620px}.micro div{border-top:1px solid var(--line);padding-top:12px;font-size:11px;color:#b7b9b2}.light .micro div{border-color:rgba(84,72,53,.18);color:#5f615b}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#bbb2a3;border:1px solid #bbb2a3;margin-top:50px}.feature-card{background:var(--paper);padding:32px;min-height:260px}.feature-card b{font-size:9px;letter-spacing:.15em;color:#776a55}.feature-card h3{font:600 30px/1.06 var(--serif);margin:30px 0 12px}.feature-card p{color:#676963;font-size:13px;line-height:1.67}.feature-card a{display:inline-block;margin-top:18px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#6c5c46;border-bottom:1px solid #9a8769;padding-bottom:3px}
.visual-break{min-height:70vh;position:relative;display:flex;align-items:flex-end;padding:7vw;overflow:hidden}.visual-break .image{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(62%) brightness(.51) contrast(1.05);transform:scale(1.03);transition:transform 8s,filter 1s}.visual-break:hover .image{transform:scale(1.08);filter:grayscale(30%) brightness(.59)}.visual-break:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,9,9,.95),rgba(8,9,9,.1) 72%),linear-gradient(90deg,rgba(8,9,9,.76),transparent 65%)}.visual-break .copy{position:relative;z-index:2;max-width:850px}.visual-break h2{font:500 clamp(44px,5.3vw,76px)/1 var(--serif);margin:18px 0}.visual-break p{max-width:650px;color:#c3c5bf;line-height:1.75}
.page-hero{min-height:72vh;display:grid;grid-template-columns:1fr .9fr;padding-top:82px;background:var(--black)}.page-hero-copy{padding:10vh 6vw 8vh 7vw;display:flex;flex-direction:column;justify-content:center}.page-hero-media{position:relative;overflow:hidden}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin-top:50px}.editorial{min-height:380px;padding:42px;background:#11120f}.editorial b{font-size:9px;letter-spacing:.18em;color:#b8a47f}.editorial h3{font:500 42px/1.05 var(--serif);margin:36px 0 15px}.editorial p{color:#a8aaa4;line-height:1.7;font-size:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start;margin-top:50px}.list{border-top:1px solid currentColor}.list-row{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid rgba(125,110,86,.23)}.list-row b{font-size:9px;letter-spacing:.15em;color:#806d4d}.list-row p{margin:0;line-height:1.65;color:#62645e}.dark .list-row{border-color:var(--line)}.dark .list-row p{color:#a7aaa4}
.contact{padding:9vw 7vw;background:#bea67b;color:#171817;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact h2{font:600 clamp(50px,6vw,84px)/.94 var(--serif);margin:0 0 18px}.contact p{color:#514b40;line-height:1.7}.contact-form{display:grid;gap:16px}.contact-form label{font-size:8px;letter-spacing:.14em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #75664d;padding:10px 0;background:transparent;outline:0}.contact-form textarea{min-height:90px}
.notice{padding:18px 7vw;background:#171813;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;color:#999b95;line-height:1.6}
footer{display:grid;grid-template-columns:1fr auto;gap:25px;padding:30px 4vw;background:var(--black);color:#7b7d77;font-size:9px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.reveal.in-view{opacity:1;transform:none}
@media(max-width:1050px){.house-ribbon{grid-template-columns:repeat(3,1fr)}.feature-grid{grid-template-columns:1fr 1fr}}
@media(max-width:950px){.nav-links{display:none}.hero,.page-hero,.division,.contact,.editorial-grid,.split{grid-template-columns:1fr}.hero-media,.page-hero-media{min-height:55vh}.division.reverse .division-media,.division.reverse .division-copy{order:initial}.feature-grid{grid-template-columns:1fr}}
@media(max-width:650px){.nav{padding:0 20px}.brand-copy{display:none}.hero-copy,.page-hero-copy{padding:88px 23px 60px}.hero h1,.page-hero h1{font-size:54px}.section,.statement,.contact{padding:70px 23px}.division-copy{padding:65px 23px}.division-media{min-height:420px}.house-ribbon{grid-template-columns:1fr}.house-ribbon a{border-right:0;border-bottom:1px solid var(--line)}.micro{grid-template-columns:1fr}.list-row{grid-template-columns:1fr}.contact{gap:45px}footer{grid-template-columns:1fr}.footer-links{margin-top:8px}}


/* =========================================================
   V2 NAVIGATION — TRUE MULTI-PAGE MOBILE HAMBURGER
   ========================================================= */

.mobile-menu-btn{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.18);
  background:transparent;
  color:#fff;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
  position:relative;
  z-index:122;
}
.mobile-menu-btn span,
.mobile-menu-btn::before,
.mobile-menu-btn::after{
  content:"";
  position:absolute;
  width:19px;
  height:1px;
  background:#f4f1ea;
  transition:transform .28s ease,opacity .28s ease,top .28s ease;
}
.mobile-menu-btn::before{top:14px}
.mobile-menu-btn span{top:21px}
.mobile-menu-btn::after{top:28px}
.mobile-menu-btn.active::before{top:21px;transform:rotate(45deg)}
.mobile-menu-btn.active span{opacity:0}
.mobile-menu-btn.active::after{top:21px;transform:rotate(-45deg)}

.mobile-drawer{
  position:fixed;
  z-index:120;
  top:0;
  right:0;
  width:min(88vw,420px);
  height:100svh;
  background:#0b0c0b;
  border-left:1px solid rgba(255,255,255,.11);
  transform:translateX(105%);
  transition:transform .36s cubic-bezier(.2,.7,.2,1);
  padding:104px 28px 38px;
  overflow-y:auto;
  box-shadow:-30px 0 80px rgba(0,0,0,.35);
}
.mobile-drawer.open{transform:translateX(0)}
.mobile-drawer-backdrop{
  position:fixed;
  z-index:119;
  inset:0;
  background:rgba(0,0,0,.62);
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease;
  backdrop-filter:blur(3px);
}
.mobile-drawer-backdrop.open{
  opacity:1;
  pointer-events:auto;
}
.mobile-menu-label{
  font-size:8px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#806f52;
  margin-bottom:18px;
}
.mobile-menu-list{
  display:grid;
  border-top:1px solid rgba(255,255,255,.12);
}
.mobile-menu-list>a,
.mobile-menu-group-toggle{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.12);
  background:none;
  color:#f2efe8;
  text-align:left;
  padding:0;
  font:500 24px/1.05 var(--serif);
  cursor:pointer;
}
.mobile-menu-list>a small,
.mobile-menu-group-toggle small{
  font:500 8px var(--sans);
  letter-spacing:.15em;
  color:#7e806f;
}
.mobile-menu-group-toggle::after{
  content:"+";
  font:400 20px var(--sans);
  color:#a9936d;
}
.mobile-menu-group-toggle.open::after{content:"−"}
.mobile-submenu{
  display:none;
  padding:9px 0 14px 16px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.mobile-submenu.open{display:grid}
.mobile-submenu a{
  padding:11px 0;
  font-size:12px;
  color:#aaaDA7;
  letter-spacing:.05em;
}
.mobile-submenu a:hover{color:#fff}
.mobile-menu-cta{
  margin-top:28px;
  display:flex;
  justify-content:center;
  width:100%;
}
.mobile-drawer-footer{
  margin-top:30px;
  color:#686a65;
  font-size:9px;
  line-height:1.6;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;
}

/* Desktop transformation dropdown */
.desktop-dropdown{
  position:relative;
}
.desktop-dropdown-menu{
  position:absolute;
  top:30px;
  left:-18px;
  min-width:245px;
  background:#0d0e0d;
  border:1px solid rgba(255,255,255,.12);
  padding:10px 0;
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:.22s ease;
  box-shadow:0 20px 50px rgba(0,0,0,.28);
}
.desktop-dropdown:hover .desktop-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.desktop-dropdown-menu a{
  display:block;
  padding:10px 16px;
  font-size:9px;
  white-space:nowrap;
}
.desktop-dropdown-menu a:hover{background:#171813}

/* On home, the house ribbon now acts as page navigation, not anchors */
.house-ribbon a .page-arrow{
  margin-top:auto;
  font:500 9px var(--sans);
  letter-spacing:.12em;
  color:#686b65;
}

@media(max-width:950px){
  .nav-links,
  .nav > .nav-cta{display:none}
  .mobile-menu-btn{display:flex}
  body.menu-open{overflow:hidden}
}

@media(min-width:951px){
  .mobile-drawer,
  .mobile-drawer-backdrop,
  .mobile-menu-btn{display:none!important}
}


/* =========================================================
   V3 UX REFINEMENT — MOBILE-FIRST POLISH
   Based on real Samsung/Android recording review
   ========================================================= */

/* Mobile hero: deliberately fit the proposition in the first viewport */
@media(max-width:650px){
  .hero{
    min-height:auto;
    display:block;
    padding-top:82px;
  }
  .hero-copy{
    min-height:calc(100svh - 82px);
    padding:56px 22px 42px;
    justify-content:center;
  }
  .hero h1{
    font-size:clamp(46px,14vw,58px);
    line-height:.9;
    margin:14px 0 20px;
    max-width:100%;
  }
  .hero p{
    font-size:14px;
    line-height:1.62;
    max-width:94%;
  }
  .hero-actions{
    margin-top:22px;
    gap:8px;
    display:grid;
    grid-template-columns:1fr;
    max-width:270px;
  }
  .hero-actions .btn{
    justify-content:center;
    width:100%;
    min-height:42px;
  }
  .hero-meta{
    margin-top:22px;
    font-size:8px;
    line-height:1.5;
  }
  .hero-media{
    min-height:46vh;
  }
  .statement{
    padding:64px 24px;
  }
  .statement p{
    font-size:clamp(34px,10vw,48px);
  }
}

/* Stronger visual rhythm on mobile */
@media(max-width:650px){
  .division{
    min-height:auto;
    display:flex;
    flex-direction:column;
  }
  .division-media{
    min-height:330px;
  }
  .division-copy{
    padding:46px 22px 48px;
  }
  .division-copy h3{
    font-size:clamp(36px,10vw,48px);
    margin:18px 0 14px;
  }
  .division-copy p{
    font-size:13px;
    line-height:1.65;
  }
  .micro{
    margin-top:22px;
    gap:6px;
  }
  .micro div{
    font-size:10px;
    padding:10px 0;
  }
  .division-copy .btn{
    margin-top:22px;
  }
  .visual-break{
    min-height:58vh;
    padding:48px 22px;
  }
  .visual-break h2{
    font-size:clamp(38px,11vw,52px);
  }
}

/* Homepage ribbon becomes explicit page navigation */
.house-ribbon a{
  position:relative;
}
.house-ribbon a::after{
  content:"↗";
  position:absolute;
  right:17px;
  bottom:18px;
  font-size:11px;
  color:#5e625d;
  transition:transform .2s ease,color .2s ease;
}
.house-ribbon a:hover::after{
  transform:translate(2px,-2px);
  color:#c6b289;
}
@media(max-width:650px){
  .house-ribbon{
    border-top:0;
  }
  .house-ribbon a{
    min-height:74px;
    padding:16px 20px;
    display:grid;
    grid-template-columns:34px 1fr;
    align-items:center;
    gap:8px;
  }
  .house-ribbon a b{
    grid-row:1;
    font-size:8px;
  }
  .house-ribbon a span{
    font-size:20px;
  }
  .house-ribbon a .page-arrow{
    display:none;
  }
  .house-ribbon a::after{
    right:20px;
    bottom:28px;
  }
}

/* Mobile navigation hierarchy */
.mobile-drawer{
  width:min(88vw,390px);
  padding:98px 24px 30px;
}
.mobile-menu-label{
  margin-bottom:10px;
}
.mobile-menu-list>a,
.mobile-menu-group-toggle{
  min-height:50px;
  font-size:20px;
}
.mobile-menu-list>a small{
  font-size:7px;
}
.mobile-menu-group-toggle{
  padding-right:2px;
}
.mobile-submenu{
  padding:4px 0 10px 14px;
}
.mobile-submenu a{
  padding:9px 0;
  font-size:11px;
}
.mobile-menu-section{
  margin-top:22px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
}
.mobile-menu-section-title{
  font-size:7px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#6f604c;
  margin-bottom:7px;
}
.mobile-menu-utility{
  display:grid;
}
.mobile-menu-utility a{
  padding:9px 0;
  font-size:11px;
  color:#888b85;
}
.mobile-menu-utility a:hover{
  color:#fff;
}
.mobile-menu-group-toggle .group-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.mobile-menu-group-toggle .group-copy small{
  font:500 7px var(--sans);
  color:#7f817c;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.mobile-menu-group-toggle::after{
  font-size:18px;
  color:#b39a67;
  margin-left:12px;
}

/* visually identify active page */
.nav-links a.active,
.mobile-menu-list>a.active,
.mobile-submenu a.active{
  color:#d2c2a0;
}
.nav-links a.active{
  position:relative;
}
.nav-links a.active::after{
  content:"";
  position:absolute;
  height:1px;
  background:#b49a67;
  left:0;
  right:0;
  bottom:-10px;
}

/* Cleaner section intros on mobile */
@media(max-width:650px){
  .section-head h2{
    font-size:clamp(38px,11vw,52px);
  }
  .section-head p{
    font-size:13px;
    line-height:1.68;
  }
  .page-hero{
    min-height:auto;
    display:block;
  }
  .page-hero-copy{
    min-height:62vh;
    padding:124px 22px 54px;
  }
  .page-hero h1{
    font-size:clamp(46px,13vw,58px);
  }
  .page-hero p{
    font-size:14px;
    line-height:1.65;
  }
  .page-hero-media{
    min-height:40vh;
  }
  .feature-card{
    min-height:auto;
    padding:26px 22px;
  }
  .feature-card h3{
    font-size:28px;
    margin:20px 0 10px;
  }
}

/* more premium drawer entrance */
.mobile-drawer{
  transform:translateX(108%);
  transition:transform .32s cubic-bezier(.22,.72,.22,1);
}
.mobile-drawer.open{
  transform:translateX(0);
}

/* Site refinements */
.lang-switch{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:34px;height:34px;border:1px solid rgba(255,255,255,.16);
  border-radius:50%;font-size:8px;letter-spacing:.11em;
  color:#c7c8c3;margin-left:7px;transition:.25s;
}
.lang-switch:hover{background:#e7e0d4;color:#111}
.external-link::after{content:" ↗";font-size:.9em}
.contact-direct{margin-top:24px;padding-top:20px;border-top:1px solid rgba(79,67,52,.3)}
.contact-direct b{display:block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#65563f;margin-bottom:7px}
.contact-direct a{font-family:var(--serif);font-size:24px;border-bottom:1px solid rgba(79,67,52,.35)}
.partner-band{padding:34px 7vw;background:#0d0e0d;border-block:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:28px}
.partner-band p{margin:0;color:#a5a7a1;max-width:720px;line-height:1.65;font-size:13px}
.partner-band b{color:#d5c39f;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.partner-band .btn{white-space:nowrap}
.legal-note{font-size:10px;color:#72746f;line-height:1.65;margin-top:16px}
.fr-badge{font-size:8px;letter-spacing:.12em;color:#8d7b5e}
@media(max-width:950px){
 .lang-switch{display:flex;margin-left:auto;margin-right:8px}
 .partner-band{display:block}.partner-band .btn{margin-top:18px}
}
@media(max-width:650px){
 .contact-direct a{font-size:21px;word-break:break-word}
 .partner-band{padding:28px 22px}
}

/* =========================================================
   HOME CAPABILITY SHOWCASE — LAUNCH V1.1
   ========================================================= */
.home-capabilities{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1px;
  background:rgba(255,255,255,.1);
  margin-top:54px;
  border:1px solid rgba(255,255,255,.1);
}
.home-capability{
  min-height:470px;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
}
.home-capability.wide{
  grid-column:1/-1;
  min-height:420px;
}
.home-capability .cap-image{
  position:absolute;
  inset:0;
  z-index:-3;
  background-size:cover;
  background-position:center;
  filter:grayscale(74%) brightness(.5) contrast(1.06);
  transform:scale(1.025);
  transition:transform 7s ease,filter .7s ease;
}
.home-capability::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(0deg,rgba(7,8,7,.98),rgba(7,8,7,.18) 68%),
    linear-gradient(90deg,rgba(7,8,7,.55),transparent 72%);
}
.home-capability::after{
  content:"";
  position:absolute;
  inset:18px;
  z-index:-1;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}
.home-capability:hover .cap-image{
  transform:scale(1.085);
  filter:grayscale(28%) brightness(.58) contrast(1.04);
}
.home-capability .cap-content{
  padding:42px;
  width:100%;
}
.home-capability .cap-number{
  display:flex;
  align-items:center;
  gap:12px;
  font:600 9px var(--sans);
  letter-spacing:.16em;
  color:#baa77f;
  text-transform:uppercase;
}
.home-capability .cap-number::after{
  content:"";
  height:1px;
  width:42px;
  background:rgba(186,167,127,.55);
}
.home-capability h3{
  margin:18px 0 12px;
  font:500 clamp(34px,3.6vw,54px)/.98 var(--serif);
  color:#f5f2ea;
}
.home-capability .cap-promise{
  display:block;
  font:500 17px/1.25 var(--serif);
  font-style:italic;
  color:#d1c19e;
  margin-bottom:12px;
}
.home-capability p{
  max-width:590px;
  margin:0;
  color:#b9bbb5;
  font-size:13px;
  line-height:1.68;
}
.home-capability .cap-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:24px;
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#eeeae2;
  border-bottom:1px solid rgba(238,234,226,.35);
  padding-bottom:4px;
}
.home-capability .cap-link::after{
  content:"↗";
  transition:transform .2s ease;
}
.home-capability:hover .cap-link::after{
  transform:translate(2px,-2px);
}

@media(max-width:800px){
  .home-capabilities{
    grid-template-columns:1fr;
  }
  .home-capability,
  .home-capability.wide{
    grid-column:auto;
    min-height:420px;
  }
}
@media(max-width:650px){
  .home-capabilities{
    margin-top:38px;
  }
  .home-capability,
  .home-capability.wide{
    min-height:390px;
  }
  .home-capability .cap-content{
    padding:30px 24px;
  }
  .home-capability h3{
    font-size:38px;
  }
  .home-capability .cap-promise{
    font-size:16px;
  }
}


/* =========================================================
   V2 VISUAL EXPERTISE CARDS
   Image-supported expertise grids across all service pages
   ========================================================= */
.visual-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:#bbb2a3;
  border:1px solid #bbb2a3;
  margin-top:50px;
}
.visual-feature-card{
  background:var(--paper);
  color:var(--ink);
  min-height:430px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.visual-feature-card .vf-image{
  height:190px;
  background-size:cover;
  background-position:center;
  filter:grayscale(55%) brightness(.78) contrast(1.03);
  transition:transform 6s ease,filter .6s ease;
  transform:scale(1.01);
}
.visual-feature-card:hover .vf-image{
  transform:scale(1.055);
  filter:grayscale(15%) brightness(.88) contrast(1.02);
}
.visual-feature-card .vf-body{
  padding:28px 28px 30px;
  display:flex;
  flex-direction:column;
  flex:1;
}
.visual-feature-card b{
  font-size:9px;
  letter-spacing:.15em;
  color:#776a55;
  text-transform:uppercase;
}
.visual-feature-card h3{
  font:600 29px/1.06 var(--serif);
  margin:20px 0 10px;
}
.visual-feature-card p{
  margin:0;
  color:#676963;
  font-size:13px;
  line-height:1.68;
}
.visual-feature-card .vf-link{
  display:inline-block;
  margin-top:auto;
  padding-top:20px;
  width:max-content;
  font-size:9px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#6c5c46;
  border-bottom:1px solid #9a8769;
}
.visual-feature-card.featured{
  grid-column:span 2;
}
.visual-feature-card.featured .vf-image{height:230px}
@media(max-width:1000px){
  .visual-feature-grid{grid-template-columns:1fr 1fr}
  .visual-feature-card.featured{grid-column:auto}
}
@media(max-width:650px){
  .visual-feature-grid{grid-template-columns:1fr;margin-top:36px}
  .visual-feature-card,.visual-feature-card.featured{min-height:auto}
  .visual-feature-card .vf-image,.visual-feature-card.featured .vf-image{height:210px}
  .visual-feature-card .vf-body{padding:25px 22px 28px}
  .visual-feature-card h3{font-size:29px;margin-top:18px}
}


/* =========================================================
   LAUNCH V3 — FINANCE EVOLUTION + VISUAL GT METHOD
   ========================================================= */

/* Finance evolution */
.finance-evolution{
  background:var(--cream);
  color:var(--ink);
  padding:9vw 7vw;
}
.finance-evolution .section-head p{color:#62645e}
.evo-shell{
  margin-top:52px;
  border:1px solid rgba(84,72,53,.2);
  background:var(--paper);
}
.evo-tabs{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  border-bottom:1px solid rgba(84,72,53,.2);
  overflow-x:auto;
}
.evo-tab{
  appearance:none;
  border:0;
  border-right:1px solid rgba(84,72,53,.15);
  background:transparent;
  color:var(--ink);
  min-height:88px;
  padding:16px 14px;
  text-align:left;
  cursor:pointer;
  transition:.25s;
}
.evo-tab:last-child{border-right:0}
.evo-tab:hover{background:#ece6db}
.evo-tab.active{background:#ded3c2}
.evo-tab b{
  display:block;
  font-size:8px;
  letter-spacing:.14em;
  color:#79694f;
  margin-bottom:8px;
}
.evo-tab span{
  font:600 17px/1.05 var(--serif);
}
.evo-display{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  min-height:500px;
}
.evo-copy{
  padding:48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.evo-era{
  font-size:9px;
  letter-spacing:.18em;
  color:#856f4f;
  text-transform:uppercase;
}
.evo-copy h3{
  font:600 clamp(36px,4vw,56px)/.98 var(--serif);
  margin:18px 0 18px;
}
.evo-copy p{
  color:#62645e;
  font-size:14px;
  line-height:1.75;
  max-width:600px;
}
.evo-impact{
  margin-top:24px;
  padding-left:18px;
  border-left:2px solid #9a8058;
}
.evo-impact b{
  display:block;
  font-size:8px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#826e50;
  margin-bottom:7px;
}
.evo-impact span{
  font-size:13px;
  color:#555751;
  line-height:1.65;
}
.evo-media{
  min-height:500px;
  background-size:cover;
  background-position:center;
  filter:grayscale(28%) brightness(.78) contrast(1.03);
  transition:opacity .18s ease;
}
.evo-foot{
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding:24px 30px;
  border-top:1px solid rgba(84,72,53,.2);
  color:#655f55;
  font-size:11px;
}
.evo-foot strong{
  font-family:var(--serif);
  font-size:18px;
  color:#6f5b3f;
}

/* Method journey */
.method-journey{
  position:relative;
  margin-top:54px;
}
.method-journey::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  width:1px;
  background:linear-gradient(#b49a67,rgba(180,154,103,.16));
  transform:translateX(-50%);
}
.method-step{
  width:50%;
  position:relative;
  padding:0 54px 48px 0;
}
.method-step:nth-child(even){
  margin-left:50%;
  padding:0 0 48px 54px;
}
.method-step::after{
  content:"";
  position:absolute;
  top:42px;
  right:-6px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:#11120f;
  border:2px solid #b49a67;
  z-index:3;
}
.method-step:nth-child(even)::after{
  right:auto;
  left:-6px;
}
.method-card-visual{
  position:relative;
  min-height:340px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:#11120f;
}
.method-card-visual .method-image{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  filter:grayscale(72%) brightness(.48) contrast(1.05);
  transition:transform 7s ease,filter .7s ease;
}
.method-card-visual:hover .method-image{
  transform:scale(1.07);
  filter:grayscale(25%) brightness(.58);
}
.method-card-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(8,9,9,.98),rgba(8,9,9,.15) 72%);
}
.method-card-content{
  position:absolute;
  z-index:2;
  left:0;right:0;bottom:0;
  padding:30px;
}
.method-card-content b{
  font-size:8px;
  letter-spacing:.16em;
  color:#bca77f;
}
.method-card-content h3{
  font:500 38px/1 var(--serif);
  margin:10px 0;
}
.method-card-content p{
  margin:0;
  max-width:540px;
  color:#b9bbb5;
  font-size:13px;
  line-height:1.65;
}
.method-step.core .method-card-visual{
  border-color:rgba(180,154,103,.72);
  box-shadow:0 0 0 1px rgba(180,154,103,.12),0 20px 70px rgba(0,0,0,.18);
}
.method-step.core .method-card-content b{
  color:#e0c995;
}
.method-core-note{
  margin-top:18px;
  display:inline-block;
  padding:7px 10px;
  border:1px solid rgba(180,154,103,.36);
  font-size:7px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#c5ad7e;
}

@media(max-width:950px){
  .evo-tabs{grid-template-columns:repeat(3,1fr)}
  .evo-display{grid-template-columns:1fr}
  .evo-media{min-height:390px;order:-1}
  .method-journey::before{left:17px}
  .method-step,
  .method-step:nth-child(even){
    width:100%;
    margin-left:0;
    padding:0 0 32px 50px;
  }
  .method-step::after,
  .method-step:nth-child(even)::after{
    left:11px;
    right:auto;
  }
}
@media(max-width:650px){
  .finance-evolution{padding:70px 22px}
  .evo-tabs{grid-template-columns:repeat(2,1fr)}
  .evo-tab{min-height:76px}
  .evo-copy{padding:28px 24px}
  .evo-media{min-height:290px}
  .evo-foot{display:block;padding:18px 22px}
  .evo-foot strong{display:block;margin-bottom:8px}
  .method-card-visual{min-height:300px}
  .method-card-content{padding:24px}
  .method-card-content h3{font-size:34px}
}


/* =========================================================
   LAUNCH V4 — AUTO FINANCE TIMELINE + VISUAL TRANSFORMATION
   ========================================================= */

/* Finance timeline autoplay progress */
.evo-shell{position:relative}
.evo-progress-track{
  height:3px;
  background:rgba(84,72,53,.16);
  overflow:hidden;
}
.evo-progress-bar{
  height:100%;
  width:0%;
  background:#9b8056;
  transform-origin:left center;
}
.evo-progress-bar.running{
  animation:evoProgress 5s linear forwards;
}
@keyframes evoProgress{from{width:0%}to{width:100%}}
.evo-tab.active{
  box-shadow:inset 0 -3px 0 #9b8056;
}
.evo-autoplay-note{
  display:flex;
  align-items:center;
  gap:9px;
  font-size:8px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#88765b;
}
.evo-autoplay-dot{
  width:6px;height:6px;border-radius:50%;
  background:#9b8056;
  box-shadow:0 0 0 4px rgba(155,128,86,.12);
}

/* Transformation expertise visual cards */
.transformation-showcase{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1px;
  background:rgba(84,72,53,.2);
  border:1px solid rgba(84,72,53,.2);
  margin-top:50px;
}
.transformation-card{
  position:relative;
  min-height:450px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  background:#11120f;
}
.transformation-card .t-image{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  filter:grayscale(70%) brightness(.48) contrast(1.05);
  transform:scale(1.025);
  transition:transform 7s ease,filter .7s ease;
}
.transformation-card:hover .t-image{
  transform:scale(1.08);
  filter:grayscale(28%) brightness(.58);
}
.transformation-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(0deg,rgba(8,9,9,.98),rgba(8,9,9,.18) 70%),
    linear-gradient(90deg,rgba(8,9,9,.42),transparent 75%);
}
.transformation-card .t-content{
  position:relative;
  z-index:2;
  padding:34px;
  width:100%;
}
.transformation-card b{
  font-size:8px;
  letter-spacing:.16em;
  color:#c1aa7c;
}
.transformation-card h3{
  font:500 clamp(32px,3.4vw,48px)/1 var(--serif);
  margin:13px 0 11px;
  color:#f3efe8;
}
.transformation-card p{
  margin:0;
  color:#b9bbb5;
  line-height:1.65;
  font-size:13px;
  max-width:580px;
}
.transformation-card .t-link{
  display:inline-block;
  margin-top:20px;
  padding-bottom:4px;
  border-bottom:1px solid rgba(255,255,255,.35);
  font-size:8px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#eeeae2;
}
@media(max-width:800px){
  .transformation-showcase{grid-template-columns:1fr}
  .transformation-card{min-height:390px}
}
@media(max-width:650px){
  .transformation-card .t-content{padding:28px 23px}
  .transformation-card h3{font-size:37px}
}

/* V6 finance imagery polish */
.evo-media{
  filter: grayscale(8%) sepia(10%) saturate(.88) brightness(.82) contrast(1.04);
}

/* V8 — finance timeline integration fix */
.evo-media{
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
}
@media(max-width:950px){
  .evo-display{grid-template-columns:1fr;}
  .evo-media{
    order:-1;
    width:100%;
    min-height:0!important;
    aspect-ratio:16/10;
    background-size:cover;
    background-position:center center;
  }
}
@media(max-width:650px){
  .evo-media{
    min-height:0!important;
    aspect-ratio:16/10;
    background-size:cover;
  }
  .evo-copy{padding:28px 24px 34px;}
}


/* =========================================================
   LAUNCH V9 — production Finance slider
   ========================================================= */
.finance-evolution{
  padding:clamp(72px,7vw,112px) clamp(22px,6vw,96px);
}
.evo-shell{
  max-width:1500px;
  margin:48px auto 0;
  overflow:hidden;
  box-shadow:0 22px 70px rgba(44,34,24,.08);
}
.evo-tabs{
  overflow:visible;
}
.evo-tab{
  min-height:92px;
  padding:18px 16px 20px;
}
.evo-display{
  grid-template-columns:minmax(360px,.88fr) minmax(520px,1.12fr);
  min-height:520px;
  align-items:stretch;
}
.evo-copy{
  padding:clamp(36px,4vw,58px);
}
.evo-copy h3{
  max-width:620px;
}
.evo-media-wrap{
  position:relative;
  min-width:0;
  min-height:520px;
  overflow:hidden;
  background:#171510;
}
.evo-media{
  position:absolute;
  inset:0;
  min-height:0!important;
  width:100%;
  height:100%;
  aspect-ratio:auto!important;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  filter:none;
  transform:scale(1.001);
  opacity:1;
  transition:opacity .24s ease, transform .65s ease;
}
.evo-media.is-changing{
  opacity:.18!important;
  transform:scale(1.012);
}
.evo-media-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(10,9,8,.08),transparent 22%,transparent 78%,rgba(10,9,8,.08));
}
.evo-arrow{
  position:absolute;
  z-index:4;
  top:50%;
  width:48px;
  height:48px;
  margin-top:-24px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.6);
  background:rgba(247,243,235,.94);
  color:#181713;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:21px;
  box-shadow:0 8px 26px rgba(0,0,0,.18);
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.evo-arrow:hover,
.evo-arrow:focus-visible{
  background:#fff;
  border-color:#b49a67;
  transform:scale(1.06);
  outline:none;
}
.evo-prev{left:20px}
.evo-next{right:20px}
.evo-counter{
  position:absolute;
  z-index:4;
  right:20px;
  bottom:18px;
  display:flex;
  gap:7px;
  align-items:center;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(8,9,8,.72);
  backdrop-filter:blur(8px);
  color:#f4efe5;
  font-size:9px;
  letter-spacing:.14em;
}
.evo-counter [data-evo-current]{
  color:#d7bb80;
  font-weight:700;
}
.evo-progress-track{
  height:3px;
}
.evo-foot{
  align-items:flex-start;
  padding:22px 28px;
}
.evo-foot strong{
  max-width:560px;
}
@media(max-width:1100px){
  .evo-display{
    grid-template-columns:1fr;
    min-height:0;
  }
  .evo-media-wrap{
    order:-1;
    min-height:0;
    aspect-ratio:16/9;
  }
  .evo-copy{
    min-height:390px;
  }
}
@media(max-width:760px){
  .evo-tabs{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .evo-tabs::-webkit-scrollbar{display:none}
  .evo-tab{
    flex:0 0 50%;
    scroll-snap-align:start;
    min-height:80px;
  }
  .evo-media-wrap{
    aspect-ratio:16/10;
  }
  .evo-arrow{
    width:42px;
    height:42px;
    margin-top:-21px;
  }
  .evo-prev{left:12px}
  .evo-next{right:12px}
  .evo-counter{
    right:12px;
    bottom:12px;
  }
  .evo-copy{
    min-height:0;
    padding:30px 24px 34px;
  }
  .evo-foot{
    padding:18px 22px;
  }
}
@media(prefers-reduced-motion:reduce){
  .evo-progress-bar.running{animation:none!important}
  .evo-media{transition:none}
}

/* =========================================================
   LAUNCH V10 — NAV CLARITY + ALIGNMENT QA
   ========================================================= */
@media(min-width:951px){
  .nav-links{
    height:82px;
    align-items:center;
    gap:24px;
  }
  .nav-links > a,
  .desktop-dropdown > a{
    display:flex;
    align-items:center;
    height:82px;
    line-height:1;
    font-size:10px;
    font-weight:600;
    letter-spacing:.105em;
    color:#d1d3ce;
  }
  .desktop-dropdown{
    display:flex;
    align-items:center;
    height:82px;
  }
  .desktop-dropdown-menu{
    top:76px;
    left:-18px;
  }
  .desktop-dropdown-menu a{
    height:auto;
    display:block;
    font-size:9px;
    font-weight:500;
    color:#c2c4be;
  }
  .nav-links > a:hover,
  .desktop-dropdown > a:hover{color:#fff}
  .nav-links a.active,
  .desktop-dropdown > a.active{color:#dfcca2}
  .nav-links a.active::after{
    bottom:17px;
  }
}
