@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --bg:#071014;
  --bg2:#0a151a;
  --ink:#f3f0e9;
  --muted:#9eaaa9;
  --line:rgba(230,235,230,.15);
  --orange:#ef6b29;
  --green:#95a89e;
  --paper:#d9d7cf;
  --header-h:82px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 12% 8%, rgba(239,107,41,.07), transparent 22%),
    radial-gradient(circle at 88% 18%, rgba(120,145,141,.10), transparent 26%),
    radial-gradient(circle at 52% 58%, rgba(255,255,255,.02), transparent 42%),
    linear-gradient(180deg,#040b0e 0%,#071014 30%,#081318 68%,#09161b 100%);
  font-family:Inter,Arial,sans-serif;
  overflow-x:hidden;
}
a{color:inherit}
button,a{touch-action:manipulation}
.page-noise{
  position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")
}
.page-noise:before,
.page-noise:after{content:"";position:fixed;inset:0;pointer-events:none}
.page-noise:before{
  opacity:.10;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:96px 96px;
  mask-image:radial-gradient(circle at center, rgba(0,0,0,.5), transparent 88%);
}
.page-noise:after{
  opacity:.42;
  background:
    radial-gradient(circle at 16% 12%, rgba(239,107,41,.08), transparent 18%),
    radial-gradient(circle at 84% 20%, rgba(149,168,158,.08), transparent 20%),
    radial-gradient(circle at 68% 84%, rgba(239,107,41,.04), transparent 16%);
}
.site-header{
  position:fixed;top:0;left:0;right:0;height:var(--header-h);z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:0 clamp(18px,4vw,64px);
  border-bottom:1px solid rgba(255,255,255,.10);
  background:rgba(5,14,18,.76);
  backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;text-decoration:none}
.brand-vantage{
  flex:0 0 auto;
  width:clamp(190px,17vw,270px);
}
.brand-wordmark{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 0 14px rgba(239,107,41,.08));
}
.main-nav{display:flex;align-items:center;gap:clamp(20px,3vw,42px);margin-left:auto}
.main-nav a,.contact-link{
  text-decoration:none;font-family:"Barlow Condensed";font-size:13px;font-weight:700;letter-spacing:.12em;
  position:relative
}
.main-nav a:after{
  content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:var(--orange);transition:.25s
}
.main-nav a:hover:after{right:0}
.header-actions{display:flex;align-items:center;gap:20px}
.contact-link{display:flex;gap:8px;align-items:center}
.lang-switch{display:flex;border-left:1px solid var(--line);padding-left:16px;gap:3px}
.lang-button{
  min-width:31px;height:30px;border:0;background:transparent;color:#788788;
  font-family:"Barlow Condensed";font-weight:800;letter-spacing:.08em;cursor:pointer
}
.lang-button.active{color:var(--ink);background:rgba(255,255,255,.06)}
.menu-toggle{display:none;background:transparent;border:0;width:38px;height:38px;padding:9px}
.menu-toggle span{display:block;height:1px;background:#fff;margin:7px 0}

.hero{
  min-height:100svh;position:relative;isolation:isolate;overflow:hidden;
  padding:calc(var(--header-h) + 80px) clamp(20px,7vw,110px) 72px;
  display:flex;align-items:center;border-bottom:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(4,13,17,.985) 0%,rgba(5,15,19,.92) 33%,rgba(5,15,19,.50) 65%,rgba(5,15,19,.76) 100%),
    radial-gradient(circle at 72% 47%,rgba(239,107,41,.12),transparent 20%),
    radial-gradient(circle at 14% 12%,rgba(149,168,158,.07),transparent 22%),
    #071014;
}
.hero-map{
  position:absolute;inset:8% -8% -8% 29%;z-index:-4;
  background:url('../img/spain-map-tactical.png') center right/contain no-repeat;
  opacity:.72;filter:contrast(1.12) saturate(.68)
}
.hero-vantage-logo{
  position:absolute;
  z-index:-1;
  right:clamp(46px,8vw,140px);
  top:43%;
  width:min(500px,31vw);
  height:auto;
  opacity:.84;
  pointer-events:none;
  user-select:none;
  filter:drop-shadow(0 0 24px rgba(239,107,41,.14));
  mix-blend-mode:screen;
}
.hero-vantage-logo-inline{
  display:none;
  height:auto;
  pointer-events:none;
  user-select:none;
  filter:drop-shadow(0 0 24px rgba(239,107,41,.14));
  mix-blend-mode:screen;
}
.hero-grid{
  position:absolute;inset:0;z-index:-3;opacity:.24;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:76px 76px;
  mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 100%)
}
.hero:after{
  content:"";position:absolute;inset:0;z-index:-2;
  background:linear-gradient(180deg,rgba(4,13,17,.08),rgba(4,13,17,.38) 78%,#071014 100%)
}
.hero-scan{
  position:absolute;top:18%;bottom:12%;left:68%;width:1px;z-index:-1;
  background:linear-gradient(transparent,rgba(239,107,41,.44),transparent);
  box-shadow:0 0 26px rgba(239,107,41,.22);
  animation:scan 8s ease-in-out infinite
}
@keyframes scan{0%,100%{transform:translateX(-20vw);opacity:0}18%{opacity:1}82%{opacity:1}50%{transform:translateX(22vw)}}
.hero-content{width:min(920px,72vw);position:relative;z-index:3}
.eyebrow,.section-number,.service-kicker,.contact-topline,.contact-kicker{
  font-family:"Barlow Condensed";font-weight:700;letter-spacing:.14em;text-transform:uppercase
}
.eyebrow{margin:0 0 26px;color:#b6c0bf;font-size:14px}
.hero h1{
  margin:0;max-width:920px;font-family:"Barlow Condensed";font-size:clamp(62px,8.4vw,142px);
  line-height:.78;letter-spacing:-.035em;font-weight:500;text-transform:uppercase
}
.hero h1 span,.hero h1 strong{display:block}
.hero h1 strong{font-weight:800;color:#fff}
.hero-copy{
  max-width:650px;margin:42px 0 0;color:#bcc5c4;font-size:clamp(16px,1.25vw,20px);line-height:1.65
}
.hero-actions{display:flex;gap:11px;margin-top:38px;flex-wrap:wrap}
.button{
  min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:26px;
  padding:0 21px;text-decoration:none;border:1px solid var(--line);
  font-family:"Barlow Condensed";font-weight:700;font-size:13px;letter-spacing:.12em
}
.button-primary{background:var(--orange);border-color:var(--orange);color:#071014}
.button-ghost{background:rgba(7,16,20,.45)}
.button:hover{transform:translateY(-2px);transition:.2s}
.hero-meta{
  position:absolute;right:clamp(22px,4vw,60px);bottom:36px;display:flex;gap:30px;
  font-family:"Barlow Condensed";font-size:11px;letter-spacing:.12em;color:#839191
}
.hero-corner{
  position:absolute;right:clamp(22px,4vw,60px);top:135px;width:245px;
  padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  display:grid;grid-template-columns:10px 32px 1fr;gap:9px;align-items:center;
  color:#97a3a3;font-family:"Barlow Condensed";font-size:10px;letter-spacing:.1em
}
.signal-dot{width:5px;height:5px;border-radius:50%;background:var(--orange);box-shadow:0 0 12px var(--orange)}
.section::after{
  content:"";
  position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;
  background:linear-gradient(90deg, transparent 0%, rgba(239,107,41,.14) 18%, rgba(255,255,255,.14) 52%, rgba(239,107,41,.14) 82%, transparent 100%);
  opacity:.65;
}

.section{
  position:relative;
  isolation:isolate;
  display:grid;grid-template-columns:minmax(170px,22vw) 1fr;gap:clamp(20px,6vw,90px);
  padding:clamp(70px,9vw,140px) clamp(20px,7vw,110px);
  border-bottom:1px solid var(--line)
}
.section-number{color:#778686;font-size:12px;padding-top:9px}
.section-main{max-width:1320px}
.section h2,.contact-section h2{
  margin:0;font-family:"Barlow Condensed";font-weight:700;letter-spacing:-.025em;line-height:.94;
  font-size:clamp(48px,6.1vw,104px);text-transform:uppercase
}
.section-intro .section-main>p,.section-heading p,.team-copy{
  max-width:740px;color:#aeb9b7;font-size:18px;line-height:1.72;margin:36px 0 0
}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-top:1px solid var(--line)}
.pillars article{min-height:150px;padding:25px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}
.pillars article:first-child{padding-left:0}
.pillars article:last-child{border-right:0}
.pillars span,.method-steps>article>span,.service-index,.business-list>div>span{
  font-family:"Barlow Condensed";font-weight:700;color:var(--orange);letter-spacing:.12em
}
.pillars strong{font-size:15px;max-width:180px}

.section-intro{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(90deg, rgba(5,15,19,.985) 0%, rgba(5,15,19,.94) 34%, rgba(5,15,19,.74) 56%, rgba(5,15,19,.46) 76%, rgba(5,15,19,.78) 100%),
    radial-gradient(circle at 76% 42%, rgba(239,107,41,.11), transparent 22%),
    radial-gradient(circle at 26% 20%, rgba(149,168,158,.07), transparent 20%),
    url('../img/vantage-section-01-bg.png') 88% 32%/cover no-repeat,
    linear-gradient(180deg,#071014 0%,#0a1519 100%);
}
.section-intro .section-number,
.section-intro .section-main{position:relative;z-index:3}
.section-intro:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    linear-gradient(180deg, #071014 0%, rgba(7,16,20,.72) 10%, rgba(7,16,20,.20) 30%, rgba(7,16,20,.14) 70%, rgba(10,21,25,.72) 100%),
    linear-gradient(90deg, rgba(7,16,20,.20) 0%, rgba(7,16,20,.06) 38%, transparent 54%, rgba(239,107,41,.045) 76%, rgba(7,16,20,.14) 100%);
}
.section-intro:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  opacity:.32;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:76px 76px;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 32%,#000 68%,rgba(0,0,0,.35) 100%);
}
.section-intro .pillars{position:relative;z-index:3}
.section-intro .pillars:before{
  content:"";
  position:absolute;
  right:6%;
  top:-54px;
  width:180px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(239,107,41,.65), transparent);
  opacity:.85;
}

.services{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 14%, rgba(239,107,41,.06), transparent 22%),
    radial-gradient(circle at 12% 82%, rgba(149,168,158,.05), transparent 18%),
    linear-gradient(180deg,#091418 0%,#0b171c 100%);
}
.services .section-number,
.services .section-main,
.services .service-grid{position:relative;z-index:2}
.services:before{
  content:"";
  position:absolute;
  width:min(920px,76vw);
  aspect-ratio:1;
  right:-8%;
  top:26%;
  transform:translateY(-50%);
  border-radius:50%;
  pointer-events:none;
  opacity:1;
  background:
    radial-gradient(circle at center, rgba(239,107,41,.42) 0 2px, rgba(239,107,41,.18) 3px 8px, transparent 9px),
    radial-gradient(circle at center, rgba(239,107,41,.14) 0 12%, transparent 22%),
    repeating-radial-gradient(circle at center, rgba(149,168,158,.22) 0 1px, transparent 1px 52px),
    repeating-radial-gradient(circle at center, rgba(239,107,41,.08) 0 2px, transparent 2px 104px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 72px);
  box-shadow: inset 0 0 0 1px rgba(149,168,158,.14), 0 0 80px rgba(239,107,41,.05);
  mask-image: radial-gradient(circle at center, rgba(0,0,0,1) 0 67%, transparent 84%);
}
.services:after{
  content:"";
  position:absolute;
  width:min(920px,76vw);
  aspect-ratio:1;
  right:-8%;
  top:26%;
  transform:translateY(-50%);
  border-radius:50%;
  pointer-events:none;
  opacity:1;
  background:
    conic-gradient(from 0deg,
      transparent 0deg 286deg,
      rgba(239,107,41,.05) 304deg,
      rgba(239,107,41,.18) 322deg,
      rgba(239,107,41,.55) 338deg,
      rgba(255,198,168,.72) 344deg,
      rgba(239,107,41,.22) 352deg,
      rgba(239,107,41,.06) 360deg);
  filter: blur(.4px);
  mix-blend-mode:screen;
  transform-origin:center center;
  mask-image: radial-gradient(circle at center, rgba(0,0,0,0) 0 9%, rgba(0,0,0,1) 10% 67%, transparent 84%);
  animation:servicesRadarSweep 5.6s linear infinite;
}
.services .section-heading:after{
  content:"";
  position:absolute;
  right:2%;
  top:-28px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:rgba(239,107,41,.92);
  box-shadow:0 0 0 8px rgba(239,107,41,.09),0 0 0 18px rgba(239,107,41,.04),0 0 34px rgba(239,107,41,.34);
  animation:servicesRadarPulse 2.3s ease-in-out infinite;
}
@keyframes servicesRadarSweep{
  from{transform:translateY(-50%) rotate(0deg)}
  to{transform:translateY(-50%) rotate(360deg)}
}
@keyframes servicesRadarPulse{
  0%,100%{opacity:.65; transform:scale(.92)}
  50%{opacity:1; transform:scale(1.1)}
}
.section-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:50px;align-items:end}
.section-heading p{margin:0}
.service-grid{display:grid;grid-template-columns:1.05fr .95fr;margin-top:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-panel{padding:30px 36px 42px 0}
.service-panel+ .service-panel{border-left:1px solid var(--line);padding-left:36px}
.service-kicker{font-size:11px;color:#758485}
.service-heading-row{display:flex;align-items:flex-start;gap:20px;margin:48px 0 18px}
.service-heading-row h3{
  margin:0;font-family:"Barlow Condensed";font-size:clamp(46px,5vw,78px);line-height:.8;text-transform:uppercase
}
.service-index{font-size:12px;padding-top:5px}
.service-lead{min-height:58px;color:#aeb9b7;line-height:1.6;max-width:540px}
.service-list{list-style:none;margin:35px 0 0;padding:0;border-top:1px solid var(--line)}
.service-list li{
  min-height:57px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:22px;
  color:#d7dcda;font-size:13px;line-height:1.45
}
.service-list b{font-weight:400;color:#7b898a}
.business-list{margin-top:35px;border-top:1px solid var(--line)}
.business-list>div{
  min-height:70px;display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;border-bottom:1px solid var(--line)
}
.business-list p{margin:0;display:flex;justify-content:space-between;align-items:center;gap:20px}
.business-list strong{font-size:14px}
.business-list small{color:#778586;font-size:12px;text-align:right}

.method{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 18%, rgba(239,107,41,.08), transparent 16%),
    linear-gradient(180deg,#d8d6cf 0%,#d2d1c9 100%);
  color:#101719
}
.method:before{
  content:"";
  position:absolute;inset:0;pointer-events:none;opacity:.28;
  background-image:
    linear-gradient(rgba(10,23,27,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,23,27,.07) 1px, transparent 1px);
  background-size:68px 68px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.75), rgba(0,0,0,.2) 70%, transparent 100%);
}
.method:after{
  content:"";
  position:absolute;
  width:440px;height:440px;border-radius:50%;
  right:-140px;top:-120px;pointer-events:none;
  border:1px solid rgba(239,107,41,.16);
  box-shadow:0 0 0 90px rgba(239,107,41,.03), 0 0 0 180px rgba(239,107,41,.015);
}
.method .section-number{color:#5f6a68}
.method h2{max-width:1100px}
.method .section-number,
.method .section-main,
.method .method-steps{position:relative;z-index:1}
.method-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-top:1px solid rgba(0,0,0,.2)}
.method-steps article{padding:30px 30px 10px 0;border-right:1px solid rgba(0,0,0,.2);min-height:290px}
.method-steps article+article{padding-left:30px}
.method-steps article:last-child{border-right:0}
.method-steps h3{font-family:"Barlow Condensed";font-size:26px;letter-spacing:.01em;margin:70px 0 14px}
.method-steps p{color:#4d5957;line-height:1.6;font-size:14px;max-width:290px}

.team{
  position:relative;overflow:hidden;isolation:isolate;
  background:
    linear-gradient(90deg, rgba(8,19,24,.96) 0%, rgba(8,19,24,.92) 34%, rgba(8,19,24,.70) 58%, rgba(8,19,24,.78) 100%),
    radial-gradient(circle at 82% 48%, rgba(239,107,41,.10), transparent 20%),
    radial-gradient(circle at 14% 18%, rgba(149,168,158,.06), transparent 18%),
    url('../img/team-consulting-bg.svg') 78% center/cover no-repeat,
    linear-gradient(180deg,#081318 0%,#0b171b 100%);
}
.team:before{
  content:"";
  position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.24;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(135deg, transparent 0 48%, rgba(239,107,41,.08) 50%, transparent 52%);
  background-size:84px 84px,84px 84px,280px 280px;
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.22) 14%, #000 62%, rgba(0,0,0,.58) 100%);
}
.team:after{
  content:"V";position:absolute;right:-4vw;bottom:-18vw;font-family:"Barlow Condensed";
  font-size:55vw;font-weight:800;color:rgba(255,255,255,.018);line-height:1;pointer-events:none
}
.team .section-number,
.team .section-main,
.team .team-copy,
.team .team-tags{position:relative;z-index:1}
.team-copy{position:relative;z-index:1}
.team-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:62px;position:relative;z-index:1}
.team-tags span{
  border:1px solid var(--line);padding:13px 15px;font-family:"Barlow Condensed";font-size:12px;font-weight:700;letter-spacing:.11em
}

.contact-section{
  min-height:75vh;padding:clamp(75px,9vw,135px) clamp(20px,7vw,110px);
  display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;isolation:isolate;
  background:
    linear-gradient(90deg, rgba(5,13,16,.96) 0%, rgba(5,13,16,.90) 34%, rgba(5,13,16,.68) 60%, rgba(5,13,16,.82) 100%),
    radial-gradient(circle at 86% 16%, rgba(239,107,41,.10), transparent 16%),
    radial-gradient(circle at 18% 78%, rgba(149,168,158,.06), transparent 18%),
    url('../img/contact-communications-bg.svg') 72% center/cover no-repeat,
    linear-gradient(180deg,#050d10 0%,#071114 100%)
}
.contact-section > *{position:relative;z-index:2}
.contact-section:before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.22;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:90px 90px;
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.3) 20%, #000 70%, rgba(0,0,0,.6) 100%);
}
.contact-section:after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:
    linear-gradient(180deg, rgba(5,13,16,.16) 0%, rgba(5,13,16,.04) 28%, rgba(5,13,16,.12) 100%),
    linear-gradient(90deg, rgba(5,13,16,.06) 0%, transparent 34%, rgba(239,107,41,.035) 72%, rgba(5,13,16,.18) 100%);
}
.contact-section .contact-topline:after{
  content:"";
  position:absolute;
  right:-120px;
  top:-30px;
  width:420px;height:420px;border:1px solid rgba(239,107,41,.16);border-radius:50%;
  box-shadow:0 0 0 80px rgba(239,107,41,.02),0 0 0 160px rgba(239,107,41,.012);
  pointer-events:none;
  z-index:-1;
}
.contact-topline{color:#718080;font-size:12px;margin-bottom:70px}
.contact-kicker{font-size:12px;color:#899797}
.contact-section h2{max-width:1100px;margin-top:20px}
.contact-email{
  width:max-content;max-width:100%;margin-top:65px;font-family:"Barlow Condensed";font-size:clamp(28px,4.1vw,64px);
  font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:10px
}
.contact-email span{color:var(--orange)}
.contact-location{margin-top:35px;color:#879594;font-family:"Barlow Condensed";font-size:12px;letter-spacing:.15em}
.site-footer{
  min-height:120px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;
  padding:25px clamp(20px,7vw,110px);color:#788787;font-size:11px;
  background:
    linear-gradient(180deg,#060f12 0%,#040b0e 100%);
}
.footer-brand{font-family:"Barlow Condensed";font-size:18px;font-weight:800;letter-spacing:.15em;color:#dce1df}
.site-footer p{text-align:center}
.site-footer a{text-align:right;text-decoration:none}

@media (min-width:981px) and (max-width:1450px){
  .hero{
    padding-left:clamp(46px,6vw,86px);
    padding-right:clamp(46px,6vw,86px);
  }
  .hero-content{
    width:min(760px,58vw);
    max-width:58vw;
  }
  .hero h1{
    max-width:100%;
    font-size:clamp(58px,7vw,108px);
    line-height:.80;
  }
  .hero-copy{
    max-width:540px;
  }
  .hero-vantage-logo{
    right:clamp(28px,3vw,52px);
    top:45%;
    width:min(400px,28vw);
    opacity:.76;
  }
}
@media (min-width:981px) and (max-width:1160px){
  .hero-content{
    width:55vw;
    max-width:55vw;
  }
  .hero h1{
    font-size:clamp(56px,6.6vw,82px);
    line-height:.82;
  }
  .hero-copy{
    max-width:500px;
    margin-top:36px;
  }
  .hero-vantage-logo{
    right:24px;
    width:25vw;
    top:46%;
    opacity:.70;
  }
}
@media (max-width:980px){
  :root{--header-h:70px}
  .brand-vantage{width:200px}
  .main-nav,.contact-link{display:none}
  .menu-toggle{display:block}
  .main-nav.open{
    display:flex;position:fixed;left:0;right:0;top:var(--header-h);height:calc(100vh - var(--header-h));
    flex-direction:column;align-items:flex-start;padding:40px 24px;background:#071014;z-index:45
  }
  .main-nav.open a{font-size:28px}
  .hero{
    min-height:900px;
    padding-top:calc(var(--header-h) + 54px);
    align-items:flex-start;
  }
  .hero-content{
    width:100%;
    max-width:760px;
    padding-top:44px;
  }
  .hero-map{inset:18% -32% 0 20%;opacity:.48}
  .hero-vantage-logo{display:none}
  .hero-vantage-logo-inline{
    display:block;
    width:min(420px,62vw);
    margin:36px 0 0;
    opacity:.92;
  }
  .hero h1{
    max-width:720px;
    font-size:clamp(58px,11vw,98px);
  }
  .hero-copy{
    max-width:560px;
    margin-top:48px;
  }
  .hero-actions{margin-top:30px}
  .hero-corner{display:none}
  .hero-meta{left:20px;right:20px;gap:18px;justify-content:space-between}
  .hero-meta span:nth-child(2){display:none}
  .section{grid-template-columns:1fr;gap:34px}
  .section-heading{grid-template-columns:1fr}
  .service-grid{grid-template-columns:1fr}
  .service-panel{padding-right:0}
  .service-panel+ .service-panel{border-left:0;border-top:1px solid var(--line);padding-left:0}
  .method-steps{grid-template-columns:1fr}
  .method-steps article,.method-steps article+article{padding:28px 0;border-right:0;border-bottom:1px solid rgba(0,0,0,.2);min-height:auto}
  .method-steps h3{margin-top:35px}
}
@media (max-width:680px){
  .site-header{padding:0 16px}
  .section-intro{
    background-position:center center, center center, 68% 54%, 82% 28%, center center;
  }
  .section-intro:after{
    background-size:52px 52px;
    opacity:.22;
  }
  .contact-section{
    background-position:center center, 86% 16%, 18% 78%, 78% center, center center;
  }
  .contact-section .contact-topline:after{
    right:-200px;
    top:-10px;
    width:360px;
    height:360px;
  }
  .brand-vantage{width:180px}
  .lang-switch{padding-left:8px}
  .hero{
    min-height:930px;
    padding-left:18px;
    padding-right:18px;
    padding-top:calc(var(--header-h) + 38px);
  }
  .hero-content{
    width:100%;
    padding-top:22px;
  }
  .hero-map{inset:28% -52% 5% -8%;background-size:cover;opacity:.34}
  .hero-vantage-logo{display:none}
  .hero-vantage-logo-inline{
    display:block;
    width:min(310px,78vw);
    margin:32px 0 0;
    opacity:.94;
  }
  .hero-grid{background-size:52px 52px}
  .hero h1{
    max-width:100%;
    font-size:clamp(50px,15vw,78px);
    line-height:.84;
  }
  .hero-copy{
    max-width:100%;
    font-size:15px;
    margin-top:52px;
  }
  .hero-actions{flex-direction:column;align-items:stretch;margin-top:28px}
  .button{width:100%;justify-content:space-between}
  .hero-meta{font-size:9px}
  .section{padding:68px 18px}
  .section h2,.contact-section h2{font-size:clamp(46px,14vw,72px)}
  .pillars{grid-template-columns:1fr;margin-top:52px}
  .pillars article{min-height:95px;border-right:0;border-bottom:1px solid var(--line);padding:18px 0}
  .business-list p{align-items:flex-start;flex-direction:column;gap:5px}
  .business-list small{text-align:left}
  .service-heading-row h3{font-size:54px}
  .contact-section{padding-left:18px;padding-right:18px}
  .contact-topline{margin-bottom:45px}
  .contact-email{font-size:8vw}
  .team{background-position:center center, 82% 48%, 14% 18%, 74% center, center center}
  .site-footer{grid-template-columns:1fr;gap:11px;text-align:left;padding:30px 18px}
  .site-footer p,.site-footer a{text-align:left;margin:0}
}
@media (max-width:680px){
  .section-intro{
    background-position:center center, center center, 68% center, 78% 26%, center center;
  }
  .services:before,
  .services:after{
    width:128vw;
    right:-56vw;
    top:18%;
    opacity:.72;
  }
  .services .section-heading:after{
    right:6%;
    top:-18px;
  }
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-scan,.services:after,.services .section-heading:after{animation:none;display:none}
  *{transition:none!important}
}
