/* ================================================================
   MisterDig v21 — Complete Stylesheet
   5 Themes: Steel · Terrain · Frost · Slate · Ember
   Mobile-first · Cross-browser · No overlapping header
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800&family=Inter:wght@400;500;600;700&display=swap');

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:'Inter','Helvetica Neue',Arial,sans-serif;line-height:1.65;background:var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
ul,ol{list-style:none;padding:0}
button{cursor:pointer;font-family:inherit;border:none;background:none}
input,select,textarea{font-family:inherit;font-size:1rem}

/* ── THEME: Steel (dark default) ── */
:root,[data-theme="steel"]{
  --bg:#0b1220;--bg2:#0f1a30;--bg3:#16243d;
  --card:#111c2e;--card-border:rgba(255,255,255,.09);
  --text:#d8e4f0;--text-muted:#7a90aa;--heading:#ffffff;
  --accent:#19b6a4;--accent2:#2f6fff;--accent-dark:#13917f;
  --accent-glow:rgba(25,182,164,.22);
  --green:#28c76f;--red:#ea5455;
  --line:rgba(255,255,255,.10);
  --shadow:0 8px 32px rgba(0,0,0,.45);--shadow-sm:0 2px 12px rgba(0,0,0,.3);
  --header-bg:linear-gradient(135deg,#0b1220,#0f1a30);
  --footer-bg:linear-gradient(180deg,#0f1a30,#080e18);
  --nav-text:rgba(255,255,255,.82);
  --kicker:#19b6a4;
  --badge-bg:rgba(25,182,164,.12);--badge-bdr:rgba(25,182,164,.3);--badge-text:#19b6a4;
  --pill-bg:rgba(47,111,255,.14);--pill-color:#6fa3ff;--pill-bdr:rgba(47,111,255,.25);
  --note-bg:rgba(255,247,220,.06);--note-bdr:#c07c00;--note-text:#f5c96a;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(255,255,255,.14);--input-focus:#19b6a4;
  --contact-bar:rgba(11,18,32,.95);--contact-text:rgba(255,255,255,.9);
  --menu-overlay:#0b1220;--sand:#0f1a30;--muted:#7a90aa}

/* ── THEME: Terrain (warm earth) ── */
[data-theme="terrain"]{
  --bg:#f4ede0;--bg2:#ebe1cf;--bg3:#dfd3bc;
  --card:#ffffff;--card-border:rgba(100,65,20,.12);
  --text:#2a1c0a;--text-muted:#7a5c38;--heading:#1a0f00;
  --accent:#c0572a;--accent2:#8b3d00;--accent-dark:#a34522;
  --accent-glow:rgba(192,87,42,.18);
  --green:#3a8a3a;--red:#c0392b;
  --line:rgba(100,65,20,.14);
  --shadow:0 8px 32px rgba(60,30,5,.18);--shadow-sm:0 2px 12px rgba(60,30,5,.10);
  --header-bg:linear-gradient(135deg,#2a1c0a,#3d2910);
  --footer-bg:linear-gradient(180deg,#2a1c0a,#180e00);
  --nav-text:rgba(255,245,230,.88);
  --kicker:#c0572a;
  --badge-bg:rgba(192,87,42,.10);--badge-bdr:rgba(192,87,42,.28);--badge-text:#c0572a;
  --pill-bg:rgba(139,61,0,.10);--pill-color:#8b3d00;--pill-bdr:rgba(139,61,0,.25);
  --note-bg:rgba(255,248,220,.6);--note-bdr:#c07c00;--note-text:#6b3a00;
  --input-bg:#ffffff;--input-bdr:rgba(100,65,20,.20);--input-focus:#c0572a;
  --contact-bar:rgba(42,28,10,.95);--contact-text:rgba(255,245,225,.9);
  --menu-overlay:#2a1c0a;--sand:#ebe1cf;--muted:#7a5c38}

/* ── THEME: Frost (clean light) ── */
[data-theme="frost"]{
  --bg:#f6f9fc;--bg2:#edf2f8;--bg3:#e2eaf4;
  --card:#ffffff;--card-border:rgba(20,60,120,.10);
  --text:#1a2840;--text-muted:#5a7298;--heading:#0d1b30;
  --accent:#1a56db;--accent2:#0ea5e9;--accent-dark:#1443b8;
  --accent-glow:rgba(26,86,219,.14);
  --green:#059669;--red:#dc2626;
  --line:rgba(20,60,120,.10);
  --shadow:0 8px 32px rgba(10,30,80,.12);--shadow-sm:0 2px 12px rgba(10,30,80,.08);
  --header-bg:linear-gradient(135deg,#0d1b30,#1a2840);
  --footer-bg:linear-gradient(180deg,#0d1b30,#070f1e);
  --nav-text:rgba(235,245,255,.88);
  --kicker:#1a56db;
  --badge-bg:rgba(26,86,219,.09);--badge-bdr:rgba(26,86,219,.25);--badge-text:#1a56db;
  --pill-bg:rgba(14,165,233,.10);--pill-color:#0369a1;--pill-bdr:rgba(14,165,233,.25);
  --note-bg:rgba(240,249,255,.8);--note-bdr:#0ea5e9;--note-text:#0369a1;
  --input-bg:#ffffff;--input-bdr:rgba(20,60,120,.16);--input-focus:#1a56db;
  --contact-bar:rgba(10,20,40,.96);--contact-text:rgba(235,245,255,.92);
  --menu-overlay:#0d1b30;--sand:#edf2f8;--muted:#5a7298}

/* ── THEME: Slate (cool gray pro) ── */
[data-theme="slate"]{
  --bg:#1a1f2e;--bg2:#222838;--bg3:#2a3045;
  --card:#242a3a;--card-border:rgba(255,255,255,.08);
  --text:#c8d4e8;--text-muted:#7888a8;--heading:#e8f0ff;
  --accent:#a78bfa;--accent2:#60a5fa;--accent-dark:#7c5ce8;
  --accent-glow:rgba(167,139,250,.20);
  --green:#34d399;--red:#f87171;
  --line:rgba(255,255,255,.09);
  --shadow:0 8px 32px rgba(0,0,0,.5);--shadow-sm:0 2px 12px rgba(0,0,0,.3);
  --header-bg:linear-gradient(135deg,#111420,#1a1f2e);
  --footer-bg:linear-gradient(180deg,#111420,#080a12);
  --nav-text:rgba(200,212,232,.85);
  --kicker:#a78bfa;
  --badge-bg:rgba(167,139,250,.12);--badge-bdr:rgba(167,139,250,.28);--badge-text:#a78bfa;
  --pill-bg:rgba(96,165,250,.12);--pill-color:#60a5fa;--pill-bdr:rgba(96,165,250,.25);
  --note-bg:rgba(167,139,250,.07);--note-bdr:#a78bfa;--note-text:#c4b5fd;
  --input-bg:rgba(255,255,255,.06);--input-bdr:rgba(255,255,255,.12);--input-focus:#a78bfa;
  --contact-bar:rgba(14,16,26,.96);--contact-text:rgba(200,212,232,.9);
  --menu-overlay:#111420;--sand:#222838;--muted:#7888a8}

/* ── THEME: Forest (deep green) ── */
[data-theme="forest"]{
  --bg:#0d1a10;--bg2:#122017;--bg3:#182e1c;
  --card:#162019;--card-border:rgba(80,200,80,.10);
  --text:#d0e8d0;--text-muted:#6a9a6a;--heading:#e8ffe0;
  --accent:#3ecf6e;--accent2:#22a854;--accent-dark:#29a858;
  --accent-glow:rgba(62,207,110,.20);
  --green:#3ecf6e;--red:#f87171;
  --line:rgba(80,200,80,.12);
  --shadow:0 8px 32px rgba(0,0,0,.5);--shadow-sm:0 2px 12px rgba(0,0,0,.35);
  --header-bg:linear-gradient(135deg,#080f09,#0d1a10);
  --footer-bg:linear-gradient(180deg,#0d1a10,#050a06);
  --nav-text:rgba(208,232,208,.85);
  --kicker:#3ecf6e;
  --badge-bg:rgba(62,207,110,.11);--badge-bdr:rgba(62,207,110,.28);--badge-text:#3ecf6e;
  --pill-bg:rgba(34,168,84,.12);--pill-color:#3ecf6e;--pill-bdr:rgba(34,168,84,.25);
  --note-bg:rgba(62,207,110,.07);--note-bdr:#3ecf6e;--note-text:#a0dba0;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(80,200,80,.18);--input-focus:#3ecf6e;
  --contact-bar:rgba(8,15,9,.96);--contact-text:rgba(208,232,208,.9);
  --menu-overlay:#080f09;--sand:#122017;--muted:#6a9a6a}

/* ── THEME: Ocean (deep teal-blue) ── */
[data-theme="ocean"]{
  --bg:#071520;--bg2:#0c1f30;--bg3:#102840;
  --card:#0e1e2e;--card-border:rgba(20,180,220,.10);
  --text:#c0ddf0;--text-muted:#5a8aaa;--heading:#e0f4ff;
  --accent:#14b4dc;--accent2:#0094c0;--accent-dark:#0090bb;
  --accent-glow:rgba(20,180,220,.22);
  --green:#34d399;--red:#f87171;
  --line:rgba(20,180,220,.12);
  --shadow:0 8px 32px rgba(0,0,0,.5);--shadow-sm:0 2px 12px rgba(0,0,0,.35);
  --header-bg:linear-gradient(135deg,#040e18,#071520);
  --footer-bg:linear-gradient(180deg,#071520,#020810);
  --nav-text:rgba(192,221,240,.85);
  --kicker:#14b4dc;
  --badge-bg:rgba(20,180,220,.11);--badge-bdr:rgba(20,180,220,.28);--badge-text:#14b4dc;
  --pill-bg:rgba(0,148,192,.12);--pill-color:#14b4dc;--pill-bdr:rgba(0,148,192,.25);
  --note-bg:rgba(20,180,220,.07);--note-bdr:#14b4dc;--note-text:#80ccee;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(20,180,220,.18);--input-focus:#14b4dc;
  --contact-bar:rgba(4,14,24,.96);--contact-text:rgba(192,221,240,.9);
  --menu-overlay:#040e18;--sand:#0c1f30;--muted:#5a8aaa}

/* ── THEME: Midnight (purple-black) ── */
[data-theme="midnight"]{
  --bg:#0c0a18;--bg2:#130f22;--bg3:#1a1530;
  --card:#12102a;--card-border:rgba(140,80,255,.10);
  --text:#ccc0f0;--text-muted:#7060a8;--heading:#ece8ff;
  --accent:#8c50ff;--accent2:#6030dd;--accent-dark:#7040e0;
  --accent-glow:rgba(140,80,255,.22);
  --green:#34d399;--red:#f87171;
  --line:rgba(140,80,255,.12);
  --shadow:0 8px 32px rgba(0,0,0,.55);--shadow-sm:0 2px 12px rgba(0,0,0,.4);
  --header-bg:linear-gradient(135deg,#080614,#0c0a18);
  --footer-bg:linear-gradient(180deg,#0c0a18,#050408);
  --nav-text:rgba(204,192,240,.85);
  --kicker:#8c50ff;
  --badge-bg:rgba(140,80,255,.12);--badge-bdr:rgba(140,80,255,.28);--badge-text:#8c50ff;
  --pill-bg:rgba(96,48,221,.12);--pill-color:#8c50ff;--pill-bdr:rgba(96,48,221,.25);
  --note-bg:rgba(140,80,255,.07);--note-bdr:#8c50ff;--note-text:#b090ff;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(140,80,255,.18);--input-focus:#8c50ff;
  --contact-bar:rgba(8,6,20,.96);--contact-text:rgba(204,192,240,.9);
  --menu-overlay:#080614;--sand:#130f22;--muted:#7060a8}

/* ── THEME: Rust (industrial red-orange) ── */
[data-theme="rust"]{
  --bg:#130a06;--bg2:#1c0e08;--bg3:#271408;
  --card:#1c1108;--card-border:rgba(220,90,30,.10);
  --text:#f0d5c0;--text-muted:#a06040;--heading:#fff0e0;
  --accent:#e05a1a;--accent2:#c03000;--accent-dark:#c04010;
  --accent-glow:rgba(224,90,26,.22);
  --green:#34d399;--red:#f87171;
  --line:rgba(220,90,30,.14);
  --shadow:0 8px 32px rgba(0,0,0,.55);--shadow-sm:0 2px 12px rgba(0,0,0,.4);
  --header-bg:linear-gradient(135deg,#0d0604,#130a06);
  --footer-bg:linear-gradient(180deg,#130a06,#060302);
  --nav-text:rgba(240,213,192,.85);
  --kicker:#e05a1a;
  --badge-bg:rgba(224,90,26,.12);--badge-bdr:rgba(224,90,26,.28);--badge-text:#e05a1a;
  --pill-bg:rgba(192,48,0,.12);--pill-color:#e05a1a;--pill-bdr:rgba(192,48,0,.25);
  --note-bg:rgba(224,90,26,.07);--note-bdr:#e05a1a;--note-text:#f0a080;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(220,90,30,.18);--input-focus:#e05a1a;
  --contact-bar:rgba(13,6,4,.96);--contact-text:rgba(240,213,192,.9);
  --menu-overlay:#0d0604;--sand:#1c0e08;--muted:#a06040}

/* ── THEME: Sand (warm desert light) ── */
[data-theme="sand"]{
  --bg:#faf5ec;--bg2:#f2e9d8;--bg3:#e8dcc6;
  --card:#ffffff;--card-border:rgba(140,100,40,.12);
  --text:#2c1f08;--text-muted:#8a6a38;--heading:#180e00;
  --accent:#b07d20;--accent2:#8a5c00;--accent-dark:#926600;
  --accent-glow:rgba(176,125,32,.18);
  --green:#3a8a3a;--red:#c0392b;
  --line:rgba(140,100,40,.14);
  --shadow:0 8px 32px rgba(80,50,10,.18);--shadow-sm:0 2px 12px rgba(80,50,10,.10);
  --header-bg:linear-gradient(135deg,#2c1f08,#3d2c0a);
  --footer-bg:linear-gradient(180deg,#2c1f08,#160f00);
  --nav-text:rgba(255,248,230,.88);
  --kicker:#b07d20;
  --badge-bg:rgba(176,125,32,.10);--badge-bdr:rgba(176,125,32,.28);--badge-text:#b07d20;
  --pill-bg:rgba(138,92,0,.10);--pill-color:#8a5c00;--pill-bdr:rgba(138,92,0,.25);
  --note-bg:rgba(255,250,220,.65);--note-bdr:#b07d20;--note-text:#6b4800;
  --input-bg:#ffffff;--input-bdr:rgba(140,100,40,.20);--input-focus:#b07d20;
  --contact-bar:rgba(44,31,8,.95);--contact-text:rgba(255,248,230,.9);
  --menu-overlay:#2c1f08;--sand:#f2e9d8;--muted:#8a6a38}

/* ── THEME: Arctic (silver-white) ── */
[data-theme="arctic"]{
  --bg:#f0f5fa;--bg2:#e4ecf5;--bg3:#d6e4f2;
  --card:#ffffff;--card-border:rgba(80,140,200,.12);
  --text:#102030;--text-muted:#4a6a8a;--heading:#081828;
  --accent:#2a8fd4;--accent2:#0070b8;--accent-dark:#1670b0;
  --accent-glow:rgba(42,143,212,.14);
  --green:#059669;--red:#dc2626;
  --line:rgba(80,140,200,.14);
  --shadow:0 8px 32px rgba(10,40,80,.12);--shadow-sm:0 2px 12px rgba(10,40,80,.08);
  --header-bg:linear-gradient(135deg,#082040,#0e2c50);
  --footer-bg:linear-gradient(180deg,#082040,#040e20);
  --nav-text:rgba(220,236,252,.9);
  --kicker:#2a8fd4;
  --badge-bg:rgba(42,143,212,.10);--badge-bdr:rgba(42,143,212,.28);--badge-text:#2a8fd4;
  --pill-bg:rgba(0,112,184,.10);--pill-color:#0070b8;--pill-bdr:rgba(0,112,184,.25);
  --note-bg:rgba(42,143,212,.07);--note-bdr:#2a8fd4;--note-text:#1670b0;
  --input-bg:#ffffff;--input-bdr:rgba(80,140,200,.20);--input-focus:#2a8fd4;
  --contact-bar:rgba(8,20,40,.96);--contact-text:rgba(220,236,252,.92);
  --menu-overlay:#082040;--sand:#e4ecf5;--muted:#4a6a8a}

/* ── THEME: Ember (orange glow) ── */
[data-theme="ember"]{
  --bg:#12100e;--bg2:#1a1510;--bg3:#231c14;
  --card:#1e1912;--card-border:rgba(255,160,30,.10);
  --text:#f0e0c8;--text-muted:#a08060;--heading:#fff5e0;
  --accent:#f59e0b;--accent2:#ef4444;--accent-dark:#d97706;
  --accent-glow:rgba(245,158,11,.22);
  --green:#34d399;--red:#f87171;
  --line:rgba(255,160,30,.12);
  --shadow:0 8px 32px rgba(0,0,0,.55);--shadow-sm:0 2px 12px rgba(0,0,0,.4);
  --header-bg:linear-gradient(135deg,#0e0c08,#1a1510);
  --footer-bg:linear-gradient(180deg,#1a1510,#080604);
  --nav-text:rgba(240,224,200,.85);
  --kicker:#f59e0b;
  --badge-bg:rgba(245,158,11,.12);--badge-bdr:rgba(245,158,11,.28);--badge-text:#f59e0b;
  --pill-bg:rgba(239,68,68,.12);--pill-color:#fca5a5;--pill-bdr:rgba(239,68,68,.25);
  --note-bg:rgba(245,158,11,.07);--note-bdr:#f59e0b;--note-text:#fcd34d;
  --input-bg:rgba(255,255,255,.05);--input-bdr:rgba(255,160,30,.18);--input-focus:#f59e0b;
  --contact-bar:rgba(12,10,8,.96);--contact-text:rgba(240,224,200,.9);
  --menu-overlay:#0e0c08;--sand:#1a1510;--muted:#a08060}

/* ══════════════════════════════════════════
   LAYOUT
══════════════════════════════════════════ */
.container{width:100%;max-width:1180px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.narrow{max-width:700px}
.section{padding:3rem 0}
.section-alt{background:var(--bg2)}

/* ══════════════════════════════════════════
   TYPOGRAPHY
══════════════════════════════════════════ */
h1,h2,h3,h4{font-family:'Barlow Condensed','Helvetica Neue',Arial,sans-serif;color:var(--heading);line-height:1.12;font-weight:700}
h1{font-size:clamp(1.8rem,5vw,3rem);font-weight:800}
h2{font-size:clamp(1.4rem,3.5vw,2.1rem);margin-bottom:.5rem}
h3{font-size:clamp(1rem,2vw,1.25rem);margin-bottom:.3rem}
p{color:var(--text);margin-bottom:.7rem}
p:last-child{margin-bottom:0}
.lead{font-size:1.05rem;color:var(--text-muted);line-height:1.7;margin-bottom:1rem}
.small{font-size:.85rem;color:var(--text-muted)}
.kicker{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--kicker);margin-bottom:.35rem}
.pill{display:inline-block;background:var(--pill-bg);color:var(--pill-color);border:1px solid var(--pill-bdr);border-radius:100px;padding:4px 12px;font-size:.75rem;font-weight:700;letter-spacing:.03em}

/* ══════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem 1.2rem;border-radius:7px;font-weight:700;font-size:.875rem;border:1px solid transparent;cursor:pointer;text-decoration:none !important;white-space:nowrap;transition:all .18s;background:var(--bg3);color:var(--text)}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.btn:active{transform:none}
.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);box-shadow:0 4px 16px var(--accent-glow)}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--text)}
.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn.ghost-dark{background:#fff;border-color:var(--line);color:#1d2a40}
.btn-group,.hero-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}

/* ══════════════════════════════════════════
   ★★★ HEADER — clean, no overlapping ★★★
   Structure:
   [row 1] logo | phone • email
   [row 2] full nav menu
══════════════════════════════════════════ */
.site-header{
  position:sticky;top:0;z-index:200;
  background:var(--header-bg);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
  box-shadow:0 1px 12px rgba(0,0,0,.28)
}

/* Row 1: brand + contact side by side */
.header-row1{
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:.65rem 0
}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none !important;flex-shrink:0}
.brand img{height:40px;width:auto;object-fit:contain;flex-shrink:0}
.brand-copy{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.brand-copy strong{font-family:'Barlow Condensed',sans-serif;font-size:1.1rem;font-weight:800;color:#fff;white-space:nowrap}
.brand-copy span{font-size:.68rem;color:rgba(255,255,255,.5);white-space:nowrap}

/* Contact info top-right */
.header-contact{
  display:flex;align-items:center;gap:.5rem .9rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0
}
.hc{color:var(--contact-text) !important;font-weight:700;font-size:.82rem;text-decoration:none !important;white-space:nowrap}
.hc:hover{text-decoration:underline !important}
.hc-sep{color:rgba(255,255,255,.35);font-size:.75rem}
.hc-hours{font-size:.72rem;color:rgba(255,255,255,.45);white-space:nowrap}

/* Row 2: navigation */
.header-row2{
  border-top:1px solid rgba(255,255,255,.08);
  padding:.4rem 0
}
.site-menu{
  display:flex;align-items:center;gap:.15rem;flex-wrap:wrap;
  position:static !important;background:none !important
}
.site-menu a{
  display:inline-flex;align-items:center;padding:.38rem .52rem;
  border-radius:6px;font-size:.8rem;font-weight:600;
  color:var(--nav-text);text-decoration:none !important;white-space:nowrap;
  transition:background .14s,color .14s
}
@media(max-width:900px){
  .site-menu a{white-space:normal}
}
.site-menu a:hover,.site-menu a.is-active{background:rgba(255,255,255,.09);color:#fff}
.site-menu a[data-cta="1"]{background:var(--accent);color:#fff !important;font-weight:800;border-radius:6px;margin-left:.2rem}
.site-menu a[data-cta="1"]:hover{background:var(--accent-dark)}
.auction-top-link{background:var(--badge-bg) !important;border:1px solid var(--badge-bdr) !important;color:var(--badge-text) !important;font-family:monospace !important;font-size:.7rem !important;font-weight:800 !important;letter-spacing:.04em !important;padding:.35rem .55rem !important;border-radius:7px !important;margin-left:.3rem}

/* Hamburger — hidden on desktop, shown on mobile */
.ham-btn{display:none;flex-direction:column;gap:5px;padding:6px;background:transparent;border:none;flex-shrink:0}
.ham-btn span{display:block;width:22px;height:2px;background:rgba(255,255,255,.85);border-radius:2px;transition:transform .25s,opacity .25s}
.ham-btn.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.ham-btn.open span:nth-child(2){opacity:0}
.ham-btn.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Old overlay — kept for JS compatibility but permanently hidden */
.mobile-nav{display:none !important}

/* ══════════════════════════════════════════
   THEME SWITCHER — sits ABOVE fixed utility row
══════════════════════════════════════════ */
.theme-bar{
  position:fixed;bottom:58px;right:14px;z-index:300;
  display:flex;align-items:center;gap:4px;flex-wrap:wrap;max-width:240px;
  background:var(--menu-overlay);border:1px solid var(--line);
  border-radius:14px;padding:7px 10px;
  box-shadow:var(--shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.theme-bar-label{width:100%;font-size:.56rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}
.tbtn{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .15s,border-color .15s;flex-shrink:0}
.tbtn:hover{transform:scale(1.18)}
.tbtn.on{border-color:#fff;transform:scale(1.18)}
.tbtn[data-t="steel"]    {background:linear-gradient(135deg,#0b1220,#19b6a4)}
.tbtn[data-t="terrain"]  {background:linear-gradient(135deg,#2a1c0a,#c0572a)}
.tbtn[data-t="frost"]    {background:linear-gradient(135deg,#0d1b30,#1a56db)}
.tbtn[data-t="slate"]    {background:linear-gradient(135deg,#1a1f2e,#a78bfa)}
.tbtn[data-t="ember"]    {background:linear-gradient(135deg,#12100e,#f59e0b)}
.tbtn[data-t="forest"]   {background:linear-gradient(135deg,#0d1a10,#3ecf6e)}
.tbtn[data-t="ocean"]    {background:linear-gradient(135deg,#071520,#14b4dc)}
.tbtn[data-t="midnight"] {background:linear-gradient(135deg,#0c0a18,#8c50ff)}
.tbtn[data-t="rust"]     {background:linear-gradient(135deg,#130a06,#e05a1a)}
.tbtn[data-t="sand"]     {background:linear-gradient(135deg,#2c1f08,#b07d20)}
.tbtn[data-t="arctic"]   {background:linear-gradient(135deg,#082040,#2a8fd4)}

/* ══════════════════════════════════════════
   QUICK LINKS ROW (homepage)
══════════════════════════════════════════ */
.quick-links-section{background:var(--bg3);border-top:1px solid var(--line)}
.quick-links-heading{margin-bottom:1rem}
.quick-links-row{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:.75rem;
  margin-top:.85rem
}
.quick-link-box{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.3rem;text-align:center;
  background:var(--card);border:1px solid var(--card-border);
  border-radius:8px;padding:1.1rem .75rem;
  text-decoration:none !important;
  box-shadow:var(--shadow-sm);
  transition:all .18s;cursor:pointer
}
.quick-link-box:hover{
  border-color:var(--accent);
  box-shadow:0 4px 14px var(--accent-glow);
  transform:translateY(-1px)
}
.ql-icon{font-size:1.6rem;line-height:1;pointer-events:none}
.ql-label{font-family:'Barlow Condensed',sans-serif;font-size:1rem;font-weight:800;color:var(--heading);letter-spacing:.02em;line-height:1.2}
.ql-sub{font-size:.7rem;color:var(--text-muted);line-height:1.3}
@media(max-width:500px){
  .quick-links-row{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
}

/* ══════════════════════════════════════════
   CARDS
══════════════════════════════════════════ */
.card{background:var(--card);border:1px solid var(--card-border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}
.pad{padding:1.35rem}
@media(min-width:640px){.pad{padding:1.6rem}}
.message-card{background:var(--card);border:1px solid var(--card-border);border-radius:18px;padding:1.5rem;box-shadow:var(--shadow-sm)}

/* ══════════════════════════════════════════
   GRID & LAYOUT HELPERS
══════════════════════════════════════════ */
.grid{display:grid;gap:1.1rem}
.cols2{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}
.cols3{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.split{display:grid;gap:1.1rem;grid-template-columns:1fr}
@media(min-width:700px){.split{grid-template-columns:1fr 1fr}}
.text-center{text-align:center}
.mt1{margin-top:.5rem}.mt2{margin-top:1rem}.mt3{margin-top:1.5rem}.mt4{margin-top:2rem}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.hero{
  background:radial-gradient(900px 400px at 5% 0%,var(--accent-glow),transparent 60%),var(--bg2);
  padding:3.5rem 0 3rem;overflow:visible
}
.hero-grid{display:grid;gap:2rem;align-items:center}
@media(min-width:860px){.hero-grid{grid-template-columns:1.1fr .9fr}}
.hero h1{color:var(--heading);margin-bottom:.8rem}
.hero p{color:var(--text-muted)}
.hero-card{
  background:var(--card);border:1px solid var(--card-border);
  border-radius:10px;overflow:hidden;box-shadow:var(--shadow)
}
.hero-card img{width:100%;height:auto;max-height:360px;object-fit:contain;display:block}
.hero-card .cap{padding:10px 14px;font-size:.78rem;color:var(--text-muted)}
.hero-contact-line{margin-top:1rem;font-size:.83rem;color:var(--text-muted)}
.hero-contact-line a{color:var(--text);text-decoration:underline}

/* badges row */
.badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.badge{background:var(--badge-bg);border:1px solid var(--badge-bdr);color:var(--badge-text);border-radius:100px;padding:5px 11px;font-size:.75rem;font-weight:700;white-space:nowrap}

/* page hero banner */
.page-hero{background:var(--bg2);padding:2rem 0 1.6rem;border-bottom:1px solid var(--line)}
.page-hero h1{margin-bottom:.2rem}
.page-hero .lead{margin-bottom:0}

/* stat strip */
.stat-row{display:flex;flex-wrap:wrap;gap:.4rem 2rem;padding:1.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:1.2rem 0}
.stat-val{font-family:'Barlow Condensed',sans-serif;font-size:1.8rem;font-weight:800;color:var(--accent);line-height:1;display:block}
.stat-lbl{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);display:block}

/* ══════════════════════════════════════════
   LISTS & NOTES
══════════════════════════════════════════ */
.list{padding:0}
.list li{position:relative;padding-left:1.1rem;margin-bottom:.4rem;color:var(--text);font-size:.93rem}
.list li::before{content:'▸';position:absolute;left:0;color:var(--accent);font-size:.75em;top:.2em}
ol.list{counter-reset:li}
ol.list li::before{content:counter(li)'.';counter-increment:li;font-weight:700;color:var(--accent);font-size:.8em}
.note{background:var(--note-bg);border-left:3px solid var(--note-bdr);border-radius:0 8px 8px 0;padding:.7rem 1rem;color:var(--note-text);font-size:.9rem}

/* ══════════════════════════════════════════
   FORMS
══════════════════════════════════════════ */
.form{display:grid;gap:.8rem}
.form>div{display:flex;flex-direction:column;gap:.25rem}
label{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:.15rem}
input,textarea,select,.input{width:100%;background:var(--input-bg);border:1px solid var(--input-bdr);border-radius:6px;padding:.6rem .8rem;color:var(--text);font-size:.93rem;transition:border-color .16s,box-shadow .16s;-webkit-appearance:none;appearance:none}
input:focus,textarea:focus,select:focus,.input:focus{outline:none;border-color:var(--input-focus);box-shadow:0 0 0 2px var(--accent-glow)}
select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='%238a97ad' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;padding-right:2rem}
textarea{resize:vertical;min-height:110px}
input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.6}

/* ══════════════════════════════════════════
   FAQ ACCORDION
══════════════════════════════════════════ */
.faq-list{display:grid;gap:.6rem}
.faq-item{background:var(--card);border:1px solid var(--card-border);border-radius:8px;overflow:hidden}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.9rem 1.15rem;background:transparent;border:none;text-align:left;cursor:pointer;font-size:.95rem;font-weight:700;color:var(--heading);font-family:'Inter',sans-serif}
.faq-icon{flex-shrink:0;font-size:1.1rem;color:var(--accent);transition:transform .22s;line-height:1}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{display:none;padding:0 1.15rem .9rem;color:var(--text);font-size:.91rem;line-height:1.65}
.faq-item.open .faq-a{display:block}

/* ══════════════════════════════════════════
   GALLERY — photos & video
══════════════════════════════════════════ */
.section-head{margin-bottom:1rem}
.gallery-empty{color:var(--text-muted);font-size:.9rem;padding:.7rem 0;border:1px dashed var(--line);border-radius:10px;padding:.8rem 1rem}
/* responsive auto-fill grid */
.media-grid[data-media-grid]{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(130px,1fr));
  gap:10px
}
.media-card{
  background:var(--card);border:1px solid var(--card-border);
  border-radius:8px;overflow:hidden;box-shadow:var(--shadow-sm)
}
.media-thumb{
  display:block;width:100%;aspect-ratio:1;overflow:hidden;
  background:var(--bg3);position:relative;border:none;padding:0;cursor:pointer
}
.media-thumb img,.media-thumb video{width:100%;height:100%;object-fit:cover;transition:transform .25s;display:block}
.media-thumb:hover img,.media-thumb:hover video{transform:scale(1.06)}
.media-chip{position:absolute;bottom:6px;left:6px;background:rgba(0,0,0,.65);color:#fff;font-size:.62rem;font-weight:800;padding:3px 7px;border-radius:100px;pointer-events:none}
.media-caption{padding:.4rem .65rem;font-size:.72rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ══════════════════════════════════════════
   LIGHTBOX
══════════════════════════════════════════ */
.media-lightbox{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center}
.media-lightbox.hidden{display:none}
.media-lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88)}
.media-lightbox-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;max-width:94vw;max-height:92vh}
.media-lightbox-close{position:absolute;top:-44px;right:0;background:rgba(255,255,255,.1);border:none;color:#fff;font-size:1.8rem;cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}
.media-lightbox-body{display:flex;align-items:center;justify-content:center}
.media-lightbox-body img,.media-lightbox-body video{max-width:92vw;max-height:76vh;border-radius:12px;display:block}
.media-lightbox-caption{margin-top:.7rem;color:rgba(255,255,255,.7);font-size:.84rem;text-align:center;max-width:500px}
body.lightbox-open{overflow:hidden}

/* ══════════════════════════════════════════
   UPLOAD CENTER
══════════════════════════════════════════ */
.upload-shell{padding:2.5rem 0 3rem}
.upload-wrap{display:grid;gap:1.4rem;grid-template-columns:1fr}
@media(min-width:860px){.upload-wrap{grid-template-columns:1.35fr 1fr}}
.upload-card{background:var(--card);border:1px solid var(--card-border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm)}
.upload-pad{padding:1.35rem}
.upload-hero{background:var(--bg2);border-bottom:1px solid var(--line)}
.upload-note{background:var(--note-bg);border-left:3px solid var(--note-bdr);border-radius:0 8px 8px 0;padding:.6rem .9rem;font-size:.84rem;color:var(--note-text);margin-top:.7rem}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.45rem;margin-top:.5rem}
.section-choice label{display:flex;align-items:center;gap:.5rem;background:var(--bg2);border:1.5px solid var(--line);border-radius:8px;padding:.5rem .7rem;cursor:pointer;font-size:.8rem;font-weight:600;color:var(--text);transition:border-color .14s;text-transform:none;letter-spacing:0}
.section-choice label:has(input:checked){border-color:var(--accent);color:var(--accent)}
.upload-file-list{margin-top:.55rem;display:grid;gap:.4rem}
.upload-file-row{background:var(--bg2);border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;display:flex;flex-direction:column;gap:.25rem}
.recent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.55rem}
.recent-item{display:flex;flex-direction:column;gap:.25rem}
.recent-item img,.recent-item video{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--card-border);background:#000}
.recent-item .meta{font-size:.68rem;color:var(--text-muted);line-height:1.35}
.status-list{display:grid;gap:.4rem;margin-bottom:.8rem}
.status-ok{background:rgba(40,199,111,.10);border:1px solid rgba(40,199,111,.28);color:var(--green);border-radius:8px;padding:.55rem .85rem;font-size:.87rem;font-weight:600}
.status-err{background:rgba(234,84,85,.10);border:1px solid rgba(234,84,85,.28);color:var(--red);border-radius:8px;padding:.55rem .85rem;font-size:.87rem;font-weight:600}

/* centered success/error box */
.centered-box{min-height:55vh;display:flex;align-items:center;justify-content:center;padding:3rem 1rem}
.msg-card{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:2.25rem 1.75rem;max-width:460px;width:100%;text-align:center;box-shadow:var(--shadow)}
.msg-card .icon{font-size:2.8rem;margin-bottom:.8rem}

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
.site-footer{background:var(--footer-bg);color:rgba(255,255,255,.55);padding:2.75rem 0 1.5rem;border-top:1px solid rgba(255,255,255,.06);margin-top:2rem}
.footer-grid{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:1.6rem}
.footer-brand{display:flex;align-items:center;gap:.7rem;margin-bottom:.85rem}
.footer-brand img{height:36px;width:auto;object-fit:contain}
.footer-brand strong{color:#fff;font-size:.95rem}
.footer-brand span{display:block;font-size:.72rem;color:rgba(255,255,255,.45)}
.footer-copy{font-size:.84rem;color:rgba(255,255,255,.5);line-height:1.65}
.site-footer h3{font-family:'Barlow Condensed',sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.7rem}
.footer-list{display:grid;gap:.3rem}
.footer-list a{color:rgba(255,255,255,.6);font-size:.84rem;text-decoration:none}
.footer-list a:hover{color:rgba(255,255,255,.9)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:.85rem;display:flex;flex-wrap:wrap;gap:.4rem .7rem;justify-content:space-between;font-size:.77rem;color:rgba(255,255,255,.38)}
.footer-bottom a{color:rgba(255,255,255,.38)}
.footer-bottom a:hover{color:rgba(255,255,255,.7)}
.footer-staff-links{display:flex;flex-wrap:wrap;gap:.25rem .6rem;font-size:.75rem;margin-top:.3rem}
.footer-staff-links a{color:rgba(255,255,255,.3);text-decoration:underline}
.footer-staff-links a:hover{color:rgba(255,255,255,.6)}

/* fixed utility buttons */
.fixed-utility{position:fixed;bottom:14px;z-index:150;padding:6px 11px;border-radius:100px;font-size:.7rem;font-weight:800;background:rgba(11,18,32,.7);color:#fff;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);cursor:pointer;opacity:.6;transition:opacity .18s;text-decoration:none !important}
.fixed-utility:hover{opacity:1}
.fixed-left{left:14px}
.fixed-right{right:14px}
.fixed-center{left:50%;transform:translateX(-50%)}
.fixed-hidden{display:none !important}

/* staff pages */
body.sand{background:var(--sand)}
body.staff-tools label{text-transform:none;letter-spacing:0;font-size:.88rem}

/* ══════════════════════════════════════════
   EQUIPMENT BLOCKS (crushing page)
══════════════════════════════════════════ */
.equip-block{
  display:grid;
  grid-template-columns:1fr 1.6fr;
  gap:2rem;
  align-items:start
}
.equip-block-flip .equip-img-wrap{order:2}
.equip-block-flip .equip-text{order:1}
@media(max-width:700px){
  .equip-block{grid-template-columns:1fr}
  .equip-block-flip .equip-img-wrap{order:0}
  .equip-block-flip .equip-text{order:0}
}
.equip-img-wrap{display:flex;flex-direction:column;gap:.45rem}
/* Full image — no cropping, no max-height, scales naturally */
.equip-img{
  width:100%;
  height:auto;
  display:block;
  border-radius:10px;
  border:1px solid var(--card-border);
  box-shadow:var(--shadow)
}
/* Wide landscape combo image spans full width */
.equip-img-wide{
  width:100%;
  height:auto;
  display:block;
  border-radius:10px;
  border:1px solid var(--card-border);
  box-shadow:var(--shadow)
}
.equip-img-caption{
  font-size:.72rem;color:var(--text-muted);
  line-height:1.5;font-style:italic
}
.equip-text h2{margin-bottom:.5rem}
.equip-text p{font-size:.91rem;margin-bottom:.55rem}
.equip-divider{border:none;border-top:1px solid var(--line);margin:1.75rem 0}

/* ══════════════════════════════════════════
   RESPONSIVE BREAKPOINTS
══════════════════════════════════════════ */

/* ── Mobile: no hamburger — nav always visible, wraps into rows ── */
@media(max-width:900px){

  /* Hide hamburger completely — nav is always shown */
  .ham-btn{display:none !important}

  /* Row 1: stack logo above phone number on small screens */
  .header-row1{
    flex-wrap:wrap;
    gap:.4rem;
    padding:.5rem 0
  }

  /* Contact row: phone prominent, hide email + hours */
  .header-contact .hc-sep{display:none}
  .header-contact .hc-hours{display:none}
  .header-contact a.hc:last-of-type{display:none}

  /* Nav row: ALWAYS visible, links wrap to fill width */
  .header-row2{
    display:block !important;
    padding:.2rem 0 .4rem
  }

  .site-menu{
    flex-wrap:wrap !important;
    width:100% !important;
    gap:.15rem !important
  }

  .site-menu a{
    white-space:nowrap !important;
    font-size:.74rem !important;
    padding:.3rem .46rem !important
  }
}

/* ── Small phones ── */
@media(max-width:480px){
  .container{padding-left:12px;padding-right:12px}
  .section{padding:1.75rem 0}
  .hero{padding:1.75rem 0 1.5rem}
  .header-contact{gap:.3rem}
  .site-menu a{
    font-size:.68rem !important;
    padding:.27rem .38rem !important
  }
}

/* ── Very small phones (320px) ── */
@media(max-width:360px){
  .site-menu a{
    font-size:.64rem !important;
    padding:.24rem .32rem !important
  }
}

/* Print */
@media print{.site-header,.site-footer,.theme-bar,.fixed-utility{display:none !important}body{color:#000;background:#fff}}
