/* Next Day Movers — shared styles */
:root{
  --bg:#0D0D0E; --bg2:#09090A; --panel:rgba(255,255,255,.03); --line:rgba(255,255,255,.1);
  --text:#F5F5F4; --muted:#A8A8A6; --dim:#8B8B89;
  --gold:#E9B93C; --gold-bright:#F3CB5B; --gold-rgb:233,185,60;
  --orange:#F97316; --orange-hover:#FB8A3C;
  --light:#F4F4F3; --ink:#161616; --ink-soft:#525250;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Instrument Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-width:320px}
a{color:var(--gold);text-decoration:none}
h1,h2,h3{font-family:'Sora',sans-serif}
img{max-width:100%}
.wrap{max-width:1200px;margin:0 auto}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.eyebrow.dark{color:#9C9C9A}.eyebrow.on-dark{color:var(--dim)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;border-radius:12px;cursor:pointer;font-family:inherit;transition:transform .2s,background .2s,border-color .2s,color .2s;border:1px solid transparent;text-align:center}
.btn-primary{background:var(--orange);color:#0D0D0E;border:none}
.btn-primary:hover{transform:translateY(-1px);background:var(--orange-hover);color:#0D0D0E}
.btn-ghost{border:1px solid rgba(255,255,255,.18);color:var(--text)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn-gold{background:var(--gold);color:#0D0D0E;border:none}
.btn-gold:hover{transform:translateY(-1px);background:var(--gold-bright);color:#0D0D0E}
.btn-ink{border:1.5px solid var(--ink);color:var(--ink)}
.btn-ink:hover{background:var(--ink);color:var(--gold)}

/* Header / nav */
.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);background:rgba(13,13,14,.82);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;gap:30px;padding:14px 28px}
.nav .logo img{height:44px;display:block}
.nav-links{display:flex;gap:26px;margin-left:auto;font-size:14.5px;font-weight:500}
.nav-links a{color:var(--muted);transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:#fff}
.nav-tel{color:var(--text);font-weight:600;font-size:14.5px;display:inline-flex;align-items:center;gap:7px;transition:color .2s}
.nav-tel:hover{color:var(--gold)}
.nav-cta{font-size:14.5px;padding:10px 22px}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;margin-left:auto}
.nav-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;transition:.25s}
.mobile-menu{display:none;flex-direction:column;gap:2px;padding:8px 16px 20px;border-top:1px solid var(--line);background:rgba(9,9,10,.98)}
.mobile-menu a{color:var(--text);font-size:16px;font-weight:500;padding:13px 8px;border-bottom:1px solid rgba(255,255,255,.06)}
.mobile-menu .btn{margin-top:14px}
@media (max-width:860px){
  .nav-links,.nav-tel,.nav-cta{display:none}
  .nav-toggle{display:block}
  .nav{gap:16px}
  body.menu-open .mobile-menu{display:flex}
  body.menu-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.menu-open .nav-toggle span:nth-child(2){opacity:0}
  body.menu-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}

/* Sections */
.section{padding:96px 28px}
.section-dark{background:var(--bg)}
.section-light{background:var(--light);color:var(--ink)}
h2.h-sec{font-size:clamp(30px,3.4vw,44px);letter-spacing:-.025em;margin:0;font-weight:700}
.lead{font-size:16.5px;line-height:1.7;color:var(--ink-soft);max-width:56ch}
.lead.on-dark{color:var(--muted)}

/* Reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
.no-js .reveal{opacity:1;transform:none}

/* Cards / chips */
.chip{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:#E0E0DE;background:rgba(255,255,255,.06);border:1px solid var(--line);padding:8px 14px;border-radius:99px}
.chip .tick{color:var(--gold)}

/* Footer */
.site-footer{background:var(--bg2);border-top:1px solid rgba(255,255,255,.06)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding:56px 28px 40px}
.foot-grid img{height:46px;margin-bottom:14px}
.foot-col{display:flex;flex-direction:column;gap:10px;font-size:14px}
.foot-col .h{font-weight:600;color:var(--text);margin-bottom:4px}
.foot-link{color:var(--dim);transition:color .2s}
.foot-link:hover{color:var(--gold)}
.foot-bottom{padding:22px 28px 30px;font-size:12.5px;color:#5A5A58;border-top:1px solid rgba(255,255,255,.05)}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr}}

/* Forms */
.field{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted)}
.field input,.field select,.field textarea{background:#1A1A1C;border:1px solid rgba(255,255,255,.14);color:var(--text);border-radius:10px;padding:11px 12px;font-size:14px;font-family:inherit}
.field.light input,.field.light select,.field.light textarea{background:#F4F4F3;border:1px solid rgba(0,0,0,.1);color:var(--ink)}
input::placeholder,textarea::placeholder{color:var(--dim)}
select:focus,input:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
input[type=date]{color-scheme:dark}

/* Mobile sticky call bar */
.mobilebar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(9,9,10,.92);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1)}
.mobilebar a{flex:1;text-align:center;font-weight:600;font-size:15px;padding:13px;border-radius:12px}
.mobilebar .call{color:var(--text);border:1px solid rgba(255,255,255,.25)}
.mobilebar .quote{background:var(--orange);color:#0D0D0E}
@media (max-width:860px){.mobilebar{display:flex}body{padding-bottom:74px}}

/* Utility grids */
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
@media (max-width:900px){.split-2{grid-template-columns:1fr;gap:36px}}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.grid-3,.grid-4{grid-template-columns:1fr}}

/* Hero */
.hero{position:relative;overflow:hidden;background:#0D0D0E}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.9)}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,9,10,.94) 0%,rgba(9,9,10,.82) 42%,rgba(9,9,10,.55) 100%),radial-gradient(1000px 500px at 85% -10%,rgba(var(--gold-rgb),.16),transparent 60%)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .9fr;gap:56px;padding:80px 28px 76px;align-items:center}
.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.05;letter-spacing:-.03em;margin:0;font-weight:800}
.rating-line{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:var(--muted)}
.rating-line .s{color:var(--gold);letter-spacing:2px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero-bg::after{background:linear-gradient(180deg,rgba(9,9,10,.8),rgba(9,9,10,.92))}}

/* Quote card */
.quote-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);border-radius:20px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.q-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.q-grid .full{grid-column:1/-1}
@media (max-width:520px){.q-grid{grid-template-columns:1fr}}
.estimate{margin-top:16px;background:rgba(var(--gold-rgb),.1);border:1px solid rgba(var(--gold-rgb),.4);border-radius:12px;padding:14px 16px;align-items:baseline;justify-content:space-between;gap:12px}
.estimate .val{font-family:Sora,sans-serif;font-size:26px;font-weight:700;color:var(--gold-bright)}

/* Trust bar */
.trustbar{border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02)}
.trustbar .row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px 32px;padding:22px 28px;font-size:14px;color:var(--muted)}
.trustbar .row span{display:inline-flex;gap:9px;align-items:center}
.trustbar .tick{color:var(--gold)}

/* Stat cards */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.stats .num{font-family:Sora,sans-serif;font-size:38px;font-weight:800;letter-spacing:-.02em;color:#111}
.stats .lab{font-size:13.5px;color:#6E6E6C;margin-top:4px}

/* Service cards */
.svc-card{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(0,0,0,.07);color:var(--ink);transition:transform .25s,box-shadow .25s}
.svc-card:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(0,0,0,.14)}
.svc-card .ph{height:180px;width:100%;object-fit:cover;background-size:cover;background-position:center;display:block}
.svc-card .body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:9px;flex:1}
.svc-card h3{font-size:18px;margin:0;letter-spacing:-.01em;font-weight:600;display:flex;align-items:center;gap:10px}
.svc-card h3::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--gold);flex:none}
.svc-card p{font-size:14px;line-height:1.6;color:#626260;margin:0;flex:1}
.svc-card .more{font-size:13.5px;font-weight:600;color:#111;margin-top:4px}
.svc-card .more b{color:var(--gold)}

/* Comparison */
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:940px;margin:0 auto}
.cmp .card{border-radius:20px;padding:30px}
.cmp .ours{background:linear-gradient(160deg,rgba(var(--gold-rgb),.14),rgba(var(--gold-rgb),.04));border:1px solid rgba(var(--gold-rgb),.45)}
.cmp .them{background:var(--panel);border:1px solid var(--line)}
.cmp .list{display:flex;flex-direction:column;gap:13px;font-size:14.5px}
.cmp .ours .list{color:#E0E0DE}.cmp .them .list{color:var(--dim)}
.cmp .list span{display:flex;gap:11px}
.cmp .yes{color:var(--gold);font-weight:700}.cmp .no{color:#5A5A58}
@media (max-width:760px){.cmp{grid-template-columns:1fr}}

/* Process steps */
.step{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px 24px 28px}
.step .n{font-family:Sora,sans-serif;font-size:52px;font-weight:800;color:transparent;-webkit-text-stroke:1.5px rgba(var(--gold-rgb),.6);line-height:1;margin-bottom:18px}
.step h3{font-size:17.5px;margin:0 0 8px;color:#fff;font-weight:600}
.step p{font-size:14px;line-height:1.6;color:var(--dim);margin:0}

/* Reviews */
.review-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:18px;padding:28px;margin:0;display:flex;flex-direction:column;gap:16px}
.review-card .stars{color:var(--gold);letter-spacing:3px;font-size:15px}
.review-card blockquote{margin:0;font-size:15.5px;line-height:1.65;color:#333331;flex:1}
.review-card figcaption{display:flex;align-items:center;gap:13px}
.review-card .avatar{width:42px;height:42px;border-radius:50%;background:#111;color:var(--gold);display:grid;place-items:center;font-weight:700;font-size:15px;flex:none}
.review-card .rv-name{display:block;font-weight:600;font-size:14.5px}
.review-card .rv-loc{display:block;font-size:13px;color:#6E6E6C}
.icon-btn{width:44px;height:44px;border-radius:12px;border:1.5px solid rgba(0,0,0,.15);background:#fff;font-size:17px;cursor:pointer;color:var(--ink);transition:border-color .2s}
.icon-btn:hover{border-color:var(--gold)}
#starPicker button{background:none;border:none;cursor:pointer;font-size:24px;padding:2px;line-height:1}

/* FAQ */
.faq-item{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;background:none;border:none;color:var(--text);font:600 16px 'Instrument Sans',sans-serif;padding:19px 22px;cursor:pointer;text-align:left}
.faq-mark{color:var(--gold);font-size:19px;flex:none}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 22px}
.faq-item.open .faq-a{max-height:300px;padding-bottom:20px}
.faq-a p{margin:0;font-size:14.5px;line-height:1.7;color:var(--dim)}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery a{display:block;border-radius:14px;overflow:hidden;position:relative;aspect-ratio:1;cursor:pointer}
.gallery.masonry a:nth-child(6n+1){grid-row:span 2;aspect-ratio:1/2}
.gallery a img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;filter:saturate(.92)}
.gallery a:hover img{transform:scale(1.06)}
@media (max-width:900px){.gallery{grid-template-columns:repeat(3,1fr)}.gallery.masonry a:nth-child(6n+1){grid-row:auto;aspect-ratio:1}}
@media (max-width:560px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* Lightbox */
.lightbox{display:none;position:fixed;inset:0;z-index:200;background:rgba(6,6,7,.92);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:24px}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;border-radius:10px;box-shadow:0 30px 90px rgba(0,0,0,.6)}
.lightbox .lb-close{position:absolute;top:20px;right:24px;background:none;border:none;color:#fff;font-size:26px;cursor:pointer}
.lightbox .lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:none;color:#fff;font-size:34px;width:52px;height:52px;border-radius:50%;cursor:pointer;line-height:1}
.lightbox .lb-prev{left:20px}.lightbox .lb-next{right:20px}
.lightbox .lb-nav:hover{background:var(--gold);color:#0D0D0E}

/* Page hero (inner pages) */
.page-hero{position:relative;overflow:hidden;padding:70px 28px 60px;border-bottom:1px solid rgba(255,255,255,.08)}
.page-hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28}
.page-hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,10,.7),rgba(13,13,14,.95))}
.page-hero .inner{position:relative;max-width:760px}
.page-hero h1{font-size:clamp(34px,4.4vw,52px);letter-spacing:-.03em;margin:0 0 14px;font-weight:800}
.page-hero p{font-size:17px;line-height:1.6;color:var(--muted);margin:0;max-width:56ch}
.crumbs{font-size:13px;color:var(--dim);margin-bottom:18px}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--gold)}

/* Service detail rows */
.svc-row{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:64px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.svc-row:nth-child(even) .svc-media{order:2}
.svc-row img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;box-shadow:0 24px 50px rgba(0,0,0,.18)}
.svc-row h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.02em;margin:0 0 14px;font-weight:700}
.svc-row ul{margin:16px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.svc-row li{display:flex;gap:10px;font-size:15px;color:var(--ink-soft)}
.svc-row li::before{content:"✓";color:var(--gold);font-weight:700}
@media (max-width:820px){.svc-row{grid-template-columns:1fr;gap:28px;padding:44px 0}.svc-row:nth-child(even) .svc-media{order:0}}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-detail{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}
.contact-detail .ic{width:44px;height:44px;border-radius:12px;background:rgba(var(--gold-rgb),.14);color:var(--gold);display:grid;place-items:center;flex:none;font-size:18px}
.contact-detail .h{font-weight:600;font-size:15px}
.contact-detail a,.contact-detail p{color:var(--muted);font-size:14.5px;margin:2px 0 0}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr;gap:32px}}
