
/* ============================================================
   FREELANCE PAINT REPAIRS — "THE SPRAY LINE"
   White · black · gold, sampled from the new logo.
   The spray gun is lifted out of the logo and used as a real
   page element: it sprays the headline gold, marks the section
   dividers, and watermarks the contact panel.
   The logo is never inverted — it only ever sits on white.
   ============================================================ */
:root{
  --gold-hi:#E7C98D;
  --gold:#C79241;
  --gold-dp:#8C5A1C;
  --gold-grad:linear-gradient(118deg,var(--gold-hi) 0%,var(--gold) 46%,var(--gold-dp) 100%);
  --black:#0A0A0A;
  --ink:#17171A;
  --paper:#F7F5F1;
  --line:#E4DFD5;
  --grey:#6E6A62;
  --mute-l:rgba(255,255,255,.66);
  --wrap:1220px;
  --spray-image:url("../img/spray.webp");
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:#fff;color:var(--ink);overflow-x:hidden;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-weight:400;font-size:17px;line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3,.disp{font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;line-height:.98;letter-spacing:.005em;margin:0}
h1{font-size:clamp(2.6rem,7vw,5.6rem)}
h2{font-size:clamp(2rem,4.4vw,3.4rem)}
h3{font-size:1.3rem;font-weight:600}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.mono{font-family:'Roboto Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.gold-text{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- entrance + scroll reveal ---------- */
.rv{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.7,.25,1),transform .75s cubic-bezier(.2,.7,.25,1)}
.rv.in{opacity:1;transform:none}
.rv-d1{transition-delay:.09s}.rv-d2{transition-delay:.18s}.rv-d3{transition-delay:.27s}
.rv-d4{transition-delay:.36s}.rv-d5{transition-delay:.45s}.rv-d6{transition-delay:.54s}
/* gold stroke that paints itself in */
.stroke{height:5px;width:120px;background:var(--gold-grad);transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.7,.25,1) .15s}
.in .stroke,.stroke.in{transform:scaleX(1)}

/* ---------- header ---------- */
.bar{position:sticky;top:0;z-index:70;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}
.bar-in{display:flex;align-items:center;gap:26px;height:98px}
.brand{margin-right:auto}
.brand img{height:68px;width:auto}
.nav{display:flex;gap:2px;align-items:center}
.nav a{
  font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:14.5px;
  letter-spacing:.06em;text-decoration:none;padding:10px 13px;position:relative;transition:color .2s;
}
.nav a::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:2px;background:var(--gold-grad);transform:scaleX(0);transform-origin:left;transition:transform .26s}
.nav a:hover::after,.nav a[aria-current]::after{transform:scaleX(1)}
.tel{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:15px;
  text-decoration:none;background:var(--black);color:#fff;padding:14px 22px;white-space:nowrap;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  transition:background .22s,color .22s;
}
.tel:hover{background:var(--gold);color:var(--black)}
.bar-rule{height:3px;background:var(--gold-grad)}
.burger{display:none;background:none;border:1px solid var(--line);padding:11px 13px;font:inherit;cursor:pointer}

/* ---------- HERO ---------- */
.hero{position:relative;padding:76px 0 0;overflow:hidden}
.hero::before{ /* faint gold atmosphere, like overspray in the air */
  content:"";position:absolute;left:-6%;top:6%;width:760px;height:760px;border-radius:50%;
  background:radial-gradient(circle,rgba(199,146,65,.15),transparent 62%);pointer-events:none;
}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center;position:relative;z-index:2}
.hero .mono{color:var(--gold-dp)}
.hero h1{margin-top:20px}
.hero h1 .l2{display:block}
/* the signature: one finished PNG keeps the gun and spray perfectly joined */
.sprayline{
  position:relative;display:flex;align-items:center;min-height:164px;margin-top:-18px;
  isolation:isolate;overflow:visible;
}
.spray-art{
  position:absolute;left:-62px;top:50%;z-index:-1;width:clamp(470px,44vw,650px);height:auto;
  display:block;aspect-ratio:3/2;background:var(--spray-image) center/contain no-repeat;
  transform:translate(-46px,-50%) rotate(-1.5deg);transform-origin:left center;opacity:0;
  transition:transform 1.05s cubic-bezier(.2,.75,.25,1) .1s,opacity .72s ease .1s;
  filter:drop-shadow(0 14px 22px rgba(10,10,10,.18));pointer-events:none;
}
.loaded .spray-art{transform:translate(0,-50%) rotate(-1.5deg);opacity:1}
/* retired split artwork retained in the source only for easy rollback */
.sprayline>.gun,.sprayline>.mist{display:none!important}
.gun{
  width:clamp(120px,15vw,196px);flex:none;margin-left:-16px;margin-right:-6px;
  transform:translateX(-40px) rotate(-4deg);opacity:0;
  transition:transform 1s cubic-bezier(.2,.75,.25,1) .1s,opacity .7s ease .1s;
  filter:drop-shadow(0 14px 22px rgba(10,10,10,.22));
}
.loaded .gun{transform:translateX(0) rotate(-4deg);opacity:1}
.mist{position:absolute;left:clamp(96px,12vw,158px);top:50%;width:min(560px,66%);transform:translateY(-52%) scaleX(.4);transform-origin:left center;opacity:0;transition:transform 1.15s cubic-bezier(.16,.8,.3,1) .5s,opacity .9s ease .5s;pointer-events:none;z-index:-1}
.loaded .mist{transform:translateY(-52%) scaleX(1);opacity:1}
.sprayword{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(2.6rem,7vw,5.6rem);line-height:.98;position:relative;z-index:1;
  margin-left:clamp(154px,14vw,204px);white-space:nowrap;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.16,.8,.3,1) .62s;
}
.loaded .sprayword{clip-path:inset(0 0 0 0)}
.hero-lede{font-size:1.14rem;color:var(--grey);max-width:45ch;margin-top:26px}
.cta{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}
.btn{
  display:inline-flex;align-items:center;gap:10px;text-decoration:none;cursor:pointer;border:0;
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  font-size:15.5px;padding:17px 30px;transition:.22s;
  clip-path:polygon(11px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 11px);
}
.btn-gold{background:var(--gold-grad);color:var(--black)}
.btn-gold:hover{filter:brightness(1.08);transform:translateY(-2px)}
.btn-dark{background:var(--black);color:#fff}
.btn-dark:hover{background:var(--gold);color:var(--black)}
.btn-out{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--black)}
.btn-out:hover{background:var(--paper)}
.btn-wa{background:#1FA855;color:#fff}
.btn-wa:hover{background:#177F41;transform:translateY(-2px)}
.btn svg{width:19px;height:19px;flex:none}
.hero-logo{
  position:relative;min-height:clamp(430px,46vw,620px);isolation:isolate;overflow:visible;
}
.hero-logo::before{
  content:"";position:absolute;inset:8% 48% 7% -5%;z-index:0;
  background:
    linear-gradient(166deg,transparent 8%,rgba(199,146,65,.12) 24%,rgba(199,146,65,.38) 39%,rgba(10,10,11,.16) 51%,transparent 69%);
  filter:blur(17px);transform:rotate(-3deg);opacity:.8;
}
.hero-swash{display:none}
.hero-logo img{
  position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center;
  filter:saturate(.92) contrast(1.04);
}

/* black stat bar */
.stats{background:var(--black);color:#fff;margin-top:56px;position:relative;overflow:hidden}
.stats::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--gold-grad)}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:34px 26px;border-right:1px solid rgba(255,255,255,.14)}
.stat:last-child{border-right:0}
.stat b{font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;font-size:1.9rem;display:block;line-height:1}
.stat b.g{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-l)}

/* ---------- spray divider: the complete PNG crosses the seam ---------- */
.divider{position:relative;height:210px;background:#fff;overflow:hidden}
.divider.to-dark{background:linear-gradient(#fff 0 50%,var(--black) 50% 100%)}
.divider.to-light{background:linear-gradient(var(--black) 0 50%,#fff 50% 100%)}
.divider::before{
  content:"";position:absolute;left:-18px;top:50%;z-index:1;
  width:min(720px,78vw);height:min(480px,52vw);transform:translateY(-50%) rotate(-1deg);
  background:var(--spray-image) center/contain no-repeat;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.24));pointer-events:none;
}
.divider .dgun,.divider .dmist{display:none!important}
.divider .dgun{position:absolute;left:2%;top:50%;width:120px;transform:translateY(-50%) rotate(-6deg);opacity:.95}
.divider.to-dark .dgun,.divider.to-light .dgun{filter:drop-shadow(0 8px 14px rgba(0,0,0,.35))}
.divider .dmist{position:absolute;left:calc(2% + 78px);top:50%;width:min(760px,62%);transform:translateY(-52%);opacity:.9}
.divider .dcode{position:absolute;right:32px;top:50%;z-index:2;transform:translateY(-50%);font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}

/* ---------- sections ---------- */
section{padding:104px 0}
.sec-head{max-width:62ch;margin-bottom:52px}
.sec-head h2{margin-top:18px}
.sec-head p{color:var(--grey);margin-top:20px}
.sec-head .stroke{margin-top:22px}
.dark{background:var(--black);color:#fff}
.dark .sec-head p{color:var(--mute-l)}
.dark .mono{color:var(--gold)}
.paper{background:var(--paper)}

/* services */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.svc{
  position:relative;background:#fff;padding:32px 28px 26px;overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--line);
  clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);
  transition:transform .28s,box-shadow .28s;
}
.svc::before{ /* gold overspray bloom on hover */
  content:"";position:absolute;right:-40px;top:-40px;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle,rgba(199,146,65,.3),transparent 66%);
  opacity:0;transform:scale(.6);transition:opacity .4s,transform .5s;
}
.svc:hover{transform:translateY(-6px);box-shadow:inset 0 0 0 1px var(--gold),0 20px 40px -22px rgba(10,10,10,.4)}
.svc:hover::before{opacity:1;transform:scale(1)}
.svc .n{font-family:'Roboto Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dp);display:block;margin-bottom:14px;position:relative}
.svc h3{position:relative}
.svc p{font-size:15px;color:var(--grey);margin:11px 0 0;position:relative}
.svc .price{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-family:'Roboto Mono',monospace;font-size:12.5px;position:relative}
.svc .price b{color:var(--gold-dp)}


/* v6 content additions */
.smart-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start;margin-top:46px}
.smart-copy{font-size:1.04rem;color:var(--grey)}
.smart-copy p+p{margin-top:18px}
.smart-points{display:grid;gap:14px}
.smart-point{background:#fff;border:1px solid var(--line);padding:20px 22px;display:grid;grid-template-columns:42px 1fr;gap:15px;align-items:start}
.smart-point .ico{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;font-family:'Orbitron',sans-serif;font-weight:700;color:var(--gold-dp)}
.smart-point b{display:block;font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.02rem;margin-bottom:4px}
.smart-point span{font-size:14px;color:var(--grey)}
.feature-band{background:var(--black);color:#fff;padding:0}
.feature-band .feature-in{display:grid;grid-template-columns:repeat(4,1fr)}
.feature{padding:30px 24px;border-right:1px solid rgba(255,255,255,.14);position:relative}
.feature:last-child{border-right:0}
.feature::before{content:"";position:absolute;left:24px;top:0;width:46px;height:3px;background:var(--gold-grad)}
.feature b{font-family:'Orbitron',sans-serif;text-transform:uppercase;display:block;margin-bottom:7px}
.feature span{font-size:13.5px;color:var(--mute-l)}
.lease-panel{margin-top:34px;background:linear-gradient(118deg,#111 0%,#1c1c20 60%,#0a0a0a 100%);color:#fff;padding:34px;position:relative;overflow:hidden}
.lease-panel::after{content:"LEASE RETURN";position:absolute;right:-8px;bottom:-18px;font-family:'Orbitron',sans-serif;font-size:5rem;font-weight:700;letter-spacing:.04em;color:rgba(255,255,255,.035);white-space:nowrap}
.lease-panel h3{font-size:1.55rem;margin-bottom:10px}
.lease-panel p{color:var(--mute-l);max-width:760px}
.lease-panel .btn{margin-top:20px}
.trust-note{display:grid;grid-template-columns:.72fr 1.28fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);padding:30px;margin-top:32px}
.trust-seal{width:150px;height:150px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;text-align:center;padding:18px;font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;line-height:1.1;margin:auto;box-shadow:inset 0 0 0 6px #fff,inset 0 0 0 7px var(--gold)}
.trust-note p{color:var(--grey)}
.review-placeholder{background:#fff;padding:30px;border:1px solid var(--line)}
.review-placeholder strong{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.15rem}
.review-placeholder p{color:var(--grey);margin-top:10px}
@media(max-width:900px){
  .smart-grid,.trust-note{grid-template-columns:1fr}
  .feature-band .feature-in{grid-template-columns:1fr 1fr}
  .feature:nth-child(2){border-right:0}
}
@media(max-width:620px){
  .feature-band .feature-in{grid-template-columns:1fr}
  .feature{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
  .feature:last-child{border-bottom:0}
}

/* before & after (on black) */
.ba{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.ba-stage{position:relative;aspect-ratio:4/3;overflow:hidden;background:#232327;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.pl{position:absolute;inset:0}
.pl-before{background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 44%),linear-gradient(#4a4a4f,#222226 60%,#38383d)}
.pl-before::after{content:"";position:absolute;left:16%;top:40%;width:56%;height:3px;background:linear-gradient(90deg,transparent,#d6d0c4,#efe9dd 55%,transparent);transform:rotate(-8deg);box-shadow:0 1px 0 rgba(0,0,0,.55)}
.pl-after{clip-path:inset(0 calc(100% - var(--reveal,52%)) 0 0);background:linear-gradient(112deg,rgba(255,255,255,.5) 0 13%,transparent 30%),radial-gradient(120% 90% at 22% 8%,rgba(255,255,255,.2),transparent 55%),linear-gradient(#57575e,#1a1a1c 62%,#45454c)}
.ba-seam{position:absolute;top:0;bottom:0;left:var(--reveal,52%);width:3px;background:var(--gold-grad)}
.ba-tag{position:absolute;bottom:14px;font-family:'Roboto Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:6px 11px;background:rgba(0,0,0,.66);color:#fff}
.ba-tag.l{left:14px}.ba-tag.r{right:14px;background:var(--gold);color:var(--black)}
.ba-range{width:100%;margin-top:16px;accent-color:var(--gold)}
.ba-cap{font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute-l);margin-top:8px}
.flow{list-style:none;margin:0;padding:0;counter-reset:s}
.flow li{counter-increment:s;display:grid;grid-template-columns:46px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.14);align-items:start}
.flow li::before{
  content:counter(s,decimal-leading-zero);font-family:'Orbitron',sans-serif;font-weight:700;font-size:1.1rem;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.flow li.key{position:relative}
.flow li.key .gunmark{position:absolute;right:-4px;top:8px;width:70px;opacity:.9}
.flow b{display:block;font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:1.05rem}
.flow span{font-size:14.5px;color:var(--mute-l)}

/* areas */
.area-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:54px;align-items:start}
.towns{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px}
.town{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.town b{font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:1.06rem}
.town span{font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.08em;color:var(--gold-dp)}
.mile{background:var(--black);color:#fff;padding:36px 32px;position:relative;overflow:hidden;
  clip-path:polygon(24px 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%,0 24px)}
.mile::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--gold-grad)}
.mile b{font-family:'Orbitron',sans-serif;font-weight:700;font-size:5rem;line-height:.86;display:block;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.mile p{color:var(--mute-l);margin-top:14px;font-size:15px}

/* reviews */
.rev-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rev{background:#fff;padding:30px 28px;box-shadow:inset 0 0 0 1px var(--line);position:relative}
.rev::before{content:"";position:absolute;left:0;top:0;width:64px;height:4px;background:var(--gold-grad)}
.rev .stars{color:var(--gold-dp);letter-spacing:4px;font-size:15px}
.rev blockquote{margin:14px 0 16px;font-size:1.02rem;line-height:1.6}
.rev cite{font-style:normal;font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.1em;color:var(--grey)}

/* contact (black, gun watermark) */
.contact{position:relative;overflow:hidden}
.contact .wm{position:absolute;right:-70px;bottom:-40px;width:min(560px,52vw);opacity:.14;pointer-events:none}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;position:relative;z-index:1}
.dl{border-top:1px solid rgba(255,255,255,.16);padding:18px 0}
.dl .k{font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute-l)}
.dl .v{font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:1.3rem;margin-top:5px}
.dl .v.plain{font-family:'Plus Jakarta Sans',sans-serif;font-weight:500;text-transform:none;font-size:1.02rem}
.dl .v a{text-decoration:none;color:var(--gold-hi)}
.wa-card{box-shadow:inset 0 0 0 1px rgba(31,168,85,.6);background:rgba(31,168,85,.1);padding:24px;margin-top:24px}
.wa-card b{font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:1.05rem;display:block;margin-bottom:8px}
.wa-card p{font-size:14.5px;color:var(--mute-l);margin-bottom:16px}
form{background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);padding:34px}
.f{margin-bottom:18px}
label{display:block;font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute-l);margin-bottom:8px}
input,select,textarea{
  width:100%;padding:14px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.2);
  color:#fff;font:inherit;font-size:15px;border-radius:0;
}
input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}
select option{color:#111}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
form .btn{width:100%;justify-content:center}
.formnote{font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.06em;color:var(--mute-l);margin:14px 0 0}
.formnote a{color:var(--gold-hi)}

/* privacy */
.privacy .body{columns:2;column-gap:52px;margin-top:28px;font-size:14.5px;color:#5C584F}
.privacy .body p{break-inside:avoid}
.privacy b{color:var(--ink);font-weight:600}

/* footer — logo stays on white */
footer{background:#fff;padding:52px 0 0}
.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
.foot img{height:88px}
.foot-links{display:flex;gap:6px;flex-wrap:wrap}
.foot-links a{font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:.05em;color:var(--grey);text-decoration:none;padding:8px 11px}
.foot-links a:hover{color:var(--gold-dp)}
.signoff{background:var(--black);color:rgba(255,255,255,.5);margin-top:44px;padding:18px 0;font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.12em}

/* floating WhatsApp */
.wa-float{
  position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:10px;
  background:#1FA855;color:#fff;text-decoration:none;font-family:'Orbitron',sans-serif;font-weight:700;
  text-transform:uppercase;font-size:14px;letter-spacing:.04em;padding:15px 21px;border-radius:999px;
  box-shadow:0 10px 26px rgba(0,0,0,.3);transition:transform .2s;
}
.wa-float:hover{transform:translateY(-3px)}
.wa-float svg{width:20px;height:20px}

@media(max-width:1040px){
  .hero-grid,.ba,.area-grid,.contact-grid{grid-template-columns:1fr;gap:44px}
  .hero-logo{max-width:520px;min-height:540px;margin:0 auto}
  .svc-grid,.rev-row{grid-template-columns:1fr 1fr}
  .stats-in{grid-template-columns:1fr 1fr}
  .stat:nth-child(2){border-right:0}
  .divider{height:150px}
  .divider::before{left:-34px;width:620px;height:413px}
  .divider .dgun{width:92px}
}
@media(max-width:760px){
  .nav{display:none}.burger{display:block}
  .bar-in{height:78px}.brand img{height:52px}
  section{padding:70px 0}
  .hero{padding-top:44px}
  .hero-logo{min-height:450px}
  .svc-grid,.rev-row,.towns,.f2{grid-template-columns:1fr}
  .stats-in{grid-template-columns:1fr}
  .stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
  .privacy .body{columns:1}
  .sprayline{min-height:118px;margin-top:-10px}
  .spray-art{left:-44px;width:390px}
  .sprayword{margin-left:112px;white-space:normal}
  .gun{width:92px;margin-left:-8px}
  .mist{left:70px;width:78%}
  .divider{height:120px}
  .divider::before{left:-48px;width:470px;height:313px}
  .divider .dmist{left:calc(2% + 56px);width:76%}
  .divider .dcode{display:none}
  .flow li.key .gunmark{display:none}
  .wa-float span{display:none}.wa-float{padding:15px}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none}
  .gun,.mist{opacity:1;transform:none}
  .spray-art{opacity:1;transform:translate(0,-50%) rotate(-1.5deg)}
  .mist{transform:translateY(-52%)}
  .sprayword{clip-path:none}
  .stroke{transform:scaleX(1)}
}

/* Brand accents added from the approved black/gold campaign language */
.hero::after{content:"";position:absolute;right:-10%;bottom:-34px;width:48%;height:120px;background:linear-gradient(8deg,transparent 16%,rgba(10,10,10,.96) 17% 62%,transparent 63%);clip-path:polygon(0 42%,14% 27%,27% 37%,43% 18%,59% 32%,74% 11%,100% 25%,100% 78%,82% 67%,65% 83%,50% 70%,31% 90%,16% 72%,0 82%);opacity:.96;pointer-events:none;z-index:0}
.hero::before{z-index:0}
.hero-grid{z-index:2}
.sec-head h2{letter-spacing:-.03em}
.mile b{font-size:clamp(2.8rem,6vw,5rem)}
@media(max-width:760px){.hero::after{width:82%;right:-28%;height:80px;bottom:-18px}}


/* ===== V7 additions: guarantee, three reasons, privacy-first contact ===== */
.guarantee-band{
  background:var(--paper);
  position:relative;
  overflow:hidden;
}
.guarantee-grid{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:48px;
  align-items:center;
}
.guarantee-seal{
  width:min(280px,70vw);
  aspect-ratio:1;
  border-radius:50%;
  border:2px solid var(--gold);
  padding:12px;
  margin:auto;
  position:relative;
  display:grid;
  place-items:center;
  background:#0a0a0a;
  color:#fff;
  box-shadow:0 20px 50px rgba(0,0,0,.13), inset 0 0 0 7px #0a0a0a, inset 0 0 0 8px var(--gold);
  text-align:center;
}
.guarantee-seal::before,.guarantee-seal::after{
  content:"";
  position:absolute;
  inset:18px;
  border:1px dashed rgba(199,146,65,.62);
  border-radius:50%;
}
.guarantee-seal .tick{
  display:block;
  color:var(--gold);
  font-size:3rem;
  line-height:1;
  margin-bottom:8px;
}
.guarantee-seal strong{
  display:block;
  font-family:'Orbitron',sans-serif;
  text-transform:uppercase;
  font-size:clamp(1.2rem,3vw,1.8rem);
  line-height:1.05;
}
.guarantee-seal small{
  display:block;
  color:var(--gold-hi);
  margin-top:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.69rem;
}
.guarantee-copy h2{font-size:clamp(2rem,4.8vw,4rem);line-height:.98}
.guarantee-copy p{margin-top:18px;color:var(--grey);max-width:760px}
.guarantee-terms{font-size:.76rem!important;color:#777!important;border-left:2px solid var(--gold);padding-left:14px}

.reasons{
  background:#0a0a0a;
  color:#fff;
  overflow:hidden;
  position:relative;
}
.reasons::before{
  content:"";
  position:absolute;
  width:62%;
  height:100%;
  right:-14%;
  top:0;
  background:
    linear-gradient(132deg,transparent 0 34%,rgba(199,146,65,.08) 34% 36%,transparent 36% 42%,rgba(255,255,255,.025) 42% 70%,transparent 70%);
  transform:skewX(-8deg);
}
.reasons-head{max-width:830px;position:relative;z-index:1}
.reasons-head h2{font-size:clamp(2.2rem,5.5vw,4.8rem);line-height:.92}
.reasons-head h2 span{color:var(--gold)}
.reason-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:48px;
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  position:relative;
  z-index:1;
}
.reason{
  padding:34px 30px 38px;
  border-right:1px solid rgba(255,255,255,.16);
  position:relative;
}
.reason:last-child{border-right:0}
.reason .num{
  color:var(--gold);
  font-family:'Roboto Mono',monospace;
  font-size:.78rem;
  letter-spacing:.12em;
}
.reason h3{
  margin-top:18px;
  font-size:1.45rem;
  line-height:1.05;
  text-transform:uppercase;
}
.reason p{
  margin-top:13px;
  color:rgba(255,255,255,.68);
  font-size:.95rem;
}
.reason-note{
  margin-top:24px;
  color:rgba(255,255,255,.48);
  font-size:.76rem;
  max-width:850px;
  position:relative;
  z-index:1;
}

.radius-panel{
  margin-top:30px;
  background:#0a0a0a;
  color:#fff;
  padding:28px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  border-left:4px solid var(--gold);
}
.radius-panel strong{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.35rem}
.radius-panel span{color:rgba(255,255,255,.65);font-size:.92rem}

.contact-minimal{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.privacy-justin{
  margin:18px 0 0;
  padding:16px 18px;
  background:rgba(255,255,255,.06);
  border-left:2px solid var(--gold);
  color:rgba(255,255,255,.66);
  font-size:.78rem;
  line-height:1.55;
}
.privacy-justin a{color:var(--gold-hi);text-decoration:underline}
.whatsapp-next{
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(255,255,255,.13);
  color:rgba(255,255,255,.78);
}
.whatsapp-next b{color:#fff}
.privacy .body h3{margin-top:26px;font-size:1.1rem}
.privacy .body ul{margin:10px 0 0 20px;color:var(--grey)}
.privacy .body li+li{margin-top:6px}

@media(max-width:900px){
  .guarantee-grid,.contact-minimal{grid-template-columns:1fr}
  .reason-grid{grid-template-columns:1fr}
  .reason{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}
  .reason:last-child{border-bottom:0}
}
@media(max-width:620px){
  .radius-panel{align-items:flex-start;flex-direction:column}
}


/* V8: geometric automotive headings inspired by the FREELANCE wordmark */
h1,h2,h3,.sec-head h2,.guarantee-copy h2,.reasons-head h2,.reason h3,.svc h3,.lease-panel h3,.radius-panel strong,.review-placeholder strong,.feature b,.guarantee-seal strong{font-family:'Orbitron','Orbitron',sans-serif;letter-spacing:-.035em}
h1,.sec-head h2,.guarantee-copy h2,.reasons-head h2{font-weight:800}


/* V10 committed visual tweaks */
.wrap{max-width:1360px}
.sec-head{max-width:1040px;margin-left:auto;margin-right:auto;text-align:center}
.sec-head .stroke{margin-left:auto;margin-right:auto}
.sec-head p{margin-left:auto;margin-right:auto;max-width:900px}
.smart-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);max-width:1180px;margin:46px auto 0}
.smart-points{grid-template-columns:1fr 1fr;gap:16px}
.smart-point{min-height:185px;position:relative;overflow:hidden;padding:26px 24px;grid-template-columns:1fr;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
.smart-point .ico{border:0;width:auto;height:auto;display:block;font-size:.74rem;letter-spacing:.12em}
.smart-point b{margin-top:13px}
.smart-point:after{content:"";position:absolute;right:-30px;bottom:-38px;width:135px;height:105px;background:var(--gold-grad);opacity:.09;transform:rotate(-18deg)}
.svc-grid{max-width:1260px;margin-left:auto!important;margin-right:auto!important}
.svc .price{display:none!important}
.lease-panel{max-width:1260px;margin-left:auto;margin-right:auto;padding:42px 48px}
.lease-panel:before{content:"";position:absolute;right:-5%;top:-12px;width:42%;height:52px;background:var(--gold-grad);opacity:.9;clip-path:polygon(0 44%,9% 21%,20% 36%,31% 10%,45% 31%,57% 0,70% 25%,82% 8%,100% 30%,94% 52%,100% 73%,83% 61%,72% 86%,59% 68%,45% 100%,34% 74%,21% 91%,8% 69%,0 78%)}
.btn-wa,.wa-float{background:#fff!important;color:#111!important;border:2px solid var(--gold)!important;box-shadow:0 10px 28px rgba(0,0,0,.12)!important}
.btn-wa svg,.wa-float svg{color:#19ad59!important;fill:currentColor}
.btn-wa:hover,.wa-float:hover{background:#fffaf1!important;color:#111!important}
.tel:before{content:"☎";width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:.9rem}
.tel{display:inline-flex;align-items:center;gap:10px}
.hero-art{position:relative;min-height:560px;overflow:hidden;background:#090909;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%,0 14%)}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:63% center;display:block}
.hero-art:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,245,241,.98),rgba(247,245,241,.28) 16%,transparent 35%),linear-gradient(0deg,rgba(0,0,0,.38),transparent 45%);z-index:1}
.hero-art:after{content:"";position:absolute;left:-3%;bottom:7%;width:72%;height:86px;background:#080808;opacity:.92;z-index:2;clip-path:polygon(0 25%,10% 8%,21% 17%,33% 0,46% 14%,58% 4%,70% 18%,84% 5%,100% 27%,91% 46%,100% 63%,87% 80%,95% 100%,0 83%)}
.quote-seal{position:absolute;right:24px;bottom:26px;z-index:3;width:148px;aspect-ratio:1;border-radius:50%;background:#080808;border:2px solid var(--gold);box-shadow:inset 0 0 0 6px #080808,inset 0 0 0 7px var(--gold);color:#fff;display:grid;place-items:center;text-align:center;padding:18px;font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;font-size:.8rem;line-height:1.25}
.quote-seal b{color:var(--gold);font-size:1rem}
@media(max-width:980px){.smart-points{grid-template-columns:1fr}.hero-art{min-height:430px;clip-path:none}}


/* ============================================================
   V11 — HERO PHOTOGRAPH: "advert" blend (deliberate, not blocky)
   The source photo already dissolves on its LEFT and BOTTOM
   edges. Previously it sat with object-fit:contain, so the TOP
   and RIGHT edges stayed as hard rectangle lines and the whole
   picture read as a pasted-in box. Here the frame is locked to
   the photo's true 800x900 ratio (no letterbox), all four edges
   feather into the page, and the picture is placed larger and
   allowed to bleed slightly so the technician "emerges" from the
   white like the printed flyer.
   ============================================================ */
.hero-grid{align-items:center}
.hero-logo{
  position:relative;
  aspect-ratio:800/900;
  min-height:0;
  width:100%;
  max-width:none;
  overflow:visible;
  isolation:isolate;
  /* nudge the photo to fill its side and kiss the page edge */
  margin:0 -3% 0 -2%;
}
/* warm gold light the subject sits in — soft, off to the working side */
.hero-logo::before{
  content:"";
  position:absolute;
  inset:2% 20% 4% 4%;
  z-index:0;
  background:
    radial-gradient(62% 58% at 58% 44%,
      rgba(199,146,65,.30),
      rgba(199,146,65,.07) 55%,
      transparent 74%);
  filter:blur(30px);
  transform:none;
  opacity:.95;
  border-radius:50%;
  pointer-events:none;
}
/* faint contact shadow so the picture has weight and doesn't wash out */
.hero-logo::after{
  content:"";
  position:absolute;
  left:12%;
  right:8%;
  bottom:4%;
  height:26px;
  z-index:1;
  background:radial-gradient(60% 100% at 50% 0%,rgba(10,10,10,.22),transparent 70%);
  filter:blur(6px);
  pointer-events:none;
}
/* the photograph itself: fills the frame edge-to-edge (ratio matches,
   so cover never crops), then every edge is feathered away */
.hero-logo img{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.98) contrast(1.05);
  /* four soft edges. Left & bottom are already soft in the asset, so
     those gradients are gentle top-ups; top & right do the real work. */
  -webkit-mask-image:
    linear-gradient(180deg,transparent 0,#000 12%,#000 100%),
    linear-gradient(270deg,transparent 0,#000 10%,#000 100%),
    linear-gradient(90deg,transparent 0,#000 6%,#000 100%),
    linear-gradient(0deg,transparent 0,#000 6%,#000 100%);
  mask-image:
    linear-gradient(180deg,transparent 0,#000 12%,#000 100%),
    linear-gradient(270deg,transparent 0,#000 10%,#000 100%),
    linear-gradient(90deg,transparent 0,#000 6%,#000 100%),
    linear-gradient(0deg,transparent 0,#000 6%,#000 100%);
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
}
@media(max-width:1040px){
  .hero-logo{max-width:560px;margin:0 auto;aspect-ratio:800/900}
}
@media(max-width:760px){
  .hero-logo{max-width:460px}
}


/* ============================================================
   V13 — HERO AS THE ADVERT: the photograph is the design.
   It bleeds off the right of the page, meets the white copy on a
   genuine torn paint seam (SVG turbulence mask), and is framed by
   black dry-brush swashes, a gold accent and the FREE QUOTE seal.
   ============================================================ */
.hero{padding:0;overflow:hidden;isolation:isolate}
.hero-stage{position:relative;overflow:hidden;min-height:clamp(600px,54vw,820px)}
.hero-stage .hero-grid{display:block;position:relative;z-index:4}
.hero-stage .hero-grid>.hero-copy{
  max-width:min(560px,50%);
  padding-top:clamp(56px,7vw,110px);
  padding-bottom:clamp(40px,5vw,80px);
  position:relative;z-index:4;
}

/* the dominant photograph */
.hero-photo{
  position:absolute;top:0;right:0;bottom:0;
  width:clamp(560px,56vw,1120px);
  z-index:1;pointer-events:none;
}
.hero-photo .torn-photo{
  position:absolute;inset:0;width:100%;height:100%;display:block;
  filter:saturate(1) contrast(1.05) drop-shadow(-30px 26px 34px rgba(10,10,10,.14));
}
/* warm light the subject emerges from, seeded just behind the seam */
.hero-photo::before{
  content:"";position:absolute;inset:6% 30% 8% -4%;z-index:0;
  background:radial-gradient(60% 56% at 62% 46%,rgba(199,146,65,.28),rgba(199,146,65,.06) 56%,transparent 74%);
  filter:blur(34px);border-radius:50%;
}

/* keep the headline and spray inside the left copy zone */
.hero-copy h1{font-size:clamp(2.3rem,4.6vw,4.4rem)}
.hero-copy .sprayword{font-size:clamp(2.3rem,4.6vw,4.4rem);margin-left:clamp(120px,11vw,180px)}
.hero-copy .spray-art{width:clamp(400px,36vw,560px)}
.hero-copy .hero-lede{max-width:42ch}

/* the black stat bar keeps its own full width below the stage */
.hero .stats{position:relative;z-index:5;margin-top:0}

@media(max-width:1040px){
  .hero{padding:0}
  .hero-stage{min-height:0;display:flex;flex-direction:column-reverse}
  .hero-photo{position:relative;top:auto;right:auto;bottom:auto;width:100%;height:clamp(360px,72vw,560px)}
  .hero-stage .hero-grid>.hero-copy{max-width:none;padding:40px 0 8px}
  .hero-copy .sprayword{white-space:normal}
}
@media(max-width:620px){
  .hero-photo{height:clamp(300px,86vw,460px)}
}

/* ============ V14: batch redesign + shadow removal ============ */

/* -- header: modern phone icon + social icons -- */
.tel:before{display:none!important}
.tel{gap:9px}
.tel-ico{width:18px;height:18px;color:var(--gold);flex:none}
.tel:hover .tel-ico{color:#0a0a0a}
.bar-social{display:flex;gap:8px;align-items:center}
.social-ico{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);transition:.2s;text-decoration:none}
.social-ico svg{width:18px;height:18px}
.social-ico:hover{border-color:var(--gold);color:var(--gold-dp)}
@media(max-width:900px){.bar-social{display:none}}

/* -- 4 SMART cards, rebuilt to match the page -- */
.smart-point{background:#fff;border:1px solid var(--line);padding:30px 28px 28px;min-height:auto;position:relative;overflow:hidden;grid-template-columns:1fr;clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));transition:border-color .25s,transform .25s}
.smart-point::before{content:"";position:absolute;left:0;top:0;width:66px;height:4px;background:var(--gold-grad)}
.smart-point:after{display:none!important}
.smart-point .ico{font-family:'Orbitron',sans-serif;font-weight:800;font-size:2.5rem;line-height:1;letter-spacing:0;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin:0 0 14px;border:0;width:auto;height:auto}
.smart-point b{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.06rem;display:block;margin:0 0 9px;letter-spacing:-.01em;color:var(--ink)}
.smart-point span{font-size:14.5px;color:var(--grey);line-height:1.65}
.smart-point:hover{border-color:var(--gold);transform:translateY(-4px)}

/* -- lease panel: drop watermark + gold zigzag -- */
.lease-panel::after{content:none!important;display:none!important}
.lease-panel:before{content:none!important;display:none!important;background:none!important}

/* -- areas: single consolidated panel -- */
.mile .mono{display:block;margin-bottom:10px}
.mile b{font-size:clamp(2.6rem,6vw,4.4rem)}

/* -- three reasons: centred -- */
.reasons-head{max-width:1120px;margin-left:auto;margin-right:auto;text-align:center}
.reasons-head h2{font-size:clamp(2rem,4.8vw,4rem)}
.reasons-head .stroke{margin-left:auto;margin-right:auto}
.reason-note{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}

/* -- guarantee seal: fix cut-off wording -- */
.guarantee-seal strong{font-size:clamp(1.05rem,2.4vw,1.5rem);line-height:1.08}
.guarantee-seal small{max-width:78%;margin:8px auto 0;font-size:.62rem;line-height:1.35;letter-spacing:.05em}

/* -- reviews / testimonials -- */
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.review-card{background:#fff;border:1px solid var(--line);padding:28px 26px;position:relative;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
.review-card::before{content:"";position:absolute;left:0;top:0;width:56px;height:4px;background:var(--gold-grad)}
.review-card .stars{color:var(--gold);letter-spacing:3px;font-size:16px;margin-bottom:12px}
.review-card p{font-size:1.02rem;line-height:1.6;color:var(--ink);margin:0 0 14px}
.review-card cite{font-style:normal;font-family:'Roboto Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
.reviews-note{margin-top:16px;font-size:.82rem;color:var(--grey);text-align:center}
.review-cta{margin-top:34px;background:#0a0a0a;color:#fff;padding:30px 34px;display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap;position:relative;clip-path:polygon(22px 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%,0 22px)}
.review-cta::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--gold-grad)}
.review-cta-text b{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.2rem;display:block;margin-bottom:6px}
.review-cta-text span{color:var(--mute-l);font-size:.95rem}
.review-cta-btns{display:flex;gap:12px;flex-wrap:wrap}
.review-cta .btn-out{box-shadow:inset 0 0 0 2px var(--gold)!important;color:#fff}
.social-follow{margin-top:28px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.social-follow .mono{color:var(--gold-dp)}
.social-row{display:flex;gap:12px}
.social-ico.lg{width:52px;height:52px}
.social-ico.lg svg{width:24px;height:24px}

/* -- contact: message channels -- */
.channels{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);padding:30px;position:relative;clip-path:polygon(22px 0,100% 0,100% 100%,0 100%,0 22px)}
.channels .mono{display:block}
.channels-h{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1.3rem;margin:12px 0 8px;line-height:1.1}
.channels-lead{color:var(--mute-l);font-size:.95rem;margin-bottom:20px;line-height:1.6}
.channel-btns{display:grid;gap:12px}
.ch{display:flex;align-items:center;gap:14px;padding:14px 18px;text-decoration:none;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:#fff;transition:.2s;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px)}
.ch svg{width:26px;height:26px;flex:none}
.ch span{display:flex;flex-direction:column;line-height:1.25}
.ch b{font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:.95rem}
.ch small{color:var(--mute-l);font-size:12px}
.ch:hover{border-color:var(--gold);background:rgba(199,146,65,.12)}
.ch-wa svg{color:#25D366}
.ch-msgr svg{color:#0A7CFF}
.ch-ig svg{color:#E1306C}
.ch-call svg,.ch-sms svg{color:var(--gold)}
.contact-social{display:flex;gap:10px;margin-top:18px}
.contact .social-ico{border-color:rgba(255,255,255,.22);color:#fff}
.contact .social-ico:hover{border-color:var(--gold);color:var(--gold-hi)}

/* -- footer social -- */
.foot-social{display:inline-flex;gap:8px;margin-left:8px}

/* -- remove floating shadow effects (keep inset outlines that act as borders) -- */
.spray-art,.gun,.divider::before{filter:none!important}
.hero-photo .torn-photo{filter:saturate(1) contrast(1.05)!important}
.hero-photo::after{display:none!important}
.btn-wa,.wa-float{box-shadow:none!important}
.svc:hover{box-shadow:inset 0 0 0 1px var(--gold)!important}
.guarantee-seal{box-shadow:inset 0 0 0 7px #0a0a0a,inset 0 0 0 8px var(--gold)!important}

@media(max-width:820px){
  .reviews-grid{grid-template-columns:1fr}
  .review-cta{flex-direction:column;align-items:flex-start}
}

/* ============ V15: carousel, privacy modal, centring ============ */

/* -- lease panel: centred, no negative space -- */
.lease-panel{text-align:center}
.lease-panel .mono{display:inline-block}
.lease-panel h3{max-width:900px;margin-left:auto;margin-right:auto}
.lease-panel p{max-width:820px;margin-left:auto;margin-right:auto}

/* -- reviews: centred section + cards + stars -- */
#reviews .sec-head{text-align:center;max-width:840px;margin-left:auto;margin-right:auto}
#reviews .sec-head .stroke{margin-left:auto;margin-right:auto}
.review-card{text-align:center}
.review-card::before{left:50%;transform:translateX(-50%)}
.review-card .stars{display:block;text-align:center}
.review-card cite{display:block;text-align:center}
.review-cta{flex-direction:column;text-align:center;align-items:center;gap:20px}
.review-cta-btns{justify-content:center}

/* -- before/after carousel -- */
.ba{display:block}
.ba-carousel{position:relative;max-width:1000px;margin:0 auto}
.ba-viewport{overflow:hidden;border:1px solid rgba(255,255,255,.16);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}
.ba-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.ba-slide{flex:0 0 100%;margin:0;position:relative}
.ba-slide img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.ba-tag{position:absolute;top:14px;bottom:auto;height:-moz-fit-content;height:fit-content;font-family:'Roboto Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;background:rgba(0,0,0,.6);color:#fff}
.ba-tag.l{left:14px}
.ba-tag.r{right:14px;background:var(--gold);color:#0a0a0a}
.ba-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 20px 15px;font-family:'Orbitron',sans-serif;text-transform:uppercase;font-size:1rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.82));border-bottom:3px solid var(--gold)}
.ba-arrow{position:absolute;top:calc(50% - 22px);transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:rgba(10,10,10,.58);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.2s}
.ba-arrow:hover{background:var(--gold);color:#0a0a0a}
.ba-arrow.prev{left:14px}
.ba-arrow.next{right:14px}
.ba-dots{display:flex;justify-content:center;gap:9px;margin-top:18px}
.ba-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.3);cursor:pointer;transition:.25s}
.ba-dot.active{background:var(--gold);width:26px;border-radius:5px}
.ba>.rv.rv-d2{max-width:860px;margin:46px auto 0}

/* -- privacy modal -- */
.modal-overlay{position:fixed;inset:0;z-index:200;display:none;align-items:flex-start;justify-content:center;padding:44px 20px;background:rgba(8,8,8,.72);overflow-y:auto}
.modal-overlay.open{display:flex}
.modal-box{position:relative;background:var(--paper);max-width:1000px;width:100%;padding:44px 48px;clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,26px 100%,0 calc(100% - 26px))}
.modal-box .stroke{margin-top:14px}
.modal-close{position:absolute;top:16px;right:18px;width:40px;height:40px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;border-radius:50%;display:grid;place-items:center;transition:.2s;z-index:2}
.modal-close:hover{border-color:var(--gold);color:var(--gold-dp)}
body.modal-open{overflow:hidden}
@media(max-width:640px){.modal-box{padding:36px 22px}}

@media(max-width:640px){
  .ba-slide figcaption{font-size:.85rem;padding:24px 16px 13px}
  .ba-arrow{width:40px;height:40px;font-size:22px}
}


/* moved from after </html> */
.sprayline{isolation:isolate}
.sprayline .spray-art,.sprayline .gun{z-index:1}
.sprayline h1,.sprayline h2,.sprayline .sprayed,.sprayline .mono{position:relative;z-index:3}


/* ============ SITE BUILD ADDITIONS ============ */
@font-face{font-family:'Orbitron';font-style:normal;font-weight:400 900;font-display:swap;src:url("../fonts/orbitron-latin-wght-normal.woff2") format("woff2")}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/plus-jakarta-sans-latin-wght-normal.woff2") format("woff2")}
@font-face{font-family:'Roboto Mono';font-style:normal;font-weight:100 700;font-display:swap;src:url("../fonts/roboto-mono-latin-wght-normal.woff2") format("woff2")}

/* mobile menu */
.burger{font-family:'Orbitron',sans-serif;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.06em;color:var(--ink)}
@media(max-width:760px){
  .bar-in{gap:12px}
  .tel{font-size:13px;padding:11px 14px;gap:7px}
  .tel-ico{width:15px;height:15px}
  .burger{padding:9px 12px}
  .bar.menu-open .nav{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:100%;left:0;right:0;background:#fff;padding:8px 32px 18px;border-bottom:3px solid var(--gold)}
  .bar.menu-open .nav a{padding:15px 0;border-bottom:1px solid var(--line);font-size:16px}
  .bar.menu-open .nav a::after{display:none}
}
@media(max-width:400px){
  .wrap{padding:0 20px}
  .brand img{height:44px}
  .tel{font-size:12px;padding:10px 11px}
  .bar.menu-open .nav{padding-left:20px;padding-right:20px}
}

/* contact: form column */
.enquiry{align-self:start}
.enquiry .channels-h{margin-top:12px}
.enquiry .channels-lead{margin-bottom:22px}
.enquiry .f{margin-bottom:16px}
.enquiry label em{font-style:normal;opacity:.7;text-transform:none;letter-spacing:.04em}
.f3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.f3 label{font-size:10px}
input[type=file]{padding:10px;font-size:13px;cursor:pointer}
input[type=file]::file-selector-button{font:inherit;font-size:12px;margin-right:10px;padding:6px 10px;border:0;background:var(--gold);color:var(--black);cursor:pointer}
.consent{display:flex;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;line-height:1.5;margin:4px 0 20px;cursor:pointer}
.consent input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--gold)}
.consent a{color:var(--gold-hi)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-status{font-size:14px;margin:14px 0 0;color:var(--mute-l);min-height:1.4em}
.form-status.err{color:#ff9d8a}
.form-done{text-align:center;padding:30px 10px}
.form-done h3{font-size:1.5rem;margin-bottom:12px;color:var(--gold-hi)}
.form-done p{color:var(--mute-l)}
form.sending .btn{opacity:.6;pointer-events:none}
.channels{margin-top:26px}
@media(max-width:640px){.f3{grid-template-columns:1fr}}
select:invalid{color:rgba(255,255,255,.55)}
select option{color:#111}

/* thanks page */
.thanks{min-height:70vh;display:grid;place-items:center;text-align:center;padding:90px 0}
.thanks h1{font-size:clamp(2rem,6vw,3.6rem)}
.thanks p{color:var(--grey);max-width:46ch;margin:22px auto 0}
.thanks .cta{justify-content:center}
