/* ============================================================
   Car Key King — styles.css (PRODUCTION)
   Theme: Dark Charcoal · Gold · Silver Chrome · Ice Blue
   thecarkeyking.com · (913) 435-3010 · Lenexa, KS
   Fonts: Cinzel · Playfair Display · Raleway
   Generated: 2026-05-08
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#1A1D22; --bg2:#22262D; --bg3:#2A2E37; --bg4:#32373F;
  --gg:linear-gradient(135deg,#9A7818 0%,#C9A840 35%,#F0D060 55%,#C9A840 75%,#9A7818 100%);
  --gs:linear-gradient(135deg,#727272 0%,#ABABAB 25%,#EDEDED 50%,#C4C4C4 75%,#818181 100%);
  --gold:#C9A840; --gold-hi:#F0D060; --gold-lo:#9A7818;
  --silver:#C4C4C4; --silver-hi:#EDEDED; --silver-lo:#818181;
  --ice:#5AB8D5; --ice-hi:#7DD4EE;
  --light:#E8E8E8;
  --f-display:'Playfair Display',Georgia,serif;
  --f-caps:'Cinzel',serif;
  --f-body:'Raleway',system-ui,sans-serif;
  --container:1280px;
  --gutter:clamp(1.25rem,4vw,3rem);
  --section-v:clamp(3.5rem,7vw,6rem);
  --header-h:72px;
}
html{scroll-behavior:smooth;}
body{font-family:var(--f-body);background:var(--bg);color:var(--light);overflow-x:hidden;line-height:1.6;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{cursor:pointer;font-family:inherit;}


.scroll-progress{position:fixed;top:24px;left:0;right:0;height:2px;background:var(--gg);transform-origin:left;transform:scaleX(0);z-index:9999;pointer-events:none;}

.site-header{position:fixed;top:24px;left:0;right:0;z-index:500;height:var(--header-h);display:flex;align-items:center;background:rgba(26,29,34,0.97);backdrop-filter:blur(16px);border-bottom:1px solid rgba(201,168,64,0.2);transition:box-shadow 0.35s,background 0.35s;}
.site-header.scrolled{background:rgba(22,25,30,0.98);box-shadow:0 2px 32px rgba(0,0,0,0.5);}
.site-header::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),rgba(90,184,213,0.4),var(--gold),transparent);}
.header-inner{max-width:var(--container);margin:0 auto;width:100%;padding:0 var(--gutter);display:flex;align-items:center;gap:1.5rem;}
.header-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0;text-decoration:none;}

.header-brand{display:flex;flex-direction:column;line-height:1.05;}
.header-name{font-family:"Cinzel",serif;font-size:1.25rem;font-weight:700;letter-spacing:.28em;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;filter:drop-shadow(0 1px 0 rgba(255,255,255,0.15)) drop-shadow(0 -1px 0 rgba(0,0,0,0.5));}
.header-sub{font-family:"Cinzel",serif;font-size:.48rem;font-weight:400;letter-spacing:.2em;color:rgba(90,184,213,0.7);margin-top:5px;}
.header-nav{display:flex;align-items:center;gap:.1rem;margin-left:auto;}
.hnav{font-family:var(--f-caps);font-size:.6rem;letter-spacing:.13em;color:rgba(232,232,232,0.5);padding:.55rem .8rem;transition:color 0.2s;cursor:pointer;text-decoration:none;}
.hnav:hover{color:var(--gold);}
.hnav--emergency{background:var(--gg);color:#111 !important;font-weight:700;padding:.55rem 1.2rem;transition:filter 0.2s;border:none;cursor:pointer;font-family:var(--f-caps);font-size:.6rem;letter-spacing:.12em;}
.hnav--emergency:hover{filter:brightness(1.1);}

.hero{min-height:calc(100vh - 24px);padding:calc(var(--header-h) + 3.5rem) var(--gutter) 3rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at center,#2A2E37 0%,#22262D 50%,#1A1D22 100%);position:relative;}
.hero::before{content:'';position:absolute;inset:-50%;width:200%;height:200%;background-image:repeating-linear-gradient(15deg,transparent,transparent 88px,rgba(201,168,64,0.022) 88px,rgba(201,168,64,0.022) 89px);pointer-events:none;animation:drift 36s linear infinite;}
.hero::after{content:"";position:absolute;top:0;left:0;right:0;height:100%;background:radial-gradient(ellipse 100% 80% at 50% -5%,rgba(255,235,150,0.2) 0%,rgba(240,208,96,0.25) 12%,rgba(201,168,64,0.18) 28%,rgba(201,168,64,0.1) 45%,rgba(201,168,64,0.04) 62%,transparent 80%),radial-gradient(ellipse 40% 70% at 50% -2%,rgba(255,235,150,0.15) 0%,rgba(240,208,96,0.12) 25%,rgba(201,168,64,0.06) 50%,transparent 75%),radial-gradient(ellipse 120% 50% at 50% 0%,rgba(201,168,64,0.08) 0%,transparent 60%);pointer-events:none;z-index:0;}.hero-glow-bar{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent 0%,rgba(201,168,64,0.4) 8%,rgba(240,208,96,1) 35%,rgba(255,235,150,1) 50%,rgba(240,208,96,1) 65%,rgba(201,168,64,0.4) 92%,transparent 100%);z-index:10;pointer-events:none;box-shadow:0 0 15px 3px rgba(255,235,150,0.9),0 0 40px 8px rgba(240,208,96,0.7),0 0 80px 16px rgba(201,168,64,0.5),0 0 160px 40px rgba(201,168,64,0.35),0 0 300px 80px rgba(201,168,64,0.2),0 0 500px 120px rgba(201,168,64,0.1);}
@keyframes drift{from{transform:translateY(0)}to{transform:translateY(89px)}}
.hero-left{display:contents;}
.hero-right{display:contents;}
.bp-corner{position:absolute;width:32px;height:32px;border-color:rgba(201,168,64,0.3);border-style:solid;z-index:1;}
.bp-corner--tl{top:calc(var(--header-h) + 56px);left:2rem;border-width:1px 0 0 1px;}
.bp-corner--tr{top:calc(var(--header-h) + 56px);right:2rem;border-width:1px 1px 0 0;}
.bp-corner--bl{bottom:2rem;left:2rem;border-width:0 0 1px 1px;}
.bp-corner--br{bottom:2rem;right:2rem;border-width:0 1px 1px 0;}
to{opacity:1;transform:none}}to{opacity:1;transform:none}}.brand-btn:hover::before{transform:translateX(100%);}.brand-col-left .brand-col-right .brand-btn:hover 50%{transform:translateY(-10px);}}
50%{transform:translateY(-18px)}}
.hero-eyebrow{font-family:var(--f-caps);font-size:.65rem;letter-spacing:.28em;color:rgba(201,168,64,0.75);display:inline-flex;align-items:center;justify-content:center;gap:.75rem;margin:0 auto .6rem;position:relative;z-index:3;}
.hero-eyebrow::before{content:"";display:block;width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}.hero-eyebrow::after{content:"";display:block;width:40px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);}
.hero-headline{font-family:var(--f-display);font-size:clamp(2.4rem,4.5vw,5rem);font-weight:300;line-height:1.0;color:var(--light);letter-spacing:-0.02em;margin:1.5rem 0;text-align:center;position:relative;z-index:3;}
.hero-headline .sm{font-size:.4em;color:rgba(232,232,232,0.5);display:block;letter-spacing:.02em;margin-bottom:.4rem;}
.hero-headline .ac{display:inline;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:italic;font-weight:700;font-family:"Playfair Display",serif;}
.hero-body{font-size:.9rem;color:rgba(232,232,232,0.55);line-height:1.75;max-width:580px;margin:0 auto 1.1rem;text-align:center;position:relative;z-index:3;}
.hero-phone-cta{display:inline-flex;align-items:center;gap:.85rem;padding:.7rem 1.25rem;border:1px solid rgba(201,168,64,0.3);background:rgba(201,168,64,0.06);transition:border-color 0.2s,background 0.2s;margin:0 auto .85rem;position:relative;text-decoration:none;z-index:3;}
.hero-phone-cta::before{content:'';position:absolute;top:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.hero-phone-cta:hover{border-color:rgba(201,168,64,0.4);background:rgba(201,168,64,0.08);}
.hero-phone-pulse{width:8px;height:8px;border-radius:50%;background:var(--ice);flex-shrink:0;animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(90,184,213,0.5)}50%{box-shadow:0 0 0 6px rgba(90,184,213,0)}}
.hero-phone-num{font-family:"Playfair Display",serif;font-size:1.2rem;font-weight:400;color:var(--light);line-height:1;}
.hero-phone-sub{font-family:var(--f-caps);font-size:.52rem;letter-spacing:.14em;color:var(--ice);margin-top:.2rem;}
.hero-actions{display:flex;align-items:center;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin:0 auto 1.25rem;position:relative;z-index:3;}
.btn-primary{display:inline-flex;align-items:center;gap:.5rem;background:var(--gg);color:#111;font-family:var(--f-caps);font-size:.65rem;letter-spacing:.13em;font-weight:700;padding:.95rem 2.1rem;border:none;cursor:pointer;box-shadow:0 3px 16px rgba(201,168,64,0.3);transition:filter 0.2s;text-decoration:none;}
.btn-primary:hover{filter:brightness(1.1);}
.btn-text-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--f-caps);font-size:.6rem;letter-spacing:.12em;color:rgba(232,232,232,0.5);background:none;border:none;cursor:pointer;transition:color 0.2s;text-decoration:none;}
.btn-text-link:hover{color:var(--gold);}
.hero-stats{display:flex;justify-content:center;align-items:center;gap:0;padding-top:.85rem;border-top:1px solid rgba(201,168,64,0.18);flex-wrap:wrap;max-width:800px;margin:0 auto;position:relative;z-index:3;}
.hsi{display:flex;flex-direction:column;padding:0 1.4rem 0 0;margin-right:1.4rem;border-right:1px solid rgba(201,168,64,0.1);}
.hsi:last-child{border-right:none;}
.hsi-num{font-family:"Playfair Display",serif;font-size:1.75rem;font-weight:700;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}
.hsi-num.g{font-family:"Playfair Display",serif;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hsi-label{font-family:var(--f-caps);font-size:.52rem;letter-spacing:.14em;color:rgba(90,184,213,0.7);margin-top:.2rem;}

.bridge{background:var(--bg2);border-top:2px solid rgba(201,168,64,0.25);border-bottom:2px solid rgba(201,168,64,0.25);position:relative;}
.bridge::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),rgba(90,184,213,0.3),var(--gold),transparent);}
.bridge-inner{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);}
.bc{display:flex;align-items:center;gap:1rem;padding:1.5rem var(--gutter);border-right:1px solid rgba(201,168,64,0.08);transition:background 0.2s;cursor:pointer;text-decoration:none;}
.bc:last-child{border-right:none;}
.bc:hover{background:rgba(201,168,64,0.05);}
.bi{width:42px;height:42px;background:rgba(201,168,64,0.08);border:1px solid rgba(201,168,64,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background 0.2s;}
.bc:hover .bi{background:rgba(201,168,64,0.18);}
.bi i{font-size:.95rem;color:var(--gold);}
.bn{display:block;font-family:var(--f-caps);font-size:.62rem;letter-spacing:.11em;color:var(--light);}
.bd{display:block;font-size:.78rem;color:rgba(125,212,238,0.55);margin-top:.18rem;letter-spacing:.02em;}
.ba{font-size:.65rem;color:rgba(201,168,64,0.3);margin-left:auto;flex-shrink:0;transition:color 0.2s,transform 0.2s;}
.bc:hover .ba{color:var(--gold);transform:translateX(3px);}
.bc.urg .bn{color:#DD7070;}
.bc.urg .bi{border-color:rgba(220,100,100,0.2);}
.bc.urg .bi i{color:#DD7070;}

.proof{background:var(--bg3);padding:1.75rem var(--gutter);border-bottom:1px solid rgba(201,168,64,0.1);}
.proof-inner{max-width:var(--container);margin:0 auto;display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;}
.pt{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem 2.5rem;}
.pdiv{width:1px;height:42px;background:linear-gradient(180deg,transparent,rgba(201,168,64,0.35),transparent);}
.pv{font-family:"Playfair Display",serif;font-size:1.35rem;font-weight:600;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}
.pl{font-family:var(--f-caps);font-size:.5rem;letter-spacing:.14em;color:rgba(90,184,213,0.7);margin-top:.22rem;}
.pstars{color:var(--gold);font-size:.78rem;letter-spacing:.1em;margin-bottom:.15rem;}

.manifesto{background:var(--bg2);padding:var(--section-v) var(--gutter);border-top:3px solid transparent;position:relative;}
.manifesto::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gg);}
.manifesto-inner{max-width:var(--container);margin:0 auto;}
.me{font-family:var(--f-caps);font-size:.65rem;letter-spacing:.26em;color:rgba(201,168,64,0.6);display:flex;align-items:center;gap:.85rem;margin-bottom:2rem;}
.me::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(201,168,64,0.3),transparent);max-width:60px;}
.ml{font-family:"Playfair Display",serif;line-height:1.1;font-weight:700;margin-bottom:.3rem;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.ml-s{font-size:clamp(1.4rem,2.5vw,2rem);}
.ml-m{font-size:clamp(1.8rem,3.5vw,2.8rem);}
.ml-l{font-size:clamp(2.2rem,4.5vw,3.6rem);}
.ml-xl{font-size:clamp(2.8rem,5.5vw,4.6rem);font-style:italic;font-weight:700;font-family:"Playfair Display",serif;background:var(--gg) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;background-clip:text !important;letter-spacing:-.01em;}

.section-eyebrow{font-family:var(--f-caps);font-size:.65rem;letter-spacing:.25em;color:rgba(201,168,64,0.6);display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem;}
.section-eyebrow::before{content:'';display:block;width:30px;height:1px;background:linear-gradient(90deg,var(--gold),rgba(90,184,213,0.3));}
.section-eyebrow::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(201,168,64,0.2),transparent);max-width:60px;}
.section-title{font-family:"Playfair Display",serif;font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:700;color:var(--light);line-height:1.1;margin-bottom:2rem;}

.services-section{background:var(--bg);position:relative;}
.services-inner{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:340px 1fr;min-height:560px;}
.services-left{background:linear-gradient(180deg,var(--bg),var(--bg2));padding:3rem 2rem;border-right:2px solid rgba(201,168,64,0.2);}
.svc-eyebrow{color:rgba(232,232,232,0.4) !important;}
.svc-headline{color:var(--light) !important;}
.svc-nav-btn{display:flex;align-items:center;gap:.85rem;padding:.95rem 0 .95rem 1.25rem;border-top:1px solid rgba(201,168,64,0.07);background:none;border-left:none;border-right:none;border-bottom:none;text-align:left;cursor:pointer;transition:padding-left 0.2s,background 0.2s;width:100%;}
.svc-nav-btn.active,.svc-nav-btn:hover{padding-left:1.6rem;background:rgba(201,168,64,0.05);}
.svc-n{font-size:.4rem;color:rgba(201,168,64,0.2);flex-shrink:0;}
.svc-nav-btn.active .svc-n{color:var(--gold);}
.svc-name{font-family:var(--f-caps);font-size:.65rem;letter-spacing:.11em;color:rgba(232,232,232,0.4);transition:color 0.2s;}
.svc-nav-btn.active .svc-name,.svc-nav-btn:hover .svc-name{color:var(--light);}
.svc-sub{font-size:.74rem;color:rgba(125,212,238,0.5);letter-spacing:.02em;}
.svc-name-wrap{display:flex;flex-direction:column;}
.services-right{background:var(--bg3);padding:3rem;position:relative;overflow:hidden;}
.ghost{position:absolute;top:-.2em;right:-.05em;font-family:var(--f-display);font-size:clamp(5rem,12vw,12rem);font-weight:700;color:rgba(201,168,64,0.04);line-height:1;pointer-events:none;user-select:none;}
.svc-counter{display:flex;align-items:center;gap:.3rem;margin-bottom:1.5rem;}
.svc-cn{font-family:var(--f-display);font-size:1.45rem;font-weight:300;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}
.svc-ct{font-family:var(--f-caps);font-size:.58rem;letter-spacing:.12em;color:rgba(201,168,64,0.45);}
.svc-cname{font-family:var(--f-caps);font-size:.58rem;color:rgba(90,184,213,0.6);margin-left:.5rem;}
.svc-rule{flex:1;height:1px;background:linear-gradient(90deg,rgba(201,168,64,0.2),transparent);margin-left:.85rem;}
.sp-title{font-family:"Playfair Display",serif;font-size:clamp(1.6rem,2.8vw,2.2rem);font-weight:700;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.85rem;}
.sp-body{font-size:1rem;color:rgba(232,232,232,0.55);line-height:1.85;margin-bottom:1.5rem;}
.sp-body em{font-style:italic;color:var(--silver);}
.sp-list{list-style:none;margin-bottom:1.5rem;}
.sp-list li{display:flex;align-items:center;gap:.75rem;padding:.6rem .5rem;border-bottom:1px solid rgba(201,168,64,0.1);font-size:.92rem;color:rgba(232,232,232,0.5);transition:padding-left 0.2s,color 0.2s;cursor:pointer;}
.sp-list li:hover{padding-left:.95rem;color:var(--light);}
.sp-list li::before{content:'\f084';font-family:'Font Awesome 6 Free';font-weight:900;font-size:.75rem;color:var(--gold);width:16px;flex-shrink:0;}
.sp-cta-row{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;}

.testimonials{background:var(--bg);padding:var(--section-v) var(--gutter);border-top:3px solid transparent;position:relative;overflow:hidden;}
.testimonials::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gg);}
.test-medallion-bg{position:absolute;right:-8%;top:50%;transform:translateY(-50%);width:clamp(280px,42vw,560px);opacity:0.06;pointer-events:none;}
.testimonials-inner{max-width:var(--container);margin:0 auto;position:relative;z-index:1;}
.test-header{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:3rem;}
.g-rating{display:flex;align-items:center;gap:.5rem;background:rgba(201,168,64,0.06);padding:.55rem .9rem;border:1px solid rgba(201,168,64,0.18);}
.g-rating-stars{font-size:.78rem;color:var(--gold);letter-spacing:.05em;}
.g-rating-score{font-family:var(--f-display);font-size:1.05rem;font-weight:300;color:var(--light);}
.g-rating-count{font-family:var(--f-caps);font-size:.52rem;letter-spacing:.1em;color:rgba(232,232,232,0.4);}
.test-featured{background:rgba(201,168,64,0.04);border:1px solid rgba(201,168,64,0.15);border-left:3px solid var(--gold);padding:2.25rem 2.5rem;display:flex;gap:1.5rem;margin-bottom:2.5rem;}
.test-mark{font-family:var(--f-display);font-size:4.5rem;color:rgba(201,168,64,0.18);line-height:1;flex-shrink:0;}
.test-quote{font-family:"Playfair Display",serif;font-size:clamp(1.05rem,1.85vw,1.4rem);font-style:italic;font-weight:600;color:rgba(232,232,232,0.78);line-height:1.65;margin-bottom:1rem;}
.test-byline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
.test-avatar{width:32px;height:32px;border-radius:50%;background:var(--gg);color:#111;display:flex;align-items:center;justify-content:center;font-family:var(--f-caps);font-size:.7rem;font-weight:700;flex-shrink:0;}
.test-name{font-family:var(--f-caps);font-size:.62rem;letter-spacing:.1em;color:var(--light);}
.test-loc{font-size:.8rem;color:rgba(125,212,238,0.55);}
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(201,168,64,0.1);border:1px solid rgba(201,168,64,0.1);}
.tcard{background:var(--bg2);padding:1.6rem;transition:background 0.2s;}
.tcard:hover{background:var(--bg3);}
.tcard-stars{color:var(--gold);font-size:.78rem;letter-spacing:.1em;margin-bottom:.85rem;}
.tcard-quote{font-size:.95rem;color:rgba(232,232,232,0.62);line-height:1.75;font-style:italic;margin-bottom:1.1rem;font-family:"Playfair Display",serif;}
.tcard-foot{display:flex;align-items:center;gap:.65rem;}
.tcard-av{width:30px;height:30px;border-radius:50%;background:rgba(201,168,64,0.15);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--f-caps);font-size:.68rem;font-weight:700;flex-shrink:0;}
.tcard-id{display:flex;flex-direction:column;line-height:1.15;}
.tcard-n{font-family:var(--f-caps);font-size:.58rem;letter-spacing:.1em;color:rgba(232,232,232,0.55);}
.tcard-l{font-size:.78rem;color:rgba(125,212,238,0.5);}

.cta-sect{background:var(--bg2);padding:var(--section-v) var(--gutter);border-top:3px solid transparent;position:relative;overflow:hidden;}
.cta-sect::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gg);}
.cta-sect::after{content:'';position:absolute;inset:-50%;width:200%;height:200%;background-image:repeating-linear-gradient(15deg,transparent,transparent 88px,rgba(201,168,64,0.022) 88px,rgba(201,168,64,0.022) 89px);pointer-events:none;}
.cta-inner{max-width:var(--container);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:3rem;position:relative;z-index:1;flex-wrap:wrap;}
.cta-h{font-family:"Playfair Display",serif;font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:700;color:var(--light);line-height:1.1;}
.cta-h em{font-style:italic;font-weight:700;font-family:"Playfair Display",serif;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.cta-sub{font-size:.95rem;color:rgba(232,232,232,0.42);line-height:1.7;margin-top:.85rem;max-width:42ch;}
.cta-r{text-align:right;flex-shrink:0;}
.cta-phone{font-family:var(--f-display);font-size:clamp(1.7rem,3vw,2.7rem);font-weight:300;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;line-height:1;transition:filter 0.2s;text-decoration:none;}
.cta-phone:hover{filter:brightness(1.15);}
.cta-avail{font-family:var(--f-caps);font-size:.58rem;letter-spacing:.13em;color:rgba(232,232,232,0.32);display:block;margin:.6rem 0 1rem;}

.site-footer{background:linear-gradient(180deg,var(--bg2),var(--bg));border-top:3px solid transparent;position:relative;}
.site-footer::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gg);}
.footer-inner{max-width:var(--container);margin:0 auto;padding:3rem var(--gutter) 2rem;display:flex;gap:4rem;justify-content:space-between;flex-wrap:wrap;}
.footer-left{display:flex;flex-direction:column;gap:1.1rem;}
.footer-brand{display:flex;align-items:center;gap:.85rem;}
.footer-seal{width:64px;height:64px;object-fit:contain;flex-shrink:0;}
.footer-wordmark{display:flex;flex-direction:column;line-height:1.05;}
.footer-name{display:block;font-family:"Cinzel",serif;font-size:.88rem;font-weight:700;letter-spacing:.22em;background:var(--gs);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 1px 0 rgba(255,255,255,0.15)) drop-shadow(0 -1px 0 rgba(0,0,0,0.5));}
.footer-sub{display:block;font-family:var(--f-caps);font-size:.5rem;letter-spacing:.16em;color:rgba(90,184,213,0.6);margin-top:.2rem;}
.footer-phone{font-family:"Playfair Display",serif;font-size:1.5rem;font-weight:600;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:filter 0.2s;align-self:flex-start;text-decoration:none;}
.footer-phone:hover{filter:brightness(1.15);}
.footer-badge{background:rgba(201,168,64,0.08);border:1px solid rgba(201,168,64,0.3);padding:.32rem .7rem;display:inline-flex;gap:.4rem;align-self:flex-start;}
.footer-badge span{font-family:var(--f-caps);font-size:.5rem;letter-spacing:.12em;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.footer-right{display:flex;gap:3.5rem;flex-wrap:wrap;}
.footer-col{display:flex;flex-direction:column;gap:.55rem;}
.footer-col-head{font-family:var(--f-caps);font-size:.62rem;letter-spacing:.18em;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;padding-bottom:.55rem;border-bottom:1px solid rgba(201,168,64,0.2);display:block;}
.footer-col a{font-family:var(--f-caps);font-size:.6rem;letter-spacing:.1em;color:rgba(232,232,232,0.4);transition:color 0.2s;}
.footer-col a:hover{color:var(--gold);}






.footer-bottom{max-width:var(--container);margin:0 auto;padding:1rem var(--gutter);display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;border-top:1px solid rgba(201,168,64,0.07);font-family:var(--f-caps);font-size:.55rem;letter-spacing:.1em;color:rgba(232,232,232,0.25);}
.footer-bottom a{color:rgba(232,232,232,0.25);transition:color 0.2s;}
.footer-bottom a:hover{color:var(--gold);}
.footer-creds{margin-left:auto;background:var(--gg);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;opacity:0.7;}

@media (max-width:1100px){.services-inner{grid-template-columns:1fr;}.services-left{border-right:none;border-bottom:2px solid rgba(201,168,64,0.2);}.bp-corner{width:20px;height:20px;}}
@media (max-width:900px){.bridge-inner{grid-template-columns:repeat(2,1fr);}.test-grid{grid-template-columns:1fr;}.footer-inner{flex-direction:column;gap:2.5rem;}.header-nav{display:none;}.cta-inner{flex-direction:column;align-items:flex-start;}.cta-r{text-align:left;}}
@media (max-width:900px){.brand-col-left .brand-btn:hover,.brand-col-right }@media (max-width:540px){.bridge-inner{grid-template-columns:1fr;}.header-name{font-size:.7rem;}.header-sub{display:none;}.bp-corner{display:none;}}
.brand-col{display:flex;flex-direction:column;gap:1.4rem;flex-shrink:0;}.brand-col-left{align-items:flex-end;animation:fadeInLeft 0.8s ease-out;flex-shrink:0;}.brand-col-right{align-items:flex-start;animation:fadeInRight 0.8s ease-out;flex-shrink:0;}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}@keyframes fadeInRight{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}.brand-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--f-caps);font-size:.68rem;font-weight:700;letter-spacing:.18em;padding:.95rem 1.6rem;border-radius:999px;background:#262A30;border:1px solid rgba(154,120,24,0.5);color:#E8E8E8;cursor:pointer;transition:all 0.25s ease;white-space:nowrap;width:190px;text-align:center;position:relative;overflow:hidden;animation:btnFloat 7s ease-in-out infinite;box-shadow:0 4px 18px rgba(0,0,0,0.5),0 0 0 1px rgba(201,168,64,0.1);}.brand-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(240,208,96,0.25),transparent);transform:translateX(-100%);transition:transform 0.6s ease;pointer-events:none;}.brand-btn:hover::before{transform:translateX(100%);}.brand-btn:hover{background:#2E323A;border-color:var(--gold);color:var(--gold-hi);box-shadow:0 6px 28px rgba(201,168,64,0.35),0 0 0 1px rgba(201,168,64,0.4);}.brand-col-left .brand-btn:hover{transform:translateX(8px);animation-play-state:paused;}.brand-col-right .brand-btn:hover{transform:translateX(-8px);animation-play-state:paused;}.brand-btn-icon{font-size:.55rem;color:var(--gold);opacity:.85;transition:opacity 0.2s;}.brand-btn:hover .brand-btn-icon{opacity:1;color:var(--gold-hi);}.brand-btn-more{border-color:rgba(58,154,184,0.55);color:var(--ice);}.brand-btn-more:hover{border-color:var(--ice);color:var(--ice-hi);box-shadow:0 6px 28px rgba(90,184,213,0.35),0 0 0 1px rgba(90,184,213,0.4);}@keyframes btnFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.brand-col-left .brand-btn:nth-child(1){animation-delay:0s;}.brand-col-left .brand-btn:nth-child(2){animation-delay:1.2s;}.brand-col-left .brand-btn:nth-child(3){animation-delay:2.4s;}.brand-col-left .brand-btn:nth-child(4){animation-delay:3.6s;}.brand-col-left .brand-btn:nth-child(5){animation-delay:4.8s;}.brand-col-left .brand-btn:nth-child(6){animation-delay:6.0s;}.brand-col-right .brand-btn:nth-child(1){animation-delay:0.6s;}.brand-col-right .brand-btn:nth-child(2){animation-delay:1.8s;}.brand-col-right .brand-btn:nth-child(3){animation-delay:3.0s;}.brand-col-right .brand-btn:nth-child(4){animation-delay:4.2s;}.brand-col-right .brand-btn:nth-child(5){animation-delay:5.4s;}.brand-col-right .brand-btn:nth-child(6){animation-delay:6.6s;}@media(max-width:960px){.brand-col{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.5rem;}.brand-btn{width:auto;min-width:100px;padding:.55rem 1rem;font-size:.55rem;}.brand-col-left .brand-btn:hover,.brand-col-right .brand-btn:hover{transform:translateY(-3px);}}.hero-logo-display{flex:1;max-width:500px;min-width:280px;width:100%;height:auto;display:block;flex-shrink:0;-webkit-mask-image:radial-gradient(circle at center,black 0%,black 48%,rgba(0,0,0,0.95) 54%,rgba(0,0,0,0.7) 60%,rgba(0,0,0,0.3) 67%,transparent 74%);mask-image:radial-gradient(circle at center,black 0%,black 48%,rgba(0,0,0,0.95) 54%,rgba(0,0,0,0.7) 60%,rgba(0,0,0,0.3) 67%,transparent 74%);filter:drop-shadow(0 12px 50px rgba(201,168,64,0.3)) drop-shadow(0 0 30px rgba(201,168,64,0.15));animation:float 7s ease-in-out infinite;position:relative;z-index:3;}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}.hero-throne-row{display:flex;align-items:center;justify-content:center;gap:2rem;margin:.75rem auto 1rem;position:relative;z-index:3;width:100%;max-width:1100px;padding:0 1rem;}.hero-rays{position:absolute;top:0;left:0;right:0;height:100%;overflow:hidden;pointer-events:none;z-index:0;}.hero-rays::before{content:"";position:absolute;top:-20%;left:25%;width:50%;height:70%;background:linear-gradient(180deg,rgba(255,235,150,0.08) 0%,rgba(201,168,64,0.04) 40%,transparent 100%);transform:perspective(500px) rotateX(10deg);filter:blur(30px);animation:rayPulse 8s ease-in-out infinite;}.hero-rays::after{content:"";position:absolute;top:-10%;left:35%;width:30%;height:60%;background:linear-gradient(180deg,rgba(255,235,150,0.06) 0%,rgba(201,168,64,0.03) 50%,transparent 100%);filter:blur(40px);animation:rayPulse 8s ease-in-out 4s infinite;}@keyframes rayPulse{0%,100%{opacity:0.6;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.15)}}.footer-areas-wrap{display:flex;flex-direction:column;}.footer-areas-grid{display:flex;gap:2.5rem;}


/* ============================================================
   LIGHT THEME SECTIONS — Silver metallic from logo ring
   ============================================================ */
.section-silver{background:linear-gradient(180deg,#D0D0D9,#C4C4C4) !important;color:#1A1A1A !important;}
.section-silver *{color:#1A1A1A;}
.section-silver .section-eyebrow,.section-silver .me{color:rgba(154,120,24,0.85) !important;}
.section-silver .section-title,.section-silver .sp-title,.section-silver .faq-sidebar-title{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
.section-silver .sp-body,.section-silver .faq-q,.section-silver p{color:#3A3A3A !important;}
.section-silver .sp-body em{color:#1A1A1A !important;}
.section-silver .sp-card-link{color:#3A3A3A !important;border-color:rgba(154,120,24,0.2) !important;}
.section-silver .sp-card-link:hover{color:var(--gold-lo) !important;}
.section-silver .sp-list-icon{color:var(--gold-lo) !important;}

.section-frost{background:linear-gradient(180deg,#E1E3E3,#D0D0D9) !important;color:#1A1A1A !important;}
.section-frost *{color:#1A1A1A;}
.section-frost .section-eyebrow{color:rgba(154,120,24,0.85) !important;}
.section-frost .section-title{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
.section-frost .tcard{background:rgba(255,255,255,0.5) !important;border:1px solid rgba(154,120,24,0.15);}
.section-frost .tcard:hover{background:rgba(255,255,255,0.75) !important;}
.section-frost .tcard-stars{color:var(--gold) !important;}
.section-frost .tcard-quote{color:#3A3A3A !important;}
.section-frost .tcard-n{color:#1A1A1A !important;}
.section-frost .tcard-l{color:rgba(58,154,184,0.8) !important;}
.section-frost .tcard-av{background:var(--gg) !important;color:#111 !important;}
.section-frost .test-featured{background:rgba(255,255,255,0.4) !important;border-color:rgba(154,120,24,0.25) !important;}
.section-frost .test-quote{color:#2A2A2A !important;}
.section-frost .test-mark{color:rgba(201,168,64,0.3) !important;}
.section-frost .test-name{color:#1A1A1A !important;}
.section-frost .test-loc{color:rgba(58,154,184,0.75) !important;}
.section-frost .test-medallion-bg{opacity:0.08 !important;}
.section-frost .g-rating{background:rgba(255,255,255,0.5) !important;border-color:rgba(154,120,24,0.25) !important;}
.section-frost .g-rating-score{color:#1A1A1A !important;}
.section-frost .g-rating-count{color:#555 !important;}
.section-frost .t-grid{background:rgba(154,120,24,0.15) !important;border-color:rgba(154,120,24,0.15) !important;}

/* Light proof band */
.proof-silver{background:linear-gradient(180deg,#C4C4C4,#CECECE) !important;}
.proof-silver .pv{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
.proof-silver .pl{color:rgba(58,154,184,0.85) !important;}
.proof-silver .pstars{color:var(--gold) !important;}
.proof-silver .pdiv{background:linear-gradient(180deg,transparent,rgba(154,120,24,0.4),transparent) !important;}
.proof-silver i{color:var(--gold) !important;}

/* Light manifesto */
.manifesto-silver{background:linear-gradient(160deg,#D0D0D9,#C8C8CE,#D4D4DC) !important;}
.manifesto-silver .me{color:rgba(154,120,24,0.8) !important;}
.manifesto-silver .ml{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
.manifesto-silver .ml-xl{background:var(--gg) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;}

/* Light CTA */
.cta-silver{background:linear-gradient(160deg,#CECECE,#C4C4C4) !important;}
.cta-silver .cta-h{color:#1A1A1A !important;}
.cta-silver .cta-h em{background:var(--gg) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;}
.cta-silver .cta-sub{color:#555 !important;}
.cta-silver .cta-avail{color:#666 !important;}

/* ============================================================
   LIGHT THEME CITY PAGES
   ============================================================ */
body.theme-light{background:#E1E3E3;}
body.theme-light .site-header{background:rgba(225,227,227,0.97) !important;}
body.theme-light .site-header.scrolled{background:rgba(210,212,214,0.98) !important;box-shadow:0 2px 32px rgba(0,0,0,0.15) !important;}
body.theme-light .header-name{background:linear-gradient(135deg,#9A7818,#C9A840,#F0D060,#C9A840,#9A7818) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;}
body.theme-light .header-sub{color:rgba(58,154,184,0.75) !important;}
body.theme-light .hnav{color:#555 !important;}
body.theme-light .hnav:hover{color:var(--gold-lo) !important;}
body.theme-light .breadcrumb-bar{background:#D0D0D9 !important;border-color:rgba(154,120,24,0.15) !important;}
body.theme-light .bc-item{color:#666 !important;}

body.theme-light .city-hero{background:linear-gradient(160deg,#D0D0D9 0%,#C4C4C4 50%,#CECECE 100%) !important;}
body.theme-light .city-hero::before{background-image:repeating-linear-gradient(15deg,transparent,transparent 88px,rgba(154,120,24,0.04) 88px,rgba(154,120,24,0.04) 89px) !important;}
body.theme-light .city-eyebrow{color:rgba(154,120,24,0.8) !important;}
body.theme-light .city-h1{color:#1A1A1A !important;}
body.theme-light .city-h1 .gold{background:var(--gg) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;}
body.theme-light .city-intro{color:#3A3A3A !important;}
body.theme-light .city-badge{background:rgba(255,255,255,0.5) !important;border-color:rgba(154,120,24,0.3) !important;color:#3A3A3A !important;}
body.theme-light .city-cta-box{background:rgba(255,255,255,0.4) !important;border-color:rgba(154,120,24,0.25) !important;}
body.theme-light .cta-box-label{color:rgba(154,120,24,0.7) !important;}
body.theme-light .cta-box-sub{color:rgba(58,154,184,0.8) !important;}

body.theme-light .nbhd-section{background:linear-gradient(180deg,#E1E3E3,#D8DAD8) !important;}
body.theme-light .nbhd-card{background:rgba(255,255,255,0.45) !important;}
body.theme-light .nbhd-card:hover{background:rgba(255,255,255,0.7) !important;}
body.theme-light .nbhd-name{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
body.theme-light .nbhd-desc{color:#3A3A3A !important;}
body.theme-light .nbhd-grid{background:rgba(154,120,24,0.15) !important;border-color:rgba(154,120,24,0.15) !important;}

body.theme-light .local-section{background:#D0D0D9 !important;}
body.theme-light .local-list li{color:#3A3A3A !important;border-color:rgba(154,120,24,0.15) !important;}

body.theme-light .svc-mobile-section{background:linear-gradient(180deg,#C8C8CE,#D0D0D9) !important;}
body.theme-light .svc-card{background:rgba(255,255,255,0.45) !important;}
body.theme-light .svc-card:hover{background:rgba(255,255,255,0.7) !important;}
body.theme-light .svc-card-title{color:#1A1A1A !important;background:none !important;-webkit-text-fill-color:#1A1A1A !important;}
body.theme-light .svc-card-body{color:#3A3A3A !important;}
body.theme-light .svc-card-badge{color:rgba(58,154,184,0.8) !important;border-color:rgba(58,154,184,0.3) !important;}
body.theme-light .svc-mobile-grid{background:rgba(154,120,24,0.15) !important;border-color:rgba(154,120,24,0.15) !important;}

body.theme-light .faq-section{background:#E1E3E3 !important;}
body.theme-light .faq-item{border-color:rgba(154,120,24,0.18) !important;}
body.theme-light .faq-q{color:#3A3A3A !important;}
body.theme-light .faq-q:hover{color:var(--gold-lo) !important;}
body.theme-light .faq-a-inner p{color:#555 !important;}

body.theme-light .city-cta-bottom{background:linear-gradient(160deg,#C4C4C4,#CECECE) !important;}
body.theme-light .city-cta-h{color:#1A1A1A !important;}

body.theme-light .site-footer{background:linear-gradient(180deg,#2A2E37,#1A1D22) !important;}
body.theme-light .site-footer *{color:inherit;}
body.theme-light .footer-bottom{color:rgba(232,232,232,0.25) !important;}
body.theme-light .footer-bottom *{color:rgba(232,232,232,0.25) !important;}
