/* Weißraum: clear, operational, precise. */
:root{--paper:#fff;--paper-2:#f0f3f9;--paper-3:#dbe1ed;--ink:#12234a;--ink-2:#293b5d;--muted:#5d6b82;--petrol:#123bb5;--petrol-2:#1545d3;--petrol-3:#2454dc;--lime:#dbe6ff;--lime-2:#c3d6ff;--on-dark:#fff;--on-dark-muted:#d0dcfc;--line:#12234a22;--line-dark:#ffffff33;--f-display:var(--f-body);--fs-h2:clamp(34px,4vw,58px);--section-y:clamp(64px,7vw,104px);--radius:5px;--radius-lg:5px;--header-h:76px}
html{scroll-behavior:auto}
body{font-size:16px}
.site-header,.site-header.is-scrolled{position:sticky;background:#fff;border-bottom:1px solid var(--line);backdrop-filter:none;box-shadow:none}
.site-header.is-hidden{transform:none}
.brand-word{font-family:var(--f-body);font-size:25px;font-weight:750;letter-spacing:-1.3px}
.brand-mark{color:var(--petrol-2)}
.main-nav a{font-size:13px}
.header-phone{font-size:13px;color:var(--ink)}
.btn{border-radius:4px;font-weight:650;box-shadow:none}
.btn-ink{background:var(--petrol-2);border-color:var(--petrol-2);--btn-hover-bg:var(--petrol)}
.btn-outline{border-color:var(--line);--btn-hover-bg:var(--paper-2)}
.btn-lime{background:var(--lime);color:var(--ink)}
.icon-btn{border-radius:4px}
.operations-hero{padding:54px 0 0;background:#fff;overflow:visible}
.operations-hero::before{display:none}
.operations-top{display:grid;grid-template-columns:minmax(0,1fr) 355px;grid-template-areas:"copy selector" "photo photo";gap:44px 6vw;align-items:start}
.operations-copy{grid-area:copy}
.operations-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0 0 22px}
.operations-copy h1{font-family:var(--f-body);font-size:clamp(42px,5.8vw,82px);font-weight:700;line-height:1.01;letter-spacing:-.065em;margin:0 0 26px}
.operations-copy h1 span{color:var(--petrol-2)}
.operations-copy>p:not(.operations-label){font-size:17px;line-height:1.7;color:var(--muted);max-width:38em;margin:0 0 25px}
.operations-link{display:inline-flex;gap:35px;font-size:13px;font-weight:650;color:var(--petrol-2);text-underline-offset:6px}
.object-selector{grid-area:selector;padding:25px 27px;background:var(--petrol-2);color:#fff;border-radius:4px}
.object-selector .operations-label{font-size:9px;color:var(--on-dark-muted);margin-bottom:16px}
.object-selector h2{font-family:var(--f-body);font-size:26px;line-height:1.15;font-weight:550;letter-spacing:-.035em;margin:0 0 20px}
.object-options{border-top:1px solid #ffffff40}
.object-options a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #ffffff40;font-size:13px;text-decoration:none;color:#fff}
.object-options a>span:last-child{font-size:19px}
.object-options a:hover{color:var(--lime);padding-left:5px}
.object-options a:focus-visible{outline-color:var(--lime)}
.object-note{font-size:10px;color:var(--on-dark-muted);margin-top:16px}
.operations-photo{grid-area:photo;height:245px;position:relative;overflow:hidden;border-radius:4px}
.operations-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;border-radius:4px}
.operations-photo-label{position:absolute;left:20px;bottom:18px;background:#fff;padding:13px 17px;display:flex;flex-direction:column;gap:3px;color:var(--ink);border-radius:2px;font-size:12px}
.operations-photo-label span:first-child{font-weight:700}
.operations-photo-label span:last-child{font-size:11px;color:var(--muted)}
.operations-promises{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px;border-bottom:1px solid var(--line);gap:20px;font-size:12px}
.operations-promises b{font-family:monospace;color:var(--petrol-2);font-size:11px;margin-right:16px}
.h2{font-weight:650;letter-spacing:-.05em;line-height:1.08}
.h2 em{font-style:normal;font-weight:650;color:var(--petrol-2)}
.eyebrow{font-size:10px;letter-spacing:.14em}
.section-lead{font-size:16px;line-height:1.7}
.section-head{margin-bottom:42px}
.services .section-head{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:20px 7vw}
.services .section-head .eyebrow{grid-column:1/-1;margin:0}
.services .section-head .section-lead{margin:0}
.services-grid{grid-template-columns:1fr 1.45fr;gap:5vw}
.services-frame,.arch{border-radius:4px}
.services-frame{aspect-ratio:4/4.7}
.service-btn{padding-block:21px;gap:16px}
.svc-name{font-family:var(--f-body);font-size:clamp(20px,2vw,28px);font-weight:550;letter-spacing:-.03em}
.svc-num{font-family:monospace;font-size:11px}
.svc-price{font-size:12px}
.svc-toggle{border-radius:3px}
.service-panel p,.service-panel li{font-size:14px}
.pricing{background:var(--paper-2);border-top:0}
.calc{border:1px solid var(--line);border-radius:5px;background:#fff;box-shadow:none}
.calc-result{background:var(--petrol-2)}
.calc-total{font-family:var(--f-body);font-weight:600;letter-spacing:-.05em}
.calc-step{border-radius:3px;background:var(--paper-2);color:var(--petrol-2)}
.choice-body,.segmented,.segmented label>span{border-radius:4px}
.choice input:checked+.choice-body{background:var(--paper-2);border-color:var(--petrol-2);color:var(--ink)}
.process{background:#fff}
.step-num{border-radius:4px;color:var(--petrol-2);border-color:var(--line)}
.step h3{font-weight:650;font-size:23px;letter-spacing:-.03em}
.step p{font-size:14px}
.step-meta{border-radius:3px;font-size:11px}
.principle{background:var(--petrol)}
.principle::before{display:none}
.principle-figure{border-radius:4px}
.statement{font-family:var(--f-body);font-weight:500;font-size:clamp(28px,3.3vw,46px);letter-spacing:-.035em;line-height:1.22}
.pillar h3{font-family:var(--f-body);font-weight:650}
.pillar p{font-size:14px}
.pillar-icon{width:32px;height:32px}
.team-copy .h2{font-size:clamp(32px,3.4vw,48px)}
.team-figure picture{border-radius:4px}
.references{background:var(--paper-2)}
.quote{border-radius:4px;box-shadow:none}
.quote blockquote{font-family:var(--f-body)}
.contact{background:var(--ink)}
.demo-note{margin-top:16px;color:var(--on-dark-muted);font-size:13px;line-height:1.6}
.contact-card{border-radius:4px;background:#ffffff0b;border:1px solid var(--line-dark)}
.contact-card input,.contact-card select,.contact-card textarea{border-radius:3px}
.site-footer{background:#0c1730}
.footer-claim{font-weight:550;letter-spacing:-.04em}
.footer-word{font-weight:750;font-size:clamp(65px,18vw,250px);color:#28446c}
.seal,.marquee{display:none}
.js [data-reveal],.js [data-hero-item]{opacity:1;transform:none;clip-path:none}
@media(max-width:1023px){.operations-top{grid-template-columns:1fr 310px;gap:30px}.operations-copy h1{font-size:55px}.operations-copy>p:not(.operations-label){font-size:15px}.services-grid{grid-template-columns:1fr}.object-selector{padding:22px}.operations-promises{font-size:11px}.operations-promises b{margin-right:6px}}
@media(max-width:700px){
  .operations-hero{padding-top:24px}
  .operations-top{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "photo" "selector";gap:20px}
  .operations-label{font-size:9px;margin-bottom:16px}
  .operations-copy h1{font-size:46px;margin-bottom:16px}
  .operations-copy>p:not(.operations-label){font-size:15px;line-height:1.6;margin-bottom:0}
  .operations-link{display:none}
  .operations-photo{height:210px}
  /* Enlarge the existing photo around the person, keeping face and hands in view. */
  .operations-photo img{transform:scale(1.45);transform-origin:78% 38%}
  .operations-photo-label{display:none}
  .object-selector{padding:0;background:transparent;color:var(--ink)}
  .object-selector .operations-label{font-size:10px;color:var(--petrol-2);margin-bottom:8px}
  .object-selector h2{font-size:20px;margin-bottom:12px}
  .object-selector h2 br{display:none}
  .object-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:0}
  .object-options a{min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--paper-2);color:var(--petrol-2);font-size:13px;font-weight:600;line-height:1.35}
  .object-options a>span:last-child{flex:none}
  .object-options a:hover{padding-left:12px;background:var(--lime);color:var(--ink)}
  .object-options a:focus-visible{outline-color:var(--petrol-2)}
  .object-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:10px}
  .operations-promises{grid-template-columns:1fr;gap:14px;padding-block:22px;font-size:12px}
  .operations-promises b{margin-right:18px}
  .services .section-head{grid-template-columns:1fr;gap:20px}
  .h2{font-size:35px}
  .calc-total{font-size:48px}
  .contact-list a{font-size:16px}
  .brand-word{font-size:23px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Compact closing section without a decorative oversized wordmark. */
.site-footer{padding-block:60px 25px}
.footer-top{padding-bottom:30px}
.footer-claim{font-size:clamp(30px,3.2vw,46px);line-height:1.1}
.footer-cols{padding-block:35px}
.footer-bottom{border-top:1px solid var(--line-dark);padding-block:20px}
