
:root {
  --bg:      #f7f5f2;
  --bg-pink: #f3d6d1;
  --white:   #ffffff;
  --ink:     #1a1614;
  --ink-mid: #3d3530;
  --muted:   #8a8278;
  --gold:    #b8955a;
  --gold-lt: #d4b07a;
  --blush:   #e8c4be;
  --border:  rgba(26,22,20,0.09);
  --serif:   'Playfair Display', Georgia, serif;
  --sans:    'Manrope', sans-serif;
  --ease:    cubic-bezier(0.25,0.46,0.45,0.94);
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:84px; }
body {
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:400;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
::-webkit-scrollbar { width:3px; }
::-webkit-scrollbar-thumb { background:var(--gold); border-radius:2px; }

nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  display:flex; align-items:center; justify-content:flex-start;
  padding:1rem 8%;
  background:rgba(247,245,242,0.96);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  transition:padding .3s var(--ease), box-shadow .3s;
}
nav.scrolled { padding:.72rem 8%; box-shadow:0 2px 28px rgba(0,0,0,0.055); }
.nav-logo { text-decoration:none; display:inline-flex; align-items:center; flex-shrink:0; }
.nav-logo img { height:46px; width:auto; display:block; }
.nav-right {
  margin-left:auto;
  display:flex; align-items:center; justify-content:flex-end;
  gap:0; min-width:0; flex:1;
}
.nav-links { display:flex; gap:2.35rem; list-style:none; justify-content:flex-end; margin-left:auto; }
.nav-links a {
  font-size:.71rem; font-weight:500;
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--ink-mid); text-decoration:none; transition:color .2s;
}
.nav-links a:hover { color:var(--gold); }
.nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; margin-left:1rem; }
.nav-hamburger span { display:block; width:22px; height:1.5px; background:var(--ink); transition:all .3s; }
body.menu-open { overflow:hidden; }

.nav-mobile-shell {
  margin-left:auto;
  flex:1;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
@media(max-width:1024px) {
  .nav-mobile-shell {
    flex:0 0 auto;
    display:block;
    margin-left:auto;
  }
  .nav-mobile-shell > .nav-right {
    display:none;
    position:fixed;
    top:68px;
    left:0;
    right:0;
    background:rgb(247,245,242);
    padding:1.4rem 6% 1.7rem;
    border-bottom:1px solid var(--border);
    z-index:199;
    box-shadow:0 18px 36px rgba(26,22,20,.05);
  }
  }
@media(min-width:1025px) {
  .nav-mobile-shell { flex:1; }
  .nav-mobile-shell > .nav-right {
    display:block !important;
    position:static;
    padding:0;
    border:0;
    box-shadow:none;
    background:transparent;
  }
}

#hero {
  min-height:100vh;
  display:grid; grid-template-columns:52% 48%;
  padding-top:72px; overflow:hidden;
  position:relative;
}
.hero-left {
  display:flex; flex-direction:column; justify-content:center;
  padding:7% 5% 7% 8%; position:relative; z-index:2;
}
.hero-eyebrow {
  display:flex; align-items:center; gap:1rem;
  font-size:.69rem; font-weight:500;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold); margin-bottom:2rem;
}
.hero-eyebrow::before {
  content:''; display:block;
  width:32px; height:1px; background:var(--gold); flex-shrink:0;
}
.hero-h1 {
  font-family:var(--serif);
  font-size:clamp(2.4rem,3.8vw,4.8rem);
  font-weight:400; line-height:1.1; letter-spacing:-.01em;
  margin-bottom:1.6rem;
}
.hero-h1 em { font-style:italic; color:var(--gold); }

.hero-h1 em { font-style:italic; color:var(--gold); }
.contact-h1 { max-width:18ch; }
.contact-h1 em { white-space:nowrap; font-style:italic; color:var(--gold); }
.hero-sub {
  font-size:.96rem; line-height:1.88;
  color:var(--muted); max-width:450px;
  margin-bottom:2.8rem; font-weight:300;
}
.hero-actions { display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap; }
.btn-fill {
  display:inline-block; padding:.9rem 2.2rem;
  background:var(--ink); color:var(--white);
  font-size:.71rem; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase;
  text-decoration:none; transition:all .25s var(--ease);
  border:1px solid var(--ink);
}
.btn-fill:hover { background:var(--gold); border-color:var(--gold); }
.btn-line {
  display:inline-block; padding:.9rem 2.2rem;
  border:1px solid rgba(26,22,20,.35); color:var(--ink);
  font-size:.71rem; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase;
  text-decoration:none; transition:all .25s var(--ease);
}
.btn-line:hover { border-color:var(--gold); color:var(--gold); }
.hero-proof {
  display:flex; gap:0; margin-top:3rem;
  padding-top:2rem; border-top:1px solid var(--border);
}
.hero-proof-item {
  padding-right:2rem; margin-right:2rem;
  border-right:1px solid var(--border);
}
.hero-proof-item:last-child { border-right:none; margin-right:0; padding-right:0; }
.hero-proof-num {
  font-family:var(--serif); font-size:1.75rem;
  font-weight:400; line-height:1;
}
.hero-proof-label {
  font-size:.62rem; font-weight:500;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); margin-top:.3rem;
}

.hero-right {
  position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.hero-sketch-wrap {
  width:100%; height:100%;
  display:flex; align-items:center; justify-content:center;
  padding:0;
  position:relative;
}
.hero-visual-image {
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  display:block;
  position:relative;
  z-index:1;
  transform:translate3d(0,0,0) scale(1);
  filter:brightness(1) saturate(1);
  transition:transform 1.15s cubic-bezier(.22,.61,.36,1), filter 1.15s cubic-bezier(.22,.61,.36,1);
  will-change:transform, filter;
}
.hero-sketch-wrap:hover .hero-visual-image,
.hero-sketch-wrap:focus-within .hero-visual-image {
  animation:heroLiquidFloat 3.4s ease-in-out infinite;
}
@keyframes heroLiquidFloat {
  0% {
    transform:translate3d(0,0,0) scale(1);
    filter:brightness(1) saturate(1);
  }
  25% {
    transform:translate3d(.2%, -.45%, 0) scale(1.006) rotate(-.18deg);
    filter:brightness(1.01) saturate(1.01);
  }
  50% {
    transform:translate3d(-.18%, -.7%, 0) scale(1.009) rotate(.14deg);
    filter:brightness(1.012) saturate(1.015);
  }
  75% {
    transform:translate3d(.12%, -.38%, 0) scale(1.005) rotate(-.1deg);
    filter:brightness(1.008) saturate(1.01);
  }
  100% {
    transform:translate3d(0,0,0) scale(1);
    filter:brightness(1) saturate(1);
  }
}

.ticker {
  background:var(--ink); color:var(--white);
  padding:.72rem 0; overflow:hidden; white-space:nowrap;
}
.ticker-inner {
  display:inline-flex;
  animation:ticker-scroll 32s linear infinite;
}
.ticker-item {
  font-size:.69rem; font-weight:500;
  letter-spacing:.16em; text-transform:uppercase; padding:0 2.5rem;
}
.ticker-dot { font-size:.4rem; color:var(--gold); align-self:center; flex-shrink:0; }
@keyframes ticker-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

section { padding:6.5rem 8%; scroll-margin-top:84px; }
#about, #services, #vision, #reach, #testimonials, #contact { scroll-margin-top:84px; }
.section-tag {
  display:flex; align-items:center; gap:.8rem;
  font-size:.67rem; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold); margin-bottom:1.2rem;
}
.section-tag::after { content:''; display:block; width:26px; height:1px; background:var(--gold); }
h2.display {
  font-family:var(--serif);
  font-size:clamp(2rem,3.2vw,3.3rem);
  font-weight:400; line-height:1.15; margin-bottom:1.4rem;
}
h2.display em { font-style:italic; color:var(--gold); }
.rule { width:44px; height:1px; background:var(--gold); margin:1.5rem 0; }

#about {
  background:var(--white);
  display:grid; grid-template-columns:1fr 1fr;
  gap:5rem; align-items:start;
}
.about-body p {
  font-size:.94rem; line-height:1.92;
  color:var(--ink-mid); margin-bottom:1rem; font-weight:300;
}
.about-4c-title {
  font-size:.67rem; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold); margin-bottom:1.2rem;
}
.c-row {
  display:flex; align-items:baseline; gap:1rem;
  padding:.8rem 0; border-bottom:1px solid var(--border);
}
.c-row:last-child { border-bottom:none; }
.c-key {
  font-size:.67rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--ink); min-width:104px; flex-shrink:0;
}
.c-first { color:var(--gold); font-weight:800; }
.c-val {
  font-size:.84rem; line-height:1.62; color:var(--ink-mid); font-weight:300;
  white-space:normal;
}

.about-vis-card {
  background:var(--bg-pink); padding:2.8rem;
  position:relative; overflow:hidden; margin-bottom:0;
}
.about-vis-card svg.card-deco {
  position:absolute; bottom:-20px; right:-20px;
  width:120px; height:120px; opacity:.18;
}
.about-cats {
  display:flex; gap:0; margin-bottom:1.05rem;
  position:relative; z-index:1;
}
.about-cat {
  flex:1; border:1px solid rgba(26,22,20,.12);
  padding:1.35rem 1.1rem 1.15rem; text-align:center; background:rgba(247,245,242,.46);
}
.about-cat + .about-cat { border-left:0; }
.about-cat-media {
  height: 126px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  margin-bottom:.62rem;
}
.about-cat-media img {
  max-width:100%;
  height:auto;
  object-fit:contain;
  object-position:center bottom;
  display:block;
}
.about-cat:first-child .about-cat-media img { width: 88px; transform: translateY(0); }
.about-cat:last-child .about-cat-media img { width: 82px; transform: translateY(2px); }
.about-cat-title {
  font-family:var(--serif); font-size:1.05rem;
  font-weight:400; font-style:italic;
  color:var(--ink); line-height:1; margin-bottom:.35rem;
}
.about-cat-sub {
  font-size:.6rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted);
}
.about-quote {
  font-family:var(--serif); font-size:1.4rem;
  font-weight:400; font-style:italic;
  line-height:1.45; margin-bottom:1.2rem;
  color:var(--ink); position:relative; z-index:1;
}
.about-attr {
  font-size:.67rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--gold); position:relative; z-index:1;
}
.about-side-4c {
  background:var(--bg);
  margin-top:0;
  padding:1.7rem 2.8rem 1.55rem;
  border-top:0;
  border-left:1px solid var(--border);
  border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.about-side-4c .about-4c-title { margin-bottom:.7rem; }
.about-side-4c .c-row { padding:.88rem 0; }
.about-side-4c .c-key { min-width:112px; }

#vision {
  background:var(--ink); color:var(--white);
  text-align:center; padding:5.8rem 8%;
  position:relative; overflow:hidden;
}
#vision::before {
  content:'';
  position:absolute; inset:0;
  background: radial-gradient(ellipse at 50% 100%, rgba(184,149,90,.08) 0%, transparent 65%);
  pointer-events:none;
}
#vision .section-tag { justify-content:center; color:var(--gold); }
#vision .section-tag::after { background:var(--gold); }
#vision h2.display { color:var(--white); max-width:760px; margin-left:auto; margin-right:auto; }
#vision h2.display em { color:var(--gold-lt); }
.vision-body {
  font-family:var(--serif);
  font-size:clamp(1.02rem,1.55vw,1.32rem);
  font-weight:400; font-style:italic;
  color:rgba(247,245,242,.62);
  max-width:700px; margin:1.5rem auto 0; line-height:1.74;
}

#services { background:var(--bg); }
.services-intro { max-width:760px; margin-bottom:4rem; }
.services-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0; background:transparent;
  border-top:1px solid rgba(184,149,90,.18);
  border-left:0;
  border-right:0;
  border-bottom:1px solid rgba(184,149,90,.18);
}
.services-grid .svc:nth-child(3n) { border-right:none; }
.svc { background:var(--bg); padding:2.15rem 1.15rem 1.95rem;
  position:relative; overflow:hidden;
  transition:background .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
  border-top:1px solid rgba(184,149,90,.14);
  border-bottom:1px solid rgba(184,149,90,.14);
  border-right:1px solid rgba(184,149,90,.12);
  min-height:224px;
}
.svc::before {
  content:''; position:absolute; top:0; left:0; right:0;
  height:1px; background:rgba(184,149,90,.14);
}
.svc::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:2px; background:var(--gold);
  transform:scaleX(0); transform-origin:left;
  transition:transform .35s var(--ease);
}
.svc:hover { background:var(--white); transform:translateY(-4px); box-shadow:0 18px 42px rgba(26,22,20,.05); }
.svc:hover::after { transform:scaleX(1); }
.svc-num {
  font-family:var(--serif); font-size:2.35rem;
  font-weight:400; color:rgba(184,149,90,0.42);
  line-height:1; margin-bottom:1.15rem; transition:color .3s;
}
.svc:hover .svc-num { color:rgba(184,149,90,0.42); }
.svc-title { font-family:var(--serif); font-size:1.12rem; font-weight:500; margin-bottom:.9rem; line-height:1.2; max-width:none; white-space:nowrap; letter-spacing:-0.01em; color:var(--ink); }
.svc-desc { font-size:.86rem; line-height:1.72; color:var(--muted); font-weight:300; max-width:none; width:100%; white-space:normal; word-break:normal; overflow-wrap:normal; text-wrap:auto; hyphens:none; }
.services-grid .svc-desc br { display:none; }

#reach {
  background:var(--bg-pink);
  display:grid; grid-template-columns:1fr 1fr;
  gap:5rem; align-items:center;
}
.reach-body p { font-size:.92rem; line-height:1.9; color:var(--ink-mid); font-weight:300; margin-bottom:1rem; }
.channel-list { margin-top:1.5rem; max-width:540px; }
.ch {
  display:grid; grid-template-columns:10px 150px 14px minmax(0,210px); align-items:center; column-gap:.35rem;
  padding:.82rem 0; border-bottom:1px solid rgba(184,149,90,.2);
  font-size:.87rem; color:var(--ink-mid); font-weight:300;
}
.ch-dot { width:5px; height:5px; border-radius:50%; background:var(--gold); flex-shrink:0; }
.ch-left { font-weight:500; color:var(--ink-mid); }
.ch-sep { color:rgba(184,149,90,.9); font-weight:500; }
.ch-right { color:var(--ink-mid); }
.reach-globe-wrap svg { width:100%; height:auto; }
#contact > .reveal:last-child { justify-self:stretch; }
.reach-tags {
  display:flex; flex-wrap:wrap; gap:.5rem;
  margin-top:1.5rem; justify-content:center;
}
.reach-tag {
  font-size:.64rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase;
  padding:.38rem .9rem;
  background:rgba(247,245,242,.7); color:var(--ink);
  border:1px solid rgba(184,149,90,.3);
}

#testimonials { background:var(--white); text-align:center; }
#testimonials h2.display { max-width:620px; margin:0 auto 3.7rem; }
.testi-grid {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:1.5rem; text-align:left;
}
.testi {
  background:linear-gradient(180deg, rgba(243,214,209,.18), rgba(247,245,242,.82));
  padding:2.75rem 2.35rem 2.2rem;
  border:1px solid rgba(26,22,20,.06);
  border-top:2px solid rgba(184,149,90,.28);
  min-height:272px;
  transition:border-color .3s, transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease);
}
.testi:hover { border-color:rgba(184,149,90,.46); transform:translateY(-4px); box-shadow:0 16px 38px rgba(26,22,20,.05); }
.testi-qmark {
  font-family:var(--serif); font-size:3.4rem;
  line-height:.72; color:var(--gold); display:block; margin-bottom:1.05rem;
}
.testi-text {
  font-size:.87rem; line-height:1.9;
  color:var(--ink-mid); font-style:normal; font-weight:300; margin-bottom:1.55rem;
}
.testi-author { font-size:.66rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:var(--gold); }

#contact {
  background:var(--bg);
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);
  gap:3rem; align-items:start;
}
#contact > .reveal:first-child { max-width:620px; }
.contact-desc { font-size:.92rem; line-height:1.92; color:var(--muted); font-weight:300; margin-bottom:0; max-width:470px; }

.contact-card {
  background:linear-gradient(180deg, rgba(255,252,250,.98), rgba(247,245,242,.92));
  border:1px solid rgba(26,22,20,.08);
  box-shadow:0 18px 44px rgba(26,22,20,.05);
  padding:2.5rem 2.9rem 2.35rem;
  position:relative;
  max-width:580px;
  width:100%;
  margin-left:auto;
  overflow:hidden;
}
.contact-card::after { content:''; position:absolute; right:-44px; top:18px; width:130px; height:130px; border-radius:50%; border:1px solid rgba(184,149,90,.12); opacity:.55; }
.contact-card::before {
  content:''; position:absolute; top:0; left:0; right:0;
  height:2px; background:linear-gradient(90deg, rgba(184,149,90,.45), rgba(184,149,90,.08));
}
.contact-card-tag {
  font-size:.67rem; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold); margin-bottom:1rem;
}
.contact-card-tag::after{
  content:''; display:block; width:38px; height:1px; background:rgba(184,149,90,.45); margin-top:.8rem;
}
.contact-name { font-family:var(--serif); font-size:1.08rem; font-weight:500; line-height:1.2; color:var(--ink); margin-bottom:1rem; }
.contact-role {
  font-size:.93rem; color:var(--muted);
  font-weight:300; margin-bottom:2rem;
}
.contact-accent-line { display:none; }
 .contact-email-link {
  display:inline-flex; align-items:center; gap:.8rem;
  font-size:1rem; color:var(--ink);
  text-decoration:none; border-bottom:1px solid rgba(26,22,20,.55);
  padding-bottom:.45rem; transition:color .2s, border-color .2s;
}
.contact-email-link:hover { color:var(--gold); border-color:var(--gold); }
.contact-email-arrow {
  font-size:1.25rem; line-height:1; transform:translateY(-1px);
}

footer {
  background:var(--ink); color:rgba(247,245,242,.92);
  display:flex; justify-content:center; align-items:center;
  flex-wrap:wrap; gap:1rem; padding:.72rem 8%;
  min-height:42px;
  font-size:.69rem; letter-spacing:.16em; text-transform:uppercase;
}
footer a { color:inherit; text-decoration:none; transition:color .2s; }
footer a:hover { color:var(--gold-lt); }

footer small { font-size:inherit; letter-spacing:inherit; text-transform:inherit; }

.reveal { opacity:1; transform:none; transition:opacity .75s var(--ease), transform .75s var(--ease); }
.reveal-d1 { transition-delay:.12s; }
.reveal-d2 { transition-delay:.24s; }

@keyframes fadeUp {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:none; }
}
.hero-left > * { animation:fadeUp .9s var(--ease) both; }
.hero-left > *:nth-child(1) { animation-delay:.1s; }
.hero-left > *:nth-child(2) { animation-delay:.24s; }
.hero-left > *:nth-child(3) { animation-delay:.38s; }
.hero-left > *:nth-child(4) { animation-delay:.52s; }
.hero-left > *:nth-child(5) { animation-delay:.64s; }
.hero-right { animation:fadeUp 1.1s .18s var(--ease) both; }

@media(max-width:1024px) {
  html { scroll-padding-top:82px; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .nav-right .nav-links { display:flex; flex-direction:column; gap:1.25rem; align-items:flex-start; margin-left:0; }
  .nav-right .nav-links a { font-size:.8rem; }
  .nav-hamburger { display:flex; margin-left:auto; }
  #about,#contact,#reach { gap:2.5rem; }
  .reach-body { max-width:none; }
}
@media(max-width:768px) {
  html { scroll-padding-top:80px; }
  section { padding:4.6rem 6%; }
  #hero { grid-template-columns:1fr; min-height:auto; padding-top:56px; }
  .hero-left { padding:5.25rem 4.8% 2.4rem 4.8%; }
  .hero-right { min-height:72vw; order:2; padding-top:0; }
  .hero-eyebrow { margin-bottom:1.35rem; }
  .hero-h1 { font-size:clamp(2.55rem,9.6vw,3.55rem); max-width:12.5ch; line-height:1.06; }
  .hero-sub { max-width:42ch; font-size:.97rem; line-height:1.82; margin-bottom:2rem; }
  .hero-actions { gap:.85rem; }
  .hero-actions .btn-fill, .hero-actions .btn-line { padding:.82rem 1.35rem; }
  .hero-proof { margin-top:2.1rem; padding-top:1.35rem; display:grid; grid-template-columns:repeat(3,1fr); gap:.85rem; }
  .hero-proof-item { border-right:none; margin-right:0; padding-right:0; min-width:0; }
  .hero-proof-num { font-size:1.42rem; }
  .hero-proof-label { font-size:.58rem; line-height:1.4; }
  #about,#reach,#contact { grid-template-columns:1fr; gap:2.4rem; }
  .about-cats { display:grid; grid-template-columns:1fr 1fr; }
  .about-cat { min-width:0; padding:1.15rem .8rem 1.05rem; }
  .about-cat-media {
    height: 112px !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    margin-bottom:.45rem !important;
  }
  .about-side-4c .c-row { grid-template-columns:90px 1fr; align-items:start; }
  .services-intro { margin-bottom:2.5rem; }
  .services-grid { grid-template-columns:1fr; border-top:1px solid rgba(184,149,90,.2); }
  .svc { min-height: 228px; padding: 2.3rem 1.25rem 2.05rem; border-right:none; }
  .svc-title { font-family:var(--serif); font-size:1.12rem; font-weight:500; margin-bottom:.9rem; line-height:1.2; max-width:none; white-space:nowrap; letter-spacing:-0.01em; color:var(--ink); }
  .svc-desc { font-size:.86rem; line-height:1.72; color:var(--muted); font-weight:300; max-width:none; width:100%; white-space:normal; word-break:normal; overflow-wrap:normal; text-wrap:auto; hyphens:none; }
.services-grid .svc-desc br { display:none; }

  .testi-grid { grid-template-columns:1fr; gap:1rem; }
  .testi { min-height:auto; padding:2rem 1.5rem 1.65rem; }
  .ch { grid-template-columns:10px 132px 12px minmax(0,1fr); column-gap:.25rem; }
  .reach-tags { justify-content:flex-start; }
  .contact-h1 { max-width:none; }
  .contact-desc { max-width:none; }
  .contact-card { margin-left:0; max-width:none; padding:2.15rem 1.55rem 1.95rem; }
  .contact-card::after { right:-24px; top:24px; width:96px; height:96px; }
  footer { flex-direction:column; text-align:center; }
}
  .about-cat:first-child .about-cat-media img {
    width: 72px !important;
    height: auto !important;
    transform: translateY(0) !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 67px !important;
    height: auto !important;
    transform: translateY(2px) !important;
  }

@media(max-width:480px) {
  section { padding:4rem 5.2%; }
  nav { padding:.85rem 5.2%; }
  .nav-logo img { height:38px; }
  .hero-right { min-height:88vw; }
  .hero-h1 { font-size:1.95rem; }
  .hero-sub { font-size:.89rem; }
  .hero-proof { gap:.6rem; }
  .hero-proof-label { letter-spacing:.08em; }
  .about-cats { grid-template-columns:1fr 1fr; }
  .about-cat-media { height:78px; }
  .about-cat:first-child .about-cat-media img { width:72px; height:88px; }
  .about-cat:last-child .about-cat-media img { width:84px; height:78px; transform:translate(3px, 2.3px); }
  .about-side-4c { padding:1.4rem 1rem; }
  .about-side-4c .c-row { grid-template-columns:1fr; gap:.28rem; }
  .ch { grid-template-columns:8px 118px 10px minmax(0,1fr); font-size:.81rem; }
  .reach-tags { gap:.42rem; }
  .reach-tag { font-size:.6rem; padding:.35rem .7rem; }
  .contact-card-tag::after { width:28px; }
}

@media (max-width: 768px) {
  nav { padding: .9rem 1.1rem; }
  #hero {
    padding-top: 56px !important;
    min-height: auto !important;
  }
  .hero-left {
    padding-top: 2.1rem !important;
  }
  .hero-right {
    padding-top: .6rem !important;
  }

  html { scroll-padding-top: 72px; }
  #about, #services, #vision, #reach, #testimonials, #contact { scroll-margin-top: 72px !important; }

  .about-cat-media {
    height: 90px !important;
    margin-bottom: .75rem !important;
  }
  .about-cat:first-child .about-cat-media img {
    width: 82px !important;
    height: 100px !important;
    transform: translateY(0px) !important;
  }
  .about-cat:last-child .about-cat-media img {
    width: 78px !important;
    height: 72px !important;
    transform: translate(2px, -3px) !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .svc { padding: 2.15rem 1.05rem 1.95rem; }
  .svc-desc { font-size:.86rem; line-height:1.72; color:var(--muted); font-weight:300; max-width:none; width:100%; white-space:normal; word-break:normal; overflow-wrap:normal; text-wrap:auto; hyphens:none; }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .about-cat-media {
    height: 118px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    margin-bottom:.55rem;
  }
  .about-cat:first-child .about-cat-media img {
    width: 84px;
    height: auto;
    transform: translateY(0);
  }
  .about-cat:last-child .about-cat-media img {
    width: 78px;
    height: auto;
    transform: translateY(2px);
  }
}

.about-cats {
  margin-bottom: 1.45rem !important;
}

.about-cat {
  padding: .95rem 1.1rem 1.2rem !important;
}

.about-cat-media {
  height: 92px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  margin-bottom: 1.02rem !important;
}

.about-cat-media img {
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  display: block !important;
}

.about-cat:first-child .about-cat-media img {
  width: 72px !important;
  transform: translateY(0) !important;
}

.about-cat:last-child .about-cat-media img {
  width: 78px !important;
  transform: translateY(3px) !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .about-cats {
    margin-bottom: 1.3rem !important;
  }

  .about-cat {
    padding: .9rem .95rem 1.1rem !important;
  }

  .about-cat-media {
    height: 88px !important;
    margin-bottom: .92rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 72px !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 67px !important;
    transform: translateY(3px) !important;
  }
}

@media (max-width: 768px) {
  .about-cats {
    margin-bottom: 1.12rem !important;
  }

  .about-cat {
    padding: .82rem .7rem .98rem !important;
  }

  .about-cat-media {
    height: 78px !important;
    margin-bottom: .7rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 68px !important;
    transform: translateY(0) !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 62px !important;
    transform: translateY(2px) !important;
  }
}

.about-cats {
  margin-bottom: 1.55rem !important;
}

.about-cat {
  padding: .95rem 1.1rem 1.15rem !important;
}

.about-cat-media {
  height: 98px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  margin-bottom: 1.08rem !important;
}

.about-cat-media img {
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  display: block !important;
}

.about-cat:first-child .about-cat-media img {
  width: 72px !important;
  transform: translateY(0) !important;
}

.about-cat:last-child .about-cat-media img {
  width: 67px !important;
  transform: translateY(0px) !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .about-cats {
    margin-bottom: 1.42rem !important;
  }

  .about-cat {
    padding: .9rem .95rem 1.08rem !important;
  }

  .about-cat-media {
    height: 94px !important;
    margin-bottom: .98rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 68px !important;
    transform: translateY(0) !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 63px !important;
    transform: translateY(1px) !important;
  }
}

@media (max-width: 768px) {
  .about-cats {
    margin-bottom: 1.2rem !important;
  }

  .about-cat {
    padding: .85rem .72rem 1rem !important;
  }

  .about-cat-media {
    height: 84px !important;
    margin-bottom: .82rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 68px !important;
    transform: translateY(0) !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 53px !important;
    transform: translateY(1px) !important;
  }
}

#reach {
  align-items: stretch !important;
}

.reach-globe-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  min-height: 100%;
  width: 100%;
  padding-top: .15rem;
}

.reach-globe-wrap svg {
  width: min(100%, 560px);
  height: auto;
  display: block;
  flex: 0 0 auto;
}

.reach-tags {
  margin-top: auto !important;
  padding-top: 1.35rem;
  justify-content: center;
  align-self: stretch;
}

@media (max-width: 1024px) and (min-width: 769px) {
  #reach {
    align-items: start !important;
    gap: 3.1rem;
  }

  .reach-globe-wrap {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
    padding-top: .35rem;
  }

  .reach-globe-wrap svg {
    width: min(100%, 620px);
    height: auto;
  }

  .reach-globe-wrap svg text {
    font-size: 8.9px !important;
  }

  .reach-tags {
    margin-top: .95rem !important;
    padding-top: 0;
    gap: .46rem;
  }

  .reach-tag {
    font-size: .68rem;
    padding: .42rem .88rem;
  }
}

@media (max-width: 768px) {
  #reach {
    align-items: start !important;
    gap: 2rem;
  }

  .reach-globe-wrap {
    width: 100%;
    max-width: 100%;
    margin: .15rem auto 0;
    padding-top: .2rem;
  }

  .reach-globe-wrap svg {
    width: 100%;
    max-width: 560px;
    height: auto;
  }

  .reach-globe-wrap svg text {
    font-size: 9.8px !important;
  }

  .reach-tags {
    margin-top: .82rem !important;
    padding-top: 0;
    gap: .42rem;
    justify-content: center;
  }

  .reach-tag {
    font-size: .68rem;
    padding: .42rem .78rem;
  }
}

.reach-globe-wrap svg {
  width: min(100%, 680px) !important;
  max-width: 680px !important;
  height: auto !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .reach-globe-wrap {
    max-width: 700px !important;
  }

  .reach-globe-wrap svg {
    width: min(100%, 700px) !important;
    max-width: 700px !important;
    height: auto !important;
  }

  .reach-globe-wrap svg text {
    font-size: 10.2px !important;
  }
}

@media (max-width: 768px) {
  .reach-globe-wrap {
    max-width: 100% !important;
  }

  .reach-globe-wrap svg {
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    min-width: 360px !important;
    height: auto !important;
  }

  .reach-globe-wrap svg text {
    font-size: 10.8px !important;
  }
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  overflow-x: hidden;
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

section {
  overflow: clip;
}

#hero,
#about,
#vision,
#services,
#reach,
#testimonials,
#contact {
  width: 100%;
}

.hero-sub,
.about-body p,
.reach-body p,
.svc-desc,
.testi-text,
.contact-desc,
.ch-right,
.ch-left,
.c-val {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: pretty;
  hyphens: none;
}

.hero-h1,
h2.display,
.contact-h1 {
  text-wrap: balance;
}

.reach-globe-wrap {
  width: 100%;
  align-self: start;
}

.reach-globe-wrap svg {
  width: min(100%, 680px) !important;
  max-width: 680px !important;
  display: block;
  margin-inline: auto;
}

.services-grid {
  align-items: stretch;
}

.svc {
  min-width: 0;
}

.svc-title {
  white-space: normal !important;
  text-wrap: balance;
}

.svc-desc {
  width: 100% !important;
  max-width: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: pretty;
}

.testi-grid > * {
  min-width: 0;
}

.contact-card,
.contact-card * {
  min-width: 0;
}

@media (max-width: 1180px) {
  #hero,
  #about,
  #reach,
  #contact {
    gap: 3rem;
  }

  .hero-left {
    padding-right: 4%;
  }

  .hero-right {
    padding-left: 4%;
  }

  .testi-grid {
    gap: 1.15rem;
  }

  .svc {
    padding-left: 1.1rem;
    padding-right: 1.1rem;
  }

  .reach-globe-wrap svg {
    width: min(100%, 620px) !important;
    max-width: 620px !important;
  }
}

@media (max-width: 1024px) {
  section {
    padding-left: 5.5%;
    padding-right: 5.5%;
  }

  #hero,
  #about,
  #reach,
  #contact {
    grid-template-columns: 1fr;
    gap: 2.6rem;
    align-items: start;
  }

  .hero-left,
  .hero-right,
  .about-body,
  .reach-body,
  .reach-globe-wrap,
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100%;
    max-width: none;
    justify-self: stretch;
  }

  .hero-right {
    min-height: auto;
  }

  .hero-h1 {
    font-size: clamp(2.8rem, 6.6vw, 4.2rem);
    max-width: 12ch;
    line-height: 1.04;
  }

  .hero-sub {
    max-width: 56ch;
    font-size: .98rem;
    line-height: 1.78;
  }

  .hero-actions {
    flex-wrap: wrap;
  }

  .hero-proof {
    gap: 1rem;
  }

  .about-vis-card,
  .about-side-4c,
  .contact-card {
    width: 100%;
  }

  .about-cats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }

  .about-cat {
    min-width: 0;
  }

  .services-intro {
    margin-bottom: 2.35rem;
  }

  .services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .svc {
    min-height: 210px;
    padding: 2rem 1.05rem 1.9rem;
    border-right: 1px solid rgba(184,149,90,.12);
  }

  .svc-title {
    font-size: 1.08rem;
    margin-bottom: .8rem;
  }

  .svc-desc {
    font-size: .89rem !important;
    line-height: 1.7 !important;
  }

  .testi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.1rem;
  }

  .testi {
    min-height: 246px;
    padding: 2.2rem 1.7rem 1.9rem;
  }

  .channel-list {
    max-width: none;
  }

  .ch {
    grid-template-columns: 10px 140px 14px minmax(0, 1fr);
  }

  .reach-globe-wrap {
    max-width: 100%;
    margin-inline: auto;
  }

  .reach-globe-wrap svg {
    width: min(100%, 700px) !important;
    max-width: 700px !important;
  }

  .reach-globe-wrap svg text {
    font-size: 10px !important;
  }

  .reach-tags {
    justify-content: center;
    gap: .45rem;
  }

  .reach-tag {
    font-size: .68rem;
    padding: .42rem .8rem;
  }

  .contact-card {
    padding: 2rem 1.5rem 1.8rem;
  }
}

@media (max-width: 768px) {
  section {
    padding-left: 5%;
    padding-right: 5%;
  }

  nav {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  #hero {
    min-height: auto;
    padding-top: 56px !important;
  }

  .hero-left {
    padding: 2.7rem 0 2rem 0 !important;
  }

  .hero-right {
    padding: .3rem 0 0 0 !important;
    min-height: auto !important;
  }

  .hero-eyebrow {
    margin-bottom: 1.15rem;
  }

  .hero-h1 {
    font-size: clamp(2.7rem, 10vw, 3.8rem);
    max-width: 11ch;
    line-height: 1.03;
  }

  .hero-sub {
    max-width: none;
    font-size: .99rem;
    line-height: 1.85;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .8rem;
  }

  .hero-actions .btn-fill,
  .hero-actions .btn-line {
    width: 100%;
    text-align: center;
  }

  .hero-proof {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
  }

  .hero-proof-item {
    min-width: 0;
  }

  #about,
  #reach,
  #contact {
    gap: 2rem;
  }

  .about-cats {
    grid-template-columns: 1fr 1fr;
  }

  .about-cat {
    padding: .95rem .65rem 1rem !important;
  }

  .about-cat-title {
    font-size: .94rem;
  }

  .about-cat-sub {
    font-size: .68rem;
    letter-spacing: .08em;
  }

  .about-side-4c {
    padding: 1.35rem 1.05rem 1.2rem;
  }

  .about-side-4c .c-row {
    grid-template-columns: 92px 1fr;
    gap: .8rem;
  }

  .about-side-4c .c-val {
    font-size: .92rem;
    line-height: 1.7;
  }

  .services-grid {
    grid-template-columns: 1fr;
    border-top: 1px solid rgba(184,149,90,.2);
  }

  .svc {
    min-height: auto !important;
    padding: 2rem 1rem 1.8rem !important;
    border-right: none !important;
  }

  .svc-title {
    font-size: 1.08rem;
    line-height: 1.22;
    margin-bottom: .78rem;
  }

  .svc-desc {
    font-size: .94rem !important;
    line-height: 1.78 !important;
  }

  .reach-body p {
    font-size: .98rem;
    line-height: 1.82;
  }

  .channel-list {
    margin-top: 1.25rem;
  }

  .ch {
    grid-template-columns: 10px minmax(88px, 118px) 12px minmax(0, 1fr);
    column-gap: .3rem;
    font-size: .92rem;
    line-height: 1.55;
    padding: .9rem 0;
  }

  .ch-left {
    font-size: .98rem;
  }

  .ch-right {
    font-size: .95rem;
  }

  .reach-globe-wrap {
    width: 100%;
    max-width: 100%;
    margin: .15rem auto 0;
  }

  .reach-globe-wrap svg {
    width: 100% !important;
    max-width: 740px !important;
    min-width: 340px !important;
  }

  .reach-globe-wrap svg text {
    font-size: 11px !important;
  }

  .reach-tags {
    margin-top: .8rem !important;
    gap: .38rem;
  }

  .reach-tag {
    font-size: .67rem;
    padding: .42rem .72rem;
  }

  .testi-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .testi {
    min-height: auto;
    padding: 2rem 1.2rem 1.7rem;
  }

  .testi-text {
    font-size: .98rem;
    line-height: 1.8;
  }

  .contact-card {
    padding: 1.55rem 1.05rem 1.45rem;
  }

  .contact-h1 {
    font-size: clamp(2rem, 9vw, 2.7rem);
    line-height: 1.08;
  }

  .contact-desc {
    font-size: .98rem;
    line-height: 1.82;
  }

  form {
    gap: .9rem;
  }

  input,
  textarea,
  button,
  .reach-tag,
  .btn-fill,
  .btn-line {
    min-height: 44px;
  }
}

@media (max-width: 480px) {
  section {
    padding-left: 4.5%;
    padding-right: 4.5%;
  }

  .hero-h1 {
    font-size: clamp(2.45rem, 11vw, 3.2rem);
    max-width: 10.8ch;
  }

  .hero-sub,
  .about-body p,
  .reach-body p,
  .testi-text,
  .contact-desc {
    font-size: .97rem;
  }

  .hero-actions {
    grid-template-columns: 1fr;
  }

  .about-side-4c .c-row {
    grid-template-columns: 1fr;
    gap: .22rem;
  }

  .about-side-4c .c-key {
    min-width: 0;
  }

  .ch {
    grid-template-columns: 10px minmax(78px, 110px) 10px minmax(0, 1fr);
    font-size: .9rem;
  }

  .reach-globe-wrap svg {
    min-width: 0 !important;
    width: 100% !important;
  }

  .reach-globe-wrap svg text {
    font-size: 10.5px !important;
  }

  .reach-tags {
    justify-content: flex-start;
  }

  .reach-tag {
    font-size: .64rem;
    padding: .4rem .68rem;
  }

  .svc-title {
    font-size: 1.02rem;
  }

  .svc-desc {
    font-size: .92rem !important;
  }
}

.about-cat {
  padding-top: .72rem !important;
  padding-bottom: 1rem !important;
}

.about-cat-media {
  height: 84px !important;
  margin-bottom: .92rem !important;
}

.about-cat:first-child .about-cat-media img {
  width: 65px !important;
}

.about-cat:last-child .about-cat-media img {
  width: 60px !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .about-cat {
    padding-top: .68rem !important;
    padding-bottom: .95rem !important;
  }

  .about-cat-media {
    height: 78px !important;
    margin-bottom: .84rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 61px !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 57px !important;
  }
}

@media (max-width: 768px) {
  .about-cat {
    padding-top: .62rem !important;
    padding-bottom: .9rem !important;
  }

  .about-cat-media {
    height: 72px !important;
    margin-bottom: .72rem !important;
  }

  .about-cat:first-child .about-cat-media img {
    width: 57px !important;
  }

  .about-cat:last-child .about-cat-media img {
    width: 50px !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .section-tag {
    font-size: .64rem !important;
    letter-spacing: .2em !important;
    margin-bottom: 1rem !important;
  }

  h2.display {
    font-size: clamp(2.25rem, 5vw, 3rem) !important;
    line-height: 1.1 !important;
    margin-bottom: 1.15rem !important;
  }

  .rule {
    margin: 1.2rem 0 !important;
  }

  .hero-sub,
  .about-body p,
  .reach-body p,
  .contact-desc,
  .testi-text {
    font-size: .92rem !important;
    line-height: 1.78 !important;
  }

  .svc-title {
    font-size: 1.05rem !important;
  }

  .svc-desc {
    font-size: .86rem !important;
    line-height: 1.68 !important;
  }

  .about-side-4c {
    padding: 1.35rem 1.25rem 1.2rem !important;
  }

  .about-side-4c .about-4c-title {
    font-size: .62rem !important;
    letter-spacing: .18em !important;
    margin-bottom: .55rem !important;
  }

  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 88px 1fr !important;
    align-items: start !important;
    gap: .75rem !important;
    padding: .75rem 0 !important;
  }

  .about-side-4c .c-key {
    min-width: 0 !important;
    font-size: .74rem !important;
    line-height: 1.45 !important;
    letter-spacing: .11em !important;
  }

  .about-side-4c .c-val {
    font-size: .9rem !important;
    line-height: 1.72 !important;
  }

  .reach-body p {
    font-size: .9rem !important;
    line-height: 1.8 !important;
  }

  .ch {
    font-size: .85rem !important;
  }

  .ch-left {
    font-size: .9rem !important;
  }

  .ch-right {
    font-size: .88rem !important;
  }

  .reach-tag {
    font-size: .62rem !important;
    padding: .38rem .76rem !important;
  }
}

@media (max-width: 768px) {
  .section-tag {
    font-size: .6rem !important;
    letter-spacing: .18em !important;
    margin-bottom: .95rem !important;
  }

  h2.display {
    font-size: clamp(2rem, 8.1vw, 2.55rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 1rem !important;
  }

  .rule {
    margin: 1rem 0 1.15rem !important;
    width: 40px !important;
  }

  .hero-sub,
  .about-body p,
  .reach-body p,
  .contact-desc,
  .testi-text {
    font-size: .94rem !important;
    line-height: 1.78 !important;
  }

  .svc-title {
    font-size: 1.03rem !important;
    line-height: 1.2 !important;
  }

  .svc-desc {
    font-size: .9rem !important;
    line-height: 1.72 !important;
  }

  .about-side-4c {
    padding: 1.2rem .95rem 1.05rem !important;
  }

  .about-side-4c .about-4c-title {
    font-size: .6rem !important;
    letter-spacing: .17em !important;
    margin-bottom: .5rem !important;
  }

  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 74px 1fr !important;
    align-items: start !important;
    gap: .6rem !important;
    padding: .72rem 0 !important;
  }

  .about-side-4c .c-key {
    min-width: 0 !important;
    font-size: .72rem !important;
    line-height: 1.4 !important;
    letter-spacing: .1em !important;
  }

  .about-side-4c .c-val {
    font-size: .86rem !important;
    line-height: 1.68 !important;
  }

  #reach .section-tag {
    margin-bottom: .85rem !important;
  }

  #reach h2.display {
    font-size: clamp(1.95rem, 7.4vw, 2.35rem) !important;
    line-height: 1.08 !important;
    margin-bottom: .95rem !important;
  }

  #reach .rule {
    margin: .95rem 0 1.1rem !important;
  }

  #reach .reach-body p {
    font-size: .9rem !important;
    line-height: 1.8 !important;
  }

  .ch {
    grid-template-columns: 10px minmax(84px, 106px) 10px minmax(0, 1fr) !important;
    font-size: .86rem !important;
    line-height: 1.5 !important;
    padding: .82rem 0 !important;
  }

  .ch-left {
    font-size: .9rem !important;
  }

  .ch-right {
    font-size: .88rem !important;
  }

  .reach-tag {
    font-size: .6rem !important;
    padding: .38rem .62rem !important;
  }

  .testi-text {
    font-size: .94rem !important;
    line-height: 1.76 !important;
  }

  .contact-h1 {
    font-size: clamp(1.9rem, 8.4vw, 2.35rem) !important;
    line-height: 1.08 !important;
  }
}

@media (max-width: 480px) {
  h2.display {
    font-size: clamp(1.85rem, 8vw, 2.2rem) !important;
  }

  #reach h2.display {
    font-size: clamp(1.8rem, 7.6vw, 2.15rem) !important;
  }

  .about-side-4c .c-row {
    grid-template-columns: 70px 1fr !important;
    gap: .56rem !important;
  }

  .about-side-4c .c-key {
    font-size: .7rem !important;
  }

  .about-side-4c .c-val {
    font-size: .84rem !important;
  }

  .ch {
    grid-template-columns: 10px minmax(78px, 98px) 10px minmax(0, 1fr) !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .section-tag {
    font-size: .62rem !important;
    letter-spacing: .18em !important;
  }

  h2.display {
    font-size: clamp(2.1rem, 4.5vw, 2.8rem) !important;
    line-height: 1.1 !important;
  }

  .about-body p,
  .reach-body p,
  .testi-text,
  .contact-desc,
  .svc-desc {
    font-size: .88rem !important;
    line-height: 1.72 !important;
  }

  .about-side-4c {
    padding: 1.2rem 1.1rem 1.05rem !important;
  }

  .about-side-4c .about-4c-title {
    font-size: .6rem !important;
    letter-spacing: .17em !important;
    margin-bottom: .45rem !important;
  }

  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 76px minmax(0,1fr) !important;
    gap: .72rem !important;
    align-items: start !important;
    padding: .7rem 0 !important;
  }

  .about-side-4c .c-key {
    display: block !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    font-size: .7rem !important;
    line-height: 1.35 !important;
    letter-spacing: .09em !important;
  }

  .about-side-4c .c-val {
    display: block !important;
    min-width: 0 !important;
    font-size: .84rem !important;
    line-height: 1.62 !important;
    overflow-wrap: break-word !important;
  }

  .ch {
    grid-template-columns: 10px 120px 12px minmax(0,1fr) !important;
    column-gap: .42rem !important;
    font-size: .84rem !important;
    line-height: 1.46 !important;
    padding: .78rem 0 !important;
  }

  .ch-left {
    font-size: .86rem !important;
  }

  .ch-right {
    font-size: .84rem !important;
  }

  .reach-tags {
    justify-content: center !important;
    gap: .4rem !important;
    margin-top: .75rem !important;
  }

  .reach-tag {
    font-size: .6rem !important;
    padding: .36rem .7rem !important;
  }
}

@media (max-width: 768px) {
  .section-tag {
    font-size: .58rem !important;
    letter-spacing: .17em !important;
  }

  h2.display {
    font-size: clamp(1.82rem, 7.3vw, 2.2rem) !important;
    line-height: 1.08 !important;
  }

  .about-body p,
  .reach-body p,
  .testi-text,
  .contact-desc,
  .svc-desc {
    font-size: .88rem !important;
    line-height: 1.72 !important;
  }

  .about-side-4c {
    padding: 1.08rem .92rem .96rem !important;
  }

  .about-side-4c .about-4c-title {
    font-size: .58rem !important;
    letter-spacing: .16em !important;
    margin-bottom: .42rem !important;
  }

  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 72px minmax(0,1fr) !important;
    gap: .56rem !important;
    align-items: start !important;
    padding: .66rem 0 !important;
  }

  .about-side-4c .c-key {
    display: block !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    font-size: .68rem !important;
    line-height: 1.34 !important;
    letter-spacing: .085em !important;
  }

  .about-side-4c .c-val {
    display: block !important;
    min-width: 0 !important;
    font-size: .82rem !important;
    line-height: 1.58 !important;
    overflow-wrap: break-word !important;
  }

  #reach h2.display {
    font-size: clamp(1.76rem, 6.9vw, 2.05rem) !important;
    line-height: 1.08 !important;
  }

  #reach .reach-body p {
    font-size: .86rem !important;
    line-height: 1.72 !important;
  }

  .ch {
    grid-template-columns: 10px 88px 10px minmax(0,1fr) !important;
    column-gap: .38rem !important;
    font-size: .82rem !important;
    line-height: 1.42 !important;
    padding: .72rem 0 !important;
  }

  .ch-left {
    font-size: .84rem !important;
    white-space: nowrap !important;
  }

  .ch-right {
    font-size: .82rem !important;
  }

  .reach-tags {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, max-content)) !important;
    justify-content: start !important;
    gap: .5rem .45rem !important;
    margin-top: .72rem !important;
    align-self: start !important;
  }

  .reach-tag {
    font-size: .58rem !important;
    padding: .42rem .7rem !important;
    min-width: 0 !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c .c-row {
    grid-template-columns: 68px minmax(0,1fr) !important;
    gap: .5rem !important;
  }

  .about-side-4c .c-key {
    font-size: .66rem !important;
  }

  .about-side-4c .c-val {
    font-size: .8rem !important;
  }

  .ch {
    grid-template-columns: 10px 84px 10px minmax(0,1fr) !important;
  }

  .reach-tag {
    font-size: .56rem !important;
    padding: .4rem .62rem !important;
  }
}

#reach {
  align-items: start !important;
}
.reach-globe-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
}
.reach-globe-wrap svg {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  height: auto !important;
  display: block !important;
}
.reach-tags {
  margin-top: .7rem !important;
  padding-top: 0 !important;
  justify-content: center !important;
  gap: .45rem !important;
}
.reach-tag {
  font-size: .64rem !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  padding: .38rem .82rem !important;
}

@media (max-width: 1024px) and (min-width: 769px) {

  .about-side-4c {
    padding: 1.15rem 1rem 1rem !important;
  }
  .about-side-4c .about-4c-title {
    margin-bottom: .42rem !important;
  }
  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    column-gap: .7rem !important;
    align-items: start !important;
    padding: .68rem 0 !important;
  }
  .about-side-4c .c-key {
    display: block !important;
    align-self: start !important;
    justify-self: start !important;
    white-space: nowrap !important;
    font-size: .72rem !important;
    line-height: 1.35 !important;
    letter-spacing: .09em !important;
    margin: 0 !important;
  }
  .about-side-4c .c-val {
    display: block !important;
    min-width: 0 !important;
    justify-self: start !important;
    margin: 0 !important;
    font-size: .86rem !important;
    line-height: 1.6 !important;
    overflow-wrap: anywhere !important;
  }

  .reach-globe-wrap {
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .reach-globe-wrap svg {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
  }
  .reach-globe-wrap svg text {
    font-size: 7.6px !important;
  }

  .reach-tags {
    margin-top: .65rem !important;
    justify-content: center !important;
    gap: .38rem !important;
  }
  .reach-tag {
    font-size: .6rem !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;
    padding: .36rem .72rem !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 2.35rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 720px !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 768px) {

  .about-side-4c {
    padding: 1rem .9rem .92rem !important;
  }
  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    column-gap: .62rem !important;
    align-items: start !important;
    padding: .64rem 0 !important;
  }
  .about-side-4c .c-key {
    display: block !important;
    align-self: start !important;
    justify-self: start !important;
    white-space: nowrap !important;
    font-size: .68rem !important;
    line-height: 1.32 !important;
    letter-spacing: .08em !important;
    margin: 0 !important;
  }
  .about-side-4c .c-val {
    display: block !important;
    min-width: 0 !important;
    justify-self: start !important;
    margin: 0 !important;
    font-size: .82rem !important;
    line-height: 1.56 !important;
    overflow-wrap: anywhere !important;
  }

  #reach .reach-body p {
    font-size: .86rem !important;
    line-height: 1.72 !important;
  }
  .ch {
    grid-template-columns: 10px 102px 10px minmax(0,1fr) !important;
    column-gap: .34rem !important;
    font-size: .82rem !important;
    line-height: 1.42 !important;
    padding: .72rem 0 !important;
  }
  .ch-left {
    white-space: nowrap !important;
    font-size: .84rem !important;
  }
  .ch-right {
    font-size: .82rem !important;
  }

  .reach-globe-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: .1rem auto 0 !important;
  }
  .reach-globe-wrap svg {
    width: 100% !important;
    max-width: 520px !important;
    min-width: 0 !important;
    height: auto !important;
  }
  .reach-globe-wrap svg text {
    font-size: 7.1px !important;
  }

  .reach-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: .38rem !important;
    margin-top: .62rem !important;
    align-self: start !important;
  }
  .reach-tag {
    font-size: .58rem !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;
    padding: .34rem .6rem !important;
    min-height: auto !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c .c-row {
    grid-template-columns: 74px minmax(0, 1fr) !important;
    column-gap: .56rem !important;
  }
  .about-side-4c .c-key {
    font-size: .66rem !important;
  }
  .about-side-4c .c-val {
    font-size: .8rem !important;
  }
  .reach-globe-wrap svg text {
    font-size: 6.8px !important;
  }
  .reach-tag {
    font-size: .56rem !important;
    padding: .34rem .56rem !important;
  }
}

@media (min-width: 1025px) {
  #reach {
    align-items: start !important;
  }

  .reach-globe-wrap {
    justify-content: flex-start !important;
  }

  .reach-globe-wrap svg {
    width: min(100%, 600px) !important;
    max-width: 600px !important;
  }

  .reach-tags {
    margin-top: .42rem !important;
    gap: .42rem !important;
    justify-content: center !important;
  }

  .reach-tag {
    font-size: .62rem !important;
    letter-spacing: .07em !important;
    padding: .34rem .78rem !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {

  .about-side-4c .c-row {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    column-gap: .95rem !important;
  }

  .about-side-4c .c-key {
    font-size: .72rem !important;
    letter-spacing: .085em !important;
  }

  .about-side-4c .c-val {
    font-size: .86rem !important;
    line-height: 1.62 !important;
  }

  .reach-globe-wrap svg text {
    font-size: 8.3px !important;
  }

  .reach-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: .34rem !important;
    margin-top: .5rem !important;
  }

  .reach-tag {
    font-size: .56rem !important;
    letter-spacing: .06em !important;
    font-weight: 600 !important;
    padding: .32rem .6rem !important;
    min-height: auto !important;
  }
}

@media (max-width: 768px) {

  #hero {
    padding-top: 74px !important;
  }

  .hero-left {
    padding-top: 3rem !important;
  }

  .about-side-4c .c-row {
    grid-template-columns: 86px minmax(0, 1fr) !important;
    column-gap: .8rem !important;
  }

  .about-side-4c .c-key {
    font-size: .68rem !important;
    letter-spacing: .075em !important;
  }

  .about-side-4c .c-val {
    font-size: .82rem !important;
    line-height: 1.58 !important;
  }

  .reach-globe-wrap svg text {
    font-size: 7.8px !important;
  }

  .reach-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: .32rem !important;
    margin-top: .5rem !important;
  }

  .reach-tag {
    font-size: .53rem !important;
    letter-spacing: .055em !important;
    font-weight: 600 !important;
    padding: .28rem .5rem !important;
    min-height: auto !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c .c-row {
    grid-template-columns: 82px minmax(0, 1fr) !important;
    column-gap: .72rem !important;
  }

  .reach-globe-wrap svg text {
    font-size: 7.4px !important;
  }

  .reach-tag {
    font-size: .5rem !important;
    letter-spacing: .05em !important;
    padding: .26rem .46rem !important;
  }
}

@media (min-width: 1025px) {
  #reach {
    align-items: start !important;
  }
  .reach-globe-wrap {
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    width:100% !important;
  }
  .reach-globe-wrap svg {
    width:min(100%, 600px) !important;
    max-width:600px !important;
  }
  .reach-tags {
    margin-top:.28rem !important;
    gap:.42rem !important;
    justify-content:center !important;
  }
  .reach-tag {
    font-size:.62rem !important;
    letter-spacing:.07em !important;
    padding:.34rem .78rem !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {

  .about-side-4c {
    padding: 1.22rem 1.08rem 1.02rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .66rem !important;
    letter-spacing: .18em !important;
    margin-bottom: .72rem !important;
  }
  .about-side-4c .c-row {
    display:grid !important;
    grid-template-columns: 96px minmax(0,1fr) !important;
    column-gap: 1rem !important;
    align-items: baseline !important;
    padding: .76rem 0 !important;
  }
  .about-side-4c .c-key {
    white-space: nowrap !important;
    font-size: .74rem !important;
    line-height: 1.2 !important;
    letter-spacing: .095em !important;
    align-self: baseline !important;
    transform: translateY(.02em) !important;
  }
  .about-side-4c .c-val {
    font-size: .86rem !important;
    line-height: 1.56 !important;
    align-self: baseline !important;
    margin: 0 !important;
  }

  .section-tag {
    margin-bottom: 1rem !important;
  }
  h2.display {
    line-height: 1.14 !important;
    margin-bottom: 1.22rem !important;
  }
  .rule {
    margin: 1.15rem 0 1.3rem !important;
  }

  .reach-globe-wrap svg {
    width:min(100%, 560px) !important;
    max-width:560px !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.1px !important;
  }

  .reach-tags {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.36rem !important;
    margin-top:.46rem !important;
  }
  .reach-tag {
    font-size:.56rem !important;
    font-weight:600 !important;
    letter-spacing:.055em !important;
    padding:.3rem .56rem !important;
    min-height:auto !important;
  }

  #contact {
    grid-template-columns:1fr !important;
    gap:2.3rem !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    justify-self:stretch !important;
    width:100% !important;
    max-width:none !important;
  }
  .contact-card {
    width:100% !important;
    max-width:760px !important;
    margin:0 auto !important;
  }
}

@media (max-width: 768px) {

  #hero {
    padding-top: 82px !important;
  }
  .hero-left {
    padding-top: 3.25rem !important;
  }

  .about-side-4c {
    padding: 1.16rem .98rem 1rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size:.66rem !important;
    letter-spacing:.18em !important;
    margin-bottom:.68rem !important;
  }
  .about-side-4c .c-row {
    display:grid !important;
    grid-template-columns: 98px minmax(0,1fr) !important;
    column-gap: .92rem !important;
    align-items: baseline !important;
    padding: .72rem 0 !important;
  }
  .about-side-4c .c-key {
    white-space: nowrap !important;
    font-size: .72rem !important;
    line-height: 1.18 !important;
    letter-spacing: .09em !important;
    align-self: baseline !important;
    transform: translateY(.02em) !important;
  }
  .about-side-4c .c-val {
    font-size: .84rem !important;
    line-height: 1.54 !important;
    align-self: baseline !important;
    margin: 0 !important;
  }

  .section-tag {
    margin-bottom: .98rem !important;
  }
  h2.display {
    line-height: 1.13 !important;
    margin-bottom: 1.16rem !important;
  }
  .rule {
    margin: 1rem 0 1.22rem !important;
  }

  .reach-globe-wrap svg {
    width:100% !important;
    max-width:520px !important;
    min-width:0 !important;
  }
  .reach-globe-wrap svg text {
    font-size: 7.9px !important;
  }

  .reach-tags {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    gap:.32rem !important;
    margin-top:.42rem !important;
    align-self:start !important;
  }
  .reach-tag {
    font-size:.52rem !important;
    font-weight:600 !important;
    letter-spacing:.04em !important;
    padding:.28rem .46rem !important;
    min-height:auto !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c .c-row {
    grid-template-columns: 98px minmax(0,1fr) !important;
    column-gap: .88rem !important;
  }
  .about-side-4c .c-key {
    font-size: .7rem !important;
  }
  .about-side-4c .c-val {
    font-size: .82rem !important;
  }
  .reach-globe-wrap svg text {
    font-size: 7.6px !important;
  }
  .reach-tag {
    font-size:.5rem !important;
    padding:.26rem .42rem !important;
  }
}

.services-grid .svc-desc br {
  display: none !important;
}

.about-side-4c {
  margin-top: 2rem !important;
  padding: 1.35rem 1.1rem 1.35rem !important;
}
.about-side-4c .about-4c-title {
  font-size: .74rem !important;
  letter-spacing: .18em !important;
  margin-bottom: .85rem !important;
}
.about-side-4c .c-row {
  display: grid !important;
  grid-template-columns: 118px minmax(0, 1fr) !important;
  column-gap: 1.15rem !important;
  align-items: start !important;
  padding: .88rem 0 !important;
}
.about-side-4c .c-key {
  white-space: nowrap !important;
  font-size: .78rem !important;
  line-height: 1.18 !important;
  letter-spacing: .1em !important;
  align-self: start !important;
  transform: translateY(.04em) !important;
}
.about-side-4c .c-val {
  font-size: .92rem !important;
  line-height: 1.62 !important;
  align-self: start !important;
  margin: 0 !important;
}

@media (min-width: 1025px) {
  #reach {
    align-items: stretch !important;
  }
  .reach-globe-wrap {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: center !important;
    height: 100% !important;
    min-height: 100% !important;
    width: 100% !important;
  }
  .reach-globe-wrap svg {
    width: min(100%, 600px) !important;
    max-width: 600px !important;
    margin-inline: auto !important;
  }
  .reach-tags {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: .38rem !important;
    width: 100% !important;
    margin-top: 0 !important;
    padding-top: .2rem !important;
  }
  .reach-tag {
    font-size: .6rem !important;
    font-weight: 600 !important;
    letter-spacing: .055em !important;
    padding: .34rem .72rem !important;
    min-height: auto !important;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {

  .about-side-4c {
    margin-top: 2.1rem !important;
    padding: 1.28rem 1.05rem 1.28rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .72rem !important;
    letter-spacing: .18em !important;
    margin-bottom: .8rem !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 114px minmax(0, 1fr) !important;
    column-gap: 1rem !important;
    align-items: start !important;
    padding: .84rem 0 !important;
  }
  .about-side-4c .c-key {
    font-size: .76rem !important;
    line-height: 1.16 !important;
    letter-spacing: .095em !important;
    transform: translateY(.03em) !important;
  }
  .about-side-4c .c-val {
    font-size: .9rem !important;
    line-height: 1.58 !important;
    margin: 0 !important;
  }

  .reach-globe-wrap {
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
  }
  .reach-globe-wrap svg {
    width:min(100%, 560px) !important;
    max-width:560px !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.9px !important;
  }
  .reach-tags {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.38rem !important;
    margin-top:.62rem !important;
    width:100% !important;
  }
  .reach-tag {
    font-size:.58rem !important;
    font-weight:600 !important;
    letter-spacing:.05em !important;
    padding:.32rem .56rem !important;
    min-height:auto !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 2.3rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    justify-self: center !important;
  }
}

@media (max-width: 768px) {

  #hero {
    padding-top: 82px !important;
  }
  .hero-left {
    padding-top: 3.2rem !important;
  }

  .about-side-4c {
    margin-top: 2rem !important;
    padding: 1.26rem .98rem 1.26rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .72rem !important;
    letter-spacing: .18em !important;
    margin-bottom: .78rem !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    column-gap: 1rem !important;
    align-items: start !important;
    padding: .82rem 0 !important;
  }
  .about-side-4c .c-key {
    font-size: .75rem !important;
    line-height: 1.14 !important;
    letter-spacing: .09em !important;
    white-space: nowrap !important;
    transform: translateY(.03em) !important;
  }
  .about-side-4c .c-val {
    font-size: .9rem !important;
    line-height: 1.56 !important;
    margin: 0 !important;
    align-self: start !important;
  }

  .reach-globe-wrap {
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    max-width:100% !important;
    margin:.08rem auto 0 !important;
  }
  .reach-globe-wrap svg {
    width:100% !important;
    max-width:520px !important;
    min-width:0 !important;
    height:auto !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.6px !important;
  }
  .reach-tags {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.34rem !important;
    margin-top:.56rem !important;
    width:100% !important;
  }
  .reach-tag {
    font-size:.56rem !important;
    font-weight:600 !important;
    letter-spacing:.045em !important;
    padding:.3rem .54rem !important;
    min-height:auto !important;
  }

  #contact {
    grid-template-columns:1fr !important;
    gap:2rem !important;
    align-items:start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width:100% !important;
    max-width:none !important;
    justify-self:stretch !important;
  }
  .contact-card {
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    justify-self:center !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c {
    margin-top: 1.95rem !important;
    padding: 1.22rem .94rem 1.22rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .7rem !important;
    letter-spacing: .17em !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 108px minmax(0, 1fr) !important;
    column-gap: .94rem !important;
  }
  .about-side-4c .c-key {
    font-size: .73rem !important;
  }
  .about-side-4c .c-val {
    font-size: .88rem !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.2px !important;
  }
  .reach-tag {
    font-size:.54rem !important;
    padding:.28rem .5rem !important;
  }
}

.services-grid .svc-desc br {
  display: none !important;
}

.about-side-4c {
  margin-top: 0 !important;
  padding: 2.15rem 2.8rem 2.1rem !important;
}
.about-side-4c .about-4c-title {
  font-size: .72rem !important;
  letter-spacing: .17em !important;
  margin: 0 0 1rem 0 !important;
}
.about-side-4c .c-row {
  display: grid !important;
  grid-template-columns: 132px minmax(0,1fr) !important;
  column-gap: 1.3rem !important;
  align-items: start !important;
  padding: .9rem 0 !important;
}
.about-side-4c .c-key {
  white-space: nowrap !important;
  font-size: .76rem !important;
  line-height: 1.15 !important;
  letter-spacing: .085em !important;
  align-self: start !important;
  transform: none !important;
}
.about-side-4c .c-val {
  font-size: .88rem !important;
  line-height: 1.56 !important;
  align-self: start !important;
  margin: 0 !important;
}

#reach {
  align-items: stretch !important;
}
.reach-globe-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}
.reach-globe-wrap svg {
  width: min(100%, 660px) !important;
  max-width: 660px !important;
  height: auto !important;
  display: block !important;
  margin-inline: auto !important;
}
.reach-globe-wrap svg text {
  font-size: 8.2px !important;
}
.reach-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: .38rem !important;
  width: 100% !important;
  margin-top: .4rem !important;
  padding-top: 0 !important;
}
.reach-tag {
  font-size: .58rem !important;
  font-weight: 600 !important;
  letter-spacing: .05em !important;
  padding: .32rem .62rem !important;
  min-height: auto !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .about-side-4c {
    margin-top: 0 !important;
    padding: 1.85rem 1.6rem 1.85rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .7rem !important;
    letter-spacing: .17em !important;
    margin-bottom: .9rem !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 124px minmax(0,1fr) !important;
    column-gap: 1.15rem !important;
    padding: .84rem 0 !important;
  }
  .about-side-4c .c-key {
    font-size: .74rem !important;
  }
  .about-side-4c .c-val {
    font-size: .86rem !important;
    line-height: 1.54 !important;
  }

  .reach-globe-wrap {
    justify-content: flex-start !important;
    margin: 0 auto !important;
  }
  .reach-globe-wrap svg {
    width: min(100%, 600px) !important;
    max-width: 600px !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.7px !important;
  }
  .reach-tags {
    justify-content: center !important;
    gap: .34rem !important;
    margin-top: .42rem !important;
  }
  .reach-tag {
    font-size: .56rem !important;
    padding: .3rem .54rem !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 2.3rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    justify-self: center !important;
  }
}

@media (max-width: 768px) {
  #hero {
    padding-top: 80px !important;
  }
  .hero-left {
    padding-top: 3rem !important;
  }

  .about-side-4c {
    margin-top: 0 !important;
    padding: 1.55rem 1.05rem 1.55rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .68rem !important;
    letter-spacing: .16em !important;
    margin-bottom: .82rem !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 114px minmax(0,1fr) !important;
    column-gap: 1rem !important;
    padding: .8rem 0 !important;
  }
  .about-side-4c .c-key {
    font-size: .72rem !important;
    line-height: 1.14 !important;
  }
  .about-side-4c .c-val {
    font-size: .84rem !important;
    line-height: 1.52 !important;
  }

  .reach-globe-wrap {
    justify-content: flex-start !important;
    margin: .08rem auto 0 !important;
  }
  .reach-globe-wrap svg {
    width: 100% !important;
    max-width: 540px !important;
    min-width: 0 !important;
  }
  .reach-globe-wrap svg text {
    font-size: 8.4px !important;
  }
  .reach-tags {
    justify-content: center !important;
    gap: .32rem !important;
    margin-top: .38rem !important;
  }
  .reach-tag {
    font-size: .54rem !important;
    letter-spacing: .04em !important;
    padding: .28rem .5rem !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    justify-self: center !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c {
    padding: 1.45rem .98rem 1.45rem !important;
  }
  .about-side-4c .about-4c-title {
    font-size: .66rem !important;
  }
  .about-side-4c .c-row {
    grid-template-columns: 110px minmax(0,1fr) !important;
    column-gap: .96rem !important;
  }
  .about-side-4c .c-key {
    font-size: .7rem !important;
  }
  .about-side-4c .c-val {
    font-size: .82rem !important;
  }

  .reach-globe-wrap svg text {
    font-size: 8px !important;
  }
  .reach-tag {
    font-size: .52rem !important;
    padding: .26rem .46rem !important;
  }
}

.reach-globe-wrap svg text {
  font-size: 8.4px !important;
}
.reach-tag {
  font-size: .66rem !important;
  font-weight: 600 !important;
  letter-spacing: .055em !important;
  padding: .34rem .66rem !important;
  min-height: auto !important;
}

.contact-desc {
  max-width: 680px !important;
  width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: pretty;
}
.contact-h1 {
  max-width: 14ch !important;
}
#contact > .reveal:first-child {
  min-width: 0 !important;
}
.contact-card {
  margin-left: auto;
}

.svc-desc {
  max-width: none !important;
  width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: pretty;
}
#services .svc {
  min-width: 0 !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .reach-globe-wrap svg text {
    font-size: 8.9px !important;
  }
  .reach-tag {
    font-size: .64rem !important;
    letter-spacing: .05em !important;
    padding: .32rem .62rem !important;
  }

  #services {
    padding-left: 4.8% !important;
    padding-right: 4.8% !important;
  }
  #services .svc {
    padding-left: .95rem !important;
    padding-right: .95rem !important;
  }
  .svc-desc {
    font-size: .87rem !important;
    line-height: 1.68 !important;
  }

  #contact {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 2.25rem !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    justify-self: center !important;
  }
}

@media (max-width: 768px) {
  .reach-globe-wrap svg text {
    font-size: 8.6px !important;
  }
  .reach-tag {
    font-size: .62rem !important;
    letter-spacing: .045em !important;
    padding: .3rem .56rem !important;
  }

  #services {
    padding-left: 4.3% !important;
    padding-right: 4.3% !important;
  }
  #services .svc {
    padding-left: .88rem !important;
    padding-right: .88rem !important;
  }
  .svc-desc {
    font-size: .88rem !important;
    line-height: 1.7 !important;
  }

  #contact {
    grid-template-columns: 1fr !important;
    gap: 1.9rem !important;
    align-items: start !important;
  }
  #contact > .reveal,
  #contact > .reveal:last-child {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .contact-card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    justify-self: center !important;
  }
}

@media (max-width: 480px) {
  .reach-globe-wrap svg text {
    font-size: 8.2px !important;
  }
  .reach-tag {
    font-size: .58rem !important;
    padding: .28rem .5rem !important;
  }
}

.nav-hamburger {
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:transparent;
}

@media (min-width: 1025px) {
  .nav-mobile-shell {
    margin-left:auto !important;
    flex:1 1 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }
  .nav-mobile-shell .nav-right {
    display:flex !important;
    position:static !important;
    width:auto !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }
  .nav-mobile-shell .nav-links {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:2.35rem !important;
    margin-left:auto !important;
  }
  .nav-mobile-shell .nav-links li {
    display:list-item !important;
  }
  .nav-hamburger {
    display:none !important;
  }
}

@media (max-width: 1024px) {
  .nav-mobile-shell {
    flex:0 0 auto !important;
    display:block !important;
    margin-left:auto !important;
  }
  .nav-mobile-shell > .nav-right {
    display:none !important;
  }
  .nav-mobile-shell.is-open > .nav-right {
    display:block !important;
    position:fixed !important;
    top:68px !important;
    left:0 !important;
    right:0 !important;
    background:rgb(247,245,242) !important;
    padding:1.4rem 6% 1.7rem !important;
    border-bottom:1px solid var(--border) !important;
    z-index:199 !important;
    box-shadow:0 18px 36px rgba(26,22,20,.05) !important;
  }
}

@media (max-width: 1024px) {
  #vision .section-tag,
  #services .section-tag,
  #testimonials .section-tag,
  #contact .section-tag {
    font-size: 0.82rem !important;
    letter-spacing: 0.18em !important;
  }

  .about-side-4c {
    padding-left: 2.8rem !important;
    padding-right: 2.8rem !important;
  }

  .about-side-4c .about-4c-title {
    text-align: left !important;
    margin-left: 0 !important;
  }

  .about-side-4c .c-row {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    align-items: baseline !important;
    column-gap: 1rem !important;
  }

  .about-side-4c .c-key,
  .about-side-4c .c-val {
    align-self: baseline !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .about-side-4c .c-val {
    position: relative !important;
    top: 0 !important;
  }
}

@media (max-width: 480px) {
  .about-side-4c {
    padding-left: 2.8rem !important;
    padding-right: 2.8rem !important;
  }

  .about-side-4c .c-row {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 0.9rem !important;
  }
}

.contact-role {
  font-size: 0.9rem !important;
}

#vision > .section-tag,
#services > .section-tag,
#testimonials > .section-tag,
#contact > .reveal:first-child > .section-tag {
  font-size: .69rem !important;
  letter-spacing: .22em !important;
}

.contact-role {
  font-size: .88rem !important;
}

@media (min-width: 1025px) {
  #contact {
    grid-template-columns: minmax(0, 1.2fr) minmax(420px, .8fr) !important;
  }
  #contact > .reveal:first-child {
    max-width: none !important;
  }
  .contact-desc {
    max-width: 760px !important;
  }
}

.about-side-4c .c-row {
  align-items: baseline !important;
}
.about-side-4c .c-key,
.about-side-4c .c-val {
  margin: 0 !important;
  align-self: baseline !important;
}
.about-side-4c .c-val {
  position: relative !important;
  top: -0.02em !important;
}

@media (max-width: 768px) {
  #about {
    padding-left: 3.9% !important;
    padding-right: 3.9% !important;
  }
  .about-side-4c {
    padding: 1.18rem 1.18rem 1.02rem !important;
  }
  .about-side-4c .about-4c-title {
    margin-left: 0 !important;
    margin-bottom: .48rem !important;
  }
  .about-side-4c .c-row {
    display: grid !important;
    grid-template-columns: 84px minmax(0,1fr) !important;
    column-gap: .72rem !important;
    align-items: baseline !important;
    padding: .68rem 0 !important;
  }
  .about-side-4c .c-key {
    font-size: .69rem !important;
    line-height: 1.34 !important;
    letter-spacing: .085em !important;
    white-space: nowrap !important;
  }
  .about-side-4c .c-val {
    font-size: .83rem !important;
    line-height: 1.54 !important;
  }
}

#vision .section-tag,
#services .section-tag,
#testimonials .section-tag,
#contact .section-tag {
  font-size: .69rem !important;
  letter-spacing: .22em !important;
}

@media (max-width: 1024px) {
  .about-side-4c .c-row {
    grid-template-columns: 118px minmax(0, 1fr) !important;
    column-gap: 1.2rem !important;
    align-items: baseline !important;
  }
  .about-side-4c .c-key,
  .about-side-4c .c-val {
    margin: 0 !important;
    align-self: baseline !important;
  }
  .about-side-4c .c-val {
    position: relative !important;
    top: 0 !important;
  }
}

@media (max-width: 768px) {
  .about-vis-card,
  .about-side-4c {
    padding-left: 1.35rem !important;
    padding-right: 1.35rem !important;
  }

  .about-side-4c .c-row {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    column-gap: 1.15rem !important;
    align-items: baseline !important;
  }
}

@media (max-width: 768px) {
  .reach-globe-wrap svg text {
    font-size: 9.4px !important;
  }
  .reach-tag {
    font-size: .66rem !important;
    padding: .32rem .58rem !important;
  }
}

@media (max-width: 480px) {
  .reach-globe-wrap svg text {
    font-size: 9.1px !important;
  }
  .reach-tag {
    font-size: .64rem !important;
    padding: .3rem .54rem !important;
  }
}

@media (max-width: 480px) {
  .reach-globe-wrap svg text {
    font-size: 9.9px !important;
  }
  .reach-tag {
    font-size: .68rem !important;
    padding: .32rem .58rem !important;
  }
}


/* Cleanroom stage 4: inline-style removal with identical rendering */
.testimonials-tag { justify-content:center; }
.contact-role-tight { margin-bottom:1.15rem; }
