
*{box-sizing:border-box;margin:0;padding:0;}
::selection{background:rgba(245,130,10,.30); color:#fff;}

:root{
  --orange:#F5820A; --orange-2:#FF9626; --orange-3:#C46508; --orange-glow:rgba(245,130,10,.22);
  --bg:#0A0B10; --bg-2:#0E1016;
  --surface:#14161E; --surface-2:#1B1E28; --surface-3:#252834;
  --border:rgba(255,255,255,.06); --border-2:rgba(255,255,255,.10); --border-3:rgba(255,255,255,.14);
  --white:#F5F5F8; --text:#E5E6EB; --mute:#8B8FA3; --mute-2:#5A5E70; --mute-3:#3A3D4A;
  --green:#22C55E; --green-bg:rgba(34,197,94,.10);
  --gold:#EAB308; --red:#EF4444; --blue:#3B82F6;
  --shadow-2:0 4px 12px rgba(0,0,0,.30), 0 1px 2px rgba(0,0,0,.40);
  --shadow-3:0 20px 60px rgba(0,0,0,.50), 0 8px 24px rgba(0,0,0,.30);
  --shadow-glow:0 0 0 1px rgba(245,130,10,.30), 0 14px 40px rgba(245,130,10,.20);
  --ease-out:cubic-bezier(.22,1,.36,1);
}

html{scroll-behavior:smooth;}
body{
  font-family:'Barlow',system-ui,-apple-system,sans-serif;
  background:var(--bg); color:var(--text);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

/* ─── Cinematic backdrop layers (matches admin console) ─── */
.backdrop{position:fixed; inset:0; z-index:-3; background-color:#0A0B10;
  background-image:
    radial-gradient(1000px 600px at 8% -10%, rgba(245,130,10,.16), transparent 55%),
    radial-gradient(1200px 700px at 100% 110%, rgba(245,130,10,.10), transparent 55%),
    radial-gradient(ellipse 78% 70% at 50% 40%, transparent 45%, rgba(0,0,0,.45)),
    url("/img/backdrop.jpg");
  background-size:auto, auto, auto, cover;
  background-position:center;
  background-repeat:no-repeat;
}
/* Cursor-tracking worklight — light glinting across the steel */
.spotlight{position:fixed; width:620px; height:620px; left:0; top:0; margin:-310px 0 0 -310px;
  border-radius:50%; pointer-events:none; z-index:-2; will-change:transform;
  background:radial-gradient(circle, rgba(255,231,188,.20), rgba(255,197,112,.07) 42%, transparent 70%);
  mix-blend-mode:screen;}
.grain{position:fixed; inset:0; z-index:-2; pointer-events:none; opacity:.4; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .25 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.dots{position:fixed; inset:0; z-index:-1; pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px); background-size:24px 24px;
  mask-image:radial-gradient(ellipse 80% 60% at 50% 40%, black 30%, transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%, black 30%, transparent 80%);}

/* Scroll progress bar */
.scroll-progress{position:fixed; top:0; left:0; height:2px; background:linear-gradient(90deg, var(--orange-3), var(--orange-2)); z-index:1000; width:0%; box-shadow:0 0 8px var(--orange-glow); transition:width .1s linear;}

/* ─── NAV ─── */
nav{
  position:sticky; top:0; z-index:200;
  background:rgba(10,11,16,.65); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--border);
  transition:padding .25s var(--ease-out);
}
nav.scrolled{padding:0;}
.nav-inner{max-width:1200px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:.85rem 1.5rem; transition:padding .25s var(--ease-out);}
nav.scrolled .nav-inner{padding:.6rem 1.5rem;}
.nav-logo{display:flex; align-items:center; gap:.7rem; text-decoration:none;}
.nav-logo-svg{height:56px; width:auto; display:block; transition:height .25s var(--ease-out);}
nav.scrolled .nav-logo-svg{height:46px;}
.nav-logo-img{height:56px; width:auto; display:block; transition:height .25s var(--ease-out);}
nav.scrolled .nav-logo-img{height:46px;}
.nav-logo-mark{
  width:38px; height:38px; flex-shrink:0; border-radius:9px;
  background:linear-gradient(135deg, var(--orange), var(--orange-3));
  display:grid; place-items:center;
  font-family:'Bebas Neue',sans-serif; font-size:20px; color:#fff;
  box-shadow:0 8px 24px rgba(245,130,10,.30), inset 0 1px 0 rgba(255,255,255,.20);
  position:relative; overflow:hidden;
}
.nav-logo-mark::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,.2), transparent 50%);}
.nav-logo-text{font-family:'Bebas Neue',sans-serif; font-size:22px; letter-spacing:.05em; line-height:1; color:#fff;}
.nav-logo-sub{font-size:9px; letter-spacing:.18em; text-transform:uppercase; color:var(--mute-2); font-weight:700; margin-top:3px;}

.nav-links{display:flex; align-items:center; gap:.4rem;}
.nav-links a{color:var(--mute); text-decoration:none; font-size:13px; font-weight:600; letter-spacing:.02em; padding:8px 14px; border-radius:8px; transition:all .15s var(--ease-out);}
.nav-links a:hover{color:var(--text); background:rgba(255,255,255,.04);}
.nav-phone{
  color:var(--orange)!important; font-family:'JetBrains Mono',monospace; font-weight:700!important;
  display:inline-flex; align-items:center; gap:.4rem;
}
.nav-cta{
  background:linear-gradient(135deg, var(--orange), var(--orange-2)); color:#fff!important;
  padding:9px 18px!important; border-radius:8px; font-weight:700!important; letter-spacing:.03em;
  box-shadow:0 8px 20px rgba(245,130,10,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.nav-cta:hover{transform:translateY(-1px); box-shadow:0 12px 28px rgba(245,130,10,.40); background:linear-gradient(135deg, var(--orange), var(--orange-2))!important;}
/* Keep anchored sections (and the booking card) clear of the sticky header on jump/scroll. */
section[id], #book, #booking-card{scroll-margin-top:84px;}
/* Mobile hamburger + drawer */
.nav-burger{display:none; flex-direction:column; justify-content:center; gap:5px; width:42px; height:38px; background:rgba(255,255,255,.05); border:1px solid var(--border); border-radius:9px; cursor:pointer; padding:0 9px;}
.nav-burger span{display:block; height:2px; width:100%; background:#fff; border-radius:2px; transition:transform .2s, opacity .2s;}
.nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-mobile{display:none; flex-direction:column; gap:.2rem; padding:.6rem 1rem 1rem; background:rgba(10,11,16,.97); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border-bottom:1px solid var(--border);}
.nav-mobile.open{display:flex;}
.nav-mobile a{color:var(--text); text-decoration:none; font-family:'Barlow',sans-serif; font-size:16px; font-weight:600; padding:12px 8px; border-radius:8px; border-bottom:1px solid rgba(255,255,255,.05);}
.nav-mobile a:active{background:rgba(255,255,255,.05);}
.nav-mobile a.nav-cta{text-align:center; margin-top:.4rem; border-bottom:none;}
.nav-mobile a.nav-phone{color:var(--orange)!important; font-family:'JetBrains Mono',monospace;}

/* ─── HERO ─── */
.hero{
  position:relative; overflow:hidden;
  padding:5rem 1.5rem 6rem; min-height:calc(100vh - 64px);
  display:flex; align-items:center;
  background:url("/img/hero-truck.jpg") center right / cover no-repeat;
}
/* Readability wash — dark on the left for the white headline, lighter on the right so the truck shows. */
.hero::before{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(8,9,13,.94) 0%, rgba(8,9,13,.82) 30%, rgba(8,9,13,.50) 60%, rgba(8,9,13,.34) 100%),
    linear-gradient(0deg, rgba(8,9,13,.60) 0%, transparent 42%);
}
.hero-grid{
  position:absolute; inset:0; z-index:0;
  background-image:linear-gradient(rgba(245,130,10,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(245,130,10,.04) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse 70% 50% at 50% 50%, black, transparent);
  -webkit-mask-image:radial-gradient(ellipse 70% 50% at 50% 50%, black, transparent);
  animation:gridDrift 30s linear infinite;
}
@keyframes gridDrift{to{background-position:80px 80px, 80px 80px;}}

.hero-inner{max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1.05fr 1fr; gap:3.5rem; align-items:center; position:relative; z-index:2; width:100%;}

.hero-left{animation:fadeUp .9s var(--ease-out) .1s both;}
.hero-eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  background:rgba(245,130,10,.08); border:1px solid rgba(245,130,10,.30);
  border-radius:999px; padding:6px 14px;
  font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; color:var(--orange); margin-bottom:1.5rem;
}
.hero-eyebrow-dot{width:6px; height:6px; border-radius:50%; background:var(--orange); box-shadow:0 0 8px var(--orange-glow); animation:pulse 1.8s infinite;}
@keyframes pulse{0%,100%{opacity:1;} 50%{opacity:.4;}}

.hero-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(60px, 10vw, 128px); line-height:.88; letter-spacing:.005em; color:#fff;
  margin-bottom:1.5rem;
}
.hero-title .accent{
  color:var(--orange); position:relative; display:inline-block;
  text-shadow:0 0 60px rgba(245,130,10,.40);
}
.hero-title .accent::after{
  content:''; position:absolute; left:-6px; right:-6px; bottom:8px; height:18px;
  background:rgba(245,130,10,.16); z-index:-1; transform:skewX(-12deg);
}

.hero-sub{font-size:18px; color:var(--mute); line-height:1.6; margin-bottom:2rem; max-width:540px;}
.hero-sub strong{color:var(--white); font-weight:600;}

.hero-btns{display:flex; gap:.85rem; flex-wrap:wrap; margin-bottom:2rem;}
.btn-primary{
  display:inline-flex; align-items:center; gap:.6rem;
  background:linear-gradient(135deg, var(--orange), var(--orange-2));
  color:#fff; text-decoration:none; border:none; cursor:pointer;
  padding:14px 26px; border-radius:11px;
  font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:.06em;
  box-shadow:0 10px 28px rgba(245,130,10,.32), inset 0 1px 0 rgba(255,255,255,.18);
  position:relative; overflow:hidden; transition:all .25s var(--ease-out);
}
.btn-primary::after{content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent); transition:left .7s ease;}
.btn-primary:hover{transform:translateY(-2px); box-shadow:0 16px 40px rgba(245,130,10,.45), inset 0 1px 0 rgba(255,255,255,.20);}
.btn-primary:hover::after{left:100%;}
.btn-ghost{
  display:inline-flex; align-items:center; gap:.6rem;
  background:var(--orange); color:#fff;
  text-decoration:none; border:1px solid var(--orange); cursor:pointer;
  padding:14px 26px; border-radius:11px;
  font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:.06em;
  box-shadow:0 8px 20px rgba(245,130,10,.24);
  transition:all .15s var(--ease-out);
}
.btn-ghost:hover{background:var(--orange-2); border-color:var(--orange-2); transform:translateY(-1px);}

.hero-trust{display:flex; gap:1.75rem; flex-wrap:wrap;}
.trust-item{display:flex; align-items:center; gap:.4rem; font-size:13px; color:var(--mute); font-weight:500;}
.trust-item svg{width:16px; height:16px; color:var(--green);}

/* Booking card */
.booking-card-wrap{position:relative; animation:fadeUp .9s var(--ease-out) .3s both;}
.booking-card-wrap::before{
  content:''; position:absolute; top:-2px; left:-2px; right:-2px; bottom:-2px; border-radius:22px;
  background:conic-gradient(from 0deg, transparent, rgba(245,130,10,.30), transparent 35%);
  animation:rotate 8s linear infinite; z-index:0;
}
@keyframes rotate{to{transform:rotate(360deg);}}
.booking-card{
  position:relative; z-index:1;
  background:linear-gradient(180deg, rgba(27,30,40,.95), rgba(20,22,30,.95));
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  border:1px solid var(--border-2); border-radius:20px;
  padding:1.85rem; box-shadow:var(--shadow-3);
}
.bc-head{display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:1.25rem; padding-bottom:1rem; border-bottom:1px solid var(--border);}
.bc-title{font-family:'Bebas Neue',sans-serif; font-size:28px; color:#fff; letter-spacing:.02em; line-height:1;}
.bc-sub{font-size:12px; color:var(--mute); margin-top:4px;}
.bc-live{display:inline-flex; align-items:center; gap:5px; padding:4px 10px; background:var(--green-bg); border:1px solid rgba(34,197,94,.25); border-radius:999px; font-size:10px; font-weight:700; color:var(--green); letter-spacing:.1em; text-transform:uppercase;}
.bc-live-dot{width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 6px var(--green); animation:pulse 2s infinite;}

.form-group{margin-bottom:.8rem;}
.form-label{display:flex; align-items:center; justify-content:space-between; font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--mute); margin-bottom:.35rem;}
.form-control{
  width:100%; background:rgba(0,0,0,.30); color:#fff;
  border:1px solid var(--border-2); border-radius:9px;
  padding:11px 14px; font-size:13.5px; font-family:'Barlow',sans-serif;
  outline:none; transition:all .15s var(--ease-out);
}
.form-control::placeholder{color:var(--mute-2);}
.form-control:focus{border-color:var(--orange); background:rgba(245,130,10,.05); box-shadow:0 0 0 3px rgba(245,130,10,.10);}
input[type="date"].form-control{color-scheme:dark;}
input[type="date"].form-control::-webkit-calendar-picker-indicator{cursor:pointer; opacity:.9;}
select.form-control{
  cursor:pointer; appearance:none; -webkit-appearance:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3e%3cpath fill='%23F5820A' d='M6 8L0 0h12z'/%3e%3c/svg%3e");
  background-repeat:no-repeat; background-position:right 14px center; padding-right:36px;
}
/* Native dropdown list: solid dark bg so options are readable (fixes transparent popup) */
.form-control option, .form-control optgroup{ background-color:#14161E; color:#F5F5F8; }
.form-control optgroup{ font-weight:700; color:#8B8FA3; }
.form-control option{ font-weight:400; padding:6px; }
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:.6rem;}

.price-preview{
  background:linear-gradient(135deg, rgba(245,130,10,.10), rgba(245,130,10,.04));
  border:1px solid rgba(245,130,10,.20); border-radius:12px;
  padding:14px 18px; margin:.9rem 0;
  display:flex; justify-content:space-between; align-items:center;
}
.pp-label{font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--mute); font-weight:700;}
.pp-note{font-size:10.5px; color:var(--mute-2); margin-top:3px;}
.pp-price{
  font-family:'Bebas Neue',sans-serif; font-size:44px; line-height:1;
  color:var(--orange); text-shadow:0 0 30px var(--orange-glow);
  font-variant-numeric:tabular-nums;
}
.book-now-btn{
  width:100%; background:linear-gradient(135deg, var(--orange), var(--orange-2));
  color:#fff; border:none; border-radius:11px;
  padding:14px; font-family:'Bebas Neue',sans-serif; font-size:20px; letter-spacing:.06em;
  cursor:pointer; transition:all .25s var(--ease-out);
  box-shadow:0 10px 28px rgba(245,130,10,.32), inset 0 1px 0 rgba(255,255,255,.18);
  position:relative; overflow:hidden;
}
.book-now-btn::after{content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent); transition:left .7s ease;}
.book-now-btn:hover{transform:translateY(-1px); box-shadow:0 16px 36px rgba(245,130,10,.45);}
.book-now-btn:hover::after{left:100%;}
.form-fine{display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; font-size:10.5px; color:var(--mute); margin-top:.7rem;}
.form-fine span{display:inline-flex; align-items:center; gap:3px;}
.form-fine svg{width:11px; height:11px; color:var(--green);}

/* ─── MARQUEE STRIP ─── */
.strip{
  background:linear-gradient(90deg, var(--orange-3), var(--orange), var(--orange-2), var(--orange), var(--orange-3));
  background-size:200% 100%; animation:gradShift 6s ease-in-out infinite;
  padding:.85rem 0; overflow:hidden; border-top:1px solid rgba(255,255,255,.10); border-bottom:1px solid rgba(0,0,0,.20);
}
@keyframes gradShift{0%,100%{background-position:0% 50%;} 50%{background-position:100% 50%;}}
.strip-track{display:flex; gap:3.5rem; white-space:nowrap; animation:marquee 28s linear infinite;}
@keyframes marquee{to{transform:translateX(-50%);}}
.strip-item{display:inline-flex; align-items:center; gap:.55rem; font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:700; color:#fff; letter-spacing:.06em; text-transform:uppercase;}
.strip-item svg{width:18px; height:18px;}
.strip-item-dot{display:inline-block; width:5px; height:5px; border-radius:50%; background:rgba(255,255,255,.5);}

/* ─── SECTIONS ─── */
section{padding:5.5rem 1.5rem; position:relative;}
.section-inner{max-width:1200px; margin:0 auto;}
.section-head{margin-bottom:3rem; max-width:680px;}
.section-eyebrow{
  display:inline-flex; align-items:center; gap:.55rem;
  font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:700;
  letter-spacing:.20em; text-transform:uppercase; color:var(--orange); margin-bottom:1rem;
}
.section-eyebrow-bar{width:24px; height:1px; background:var(--orange);}
.section-title{
  font-family:'Bebas Neue',sans-serif; font-size:clamp(40px, 6vw, 72px); letter-spacing:.02em;
  color:#fff; line-height:.95; margin-bottom:1rem;
}
.section-title .accent{color:var(--orange);}
.section-sub{font-size:17px; color:var(--mute); line-height:1.65;}

/* ─── SERVICES ─── */
.services-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem;}
.service-card{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:16px;
  padding:1.6rem; position:relative; overflow:hidden;
  transition:all .3s var(--ease-out);
  backdrop-filter:blur(8px);
}
.service-card::before{
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent, var(--orange), transparent);
  transform:translateX(-100%); transition:transform .5s var(--ease-out);
}
.service-card:hover{transform:translateY(-4px); border-color:var(--border-2); box-shadow:var(--shadow-3);}
.service-card:hover::before{transform:translateX(0);}
.sc-icon-wrap{
  width:52px; height:52px; border-radius:13px; background:rgba(245,130,10,.10);
  border:1px solid rgba(245,130,10,.20); display:grid; place-items:center; font-size:26px; margin-bottom:1rem;
  transition:all .3s var(--ease-out);
}
.service-card:hover .sc-icon-wrap{background:rgba(245,130,10,.15); transform:scale(1.05) rotate(-3deg);}
.sc-icon-wrap.has-photo{width:80px; height:80px; padding:0; background:transparent; border-color:rgba(245,130,10,.35); overflow:hidden;}
.sc-icon-wrap.has-photo img{width:100%; height:100%; object-fit:cover; display:block; border-radius:12px;}
.service-card:hover .sc-icon-wrap.has-photo{transform:scale(1.04) rotate(-2deg); border-color:var(--orange);}
.sc-name{font-family:'Barlow Condensed',sans-serif; font-size:22px; font-weight:800; color:#fff; letter-spacing:.02em; margin-bottom:.4rem;}
.sc-desc{font-size:13.5px; color:var(--mute); line-height:1.6; margin-bottom:1rem; min-height:60px;}
.sc-price-row{display:flex; align-items:baseline; justify-content:space-between; padding-top:1rem; border-top:1px solid var(--border);}
.sc-price{font-family:'Bebas Neue',sans-serif; font-size:34px; color:var(--orange); line-height:1; font-variant-numeric:tabular-nums;}
.sc-badge{
  display:inline-block; font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:800;
  padding:4px 9px; border-radius:999px;
  background:rgba(245,130,10,.10); color:var(--orange); border:1px solid rgba(245,130,10,.25);
  letter-spacing:.08em; text-transform:uppercase;
}
.sc-price-note{font-size:11px; color:var(--mute-2); margin-top:6px; font-family:'JetBrains Mono',monospace;}

/* ─── WHY (stats) ─── */
.why-stats{display:grid; grid-template-columns:repeat(4,1fr); gap:1rem;}
.why-card{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:16px; padding:1.75rem;
  position:relative; overflow:hidden; transition:all .25s var(--ease-out);
}
.why-card::before{content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg, transparent, var(--orange), transparent); opacity:.6;}
.why-card:hover{border-color:var(--border-2); transform:translateY(-2px);}
.why-num{
  font-family:'Bebas Neue',sans-serif; font-size:64px; line-height:.95;
  color:var(--orange); margin-bottom:.4rem; font-variant-numeric:tabular-nums;
  text-shadow:0 0 30px var(--orange-glow);
}
.why-label{font-family:'Barlow Condensed',sans-serif; font-size:17px; font-weight:800; color:#fff; letter-spacing:.04em; text-transform:uppercase; margin-bottom:.5rem;}
.why-desc{font-size:12.5px; color:var(--mute); line-height:1.6;}

/* ─── PRICING ─── */
.pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-bottom:1.5rem;}
.price-card{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:18px; padding:1.85rem;
  position:relative; transition:all .25s var(--ease-out);
}
.price-card:hover{border-color:var(--border-2); transform:translateY(-3px);}
.price-card.featured{
  border:1px solid rgba(245,130,10,.40);
  box-shadow:0 0 0 1px rgba(245,130,10,.20), 0 20px 50px rgba(245,130,10,.18);
  transform:translateY(-6px);
}
.price-card.featured::before{
  content:''; position:absolute; top:-1px; left:-1px; right:-1px; bottom:-1px; border-radius:18px;
  background:linear-gradient(135deg, rgba(245,130,10,.50), transparent 30%, transparent 70%, rgba(245,130,10,.50));
  z-index:-1; opacity:.6;
}
.pc-badge{
  display:inline-block; background:rgba(245,130,10,.12); color:var(--orange); border:1px solid rgba(245,130,10,.30);
  font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:800; padding:4px 11px; border-radius:999px;
  letter-spacing:.10em; text-transform:uppercase; margin-bottom:1rem;
}
.price-card.featured .pc-badge{background:linear-gradient(135deg, var(--orange), var(--orange-2)); color:#fff; border-color:transparent; box-shadow:0 4px 14px rgba(245,130,10,.30);}
.pc-name{font-family:'Barlow Condensed',sans-serif; font-size:20px; font-weight:700; color:#fff; margin-bottom:.4rem; letter-spacing:.02em;}
.pc-price-row{display:flex; align-items:baseline; gap:.5rem; margin-bottom:.3rem;}
.pc-price{font-family:'Bebas Neue',sans-serif; font-size:54px; color:var(--orange); line-height:1; font-variant-numeric:tabular-nums; text-shadow:0 0 30px var(--orange-glow);}
.pc-period{font-size:12px; color:var(--mute); margin-bottom:1.25rem;}
.pc-divider{height:1px; background:var(--border); margin:1.25rem 0;}
.pc-includes{list-style:none; font-size:13px; line-height:2; color:var(--text);}
.pc-includes li{display:flex; align-items:center; gap:.55rem;}
.pc-includes li::before{
  content:''; flex-shrink:0; width:16px; height:16px; border-radius:5px;
  background:var(--green-bg); border:1px solid rgba(34,197,94,.30); position:relative;
}
.pc-includes li{position:relative;}
.pc-includes li svg{width:11px; height:11px; color:var(--green); position:absolute; left:2.5px; top:50%; transform:translateY(-50%);}
.pc-btn{
  display:block; width:100%; text-align:center; margin-top:1.25rem;
  padding:12px; border:none; border-radius:11px; cursor:pointer;
  font-family:'Bebas Neue',sans-serif; font-size:17px; letter-spacing:.06em; text-decoration:none;
  background:linear-gradient(135deg, var(--orange), var(--orange-2)); color:#fff;
  box-shadow:0 8px 22px rgba(245,130,10,.30), inset 0 1px 0 rgba(255,255,255,.15);
  transition:all .2s var(--ease-out);
}
.pc-btn:hover{transform:translateY(-2px); box-shadow:0 14px 32px rgba(245,130,10,.42);}
.pc-btn.outline{background:transparent; color:var(--orange); border:1px solid rgba(245,130,10,.40); box-shadow:none;}
.pc-btn.outline:hover{background:rgba(245,130,10,.08); border-color:var(--orange);}

.extras{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:16px; padding:1.5rem;
}
.extras-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem;}
.extras-title{font-family:'Barlow Condensed',sans-serif; font-size:14px; font-weight:700; color:#fff; letter-spacing:.08em; text-transform:uppercase;}
.et-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem;}
.et-item{display:flex; justify-content:space-between; align-items:center; padding:.6rem .85rem; background:rgba(0,0,0,.20); border:1px solid var(--border); border-radius:9px; font-size:12.5px;}
.et-key{color:var(--mute);}
.et-val{color:var(--orange); font-family:'JetBrains Mono',monospace; font-weight:700;}

/* ─── AREA MAP ─── */
.area-wrap{display:grid; grid-template-columns:1.2fr 1fr; gap:1.5rem; align-items:start;}
.area-map-card{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:18px; padding:1.25rem;
}
.area-map-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem;}
.area-map-title{font-family:'Barlow Condensed',sans-serif; font-size:14px; font-weight:700; color:#fff; letter-spacing:.08em; text-transform:uppercase;}
.area-map-svg{width:100%; height:auto; display:block;}
.map-route{fill:none; stroke:var(--orange); stroke-width:2.5; stroke-dasharray:6 5; animation:dash 2s linear infinite; filter:drop-shadow(0 0 6px var(--orange-glow));}
@keyframes dash{to{stroke-dashoffset:-22;}}
.area-list{display:flex; flex-direction:column; gap:.5rem;}
.area-row{
  display:flex; align-items:center; gap:.85rem;
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:11px; padding:.85rem 1rem;
  transition:all .2s var(--ease-out);
}
.area-row:hover{transform:translateX(3px); border-color:var(--border-2); background:rgba(245,130,10,.04);}
.area-pin{
  width:30px; height:30px; min-width:30px; border-radius:8px;
  background:rgba(245,130,10,.10); border:1px solid rgba(245,130,10,.20);
  display:grid; place-items:center; color:var(--orange);
}
.area-pin svg{width:14px; height:14px;}
.area-name{font-family:'Barlow Condensed',sans-serif; font-size:16px; font-weight:700; color:#fff; line-height:1.2;}
.area-adj{font-size:11px; color:var(--mute); margin-top:1px; font-family:'JetBrains Mono',monospace;}
.area-adj.base{color:var(--green);}
.area-adj.add{color:var(--orange);}

.area-cta{
  margin-top:1rem;
  background:linear-gradient(135deg, rgba(245,130,10,.12), rgba(245,130,10,.04));
  border:1px solid rgba(245,130,10,.30); border-radius:14px; padding:1.1rem 1.25rem;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.8rem;
}
.area-cta-text{font-size:13.5px; color:var(--text);}
.area-cta-text strong{color:#fff;}

/* ─── REVIEWS ─── */
.reviews-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem;}
.review-card{
  background:linear-gradient(180deg, rgba(27,30,40,.85), rgba(20,22,30,.85));
  border:1px solid var(--border); border-radius:16px; padding:1.75rem;
  position:relative; transition:all .25s var(--ease-out);
}
.review-card::before{content:'"'; position:absolute; top:.6rem; right:1.25rem; font-family:'Bebas Neue',sans-serif; font-size:80px; line-height:1; color:rgba(245,130,10,.18);}
.review-card:hover{transform:translateY(-3px); border-color:var(--border-2);}
.review-stars{color:var(--orange); font-size:16px; letter-spacing:3px; margin-bottom:1rem; filter:drop-shadow(0 0 4px var(--orange-glow));}
.review-text{font-size:14px; color:var(--text); line-height:1.7; margin-bottom:1.25rem; position:relative; z-index:1;}
.review-foot{display:flex; align-items:center; gap:.75rem; padding-top:1rem; border-top:1px solid var(--border);}
.review-avatar{
  width:38px; height:38px; border-radius:50%;
  background:linear-gradient(135deg, var(--orange), var(--orange-3));
  display:grid; place-items:center; color:#fff; font-weight:700; font-size:13px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20);
}
.review-author{font-size:13.5px; font-weight:700; color:#fff; line-height:1.2;}
.review-type{font-size:11px; color:var(--mute); margin-top:2px; font-family:'JetBrains Mono',monospace;}

/* ─── CTA ─── */
.cta-section{
  padding:6rem 1.5rem; position:relative; overflow:hidden;
  background:linear-gradient(135deg, var(--orange-3), var(--orange), var(--orange-2));
}
.cta-section::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at center, transparent 30%, rgba(0,0,0,.30));
}
.cta-section::after{
  content:''; position:absolute; inset:0;
  background-image:radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:30px 30px;
}
.cta-inner{position:relative; z-index:1; max-width:780px; margin:0 auto; text-align:center;}
.cta-eyebrow{display:inline-flex; align-items:center; gap:.55rem; font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:700; letter-spacing:.20em; text-transform:uppercase; color:rgba(255,255,255,.80); margin-bottom:1rem;}
.cta-title{font-family:'Bebas Neue',sans-serif; font-size:clamp(48px, 7vw, 88px); color:#fff; letter-spacing:.02em; line-height:.95; margin-bottom:1rem; text-shadow:0 4px 20px rgba(0,0,0,.30);}
.cta-sub{font-size:18px; color:rgba(255,255,255,.92); margin-bottom:2.5rem; line-height:1.6;}
.cta-btn{
  display:inline-flex; align-items:center; gap:.7rem;
  background:#fff; color:var(--orange); text-decoration:none;
  padding:18px 36px; border-radius:13px;
  font-family:'Bebas Neue',sans-serif; font-size:22px; letter-spacing:.06em;
  border:none; cursor:pointer;
  box-shadow:0 14px 40px rgba(0,0,0,.30);
  transition:all .25s var(--ease-out);
}
.cta-btn:hover{transform:translateY(-3px); box-shadow:0 22px 50px rgba(0,0,0,.40);}
.cta-btn svg{width:20px; height:20px;}

/* ─── FOOTER ─── */
footer{
  background:var(--bg-2); border-top:1px solid var(--border);
  padding:4rem 1.5rem 1.5rem; position:relative;
}
footer::before{content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg, transparent, rgba(245,130,10,.30), transparent);}
.footer-inner{max-width:1200px; margin:0 auto;}
.footer-grid{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:3rem; margin-bottom:2.5rem;}
.footer-brand{display:flex; align-items:center; gap:.7rem; margin-bottom:1rem;}
.footer-brand .nav-logo-mark{width:44px; height:44px; font-size:22px;}
.footer-logo-svg{height:72px; width:auto; display:block;}
.footer-logo-img{height:80px; width:auto; display:block;}
.footer-brand-text{font-family:'Bebas Neue',sans-serif; font-size:24px; color:#fff; letter-spacing:.04em;}
.footer-desc{font-size:13px; color:var(--mute); line-height:1.65; max-width:340px;}
.footer-meta{margin-top:1rem; font-size:11px; color:var(--mute-2); font-family:'JetBrains Mono',monospace;}
.footer-col-title{font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:800; color:#fff; letter-spacing:.10em; text-transform:uppercase; margin-bottom:.85rem;}
.footer-col a{display:flex; align-items:center; gap:.4rem; font-size:13px; color:var(--mute); text-decoration:none; margin-bottom:.55rem; transition:color .15s;}
.footer-col a:hover{color:var(--orange);}
.footer-col a svg{width:13px; height:13px;}
.footer-bottom{padding-top:1.5rem; border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.6rem;}
.footer-copy{font-size:11.5px; color:var(--mute-2); font-family:'JetBrains Mono',monospace;}
.footer-domain{font-size:11.5px; color:var(--orange); font-family:'JetBrains Mono',monospace; font-weight:600;}

/* ─── STICKY PHONE ─── */
.sticky-phone{
  position:fixed; bottom:1.5rem; right:1.5rem; z-index:300;
  display:flex; align-items:center; gap:.55rem;
  background:linear-gradient(135deg, var(--orange), var(--orange-2)); color:#fff;
  text-decoration:none; border-radius:999px;
  padding:13px 22px;
  font-family:'Bebas Neue',sans-serif; font-size:16px; letter-spacing:.06em;
  box-shadow:0 12px 40px rgba(245,130,10,.45);
  transition:all .25s var(--ease-out);
}
.sticky-phone::before{
  content:''; position:absolute; inset:-4px; border-radius:999px; z-index:-1;
  background:rgba(245,130,10,.30); animation:phonePulse 2.4s infinite;
}
@keyframes phonePulse{0%{transform:scale(1); opacity:.7;} 100%{transform:scale(1.25); opacity:0;}}
.sticky-phone:hover{transform:translateY(-3px); box-shadow:0 18px 50px rgba(245,130,10,.55);}
.wa-float{
  position:fixed; right:1.5rem; bottom:5.4rem; z-index:300;
  width:54px; height:54px; border-radius:999px;
  display:grid; place-items:center;
  background:#25D366; color:#fff; text-decoration:none;
  box-shadow:0 12px 34px rgba(37,211,102,.45);
  transition:all .25s var(--ease-out);
}
.wa-float svg{width:30px; height:30px;}
.wa-float:hover{transform:translateY(-3px); box-shadow:0 18px 44px rgba(37,211,102,.6);}

/* ─── MODAL ─── */
.modal-overlay{
  display:none; position:fixed; inset:0; z-index:999;
  background:rgba(0,0,0,.75); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  align-items:center; justify-content:center; padding:1.5rem;
}
.modal-overlay.open{display:flex; animation:fadeIn .2s ease;}
@keyframes fadeIn{from{opacity:0;} to{opacity:1;}}
.modal-box{
  background:linear-gradient(180deg, var(--surface-2), var(--surface));
  border:1px solid var(--border-2); border-radius:18px;
  padding:2.25rem; max-width:480px; width:100%; text-align:center;
  box-shadow:var(--shadow-3); animation:popIn .35s cubic-bezier(.34,1.56,.64,1);
}
@keyframes popIn{from{opacity:0; transform:scale(.88) translateY(20px);} to{opacity:1; transform:scale(1) translateY(0);}}
.modal-icon{
  width:72px; height:72px; margin:0 auto 1rem; border-radius:50%;
  background:linear-gradient(135deg, var(--green), #16A34A);
  display:grid; place-items:center; color:#fff; font-size:36px;
  box-shadow:0 0 0 8px rgba(34,197,94,.15), 0 20px 40px rgba(34,197,94,.30);
}
.modal-title{font-family:'Bebas Neue',sans-serif; font-size:36px; color:#fff; margin-bottom:.4rem; letter-spacing:.02em;}
.modal-sub{font-size:14px; color:var(--mute); margin-bottom:1.25rem; line-height:1.6;}
.modal-detail{background:rgba(0,0,0,.30); border:1px solid var(--border); border-radius:12px; padding:1.1rem; text-align:left; margin-bottom:1.25rem; font-size:13px; color:var(--text); line-height:1.9;}
.modal-detail strong{color:#fff;}
.modal-close{
  background:linear-gradient(135deg, var(--orange), var(--orange-2)); color:#fff; border:none;
  border-radius:10px; padding:12px 32px; font-family:'Bebas Neue',sans-serif; font-size:18px;
  letter-spacing:.06em; cursor:pointer; box-shadow:0 8px 22px rgba(245,130,10,.32);
  transition:all .2s var(--ease-out);
}
.modal-close:hover{transform:translateY(-1px); box-shadow:0 14px 32px rgba(245,130,10,.45);}

/* ─── ANIMATIONS ─── */
@keyframes fadeUp{from{opacity:0; transform:translateY(20px);} to{opacity:1; transform:translateY(0);}}
.fade-in{opacity:0; transform:translateY(20px); transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);}
.fade-in.visible{opacity:1; transform:translateY(0);}

/* ─── RESPONSIVE ─── */
@media (max-width:960px){
  .hero-inner{grid-template-columns:1fr; gap:2rem;}
  /* Collapse the top-bar links/contact into the hamburger drawer. */
  .nav-links{display:none;}
  .nav-burger{display:flex;}
  .services-grid, .why-stats, .pricing-grid, .reviews-grid{grid-template-columns:1fr;}
  .area-wrap{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr; gap:1.75rem;}
  .et-grid{grid-template-columns:1fr 1fr;}
  section{padding:4rem 1.25rem;}
}
@media (max-width:540px){
  .form-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .et-grid{grid-template-columns:1fr;}
  .hero{padding:3rem 1rem 4rem;}
  .hero-title{font-size:clamp(48px, 14vw, 64px);}
  .sticky-phone{bottom:1rem; right:1rem; padding:11px 18px; font-size:14px;}
  .wa-float{right:1rem; bottom:4.5rem; width:48px; height:48px;}
  .wa-float svg{width:26px; height:26px;}
}

/* FAQ accordion: rotate the + on open */
#faq details[open] summary > span:last-child {transform:rotate(45deg);}
#faq summary::-webkit-details-marker{display:none;}

/* ─── MULTI-STEP BOOKING ─── */
.bc-steps{display:flex; gap:.35rem; margin-bottom:1.1rem;}
.bc-step-pip{flex:1; display:flex; align-items:center; gap:.4rem; font-family:'Barlow Condensed',sans-serif; font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--mute-2);}
.bc-step-pip .pip-num{width:19px; height:19px; border-radius:50%; display:grid; place-items:center; background:rgba(255,255,255,.06); border:1px solid var(--border-2); font-size:9.5px; flex-shrink:0; transition:all .2s var(--ease-out);}
.bc-step-pip.active{color:var(--orange);}
.bc-step-pip.active .pip-num{background:var(--orange); border-color:var(--orange); color:#fff;}
.bc-step-pip.done{color:var(--green);}
.bc-step-pip.done .pip-num{background:var(--green); border-color:var(--green); color:#fff;}
.bk-step[hidden]{display:none;}
.agreement-box{background:rgba(0,0,0,.32); border:1px solid var(--border-2); border-radius:11px; padding:1rem 1.1rem; max-height:230px; overflow-y:auto; font-size:12px; line-height:1.6; color:var(--text); margin-bottom:.85rem;}
.agreement-box h4{font-family:'Bebas Neue',sans-serif; font-size:19px; color:#fff; letter-spacing:.02em; margin-bottom:.55rem;}
.ag-summary{background:rgba(245,130,10,.08); border:1px solid rgba(245,130,10,.22); border-radius:8px; padding:.6rem .7rem; margin-bottom:.7rem; font-size:11.5px; line-height:1.7;}
.ag-summary strong{color:#fff;}
.ag-clause{margin-bottom:.5rem;}
.ag-clause strong{color:#fff;}
.agreement-box::-webkit-scrollbar{width:7px;}
.agreement-box::-webkit-scrollbar-track{background:rgba(0,0,0,.2); border-radius:4px;}
.agreement-box::-webkit-scrollbar-thumb{background:var(--border-3); border-radius:4px;}
.agree-check{display:flex; gap:.55rem; align-items:flex-start; font-size:11.5px; color:var(--text); line-height:1.5; margin-bottom:.85rem; cursor:pointer;}
.agree-check input{margin-top:1px; width:16px; height:16px; accent-color:var(--orange); flex-shrink:0; cursor:pointer;}
.agree-check a{color:var(--orange);}
.sig-section{margin-bottom:.75rem;}
.sig-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:.35rem;}
.sig-pad{width:100%; height:148px; background:#fff; border:1px solid var(--border-2); border-radius:9px; display:block; cursor:crosshair; touch-action:none;}
.sig-pad:active{border-color:var(--orange);}
.sig-clear{background:none; border:none; color:var(--mute); font-size:11px; cursor:pointer; text-decoration:underline; font-family:'Barlow',sans-serif;}
.sig-clear:hover{color:var(--orange);}
.sig-hint{font-size:10px; color:var(--mute-2); text-align:center; margin-top:.3rem;}
.sig-error{color:var(--red); font-size:11px; margin-top:.35rem; display:none;}
.sig-mode{display:flex; gap:.4rem; margin-bottom:.45rem;}
.sig-tab{flex:1; background:rgba(255,255,255,.05); border:1px solid var(--border-2); color:var(--mute); font-family:'Barlow',sans-serif; font-size:11.5px; font-weight:600; padding:7px 4px; border-radius:8px; cursor:pointer; transition:all .15s var(--ease-out);}
.sig-tab.active{background:rgba(245,130,10,.14); border-color:var(--orange); color:#fff;}
.sig-typed{height:96px; background:#fff; border:1px solid var(--border-2); border-radius:9px; margin-top:.4rem; display:flex; align-items:center; justify-content:center; font-family:'Dancing Script',cursive; font-weight:700; font-size:40px; color:#1A1A1A; overflow:hidden; padding:0 12px;}
.step2-btns{display:flex; gap:.55rem; margin-top:.3rem;}
.btn-back{background:rgba(255,255,255,.04); color:var(--text); border:1px solid var(--border-2); border-radius:11px; padding:0 20px; font-family:'Bebas Neue',sans-serif; font-size:20px; letter-spacing:.04em; cursor:pointer; transition:all .15s var(--ease-out); flex-shrink:0;}
.btn-back:hover{border-color:var(--orange); color:var(--orange);}
.step2-btns .book-now-btn{flex:1;}
/* ── Payment step (Stripe) ── */
.pay-summary{background:rgba(255,255,255,.04); border:1px solid var(--border-2); border-radius:12px; padding:.85rem 1rem; margin-bottom:1rem;}
.pay-summary-row{display:flex; align-items:center; justify-content:space-between;}
.pay-summary-label{font-family:'Barlow Condensed',sans-serif; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--mute);}
.pay-summary-badge{font-family:'Barlow',sans-serif; font-size:12px; font-weight:600; color:var(--green);}
.pay-methods{margin-bottom:1rem;}
.pay-methods-title{font-family:'Barlow Condensed',sans-serif; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--mute); margin-bottom:.5rem;}
.pay-method-chips{display:flex; flex-wrap:wrap; gap:.45rem;}
.pay-chip{display:inline-flex; align-items:center; gap:.35rem; background:rgba(255,255,255,.05); border:1px solid var(--border-2); border-radius:8px; padding:6px 10px; font-family:'Barlow',sans-serif; font-size:11.5px; font-weight:600; color:var(--text);}
.pay-chip svg{width:14px; height:14px; color:var(--orange);}
.pay-fee-note{margin-top:.6rem; font-family:'Barlow',sans-serif; font-size:11px; line-height:1.5; color:var(--mute);}
.pay-error{margin-top:.6rem; font-family:'Barlow',sans-serif; font-size:12px; font-weight:600; color:#ff6b6b;}
.pay-later-link{display:block; width:100%; margin-top:.7rem; background:none; border:none; color:var(--mute); font-family:'Barlow',sans-serif; font-size:12.5px; font-weight:600; text-decoration:underline; cursor:pointer;}
.pay-later-link:hover{color:var(--orange);}
.pay-secure-note{display:flex; align-items:center; gap:.4rem; margin-top:.9rem; font-family:'Barlow',sans-serif; font-size:10.5px; line-height:1.5; color:var(--mute);}
.pay-secure-note svg{color:var(--green); flex-shrink:0;}
/* Nav stacked contact (phone + email) */
.nav-contact{display:flex; flex-direction:column; align-items:flex-start; gap:0;}
.nav-contact a{padding-top:1px!important; padding-bottom:1px!important;}
.nav-email{color:var(--mute)!important; font-family:'Barlow',sans-serif!important; font-size:11px!important; font-weight:600!important; display:inline-flex; align-items:center; gap:.35rem;}
.nav-email svg{width:11px; height:11px;}
.nav-email:hover{color:var(--orange)!important; background:transparent!important;}
@media(max-width:600px){.nav-email{display:none;}}
/* Footer social icons */
.social-ic{width:38px; height:38px; border-radius:10px; display:grid; place-items:center; background:rgba(255,255,255,.05); border:1px solid var(--border-2); color:var(--mute); transition:all .15s var(--ease-out);}
.social-ic:hover{border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.10); transform:translateY(-2px);}
.social-ic svg{width:18px; height:18px;}
/* ─── In-page PDF reader (read-only Terms viewer) ─── */
.pdf-modal-overlay{display:none; position:fixed; inset:0; z-index:999; background:rgba(0,0,0,.82); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); align-items:center; justify-content:center; padding:1.5rem;}
.pdf-modal-overlay.open{display:flex; animation:fadeIn .2s ease;}
.pdf-modal-box{background:var(--surface); border:1px solid var(--border-2); border-radius:16px; width:100%; max-width:900px; height:88vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:var(--shadow-3);}
.pdf-modal-head{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1.2rem; border-bottom:1px solid var(--border); flex-shrink:0;}
.pdf-modal-title{font-family:'Bebas Neue',sans-serif; font-size:22px; color:#fff; letter-spacing:.02em; line-height:1;}
.pdf-modal-tag{font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--mute); border:1px solid var(--border-2); border-radius:999px; padding:3px 9px;}
.pdf-modal-close{background:rgba(255,255,255,.06); border:1px solid var(--border-2); color:var(--text); width:34px; height:34px; border-radius:9px; font-size:20px; line-height:1; cursor:pointer; transition:all .15s var(--ease-out); flex-shrink:0;}
.pdf-modal-close:hover{border-color:var(--orange); color:var(--orange);}
.pdf-modal-frame{flex:1; width:100%; border:none; background:#fff;}
.pdf-modal-fallback{padding:.7rem 1.2rem; font-size:11.5px; color:var(--mute); border-top:1px solid var(--border); text-align:center; flex-shrink:0;}
.pdf-modal-fallback a{color:var(--orange);}


/* --- */


/* ── Address autocomplete + verify modal ── */
.addr-wrap{ position:relative; }
.addr-suggest{ position:absolute; top:100%; left:0; right:0; background:#181818;
  border:1px solid var(--border); border-top:none; border-radius:0 0 9px 9px;
  max-height:260px; overflow-y:auto; z-index:60; display:none; box-shadow:0 12px 28px rgba(0,0,0,.55); }
.addr-suggest.show{ display:block; }
.addr-item{ padding:.65rem .9rem; cursor:pointer; font-size:13px; color:#dcdcdc;
  border-bottom:1px solid #232323; display:flex; align-items:flex-start; gap:.5rem; }
.addr-item:last-child{ border-bottom:none; }
.addr-item:hover, .addr-item.active{ background:rgba(245,130,10,.13); color:var(--orange); }
.addr-item .addr-pin{ flex:0 0 14px; margin-top:2px; color:#888; }
.addr-item:hover .addr-pin, .addr-item.active .addr-pin{ color:var(--orange); }
.addr-item .addr-main{ font-weight:600; }
.addr-item small{ display:block; font-size:11.5px; color:#9aa1ab; margin-top:1px; font-weight:400; }
.addr-manual{ padding:.6rem .9rem; cursor:pointer; font-size:11.5px; color:var(--orange);
  text-align:center; background:#1f1f1f; font-weight:700; letter-spacing:.02em; }
.addr-manual:hover{ background:#262626; }
.addr-badge{ display:none; align-items:center; gap:6px; font-size:11.5px; color:#27a866;
  font-weight:700; margin-top:6px; }
.addr-badge.show{ display:inline-flex; }
.addr-badge svg{ flex-shrink:0; }
/* Verify modal */
.vfy-overlay{ display:none; position:fixed; inset:0; background:rgba(0,0,0,.82); z-index:620;
  align-items:center; justify-content:center; padding:1rem; }
.vfy-overlay.show{ display:flex; animation:vfyFade .18s ease; }
@keyframes vfyFade{ from{ opacity:0; } to{ opacity:1; } }
.vfy-modal{ background:#161616; border:1px solid var(--border); border-radius:14px;
  max-width:780px; width:100%; max-height:94vh; display:flex; flex-direction:column;
  overflow:hidden; box-shadow:0 18px 50px rgba(0,0,0,.7); }
.vfy-head{ padding:1rem 1.25rem; border-bottom:1px solid var(--border);
  display:flex; justify-content:space-between; align-items:center; }
.vfy-head h3{ font-family:'Barlow Condensed',sans-serif; font-size:17px; font-weight:700;
  color:#fff; letter-spacing:.02em; }
.vfy-x{ background:transparent; border:none; color:#888; cursor:pointer; font-size:18px;
  padding:4px 8px; line-height:1; }
.vfy-x:hover{ color:#fff; }
.vfy-eyebrow{ padding:.85rem 1.25rem .75rem; border-bottom:1px solid var(--border);
  background:#1a1a1a; }
.vfy-eyebrow .vfy-tag{ font-size:10.5px; color:#888; letter-spacing:.07em;
  text-transform:uppercase; margin-bottom:3px; }
.vfy-eyebrow .vfy-addr{ font-size:15px; font-weight:700; color:#fff; line-height:1.35; }
.vfy-map{ height:380px; background:#0a0a0a; position:relative; }
.vfy-map .leaflet-control-attribution{ font-size:9.5px; }
.vfy-foot{ padding:.95rem 1.25rem; border-top:1px solid var(--border);
  display:flex; gap:.6rem; justify-content:flex-end; flex-wrap:wrap; }
.vfy-btn{ padding:.65rem 1.15rem; border-radius:8px; font-size:13px; font-weight:700;
  border:1px solid var(--border); background:transparent; color:#ccc; cursor:pointer;
  font-family:'Barlow',sans-serif; letter-spacing:.02em; }
.vfy-btn:hover{ border-color:#3D3D3D; color:#fff; }
.vfy-btn.primary{ background:var(--orange); border-color:var(--orange); color:#fff; }
.vfy-btn.primary:hover{ background:#c46a08; border-color:#c46a08; }
@media (max-width:520px){
  .vfy-map{ height:300px; }
  .vfy-foot{ flex-direction:column-reverse; }
  .vfy-foot .vfy-btn{ width:100%; }
}
