
:root {
  --gold-1: #8a6d1f;
  --gold-2: #d4af37;
}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-forma-djr-text), "DJR Text",sans-serif}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,3vw,48px)}
.sv-hero{padding:clamp(72px,9vw,140px) 0 clamp(40px,5vw,72px);border-bottom:1.5px solid rgba(11,9,7,.12)}
.sv-kicker{font-weight:800;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--red)}
.sv-h1{font-family:var(--font-forma-djr-display), "DJR Display";font-weight:700;font-size:clamp(44px,6vw,88px);line-height:.98;letter-spacing:-.02em;margin:18px 0 22px;max-width:20ch}
.sv-lede{font-size:clamp(15px,1.3vw,18px);line-height:1.7;max-width:66ch;color:rgba(11,9,7,.8)}
.sv-sec{padding:clamp(48px,6vw,88px) 0}
.sv-h2{font-family:var(--font-forma-djr-display), "DJR Display";font-weight:700;font-size:clamp(28px,3.2vw,44px);letter-spacing:-.015em;margin:0 0 10px}
.sv-h2-lede{max-width:70ch;color:rgba(11,9,7,.75);line-height:1.7;margin:0 0 40px}
.lane-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:clamp(18px,2vw,28px)}
.lane-card{display:block;background:#fff;border:1px solid rgba(11,9,7,.1);padding:clamp(24px,2.4vw,36px);text-decoration:none;color:var(--ink);position:relative;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));transition:transform .28s cubic-bezier(.2,.7,0,1),box-shadow .28s}
.lane-card:hover{transform:translateY(-4px);box-shadow:0 14px 40px rgba(11,9,7,.12)}
.lane-num{font-weight:800;font-size:11px;letter-spacing:.3em;color:rgba(11,9,7,.4)}
.lane-name{font-family:var(--font-forma-djr-display), "DJR Display";font-weight:700;font-size:clamp(24px,2.2vw,32px);margin:10px 0 8px}
.lane-hook{font-weight:700;margin:0 0 6px}
.lane-desc{color:rgba(11,9,7,.72);line-height:1.65;margin:0 0 14px}
.lane-list{list-style:none;margin:0 0 16px;padding:0}
.lane-list li{padding-left:18px;position:relative;line-height:1.9;font-size:14px}
.lane-list li::before{content:"";position:absolute;left:0;top:.85em;width:10px;height:2px;background:var(--red)}
.lane-receipt{font-size:12.5px;color:rgba(11,9,7,.6);border-top:1px solid rgba(11,9,7,.1);padding-top:12px}
.lane-receipt span{display:block;font-weight:800;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-1);margin-bottom:4px}
.lane-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:800;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--miami)}
.lane-card:hover .lane-cta{color:var(--red)}

/* FIN3 */


  /* Masthead */
  .masthead { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 24px clamp(28px, 4vw, 64px); background: var(--ink); color: var(--cream); border-bottom: 1px solid rgba(244,231,210,0.08); }

  .masthead::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: linear-gradient(90deg, transparent, var(--miami) 30%, var(--pink) 70%, transparent); opacity: 0.5; }

  .mast-mark img { height: 56px; transition: transform .3s; }

  .mast-mark:hover img { transform: rotate(-3deg); }

  .mast-nav { display: flex; align-items: center; gap: 36px; }

  .mast-link { font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--cream); position: relative; transition: color .25s; }

  .mast-link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: linear-gradient(90deg, var(--miami), var(--pink)); transition: right .3s; }

  .mast-link:hover, .mast-link.is-current { color: var(--miami-light); }

  .mast-link:hover::after, .mast-link.is-current::after { right: 0; }

.mast-nav .mm-trigger { background: transparent; border: 0; cursor: inherit; display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; }


@media (max-width: 900px) {
  .mast-nav .mm-item,
  .mast-nav > a.mast-link,
  .mast-nav .btn-blue { display: none; }
  .mm-hamburger { display: inline-flex; flex-direction: column; align-self: center; margin-left: auto; }
  .mm-panel { left: 0; right: 0; width: auto; max-height: calc(100vh - 80px); overflow-y: auto; }
  .mm-panel--mini, .mm-panel--align-work, .mm-panel--align-blog, .mm-panel--align-contact { width: auto; left: 0; right: 0; }
  .mm-services-grid { grid-template-columns: 1fr 1fr; }
  .mm-panel-inner { padding: 22px 18px 28px; }
  .mm-headline { font-size: 24px; margin-bottom: 16px; }
  .mast-nav.mm-mobile-open { position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; background: var(--cream, #F4E7D2); padding: 18px 20px; gap: 8px; box-shadow: 0 20px 40px -20px rgba(11,9,7,.2); border-top: 1px solid rgba(11,9,7,.08); }
  .mast-nav.mm-mobile-open .mm-item,
  .mast-nav.mm-mobile-open > a.mast-link,
  .mast-nav.mm-mobile-open .btn-blue { display: flex; }
  .mast-nav.mm-mobile-open .mm-trigger { width: 100%; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
  .mast-nav.mm-mobile-open > a.mast-link { padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
}


/* v5 polish · masthead CTA + trigger no-wrap fix */
.masthead .btn-blue, .masthead .btn-blue span, .mast-nav .mm-trigger, .mast-nav > a.mast-link { white-space: nowrap; }


/* v5 polish · masthead compaction (Alex 2026-06-28: nav row was floating in 460px dead zone — force explicit height; the mega/mini panels inside the <header> were inflating the natural height) */
.masthead { padding-top: 14px !important; padding-bottom: 14px !important; height: 108px !important; min-height: 0 !important; max-height: 108px !important; overflow: visible !important; }

.masthead .mast-mark img { height: 80px !important; }

.masthead.is-stuck { padding-top: 10px !important; padding-bottom: 10px !important; height: 80px !important; max-height: 80px !important; }

.masthead.is-stuck .mast-mark img { height: 60px !important; }

/* Mega/mini panels are absolutely positioned children of <header> — make sure they don't contribute to masthead box flow */
.masthead .mm-panel { position: absolute !important; }

body.is-matrix .masthead { background-color: #000 !important; border-bottom-color: rgba(0,255,65,0.3) !important; }


/* Backgrounds — force black/very-dark across every section */
body.is-matrix section, body.is-matrix article, body.is-matrix header, body.is-matrix footer, body.is-matrix main, body.is-matrix aside,
body.is-matrix div, body.is-matrix nav,
body.is-matrix [class*="section"], body.is-matrix [class*="-section"],
body.is-matrix [class*="hero"], body.is-matrix [class*="-bar"], body.is-matrix [class*="-band"],
body.is-matrix [class*="--cream"], body.is-matrix [class*="--paper"], body.is-matrix [class*="--ink"] {
  background-color: transparent !important;
}


/* Masthead — solid black, green underline */
body.is-matrix .masthead { background-color: #000 !important; border-bottom: 1px solid rgba(0,255,65,0.4) !important; }


/* Nav menu — miami blue with strong contrast */
body.is-matrix .masthead,
body.is-matrix .mast-nav,
body.is-matrix .mast-link,
body.is-matrix .mm-trigger {
  color: #00D9FF !important;
  text-shadow: 0 0 4px rgba(0,217,255,0.4) !important;
}

body.is-matrix .mast-link:hover,
body.is-matrix .mm-trigger:hover { color: #66E9FF !important; }


/* Footer social icons — recolor filter to make them visible */
body.is-matrix footer img,
body.is-matrix .foot-social img,
body.is-matrix [class*="social"] img {
  filter: brightness(0) saturate(100%) invert(64%) sepia(96%) saturate(2500%) hue-rotate(158deg) brightness(103%) contrast(101%) drop-shadow(0 0 4px rgba(0,217,255,0.5)) !important;
  opacity: 1 !important;
}

body.is-matrix footer,
body.is-matrix footer a,
body.is-matrix .foot-link,
body.is-matrix [class*="foot"] a {
  color: #00D9FF !important;
  text-shadow: 0 0 4px rgba(0,217,255,0.4) !important;
}



/* === MATRIX v3 fix: logo hue, mascot, video, sticky-cta, cards, hero text === */

/* === 1. LOGO not pink: exempt the cyan lockup image from the global hue-rotate === */
body.is-matrix .mast-mark img,
body.is-matrix .foot-mark img,
body.is-matrix .mm-host header img {
  filter: none !important;
  opacity: 1 !important;
}
.lane-cta svg{width:14px;height:8px}
.mm-panel svg,.masthead svg{max-width:22px;max-height:22px}

/* FIN4-BTN */

  .btn-blue { display: inline-flex; align-items: center; gap: 12px; padding: 14px 22px; background: var(--miami); color: var(--ink); border: 2px solid var(--miami); font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)); transition: background .25s, color .25s, border-color .25s, transform .2s, box-shadow .25s; }

  .btn-blue:hover { background: var(--red); border-color: var(--red); color: var(--cream); transform: translateY(-1px); box-shadow: 0 10px 28px rgba(225,31,38,0.36); }

  .btn-blue svg { width: 14px; height: 8px; }


@media (max-width: 900px) {
  .mast-nav .mm-item,
  .mast-nav > a.mast-link,
  .mast-nav .btn-blue { display: none; }
  .mm-hamburger { display: inline-flex; flex-direction: column; align-self: center; margin-left: auto; }
  .mm-panel { left: 0; right: 0; width: auto; max-height: calc(100vh - 80px); overflow-y: auto; }
  .mm-panel--mini, .mm-panel--align-work, .mm-panel--align-blog, .mm-panel--align-contact { width: auto; left: 0; right: 0; }
  .mm-services-grid { grid-template-columns: 1fr 1fr; }
  .mm-panel-inner { padding: 22px 18px 28px; }
  .mm-headline { font-size: 24px; margin-bottom: 16px; }
  .mast-nav.mm-mobile-open { position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; background: var(--cream, #F4E7D2); padding: 18px 20px; gap: 8px; box-shadow: 0 20px 40px -20px rgba(11,9,7,.2); border-top: 1px solid rgba(11,9,7,.08); }
  .mast-nav.mm-mobile-open .mm-item,
  .mast-nav.mm-mobile-open > a.mast-link,
  .mast-nav.mm-mobile-open .btn-blue { display: flex; }
  .mast-nav.mm-mobile-open .mm-trigger { width: 100%; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
  .mast-nav.mm-mobile-open > a.mast-link { padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
}


/* v5 polish · masthead CTA + trigger no-wrap fix */
.masthead .btn-blue, .masthead .btn-blue span, .mast-nav .mm-trigger, .mast-nav > a.mast-link { white-space: nowrap; }

body.is-matrix .btn-blue, body.is-matrix .btn-red, body.is-matrix [class*="btn-"] {
  background-color: rgba(0,255,65,0.12) !important;
  color: #00FF41 !important;
  border: 1.5px solid #00FF41 !important;
}

body.is-matrix .btn-blue:hover, body.is-matrix [class*="btn-"]:hover {
  background: #00FF41 !important;
  color: #000 !important;
  box-shadow: 0 0 22px rgba(0,255,65,0.6);
}


/* All CTAs / buttons / links styled as buttons */
body.is-matrix .btn-blue, body.is-matrix .btn-red, body.is-matrix .btn-silver, body.is-matrix [class*="btn-"],
body.is-matrix .au-bid-cta, body.is-matrix .ds-cta, body.is-matrix [class*="-cta"] {
  background-color: rgba(0,255,65,0.12) !important;
  color: #00FF41 !important;
  border: 1.5px solid #00FF41 !important;
  text-shadow: 0 0 6px rgba(0,255,65,0.6) !important;
}



/* === MATRIX v2 miami blue accent for legibility === */
/* CTAs / buttons — miami blue outline that hovers to solid fill (kills unreadable green-on-green) */
body.is-matrix .btn-blue,
body.is-matrix .btn-red,
body.is-matrix .btn-silver,
body.is-matrix [class*="btn-"],
body.is-matrix [class*="-cta"],
body.is-matrix a.btn,
body.is-matrix button.btn {
  background-color: transparent !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 6px rgba(0,217,255,0.5) !important;
  box-shadow: 0 0 12px rgba(0,217,255,0.15), inset 0 0 8px rgba(0,217,255,0.08) !important;
}

body.is-matrix .btn-blue:hover,
body.is-matrix [class*="btn-"]:hover,
body.is-matrix [class*="-cta"]:hover {
  background-color: #00D9FF !important;
  color: #000 !important;
  box-shadow: 0 0 24px rgba(0,217,255,0.7) !important;
}


/* === 6. "READ ALL REVIEWS ON GOOGLE" and any dark-fill button: force cyan outline === */
body.is-matrix a[href*="google.com"],
body.is-matrix a[href*="reviews"],
body.is-matrix a[href*="review"],
body.is-matrix .review-cta,
body.is-matrix .reviews-cta,
body.is-matrix [class*="google-review"],
body.is-matrix [class*="review-btn"],
body.is-matrix a.btn-ink,
body.is-matrix a.btn-black,
body.is-matrix a.btn-dark {
  background-color: transparent !important;
  background: transparent !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 4px rgba(0,217,255,0.5) !important;
}

body.is-matrix a[href*="google.com"]:hover,
body.is-matrix a[href*="reviews"]:hover,
body.is-matrix .review-cta:hover,
body.is-matrix a.btn-ink:hover,
body.is-matrix a.btn-black:hover {
  background: #00D9FF !important;
  background-color: #00D9FF !important;
  color: #000 !important;
}



/* === MATRIX v3.1 gold-gradient buttons -> cyan outline === */
body.is-matrix .btn-gold,
body.is-matrix [class*="btn-gold"],
body.is-matrix .btn-metal,
body.is-matrix [class*="gold-metal"] {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 6px rgba(0,217,255,0.5) !important;
  box-shadow: 0 0 12px rgba(0,217,255,0.2) !important;
}

body.is-matrix .btn-gold:hover,
body.is-matrix [class*="btn-gold"]:hover {
  background: #00D9FF !important;
  background-color: #00D9FF !important;
  background-image: none !important;
  color: #000 !important;
}
.masthead a{text-decoration:none}
.mm-trigger{text-decoration:none}




/* === PORTED closing/contact form bundle === */
.closing {
  background: var(--ink); color: var(--cream);
  padding: var(--xl) 0 var(--lg);
  position: relative; overflow: hidden;
}
.closing::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(70% 70% at 80% 30%, rgba(225,31,38,0.12) 0%, transparent 60%);
}
.closing-bull {
  position: absolute; right: -8%; top: 10%;
  width: 56%; max-width: 760px;
  max-height: 80%;
  opacity: 0.24; pointer-events: none;
  filter: brightness(1.5) contrast(1.05) saturate(0.9) drop-shadow(0 18px 36px rgba(0,0,0,0.5));
}
.closing-bull img {
  width: 100%; height: 100%; object-fit: contain; object-position: right top;
  clip-path: inset(0 0 38% 0);
}
.closing-inner { position: relative; z-index: 2; }
.closing-display {
  font-family: var(--font-forma-djr-display), "DJR Display"; font-weight: 700;
  font-size: clamp(44px, 6.2vw, 104px); line-height: 0.9;
  letter-spacing: -0.04em;
}
.closing-display .line { display: block; }
.closing-display .gold {
  background: var(--gold-metal);
  -webkit-background-clip: text; background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
}
.closing-row {
  margin-top: clamp(18px, 2.2vw, 36px);
  padding-top: 24px;
  border-top: 1px solid var(--cream-20);
  display: grid; grid-template-columns: 1fr 1.1fr;
  gap: clamp(32px, 4vw, 64px); align-items: center;
}
.closing-pitch { display: flex; flex-direction: column; gap: 22px; }
.closing-blurb {
  font-size: clamp(17px, 1.3vw, 21px); line-height: 1.35; color: var(--cream-60);
  max-width: 540px;
}
.closing-blurb strong { color: var(--cream); font-weight: 600; }
.closing-promise { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.closing-promise li {
  display: flex; align-items: center; gap: 12px;
  font-family: var(--font-forma-djr-text), "DJR Text"; font-size: 13px; letter-spacing: 0.04em;
  color: var(--cream);
}
.closing-promise li::before {
  content: ""; width: 18px; height: 2px; background: var(--miami);
  flex-shrink: 0;
}

/* === Contact form === */
.contact-form {
  background: rgba(244,231,210,0.04);
  border: 1px solid rgba(244,231,210,0.18);
  padding: clamp(20px, 2vw, 30px);
  display: flex; flex-direction: column; gap: 11px;
  clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 14px 100%, 0 calc(100% - 14px));
  position: relative;
}
.contact-form::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px;
  background: linear-gradient(90deg,
    var(--miami) 0%,
    var(--gold-base) 25%,
    var(--pink) 50%,
    var(--red) 75%,
    var(--miami) 100%);
  background-size: 200% 100%;
  animation: cfRainbow 5s linear infinite, cfPulse 2.6s ease-in-out infinite;
}
@keyframes cfRainbow {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
@keyframes cfPulse {
  0%, 100% { opacity: 0.55; height: 2px; }
  50% { opacity: 1; height: 3px; }
}
.cf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cf-field { display: flex; flex-direction: column; gap: 6px; }
.cf-label {
  font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 10px;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--cream-60);
}
.cf-label em { color: var(--miami-light); font-style: normal; margin-left: 2px; }
.cf-field input,
.cf-field select,
.cf-field textarea {
  font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 500; font-size: 14px;
  padding: 10px 14px;
  background: rgba(11,9,7,0.55);
  color: var(--cream);
  border: 1px solid rgba(244,231,210,0.18);
  outline: none;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
  width: 100%; box-sizing: border-box;
  cursor: none;
}
.cf-field textarea { resize: vertical; min-height: 96px; line-height: 1.45; }
.cf-field input::placeholder, .cf-field textarea::placeholder { color: rgba(244,231,210,0.35); }
.cf-field input:focus, .cf-field select:focus, .cf-field textarea:focus {
  border-color: var(--miami);
  background: rgba(11,9,7,0.7);
  box-shadow: 0 0 0 3px rgba(0,183,212,0.18);
}
.cf-field select { appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--cream-60) 50%), linear-gradient(135deg, var(--cream-60) 50%, transparent 50%); background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; padding-right: 36px; }
.cf-consent {
  display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start;
  font-family: var(--font-forma-djr-text), "DJR Text"; font-size: 12px; line-height: 1.4;
  color: var(--cream-60);
  cursor: none;
}
.cf-consent em { font-style: italic; color: var(--cream); }
.cf-consent input[type="checkbox"] {
  appearance: none; -webkit-appearance: none;
  width: 18px; height: 18px;
  background: rgba(11,9,7,0.55);
  border: 1.5px solid var(--cream-40);
  display: grid; place-items: center;
  cursor: none;
  margin: 2px 0 0;
  transition: border-color .2s ease, background .2s ease;
}
.cf-consent input[type="checkbox"]:checked {
  background: var(--miami);
  border-color: var(--miami);
}
.cf-consent input[type="checkbox"]:checked::after {
  content: ""; width: 10px; height: 6px;
  border-left: 2px solid var(--ink); border-bottom: 2px solid var(--ink);
  transform: rotate(-45deg) translate(1px, -1px);
}
.cf-submit {
  margin-top: 8px;
  display: inline-flex; align-items: center; justify-content: center; gap: 14px;
  padding: 16px 22px;
  font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 13px;
  letter-spacing: 0.22em; text-transform: uppercase;
  background: var(--miami); color: var(--ink);
  border: 2px solid var(--miami);
  cursor: none;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .2s ease;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px));
}
.cf-submit svg { width: 16px; height: 9px; }
.cf-submit:hover {
  background: var(--red); border-color: var(--red); color: var(--cream);
  transform: translateY(-1px);
}
.cf-fine {
  margin: 0; padding-top: 4px;
  font-family: var(--font-forma-djr-text), "DJR Text"; font-size: 10.5px;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--cream-40); text-align: center;
}
@media (max-width: 900px) {
  .closing-row { grid-template-columns: 1fr; }
  .cf-row { grid-template-columns: 1fr; }
}


/* === BATCH2 lane number + grey bar === */
/* Lane num top-glyph clipping fix */
.lane-num { padding-top: 0.12em !important; overflow: visible !important; }
.lane-inner { overflow: visible !important; }
/* Homepage hero -> nav grey bar divider */
.hero-topbar { height: 44px; background: #1A1817; border-bottom: 1px solid rgba(191,191,191,0.22); display: block; width: 100%; }



/* mast-core */

  


  /* Masthead */
  .masthead { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 24px clamp(28px, 4vw, 64px); background: var(--ink); color: var(--cream); border-bottom: 1px solid rgba(244,231,210,0.08); }

  .masthead::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: linear-gradient(90deg, transparent, var(--miami) 30%, var(--pink) 70%, transparent); opacity: 0.5; }

  .mast-mark img { height: 56px; transition: transform .3s; }

  .mast-mark:hover img { transform: rotate(-3deg); }

  .mast-nav { display: flex; align-items: center; gap: 36px; }

  .mast-link { font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--cream); position: relative; transition: color .25s; }

  .mast-link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: linear-gradient(90deg, var(--miami), var(--pink)); transition: right .3s; }

  .mast-link:hover, .mast-link.is-current { color: var(--miami-light); }

  .mast-link:hover::after, .mast-link.is-current::after { right: 0; }

  .btn-blue { display: inline-flex; align-items: center; gap: 12px; padding: 14px 22px; background: var(--miami); color: var(--ink); border: 2px solid var(--miami); font-family: var(--font-forma-djr-text), "DJR Text"; font-weight: 700; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)); transition: background .25s, color .25s, border-color .25s, transform .2s, box-shadow .25s; }

  .btn-blue:hover { background: var(--red); border-color: var(--red); color: var(--cream); transform: translateY(-1px); box-shadow: 0 10px 28px rgba(225,31,38,0.36); }

  .btn-blue svg { width: 14px; height: 8px; }

.mast-nav .mm-trigger { background: transparent; border: 0; cursor: inherit; display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; }


@media (max-width: 900px) {
  .mast-nav .mm-item,
  .mast-nav > a.mast-link,
  .mast-nav .btn-blue { display: none; }
  .mm-hamburger { display: inline-flex; flex-direction: column; align-self: center; margin-left: auto; }
  .mm-panel { left: 0; right: 0; width: auto; max-height: calc(100vh - 80px); overflow-y: auto; }
  .mm-panel--mini, .mm-panel--align-work, .mm-panel--align-blog, .mm-panel--align-contact { width: auto; left: 0; right: 0; }
  .mm-services-grid { grid-template-columns: 1fr 1fr; }
  .mm-panel-inner { padding: 22px 18px 28px; }
  .mm-headline { font-size: 24px; margin-bottom: 16px; }
  .mast-nav.mm-mobile-open { position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; background: var(--cream, #F4E7D2); padding: 18px 20px; gap: 8px; box-shadow: 0 20px 40px -20px rgba(11,9,7,.2); border-top: 1px solid rgba(11,9,7,.08); }
  .mast-nav.mm-mobile-open .mm-item,
  .mast-nav.mm-mobile-open > a.mast-link,
  .mast-nav.mm-mobile-open .btn-blue { display: flex; }
  .mast-nav.mm-mobile-open .mm-trigger { width: 100%; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
  .mast-nav.mm-mobile-open > a.mast-link { padding: 10px 0; border-bottom: 1px solid rgba(11,9,7,.06); }
}


/* v5 polish · masthead CTA + trigger no-wrap fix */
.masthead .btn-blue, .masthead .btn-blue span, .mast-nav .mm-trigger, .mast-nav > a.mast-link { white-space: nowrap; }


/* v5 polish · masthead compaction (Alex 2026-06-28: nav row was floating in 460px dead zone — force explicit height; the mega/mini panels inside the <header> were inflating the natural height) */
.masthead { padding-top: 14px !important; padding-bottom: 14px !important; height: 108px !important; min-height: 0 !important; max-height: 108px !important; overflow: visible !important; }

.masthead .mast-mark img { height: 80px !important; }

.masthead.is-stuck { padding-top: 10px !important; padding-bottom: 10px !important; height: 80px !important; max-height: 80px !important; }

.masthead.is-stuck .mast-mark img { height: 60px !important; }

/* Mega/mini panels are absolutely positioned children of <header> — make sure they don't contribute to masthead box flow */
.masthead .mm-panel { position: absolute !important; }

body.is-matrix .masthead { background-color: #000 !important; border-bottom-color: rgba(0,255,65,0.3) !important; }

body.is-matrix .btn-blue, body.is-matrix .btn-red, body.is-matrix [class*="btn-"] {
  background-color: rgba(0,255,65,0.12) !important;
  color: #00FF41 !important;
  border: 1.5px solid #00FF41 !important;
}

body.is-matrix .btn-blue:hover, body.is-matrix [class*="btn-"]:hover {
  background: #00FF41 !important;
  color: #000 !important;
  box-shadow: 0 0 28px rgba(0,255,65,0.7) !important;
}


/* All CTAs / buttons / links styled as buttons */
body.is-matrix .btn-blue, body.is-matrix .btn-red, body.is-matrix .btn-silver, body.is-matrix [class*="btn-"],
body.is-matrix .au-bid-cta, body.is-matrix .ds-cta, body.is-matrix [class*="-cta"] {
  background-color: rgba(0,255,65,0.12) !important;
  color: #00FF41 !important;
  border: 1.5px solid #00FF41 !important;
  text-shadow: 0 0 6px rgba(0,255,65,0.6) !important;
}


/* Masthead — solid black, green underline */
body.is-matrix .masthead { background-color: #000 !important; border-bottom: 1px solid rgba(0,255,65,0.4) !important; }



/* === MATRIX v2 miami blue accent for legibility === */
/* CTAs / buttons — miami blue outline that hovers to solid fill (kills unreadable green-on-green) */
body.is-matrix .btn-blue,
body.is-matrix .btn-red,
body.is-matrix .btn-silver,
body.is-matrix [class*="btn-"],
body.is-matrix [class*="-cta"],
body.is-matrix a.btn,
body.is-matrix button.btn {
  background-color: transparent !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 6px rgba(0,217,255,0.5) !important;
  box-shadow: 0 0 12px rgba(0,217,255,0.15), inset 0 0 8px rgba(0,217,255,0.08) !important;
}

body.is-matrix .btn-blue:hover,
body.is-matrix [class*="btn-"]:hover,
body.is-matrix [class*="-cta"]:hover {
  background-color: #00D9FF !important;
  color: #000 !important;
  box-shadow: 0 0 24px rgba(0,217,255,0.7) !important;
}


/* Nav menu — miami blue with strong contrast */
body.is-matrix .masthead,
body.is-matrix .mast-nav,
body.is-matrix .mast-link,
body.is-matrix .mm-trigger {
  color: #00D9FF !important;
  text-shadow: 0 0 4px rgba(0,217,255,0.4) !important;
}

body.is-matrix .mast-link:hover,
body.is-matrix .mm-trigger:hover { color: #66E9FF !important; }



/* === MATRIX v3 fix: logo hue, mascot, video, sticky-cta, cards, hero text === */

/* === 1. LOGO not pink: exempt the cyan lockup image from the global hue-rotate === */
body.is-matrix .mast-mark img,
body.is-matrix .foot-mark img,
body.is-matrix .mm-host header img {
  filter: none !important;
  opacity: 1 !important;
}


/* === 6. "READ ALL REVIEWS ON GOOGLE" and any dark-fill button: force cyan outline === */
body.is-matrix a[href*="google.com"],
body.is-matrix a[href*="reviews"],
body.is-matrix a[href*="review"],
body.is-matrix .review-cta,
body.is-matrix .reviews-cta,
body.is-matrix [class*="google-review"],
body.is-matrix [class*="review-btn"],
body.is-matrix a.btn-ink,
body.is-matrix a.btn-black,
body.is-matrix a.btn-dark {
  background-color: transparent !important;
  background: transparent !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 4px rgba(0,217,255,0.5) !important;
}

body.is-matrix a[href*="google.com"]:hover,
body.is-matrix a[href*="reviews"]:hover,
body.is-matrix .review-cta:hover,
body.is-matrix a.btn-ink:hover,
body.is-matrix a.btn-black:hover {
  background: #00D9FF !important;
  background-color: #00D9FF !important;
  color: #000 !important;
}



/* === MATRIX v3.1 gold-gradient buttons -> cyan outline === */
body.is-matrix .btn-gold,
body.is-matrix [class*="btn-gold"],
body.is-matrix .btn-metal,
body.is-matrix [class*="gold-metal"] {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #00D9FF !important;
  border: 1.5px solid #00D9FF !important;
  text-shadow: 0 0 6px rgba(0,217,255,0.5) !important;
  box-shadow: 0 0 12px rgba(0,217,255,0.2) !important;
}

body.is-matrix .btn-gold:hover,
body.is-matrix [class*="btn-gold"]:hover {
  background: #00D9FF !important;
  background-color: #00D9FF !important;
  background-image: none !important;
  color: #000 !important;
}




.fd-section + .fd-section,
[class*="-section"] + [class*="-section"] {
  position: relative;
}
.section-divider::before,
.au-section + .au-section::before,
.cp-section + .cp-section::before,
.fd-section + .fd-section::before,
[class*="-section"] + [class*="-section"]::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--miami, #00B7D4) 30%,
    var(--gold-base, #D4A23A) 50%,
    var(--red, #E11F26) 70%,
    transparent 100%);
  opacity: 0;
  transition: opacity .8s ease;
  pointer-events: none;
}
.section-divider.is-visible::before,
.au-section.is-visible + .au-section::before,
.cp-section.is-visible + .cp-section::before,
.fd-section.is-visible + .fd-section::before,
[class*="-section"].is-visible + [class*="-section"]::before {
  opacity: 0.4;
}


/* v5 polish · trust badge color tint */
.foot-badges .trust-badge,
.trust-badge {
  transition: filter .3s ease, transform .3s ease;
  filter: brightness(0.85) saturate(0.6);
}
.foot-badges .trust-badge:hover,
.trust-badge:hover {
  filter: brightness(1.15) saturate(1.1);
  transform: translateY(-2px);
}
.foot-badges .trust-badge:nth-child(1):hover { filter: hue-rotate(0deg)   brightness(1.15) saturate(1.2); }
.foot-badges .trust-badge:nth-child(2):hover { filter: hue-rotate(20deg)  brightness(1.15); }
.foot-badges .trust-badge:nth-child(3):hover { filter: hue-rotate(-20deg) brightness(1.15); }
.foot-badges .trust-badge:nth-child(4):hover { filter: hue-rotate(180deg) brightness(1.15) saturate(1.2); }
.foot-badges .trust-badge:nth-child(5):hover { filter: hue-rotate(40deg)  brightness(1.2); }
.foot-badges .trust-badge:nth-child(6):hover { filter: hue-rotate(-40deg) brightness(1.2); }
.foot-badges .trust-badge:nth-child(7):hover { filter: hue-rotate(60deg)  brightness(1.2); }
/* v5 polish · eyebrow pulse */
.section-kicker::before,
.section-eyebrow::before,
.mm-eyebrow::before,
.hero-eyebrow::before,
.guarantee-eyebrow::before,
.fv-eyebrow::before,
.feat-eyebrow::before,
.lead-eyebrow::before,
.cta-eyebrow::before,
.metric-eyebrow::before,
.side-eyebrow::before,
.tldr-eyebrow::before,
.callout-eyebrow::before,
.restore-eyebrow::before {
  content: "";
  display: inline-block;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--miami, #00B7D4);
  margin-right: 10px;
  box-shadow: 0 0 0 0 rgba(11,211,211,0.5);
  animation: v5EyebrowPulse 2.4s ease-in-out infinite;
  vertical-align: middle;
}

/* Preserve existing glyph; add pulse via ::after */
.ib-section-eyebrow::after {
  content: "";
  display: inline-block;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--miami, #00B7D4);
  margin-left: 10px;
  box-shadow: 0 0 0 0 rgba(11,211,211,0.5);
  animation: v5EyebrowPulse 2.4s ease-in-out infinite;
  vertical-align: middle;
}

/* On cream-background sections use red for contrast */
.section--cream .section-kicker::before,
.section--cream .mm-eyebrow::before,
.section--cream .section-eyebrow::before,
.section--paper .section-kicker::before,
.section--paper .mm-eyebrow::before,
.paper-section .section-kicker::before {
  background: var(--red, #E11F26);
  box-shadow: 0 0 0 0 rgba(225,31,38,0.5);
  animation-name: v5EyebrowPulseRed;
}
@keyframes v5EyebrowPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(11,211,211,0.5); opacity: 1; }
  50%      { box-shadow: 0 0 0 6px rgba(11,211,211,0); opacity: 0.6; }
}
@keyframes v5EyebrowPulseRed {
  0%, 100% { box-shadow: 0 0 0 0 rgba(225,31,38,0.5); opacity: 1; }
  50%      { box-shadow: 0 0 0 6px rgba(225,31,38,0); opacity: 0.6; }
}
@media (prefers-reduced-motion: reduce) {
  .section-kicker::before, .section-eyebrow::before, .mm-eyebrow::before,
  [class$="-eyebrow"]::before, [class$="-eyebrow"]::after {
    animation: none;
  }
}

/* v5 polish · masthead CTA + trigger no-wrap fix */
.masthead .btn-blue, .masthead .btn-blue span, .mast-nav .mm-trigger, .mast-nav > a.mast-link { white-space: nowrap; }

/* v5 polish · masthead compaction (Alex 2026-06-28: nav row was floating in 460px dead zone · force explicit height; the mega/mini panels inside the <header> were inflating the natural height) */
.masthead { padding-top: 14px !important; padding-bottom: 14px !important; height: 108px !important; min-height: 0 !important; max-height: 108px !important; overflow: visible !important; }
.masthead .mast-mark img { height: 80px !important; }
.masthead.is-stuck { padding-top: 10px !important; padding-bottom: 10px !important; height: 80px !important; max-height: 80px !important; }
.masthead.is-stuck .mast-mark img { height: 60px !important; }
/* Mega/mini panels are absolutely positioned children of <header> · make sure they don't contribute to masthead box flow */
.masthead .mm-panel { position: absolute !important; }



/* Cap image display sizes proportional to Storyblok source resolution so upscale-blur stops */
img[src*="storyblok.com/f/1023744/380x640/"] { max-width: 570px; }
img[src*="storyblok.com/f/1023744/262x357/"] { max-width: 393px; }
img[src*="storyblok.com/f/1023744/600x918/"] { max-width: 900px; }
img[src*="storyblok.com/f/1023744/1083x747/"] { max-width: 1625px; }
img[src*="storyblok.com/f/1023744/1137x762/"] { max-width: 1705px; }
img[src*="storyblok.com/f/1023744/381623/"] { max-width: 100%; }
@media (min-width: 1101px) {
  .work-grid { max-width: 1140px; margin: 0 auto; }
}


/* ============================================================
   SERVICES INDEX v5 REBUILD (2026-07-20)
   Hero lane-board, trust row, dark icon lanes, 5-phase process,
   closing CTA. svc-* CSS was lost in the recovery; authored here
   in the v5 system. Tokens with fallbacks so nothing depends on
   an uncertain global. Gold = metallic gradient per brand rule.
   ============================================================ */
.accent-red{color:var(--red,#E11F26)}

/* --- HERO: 2-col copy + live lane board --- */
.sv-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,4vw,72px);align-items:center}
.sv-hero-copy{min-width:0}
.sv-hero-ctas{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}
.btn-ghost{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;background:transparent;color:var(--ink,#0B0907);border:2px solid rgba(11,9,7,.22);font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:11px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));transition:border-color .25s,color .25s,transform .2s}
.btn-ghost:hover{border-color:var(--red,#E11F26);color:var(--red,#E11F26);transform:translateY(-2px)}

.sv-board{background:#0B0907;color:var(--cream,#F4E7D2);padding:clamp(18px,1.8vw,26px);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));box-shadow:0 30px 70px rgba(11,9,7,.28);border:1px solid rgba(244,231,210,.1)}
.sv-board-bar{display:flex;align-items:center;gap:10px;padding-bottom:14px;margin-bottom:6px;border-bottom:1px solid rgba(244,231,210,.14)}
.sv-board-dot{width:8px;height:8px;border-radius:50%;background:var(--red,#E11F26);box-shadow:0 0 10px var(--red,#E11F26);animation:svbPulse 1.6s ease-in-out infinite}
@keyframes svbPulse{0%,100%{opacity:1}50%{opacity:.35}}
.sv-board-title{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-bright,#F4DC8E)}
.sv-board-live{margin-left:auto;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--miami,#00B7D4)}
.sv-board-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:13px 4px;border-bottom:1px solid rgba(244,231,210,.08)}
.sv-board-row:last-child{border-bottom:0}
.sv-board-num{font-weight:800;font-size:10px;letter-spacing:.2em;color:rgba(244,231,210,.4)}
.sv-board-name{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:clamp(15px,1.3vw,18px)}
.sv-board-metric{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:13px;color:var(--gold-bright,#F4DC8E);white-space:nowrap}
.sv-board-metric em{font-style:normal;font-weight:500;color:rgba(244,231,210,.55);font-size:11px;letter-spacing:.04em}
.sv-board-ind{font-size:11px;color:#37D67A}
.sv-board-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(244,231,210,.14)}
.sv-board-foot span{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(244,231,210,.5)}
.sv-board-foot strong{font-family:var(--font-forma-djr-display),"DJR Display";font-size:14px;color:var(--cream,#F4E7D2)}

/* --- TRUST ROW --- */
.svc-trust-row{background:var(--cream,#F4E7D2);border-bottom:1.5px solid rgba(11,9,7,.12);padding:26px 0}
.svc-trust-inner{display:flex;align-items:center;gap:clamp(20px,3vw,48px);flex-wrap:wrap}
.svc-trust-label{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:800;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(11,9,7,.5);white-space:nowrap}
.svc-trust-tiles{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px);flex-wrap:wrap}
.svc-trust-tile img{height:34px;width:auto;opacity:.62;filter:grayscale(1);transition:opacity .25s,filter .25s}
.svc-trust-tile img:hover{opacity:1;filter:none}

/* --- DARK LANES SECTION --- */
.section--ink{background:#0B0907;color:var(--cream,#F4E7D2);position:relative}
.svc-lanes{padding:clamp(64px,7vw,110px) 0;position:relative;overflow:hidden}
.svc-lanes-head{max-width:760px;margin:0 0 clamp(34px,4vw,56px)}
.svc-lanes .section-kicker,.svc-process .section-kicker{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.svc-lanes .section-kicker::before,.svc-process .section-kicker::before{display:none!important}
.svc-lanes .section-kicker .num{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:13px;color:var(--gold-bright,#F4DC8E)}
.svc-lanes .section-kicker .lbl{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:rgba(244,231,210,.7)}
.svc-lanes .section-kicker .div{flex:1;height:1px;background:rgba(244,231,210,.16)}
.svc-lanes-h{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:clamp(30px,3.6vw,50px);line-height:1.02;letter-spacing:-.015em;margin:0 0 16px}
.svc-lanes-h em{font-style:italic;color:var(--gold-bright,#F4DC8E)}
.svc-lanes-deck{font-family:var(--font-forma-djr-text),"DJR Text";font-size:clamp(15px,1.2vw,18px);line-height:1.6;color:rgba(244,231,210,.75);max-width:60ch;margin:0}

.svc-lanes .lane-card{background:#12100B;border:1px solid rgba(244,231,210,.12);color:var(--cream,#F4E7D2)}
.svc-lanes .lane-card:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(0,0,0,.5);border-color:rgba(11,211,211,.4)}
.svc-lanes .lane-num{color:var(--gold-bright,#F4DC8E);opacity:.85}
.svc-lanes .lane-name{color:var(--cream,#F4E7D2)}
.svc-lanes .lane-hook{color:var(--cream,#F4E7D2);font-weight:700}
.svc-lanes .lane-desc{color:rgba(244,231,210,.7)}
.lane-ic{display:block;width:52px;height:52px;margin:14px 0 6px}
.lane-ic svg{width:100%;height:100%}
.lane-tags{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 4px}
.lane-tags span{font-family:var(--font-forma-djr-text),"DJR Text";font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(244,231,210,.6);border:1px solid rgba(244,231,210,.2);padding:4px 9px;border-radius:2px}
.svc-lanes .lane-receipt{color:rgba(244,231,210,.62)}
.svc-lanes .lane-receipt span{color:var(--gold-bright,#F4DC8E)}
.svc-lanes .lane-cta{color:var(--miami,#00B7D4)}
.svc-lanes .lane-card:hover .lane-cta{color:var(--miami-light,#5EE5E5)}

.edge-bracket{position:absolute;width:22px;height:22px;border:2px solid rgba(11,211,211,.4);pointer-events:none;z-index:2}
.edge-bracket--tl{top:20px;left:20px;border-right:0;border-bottom:0}
.edge-bracket--tr{top:20px;right:20px;border-left:0;border-bottom:0}
.edge-bracket--bl{bottom:20px;left:20px;border-right:0;border-top:0}
.edge-bracket--br{bottom:20px;right:20px;border-left:0;border-top:0}

/* --- PROCESS --- */
.svc-process{background:var(--cream,#F4E7D2);color:var(--ink,#0B0907);padding:clamp(64px,7vw,110px) 0;border-top:1.5px solid rgba(11,9,7,.12)}
.svc-process .section-kicker .num{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:13px;color:var(--red,#E11F26)}
.svc-process .section-kicker .lbl{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:rgba(11,9,7,.6)}
.svc-process .section-kicker .div{flex:1;height:1px;background:rgba(11,9,7,.16)}
.svc-proc-h{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:clamp(30px,3.6vw,50px);line-height:1.02;letter-spacing:-.015em;margin:0 0 14px;max-width:20ch}
.svc-proc-h em{font-style:italic;color:var(--gold-base,#D4A23A)}
.svc-proc-deck{font-family:var(--font-forma-djr-text),"DJR Text";font-size:clamp(15px,1.2vw,18px);line-height:1.6;color:rgba(11,9,7,.7);max-width:60ch;margin:0 0 clamp(32px,4vw,52px)}
.svc-proc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(14px,1.6vw,22px)}
.svc-proc-card{background:#fff;border:1px solid rgba(11,9,7,.1);padding:clamp(22px,2vw,30px);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));transition:transform .28s,box-shadow .28s}
.svc-proc-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,9,7,.12)}
.svc-proc-num{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:30px;color:rgba(11,9,7,.18);display:block;line-height:1}
.svc-proc-card--red{background:var(--ink,#0B0907);color:var(--cream,#F4E7D2)}
.svc-proc-card--red .svc-proc-num{color:var(--red,#E11F26)}
.svc-proc-card--red .svc-proc-desc{color:rgba(244,231,210,.72)}
.svc-proc-name{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:20px;margin:12px 0 8px}
.svc-proc-desc{font-family:var(--font-forma-djr-text),"DJR Text";font-size:13.5px;line-height:1.55;color:rgba(11,9,7,.68);margin:0}

/* --- CLOSING --- */
.svc-close{background:#0B0907;color:var(--cream,#F4E7D2);padding:clamp(72px,8vw,130px) 0;text-align:center;position:relative}
.svc-close-inner{max-width:760px;margin:0 auto}
.svc-close-kicker{font-family:var(--font-forma-djr-text),"DJR Text";font-weight:700;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--miami,#00B7D4)}
.svc-close-h{font-family:var(--font-forma-djr-display),"DJR Display";font-weight:700;font-size:clamp(34px,4.4vw,62px);line-height:1;letter-spacing:-.02em;margin:16px 0 18px}
.svc-close-h .gold{background:linear-gradient(180deg,#FFEDB2 0%,#E9C56B 28%,#A07A24 68%,#5C420F 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.svc-close-deck{font-family:var(--font-forma-djr-text),"DJR Text";font-size:clamp(15px,1.2vw,18px);line-height:1.6;color:rgba(244,231,210,.75);margin:0 auto 32px;max-width:60ch}
.btn-lg{padding:18px 32px;font-size:12.5px}

@media (max-width:900px){
  .sv-hero-grid{grid-template-columns:1fr;gap:36px}
  .sv-board{max-width:520px}
  .svc-trust-inner{gap:18px}
}

/* --- services hero video background (restored original: qMEH9y_wyt8) --- */
.sv-hero{position:relative;overflow:hidden;min-height:clamp(520px,72vh,760px)}
.sv-hero .hero-inner{position:relative;z-index:2;width:100%}
.hero-video{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hero-video iframe{position:absolute;top:0;left:50%;width:max(100%,177.78vh);height:max(56.25vw,100%);transform:translateX(-50%);border:0;pointer-events:none}
.hero-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,231,210,.72) 0%,rgba(244,231,210,.55) 30%,rgba(244,231,210,.70) 65%,rgba(244,231,210,.92) 100%),radial-gradient(80% 70% at 20% 30%,rgba(244,231,210,.50) 0%,rgba(244,231,210,0) 65%)}
body.is-matrix .hero-video{display:none!important}
