@font-face{font-family:'Anton';src:url('fonts/Anton-Regular.ttf');}
@font-face{font-family:'Pacifico';src:url('fonts/Pacifico-Regular.ttf');}
@font-face{font-family:'Nunito';src:url('fonts/Nunito.ttf');font-weight:200 900;}

:root{
  --cream:#F0F0D8; --paper:#F6F4E4; --ink:#161513; --ink2:#201E1A;
  --gold:#F0C048; --gold-d:#d9a82f; --steel:#486078; --steel-d:#3a4e63;
  --red:#C04830; --grey:#A8A8A8; --line:rgba(22,21,19,.12);
  --maxw:1180px; --r:16px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--cream);color:var(--ink);font-family:'Nunito',sans-serif;
  line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}

/* paper grain */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.045;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
section{position:relative;}
.pad{padding:96px 0;}
.ink{background:var(--ink);color:var(--cream);}
.ink2{background:var(--ink2);color:var(--cream);}
.steel{background:var(--steel);color:var(--cream);}
.paper{background:var(--paper);}

h1,h2,h3,.anton{font-family:'Anton';font-weight:400;text-transform:uppercase;letter-spacing:.5px;}
h1{font-size:clamp(40px,6.4vw,82px);line-height:.96;}
h2{font-size:clamp(30px,4.6vw,54px);line-height:1;}
h3{font-size:22px;}
.script{font-family:'Pacifico';text-transform:none;letter-spacing:0;}
p{font-size:17.5px;max-width:62ch;}
.lead{font-size:20px;}
.muted{color:#5e5e52;}
.center{text-align:center;}.center p{margin-inline:auto;}

.kicker{display:inline-flex;align-items:center;gap:10px;font-weight:900;letter-spacing:3px;
  text-transform:uppercase;font-size:12.5px;color:var(--red);margin-bottom:18px;}
.ink .kicker,.steel .kicker,.ink2 .kicker{color:var(--gold);}
.kicker::before{content:"★";color:var(--gold);}
.rule{height:5px;width:80px;background:var(--gold);border-radius:4px;margin:22px 0 34px;}
.center .rule{margin-inline:auto;}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14.5px;
  letter-spacing:.6px;padding:14px 26px;border-radius:40px;border:2px solid transparent;cursor:pointer;
  text-transform:uppercase;white-space:nowrap;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;}
.btn:active{transform:translateY(0)!important;}
.btn.gold{background:var(--gold);color:var(--ink);box-shadow:0 6px 18px rgba(240,192,72,.3);}
.btn.gold:hover{background:var(--gold-d);transform:translateY(-2px);box-shadow:0 12px 26px rgba(240,192,72,.42);}
.btn.ink{background:var(--ink);color:var(--cream);box-shadow:0 6px 18px rgba(0,0,0,.22);}
.btn.ink:hover{background:#000;transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.3);}
.btn.ghost{background:transparent;border-color:currentColor;}
.btn.ghost:hover{background:rgba(255,255,255,.12);transform:translateY(-2px);}
.btn.lg{padding:17px 34px;font-size:15.5px;}
.btn.lg.gold::after,.btn.lg.ink::after{content:"→";font-weight:900;font-size:17px;transition:transform .15s;}
.btn.lg.gold:hover::after,.btn.lg.ink:hover::after{transform:translateX(4px);}

/* header */
header.nav{position:sticky;top:0;z-index:1000;background:rgba(22,21,19,.96);
  backdrop-filter:blur(8px);border-bottom:3px solid var(--gold);}
.nav .row{display:flex;align-items:center;justify-content:space-between;height:86px;}
.nav .brand{display:flex;align-items:center;gap:12px;transition:transform .15s;}
.nav .brand:hover{transform:scale(1.03);}
.nav .brand img{height:66px;width:auto;}
.nav .links{display:flex;align-items:center;gap:30px;}
.nav .links a{color:var(--cream);font-weight:800;font-size:14.5px;letter-spacing:.4px;}
.nav .links a:hover{color:var(--gold);}
.nav .phone{color:var(--gold);font-weight:900;letter-spacing:.5px;}
.burger{display:none;background:none;border:0;color:var(--cream);font-size:26px;cursor:pointer;}
@media(max-width:880px){
  .nav .links{position:fixed;inset:78px 0 auto 0;background:var(--ink);flex-direction:column;
    gap:0;padding:10px 0;border-bottom:3px solid var(--gold);transform:translateY(-130%);transition:.25s;}
  .nav .links.open{transform:translateY(0);}
  .nav .links a{padding:14px 28px;width:100%;}
  .nav .links .btn{margin:10px 28px;}
  .burger{display:block;}
}

/* hero */
.hero{background:var(--ink);color:var(--cream);overflow:hidden;}
.hero .burst{position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 62% 40%,
  rgba(240,192,72,.07) 0deg 6deg, transparent 6deg 12deg);}
.hero .vig{position:absolute;inset:0;background:radial-gradient(circle at 60% 38%,transparent 28%,rgba(0,0,0,.55) 82%);}
.hero .inner{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:50px;
  align-items:center;padding:90px 0 100px;}
.hero .script{color:var(--gold);font-size:clamp(24px,3.4vw,40px);margin-bottom:10px;}
.hero h1{margin-bottom:22px;}
.hero p{color:#e7e5d4;}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px;}
.hero .trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;font-weight:800;font-size:13px;
  letter-spacing:.5px;color:#cfcdbc;text-transform:uppercase;}
.hero .trust span{display:flex;align-items:center;gap:8px;}
.hero .trust b{color:var(--gold);}
.hero .badgewrap{display:grid;place-items:center;}
.hero .badgewrap img{width:min(420px,80%);filter:drop-shadow(0 26px 46px rgba(0,0,0,.55));}
@media(max-width:880px){.hero .inner{grid-template-columns:1fr;text-align:center;}
  .hero .cta,.hero .trust{justify-content:center;}.hero .badgewrap{order:-1;}}

/* ticker */
.ticker{background:var(--gold);color:var(--ink);overflow:hidden;white-space:nowrap;padding:13px 0;
  border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);}
.ticker span{font-family:'Anton';text-transform:uppercase;font-size:19px;letter-spacing:2px;
  display:inline-block;animation:scroll 30s linear infinite;}
.ticker i{color:var(--red);margin:0 16px;font-style:normal;}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* grids + cards */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
@media(max-width:880px){.g2,.g3,.g4{grid-template-columns:1fr;}}
.card{background:#fff;border-radius:var(--r);padding:34px;box-shadow:0 14px 34px rgba(0,0,0,.07);
  border:1px solid var(--line);}
.card .ic{width:56px;height:56px;border-radius:14px;background:var(--gold);display:grid;place-items:center;
  font-size:28px;margin-bottom:18px;}
.card h3{margin-bottom:10px;}
.card ul{margin:14px 0 0 18px;font-size:15.5px;line-height:1.9;color:#444;}
.svc{background:var(--cream);}
.svc .ic{background:var(--ink);}

/* steps */
.steps{counter-reset:s;}
.step{position:relative;padding-left:30px;}
.step .n{font-family:'Anton';font-size:46px;color:var(--gold);line-height:1;}
.step h3{margin:6px 0 8px;}

/* why */
.why{text-align:center;}
.why .ic{margin:0 auto 16px;}

/* offer banner */
.obanner{background:var(--gold);color:var(--ink);border-radius:22px;padding:46px;display:flex;
  align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;border:3px solid var(--ink);}
.obanner .tag{font-weight:900;letter-spacing:2px;text-transform:uppercase;font-size:12px;}
.obanner h2{margin:6px 0 4px;}

/* offers cards */
.offer{background:#fff;border-radius:20px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 16px 36px rgba(0,0,0,.08);display:flex;flex-direction:column;}
.offer .top{background:var(--ink);color:var(--cream);padding:24px 28px;position:relative;}
.offer.feat .top{background:var(--red);}
.offer .badge{position:absolute;top:18px;right:22px;background:var(--gold);color:var(--ink);
  font-weight:900;font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:6px 12px;border-radius:20px;}
.offer .price{font-family:'Anton';font-size:46px;color:var(--gold);line-height:1;}
.offer.feat .price{color:#fff;}
.offer .body{padding:26px 28px;flex:1;display:flex;flex-direction:column;}
.offer ul{margin:0 0 20px 18px;line-height:1.9;font-size:15px;color:#444;}
.offer .btn{margin-top:auto;justify-content:center;}
.fine{font-size:12.5px;color:#8a8a7c;}
.offer .size{font-weight:800;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#cfd0c2;}
.offer .from{font-size:13px;font-weight:800;color:#cfd0c2;margin-bottom:2px;}

/* included checklist */
.incl{display:grid;grid-template-columns:repeat(2,1fr);gap:9px 26px;margin:0;list-style:none;}
.incl li{position:relative;padding-left:27px;font-weight:700;font-size:15.5px;}
.incl li::before{content:"✓";position:absolute;left:0;top:-1px;color:var(--steel);font-weight:900;}
@media(max-width:880px){.incl{grid-template-columns:1fr;}}

/* add-ons */
.addons{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
@media(max-width:880px){.addons{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.addons{grid-template-columns:1fr;}}
.addon{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;
  display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:800;font-size:15px;
  box-shadow:0 8px 20px rgba(0,0,0,.05);}
.addon b{color:var(--steel);font-family:'Anton';font-size:18px;white-space:nowrap;}

/* price band (regular plan) */
.priceband{background:var(--gold);color:var(--ink);border:3px solid var(--ink);border-radius:20px;
  padding:30px 36px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.priceband .nums{display:flex;gap:30px;flex-wrap:wrap;}
.priceband .nums div b{font-family:'Anton';font-size:26px;display:block;line-height:1;}
.priceband .nums div span{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;}

/* reviews */
.review{background:#fff;color:var(--ink);border-radius:18px;padding:30px;border:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.06);}
.review h3{color:var(--ink);}
.review .stars{color:var(--gold);font-size:18px;letter-spacing:2px;margin-bottom:12px;}
.review p{font-size:16px;color:#333;}
.review .who{margin-top:16px;font-weight:900;font-size:14px;}
.review .who span{color:#8a8a7c;font-weight:700;}

/* areas */
.areas{display:flex;flex-wrap:wrap;gap:12px;}
.areas span{background:#fff;border:1px solid var(--line);border-radius:30px;padding:9px 18px;
  font-weight:800;font-size:14px;}

/* form */
.formwrap{display:grid;grid-template-columns:1.4fr .9fr;gap:44px;align-items:start;}
@media(max-width:880px){.formwrap{grid-template-columns:1fr;}}
.form{background:#fff;border-radius:20px;padding:38px;border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.08);}
.field{margin-bottom:20px;}
.field label{display:block;font-weight:800;font-size:14px;margin-bottom:7px;}
.field .req{color:var(--red);}
.field input,.field textarea,.field select{width:100%;padding:13px 15px;border:2px solid #e4e2cf;border-radius:12px;
  font-family:inherit;font-size:15.5px;background:var(--paper);transition:.15s;}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--steel);background:#fff;}
.field textarea{min-height:130px;resize:vertical;}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:560px){.row2{grid-template-columns:1fr;}}
.chips{display:flex;gap:12px;flex-wrap:wrap;}
.chip{position:relative;}
.chip input{position:absolute;opacity:0;}
.chip label{display:block;padding:12px 20px;border:2px solid #e4e2cf;border-radius:30px;font-weight:800;
  font-size:14px;cursor:pointer;background:var(--paper);}
.chip input:checked + label{background:var(--ink);color:var(--cream);border-color:var(--ink);}
.aside{background:var(--ink);color:var(--cream);border-radius:20px;padding:34px;}
.aside h3{color:var(--gold);margin-bottom:14px;}
.aside .ln{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:15px;}
.aside .ln i{color:var(--ink);background:var(--gold);width:26px;height:26px;border-radius:50%;display:grid;
  place-items:center;font-style:normal;font-weight:900;font-size:12px;flex:none;}
.note{display:none;background:#eef3ec;border-left:6px solid #4f8a52;padding:18px 22px;border-radius:12px;margin-bottom:24px;font-weight:700;}
.note.show{display:block;}

/* footer */
footer.ft{background:var(--ink);color:#cfcdbc;padding:70px 0 30px;}
.ft .top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;}
@media(max-width:880px){.ft .top{grid-template-columns:1fr;gap:30px;}}
.ft img{height:90px;margin-bottom:16px;}
.ft h4{font-family:'Anton';color:var(--cream);font-size:18px;letter-spacing:1px;margin-bottom:14px;}
.ft a{display:block;padding:5px 0;font-weight:700;font-size:15px;}
.ft a:hover{color:var(--gold);}
.ft .bot{border-top:1px solid rgba(255,255,255,.12);margin-top:46px;padding-top:24px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;letter-spacing:.5px;}
.ft .bot .script{color:var(--gold);font-size:20px;}

/* page header (interior) */
.phead{background:var(--ink);color:var(--cream);text-align:center;padding:70px 0;position:relative;overflow:hidden;}
.phead .burst{position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 50% 0%,
  rgba(240,192,72,.06) 0deg 6deg,transparent 6deg 12deg);}
.phead .inner{position:relative;z-index:2;}
.phead .script{color:var(--gold);font-size:24px;}

/* ============ EPIC LAYER ============ */
.no-motion .w .wi{transform:none!important;}
h1 .w,[data-split] .w{display:inline-block;overflow:hidden;vertical-align:bottom;}
h1 .wi,[data-split] .wi{display:inline-block;will-change:transform;}

/* nav shrink */
header.nav{transition:box-shadow .3s;}
header.nav.shrunk{box-shadow:0 10px 30px rgba(0,0,0,.45);}
header.nav.shrunk .row{height:68px;}
header.nav.shrunk .brand img{height:52px;}
header.nav .row,header.nav .brand img{transition:height .3s;}

/* epic hero */
.epic-hero{background:var(--ink);color:var(--cream);min-height:104vh;display:grid;place-items:center;
  overflow:hidden;position:relative;}
.epic-hero .burst{position:absolute;inset:-40%;will-change:transform;
  background:repeating-conic-gradient(from 0deg at 62% 42%, rgba(240,192,72,.08) 0deg 6deg, transparent 6deg 12deg);
  animation:burstspin 90s linear infinite;}
@keyframes burstspin{to{transform:rotate(360deg);}}
.epic-hero .glow{position:absolute;width:60vw;height:60vw;left:48%;top:6%;border-radius:50%;
  background:radial-gradient(circle, rgba(240,192,72,.22), transparent 60%);filter:blur(30px);will-change:transform;}
.epic-hero .vig{position:absolute;inset:0;background:radial-gradient(circle at 60% 38%, transparent 26%, rgba(0,0,0,.62) 84%);}
.epic-hero .ghostduck{position:absolute;left:-6%;bottom:-8%;width:46vw;opacity:.05;filter:blur(1px);}
.epic-hero .inner{position:relative;z-index:3;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;
  align-items:center;padding:120px 28px;width:100%;}
.epic-hero .script-line{font-family:'Pacifico';color:var(--gold);font-size:clamp(24px,3.2vw,40px);margin-bottom:8px;}
.epic-hero h1{font-size:clamp(46px,7.4vw,108px);line-height:.92;margin-bottom:24px;}
.epic-hero h1 .hl{color:var(--gold);}
.epic-hero .lead{color:#e7e5d4;font-size:clamp(17px,1.5vw,21px);}
.epic-hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px;}
.epic-hero .trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:36px;font-weight:800;font-size:13px;
  letter-spacing:.5px;color:#cfcdbc;text-transform:uppercase;}
.epic-hero .trust b{color:var(--gold);}
.epic-hero .badge-hero{width:min(460px,82%);margin:0 auto;will-change:transform;
  filter:drop-shadow(0 34px 60px rgba(0,0,0,.6));}
.epic-hero .badge-stage{position:relative;display:grid;place-items:center;}
.epic-hero .ring{position:absolute;width:118%;aspect-ratio:1;border-radius:50%;
  border:2px dashed rgba(240,192,72,.35);animation:ringspin 50s linear infinite;}
@keyframes ringspin{to{transform:rotate(360deg);}}
.epic-hero .scrollcue{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;
  font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#9a988a;display:grid;justify-items:center;gap:8px;}
.epic-hero .scrollcue i{width:2px;height:34px;background:linear-gradient(var(--gold),transparent);
  display:block;animation:cue 1.6s ease-in-out infinite;}
@keyframes cue{0%{transform:scaleY(.2);transform-origin:top}55%{transform:scaleY(1)}100%{transform:scaleY(.2);transform-origin:bottom}}
@media(max-width:880px){.epic-hero .inner{grid-template-columns:1fr;text-align:center;padding:90px 22px;}
  .epic-hero .cta,.epic-hero .trust{justify-content:center;}.epic-hero .badge-stage{order:-1;}}

/* statement (word lighting) */
.statement{background:var(--ink2);color:#5e5c50;}
.statement p{font-family:'Anton';text-transform:uppercase;font-size:clamp(30px,4.6vw,58px);
  line-height:1.12;max-width:18ch;letter-spacing:.5px;}
.statement .lw{transition:none;}

/* big service panels */
.svc-panels{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
@media(max-width:880px){.svc-panels{grid-template-columns:1fr;}}
.svc-panel{position:relative;border-radius:24px;overflow:hidden;padding:46px 42px;min-height:430px;
  display:flex;flex-direction:column;will-change:transform;border:3px solid var(--ink);}
.svc-panel.clean{background:linear-gradient(160deg,var(--steel),var(--steel-d));color:#fff;}
.svc-panel.handy{background:linear-gradient(160deg,var(--gold),var(--gold-d));color:var(--ink);}
.svc-panel .big-ic{font-size:54px;margin-bottom:16px;}
.svc-panel h3{font-size:clamp(28px,2.6vw,40px);margin-bottom:10px;}
.svc-panel ul{list-style:none;margin:18px 0 26px;}
.svc-panel li{padding:9px 0 9px 30px;position:relative;font-weight:700;font-size:16px;border-bottom:1px dashed rgba(0,0,0,.18);}
.svc-panel.clean li{border-color:rgba(255,255,255,.22);}
.svc-panel li::before{content:"★";position:absolute;left:0;font-size:13px;top:12px;}
.svc-panel.clean li::before{color:var(--gold);}
.svc-panel.handy li::before{color:var(--red);}
.svc-panel .btn{margin-top:auto;align-self:flex-start;}
.svc-panel .wm{position:absolute;right:-40px;bottom:-50px;width:240px;opacity:.10;transform:rotate(-12deg);pointer-events:none;}

/* steps cinematic */
.steps-epic{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media(max-width:880px){.steps-epic{grid-template-columns:1fr;}}
.step-card{background:#fff;border:3px solid var(--ink);border-radius:20px;padding:36px 30px;position:relative;
  box-shadow:8px 8px 0 var(--ink);}
.step-card .n{font-family:'Anton';font-size:64px;color:var(--gold);line-height:1;-webkit-text-stroke:2px var(--ink);}
.step-card h3{margin:12px 0 8px;}

/* offer mega banner */
.mega-offer{background:var(--gold);border:4px solid var(--ink);border-radius:28px;padding:54px;position:relative;
  overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:34px;flex-wrap:wrap;
  box-shadow:12px 12px 0 var(--ink);}
.mega-offer .price-pop{font-family:'Anton';font-size:clamp(60px,8vw,120px);line-height:.9;color:var(--ink);}
.mega-offer .price-pop small{font-size:.35em;display:block;letter-spacing:2px;}
.mega-offer .spark{position:absolute;font-size:26px;opacity:.5;}

/* review cards epic */
.rev-epic{transform-style:preserve-3d;}
.rev-epic .review{border:3px solid var(--ink);box-shadow:8px 8px 0 rgba(0,0,0,.55);}

/* footer duck */
.ft .ghost{position:absolute;right:2%;bottom:0;width:240px;opacity:.06;pointer-events:none;}
footer.ft{position:relative;overflow:hidden;}

/* interior page reveals inherit everything above */
