:root{
  --navy:#02182c;--navy2:#031f38;--gold:#e7a83c;--gold2:#ffc95d;--white:#f7f9fc;--muted:#c4cfda;--line:rgba(255,255,255,.16);--shell:min(1180px,calc(100vw - 72px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#02182c}body{margin:0;background:#02182c;color:var(--white);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;left:16px;top:-60px;z-index:1000;background:#fff;color:#000;padding:10px 16px;border-radius:6px}.skip:focus{top:16px}.shell{width:var(--shell);margin-inline:auto;position:relative;z-index:3}.site-header{position:absolute;top:0;left:0;right:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.05);background:linear-gradient(180deg,rgba(2,24,44,.78),rgba(2,24,44,0));backdrop-filter:blur(3px)}.nav-shell{height:94px;display:grid;grid-template-columns:260px 1fr 180px;align-items:center;gap:28px}.brand img{width:205px;height:auto;display:block;filter:drop-shadow(0 4px 15px rgba(0,0,0,.18))}.nav{justify-self:center;display:flex;gap:44px;font-size:13px;font-weight:600}.nav a{opacity:.9;transition:.2s}.nav a:hover{opacity:1;color:var(--gold2)}.nav-cta{justify-self:end;border:1px solid rgba(246,183,62,.9);border-radius:999px;padding:13px 22px;font-size:13px;font-weight:700;color:#ffd273;box-shadow:0 0 24px rgba(231,168,60,.08)}.nav-cta span,.button span{margin-left:12px}.menu-toggle{display:none;background:none;border:0;color:#fff}.cinematic-section{position:relative;overflow:hidden;isolation:isolate;background:#02182c}.cinematic-section+ .cinematic-section{margin-top:-1px}.scene{position:absolute;inset:0;z-index:-3}.scene img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.muted-scene img{filter:saturate(.92) contrast(1.08) brightness(.86)}.continuum-scene{inset:-8% 0}.continuum-scene img{transform:scale(1.1)}.philosophy .continuum-scene img{object-position:52% 52%}.capabilities .continuum-scene img{object-position:42% 64%;transform:scale(1.16)}.work .continuum-scene img{object-position:64% 57%;transform:scale(1.12)}.hero{min-height:760px;padding-top:166px;border-top:0}.hero .scene img{object-position:center 47%}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(1,16,30,.97) 0%,rgba(1,17,31,.91) 25%,rgba(1,18,32,.56) 46%,rgba(1,18,32,.10) 71%),linear-gradient(180deg,rgba(2,24,44,.48) 0%,rgba(2,24,44,0) 35%,rgba(2,24,44,.22) 75%,rgba(2,24,44,.86) 100%)}.hero-content{padding-top:12px}.eyebrow{text-transform:uppercase;letter-spacing:.26em;font-weight:800;color:#f5b741;font-size:12px;margin:0 0 22px}.hero h1{font-size:clamp(70px,7vw,112px);line-height:.82;letter-spacing:-.062em;margin:0;max-width:600px;font-weight:820;text-shadow:0 8px 36px rgba(0,0,0,.3)}.hero h1 span,.split h2 span,.cap-intro h2 span,.approach h2 span,.work h2 span,.closing h2 span{color:#f2b442}.hero-copy{max-width:470px;color:#eef2f5;font-size:21px;line-height:1.46;margin:26px 0 28px;text-shadow:0 2px 14px rgba(0,0,0,.45)}.hero-actions{display:flex;gap:16px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:999px;font-weight:760;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{color:#09213a;background:linear-gradient(135deg,#ffd472,#e5a332);box-shadow:0 8px 28px rgba(223,154,40,.28),inset 0 1px rgba(255,255,255,.5)}.button-gold:hover{box-shadow:0 11px 35px rgba(240,176,55,.4)}.button-ghost{border:1px solid rgba(255,255,255,.72);background:rgba(3,24,44,.25);backdrop-filter:blur(8px)}.hero-tags{margin-top:42px;display:flex;align-items:center;gap:18px;color:#e6eaf0;font-size:12px;font-weight:650}.hero-tags i{height:16px;width:1px;background:rgba(255,194,76,.55)}.hero-note{position:absolute;z-index:3;right:max(42px,calc((100vw - 1180px)/2));bottom:104px;font-size:11px;line-height:1.65;letter-spacing:.24em;font-weight:700;color:#f4f6f8;text-shadow:0 2px 8px #000}.hero-note span{display:block;position:absolute;left:-15px;top:0;width:2px;height:100%;background:linear-gradient(#f8b63c,transparent)}
.section-veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(2,24,44,.94),rgba(2,24,44,.82) 50%,rgba(2,24,44,.72)),linear-gradient(180deg,rgba(2,24,44,.90) 0%,rgba(2,24,44,.48) 28%,rgba(2,24,44,.58) 70%,rgba(2,24,44,.94) 100%)}.section-veil.deeper{background:linear-gradient(90deg,rgba(2,24,44,.96),rgba(2,24,44,.84) 58%,rgba(2,24,44,.72)),linear-gradient(180deg,rgba(2,24,44,.95) 0%,rgba(2,24,44,.55) 40%,rgba(2,24,44,.95) 100%)}.section-eyebrow{margin-bottom:16px}.philosophy{min-height:420px;display:flex;align-items:center}.split{display:grid;grid-template-columns:1.65fr .75fr;gap:100px;align-items:center;padding:78px 0}.split h2{font-size:clamp(37px,4vw,60px);line-height:1.04;letter-spacing:-.04em;margin:0;font-weight:520}.philosophy-copy p{font-size:17px;line-height:1.6;color:#edf1f5;margin:0 0 26px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(240,179,61,.42);padding-top:18px}.pillars span{text-transform:uppercase;letter-spacing:.2em;font-size:10px;color:#f5c76c;text-align:center}.pillars b{display:block;font-size:25px;color:#efb33f;margin-bottom:7px;font-weight:400}.capabilities{min-height:580px}.capabilities-layout{display:grid;grid-template-columns:.75fr 1.45fr;gap:80px;padding:74px 0 80px;align-items:start}.cap-intro h2{font-size:clamp(44px,5vw,66px);line-height:.94;letter-spacing:-.05em;margin:0}.cap-list{border-top:1px solid rgba(255,255,255,.22)}.cap-list a{display:grid;grid-template-columns:48px 1.05fr 1fr 24px;gap:18px;align-items:center;min-height:66px;border-bottom:1px solid rgba(255,255,255,.2);transition:.2s;padding:4px 0}.cap-list a:hover{background:linear-gradient(90deg,transparent,rgba(255,184,54,.06));padding-left:8px}.cap-list em{font-style:normal;color:#f3b13e;font-size:19px}.cap-list strong{font-size:15px}.cap-list span{color:#d0d7df;font-size:12px;line-height:1.45}.cap-list b{color:#f1b13d;font-size:22px}.approach{min-height:650px}.approach-scene img{object-position:58% 62%;transform:scale(1.12)}.approach-veil{background:linear-gradient(90deg,rgba(2,24,44,.93),rgba(2,24,44,.52) 46%,rgba(2,24,44,.35)),linear-gradient(180deg,rgba(2,24,44,.78),rgba(2,24,44,.2) 48%,rgba(2,24,44,.74))}.approach-head{padding-top:58px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.approach h2{font-size:clamp(46px,5vw,70px);line-height:.9;margin:0;letter-spacing:-.055em}.approach-head>p{max-width:440px;font-size:17px;line-height:1.5;color:#e8edf1;margin:0 0 8px}.journey{height:360px;display:grid;grid-template-columns:repeat(6,1fr);gap:20px;align-items:end;padding-bottom:66px;position:relative}.journey-line{position:absolute;left:3%;right:2%;bottom:116px;height:3px;background:linear-gradient(90deg,#d88d16,#fff3b0 15%,#f7ad29 42%,#fff0a0 67%,#f5a627);transform:rotate(-7deg);transform-origin:center;box-shadow:0 0 8px #ffc047,0 0 18px #f6a627,0 0 35px rgba(255,172,30,.75)}.journey-line:before,.journey-line:after{content:"";position:absolute;inset:-9px 0;background:inherit;filter:blur(12px);opacity:.48}.journey-line span{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff7cd;box-shadow:0 0 0 4px #e59a1e,0 0 22px #ffc13d;left:48%;top:-3px}.journey article{position:relative;padding-left:13px;border-left:2px solid rgba(241,176,56,.68);min-height:116px;text-shadow:0 2px 10px #000}.journey article:nth-child(3){transform:translateY(-5px)}.journey article:nth-child(4){transform:translateY(-24px)}.journey article:nth-child(5){transform:translateY(-43px)}.journey article:nth-child(6){transform:translateY(-66px)}.journey article:nth-child(7){transform:translateY(-88px)}.journey article b{font-size:12px}.journey h3{font-size:16px;margin:5px 0}.journey p{font-size:11px;color:#e5e9ee;line-height:1.35;margin:0;max-width:125px}.work{min-height:570px}.work-veil{background:linear-gradient(180deg,rgba(2,24,44,.94) 0%,rgba(2,24,44,.62) 34%,rgba(2,24,44,.78) 72%,rgba(2,24,44,.96) 100%),linear-gradient(90deg,rgba(2,24,44,.91),rgba(2,24,44,.58))}.work-head{padding-top:54px;display:grid;grid-template-columns:.75fr 1fr auto;align-items:end;gap:40px}.work h2{font-size:48px;line-height:.96;letter-spacing:-.04em;margin:0}.work-head>p{margin:0;color:#dce3e9;line-height:1.5;font-size:14px}.work-head>a{font-size:12px;color:#ffc357;white-space:nowrap}.projects{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.projects article{padding:32px 25px 30px;border-right:1px solid rgba(255,255,255,.2);min-height:285px;background:linear-gradient(180deg,rgba(1,19,35,.30),rgba(1,19,35,.7));backdrop-filter:blur(2px)}.projects article:last-child{border-right:0}.projects h3{font-size:27px;margin:0 0 8px;letter-spacing:-.04em}.projects mark{background:none;color:#64c9ff;margin-right:5px}.projects small{color:#fff;font-size:12px;font-weight:650}.projects p{color:#d9e0e7;font-size:13px;line-height:1.55;min-height:100px}.projects a{font-size:12px;color:#ffc04d;font-weight:700}.closing{min-height:330px;display:flex;align-items:center}.closing .scene img{object-position:center 55%}.closing-veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(2,24,44,.96),rgba(2,24,44,.82) 48%,rgba(2,24,44,.22)),linear-gradient(180deg,rgba(2,24,44,.45),rgba(2,24,44,.65))}.closing-inner{display:flex;align-items:end;justify-content:space-between;gap:60px;padding:62px 0}.closing h2{font-size:clamp(40px,4.5vw,64px);line-height:.94;letter-spacing:-.045em;margin:0}.closing-actions{display:flex;gap:14px;flex-shrink:0}.footer{background:#011526;border-top:1px solid rgba(255,255,255,.13)}.footer-inner{min-height:130px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:50px}.footer img{width:170px;height:auto}.footer nav{display:flex;gap:28px;font-size:11px}.footer p{justify-self:end;text-align:right;color:#b9c3ce;font-size:9px;line-height:1.6}.menu-toggle{justify-self:end;width:38px;height:38px;align-items:center;justify-content:center;gap:6px;flex-direction:column}.menu-toggle span{display:block;width:22px;height:1px;background:#fff}
@media(max-width:980px){:root{--shell:min(100% - 40px,760px)}.nav-shell{grid-template-columns:1fr auto}.nav,.nav-cta{display:none}.menu-toggle{display:flex}.nav.open{display:flex;position:absolute;top:82px;left:20px;right:20px;background:rgba(1,20,37,.98);padding:24px;flex-direction:column;gap:22px;border:1px solid rgba(255,255,255,.12);border-radius:16px;backdrop-filter:blur(16px)}.hero{min-height:760px}.hero .scene img{object-position:63% center}.hero-shade{background:linear-gradient(90deg,rgba(1,16,30,.96),rgba(1,16,30,.76) 60%,rgba(1,16,30,.25)),linear-gradient(180deg,rgba(2,24,44,.2),rgba(2,24,44,.78))}.hero-note{display:none}.split,.capabilities-layout,.approach-head{grid-template-columns:1fr}.split{gap:42px}.capabilities-layout{gap:42px}.cap-list a{grid-template-columns:42px 1fr 24px}.cap-list span{display:none}.journey{overflow-x:auto;grid-template-columns:repeat(6,170px);padding-bottom:54px}.work-head{grid-template-columns:1fr}.projects{grid-template-columns:repeat(2,1fr)}.projects article:nth-child(2){border-right:0}.projects article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.2)}.closing-inner{align-items:flex-start;flex-direction:column}.footer-inner{grid-template-columns:1fr;gap:20px;padding:32px 0}.footer p{justify-self:start;text-align:left}.footer nav{flex-wrap:wrap}}
@media(max-width:640px){:root{--shell:calc(100% - 34px)}.site-header{position:absolute}.nav-shell{height:78px}.brand img{width:158px}.hero{min-height:760px;padding-top:130px}.hero .scene img{object-position:67% center}.hero h1{font-size:64px}.hero-copy{font-size:17px;max-width:330px}.hero-actions{flex-direction:column;align-items:flex-start}.button{min-width:215px}.hero-tags{gap:10px;flex-wrap:wrap;max-width:340px}.hero-tags i{display:none}.philosophy{min-height:560px}.split{padding:65px 0}.split h2{font-size:39px}.pillars{gap:6px}.capabilities-layout{padding:62px 0}.cap-intro h2{font-size:48px}.cap-list a{min-height:62px}.cap-list strong{font-size:14px}.approach{min-height:720px}.approach-head{padding-top:52px}.journey{height:390px}.journey-line{left:0;right:-480px}.work{padding-bottom:55px}.projects{grid-template-columns:1fr}.projects article{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.2)!important;min-height:220px}.projects p{min-height:auto}.closing{min-height:430px}.closing-inner{padding:55px 0}.closing h2{font-size:43px}.closing-actions{flex-direction:column}.footer nav{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.cap-list a{transition:none}}
/* One-world continuity: imagery never changes palette between sections. */
.philosophy::before,.capabilities::before,.approach::before,.work::before{content:"";position:absolute;left:0;right:0;top:0;height:110px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#02182c 0%,rgba(2,24,44,.72) 30%,rgba(2,24,44,0) 100%)}
.philosophy::after,.capabilities::after,.approach::after,.work::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#02182c 0%,rgba(2,24,44,.76) 28%,rgba(2,24,44,0) 100%)}


/* Contact: integrated, line-led form rather than a detached card. */
.contact-section{min-height:680px;display:flex;align-items:center}.contact-section .scene img{object-position:center 54%;filter:saturate(.9) brightness(.76)}.contact-section .closing-veil{background:linear-gradient(90deg,rgba(1,18,34,.98) 0%,rgba(2,24,44,.93) 42%,rgba(2,24,44,.78) 72%,rgba(2,24,44,.58) 100%),linear-gradient(180deg,rgba(2,24,44,.68),rgba(2,24,44,.9))}.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:86px;align-items:start;padding:86px 0 92px}.contact-intro{padding-top:8px}.contact-intro h2{font-size:clamp(44px,4.6vw,66px);line-height:.95;letter-spacing:-.048em;margin:0;max-width:610px}.contact-intro h2 span{color:#f2b442}.contact-intro>p:not(.eyebrow){max-width:510px;margin:28px 0 30px;color:#dce4eb;font-size:16px;line-height:1.65}.contact-signals{display:flex;flex-wrap:wrap;gap:9px 10px;max-width:520px}.contact-signals span{border:1px solid rgba(255,194,76,.24);border-radius:999px;padding:8px 11px;color:#dce4eb;background:rgba(2,24,44,.3);font-size:10px;font-weight:700;letter-spacing:.04em}.contact-form{position:relative;padding:10px 0 0;border-top:1px solid rgba(239,177,61,.62)}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:34px}.field{position:relative;padding:24px 0 11px;border-bottom:1px solid rgba(255,255,255,.23)}.field label{display:block;margin-bottom:9px;color:#f5c66d;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;border:0;outline:0;background:transparent;color:#f7f9fc;font:inherit;font-size:15px;line-height:1.45;padding:0;appearance:none}.field input{height:32px}.field select{height:32px;cursor:pointer}.field select option{color:#10253b;background:#f7f9fc}.field textarea{resize:vertical;min-height:120px;padding-top:2px}.field textarea::placeholder{color:#90a1b1}.field:focus-within{border-bottom-color:#f0b13f;box-shadow:0 1px 0 rgba(240,177,63,.3)}.field-message{padding-top:28px}.form-consent{display:flex;align-items:flex-start;gap:11px;margin-top:21px;color:#c8d2dc;font-size:11px;line-height:1.5;cursor:pointer}.form-consent input{margin-top:2px;accent-color:#e7a83c}.form-submit{display:flex;align-items:center;gap:18px;margin-top:24px;min-height:50px}.form-submit .button{border:0;cursor:pointer}.form-submit .button:disabled{cursor:wait;opacity:.66;transform:none}.form-status{margin:0;color:#d9e2e9;font-size:11px;line-height:1.45;max-width:300px}.form-status[data-state="success"]{color:#f4c86f}.form-status[data-state="error"]{color:#ffd0c8}.form-status[data-state="pending"]{color:#d9e2e9}.honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.contact-form.was-validated :invalid:not(.form-consent input){border-radius:2px;box-shadow:0 1px 0 rgba(255,145,125,.85)}.contact-form.was-validated .form-consent:has(input:invalid){color:#ffd0c8}

@media(max-width:980px){.contact-section{min-height:auto}.contact-layout{grid-template-columns:1fr;gap:48px;padding:72px 0 78px}.contact-intro>p:not(.eyebrow){max-width:620px}.contact-signals{max-width:650px}.contact-form{max-width:760px;width:100%}}
@media(max-width:640px){.contact-layout{padding:60px 0 68px;gap:38px}.contact-intro h2{font-size:42px}.contact-intro>p:not(.eyebrow){font-size:15px;margin:22px 0 24px}.contact-signals{display:none}.form-grid{grid-template-columns:1fr}.field{padding-top:21px}.form-submit{align-items:flex-start;flex-direction:column}.form-submit .button{min-width:210px}.form-status{max-width:100%}}


/* Final visual clarity pass: use the selected high-resolution cinematic master without softening transforms. */
.scene img,
.muted-scene img,
.continuum-scene img,
.approach-scene img,
.work .continuum-scene img,
.capabilities .continuum-scene img{
  filter:none!important;
  transform:none!important;
}
.continuum-scene{inset:0}
.hero .scene img{object-position:center 50%}
.philosophy .continuum-scene img{object-position:58% 52%}
.capabilities .continuum-scene img{object-position:52% 58%}
.approach-scene img{object-position:48% 58%}
.work .continuum-scene img{object-position:58% 55%}
.closing .scene img,.contact-section .scene img{object-position:56% 55%;filter:none!important}

.section-veil{
  background:
    linear-gradient(90deg,rgba(1,16,30,.94) 0%,rgba(2,24,44,.82) 46%,rgba(2,24,44,.64) 100%),
    linear-gradient(180deg,rgba(2,24,44,.40),rgba(2,24,44,.70));
}
.section-veil.deeper{
  background:
    linear-gradient(90deg,rgba(1,16,30,.96) 0%,rgba(2,24,44,.84) 52%,rgba(2,24,44,.66) 100%),
    linear-gradient(180deg,rgba(2,24,44,.48),rgba(2,24,44,.73));
}
.approach-veil{
  background:
    linear-gradient(90deg,rgba(1,16,30,.90) 0%,rgba(2,24,44,.58) 44%,rgba(2,24,44,.34) 100%),
    linear-gradient(180deg,rgba(2,24,44,.57),rgba(2,24,44,.34) 48%,rgba(2,24,44,.69));
}
.work-veil{
  background:
    linear-gradient(180deg,rgba(2,24,44,.82),rgba(2,24,44,.54) 38%,rgba(2,24,44,.70) 78%,rgba(2,24,44,.90)),
    linear-gradient(90deg,rgba(1,16,30,.90),rgba(2,24,44,.52));
}
.contact-section .closing-veil{
  background:
    linear-gradient(90deg,rgba(1,18,34,.96) 0%,rgba(2,24,44,.86) 43%,rgba(2,24,44,.66) 74%,rgba(2,24,44,.48) 100%),
    linear-gradient(180deg,rgba(2,24,44,.48),rgba(2,24,44,.79));
}

/* Use the exact supplied primary logo on a restrained light brand plate so its navy/gold colors stay unchanged. */
.brand{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.72);
  border-radius:9px;
  box-shadow:0 8px 26px rgba(0,0,0,.14);
  overflow:hidden;
}
.brand img{width:198px;height:auto;display:block;filter:none}
.footer img{
  width:184px;
  height:auto;
  padding:5px 7px;
  background:#fff;
  border-radius:8px;
  filter:none;
}

/* Journey path: a low-opacity illuminated route that follows the landscape instead of a straight overlay line. */
.journey-line{display:none}
.journey-path{
  position:absolute;
  left:0;
  right:0;
  bottom:38px;
  width:100%;
  height:270px;
  overflow:visible;
  pointer-events:none;
  mix-blend-mode:screen;
  opacity:.72;
}
.journey-path-glow{
  fill:none;
  stroke:url(#journey-gold);
  stroke-width:13;
  stroke-linecap:round;
  filter:url(#journey-glow);
  opacity:.34;
}
.journey-path-core{
  fill:none;
  stroke:url(#journey-gold);
  stroke-width:1.7;
  stroke-linecap:round;
  opacity:.92;
}
.journey-nodes circle{
  fill:#fff3bf;
  stroke:#d79224;
  stroke-width:2;
  filter:drop-shadow(0 0 7px rgba(255,184,55,.8));
}
.journey article{
  border-left:1px solid rgba(241,176,56,.46);
  transform:none;
}
.journey article:nth-of-type(1){transform:translateY(0)}
.journey article:nth-of-type(2){transform:translateY(-18px)}
.journey article:nth-of-type(3){transform:translateY(-34px)}
.journey article:nth-of-type(4){transform:translateY(-49px)}
.journey article:nth-of-type(5){transform:translateY(-72px)}
.journey article:nth-of-type(6){transform:translateY(-96px)}

@media(max-width:980px){
  .brand{padding:4px 7px}
  .brand img{width:188px}
  .journey-path{width:980px;right:auto;bottom:34px}
}
@media(max-width:640px){
  .brand{padding:3px 6px;border-radius:7px}
  .brand img{width:150px}
  .journey-path{width:980px;height:260px;bottom:36px;opacity:.6}
  .footer img{width:170px}
}


/* Header/hero refinement: sticky navigation, native dark logo, and a fuller first viewport. */
.site-header{
  position:sticky!important;
  top:0;
  z-index:100;
  background:rgba(1,17,31,.72);
  border-bottom:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(18px) saturate(130%);
  -webkit-backdrop-filter:blur(18px) saturate(130%);
  transition:background .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.site-header.is-scrolled{
  background:rgba(1,17,31,.94);
  border-bottom-color:rgba(255,193,74,.18);
  box-shadow:0 14px 34px rgba(0,0,0,.20);
}
.brand{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
.brand img{
  width:188px!important;
  height:auto!important;
  filter:none!important;
}
.footer img{
  width:190px!important;
  height:auto!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  filter:none!important;
}

.hero{
  min-height:calc(100vh - 94px);
  padding-top:74px;
}
.hero-content{
  display:grid;
  grid-template-columns:minmax(0,640px) minmax(300px,410px);
  gap:72px;
  align-items:center;
  justify-content:space-between;
  padding-top:8px;
}
.hero-primary{min-width:0}
.hero h1{
  max-width:740px;
  font-size:clamp(62px,5.9vw,96px);
  line-height:.88;
  letter-spacing:-.055em;
}
.hero-copy{
  max-width:600px;
  font-size:19px;
  line-height:1.55;
  margin:28px 0 30px;
}
.hero-aside{
  align-self:end;
  justify-self:end;
  width:min(230px,100%);
  padding-left:18px;
  border-left:1px solid rgba(240,177,63,.55);
  text-shadow:0 2px 12px rgba(0,0,0,.45);
  margin-bottom:36px;
}
.hero-aside-kicker{
  margin:0;
  max-width:220px;
  color:#f7f9fc;
  font-size:11px;
  font-weight:800;
  line-height:1.72;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.hero-aside>p:not(.hero-aside-kicker){
  margin:0;
  max-width:390px;
  color:#d9e1e8;
  font-size:14px;
  line-height:1.65;
}
.hero-aside-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin-top:26px;
  border-top:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}
.hero-aside-grid span{
  min-height:72px;
  padding:15px 14px 13px 0;
  border-right:1px solid rgba(255,255,255,.14);
}
.hero-aside-grid span:nth-child(even){padding-left:16px;border-right:0}
.hero-aside-grid span:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}
.hero-aside-grid b,.hero-aside-grid small{display:block}
.hero-aside-grid b{font-size:12px;color:#fff;margin-bottom:4px}
.hero-aside-grid small{font-size:10px;color:#c8d2dc}
.hero-tags{margin-top:36px}

/* Approach path alignment: nodes belong to their stages, not to the center of each column. */
.journey-path{
  z-index:0;
  bottom:29px;
  opacity:.58;
}
.journey article{
  z-index:1;
  position:relative;
  overflow:visible;
}
.journey article::after{
  content:"";
  position:absolute;
  left:-5px;
  bottom:-7px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#fff2bd;
  border:2px solid #d99627;
  box-shadow:0 0 0 3px rgba(232,160,41,.18),0 0 14px rgba(255,184,55,.72);
}
.journey-path-core{stroke-width:1.35;opacity:.78}
.journey-path-glow{stroke-width:9;opacity:.20}

@media(max-width:980px){
  .site-header{position:sticky!important}
  .hero{min-height:auto;padding-top:54px;padding-bottom:74px}
  .hero-content{grid-template-columns:1fr;gap:42px}
  .hero-aside{justify-self:start;max-width:260px;margin-bottom:0}
  .hero h1{font-size:clamp(58px,9vw,78px)}
  .journey-path{bottom:25px}
}
@media(max-width:640px){
  .site-header{position:sticky!important}
  .brand img{width:166px!important}
  .hero{padding-top:46px;padding-bottom:62px}
  .hero h1{font-size:52px;line-height:.91}
  .hero-copy{font-size:16px}
  .hero-aside{padding-left:18px}
  .hero-aside-grid{grid-template-columns:1fr 1fr}
  .hero-aside-grid span{min-height:66px}
  .journey article::after{bottom:-6px}
}


/* Journey micro-alignment: keep the environmental curve physically behind the six stage anchors. */
.journey-path{bottom:52px;opacity:.52}
.journey-path-core{stroke-width:1.2;opacity:.72}
.journey-path-glow{stroke-width:8;opacity:.16}
.journey article::after{left:-5px;bottom:-7px}
@media(max-width:980px){.journey-path{bottom:52px}}
@media(max-width:640px){.journey-path{bottom:50px;opacity:.48}}


/* Glass navigation: keep the hero visible under a distinct iOS-style frosted bar. */
html{scroll-padding-top:112px}
.site-header{
  position:fixed!important;
  left:0;
  right:0;
  top:0;
  padding:16px 0 0;
  transform:translateY(0);
  background:linear-gradient(180deg,rgba(1,14,27,.22),rgba(1,14,27,0))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:transform .28s ease,background .22s ease!important;
}
.site-header.is-hidden{transform:translateY(calc(-100% - 18px))}
.site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(1,14,27,.34),rgba(1,14,27,.03))!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.nav-shell{
  height:76px;
  padding:0 20px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.035)),
    rgba(2,24,44,.18);
  box-shadow:
    0 18px 42px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(20px) saturate(150%);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
}
.site-header.is-scrolled .nav-shell{
  background:
    linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.045)),
    rgba(2,24,44,.28);
  border-color:rgba(255,211,118,.18);
  box-shadow:
    0 18px 48px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.20);
}
.nav a{
  color:rgba(247,249,252,.78);
  text-shadow:0 1px 8px rgba(0,0,0,.28);
}
.nav{gap:34px;font-size:12px;font-weight:650}
.nav-cta{
  background:rgba(255,201,93,.10);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  padding:11px 18px;
  font-size:12px;
  color:rgba(255,210,115,.86);
  border-color:rgba(246,183,62,.58);
  box-shadow:0 0 18px rgba(231,168,60,.045);
}
.hero{
  min-height:100vh;
  padding-top:150px;
}

@media(max-width:980px){
  html{scroll-padding-top:102px}
  .site-header{padding-top:12px}
  .nav-shell{height:72px;padding:0 16px;border-radius:19px}
  .nav.open{
    top:84px;
    left:0;
    right:0;
    background:
      linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.045)),
      rgba(2,24,44,.56);
    border-color:rgba(255,255,255,.15);
    box-shadow:0 18px 42px rgba(0,0,0,.22);
  }
  .hero{padding-top:128px}
}
@media(max-width:640px){
  html{scroll-padding-top:94px}
  .site-header{padding-top:10px}
  .nav-shell{height:66px;border-radius:17px}
  .nav.open{top:78px}
  .hero{padding-top:116px}
}


/* Interaction polish — restrained motion and tactile feedback without changing the visual system. */
:root{--ease-out:cubic-bezier(.2,.72,.24,1);--ease-smooth:cubic-bezier(.4,0,.2,1)}
body{overflow-x:hidden}
.site-header{will-change:background}
.site-header.is-hidden{transform:none!important}

.nav a{position:relative;transition:color .22s ease,opacity .22s ease}
.nav a::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-9px;
  height:1px;
  background:linear-gradient(90deg,transparent,#f0b13f,transparent);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .28s var(--ease-out);
}
.nav a:hover::after,.nav a:focus-visible::after{transform:scaleX(1)}

.nav-cta,.button{overflow:hidden;position:relative}
.nav-cta::before,.button::before{
  content:"";
  position:absolute;
  top:-80%;bottom:-80%;left:-45%;
  width:28%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-18deg) translateX(-220%);
  transition:transform .56s var(--ease-out);
  pointer-events:none;
}
.nav-cta:hover::before,.button:hover::before{transform:skewX(-18deg) translateX(620%)}
.nav-cta span,.button span,.cap-list b,.projects a{
  display:inline-block;
  transition:transform .22s var(--ease-out),color .22s ease;
}
.nav-cta:hover span,.button:hover span,.cap-list a:hover b,.projects article:hover a{transform:translateX(4px)}

.brand img{transition:transform .32s var(--ease-out),filter .32s ease}
.brand:hover img{transform:translateY(-1px) scale(1.015);filter:drop-shadow(0 7px 18px rgba(231,168,60,.12))!important}

.hero .scene img{
  transform:translate3d(0,var(--hero-shift,0px),0)!important;
  scale:1.025;
  transition:filter .3s ease;
  will-change:transform;
}
.hero-primary,.hero-aside{will-change:transform,opacity}

.motion-ready .hero-primary>.eyebrow,
.motion-ready .hero-primary>h1,
.motion-ready .hero-primary>.hero-copy,
.motion-ready .hero-primary>.hero-actions,
.motion-ready .hero-primary>.hero-tags,
.motion-ready .hero-aside{
  opacity:0;
  transform:translateY(18px);
  animation:heroEnter .74s var(--ease-out) forwards;
}
.motion-ready .hero-primary>h1{animation-delay:.08s}
.motion-ready .hero-primary>.hero-copy{animation-delay:.16s}
.motion-ready .hero-primary>.hero-actions{animation-delay:.24s}
.motion-ready .hero-primary>.hero-tags{animation-delay:.31s}
.motion-ready .hero-aside{animation-delay:.2s}
@keyframes heroEnter{to{opacity:1;transform:translateY(0)}}

.reveal-item{
  opacity:0;
  translate:0 22px;
  transition:opacity .7s var(--ease-out),translate .7s var(--ease-out);
  transition-delay:var(--reveal-delay,0ms);
}
.reveal-item.is-visible{opacity:1;translate:0 0}

.cap-list a{
  position:relative;
  isolation:isolate;
  transition:padding .25s var(--ease-out),background .25s ease,border-color .25s ease,transform .25s var(--ease-out);
}
.cap-list a::before{
  content:"";
  position:absolute;inset:7px -10px;
  z-index:-1;
  border-radius:10px;
  background:linear-gradient(90deg,rgba(240,177,63,.09),rgba(240,177,63,.025),transparent);
  opacity:0;
  transform:scaleX(.96);
  transform-origin:left;
  transition:opacity .24s ease,transform .3s var(--ease-out);
}
.cap-list a:hover{transform:translateX(3px);border-bottom-color:rgba(255,201,93,.34)}
.cap-list a:hover::before{opacity:1;transform:scaleX(1)}

.pillars span,.contact-signals span{
  transition:transform .24s var(--ease-out),color .24s ease,border-color .24s ease,background .24s ease;
}
.pillars span:hover{transform:translateY(-3px);color:#ffe19a}
.contact-signals span:hover{
  transform:translateY(-2px);
  border-color:rgba(255,194,76,.52);
  background:rgba(231,168,60,.08);
  color:#fff4d8;
}

.projects article{
  position:relative;
  overflow:hidden;
  transition:transform .32s var(--ease-out),background .32s ease,border-color .32s ease;
}
.projects article::before{
  content:"";
  position:absolute;inset:0;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(245,184,70,.13),transparent 42%);
  opacity:0;
  transition:opacity .28s ease;
  pointer-events:none;
}
.projects article:hover{
  transform:translateY(-5px);
  background:linear-gradient(180deg,rgba(5,32,55,.42),rgba(1,19,35,.78));
}
.projects article:hover::before{opacity:1}
.projects h3,.projects small,.projects p,.projects a{position:relative;z-index:1}

.journey-path-core,.journey-path-glow{
  stroke-dasharray:1;
  stroke-dashoffset:1;
}
.approach.is-visible .journey-path-core{animation:drawJourney 1.55s .12s var(--ease-out) forwards}
.approach.is-visible .journey-path-glow{animation:drawJourney 1.75s .2s var(--ease-out) forwards}
@keyframes drawJourney{to{stroke-dashoffset:0}}
.journey article{transition:filter .25s ease,opacity .25s ease}
.journey article:hover{filter:drop-shadow(0 8px 20px rgba(240,177,63,.16))}
.journey article::after{transition:transform .25s var(--ease-out),box-shadow .25s ease}
.journey article:hover::after{
  transform:scale(1.28);
  box-shadow:0 0 0 5px rgba(232,160,41,.13),0 0 22px rgba(255,184,55,.82);
}

.field{transition:border-color .22s ease,box-shadow .22s ease,transform .22s var(--ease-out)}
.field:focus-within{transform:translateY(-1px)}
.field input,.field select,.field textarea{transition:color .2s ease}
.form-submit .button{transition:transform .22s var(--ease-out),box-shadow .22s ease,opacity .22s ease}
.form-status{transition:opacity .22s ease,color .22s ease}
.form-privacy{color:#9eacb9;font-size:10px;line-height:1.5;margin:18px 0 0}

@media(hover:hover) and (pointer:fine){
  .button:active,.nav-cta:active{transform:translateY(0) scale(.985)}
}

@media(prefers-reduced-motion:reduce){
  .motion-ready .hero-primary>.eyebrow,
  .motion-ready .hero-primary>h1,
  .motion-ready .hero-primary>.hero-copy,
  .motion-ready .hero-primary>.hero-actions,
  .motion-ready .hero-primary>.hero-tags,
  .motion-ready .hero-aside,
  .reveal-item{
    opacity:1!important;
    transform:none!important;
    translate:none!important;
    animation:none!important;
    transition:none!important;
  }
  .journey-path-core,.journey-path-glow{stroke-dashoffset:0!important;animation:none!important}
  .hero .scene img{transform:none!important;scale:1!important}
  .nav-cta::before,.button::before{display:none}
}
