:root{
  --bg:#f7f7f5;--card:#fff;--text:#111;--muted:#6b7280;--line:#e5e7eb;--dark:#111;
  --success:#0f7a39;--success-bg:#e8f7ee;--danger:#b42318;--danger-bg:#fdecec;
  --warn:#9a6700;--warn-bg:#fff8e6;--radius:24px;--shadow:0 20px 50px rgba(0,0,0,.08)
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
a{text-decoration:none;color:inherit}
.shell{max-width:1240px;margin:0 auto;padding:0 16px}
.topbar{padding:18px 0;background:#fff;border-bottom:1px solid var(--line)}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.brand{font-weight:800;font-size:22px;letter-spacing:-.03em}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:13px 16px;border-radius:16px;border:1px solid var(--line);background:#fff;font-weight:700;cursor:pointer}
.btn.primary{background:#111;color:#fff;border-color:#111}
.btn.ghost{background:#fff}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;padding:42px 0}
.hero-copy h1{font-size:clamp(42px,6vw,72px);line-height:.95;letter-spacing:-.07em;margin:12px 0}
.hero-copy p{color:var(--muted);font-size:18px;line-height:1.6;max-width:680px}
.eyebrow{display:inline-block;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12px;font-weight:700;color:var(--muted)}
.trust{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.trust span{background:#fff;border:1px solid var(--line);padding:10px 12px;border-radius:999px;font-size:13px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.quote-card{padding:22px}
.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}
.card-head h2{margin:0;font-size:30px;letter-spacing:-.04em}
.price-box{font-size:34px;font-weight:800;letter-spacing:-.05em}
.form-grid{display:grid;gap:14px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
label{display:grid;gap:8px}
label span{font-size:13px;font-weight:700}
input,select,textarea{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:16px;font:inherit;background:#fff}
input:focus,select:focus,textarea:focus{outline:none;border-color:#111}
.toggle-list{display:grid;gap:10px}
.toggle{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fafafa;gap:12px}
.toggle-left{display:flex;gap:12px;align-items:center}
.toggle small{display:block;color:var(--muted);margin-top:2px}
.quote-summary{margin-top:12px;padding:18px;border-radius:20px;background:#fafafa;border:1px solid var(--line)}
.quote-line{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px}
.quote-total{display:flex;justify-content:space-between;gap:12px;padding-top:10px;margin-top:10px;border-top:1px solid var(--line);font-size:20px;font-weight:800}
.notice{padding:14px 16px;border-radius:18px;background:#111;color:#fff;font-size:14px;line-height:1.5}
.notice.light{background:#f3f4f6;color:#111}
.footer-space{height:30px}
.admin-wrap{padding:24px 0 40px}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px}
.stat,.job-card,.calendar-wrap{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.stat strong{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}
.stat span{font-size:28px;font-weight:800}
.jobs-grid{display:grid;gap:16px}
.job-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
.badges{display:flex;gap:8px;flex-wrap:wrap}
.badge,.pay,.pill{display:inline-flex;padding:8px 10px;border-radius:999px;font-size:12px;font-weight:800}
.badge.pending{background:var(--warn-bg);color:var(--warn)}
.badge.confirmed{background:var(--success-bg);color:var(--success)}
.badge.declined,.badge.cancelled{background:var(--danger-bg);color:var(--danger)}
.badge.completed{background:#eef2ff;color:#2743a6}
.pay.pending{background:#f3f4f6;color:#374151}
.pay.paid{background:var(--success-bg);color:var(--success)}
.pay.failed{background:var(--danger-bg);color:var(--danger)}
.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.meta{background:#fafafa;border:1px solid var(--line);border-radius:16px;padding:12px}
.meta strong{display:block;font-size:12px;color:var(--muted);margin-bottom:6px;text-transform:uppercase}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.filter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.filters,.views{display:flex;gap:8px;flex-wrap:wrap}
.filter-link,.view-link{padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:14px;font-weight:700}
.filter-link.active,.view-link.active{background:#111;color:#fff;border-color:#111}
.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.cal-weekday{text-align:center;font-size:13px;color:var(--muted);font-weight:700;padding:6px 0}
.cal-day{min-height:128px;border:1px solid var(--line);border-radius:16px;padding:10px;background:#fafafa}
.cal-day.muted{background:#f3f4f6}
.cal-day-number{font-weight:800;margin-bottom:10px}
.cal-job{display:block;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:8px;font-size:12px}
.cal-job.confirmed-clutch{background:#eefaf2;border-color:#0f7a39}
.cal-job.pending-clutch{background:#fff8e6;border-color:#9a6700}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);padding:18px;z-index:100;align-items:center;justify-content:center}
.modal.open{display:flex}
.modal-card{width:100%;max-width:760px;max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:22px;box-shadow:var(--shadow)}
.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.close-btn{background:#f3f4f6;border:none;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}
@media (max-width:1000px){.hero,.stats,.meta-grid,.grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.grid-2,.grid-3,.stats,.meta-grid,.hero{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.calendar-grid{grid-template-columns:1fr}.btn,.filter-link,.view-link{width:100%}}


.subheading{color:#6b7280;font-size:14px;margin-top:4px}
.hero-points{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px}
.hero-point{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}
.hero-point strong{display:block;margin-bottom:6px}
.hero-point p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.section-title{font-size:13px;font-weight:800;color:#6b7280;text-transform:uppercase;letter-spacing:.08em;margin-top:8px}
.tip{
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;border-radius:50%;background:#111;color:#fff;
  font-size:11px;font-weight:800;cursor:help;position:relative;top:-1px
}
.tip:hover::after{
  content:attr(data-tip);
  position:absolute;left:0;top:26px;width:250px;z-index:10;
  background:#111;color:#fff;padding:10px 12px;border-radius:14px;
  font-size:12px;line-height:1.5;font-weight:600;box-shadow:0 12px 24px rgba(0,0,0,.18)
}
@media (max-width:760px){
  .tip:hover::after{width:220px}
}


.quote-card{position:relative}
.quote-summary{position:sticky;bottom:0}
@media (max-width:1000px){
  .hero{grid-template-columns:1fr}
  .hero-copy{order:1}
  .quote-card{order:2}
}
@media (max-width:760px){
  body{font-size:15px}
  .topbar{padding:14px 0}
  .topbar-inner{align-items:stretch}
  .brand{font-size:20px}
  .hero{padding:26px 0}
  .hero-copy h1{font-size:38px;line-height:1.02}
  .hero-copy p{font-size:16px}
  .card-head{flex-direction:column;align-items:flex-start}
  .price-box{font-size:32px}
  .quote-card{padding:16px}
  input,select,textarea{padding:13px 14px}
  .toggle{padding:12px 14px;align-items:flex-start}
  .toggle-left{align-items:flex-start}
  .trust span{width:100%;justify-content:flex-start}
  .quote-summary{position:static}
}


.reviews-card{margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.reviews-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.reviews-stars{font-weight:800;letter-spacing:.12em}
.reviews-copy{margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.6}
.reviews-embed{border:1px dashed var(--line);border-radius:16px;padding:16px;background:#fafafa}
.reviews-placeholder{font-size:14px;color:#6b7280;line-height:1.6}
.popular-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#111;color:#fff;font-size:10px;font-weight:800;margin-left:6px}
.trust-line{padding:12px 14px;border-radius:16px;background:#f3f4f6;font-size:13px;line-height:1.5}
.slot-warning{padding:12px 14px;border-radius:16px;background:#fff8e6;color:#9a6700;font-size:13px;font-weight:700}
.price-box{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.price-box small{font-size:13px;color:#6b7280;max-width:220px;text-align:right;line-height:1.4}
.deposit-note{font-size:13px;color:#6b7280;line-height:1.5}
@media (max-width:760px){
  .price-box{align-items:flex-start}
  .price-box small{text-align:left;max-width:none}
}


.seo-section{padding:8px 0 40px}
.seo-card{padding:22px}
.seo-card h2{margin:0 0 12px;font-size:28px;letter-spacing:-.04em}
.seo-card p{margin:0 0 14px;color:var(--muted);line-height:1.7}


.funnel-shell{max-width:860px;margin:0 auto;padding:28px 16px 48px}
.funnel-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow)}
.progress{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 24px}
.progress-step{background:#f3f4f6;border:1px solid var(--line);border-radius:14px;padding:12px;font-size:13px;font-weight:800;color:#6b7280;text-align:center}
.progress-step.active{background:#111;color:#fff;border-color:#111}
.progress-step.done{background:#e8f7ee;color:#0f7a39;border-color:#b7e4c7}
.funnel-title{font-size:36px;letter-spacing:-.05em;margin:0 0 8px}
.funnel-copy{color:#6b7280;line-height:1.6;margin:0 0 20px}
.funnel-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.summary-box{background:#fafafa;border:1px solid var(--line);border-radius:18px;padding:18px}
.summary-title{font-size:18px;font-weight:800;margin:0 0 12px}
.option-card{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}
.option-card + .option-card{margin-top:12px}
.option-card input[type=radio], .option-card input[type=checkbox]{margin-top:4px}
.option-copy strong{display:block;margin-bottom:4px}
.option-copy small{display:block;color:#6b7280;line-height:1.5}
.price-big{font-size:42px;font-weight:900;letter-spacing:-.06em}
.inline-note{font-size:13px;color:#6b7280;line-height:1.5}
.hero-mini{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.seo-mini{margin-top:22px;color:#6b7280;line-height:1.7}
@media (max-width:760px){
  .funnel-title{font-size:30px}
  .progress{grid-template-columns:1fr 1fr}
  .option-card{flex-direction:column}
  .price-big{font-size:34px}
}

.funnel-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.funnel-main{min-width:0}
.funnel-side{min-width:0}
.summary-sticky{position:sticky;top:20px}
.summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.summary-price{font-size:34px;font-weight:900;letter-spacing:-.06em}
.summary-sub{font-size:13px;color:#6b7280;line-height:1.4}
.summary-list{display:grid;gap:8px}
.summary-note{margin-top:14px;padding:12px 14px;background:#f3f4f6;border-radius:14px;font-size:13px;line-height:1.5;color:#4b5563}
.section-stack{display:grid;gap:14px}
.form-card{padding:24px}
.form-row{display:grid;gap:14px}
.form-row + .form-row{margin-top:14px}
.page-tag{display:inline-block;padding:7px 10px;border-radius:999px;background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:800;margin-bottom:12px}
@media (max-width:980px){
  .funnel-layout{grid-template-columns:1fr}
  .summary-sticky{position:static}
}
@media (max-width:760px){
  .form-card{padding:18px}
  .funnel-shell{padding:18px 14px 34px}
  .funnel-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .funnel-actions .btn{width:100%}
  .progress{grid-template-columns:1fr 1fr}
}


/* Refined funnel layout */
body{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,0.9), rgba(247,247,245,0.98) 40%),
    var(--bg);
}

.funnel-shell{
  max-width: 1120px;
  margin: 0 auto;
  padding: 26px 20px 54px;
}

.progress{
  max-width: 860px;
  margin: 0 auto 22px;
}

.funnel-layout{
  grid-template-columns: minmax(0, 720px) 320px;
  justify-content: center;
  gap: 24px;
}

.funnel-main{
  width: 100%;
}

.funnel-card.form-card{
  max-width: 720px;
  margin: 0 auto;
  padding: 28px;
  border-radius: 26px;
}

.funnel-title{
  font-size: 38px;
  line-height: 1.02;
  letter-spacing: -0.06em;
  margin-bottom: 10px;
}

.funnel-copy{
  max-width: 58ch;
  font-size: 16px;
  margin-bottom: 24px;
}

.page-tag{
  margin-bottom: 14px;
}

label span{
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #6b7280;
}

input, select, textarea{
  background: #fcfcfc;
  border-radius: 16px;
  min-height: 52px;
}

textarea{
  min-height: 120px;
  resize: vertical;
}

.grid-2, .grid-3{
  align-items: start;
}

.option-card{
  padding: 18px;
  border-radius: 20px;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.option-card:hover{
  border-color: #cfd4da;
  box-shadow: 0 12px 28px rgba(0,0,0,.05);
}

.option-copy strong{
  font-size: 16px;
}

.option-copy small{
  font-size: 13px;
}

.summary-box{
  border-radius: 22px;
  padding: 20px;
}

.summary-sticky{
  top: 18px;
}

.summary-price{
  font-size: 40px;
  line-height: 1;
}

.summary-sub{
  max-width: 22ch;
}

.summary-box .quote-line,
.summary-box .quote-total{
  align-items: center;
}

.quote-line{
  font-size: 14px;
}

.quote-total{
  font-size: 19px;
}

.funnel-actions{
  margin-top: 26px;
  justify-content: flex-start;
}

.funnel-actions .btn{
  min-width: 170px;
}

.inline-note,
.summary-note{
  font-size: 13px;
}

@media (max-width: 1180px){
  .funnel-layout{
    grid-template-columns: minmax(0, 1fr) 300px;
  }
}

@media (max-width: 980px){
  .funnel-shell{
    max-width: 860px;
  }

  .progress{
    max-width: none;
  }

  .funnel-layout{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .funnel-card.form-card{
    max-width: none;
  }

  .funnel-side{
    max-width: 720px;
    width: 100%;
    margin: 0 auto;
  }

  .summary-sticky{
    position: static;
  }
}

@media (max-width: 760px){
  .funnel-shell{
    padding: 18px 14px 34px;
  }

  .funnel-card.form-card{
    padding: 20px;
    border-radius: 22px;
  }

  .funnel-title{
    font-size: 30px;
  }

  .funnel-copy{
    font-size: 15px;
    margin-bottom: 20px;
  }

  .progress{
    gap: 8px;
  }

  .progress-step{
    padding: 10px;
    font-size: 12px;
  }

  .summary-price{
    font-size: 34px;
  }

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

  .funnel-actions .btn{
    width: 100%;
    min-width: 0;
  }
}


.option-card{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.option-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.05)}
.option-card.is-selected{border-color:#111;background:#fcfcfc;box-shadow:0 12px 28px rgba(0,0,0,.06)}
.btn.is-disabled,.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}
.summary-meta{display:grid;gap:8px;margin-bottom:14px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:14px}
.summary-meta-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#4b5563}
.summary-meta-row strong{color:#111}

/* Premium funnel refinements */
:root{--panel:#ffffff;--panel-soft:#fbfbfb;--line-strong:#d9dde3}
.funnel-shell{position:relative}
.funnel-card.form-card,.summary-box,.job-card,.modal-card{
  background:linear-gradient(180deg,#fff 0%,#fcfcfc 100%);
  border:1px solid var(--line-strong);
  box-shadow:0 18px 50px rgba(17,24,39,.06);
}
.progress-step{position:relative;overflow:hidden}
.progress-step.active::after,.progress-step.done::after{
  content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:currentColor;opacity:.18
}
label span{display:block;margin-bottom:8px;font-weight:800}
input:focus,select:focus,textarea:focus{
  outline:none;border-color:#111;box-shadow:0 0 0 4px rgba(17,17,17,.06);background:#fff
}
.option-card{position:relative;background:var(--panel)}
.option-card::after{
  content:"";position:absolute;inset:0;border-radius:20px;pointer-events:none;
  background:linear-gradient(135deg,rgba(17,17,17,.02),transparent 38%);opacity:0;transition:opacity .18s ease
}
.option-card:hover::after,.option-card.is-selected::after{opacity:1}
.option-card.is-selected{border-color:#111;transform:translateY(-1px)}
.summary-box{background:linear-gradient(180deg,#fff 0%,#fafafa 100%)}
.summary-price{letter-spacing:-.07em}
.summary-meta,.summary-note{background:#fff}
.quote-line,.quote-total{padding:10px 0;border-bottom:1px solid #eceff3}
.quote-total{border-bottom:none;padding-top:14px}
.page-tag{background:#111;color:#fff}
.funnel-actions .btn.primary{box-shadow:0 12px 24px rgba(17,17,17,.14)}

/* Admin editor */
.admin-edit-form{margin-top:18px;padding-top:18px;border-top:1px solid #eceff3;display:grid;gap:16px}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-full{grid-column:1 / -1}
.admin-addon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mini-check{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;font-size:14px;font-weight:700}
.mini-check input{min-height:auto}
.admin-price-bar{display:flex;justify-content:space-between;gap:16px;align-items:end;padding:16px 18px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:18px}
.admin-price-label{font-size:12px;font-weight:800;text-transform:uppercase;color:#6b7280;letter-spacing:.08em}
.admin-price-preview{font-size:32px;font-weight:900;letter-spacing:-.06em}
.admin-alert{padding:14px 16px;background:#eef6ff;border:1px solid #cfe0ff;border-radius:16px;color:#1f3f73;font-size:14px;line-height:1.55}
.modal-card textarea{min-height:110px}
@media (max-width:760px){
  .admin-form-grid,.admin-addon-grid{grid-template-columns:1fr}
  .admin-price-bar{flex-direction:column;align-items:stretch}
}


/* Professional add-on cards and consent styling */
.addons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.addons-grid-review{grid-template-columns:repeat(2,minmax(0,1fr));}
.option-card-equal{height:100%;min-height:168px}
.option-card-compact{min-height:118px}
.option-topline{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;height:100%;width:100%}
.choice-left{display:flex;gap:14px;align-items:flex-start;min-width:0;flex:1}
.choice-price{display:flex;align-items:flex-start;justify-content:flex-end;text-align:right;white-space:nowrap;font-size:18px}
.choice-price strong{font-size:20px;letter-spacing:-.03em}
.option-card input[type=checkbox], .option-card input[type=radio]{
  appearance:none;-webkit-appearance:none;flex:0 0 22px;width:22px;height:22px;margin:0;
  border:1.5px solid #cbd5e1;border-radius:7px;background:#fff;position:relative;top:1px;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.option-card input[type=checkbox]::after, .option-card input[type=radio]::after{
  content:'';position:absolute;inset:0;display:block;width:6px;height:12px;margin:auto;
  border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg) scale(0);transform-origin:center;
  transition:transform .16s ease;
}
.option-card input[type=checkbox]:checked, .option-card input[type=radio]:checked{background:#111;border-color:#111;box-shadow:0 0 0 4px rgba(17,17,17,.08)}
.option-card input[type=checkbox]:checked::after, .option-card input[type=radio]:checked::after{transform:rotate(45deg) scale(1)}
.option-card input[type=checkbox]:focus-visible, .option-card input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(17,17,17,.12)}
.tooltip-shell{display:inline-flex;position:relative;vertical-align:middle;margin-left:6px}
.tooltip-trigger{
  display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;
  border:1px solid #d1d5db;background:#f9fafb;color:#4b5563;font-size:11px;font-weight:800;cursor:help;
}
.tooltip-shell:hover .tooltip-trigger,.tooltip-trigger:focus-visible{border-color:#111;color:#111;background:#fff;outline:none}
.tooltip-trigger::after{
  content:attr(data-tooltip);position:absolute;left:0;top:28px;width:min(280px,calc(100vw - 48px));
  padding:12px 13px;border-radius:14px;background:#111;color:#fff;font-size:12px;line-height:1.55;font-weight:600;
  box-shadow:0 18px 34px rgba(0,0,0,.18);opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease, transform .16s ease;z-index:30;
}
.tooltip-shell:hover .tooltip-trigger::after,.tooltip-trigger:focus-visible::after{opacity:1;transform:translateY(0)}
.consent-stack{display:grid;gap:12px;margin-top:2px}
.consent-card{min-height:unset;padding:18px 18px;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fcfcfc 100%)}
.consent-topline{align-items:center}
.consent-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:999px;background:#f3f4f6;color:#374151;font-size:11px;font-weight:800;white-space:nowrap}
.terms-card{max-width:860px;margin:24px auto}
.terms-list{display:grid;gap:12px}
.is-disabled{opacity:.55;cursor:not-allowed}
@media (max-width:980px){
  .addons-grid,.addons-grid-review{grid-template-columns:1fr}
  .option-card-equal,.option-card-compact{min-height:unset}
}
@media (max-width:760px){
  .choice-price{justify-content:flex-start;text-align:left}
  .consent-topline{align-items:flex-start}
  .consent-badge{margin-left:36px}
}

.sub-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:18px;padding:18px;margin:4px 0 8px}
.sub-card-title{font-size:18px;font-weight:800;letter-spacing:-.02em;margin-bottom:6px}
.sub-card-copy{color:#6b7280;margin-bottom:14px;line-height:1.55}
.compact-grid{gap:12px}

.topbar-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.topbar-links a{font-weight:700;color:#374151}
.topbar-links .btn{color:#fff}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.content-section{padding:10px 0 46px}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.info-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.info-card h3{margin:0 0 10px;font-size:22px;letter-spacing:-.03em}
.info-card p,.content-copy{color:var(--muted);line-height:1.7}
.bullet-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.bullet-list li{padding-left:22px;position:relative;color:var(--muted);line-height:1.6}
.bullet-list li:before{content:"✓";position:absolute;left:0;top:0;color:#111;font-weight:800}
.area-grid,.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.area-card,.service-card{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.area-card strong,.service-card strong{display:block;font-size:20px;margin-bottom:8px;letter-spacing:-.03em}
.area-card span,.service-card span{color:var(--muted);line-height:1.6;font-size:14px}
.check-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.check-strip div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;font-weight:700}
.site-footer{margin-top:20px;padding:28px 0 40px;border-top:1px solid var(--line);background:#fff}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}
.footer-links{display:grid;gap:8px;margin-top:10px}
.footer-copy{color:var(--muted);line-height:1.7;max-width:38ch}
.brand-footer{margin-bottom:10px}
.local-intro{margin-bottom:22px;max-width:72ch}
.local-intro h1{font-size:48px;letter-spacing:-.06em;margin:10px 0}
.local-intro p{font-size:18px;color:var(--muted);line-height:1.7}
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:22px 0 12px}
.faq-list{display:grid;gap:14px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}
.faq-item strong{display:block;margin-bottom:8px;font-size:18px}
@media (max-width:980px){.content-grid,.area-grid,.service-grid,.check-strip,.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.topbar-links{display:grid;grid-template-columns:1fr 1fr}.content-grid,.area-grid,.service-grid,.check-strip,.footer-grid{grid-template-columns:1fr}.local-intro h1{font-size:38px}.hero-actions .btn{width:100%}}

.contact-pill{display:inline-flex;align-items:center;padding:10px 14px;border:1px solid rgba(17,24,39,.12);border-radius:999px;background:#fff;font-weight:700;color:#111827;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.contact-pill:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.10)}


.brand-link{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-logo{width:64px;height:auto;display:block;filter:drop-shadow(0 10px 18px rgba(17,17,17,.12))}
.brand-logo-footer{width:82px}
.brand-text{font-size:20px;letter-spacing:-.03em}
.topbar .brand-text{display:none}
.contact-pill{white-space:nowrap}
@media (max-width:980px){.brand-logo{width:54px}.brand-logo-footer{width:70px}}
@media (max-width:760px){.topbar .brand-text{display:none}.brand-logo{width:48px}.topbar-inner{gap:12px;align-items:center}.topbar-links{align-items:center}}
