:root,body,.header,.hero,.process,.contact,.footer,dialog{--ink:#15252b;--navy:#101c22;--muted:#516065;--paper:#f5f4ef;--linen:#eeede6;--line:#d7d9d1;--orange:#ffae48;--teal:#7be4ce;--white:#fffdf7;--page:1280px;--g:clamp(20px,5vw,76px);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.55 "Segoe UI",Arial,sans-serif}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible{outline:3px solid #188175;outline-offset:5px}
.header :focus-visible,.hero :focus-visible,.process :focus-visible,.footer :focus-visible,dialog :focus-visible{outline-color:var(--orange)}
img,svg,video{display:block;max-width:100%}
p,h1,h2,h3,ul,figure{margin:0}
ul{padding:0;list-style:none}
.wrap{width:calc(100% - 40px);width:calc(100% - var(--g, 20px) - var(--g, 20px));max-width:1280px;margin-left:auto;margin-right:auto}
.sr,.skip:not(:focus){position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}
.skip:focus{position:fixed;top:10px;left:10px;padding:12px 18px;z-index:20;background:var(--white)}
.header{background:#101c22;color:var(--white);border-bottom:1px solid #ffffff22;position:sticky;top:0;z-index:5}
.bar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;align-items:center;gap:11px;font-size:24px;font-weight:750;line-height:.95;white-space:nowrap}
.brand img{width:auto;height:37px}
.brand-dash{color:var(--orange)}
.brand small{display:block;font-size:8px;letter-spacing:.16em;margin-top:8px;color:#b0c3c4;font-weight:650}
nav{display:flex;align-items:center;gap:clamp(18px,3vw,40px);font-size:14px;font-weight:600}
nav a:not(.nav-cta){color:#e0e8e7}
nav a:not(.nav-cta):hover{color:var(--orange)}
.nav-cta{border:1px solid #5b6b6f;border-radius:5px;padding:10px 14px}
.nav-cta:hover{border-color:var(--orange)}
.nav-cta span{margin-left:9px;color:var(--orange)}
.menu{display:none}
.eyebrow{font-family:Consolas,"Courier New",monospace;font-size:clamp(10px,1.2vw,13px);font-weight:700;letter-spacing:.095em;text-transform:uppercase;line-height:1.5}
.hero {
  background:#101c22;
  background-image:radial-gradient(ellipse at 38% 105%,#1d393b 0%,transparent 65%);
  color:#fffdf7;
}
.hero-inner {
  display:grid;
  grid-template-columns:minmax(0,1.13fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(28px,5vw,84px);
  padding-block:clamp(42px,5vw,76px);
}
.hero-copy { min-width:0; }
.hero-kicker{display:flex;align-items:center;gap:11px;color:#e7eeeb}
.light{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px #ffae482a}
h1,h2,h3{line-height:1.04;letter-spacing:-.046em}
h1{font-size:clamp(52px,6.1vw,90px);margin:22px 0 24px;font-weight:760;letter-spacing:-.068em}
h1 em{font-style:normal;color:var(--orange)}
.hero-description{max-width:510px;color:#e0e9e8;font-size:clamp(16px,1.53vw,21px);line-height:1.5;text-wrap:pretty}
.hero-actions{margin-top:33px;display:flex;gap:12px;flex-wrap:wrap}
.button{display:inline-flex;gap:22px;align-items:center;justify-content:space-between;border-radius:5px;padding:13px 17px;min-height:49px;font-weight:750;font-size:14px;line-height:1.3;transition:background .2s,color .2s,border-color .2s}
.primary{background:var(--orange);color:var(--navy);border:1px solid var(--orange)}
.primary:hover{background:#ffc77d;border-color:#ffc77d}
.ghost{border:1px solid #a7b5b688;color:var(--white);background:#101c2244}
.ghost:hover{background:#31474c}
.hero-media {
  position:relative;
  isolation:isolate;
  min-width:0;
  aspect-ratio:1.18;
  border:1px solid #78909666;
  border-radius:9px;
  overflow:hidden;
  background:#273f44;
}
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center 55%; }
.hero-media::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,#101c2259,transparent 32%,transparent 58%,#101c22c9);
  pointer-events:none;
}
.hero-frame {
  position:absolute;
  inset:12px;
  z-index:1;
  border:1px solid #eef5ed4d;
  border-radius:4px;
  pointer-events:none;
}
.field-label {
  position:absolute;
  z-index:2;
  left:23px;
  top:22px;
  padding:6px 9px;
  color:#fffdf7;
  background:#12242ce8;
  border-radius:4px;
}
.field-label span {
  display:inline-block;
  width:6px;
  height:6px;
  margin:0 5px 2px 0;
  border-radius:50%;
  background:#ffae48;
}
.hero-media .play { position:absolute; bottom:22px; right:22px; z-index:2; }
.play{display:flex;text-align:left;align-items:center;gap:12px;color:var(--white);background:#102127ed;border:1px solid #e8f3f449;border-radius:7px;padding:10px 15px 10px 10px;cursor:pointer}
.play:hover{border-color:var(--orange)}
.play-icon{display:grid;place-items:center;width:36px;height:36px;background:var(--orange);color:var(--navy);border-radius:50%;font-size:13px;padding-left:2px}
.play strong,.play small{display:block;line-height:1.4}
.play strong{font-size:13px}
.play small{font-size:11px;color:#bfcfce}
.hero-index{color:#d7e6e4;border-top:1px solid #ffffff25;background:#101c22}
.hero-index .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;min-height:45px;align-items:center;font:700 11px/1.2 Consolas,"Courier New",monospace;letter-spacing:.065em}
.hero-index b{color:var(--orange);margin-right:4px}
.operators{border-bottom:1px solid var(--line);background:var(--linen)}
.operators-inner{min-height:110px;display:grid;grid-template-columns:minmax(185px,1fr) 4fr;align-items:center;gap:24px;padding:18px 0}
.operators .eyebrow{color:#4f5c59}
.experience{display:grid;gap:3px;border-right:1px solid #c5cec5;padding-right:20px}
.experience strong{font-size:clamp(24px,2.8vw,36px);line-height:1.1;letter-spacing:-.04em}
.experience span{font-size:14px;color:var(--muted)}
.operators ul{display:flex;justify-content:flex-start;column-gap:clamp(15px,2vw,29px);row-gap:10px;flex-wrap:wrap;margin-top:10px}
.operators li{font-weight:760;letter-spacing:-.035em;font-size:clamp(16px,1.8vw,25px);line-height:1.1}
.section{padding-top:clamp(72px,8vw,120px);padding-bottom:clamp(72px,8vw,120px)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}
.section-head>p{color:var(--muted);max-width:330px;line-height:1.5}
.indexed{color:#55655f;margin-bottom:14px}
.indexed b{color:#087268;margin-right:6px}
h2{font-size:clamp(40px,6.1vw,83px);font-weight:755;text-wrap:balance}
h3{font-size:clamp(22px,2.15vw,31px);line-height:1.12}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#f8f7f2}
.service-grid article{position:relative;padding:clamp(17px,2.2vw,32px);border-right:1px solid var(--line)}
.service-grid article:last-child{border-right:0}
.service-no{position:absolute;top:22px;right:21px;color:#576762;font:600 12px Consolas,monospace}
.service-icon{fill:none;stroke:#13756a;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;width:43px;height:43px;margin:3px 0 32px}
.service-grid h3{margin-bottom:12px;letter-spacing:-.04em}
.service-grid p{color:var(--muted);font-size:15px;line-height:1.55}
.text-link{cursor:pointer;background:none;border:0;border-bottom:1px solid #628a82;padding:0 0 3px;color:#0b6359;font-size:14px;font-weight:750;margin-top:auto}
.text-link span{margin-left:7px}
.text-link:hover{color:var(--ink)}
.process{background:#12232a;color:var(--white)}
.process .indexed,.process .section-head>p{color:#b8ccca}
.process .indexed b{color:var(--orange)}
.hero-index a:hover{color:var(--orange)}
.story-jump{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:20px}
.story-jump a{display:flex;align-items:center;gap:8px;min-height:46px;padding:8px 13px;background:#192e35;color:#dfefec;border:1px solid #4a656a;border-radius:5px;font-size:14px;font-weight:650}
.story-jump b{color:var(--teal);font:700 11px Consolas,monospace}
.story-jump a:hover,.story-jump [aria-current=step]{background:#263e43;border-color:var(--orange)}
.story-jump [aria-current=step] b,.story-step .eyebrow{color:var(--orange)}
.story-steps{display:grid;gap:24px}
.story-step{min-width:0;padding:24px 0;border-top:1px solid #49636a}
.story-step h3{font-size:clamp(29px,4vw,54px);margin:10px 0 12px;letter-spacing:-.045em;line-height:1.03}
.story-step>p:not(.eyebrow){max-width:440px;color:#c2d2d0;font-size:17px;line-height:1.55}
.story-frame{margin-top:16px;background:#162c34;border:1px solid #4a656a;border-radius:7px;overflow:hidden}
.story-frame img{width:100%;height:auto;max-height:310px;object-fit:contain;background:#102129}
.story-frame img.story-photo{aspect-ratio:1.55;object-fit:cover;object-position:center 35%}
.story-frame img.story-machine{object-position:center}
.story-frame figcaption,.story-caption{padding:10px 13px;color:#d4e5e0;font-size:13px}
.story-stage{display:none}
@media(min-width:851px) and (min-height:650px) and (prefers-reduced-motion:no-preference){
  .story[data-motion]{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);align-items:start;gap:clamp(25px,6vw,84px)}
  .story[data-motion] .story-steps{display:block}
  .story[data-motion] .story-step{position:relative;min-height:clamp(278px,43vh,408px);display:grid;align-content:center}
  .story[data-motion] .story-frame{position:absolute;width:1px;height:1px;margin:0;border:0;overflow:hidden;clip-path:inset(50%)}
  .story[data-motion] .story-stage{display:block;position:sticky;top:92px;margin-top:1px;background:#192e35;border:1px solid #4a656a;border-radius:8px;overflow:hidden}
  .story-stage-top{display:flex;justify-content:space-between;gap:10px;padding:12px 16px;color:var(--teal)}
  .story-visual{height:clamp(230px,44vh,425px);background:#102129}
  .story-visual img{width:100%;height:100%;object-fit:contain;animation:story-in .23s ease-out}
  .story-visual img.story-photo{object-fit:cover;object-position:center 34%}
  .story-visual img.story-machine{object-position:center}
  .story-route{padding:4px 16px 13px}
  .story-route svg{display:block;width:100%;height:42px}
  .story-track,.story-trace{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
  .story-track{stroke:#527279}
  .story-trace{stroke:var(--orange);stroke-dasharray:100;stroke-dashoffset:var(--untraced,100)}
  .story-stage-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}
  .story-caption{display:block;padding:0;min-height:20px}
  .story-controls{display:flex;gap:4px}
  .story-controls a{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid #587378;border-radius:4px;color:#d6e5e3;font:700 12px Consolas,monospace}
  .story-controls a:hover{border-color:var(--orange)}
  .story-controls [aria-current=step]{background:var(--orange);border-color:var(--orange);color:var(--navy)}
  @keyframes story-in{from{opacity:.78}to{opacity:1}}
}
.contact{background:#ffb659;padding:clamp(65px,7vw,100px) 0}
.contact-inner{display:grid;grid-template-columns:1.45fr 1fr;gap:34px;align-items:center}
.contact h2{text-wrap:initial}
.contact-intro>p:not(.eyebrow){max-width:480px;margin:21px 0 13px}
.contact .indexed,.contact .indexed b{color:#3c3020}
.contact-card{padding:clamp(20px,3.4vw,44px);border:1px solid #6d501d68;border-radius:8px;background:#ffd097}
.contact-intro .mail{display:inline-block;font-size:clamp(18px,2vw,26px);font-weight:750;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.mail:hover{text-decoration:underline}
.dark{background:var(--navy);color:var(--white)}
.dark:hover{background:#29414a}
.footer{background:var(--navy);color:#c5d1d1;padding:25px 0;font-size:13px}
.footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px}
.footer .brand{font-size:20px;color:var(--white)}
.up:hover{color:var(--orange)}
dialog{background:#15282f;color:var(--white);border:1px solid #55686b;border-radius:9px;padding:0;width:min(850px,calc(100% - 26px));max-height:calc(100% - 32px);overflow:auto}
dialog::backdrop{background:#0a1418d9}
.modal{padding:clamp(20px,4vw,42px);position:relative}
.icon-btn{cursor:pointer;display:grid;place-items:center;background:transparent;color:inherit;border:1px solid #829595;border-radius:6px;min-width:44px;min-height:44px}
.close{position:absolute;top:13px;right:13px;font-size:30px;line-height:1;z-index:1}
.close:hover,.menu:hover{border-color:var(--orange)}
.modal h2{font-size:clamp(30px,5vw,55px);margin:12px 45px 17px 0}
.modal p:not(.eyebrow){color:#d2e1df;margin-bottom:18px}
.modal .eyebrow{color:var(--orange)}
.modal .full-photo{width:100%;max-height:68vh;object-fit:contain;border-radius:5px;background:#0a1418}
.modal video{max-height:64vh;margin:auto;border-radius:5px;background:#0a1418}
@media(max-width:920px){
.hero-inner{gap:24px}
h1{font-size:clamp(42px,6vw,61px)}
.service-grid{grid-template-columns:repeat(2,1fr)}
.service-grid article:nth-child(2n){border-right:0}
.service-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}
.service-icon{margin-bottom:23px}
}
@media(max-width:700px){
html{scroll-padding-top:68px}
.bar{min-height:60px;gap:10px}
.brand{font-size:21px}
.brand img{height:32px}
.menu{display:flex;flex-direction:column;justify-content:center;gap:5px}
.menu span:not(.sr){width:18px;height:2px;background:currentColor}
nav{display:none;position:absolute;inset:100% 0 auto;background:var(--navy);padding:15px var(--g) 20px;align-items:stretch;gap:6px;border-bottom:1px solid #ffffff33}
nav[data-open=true]{display:flex;flex-direction:column}
nav a{padding:8px 0}
.hero-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:25px;padding-block:38px 24px}
h1{font-size:clamp(43px,10.4vw,70px);margin:18px 0}
.hero-description{max-width:460px}
.hero-actions{margin-top:22px}
.hero-media{aspect-ratio:1.58}
.hero-media img{object-position:center 53%}
.hero-frame{inset:8px}
.field-label{top:15px;left:15px}
.hero-media .play{right:15px;bottom:15px}
.hero-index .wrap{grid-template-columns:repeat(2,1fr);padding:13px 0;font-size:10px}
.operators-inner{grid-template-columns:1fr;gap:12px;padding:23px 0 25px;min-height:0}
.experience{border-right:0;border-bottom:1px solid #c5cec5;padding:0 0 14px}
.operators ul{justify-content:start;column-gap:20px;row-gap:11px}
.section-head{display:block;margin-bottom:23px}
.section-head>p{margin-top:12px;max-width:430px}
.contact-inner{grid-template-columns:1fr}
.story-jump{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-steps{gap:8px}
.footer .wrap{flex-wrap:wrap}
.footer .wrap>span{order:3;width:100%}
}
@media(max-width:410px){
.service-grid{grid-template-columns:1fr}
.service-grid article:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}
.service-grid article:nth-child(4){border-bottom:0}
.hero-actions .button{padding-inline:11px;gap:9px;font-size:12px;min-height:44px}
.story-jump a{padding-inline:7px;gap:5px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media(min-width:701px){.menu.icon-btn{display:none}}


[hidden] { display:none !important; }

.contact-inner { grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(28px,6vw,80px); }
.contact-card { background:#ffe2b9; }
.contact-card h3 { margin-bottom:15px; }

@media(max-width:700px) {
  .contact-inner { grid-template-columns:minmax(0,1fr); }

}



.building-services {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(15px,2.5vw,30px);
  margin-top:clamp(19px,3vw,32px);
}
.building-card {
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #ccd3ca;
  border-radius:8px;
  background:#f8f7f2;
}
.building-card figure { position:relative; background:#192e35; }
.building-card img { width:100%;height:auto;aspect-ratio:1.65;object-fit:cover; }
.building-card figcaption {
  position:absolute;
  left:12px;
  bottom:12px;
  border:1px solid #bcd0cb5e;
  border-radius:4px;
  padding:5px 9px;
  color:#fffdf7;
  background:#102127e8;
  font-size:11px;
}
.building-copy { display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:clamp(17px,3vw,30px); }
.building-copy .eyebrow { color:#126b62; margin-bottom:8px; }
.building-copy h3 { margin-bottom:11px; }
.building-copy p:not(.eyebrow) { color:#516065;margin-bottom:16px; }
@media(max-width:700px) {
  .building-services { grid-template-columns:minmax(0,1fr); }
}

.service-grid article {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.service-grid p { margin-bottom:16px; }
.service-actions { display:flex;flex-wrap:wrap;gap:9px 13px;margin-top:auto; }
.service-media { margin-top:auto;text-align:left;line-height:1.35; }
.service-frame figcaption { color:#d9e9e7;font-size:14px;padding-top:10px; }
.service-frame .full-photo { max-height:56vh; }
.frame-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin-top:14px;
  color:#d9e9e7;
  font-size:14px;
}
.frame-controls button {
  min-width:46px;
  min-height:40px;
  border:1px solid #829595;
  border-radius:5px;
  color:#fffdf7;
  background:transparent;
  cursor:pointer;
  font-size:18px;
}
.frame-controls button:hover { border-color:#ffae48; }

.documentation {
  background:#e7ebe3;
  border-top:1px solid #c9d1c8;
}
.documentation .indexed { color:#126b62; }
.documentation h2 { font-size:clamp(34px,4.4vw,64px); }
.document-explorer {
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(270px,.8fr);
  gap:clamp(20px,4vw,52px);
  align-items:start;
}
.document-sheet { min-width:0; }
.document-open {
  position:relative;
  display:block;
  width:100%;
  padding:12px;
  border:1px solid #bdc9bf;
  border-radius:6px;
  background:#fff;
  cursor:zoom-in;
  box-shadow:0 14px 28px #21372c14;
}
.document-open img {
  width:100%;
  height:auto;
  aspect-ratio:1.69;
  object-fit:contain;
  background:#fff;
}
.document-open>span {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:13px 5px 3px;
  border-top:1px solid #d5ddd4;
  margin-top:9px;
  color:#254940;
  font-size:14px;
  font-weight:700;
}
.document-open:hover { border-color:#397c6d; }
.document-caption { margin-top:13px;font-size:15px;font-weight:650;color:#254940; }
.document-choices { display:grid; }
.document-choice {
  display:grid;
  position:relative;
  gap:7px;
  text-align:left;
  background:transparent;
  border:0;
  border-bottom:1px solid #bac8bb;
  padding:17px 12px 19px 21px;
  cursor:pointer;
}
.document-choice:first-child { border-top:1px solid #bac8bb; }
.document-choice::before {
  content:"";
  position:absolute;
  inset:14px auto 14px 0;
  width:3px;
  background:transparent;
}
.document-choice[aria-pressed=true] { background:#f6f8f1; }
.document-choice[aria-pressed=true]::before { background:#237969; }
.document-choice:hover { background:#f1f5ed; }
.document-kind { font:700 11px Consolas,monospace;letter-spacing:.1em;color:#397269; }
.document-choice strong { font-size:20px;line-height:1.15;letter-spacing:-.025em; }
.document-description { font-size:14px;line-height:1.45;color:#4f6059; }
.document-note { font-size:13px;color:#51645b;margin-top:20px; }
.story-document { color:var(--teal);min-height:44px;margin-top:12px;justify-self:start; }
.story-document:hover { color:var(--orange); }

dialog.drawing-mode { width:min(1380px,calc(100% - 26px)); }
.drawing-mode .modal { padding:clamp(15px,2vw,28px); }
.drawing-mode .modal h2 { font-size:clamp(25px,3vw,40px);margin-top:8px;margin-bottom:15px; }
.drawing-toolbar { display:flex;align-items:center;gap:12px;margin-bottom:12px; }
.drawing-toolbar span { font-size:12px;color:#bed0cd; }
.drawing-zoom {
  min-height:44px;
  min-width:140px;
  border:1px solid #829595;
  border-radius:5px;
  padding:8px 14px;
  background:#223f46;
  color:var(--white);
  cursor:pointer;
}
.drawing-zoom[aria-pressed=true] { background:var(--orange);border-color:var(--orange);color:var(--navy); }
.sheet-viewport { height:clamp(240px,57vh,720px);overflow:auto;background:#fff;border-radius:4px; }
.sheet-viewport:focus-visible { outline:2px solid var(--teal);outline-offset:3px; }
.drawing-mode .sheet-viewport .full-photo { width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0;background:#fff; }
.drawing-mode .sheet-viewport.is-zoomed .full-photo { width:2000px;max-width:none;height:auto;object-fit:initial; }
.drawing-mode .service-frame figcaption { line-height:1.35; }
.frame-controls button { min-height:44px; }

@media(max-width:920px) {
  .document-explorer { grid-template-columns:minmax(0,1fr);gap:22px; }
  .document-choices { grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
  .document-choice,.document-choice:first-child { border:1px solid #bac8bb;border-radius:4px;padding:13px 16px; }
  .document-choice strong { font-size:17px; }
}
@media(max-width:700px) {
  .document-description { display:none; }
  .document-open { padding:7px; }
  .document-choice strong { font-size:15px; }
  .document-note { font-size:12px; }
  .drawing-toolbar { gap:8px; }
  .drawing-zoom { min-width:120px; }
  .sheet-viewport { height:50vh; }
  .drawing-mode .sheet-viewport:not(.is-zoomed) { height:auto;max-height:50vh; }
  .drawing-mode .sheet-viewport:not(.is-zoomed) .full-photo { height:auto;max-height:50vh; }
  .drawing-mode .sheet-viewport.is-zoomed .full-photo { width:1400px; }
}

/* EXPERIENCE / CURATED PHOTO GALLERY */
.network-scope{padding-top:64px;padding-bottom:4px;scroll-margin-top:90px}
.scope-heading{display:grid;grid-template-columns:1fr 1fr;gap:12px 50px;align-items:end;margin-bottom:32px}
.scope-heading>.eyebrow{grid-column:1/-1;color:var(--muted)}
.scope-heading h2{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.045em}
.scope-heading>p:last-child{max-width:440px;color:var(--muted);line-height:1.6}
.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.scope-grid article{padding:28px 32px 30px 0;min-width:0}
.scope-grid article+article{padding-left:32px;border-left:1px solid var(--line)}
.scope-number{font:700 10px/1.4 Consolas,monospace;letter-spacing:.1em;color:var(--muted)}
.scope-grid svg{display:block;width:180px;height:52px;max-width:100%;margin:22px 0 18px;fill:none;stroke:#71857f;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.scope-grid .scope-route{stroke:#b86e20;stroke-width:2.5}
.scope-grid circle{fill:var(--paper);stroke:#b86e20;stroke-width:2}
.scope-grid h3{font-size:26px;letter-spacing:-.035em;margin-bottom:12px}
.scope-grid p{color:var(--muted);font-size:16px;line-height:1.6;max-width:340px}
.portfolio-entry{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:28px 0 0}
.portfolio-entry .eyebrow{color:var(--muted);font-size:10px;margin-bottom:8px}
.portfolio-entry h3{font-size:25px;letter-spacing:-.035em;margin-bottom:7px}
.portfolio-entry p:last-child{color:var(--muted);font-size:14px;max-width:530px}
.portfolio-entry .button{flex-shrink:0;font-size:14px}
.portfolio-all{margin:0 0 28px;color:var(--teal)}
.photo-mode{width:min(1120px,calc(100% - 26px))}
.photo-mode .modal{padding:clamp(18px,3vw,36px)}
.photo-mode .modal h2{font-size:clamp(27px,4vw,43px);margin-bottom:20px}
.photo-mode .modal>.close{position:sticky;float:right;top:10px;right:0;margin:-4px -4px -44px 8px;background:#15282f;z-index:3}
.photo-mode .modal>.close:after{content:'';clear:both}
.photo-mode .eyebrow{font-size:10px;padding-right:45px;line-height:1.6}
.photo-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.photo-filters button,.photo-back{border:1px solid #516764;background:transparent;color:#d9e7e2;cursor:pointer;font:inherit;font-size:13px;min-height:42px;padding:10px 14px;border-radius:4px}
.photo-filters button[aria-pressed=true]{background:#e9b56e;border-color:#e9b56e;color:#142b29}
.photo-filters button:hover,.photo-back:hover{border-color:var(--orange)}
.modal .photo-count{font:12px/1.5 Consolas,monospace;color:#a8c0b9;margin-bottom:20px}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px}
.photo-tile{display:flex;flex-direction:column;align-items:start;text-align:left;padding:0 0 13px;background:#1b3338;border:1px solid #38504e;border-radius:6px;overflow:hidden;color:var(--white);cursor:pointer;min-width:0}
.photo-tile img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#0f2024;transition:filter .2s}
.photo-tile:hover img{filter:brightness(1.1)}
.photo-tile:hover{border-color:#b8b28c}
.photo-tile small{font:10px/1.4 Consolas,monospace;text-transform:uppercase;letter-spacing:.04em;color:#95b7ac;padding:13px 13px 6px}
.photo-tile>span{padding:0 13px;font-size:15px;line-height:1.35}
.photo-detail{margin-top:18px}
.photo-detail figure{margin:0}
.photo-detail .full-photo{height:56vh;width:100%;max-height:none;object-fit:contain}
.photo-detail figcaption{color:#c9ddd4;font-size:15px;line-height:1.5;margin-top:13px}
.photo-mode .frame-controls{margin-top:18px}
.photo-mode .frame-controls [role=status]{font-size:12px;text-align:center}
.photo-mode button:focus-visible{outline:3px solid #f3bd77;outline-offset:3px}
@media(max-width:850px){.scope-grid article{padding-right:22px}.scope-grid article+article{padding-left:22px}.scope-grid h3{font-size:23px}.portfolio-entry{align-items:start}.portfolio-entry .button{white-space:normal;max-width:250px}}
@media(max-width:700px){
 .network-scope{padding-top:40px;scroll-margin-top:75px}
 .scope-heading{display:block;margin-bottom:25px}.scope-heading>.eyebrow{margin-bottom:12px}.scope-heading>p:last-child{margin-top:18px;font-size:16px}
 .scope-grid{grid-template-columns:1fr}.scope-grid article,.scope-grid article+article{padding:22px 0;border-left:0}.scope-grid article+article{border-top:1px solid var(--line)}
 .scope-grid svg{float:right;width:116px;margin:3px 0 9px 16px}.scope-grid h3{margin-top:16px;font-size:26px}.scope-grid p{font-size:15px;max-width:100%;clear:both}
 .portfolio-entry{display:block;padding-top:25px}.portfolio-entry h3{font-size:24px}.portfolio-entry .button{margin-top:20px;max-width:none}
 .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.photo-tile>span{font-size:13px;padding:0 10px}.photo-tile small{font-size:9px;padding:10px 10px 5px}
 .photo-filters{gap:6px}.photo-filters button{font-size:12px;min-height:40px;padding:8px 10px}.photo-mode .modal .eyebrow{font-size:9px;max-width:270px}.photo-detail .full-photo{height:48vh}
}
/* PRESENTATION V13 START */
.header{background:#102126f5;backdrop-filter:blur(14px)}
.bar{min-height:82px}.brand small{letter-spacing:.2em;font-size:7px}
.button{border-radius:3px;min-height:52px;padding:15px 21px;cursor:pointer}
.nav-cta{border-radius:3px}
.hero{position:relative;overflow:hidden;background:#102126;background-image:radial-gradient(ellipse at 16% 100%,#20423f 0%,transparent 65%)}
.hero::before{content:'';position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:linear-gradient(#719d8d 1px,transparent 1px),linear-gradient(90deg,#719d8d 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,transparent 20%,#000)}
.hero-inner{position:relative;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(38px,6vw,92px);padding-block:64px 58px;align-items:center}
.hero-kicker{font-size:11px;letter-spacing:.11em;margin-bottom:24px;color:#bdd6ca}
.hero h1{font-size:clamp(50px,5.6vw,82px);line-height:.99;font-weight:650;letter-spacing:-.055em;margin:0 0 27px;text-wrap:initial}
.hero h1 em{color:#efb46d;font-weight:650}
.hero-description{font-size:clamp(16px,1.35vw,19px);line-height:1.65;max-width:500px;color:#c3d4ce}
.hero-actions{margin-top:30px;gap:14px}.hero-actions .primary{background:#efb46d;border-color:#efb46d}.hero-actions .ghost{border-color:#6b8c80}
.hero-note{margin-top:24px;font:11px/1.5 Consolas,monospace;letter-spacing:.04em;color:#93b2a4}
.hero-visual{min-width:0;position:relative;padding:0 0 64px}
.hero-media{aspect-ratio:.99;border-radius:5px;border:1px solid #53716a;background:#17342f;box-shadow:0 30px 70px #05140c44}
.hero-media img{height:100%;width:100%;object-fit:cover;object-position:center top}
.hero-media[data-current=field] img{object-position:center}.hero-media[data-current=detail] img{object-position:center}
.hero-media::after{background:linear-gradient(180deg,#09211d44,transparent 35%,transparent 60%,#0b211de6)}
.hero-frame{inset:14px;border-color:#d9e8da33;border-radius:1px}
.field-label{font-size:9px;letter-spacing:.12em;top:26px;left:25px;background:#0c2823cf;border:1px solid #afcabb33}
.hero-media .play{left:25px;right:25px;bottom:23px;justify-content:space-between;border:0;border-top:1px solid #dceade55;background:transparent;border-radius:0;padding:17px 0 0}
.hero-media .play strong{font-size:16px;font-weight:550}.hero-media .play small{font-size:11px;margin-top:3px;color:#b6cfc0}.hero-media .play-icon{order:2;border-radius:50%;background:#efb46d;width:42px;height:42px;flex:0 0 42px}
.hero-proof{position:absolute;left:-26px;bottom:145px;z-index:3;display:flex;align-items:center;gap:15px;padding:17px 22px;background:#f3f0e4;color:#183d32;box-shadow:0 12px 35px #001d1738;border-radius:3px}
.hero-proof strong{font-size:48px;font-weight:600;line-height:1;letter-spacing:-.06em}.hero-proof span{font-size:12px;line-height:1.45;max-width:90px}
.hero-photo-tabs{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.hero-photo-tabs button{display:flex;align-items:center;gap:9px;min-height:48px;padding:12px 0;border:0;border-bottom:2px solid #42645a;background:transparent;color:#a4c0b2;text-align:left;cursor:pointer;font-family:inherit;font-size:14px;line-height:1.3}
.hero-photo-tabs button b{font:10px Consolas,monospace;color:#779b88;font-weight:400}.hero-photo-tabs button[aria-pressed=true]{color:#f4eddf;border-color:#efb46d}.hero-photo-tabs button[aria-pressed=true] b{color:#efb46d}
.hero-photo-tabs button:hover{color:#fffdf7}.hero-photo-tabs button:focus-visible{outline:2px solid #efb46d;outline-offset:4px}
.hero-index{position:relative;background:#0e1e23}.hero-index .wrap{min-height:55px;color:#98b7a8;font-size:10px;letter-spacing:.12em}.hero-index b{color:#edb273}
.customers{background:#eeeee7;padding:46px 0 50px;border-bottom:1px solid #cbd5c9}
.customer-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:26px}.customer-heading .eyebrow{color:#315b4c;font-size:10px}.customer-heading p:last-child{color:#67766b;font-size:13px;max-width:370px}
.operators .customer-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:0;border-top:1px solid #c8d1c5;border-left:1px solid #c8d1c5}
.operators .customer-list li{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:112px;padding:23px 22px;border-right:1px solid #c8d1c5;border-bottom:1px solid #c8d1c5;letter-spacing:0}
.operators .customer-list li:last-child{grid-column:span 2;display:grid;grid-template-columns:auto 1fr;column-gap:24px;align-items:center}
.legal-form{font:10px/1.4 Consolas,monospace;letter-spacing:.06em;text-transform:uppercase;color:#617265;margin-bottom:8px}
.customer-name{display:block;color:#233a32;font-size:clamp(18px,1.65vw,24px);line-height:1.2;font-weight:650;letter-spacing:-.03em;overflow-wrap:anywhere}
.customer-list small{font-size:12px;font-weight:400;color:#65776a;line-height:1.5;margin-top:7px}
.customer-list li:last-child .legal-form{grid-column:1/-1;margin-bottom:3px}.customer-list li:last-child small{max-width:310px;margin-top:0}
.network-scope{padding-block:85px 0}.scope-heading{grid-template-columns:1.2fr 1fr;gap:14px 75px;margin-bottom:40px}
.scope-heading h2{font-size:clamp(36px,4.2vw,60px);font-weight:600;line-height:1.05;letter-spacing:-.045em}.scope-heading>p:last-child{font-size:17px;line-height:1.65}
.scope-grid{border-top:1px solid #bbc9bd;border-bottom:1px solid #bbc9bd}.scope-grid article{padding-top:28px;padding-bottom:34px}.scope-grid article+article{border-left-color:#c8d2c7}.scope-grid h3{font-size:29px;font-weight:600}.scope-number{color:#446756}.scope-grid p{font-size:15px;line-height:1.7}
.portfolio-entry{margin-top:34px;padding:28px 34px;gap:26px;background:#1f4239;color:#f3f1e6;border-radius:4px;position:relative;overflow:hidden}
.portfolio-entry::after{content:'';position:absolute;pointer-events:none;width:250px;height:250px;border:1px solid #70937a4d;border-radius:50%;right:100px;top:-110px;box-shadow:0 0 0 40px #70937a0d,0 0 0 80px #70937a0a}
.portfolio-entry .eyebrow{color:#b1ceac}.portfolio-entry h3{font-weight:500;letter-spacing:-.025em}.portfolio-entry p:last-child{color:#bad0bd}.portfolio-entry .button{position:relative;z-index:1;background:#e5bb7f;color:#17392f;box-shadow:none;border:0;min-height:50px}
.service-directory{padding-block:100px}.service-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:clamp(35px,7vw,100px);align-items:start}
.service-intro{position:sticky;top:112px}.service-intro h2{font-size:clamp(38px,4.3vw,64px);line-height:1.07;font-weight:600;letter-spacing:-.045em}.service-intro>p:not(.eyebrow){color:#54695d;margin-top:25px;max-width:340px;font-size:16px;line-height:1.7}
.service-intro .text-link{display:inline-block;margin-top:24px;color:#275e45}
.service-accordion{border-top:1px solid #bac9bb}.service-item{border-bottom:1px solid #bac9bb;scroll-margin-top:95px}
.service-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:25px 1fr 30px;align-items:center;gap:18px;padding:27px 0;color:#213e31}.service-item summary::-webkit-details-marker{display:none}
.service-item summary .service-index{font:11px Consolas,monospace;color:#6d8873}.service-item summary h3{font-size:clamp(22px,2.15vw,29px);font-weight:550;line-height:1.2;letter-spacing:-.03em}
.service-item summary .service-toggle{width:28px;height:28px;display:grid;place-items:center;border:1px solid #a8bda9;border-radius:50%;font-size:21px;line-height:1;color:#496e53;font-weight:300;transition:transform .25s}
.service-item[open] summary .service-toggle{transform:rotate(45deg);background:#244e3b;color:#f5efdc;border-color:#244e3b}.service-item[open] summary h3{color:#1f6948}
.service-item summary:hover h3{color:#1f6948}.service-item summary:focus-visible{outline:2px solid #237755;outline-offset:4px}
.service-content{padding:0 46px 27px 43px}.service-content>p{font-size:16px;line-height:1.7;color:#54695c;max-width:540px}.service-result{border-left:2px solid #d6a55e;padding-left:14px;margin:20px 0;font-size:13px;line-height:1.6;color:#647567}.service-result b{display:block;font:10px/1.4 Consolas,monospace;letter-spacing:.08em;color:#806439;margin-bottom:5px}
.service-content .service-actions{margin-top:22px;gap:15px 22px}.service-content .text-link{color:#215f43;font-size:14px;min-height:30px;margin-top:0;border-bottom-color:#83a48b}.service-content figure{margin:22px 0 0;max-width:440px}.service-content figure img{width:100%;height:auto;object-fit:contain;border-radius:3px}.service-content figcaption{font-size:11px;line-height:1.4;color:#697c6d;margin-top:7px}
.documentation{background:#e8ede4;border-top:1px solid #c4d1bf;border-bottom:1px solid #c4d1bf}.documentation .section-head{align-items:start}.documentation h2{font-weight:600;letter-spacing:-.045em;max-width:660px}.document-open{padding:18px;border-radius:2px;border-color:#afc2ad;box-shadow:0 20px 35px #244a2d0d}.document-choice{padding-block:22px}.document-choice strong{font-weight:600}.document-caption{font-size:13px}.document-note{font-size:12px}
.contact{background:#eab477;color:#142f26;padding-block:88px}.contact-inner{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,7vw,100px)}.contact h2{font-size:clamp(44px,5vw,70px);font-weight:600;letter-spacing:-.055em;line-height:1.04}.contact-intro>p:not(.eyebrow){max-width:400px;line-height:1.65;font-size:16px;margin-top:26px}.contact-intro .mail{margin-top:22px;font-size:clamp(22px,2.5vw,33px);font-weight:550;letter-spacing:-.025em;text-decoration-thickness:1px;text-underline-offset:7px}
.contact-card{background:#faebd5;border-radius:4px;padding:30px;border:1px solid #f8deb9;box-shadow:0 20px 45px #603b1310}.contact-card h3{font-size:24px;font-weight:600}.contact-card .dark:hover{background:#275e46}.contact .indexed{font-size:11px;letter-spacing:.1em}.footer{background:#102126;border-top:1px solid #54776644;padding-block:30px;font-size:12px}.footer .brand{font-size:21px}
@media(max-width:1000px){.hero-inner{gap:42px}.hero h1{font-size:clamp(45px,5.8vw,65px)}.hero-proof{left:-16px;bottom:130px;padding:14px 17px;gap:12px}.hero-proof strong{font-size:39px}.hero-proof span{font-size:11px}.hero-description{font-size:16px}.hero-note{font-size:10px}.operators .customer-list li{padding:20px 16px}.service-layout{gap:40px;grid-template-columns:1fr 1.35fr}.service-intro h2{font-size:42px}.scope-heading{gap:14px 35px}}
@media(max-width:700px){
 .bar{min-height:64px}.hero-inner{grid-template-columns:1fr;gap:33px;padding-block:34px 30px}.hero-kicker{font-size:9px;letter-spacing:.06em;margin-bottom:23px}.hero h1{font-size:clamp(43px,11.8vw,65px);line-height:1.02;margin-bottom:22px;letter-spacing:-.055em}.hero-description{font-size:16px;line-height:1.65}.hero-actions{margin-top:25px;gap:10px}.hero-actions .button{font-size:12px;min-height:48px;padding:13px 14px;gap:12px}.hero-note{font-size:9px;line-height:1.7;margin-top:18px;max-width:310px}
 .hero-visual{padding-bottom:61px}.hero-media{aspect-ratio:1.17}.hero-media img{object-position:center 20%}.hero-proof{left:10px;bottom:125px;padding:9px 13px;gap:10px}.hero-proof strong{font-size:32px}.hero-proof span{font-size:9px;max-width:76px}.field-label{left:17px;top:17px;font-size:8px}.hero-frame{inset:9px}.hero-media .play{left:17px;right:17px;bottom:14px;padding-top:13px}.hero-media .play strong{font-size:14px}.hero-media .play small{font-size:10px}.hero-media .play-icon{width:34px;height:34px;flex-basis:34px}.hero-photo-tabs{gap:14px}.hero-photo-tabs button{font-size:12px;min-height:44px;gap:7px}.hero-index .wrap{font-size:9px;letter-spacing:.03em;row-gap:16px;padding-block:17px}
 .customers{padding-block:32px}.customer-heading{display:block;margin-bottom:20px}.customer-heading p:last-child{font-size:12px;line-height:1.5;margin-top:10px;max-width:290px}.operators .customer-list{grid-template-columns:repeat(2,minmax(0,1fr))}.operators .customer-list li{min-height:104px;padding:18px 13px}.customer-name{font-size:18px}.legal-form{font-size:9px;margin-bottom:8px}.operators .customer-list li:last-child{display:flex;align-items:start;gap:0}.customer-list li:last-child .legal-form{margin-bottom:8px}.customer-list li:last-child small{font-size:11px;margin-top:8px;max-width:none}
 .network-scope{padding-top:48px}.scope-heading{display:block;margin-bottom:26px}.scope-heading h2{font-size:37px;line-height:1.08}.scope-heading>p:last-child{font-size:16px;margin-top:20px}.scope-grid article,.scope-grid article+article{padding:24px 0}.scope-grid h3{font-size:24px}.scope-grid svg{width:105px}.scope-grid p{font-size:15px}.portfolio-entry{padding:24px;margin-top:26px}.portfolio-entry h3{font-size:25px;line-height:1.13;max-width:280px}.portfolio-entry p:last-child{font-size:13px;line-height:1.6;margin-top:13px}.portfolio-entry .button{font-size:13px;min-height:48px;margin-top:23px;max-width:100%}
 .service-directory{padding-block:60px}.service-layout{grid-template-columns:1fr;gap:31px}.service-intro{position:static}.service-intro h2{font-size:39px}.service-intro>p:not(.eyebrow){margin-top:20px;max-width:none;font-size:15px}.service-intro .text-link{margin-top:15px}.service-item summary{grid-template-columns:18px 1fr 25px;gap:12px;padding:23px 0}.service-item summary h3{font-size:23px}.service-item summary .service-toggle{width:25px;height:25px;font-size:18px}.service-content{padding:0 0 24px 30px}.service-content>p{font-size:15px}.service-result{font-size:12px}.service-content .text-link{font-size:13px;line-height:1.5}.service-content .service-actions{gap:14px}.documentation .section-head>p{font-size:15px;max-width:330px}.documentation h2{font-size:38px}.document-open{padding:8px}.document-choice{padding:14px}.document-choice strong{font-size:15px}.contact{padding-block:55px}.contact-inner{grid-template-columns:1fr;gap:34px}.contact h2{font-size:44px}.contact-intro>p:not(.eyebrow){font-size:15px;margin-top:22px}.contact-intro .mail{font-size:25px;margin-top:14px}.contact-card{padding:22px}.contact-card h3{font-size:24px}.footer .wrap{gap:20px}
}
@media(max-width:360px){.customer-name{font-size:16px}.hero h1{font-size:41px}.hero-actions .button{padding-inline:10px;gap:8px;font-size:11px}.hero-proof{bottom:124px}.hero-proof strong{font-size:28px}.hero-proof span{font-size:8px}.hero-photo-tabs button{font-size:11px}.service-item summary h3{font-size:21px}.scope-grid svg{width:84px}.scope-grid h3{font-size:23px}.contact-card{padding:18px}.contact-intro .mail{font-size:23px}}
/* PRESENTATION V13 END */

/* PROJECT JOURNEY START */
.journey-section {padding-bottom:72px; overflow:visible; overflow-anchor:none; background:#101f25; color:var(--white)}
.journey-section .section-head {align-items:end; margin-bottom:50px}
.journey-section .section-head h2 {font-size:clamp(42px,5.3vw,74px); line-height:1.06; letter-spacing:-.055em}
.journey-section h2 em {font-style:normal; color:#a8d5bf}
.journey-section .section-head>div:last-child {max-width:340px}
.journey-section .section-head>div:last-child p {color:#b2c6c4; margin-bottom:22px}
.journey-skip {display:inline-flex; gap:24px; align-items:center; font-size:14px; color:#f4c485; border-bottom:1px solid #697c6f; padding-bottom:7px}
.journey-track {position:relative; padding-bottom:0}
.journey-panel {position:relative; border:1px solid #38504e; border-radius:14px; background:radial-gradient(ellipse at 30% 43%,#28483f 0,#18302f 40%,#15282c 72%); overflow:hidden; display:flex; flex-direction:column; height:730px; --phase:.8; --line-dash:0; --progress:0; isolation:isolate}
.journey-section[data-scroll] .journey-panel {position:sticky; top:96px; height:min(760px,calc(100svh - 112px)); min-height:555px}
.journey-topline {height:64px; flex-shrink:0; display:flex; align-items:center; justify-content:space-between; padding:0 30px; gap:15px; border-bottom:1px solid #37504b; font:11px/1.4 Consolas,monospace; letter-spacing:.1em; color:#c2d5c8}
.journey-topline>span:first-child {display:flex; align-items:center; gap:10px}
.journey-topline i {width:7px; height:7px; background:#9ed6b8; border-radius:50%; box-shadow:0 0 16px #9ed6b855}
.journey-scroll-hint {color:#8fa99e; letter-spacing:0}
.journey-scroll-hint b {color:#f4c485; display:inline-block; margin-left:12px; font-size:18px}
.journey-counter {color:#f7d09b; white-space:nowrap}
.journey-main {display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); flex:1; min-height:0; align-items:center}
.journey-art {position:relative; min-width:0; padding:4px 0 32px; height:100%; display:flex; align-items:center; justify-content:center}
.journey-world {width:100%; height:auto; max-height:100%; overflow:visible; font-family:Segoe UI,sans-serif}
.journey-scene {opacity:0; visibility:hidden; transition:opacity .26s ease,visibility .26s}
.journey-scene.is-active {opacity:1; visibility:visible}
.journey-scene [data-method-scene] {opacity:0; visibility:hidden; transition:opacity .25s ease}
[data-route="overhead"] [data-method-scene="overhead"], [data-route="underground"] [data-method-scene="underground"], [data-route="building"] [data-method-scene="building"] {opacity:1; visibility:visible}
.j-draw {stroke-dasharray:100; stroke-dashoffset:var(--line-dash,0)}
.j-walk {transform:translateX(calc((var(--phase) - .5) * 75px))}
.j-machine {transform:translateX(calc((var(--phase) - .5) * 95px))}
.j-pencil {transform:rotate(calc(var(--phase) * -18deg)); transform-origin:center; transform-box:fill-box}
.j-paper-in {transform:translateY(calc((1 - var(--phase)) * -22px))}
.j-seal {opacity:clamp(.15,calc(var(--phase) * 2),1)}
.j-money {transform:translate(calc((var(--phase) - .5) * 210px),var(--coin-y,0px))}
.j-signal {stroke-dasharray:4 96; stroke-dashoffset:calc(var(--phase) * -100)}
.journey-text {padding:26px 35px 26px 12px; min-width:0}
.journey-copy[hidden] {display:none}
.journey-copy h3 {font-size:clamp(32px,3.2vw,46px); line-height:1.05; letter-spacing:-.045em; font-weight:730; color:#fffdf3; margin:15px 0 22px; overflow-wrap:normal}
.journey-copy .journey-kicker {font:10px/1.4 Consolas,monospace; letter-spacing:.13em; color:#f3c58c; margin:0}
.journey-description {font-size:15px; line-height:1.65; color:#c1d2ca; margin:0}
.journey-result {border-top:1px solid #4c655b; margin:25px 0 0; padding-top:18px; font-size:14px; line-height:1.5; color:#d2e5d6}
.journey-result span {display:block; font:10px/1.4 Consolas,monospace; letter-spacing:.1em; text-transform:uppercase; color:#8caa9b; margin-bottom:7px}
.journey-methods {position:absolute; bottom:25px; left:50%; transform:translateX(-50%); display:flex; padding:4px; gap:3px; border:1px solid #5a7765; border-radius:7px; white-space:nowrap; background:#18322de8}
.journey-methods[hidden],.journey-method-note[hidden] {display:none}
.journey-methods button {border:0; border-radius:4px; color:#c4d8cb; background:transparent; padding:9px 14px; font:13px/1.3 inherit; cursor:pointer; min-height:40px}
.journey-methods button[aria-pressed="true"] {background:#f5bb70; color:#213c36}
.journey-method-note {position:absolute; left:0; bottom:1px; width:100%; text-align:center; color:#95ae9f; font-size:11px; margin:0}
.journey-bottom {padding:12px 30px 16px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-shrink:0}
.journey-stage-name {font:12px/1.4 Consolas,monospace; color:#b6ccbe; margin:0}
.journey-arrows {display:flex; gap:7px; align-items:center}
.journey-arrows button {width:42px; height:42px; background:#29453d; border:1px solid #546b59; border-radius:50%; color:#efecd5; font-size:22px; cursor:pointer}
.journey-arrows button:disabled {opacity:.3; cursor:default}
.journey-arrows .journey-mode {width:auto; border-radius:5px; margin-left:10px; padding:0 13px; font:11px/1.3 Segoe UI,sans-serif; letter-spacing:.02em}
.journey-mode[aria-pressed="true"] {background:#d8e8d4; color:#29453d}
.journey-timeline {display:grid; position:static; inset:auto; padding:0; gap:0; align-items:stretch; font-weight:400; grid-template-columns:repeat(10,minmax(0,1fr)); border-top:1px solid #3a544b; border-bottom:0; flex-shrink:0}
.journey-timeline button {border:0; border-right:1px solid #3a544b; border-radius:0; padding:17px 6px 18px; background:#142b29; color:#97b0a2; min-width:0; text-align:center; cursor:pointer; position:relative}
.journey-timeline button:last-child {border-right:0}
.journey-timeline button b {display:block; font:17px/1.4 Consolas,monospace; margin-bottom:6px; color:#d7dfc8; font-weight:400}
.journey-timeline button span {font-size:10px; line-height:1.2; display:block; overflow-wrap:normal}
.journey-timeline button[aria-current="step"] {background:#e9bd81; color:#284039}
.journey-timeline button[aria-current="step"] b {color:#284039}
.journey-timeline button.is-complete b {color:#8dd8b3}
.journey-timeline button:hover:not([aria-current]) {background:#2c4d40}
.journey-meter {height:3px; background:#3a544b; flex-shrink:0}
.journey-meter span {height:100%; display:block; background:#edb667; width:calc(var(--progress) * 100%)}
.journey-panel button:focus-visible,.process-materials summary:focus-visible,.journey-skip:focus-visible {outline:3px solid #f1ba74; outline-offset:3px; z-index:2}
.journey-materials-wrap {padding-top:40px}
.process-materials {border-top:1px solid #3d534d; border-bottom:1px solid #3d534d; scroll-margin-top:105px}
.process-materials summary {cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:26px 0; list-style:none; font-size:24px; letter-spacing:-.03em}
.process-materials summary::-webkit-details-marker {display:none}
.process-materials summary small {font-size:14px; font-weight:400; letter-spacing:0; color:#9db4a8; display:inline-block; margin-left:24px}
.process-materials summary b {font-weight:400; color:#eebe7c; font-size:32px; line-height:1}
.process-materials[open] summary b {transform:rotate(45deg)}
.process-material-grid {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; padding:18px 0 36px}
.process-material-grid article {border-top:1px solid #3d534d; padding:24px 0 0; scroll-margin-top:110px}
.process-material-grid h3 {font-size:27px; color:#fffdf7; margin:12px 0}
.process-material-grid p:not(.eyebrow) {color:#a9c0b3; font-size:15px}
.process-material-grid .eyebrow {font-size:10px; color:#ddb98b}
.process-material-grid .text-link {color:#f1c58e; font-size:13px; padding:12px 0; min-height:44px}
.journey-fallback {padding-top:30px; max-width:850px}
.journey-fallback li {padding:15px 0; color:#c9dbd0}
@media(min-width:1100px) and (max-height:820px) {.journey-topline{height:50px}.journey-timeline button{padding:12px 4px}.journey-copy h3{font-size:36px}.journey-result{margin-top:16px;padding-top:12px}.journey-copy h3{margin:10px 0 16px}.journey-text{padding-top:15px;padding-bottom:15px}.journey-description{font-size:14px}}
@media(max-width:1000px) and (min-width:701px) {.journey-main{grid-template-columns:1.25fr 1fr}.journey-text{padding-right:22px}.journey-copy h3{font-size:34px}.journey-description{font-size:14px}.journey-timeline button span{font-size:9px}.journey-timeline button{padding-inline:2px}.journey-scroll-hint{display:none}.journey-topline{padding-inline:22px}.journey-bottom{padding-inline:22px}.journey-result{font-size:13px;margin-top:16px;padding-top:12px}}
@media(max-width:700px) {
 .journey-section{padding-bottom:46px}.journey-section .section-head{display:block;margin-bottom:30px}.journey-section .section-head>div:last-child{margin-top:25px;max-width:100%}.journey-section .section-head h2{font-size:clamp(40px,9.4vw,60px)}
 .journey-panel{width:calc(100% - 24px);height:min(700px,calc(100svh - 90px));min-height:585px;border-radius:10px}.journey-section[data-scroll] .journey-panel{top:76px;min-height:585px;height:min(700px,calc(100svh - 90px))}
 .journey-topline{height:45px;padding:0 16px;font-size:9px;letter-spacing:.04em}.journey-scroll-hint{display:none}.journey-main{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}
 .journey-art{height:48%;min-height:205px;padding:0 0 22px;flex-shrink:0}.journey-world{max-width:470px;height:100%;width:100%;overflow:hidden}
 .journey-text{padding:0 22px 6px;flex:1}.journey-copy h3{font-size:30px;line-height:1.07;margin:8px 0 12px;letter-spacing:-.04em}.journey-copy .journey-kicker{font-size:9px;letter-spacing:.07em}.journey-description{font-size:13px;line-height:1.55}.journey-result{font-size:12px;line-height:1.4;margin:14px 0 0;padding-top:10px}.journey-result span{display:inline;margin:0 9px 0 0;font-size:9px}
 .journey-bottom{padding:8px 16px 12px;gap:5px}.journey-stage-name{font-size:10px;max-width:140px}.journey-arrows{gap:5px}.journey-arrows button{height:44px;width:44px;font-size:19px}.journey-arrows .journey-mode{margin-left:0;font-size:10px;padding:0 8px}
 .journey-timeline{grid-template-columns:repeat(10,minmax(0,1fr))}.journey-timeline button{padding:12px 0}.journey-timeline button b{font-size:12px;margin:0}.journey-timeline button span{display:none}.journey-timeline button{min-height:44px}
 .journey-methods{bottom:17px;padding:3px}.journey-methods button{padding:6px 11px;font-size:11px;min-height:34px}.journey-method-note{font-size:9px;bottom:0}
 .journey-materials-wrap{padding-top:28px}.process-materials summary{font-size:21px;padding:20px 0}.process-materials summary small{display:block;margin:5px 0 0;font-size:12px}.process-material-grid{grid-template-columns:1fr 1fr;gap:20px}.process-material-grid h3{font-size:23px}.process-material-grid p:not(.eyebrow){font-size:13px}
}
@media(max-width:360px) {.journey-text{padding-inline:16px}.journey-copy h3{font-size:26px}.journey-description{font-size:12px}.journey-stage-name{max-width:90px}.journey-bottom{padding-inline:12px}.journey-arrows .journey-mode{padding-inline:6px}.journey-art{min-height:190px}.journey-methods button{padding-inline:8px}}
@media(max-height:700px) {.journey-panel{height:auto;min-height:550px}.journey-main{min-height:370px}.journey-mode{display:none!important}}
@media(max-width:700px) and (max-height:700px) {.journey-panel{min-height:690px}.journey-art{height:240px;min-height:240px}.journey-main{min-height:520px}.journey-text{padding-top:8px;padding-bottom:20px}}
@media(prefers-reduced-motion:reduce) {.journey-scene,.journey-scene [data-method-scene]{transition:none}.journey-mode{display:none!important}.journey-scroll-hint{visibility:hidden}.journey-panel{--phase:1!important;--line-dash:0!important}.journey-world *{animation:none!important}}

/* GEOGRAPHY MODULE START */
.geography{padding:86px 0 96px;scroll-margin-top:95px;border-top:1px solid #d6ddd1}
.geo-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:36px}
.geo-heading h2{font-size:clamp(40px,4.3vw,65px);letter-spacing:-.055em;line-height:1.04;margin:14px 0 0;color:#1d4238}
.geo-heading>p{font-size:17px;color:#5f6f65;max-width:470px;line-height:1.65;margin:0 0 3px}
.geo-proof{display:flex;gap:42px;align-items:center;border-top:1px solid #d3dbcf;padding-top:24px;margin-bottom:32px}
.geo-proof>div{display:flex;align-items:center;gap:15px}.geo-proof strong{font-size:40px;letter-spacing:-.045em;line-height:1;font-weight:600;color:#244f40}.geo-proof span{font-size:12px;color:#67776b;line-height:1.4;max-width:145px}
.geo-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.geo-tabs button{border:1px solid #cad4c7;background:transparent;padding:10px 16px;min-height:44px;color:#365747;font:inherit;font-size:13px;cursor:pointer;border-radius:4px}.geo-tabs button[aria-pressed=true]{background:#285340;color:#fffdf7;border-color:#285340}.geo-tabs button:hover{border-color:#285340}
.geo-console{display:grid;grid-template-columns:minmax(0,1fr) 302px;border:1px solid #34564a;border-radius:10px;overflow:hidden;background:#17312e}
.geo-canvas{min-width:0;position:relative;display:flex;align-items:stretch;min-height:590px;overflow:hidden;background:#112926}
.geo-map{width:100%;height:100%;min-height:590px;display:block;touch-action:none;cursor:grab;--geo-dot:4.5;--geo-hit:14;--geo-label:14}.geo-map:active{cursor:grabbing}.geo-map:focus-visible{outline:3px solid #efbc7b;outline-offset:-5px}
.geo-land{fill:#24453a;stroke:#6e8e72;stroke-width:1.1;vector-effect:non-scaling-stroke}.geo-grid{stroke:#d5e1c8;stroke-opacity:.075;fill:none;stroke-width:.7;vector-effect:non-scaling-stroke}.geo-point{cursor:pointer}.geo-point[hidden]{display:none}.geo-hit{r:calc(var(--geo-hit)*1px);fill:transparent}.geo-dot{r:calc(var(--geo-dot)*1px);fill:#b8cf9c;stroke:#132f27;stroke-width:1;vector-effect:non-scaling-stroke}.geo-point.featured .geo-dot{fill:#edbd80}.geo-point:hover .geo-dot,.geo-point.is-selected .geo-dot{fill:#fff4d1;stroke:#f4bf76;stroke-width:3}.geo-point.is-selected .geo-dot{filter:drop-shadow(0 0 5px #f1bf76)}.geo-map-label{font-size:calc(var(--geo-label)*1px);font-family:"Segoe UI",Arial,sans-serif;fill:#e1e7ce;paint-order:stroke;stroke:#24453a;stroke-width:3;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.geo-point:not(.featured) .geo-map-label{display:none}.geo-point.is-selected .geo-map-label{display:block;fill:#fff8e7;font-weight:700}.geo-water-label{fill:#6d958c;font:italic 20px Georgia,serif;letter-spacing:2px;pointer-events:none}
.geo-map-topline{position:absolute;left:20px;top:18px;display:flex;gap:8px;align-items:center;color:#d1dfbf;font:10px Consolas,monospace;letter-spacing:.12em;pointer-events:none}.geo-map-topline i{width:5px;height:5px;border-radius:50%;background:#eebd79}
.geo-controls{position:absolute;left:18px;bottom:45px;display:flex;gap:6px}.geo-controls button{width:42px;height:42px;border:1px solid #789b7c;background:#19392ee8;color:#f4e6c8;font-size:22px;cursor:pointer;border-radius:4px}.geo-controls button:last-child{font-size:18px}.geo-controls button:disabled{opacity:.4;cursor:default}.geo-controls button:hover:not(:disabled){background:#365a44}
.geo-caption{position:absolute;bottom:13px;left:20px;right:20px;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#a8bdab;pointer-events:none}.geo-caption a{color:#aec2b1;pointer-events:auto;text-decoration:underline;text-underline-offset:2px}
.geo-side{padding:27px 24px;background:#edf0e5;color:#284b3b;min-width:0}.geo-kicker{font:10px/1.5 Consolas,monospace;letter-spacing:.1em;margin:0 0 16px;color:#536d5a}.geo-detail h3{font-size:31px;letter-spacing:-.04em;line-height:1.13;margin:0 0 16px;color:#234938}.geo-detail>p:not(.geo-kicker){font-size:13px;color:#657361;line-height:1.6}.geo-detail{min-height:242px}.geo-detail-rule{height:1px;background:#cbd6c1;margin:21px 0 15px}.geo-detail .geo-detail-note{font-size:11px}.geo-work-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}.geo-work-tags span{font-size:10px;border:1px solid #b9c9ac;border-radius:3px;padding:5px 7px;color:#426244}
.geo-search-label{display:block;font-size:11px;margin:12px 0 7px;color:#426044}.geo-search{width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid #bdcbb3;background:#f9faf4;color:#214b39;border-radius:4px;font:13px "Segoe UI",Arial,sans-serif}.geo-search:focus-visible{outline:2px solid #336947;outline-offset:2px}.geo-count{font-size:10px;color:#6f7b69;margin:9px 0 13px}.geo-results{max-height:265px;overflow:auto}.geo-result{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:38px;padding:9px 2px;border:0;border-bottom:1px solid #d5ddcd;background:transparent;text-align:left;color:#375b45;font:13px "Segoe UI",Arial,sans-serif;cursor:pointer}.geo-result[aria-pressed=true],.geo-result:hover{color:#153d28;background:#e0e8d5}.geo-result[aria-pressed=true]{font-weight:700}.geo-no-results{font-size:12px;color:#6d7668;line-height:1.5}.geo-footnote{margin:16px 0 0;color:#738071;font-size:11px;max-width:850px;line-height:1.6}.geo-team-story{margin-top:32px;padding-top:26px;border-top:1px solid #d3dbcf;display:grid;grid-template-columns:1fr 1fr;gap:50px}.geo-team-story h3{font-size:25px;line-height:1.2;letter-spacing:-.03em;color:#244c3b;margin:0 0 10px}.geo-team-story p{font-size:14px;color:#61705f;margin:0;line-height:1.7}
.hero-proof.team-since strong{font-size:49px;letter-spacing:-.055em}.hero-proof.team-since span{font-size:11px}
.geo-result>span:first-child{display:flex;flex-direction:column;gap:2px}.geo-result small{font-size:10px;font-weight:400;color:#75836d}
.geo-legend{display:flex;flex-wrap:wrap;gap:12px 23px;margin:-2px 0 16px;color:#657461;font-size:11px;min-height:17px}.geo-legend>span{display:flex;align-items:center;gap:7px}.geo-legend i{display:block;flex:none}.geo-key-dot{width:7px;height:7px;background:#a6be86;border:1px solid #55724e;border-radius:50%}.geo-key-road{width:19px;height:2px;background:#aaa582}.geo-key-water{width:18px;height:5px;border-radius:2px;background:#6e9d93}.geo-legend [hidden],[data-geo-basemap][hidden]{display:none}
.geo-base-label{font-size:calc(var(--geo-base-label,11)*1px);pointer-events:none}.geo-base-label-city{display:none}.geo-show-base-cities .geo-base-label-city{display:block}.geo-base-labels{pointer-events:none}
.geo-caption{flex-direction:column;gap:3px;align-items:flex-end;text-shadow:0 1px 3px #112926,0 0 8px #112926}.geo-caption>span{background:#112926a3;border-radius:2px;padding:2px 4px}.geo-controls{bottom:53px}
@media(min-width:701px) and (max-width:1000px){.bar{gap:14px}.header nav{font-size:12px;gap:12px}.header .nav-cta{padding:10px}.header .brand{font-size:21px}.header .brand img{height:32px}}
@media(max-width:1000px){.geo-console{grid-template-columns:minmax(0,1fr) 265px}.geo-side{padding:24px 19px}.geo-heading{gap:35px}.geo-proof{gap:26px}.geo-proof strong{font-size:34px}}
@media(max-width:700px){.geography{padding:52px 0}.geo-heading{display:block;margin-bottom:25px}.geo-heading h2{font-size:44px}.geo-heading>p{font-size:15px;margin-top:22px}.geo-proof{gap:20px;flex-wrap:wrap;padding-top:20px;margin-bottom:25px}.geo-proof>div{gap:10px}.geo-proof strong{font-size:29px}.geo-proof span{font-size:10px;max-width:115px}.geo-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.geo-tabs button{font-size:12px;padding:10px 8px}.geo-console{display:flex;flex-direction:column}.geo-canvas{min-height:380px;height:430px;max-height:68svh}.geo-map{min-height:0;height:100%}.geo-side{padding:24px}.geo-detail{min-height:0}.geo-detail h3{font-size:29px}.geo-detail-rule{margin:17px 0 12px}.geo-detail .geo-detail-note{margin-bottom:22px}.geo-results{max-height:190px}.geo-map-topline{left:15px;top:15px;font-size:9px}.geo-caption{left:15px;right:12px;gap:7px;font-size:8px}.geo-controls{left:14px}.geo-team-story{grid-template-columns:1fr;gap:23px;margin-top:25px}.geo-team-story h3{font-size:23px}.geo-footnote{font-size:10px}.hero-proof.team-since strong{font-size:35px}}
@media(prefers-reduced-motion:reduce){.geo-point,.geo-dot{transition:none!important}}
@media(max-width:700px){.geo-canvas{min-height:0;height:auto;max-height:none;aspect-ratio:1}.geo-map{min-height:0;height:100%}.geo-point.featured:not(.geo-primary):not(.is-selected) .geo-map-label{display:none}}
@media(max-width:700px){.geo-legend{font-size:10px;gap:10px 16px}.geo-caption{align-items:flex-start;font-size:8px}.geo-controls{bottom:53px}.geo-base-label-river,.geo-base-label-road{display:none}.geo-show-base-cities .geo-base-label-river,.geo-show-base-cities .geo-base-label-road{display:block}}
.geo-current-ring{display:none;fill:none;stroke:#edbd80;stroke-width:1.5;vector-effect:non-scaling-stroke;r:calc(var(--geo-ring,7)*1px)}
.geo-current .geo-current-ring{display:block}.geo-current-only .geo-dot{fill:#24453a;stroke:#edbd80;stroke-width:1.5}
.geo-key-current{width:11px;height:11px;border:2px solid #ba873f;border-radius:50%;background:transparent}
/* GEOGRAPHY MODULE END */

/* WIDE LAYOUT MODULE START */
:root{--site-max-width:1920px;--site-gutter:clamp(24px,4vw,96px);--site-header-height:104px}
.wrap{width:calc(100% - var(--site-gutter) - var(--site-gutter));max-width:var(--site-max-width)}
.header .bar{min-height:var(--site-header-height);gap:28px}
.header .brand{gap:16px;font-size:clamp(32px,2.2vw,44px);font-weight:780;letter-spacing:-.035em;flex-shrink:0}
.header .brand img{height:clamp(48px,3.2vw,68px);width:auto;flex-shrink:0}
.header .brand small{font-size:clamp(8px,.5vw,10px);letter-spacing:.19em;margin-top:10px;font-weight:650;line-height:1.25}
.header nav{display:flex;position:static;gap:clamp(18px,2vw,34px);font-size:clamp(14px,.9vw,16px);flex-shrink:0;align-items:center}
.header .nav-cta{padding:13px 18px;white-space:nowrap}
section[id],.service-item{scroll-margin-top:calc(var(--site-header-height) + 18px)}
.service-intro{top:calc(var(--site-header-height) + 28px)}
.journey-section[data-scroll] .journey-panel{top:calc(var(--site-header-height) + 14px);height:min(760px,calc(100svh - var(--site-header-height) - 30px))}
@media(min-width:1100px){
 .hero-inner{gap:clamp(52px,4.5vw,112px);padding-block:clamp(42px,4vh,64px)}
 .hero h1{font-size:clamp(58px,5.6vw,108px)}
 .hero-description{max-width:620px;font-size:clamp(18px,1.2vw,22px)}
 .hero-media{aspect-ratio:1.14;min-height:420px;max-height:min(740px,calc(100svh - 300px))}
 .hero-kicker{font-size:12px}.hero-note{font-size:12px}
 .hero-index .wrap{min-height:60px;font-size:11px}
}
@media(min-width:701px) and (max-width:1099px){
 :root{--site-header-height:88px}
 .header .brand{font-size:32px;gap:13px}.header .brand img{height:52px}.header .brand small{font-size:8px;margin-top:8px}
}
@media(max-width:1099px){
 .header .menu.icon-btn{display:flex;flex-direction:column;justify-content:center;gap:6px;flex-shrink:0;width:48px;height:48px;padding:10px}
 .header .menu span:not(.sr){width:23px;height:2px;background:currentColor}
 .header nav{display:none;position:absolute;inset:100% 0 auto;background:#102126;padding:18px var(--site-gutter) 24px;gap:7px;align-items:stretch;border-bottom:1px solid #ffffff33;font-size:16px}
 .header nav[data-open=true]{display:flex;flex-direction:column}
 .header nav a{padding:12px 0;min-height:44px}
 .header nav .nav-cta{padding:12px 16px;margin-top:6px}
}
@media(max-width:700px){
 :root{--site-gutter:20px;--site-header-height:76px}
 .header .bar{gap:14px}.header .brand{font-size:27px;gap:10px}.header .brand img{height:45px}.header .brand small{font-size:7px;letter-spacing:.17em;margin-top:7px}
 .header .menu.icon-btn{width:44px;height:44px}
 .journey-panel{width:calc(100% - 24px)}
 .journey-section[data-scroll] .journey-panel{top:calc(var(--site-header-height) + 12px);height:min(700px,calc(100svh - var(--site-header-height) - 26px))}
}
@media(max-width:360px){
 :root{--site-gutter:16px}
 .header .brand{font-size:24px;gap:8px}.header .brand img{height:40px}.header .brand small{font-size:6px}
 .header .bar{gap:10px}
}
/* WIDE LAYOUT MODULE END */















/* COMPANY PAGE START */
#home-page[hidden],.company-page[hidden]{display:none!important}
.company-page{background:#f4f3eb;color:#183c34;min-height:75vh;padding:64px 0 88px}
.company-page h1{font-size:clamp(42px,5.3vw,88px);line-height:1.03;letter-spacing:-.055em;font-weight:650;max-width:1100px;margin:18px 0 28px}
.company-page .company-lead{font-size:clamp(17px,1.5vw,22px);line-height:1.65;max-width:850px;color:#556e64}
.company-page .eyebrow{color:#497467}
.company-page .company-quick-nav{display:flex;position:static;inset:auto;align-items:center;gap:12px 24px;flex-wrap:wrap;margin:30px 0 42px;padding:0;border:0;background:transparent}
.company-page .company-quick-nav a{color:#245b48;font-weight:650;text-decoration:none;border-bottom:1px solid #9ab1a2;padding:7px 0}
.company-page .company-quick-nav a:hover{color:#122f25}
.company-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #cbd4c6;border-radius:10px;overflow:hidden;margin:36px 0 60px}
.company-highlights article{padding:27px 30px;background:#e9ece1;display:flex;flex-direction:column;gap:7px}
.company-highlights article+article{border-left:1px solid #cbd4c6}
.company-highlights strong{font-size:clamp(26px,2.7vw,43px);line-height:1.1;font-weight:650;letter-spacing:-.04em}
.company-highlights span{font-size:14px;color:#5a7168}
.company-block{margin-top:68px;scroll-margin-top:140px}
.company-block-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}
.company-block h2{font-size:clamp(30px,3.2vw,48px);line-height:1.12;letter-spacing:-.04em;font-weight:600}
.company-block-head p{max-width:540px;color:#64796f;line-height:1.6}
.company-offices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.company-office{border:1px solid #c8d4c5;border-radius:10px;background:#fffdf7;padding:30px;display:flex;flex-direction:column;align-items:start}
.company-office>small{font:12px/1.4 Consolas,monospace;letter-spacing:.08em;color:#6d8576;text-transform:uppercase}
.company-office h3{font-size:clamp(26px,2.6vw,39px);line-height:1.14;letter-spacing:-.035em;margin:18px 0}
.company-office address{font-style:normal;font-size:18px;line-height:1.65;max-width:550px}
.company-office .office-meta{font-size:13px;color:#73867b;margin:11px 0 22px}
.company-office .text-link{margin-top:auto;font-size:15px}
.company-contact-strip{display:flex;flex-wrap:wrap;gap:15px 40px;margin-top:22px;padding:23px 30px;background:#23483b;border-radius:9px;color:#fffbee}
.company-contact-strip a{font-size:clamp(19px,2vw,29px);text-decoration:none;font-weight:550;overflow-wrap:anywhere}
.company-contact-strip a:hover{text-decoration:underline}
.company-requisites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #c6d3c5}
.company-requisites>div{padding:22px 26px 22px 0;border-bottom:1px solid #c6d3c5;min-width:0}
.company-requisites>div:nth-child(even){padding-left:26px;border-left:1px solid #c6d3c5}
.company-requisites .wide{grid-column:1/-1;padding-left:0;border-left:0}
.company-requisites dt{font:11px/1.4 Consolas,monospace;text-transform:uppercase;letter-spacing:.06em;color:#6b8176;margin-bottom:8px}
.company-requisites dd{margin:0;font-size:clamp(17px,1.3vw,21px);line-height:1.55;overflow-wrap:anywhere}
.company-requisites dd.mono{font-family:Consolas,monospace;letter-spacing:.035em;font-size:22px}
.company-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;margin-top:24px}
.company-actions .button{border-radius:5px;min-height:46px;background:#244e3d;color:#fffdf5;padding:12px 20px;border:1px solid #244e3d;cursor:pointer;font:600 14px/1.5 Segoe UI,sans-serif}
.company-actions .text-link{font-size:14px}
.company-copy-status{font-size:13px;min-height:20px;color:#4c6e5c;margin-top:8px}
.company-documents{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.company-document{border:1px solid #c8d3c3;border-radius:10px;overflow:hidden;background:#fffdf7;display:flex;flex-direction:column;min-width:0}
.company-document-preview{border:0;padding:24px;background:#e5e9de;width:100%;cursor:zoom-in;aspect-ratio:1.34;display:flex;align-items:center;justify-content:center}
.company-document-preview img{display:block;max-width:100%;max-height:100%;width:auto;height:100%;object-fit:contain;box-shadow:0 9px 25px #193d321c;border:1px solid #d1d5c9}
.company-document-body{padding:25px;display:flex;flex-direction:column;gap:12px;flex:1}
.company-document h3{font-size:23px;line-height:1.2;letter-spacing:-.025em}
.company-document p{font-size:14px;color:#687c71;line-height:1.6}
.company-document .document-date{font:12px/1.45 Consolas,monospace;color:#6c8173}
.company-document .text-link{margin-top:auto;font-size:14px;padding-top:10px;align-self:start}
.company-memberships{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.company-membership{padding:26px 28px;border:1px solid #bfd0bd;border-radius:9px;background:#e5ebdd}
.company-membership small{font:11px/1.5 Consolas,monospace;letter-spacing:.06em;color:#5b7a61}
.company-membership h3{font-size:25px;margin:12px 0;line-height:1.2}
.company-membership p{font-size:14px;line-height:1.6;margin-bottom:17px;color:#5a7363}
.company-membership .text-link{font-size:14px}
.company-document-image{display:block;width:100%;height:auto;background:#fff}
.company-copy-fallback{width:100%;padding:16px;font:14px/1.6 Consolas,monospace;background:#fffdf7;color:#163c30;border:1px solid #7f9989}
.company-card-details{margin-top:22px;padding:22px 25px;border:1px solid #c6d3c5;border-radius:7px}
.company-card-details summary{cursor:pointer;font-weight:600}.company-card-details p{margin-top:12px;line-height:1.6}
.company-footer{padding:22px 0 0;margin-top:22px;border-top:1px solid #58706644;display:flex;justify-content:space-between;gap:18px;align-items:start;font-size:12px;line-height:1.7;color:#b5c4bb}
.company-footer p{margin:0}.company-footer a{color:#eeb775;white-space:nowrap}
.header nav a[aria-current=page]{color:#f1bb76;text-decoration:underline;text-underline-offset:7px}
.contact-phone{display:block;font-size:clamp(23px,2vw,31px);margin-top:22px;font-weight:600;text-decoration:none}
.journey-operation-switch{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0 3px}
.journey-operation-switch button{padding:10px 13px;border:1px solid #5b7b69;border-radius:5px;background:transparent;color:#d5e0d1;font:12px/1.4 Segoe UI,sans-serif;cursor:pointer;min-height:40px}
.journey-operation-switch button[aria-pressed=true]{background:#f1ba74;color:#17372e;border-color:#f1ba74}
.journey-panel[data-operation=fusion] .journey-methods,.journey-panel[data-operation=fusion] .journey-method-note{display:none!important}
.journey-panel[data-operation=fusion][data-active-step="7"] .journey-film{bottom:36px}
@media(max-width:1249px){
 .header .menu.icon-btn{display:flex;flex-direction:column;justify-content:center;gap:6px;flex-shrink:0;width:48px;height:48px;padding:10px}
 .header .menu span:not(.sr){width:23px;height:2px;background:currentColor}
 .header nav{display:none;position:absolute;inset:100% 0 auto;background:#102126;padding:18px var(--site-gutter) 24px;gap:7px;align-items:stretch;border-bottom:1px solid #ffffff33;font-size:16px}
 .header nav[data-open=true]{display:flex;flex-direction:column}
 .header nav a{padding:12px 0;min-height:44px}.header nav .nav-cta{padding:12px 16px;margin-top:6px}
 .company-documents{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1250px) and (max-width:1550px){.header nav{gap:20px;font-size:14px}.header .brand{font-size:32px;gap:13px}}
@media(max-width:700px){
 .company-page{padding:36px 0 60px}.company-page h1{font-size:43px;margin-top:13px;line-height:1.05}.company-page .company-lead{font-size:16px}
 .company-page .company-quick-nav{margin-bottom:27px;gap:8px 20px;font-size:14px}.company-highlights{grid-template-columns:1fr;margin-bottom:40px}
 .company-highlights article{padding:19px 22px;flex-direction:row;justify-content:space-between;align-items:center;gap:15px}
 .company-highlights article+article{border-left:0;border-top:1px solid #cbd4c6}.company-highlights strong{font-size:28px;white-space:nowrap}.company-highlights span{max-width:150px;font-size:12px;line-height:1.5}
 .company-block{margin-top:46px;scroll-margin-top:110px}.company-block-head{display:block}.company-block-head p{margin-top:16px;font-size:14px}
 .company-offices,.company-documents,.company-memberships{grid-template-columns:1fr;gap:18px}.company-office{padding:23px}.company-office address{font-size:17px}
 .company-contact-strip{padding:20px 23px;gap:12px}.company-contact-strip a{font-size:21px}.company-requisites{grid-template-columns:1fr}
 .company-requisites>div,.company-requisites>div:nth-child(even){padding:18px 0;border-left:0}.company-requisites dd{font-size:17px}.company-requisites dd.mono{font-size:21px}
 .company-document-preview{aspect-ratio:1.45;max-height:280px}.company-document-body{padding:22px}.company-document h3{font-size:22px}.company-membership{padding:23px}
 .company-footer{flex-direction:column}.journey-operation-switch{margin-top:15px;gap:6px}.journey-operation-switch button{font-size:11px;padding:9px 11px;min-height:36px}
 .journey-panel[data-operation=fusion][data-active-step="7"] .journey-film{bottom:10px}
 .journey-panel[data-active-step="7"] .journey-result{margin-top:16px}
 .header .menu.icon-btn{width:44px;height:44px}
}
/* COMPANY PAGE END */













/* RUNWAY SCENES START */
.journey-section[data-scroll] .journey-panel {top:var(--journey-top,96px);height:min(760px,calc(100svh - var(--journey-top,96px) - 16px))}
.journey-art.has-motion .journey-world {visibility:hidden}
.journey-film {position:absolute;inset:12px 14px 36px;margin:0;display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0}
.journey-film[hidden] {display:none}
.journey-film-frame {position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:#12372e;border:1px solid #496653;isolation:isolate}
.journey-film-poster,.journey-film video {display:block;width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.journey-film video {opacity:0;transition:opacity .18s}
.journey-film.is-ready video {opacity:1}
.journey-film figcaption {font:11px/1.3 Consolas,monospace;letter-spacing:.04em;color:#a5c1b1;padding-inline:3px;display:flex;justify-content:space-between;gap:12px}
.journey-film figcaption span:last-child {color:#78978a}
.journey-film-toggle {position:absolute;right:10px;bottom:10px;z-index:2;min-height:40px;padding:8px 13px;border:1px solid #8caa96;border-radius:6px;background:#102e28ed;color:#f8efdc;font:12px/1.3 Segoe UI,sans-serif;cursor:pointer;backdrop-filter:blur(8px)}
.journey-film-toggle[hidden] {display:none}
.journey-film-toggle:focus-visible {outline:3px solid #f1ba74;outline-offset:3px}
.journey-film-toggle:hover {background:#254d3e}
.journey-panel[data-active-step="7"] .journey-film {bottom:82px}
@media(max-width:700px) {
 .journey-section[data-scroll] .journey-panel {height:min(700px,calc(100svh - var(--journey-top,76px) - 16px))}
 .journey-film {inset:4px 12px 10px;gap:6px}
 .journey-film-frame {border-radius:7px}
 .journey-film figcaption {font-size:9px;letter-spacing:0}
 .journey-film-toggle {right:7px;bottom:7px;min-height:34px;font-size:11px;padding:6px 10px}
 .journey-panel[data-active-step="7"] .journey-art.has-motion {min-height:260px}
 .journey-panel[data-active-step="7"] .journey-film {bottom:59px}
 .journey-section:not([data-scroll]) .journey-panel {height:auto;min-height:0}
 .journey-section:not([data-scroll]) .journey-main {min-height:0}
 .journey-section:not([data-scroll]) .journey-art {height:245px;min-height:245px}
 .journey-section:not([data-scroll]) .journey-text {padding-bottom:20px}
}
@media(prefers-reduced-motion:reduce) {.journey-film video {transition:none}}
/* RUNWAY SCENES END */

/* LAYING DIAGRAMS START */
.journey-art.has-diagram .journey-world { visibility:hidden; }
.laying-diagram { position:absolute; inset:12px 14px 36px; margin:0; display:grid; grid-template-rows:minmax(0,1fr) auto; gap:10px; min-width:0; min-height:0; }
.laying-diagram--legend { grid-template-rows:auto minmax(0,1fr) auto; }
.laying-diagram[hidden] { display:none!important; }
.laying-diagram-frame { position:relative; width:100%; height:100%; min-height:0; overflow:hidden; border-radius:10px; background:#163e34; border:1px solid #496653; isolation:isolate; }
.laying-diagram-frame svg { width:100%; height:100%; display:block; }
.laying-legend { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; padding:2px 4px; color:#e6eddb; font:14px/1.35 Arial,Helvetica,sans-serif; }
.laying-legend span { display:inline-flex; align-items:center; gap:9px; }
.laying-legend i { display:inline-block; width:26px; height:5px; border-radius:3px; flex:none; background:#f4bb6b; }
.laying-legend .laying-legend-tape { height:8px; background:repeating-linear-gradient(90deg,#c86952 0 6px,#ffe9b9 6px 10px,#c86952 10px 16px); }
/* A hidden native SVG must not impose its width-based intrinsic height on
   the desktop grid row; otherwise the entire art layer covers the controls. */
@media(min-width:701px) {
  .journey-main { grid-template-rows:minmax(0,1fr); }
  .journey-art { min-height:0; }
}
.laying-diagram svg text { fill:#edf0dc; font-family:Arial,Helvetica,sans-serif; }
.laying-diagram .lay-heading text { font:600 16px Consolas,monospace; letter-spacing:2px; }
.laying-diagram .lay-heading .lay-schematic { fill:#b8c5a8; font-size:14px; }
.laying-diagram .lay-scene-title { font-size:39px; font-weight:650; letter-spacing:-.9px; }
.laying-diagram .lay-subtitle { font-size:23px; fill:#c1d0b4; }
.laying-diagram .lay-phase-rail circle { fill:#244b3c; stroke:#819e7f; stroke-width:2; }
.laying-diagram .lay-phase-rail text { fill:#9eb496; font:18px Consolas,monospace; }
.laying-diagram .lay-phase-rail [data-active="true"] circle { fill:#efb569; stroke:#f4d69e; }
.laying-diagram .lay-phase-rail [data-active="true"] text { fill:#efb569; }
.laying-diagram .lay-section-label { font:600 15px Consolas,monospace; letter-spacing:.4px; }
.laying-diagram .lay-section-note { font:15px Consolas,monospace; letter-spacing:1.3px; fill:#a7bd9e; }
.laying-diagram .lay-plough-legend text { fill:#244738; }
.laying-diagram figcaption { font:11px/1.3 Consolas,monospace; letter-spacing:.02em; color:#a5c1b1; padding-inline:3px; display:flex; justify-content:space-between; gap:12px; }
.laying-diagram figcaption strong { color:#d4dfcb; font-weight:400; }
.laying-diagram figcaption [data-laying-caption] { text-align:right; }
.laying-diagram [data-laying-play] { position:absolute; right:12px; top:12px; min-height:34px; padding:7px 10px; display:inline-flex; gap:7px; align-items:center; border:1px solid #78937c; border-radius:6px; background:#173d32; color:#e7edd9; font:12px/1.2 Arial,Helvetica,sans-serif; cursor:pointer; box-shadow:0 2px 10px #10251d30; transform:translateY(-1px); }
.laying-diagram [data-laying-play]:hover { background:#e8b56c; color:#173d32; border-color:#e8b56c; }
.laying-diagram [data-laying-play]:focus-visible { outline:3px solid #efc784; outline-offset:3px; }
.laying-diagram[data-playing="true"] [data-laying-play] { border-color:#e8b56c; }
@media(max-width:700px) {
  .laying-diagram { inset:4px 12px 10px; gap:6px; }
  .laying-diagram-frame { border-radius:7px; }
  .laying-diagram figcaption { font-size:9px; gap:8px; }
  .laying-legend { gap:6px 15px; font-size:11px; padding:0 2px; }
  .laying-legend span { gap:6px; }
  .laying-legend i { width:20px; }
  .laying-diagram [data-laying-play] { top:9px; right:9px; min-height:34px; padding:6px 8px; font-size:10px; }
}
/* LAYING DIAGRAMS END */

/* LAYING CONTROLS START */
.journey-methods{position:static;inset:auto;transform:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:17px 0 0;border:0;border-radius:0;white-space:normal;background:none}
.journey-methods button{border:1px solid #5b7b69;border-radius:5px;min-height:38px;padding:8px 11px;font:12px/1.35 Segoe UI,sans-serif}
.journey-methods button[aria-pressed=true]{border-color:#f1ba74;background:#f1ba74;color:#17372e}
.journey-route-select{display:none}
.journey-method-note{position:static;inset:auto;width:auto;margin:9px 0 0;text-align:left;font-size:11px;line-height:1.55;color:#a8beb0}
.journey-panel[data-active-step="7"] .journey-film{bottom:36px}
.journey-panel[data-active-step="7"] .journey-copy h3{font-size:clamp(29px,2.9vw,43px)}
.journey-panel[data-active-step="7"] .journey-result{margin-top:18px;padding-top:13px}
@media(max-width:1000px) and (min-width:701px){.journey-methods{gap:5px;margin-top:12px}.journey-methods button{font-size:11px;padding:7px 9px}.journey-panel[data-active-step="7"] .journey-description{font-size:13px}.journey-panel[data-active-step="7"] .journey-text{padding-top:12px;padding-bottom:12px}.journey-panel[data-active-step="7"] .journey-result{font-size:12px}}
@media(max-width:700px){
 .journey-methods{display:block;margin:10px 0 0}
 .journey-methods button{display:none}
 .journey-route-select{display:block;width:100%;height:44px;padding:8px 33px 8px 11px;border:1px solid #789583;border-radius:5px;background:#1c3b32;color:#f7f1df;font:13px/1.4 Segoe UI,sans-serif;color-scheme:dark}
 .journey-route-select:focus-visible{outline:3px solid #f1ba74;outline-offset:3px}
 .journey-method-note{display:none}
 .journey-panel[data-active-step="7"] .journey-film{bottom:10px}
 .journey-panel[data-active-step="7"] .journey-art.has-motion,.journey-panel[data-active-step="7"] .journey-art.has-diagram{height:220px;min-height:220px;flex-shrink:0}
 .journey-panel[data-active-step="7"] .journey-copy h3{font-size:27px;margin:6px 0 8px}
 .journey-panel[data-active-step="7"] .journey-description{font-size:12px;line-height:1.5}
 .journey-panel[data-active-step="7"] .journey-kicker{display:none}
 .journey-panel[data-active-step="7"] .journey-operation-switch{margin-top:10px}
 .journey-panel[data-active-step="7"] .journey-result{margin-top:10px;padding-top:9px;font-size:11px}
 .journey-panel[data-active-step="7"] .journey-text{padding-inline:18px}
}
@media(max-width:700px) and (min-height:701px) and (max-height:820px){
 .journey-panel[data-active-step="7"] .journey-art.has-motion,.journey-panel[data-active-step="7"] .journey-art.has-diagram{height:190px;min-height:190px}
 .journey-panel[data-active-step="7"] .journey-copy h3{font-size:25px}
 .journey-panel[data-active-step="7"] .journey-result{display:none}
}
@media(max-width:700px) and (max-height:700px){.journey-panel[data-active-step="7"]{height:auto;min-height:690px}.journey-panel[data-active-step="7"] .journey-main{min-height:520px}}
/* LAYING CONTROLS END */

/* JOURNEY PLAYBACK START */
.journey-film-toggle,.laying-diagram [data-laying-play]{display:none!important}
.journey-arrows .journey-playback-toggle{width:auto;min-width:202px;min-height:44px;height:44px;margin-left:10px;border-radius:6px;padding:0 17px;border:1px solid #f1ba74;background:#f1ba74;color:#193c32;font:600 13px/1.3 Segoe UI,sans-serif;white-space:nowrap}
.journey-arrows .journey-playback-toggle:hover{background:#ffce8d}
.journey-arrows .journey-playback-toggle[aria-pressed=true]{background:#284c3e;color:#ffe1ac;border-color:#f1ba74}
.journey-arrows .journey-playback-toggle:disabled{opacity:.65;cursor:default}
.journey-topline .journey-mode{width:auto;min-height:34px;padding:7px 10px;margin-left:auto;border:1px solid #587965;border-radius:5px;background:transparent;color:#bcd0c1;font:11px/1.3 Segoe UI,sans-serif;white-space:nowrap;cursor:pointer}
.journey-topline .journey-mode[aria-pressed=true]{background:#2d4d40;color:#e5eddb;border-color:#6e967c}
.journey-topline .journey-scroll-hint{margin-left:auto}
.journey-topline .journey-counter{margin-left:8px}
@media(max-width:700px){
 .journey-bottom{justify-content:center;padding:8px 14px 12px}
 .journey-stage-name{display:none}
 .journey-arrows{width:100%;justify-content:space-between;gap:6px}
 .journey-arrows .journey-playback-toggle{margin-left:4px;min-width:0;flex:1;font-size:12px;padding:0 10px}
 .journey-topline{gap:7px;padding-inline:13px}
 .journey-topline .journey-mode{font-size:9px;min-height:30px;padding:6px 7px}
 .journey-topline .journey-counter{margin-left:0}
}
@media(prefers-reduced-motion:reduce){
 .journey-panel[data-playback-explicit=true]{--phase:var(--playback-phase,1)!important;--line-dash:var(--playback-dash,0)!important}
}
/* JOURNEY PLAYBACK END */

/* RELEASE V29 START */
.release-section{padding-top:74px;padding-bottom:74px;scroll-margin-top:130px}
.release-section h2{font-size:clamp(34px,4vw,58px);line-height:1.05;letter-spacing:-.045em;margin:14px 0 22px}
.release-intro{font-size:17px;line-height:1.65;max-width:760px;color:#566c64}
.release-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px}
.release-card{border:1px solid #cbd2c3;border-radius:9px;padding:27px;min-width:0}
.release-card small,.release-assurance small{font:11px/1.5 Consolas,monospace;letter-spacing:.08em;color:#657a6d}
.release-number{display:block;font-size:clamp(40px,4vw,66px);letter-spacing:-.05em;font-weight:650;color:#21533d;line-height:1.1;margin-top:28px}
.release-measure{font-size:12px;color:#657a6d;margin:5px 0 27px}
.release-card h3,.release-assurance h3{font-size:24px;line-height:1.13;margin:18px 0 14px;letter-spacing:-.025em}
.release-card p:not(.release-measure){font-size:15px;line-height:1.65;color:#566c64}
.release-card .release-result{border-top:1px solid #d2d8ca;margin-top:24px;padding-top:18px}
.release-resources{background:#e9ede2}
.release-split{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}
.release-equipment{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 22px;margin:24px 0}
.release-equipment li{border-top:1px solid #becabb;padding:15px 0;font-size:16px}
.release-assurance{border-top:1px solid #bfcbbb;padding-top:35px;margin-bottom:35px}
.release-assurance p{font-size:15px;line-height:1.65;color:#566c64}
.legal-view a{color:#215c45;text-decoration:underline;text-underline-offset:3px}
.legal-view{padding-top:64px;padding-bottom:80px;max-width:1040px;scroll-margin-top:120px;color:#263e34}
.legal-view[hidden]{display:none!important}
.legal-view h1{font-size:clamp(34px,4.5vw,61px);line-height:1.08;letter-spacing:-.04em;margin:18px 0 30px}
.legal-view h2{font-size:23px;line-height:1.3;margin:34px 0 12px;letter-spacing:-.015em}
.legal-view p{font-size:16px;line-height:1.75;margin:14px 0}
.legal-lead{font-size:19px!important;color:#566c64}
.legal-actions{display:flex;align-items:center;gap:25px;margin-top:36px;flex-wrap:wrap}
.legal-footer{display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:22px!important;border-top:1px solid #37504b;font-size:12px;color:#aabeb2}
.legal-footer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.release-section{padding-block:44px}.release-grid,.release-split{grid-template-columns:1fr;gap:18px}.release-card{padding:22px}.release-number{margin-top:20px}.release-equipment{grid-template-columns:1fr}.release-intro{font-size:15px}.legal-view{padding-block:35px}.legal-view p{font-size:14px}.legal-view h2{font-size:21px}.legal-footer{gap:12px 20px}.release-assurance{gap:25px}}
@media print{body.print-legal header,body.print-legal footer,body.print-legal #home-page,body.print-legal #company,body.print-legal .legal-actions{display:none!important}body.print-legal .legal-view:not([hidden]){display:block!important;width:100%;max-width:none;padding:0;margin:0}body.print-legal{background:white;color:black}.legal-view h1{font-size:26px}.legal-view h2{font-size:17px;break-after:avoid}.legal-view p{font-size:11px;line-height:1.45}}
/* RELEASE V29 END */

/* DIRECT CONTACTS V30 */
.contact-direct>.eyebrow{font-size:10px;letter-spacing:.12em;color:#5b705b;margin:0 0 13px}
.contact-direct h3{margin-bottom:20px}
.contact-channel{display:grid;grid-template-columns:minmax(0,1fr) 25px;gap:5px 14px;padding:23px 0;border-top:1px solid #31523e38;text-decoration:none;color:#183e2e;min-width:0}
.contact-channel-label{grid-column:1;font-size:12px;line-height:1.5;color:#5a6b56}
.contact-channel-value{grid-column:1;font-size:clamp(22px,2.3vw,34px);font-weight:550;letter-spacing:-.035em;line-height:1.35;overflow-wrap:anywhere}
.contact-channel-arrow{grid-column:2;grid-row:1/3;align-self:center;font-size:24px;transition:transform .18s ease}
.contact-channel:hover .contact-channel-value{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.contact-channel:hover .contact-channel-arrow{transform:translate(2px,-2px)}
.contact-channel:focus-visible{outline:2px solid #24563d;outline-offset:5px;border-radius:2px}
.contact-direct-note{font-size:13px;line-height:1.65;color:#59694f;margin:8px 0 0;max-width:390px}
@media(max-width:700px){.contact-direct{padding:25px 23px}.contact-direct h3{font-size:24px;margin-bottom:17px}.contact-channel{padding:21px 0;gap:4px 10px}.contact-channel-value{grid-column:1/-1;font-size:clamp(21px,5.8vw,27px)}.contact-channel-arrow{grid-row:1;font-size:20px}.contact-direct-note{font-size:12px}.contact-intro>p:not(.eyebrow){max-width:460px}}
@media(prefers-reduced-motion:reduce){.contact-channel-arrow{transition:none}}
