:root{
  --ink:#0f172a;
  --muted:#475569;
  --line:#e5e7eb;
  --accent:#159a6a;
  --accent-dark:#0d7c54;
  --accent-soft:#e8f6ef;
  --accent-soft-2:#f3fbf7;
  --shadow:0 18px 60px rgba(0,0,0,.10);
  --radius:18px;
  --max:1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{display:block;max-width:100%}
p{margin:0 0 14px;font-size:16px;line-height:1.68;color:var(--muted)}
section{scroll-margin-top:92px}
.container{width:min(90%,var(--max));margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(15,23,42,.06);
  box-shadow:0 1px 0 rgba(15,23,42,.03)
}
.nav{display:flex;justify-content:space-between;align-items:center;padding:14px 0}
.brand{display:inline-flex;align-items:center;text-decoration:none}
.brand img{display:block;height:48px;width:auto}
.nav-links{display:flex;align-items:center}
.nav-links a{position:relative;margin-left:18px;color:var(--muted);text-decoration:none;font-size:14px}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--accent);transition:width .2s ease}
.nav-links a:hover::after{width:100%}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 16px;border-radius:999px;border:1px solid transparent;
  text-decoration:none;font-weight:600;transition:all .2s ease
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}
.btn-outline{background:#fff;border-color:var(--accent);color:var(--accent)}
.btn-outline:hover{background:var(--accent-soft)}
.btn-ghost{background:#fff;border-color:rgba(15,23,42,.10);color:var(--ink)}
.btn-ghost:hover{background:rgba(232,246,239,.70);border-color:rgba(21,154,106,.28)}

.hero{
  position:relative;overflow:hidden;padding:88px 0 82px;
  background:
    linear-gradient(rgba(255,255,255,0.48), rgba(255,255,255,0.64)),
    radial-gradient(circle at 18% 22%, rgba(21,154,106,.18), transparent 58%),
    image-set(url("hero-transport.webp") type("image/webp"), url("hero-transport.jpg") type("image/jpeg")) center center / cover no-repeat;
}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:start}
.eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5f6f68}
.hero-title{margin:0 0 14px;font-size:clamp(40px,6vw,58px);line-height:1.02;letter-spacing:-0.045em;font-weight:900;color:#fff;text-wrap:balance}
.hero-sub{max-width:580px;font-size:17px;color:rgba(255,255,255,.92)}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.cap-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#60716a}
.cap-strip .dot{opacity:.45}
.hero-note{margin-top:14px;font-size:14px;color:rgba(255,255,255,.78)}
.hero-email{margin-top:4px;font-size:14px;color:rgba(255,255,255,.92)}
.hero-email a,.hero-note a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.28)}

.hero-network{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.58}
.node,.line{position:absolute;display:block}
.node{width:10px;height:10px;border-radius:50%;background:rgba(21,154,106,.34);box-shadow:0 0 0 8px rgba(21,154,106,.08);animation:pulse 4s ease-in-out infinite}
.n1{top:18%;left:62%;animation-delay:0s}.n2{top:28%;left:74%;animation-delay:.8s}.n3{top:40%;left:66%;animation-delay:1.6s}.n4{top:54%;left:82%;animation-delay:2.4s}.n5{top:64%;left:70%;animation-delay:3.2s}
.line{height:2px;background:linear-gradient(90deg,rgba(21,154,106,0),rgba(21,154,106,.32),rgba(21,154,106,0));transform-origin:left center;animation:drift 8s ease-in-out infinite}
.l1{top:25%;left:63%;width:150px;transform:rotate(18deg)}.l2{top:39%;left:67%;width:130px;transform:rotate(-12deg)}.l3{top:58%;left:71%;width:120px;transform:rotate(22deg)}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.16);opacity:1}}
@keyframes drift{0%,100%{opacity:.24}50%{opacity:.72}}

.hero-panel{
  padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:var(--radius);
  background:rgba(255,255,255,.92);backdrop-filter:blur(8px);box-shadow:0 24px 80px rgba(0,0,0,.10)
}
.panel-kicker,.mini-label{font-size:12px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;color:#64748b}
.panel-list{margin:14px 0 0;padding-left:20px;color:var(--muted);line-height:1.78}
.panel-divider{height:1px;margin:18px 0;background:rgba(15,23,42,.08)}
.mini-value{margin-top:8px;font-size:14px;line-height:1.62;color:var(--muted)}

.sector-strip-wrap{border-top:1px solid rgba(15,23,42,.04);border-bottom:1px solid rgba(15,23,42,.04);background:#fff}
.sector-strip{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:16px 0;font-size:13px;font-weight:700;color:#5f6f68;letter-spacing:.03em}
.sector-strip .dot{opacity:.45}

.section{padding:76px 0;border-top:1px solid rgba(15,23,42,.04)}
.section-clean{background:#fff}
.section-projects{background:linear-gradient(180deg,#ffffff 0%,#f9fcfa 100%)}
.section-tint{background:radial-gradient(circle at 12% 8%, rgba(21,154,106,.09), transparent 48%), #fff}
.section-tint2{background:radial-gradient(circle at 86% 8%, rgba(21,154,106,.10), transparent 48%), var(--accent-soft-2)}
.section-alt-soft{background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%)}
.section-head{max-width:760px;margin-bottom:12px}
.section-title{margin:0 0 8px;font-size:32px;font-weight:700;letter-spacing:-0.035em;color:var(--ink)}
.section-sub{max-width:700px;margin:0 0 8px}
.section-sub-tight{margin-top:0}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.card{
  padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.04);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease
}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 60px rgba(0,0,0,.10);border-color:rgba(21,154,106,.22)}
.card h3{margin:0 0 8px;font-size:18px;color:#111827}
.card p{margin:0;font-size:15px}
.card-link{color:inherit;text-decoration:none}

.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.image-grid img{
  width:100%;height:190px;object-fit:cover;border-radius:16px;
  box-shadow:0 10px 40px rgba(0,0,0,.08);transition:transform .35s ease, box-shadow .35s ease
}
.image-grid img:hover{transform:scale(1.025);box-shadow:0 18px 60px rgba(0,0,0,.14)}
.image-grid-projects img{height:210px}

.project-pair-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.project-pair{display:flex;flex-direction:column;gap:16px}
.project-pair picture{display:block}
.project-pair img{width:100%;height:210px;object-fit:cover;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.08);transition:transform .35s ease, box-shadow .35s ease}
.project-pair img:hover{transform:scale(1.025);box-shadow:0 18px 60px rgba(0,0,0,.14)}

.project-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
.project-summary-card{
  padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.035)
}
.project-summary-card h3{margin:0 0 8px;font-size:16px;color:#111827}
.project-summary-card p{margin:0;font-size:14px;line-height:1.62}

.detail-section{padding:80px 0;border-top:1px solid rgba(15,23,42,.04);background:#fff}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.detail-grid-reverse .detail-image{order:2}
.detail-grid-reverse .detail-copy{order:1}
.detail-image img{width:100%;height:380px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}
.detail-copy h3{margin:0 0 12px;font-size:32px;line-height:1.08;letter-spacing:-0.03em;color:var(--ink)}
.detail-copy ul{margin:16px 0 0;padding-left:18px;color:var(--muted);line-height:1.7}

.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.about-image img{width:100%;height:360px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}

.contact input,.contact textarea{
  width:100%;padding:13px 14px;margin-bottom:12px;border:1px solid rgba(15,23,42,.10);
  border-radius:12px;font:inherit;background:#fff
}
.contact input:focus,.contact textarea:focus{
  outline:none;border-color:rgba(21,154,106,.50);box-shadow:0 0 0 4px rgba(21,154,106,.10)
}
.contact textarea{min-height:150px;resize:vertical}
.contact .btn{margin-top:6px}

.site-footer{
  margin-top:16px;padding:28px 0;border-top:1px solid rgba(15,23,42,.08);
  box-shadow:inset 0 3px 0 rgba(21,154,106,.26);background:#fff;font-size:14px;color:#64748b
}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.footer-links a{margin-left:14px;color:#64748b;text-decoration:none}
.footer-brand-block{display:flex;flex-direction:column;gap:10px}
.footer-brand{display:inline-flex;align-items:center;text-decoration:none}
.footer-brand img{display:block;height:44px;width:auto}
.footer-note{display:inline-block;margin-top:2px}

@media (max-width:900px){
  .brand img{height:42px}

  .hero-grid,.about-grid,.detail-grid{grid-template-columns:1fr}
  .detail-grid-reverse .detail-image,.detail-grid-reverse .detail-copy{order:initial}
  .cards,.image-grid,.project-summary-grid,.project-pair-grid{grid-template-columns:1fr}
  .hero-title{font-size:42px}
  .detail-copy h3{font-size:28px}
  .nav-links a{margin-left:12px}
  .hero-network{display:none}
}


.skip-link{
  position:absolute;left:12px;top:-48px;z-index:100;
  padding:10px 14px;border-radius:12px;background:var(--ink);color:#fff;
  text-decoration:none;transition:top .2s ease
}
.skip-link:focus{top:12px}

.hamburger{
  display:none;align-items:center;justify-content:center;flex-direction:column;
  gap:5px;background:#fff;border:1px solid rgba(15,23,42,.10);border-radius:12px;
  padding:10px;cursor:pointer
}
.hamburger span{
  display:block;width:24px;height:2px;background:var(--ink);border-radius:999px;
  transition:transform .2s ease, opacity .2s ease
}
.mobile-nav{display:none;border-top:1px solid rgba(15,23,42,.06);background:rgba(255,255,255,.98);backdrop-filter:blur(10px)}
.mobile-nav-inner{display:flex;flex-direction:column;padding:10px 0 16px}
.mobile-nav a{padding:12px 0;color:var(--muted);text-decoration:none;font-weight:600}
.mobile-nav.active{display:block}

.nav-links{gap:18px}
.nav-links a:focus-visible,.mobile-nav a:focus-visible,.brand:focus-visible,.footer-links a:focus-visible,.footer-brand:focus-visible{border-radius:10px}

.contact label{display:block;margin:10px 0 6px;font-size:14px;font-weight:600;color:var(--ink)}
.contact input,.contact textarea{transition:border-color .2s ease, box-shadow .2s ease}

:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:4px;
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .node,.line,.card,.image-grid img,.btn,.skip-link,.hamburger span{
    animation:none !important;
    transition:none !important;
  }
}

@media (max-width:900px){
  .brand img{height:42px}

  .hamburger{display:inline-flex}
  .nav-links{display:none}
  .hero-grid,.about-grid,.detail-grid{grid-template-columns:1fr}
  .detail-grid-reverse .detail-image,.detail-grid-reverse .detail-copy{order:initial}
  .cards,.image-grid,.project-summary-grid,.project-pair-grid{grid-template-columns:1fr}
  .hero-title{font-size:42px}
  .detail-copy h3{font-size:28px}
  .hero-network{display:none}
}

@media (max-width:600px){
  .nav{padding:12px 0}
  .hero{padding:72px 0 64px}
  .hero-title{font-size:38px}
  .hero-actions{flex-direction:column;align-items:flex-start}
  .btn{width:100%}
  .hero-actions .btn{width:auto;min-width:220px}
  .detail-image img,.about-image img{height:280px}
}


.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.84);backdrop-filter:blur(14px);border-bottom:1px solid rgba(15,23,42,.05)}
.brand img{height:38px}
.footer-brand img{height:36px}
.hero-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.highlight-pill{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(21,154,106,.12);font-size:13px;font-weight:700;color:#334155;box-shadow:0 6px 18px rgba(0,0,0,.04)}

.detail-image picture,.about-image picture,.image-grid picture{display:block}
.image-grid picture img,.detail-image picture img,.about-image picture img{display:block}

.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:start}
.contact-intro p{max-width:520px}
.contact-card{margin-top:20px;padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 14px 40px rgba(0,0,0,.05)}
.contact-card-label{margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.contact-email{display:inline-block;font-size:1.1rem;font-weight:800;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(21,154,106,.2);margin-bottom:10px}
.contact{padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(0,0,0,.05)}
.footer-note{display:inline-block;margin-top:4px;font-size:13px;color:#64748b}

@media (max-width:900px){
  .brand img{height:42px}

  .contact-grid{grid-template-columns:1fr}
}

@media (max-width:600px){
  .highlight-pill{width:100%;justify-content:flex-start}
  .contact{padding:18px}
}


/* Premium refresh pass */
.site-header{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(15,23,42,.08);
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}
.nav-links a{
  color:#334155;
  font-weight:700;
}
.nav-links a.btn-outline{color:var(--ink)}
.brand img{height:52px}
.footer-brand img{height:40px}
.hero-grid{grid-template-columns:minmax(0,1fr) 220px;align-items:end}
.hero-copy{max-width:760px}
.hero-proof{display:flex;align-items:flex-end;justify-content:flex-end}
.hero-proof-card{
  padding:18px 18px 16px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 16px 40px rgba(15,23,42,.08);
}
.hero-proof-label{
  margin-bottom:8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#475569;
}
.hero-proof-card p{margin:0;max-width:280px;font-size:14px;line-height:1.6;color:#475569}
.service-lines-band{
  padding:32px 0 12px;
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
}
.service-lines-shell{
  padding:28px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  background:#fff;
  box-shadow:0 20px 60px rgba(15,23,42,.05);
}
.service-lines-intro{max-width:760px;margin-bottom:18px}
.service-lines-kicker{
  margin:0 0 8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
}
.service-lines-intro h2{
  margin:0;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.03em;
  color:var(--ink);
}
.service-lines-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
}
.service-line-pill{
  padding:16px 14px;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbfa 100%);
  border:1px solid rgba(21,154,106,.14);
  color:#334155;
  font-size:14px;
  line-height:1.45;
  font-weight:600;
}
@media (max-width:1100px){
  .service-lines-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .brand img{height:46px}
  .hero-grid{grid-template-columns:1fr}
  .hero-proof{justify-content:flex-start;margin-top:10px}
  .hero-proof-card p{max-width:none}
  .service-lines-intro h2{font-size:24px}
}
@media (max-width:600px){
  .brand img{height:42px}
  .service-lines-shell{padding:20px}
  .service-lines-grid{grid-template-columns:1fr}
  .service-lines-intro h2{font-size:22px}
}


/* Premium final v3 */
:root{
  --accent:#159a6a;
  --accent-strong:#11855b;
  --accent-soft:#eef8f3;
  --accent-soft-2:#f4fbf7;
}
.hero{
  position:relative;
  overflow:hidden;
  background-image:linear-gradient(180deg, rgba(15,23,42,.60) 0%, rgba(15,23,42,.54) 45%, rgba(15,23,42,.48) 100%), image-set(url('hero-transport.webp') type('image/webp'), url('hero-transport.jpg') type('image/jpeg'));
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  color:#fff;
}
.eyebrow,.service-lines-kicker,.contact-card-label,.hero-proof-label{color:#7ee3b5;}
.section-title{position:relative;padding-bottom:10px;}
.section-title::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--accent),rgba(21,154,106,.25));}
.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);box-shadow:0 12px 28px rgba(21,154,106,.24);}
.btn-primary:hover{box-shadow:0 18px 36px rgba(21,154,106,.30);}
.btn-outline,.btn-ghost:hover{border-color:rgba(21,154,106,.28);background:rgba(21,154,106,.06);}
.cap-strip{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(8px);}
.hero-note a,.contact-email,.nav-links a:hover,.mobile-nav a:hover,.footer-links a:hover{color:var(--accent-strong);}
.highlight-pill{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.20);color:#fff;backdrop-filter:blur(8px);}
.hero-proof-card{border-top:4px solid rgba(21,154,106,.75);background:rgba(255,255,255,.92);}
.sector-strip-wrap{background:linear-gradient(180deg,#f8fcfa 0%,#ffffff 100%);}
.sector-strip{color:#36675b;}
.card-feature{border-color:rgba(21,154,106,.22);box-shadow:0 18px 44px rgba(21,154,106,.12);}
.card-green{background:linear-gradient(180deg,#f7fcf9 0%,#ffffff 100%);border-color:rgba(21,154,106,.18);}
.card h3{display:block;}
.card-feature{position:relative;overflow:hidden;}
.card-feature::after,.card-green::after{content:"";position:absolute;left:22px;right:22px;top:0;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,var(--accent),rgba(21,154,106,.22));}
.card-green{position:relative;overflow:hidden;}
.section-greenwash{background:linear-gradient(180deg,#ffffff 0%,#f3fbf7 100%);}
.detail-section:nth-of-type(odd){box-shadow:inset 0 1px 0 rgba(21,154,106,.05);}
.detail-copy ul li::marker{color:var(--accent);}
.contact-card,.contact{border-color:rgba(21,154,106,.14);}
.contact{box-shadow:0 16px 40px rgba(21,154,106,.08);}
.site-footer{box-shadow:inset 0 4px 0 rgba(21,154,106,.35);}
@media (max-width:900px){
  .section-title::after{width:56px;}
}


/* Toggleable selected work section */
.section-kicker{
  margin:0 0 8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--accent);
}
.case-studies{
  background:linear-gradient(180deg,#f8fbf9 0%, #ffffff 100%);
}
.section-header{
  max-width:720px;
  margin-bottom:34px;
}
.section-header h2{
  margin:0 0 10px;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-0.035em;
  color:var(--ink);
}
.section-header p{
  margin:0;
  color:var(--muted);
}
.case-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.case-card{
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:28px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 40px rgba(15,23,42,.05);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.case-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 60px rgba(15,23,42,.10);
  border-color:rgba(21,154,106,.24);
}
.case-card.highlight{
  border-color:rgba(21,154,106,.30);
  box-shadow:0 18px 46px rgba(21,154,106,.10);
}
.case-tag{
  display:inline-block;
  margin-bottom:12px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--accent);
}
.case-top h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.2;
  color:var(--ink);
}
.case-meta{
  margin:0;
  font-size:14px;
  font-weight:700;
  color:#5f6f68;
}
.case-body p{
  margin:0;
  color:var(--muted);
  line-height:1.72;
}
.case-outcome{
  display:grid;
  gap:10px;
  margin-top:auto;
}
.case-outcome span{
  position:relative;
  padding-left:20px;
  font-size:14px;
  font-weight:700;
  color:var(--ink);
}
.case-outcome span::before{
  content:'';
  position:absolute;
  left:0;
  top:.45em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--accent);
  box-shadow:0 0 0 5px rgba(21,154,106,.10);
}

@media (max-width:900px){
  .case-grid{grid-template-columns:1fr;}
}


/* v10 final polish */
:root{--accent-soft:rgba(21,154,106,.08);}
.cap-strip{background:none !important;border:none !important;padding:0 !important;backdrop-filter:none !important;box-shadow:none !important;display:flex;flex-wrap:wrap;gap:10px;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.78);margin:20px 0 10px;}
.cap-strip .dot{color:rgba(255,255,255,.5);}
.card-feature,.card-green{background:#fff !important;border-color:rgba(15,23,42,.06) !important;box-shadow:0 4px 12px rgba(15,23,42,.04) !important;}
.card-feature::after,.card-green::after{display:none !important;content:none !important;}
.card{padding:26px 24px;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.06);box-shadow:0 4px 12px rgba(15,23,42,.04);transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(15,23,42,.08);border-color:rgba(21,154,106,.2);}
.card h3{font-size:18px;margin-bottom:8px;letter-spacing:-.2px;}
.card p{font-size:15px;line-height:1.6;color:#64748b;}
.section-title{font-size:34px;line-height:1.2;letter-spacing:-.5px;margin-bottom:10px;}
.section-sub{font-size:17px;line-height:1.6;color:#475569;max-width:720px;}
section{padding:80px 0;}
.hero + section,.hero + .sector-strip-wrap{padding-top:60px;}
.btn{font-size:15px;padding:12px 18px;border-radius:999px;font-weight:500;}
.btn-primary{box-shadow:0 6px 18px rgba(21,154,106,.25);}
.container{max-width:1100px;}
@media (max-width:600px){.cap-strip{gap:8px;font-size:11px;}}


/* v11 tweaks */
.section-kicker{letter-spacing:.12em;margin-bottom:4px;}
.project-pair-grid{align-items:start;}
@media (max-width:900px){.project-pair{gap:12px;}}


/* v11 final cleanup */
.detail-section .detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;}
.detail-grid-reverse .detail-image{order:2;}
.detail-grid-reverse .detail-copy{order:1;}
@media (max-width:900px){
  .detail-grid,.detail-grid-reverse{grid-template-columns:1fr;}
  .detail-grid .detail-image,.detail-grid .detail-copy,.detail-grid-reverse .detail-image,.detail-grid-reverse .detail-copy{order:initial;}
}


/* v12 mobile order fix */
@media (max-width:900px){
  .detail-grid,.detail-grid-reverse{grid-template-columns:1fr !important;gap:20px !important;}
  .detail-grid .detail-copy{order:1 !important;}
  .detail-grid .detail-image{order:2 !important;}
  .detail-grid-reverse .detail-image{order:1 !important;}
  .detail-grid-reverse .detail-copy{order:2 !important;}
  .project-pair-grid{grid-template-columns:1fr !important;gap:18px !important;}
  .project-pair{display:flex !important;flex-direction:column !important;gap:12px !important;}
  .project-pair picture,.project-summary-card{order:initial !important;}
}
@media (max-width:600px){
  .detail-section{padding:56px 0 !important;}
  .detail-image img{height:220px !important;}
  .detail-copy h3{font-size:26px !important;}
}


/* Final polish overrides */
.hero-sub{max-width:700px;opacity:.96;}
.section-head .section-sub{max-width:720px;line-height:1.6;}
.section-sub-tight{margin-top:0;}
.section-header p{max-width:720px;line-height:1.6;margin-bottom:32px;}
@media (max-width: 768px){
  #projects .project-pair{display:grid;grid-template-columns:1fr;gap:12px;}
}


/* Final hero/subheadline polish */
.hero-copy{max-width:640px;}
.hero-sub{max-width:640px !important;font-size:18px;line-height:1.55;margin:14px 0 0;letter-spacing:-0.01em;color:rgba(255,255,255,.94);}
.hero-title{max-width:780px;line-height:1.06;letter-spacing:-0.03em;}
.hero-actions{margin-top:24px;}
.hero-highlights{margin-top:18px;}
@media (max-width:900px){.hero-sub{max-width:34ch !important;font-size:17px;line-height:1.55;}}
@media (max-width:640px){.hero-title{max-width:12ch;}.hero-sub{max-width:none !important;font-size:16px;line-height:1.6;margin-top:12px;}}


/* v16 service detail mobile flow fix */
@media (max-width:900px){
  .detail-section .detail-grid,
  .detail-section .detail-grid-reverse{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    align-items:start !important;
  }

  .detail-section .detail-image,
  .detail-section .detail-copy{
    width:100% !important;
    min-width:0 !important;
  }

  .detail-section .detail-image{
    order:1 !important;
  }

  .detail-section .detail-copy{
    order:2 !important;
  }

  .detail-section .detail-image picture,
  .detail-section .detail-image img{
    display:block !important;
    width:100% !important;
  }
}

@media (max-width:600px){
  .detail-section .detail-grid,
  .detail-section .detail-grid-reverse{
    gap:16px !important;
  }

  .detail-section .detail-image img{
    height:220px !important;
    object-fit:cover !important;
  }
}
