/* Cash For Cars Rockford — site styles */
:root{
  --ink:#1b1430;--plum:#24124f;--plum-2:#2f1a6b;--violet:#5b34d6;--violet-2:#7c4dff;--orchid:#b44bd0;
  --coral:#ff7a5c;--amber:#ffb84d;--gold:#ffc35a;--paper:#f7f4ff;--card:#fff;--line:#e2dcf2;--line-2:#cfc5ea;
  --muted:#5b5472;--soft:#8b84a3;--err:#c3262d;--err-bg:#fff2f2;--ok:#0f7a55;--ok-bg:#ecfaf3;
  --cta:linear-gradient(135deg,#ffc35a 0%,#ff9a5a 45%,#ff7a5c 100%);
  --r:14px;--r-sm:10px;--shadow:0 18px 50px -18px rgba(36,18,79,.45),0 2px 8px rgba(36,18,79,.08);
  --font:'Roboto',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-size:16px;line-height:1.6;color:var(--ink);background:#fff;overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--violet)}
button,input{font:inherit}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container,.rk-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}
:focus-visible{outline:3px solid var(--violet-2);outline-offset:2px}

/* ---------- header ---------- */
.rk-top{position:relative;z-index:30;background:#fff;border-bottom:1px solid var(--line)}
.rk-top__bar{display:flex;align-items:center;gap:18px;min-height:76px}
.rk-brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none;color:var(--ink)}
.rk-logo{display:block;width:236px;height:auto}
.rk-logo__w1{font:900 21px/1 var(--font);letter-spacing:.6px;fill:var(--ink);text-transform:uppercase}
.rk-logo__w2{font:700 15.5px/1 var(--font);letter-spacing:7.6px;fill:var(--violet);text-transform:uppercase}
.rk-nav{margin-left:auto}
.rk-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.rk-nav a{display:block;white-space:nowrap;padding:10px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:500;font-size:15px;line-height:1.3}
.rk-nav a:hover{background:var(--paper);color:var(--violet)}
.rk-call{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 18px 0 6px;border:2px solid var(--violet);border-radius:999px;color:var(--violet);font-weight:700;font-size:16px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.rk-call:hover{background:var(--violet);color:#fff}
.rk-call__ic{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--violet);color:#fff}
.rk-call:hover .rk-call__ic{background:#fff;color:var(--violet)}
.rk-call__ic svg{width:17px;height:17px}
.rk-call__short{display:none}
.rk-menu{display:none;width:46px;height:46px;border:1px solid var(--line-2);border-radius:12px;background:#fff;cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.rk-menu span.bar{display:block;width:20px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.rk-menu[aria-expanded="true"] span.bar:nth-child(2){transform:translateY(7px) rotate(45deg)}
.rk-menu[aria-expanded="true"] span.bar:nth-child(3){opacity:0}
.rk-menu[aria-expanded="true"] span.bar:nth-child(4){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:1199px){
  .rk-top__bar{min-height:66px;gap:10px}
  .rk-logo{width:188px}
  .rk-menu{display:inline-flex}
  .rk-call{margin-left:auto;padding:0 14px 0 5px;gap:8px}
  .rk-nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 20px 30px -20px rgba(36,18,79,.35);display:none;margin:0}
  .rk-nav.is-open{display:block}
  .rk-nav ul{flex-direction:column;padding:8px 16px 16px;gap:0}
  .rk-nav a{padding:14px 8px;border-bottom:1px solid var(--line);border-radius:0;font-size:16px}
  .rk-nav li:last-child a{border-bottom:0}
}
@media (max-width:560px){
  .rk-wrap,.container{padding:0 16px}
  .rk-logo{width:158px}
  .rk-call{min-height:44px;padding:0 12px 0 4px}
  .rk-call__ic{width:32px;height:32px}
  .rk-call__full{display:none}
  .rk-call__short{display:inline}
}

/* ---------- buttons ---------- */
.rk-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;border:0;border-radius:var(--r-sm);background:var(--cta);color:var(--ink);font-weight:800;font-size:18px;letter-spacing:.2px;cursor:pointer;text-decoration:none;box-shadow:0 10px 24px -10px rgba(255,122,92,.9),inset 0 -2px 0 rgba(0,0,0,.08);transition:transform .12s,box-shadow .12s,filter .12s}
.rk-btn:hover{filter:saturate(1.15) brightness(1.03);box-shadow:0 14px 28px -10px rgba(255,122,92,1),inset 0 -2px 0 rgba(0,0,0,.08)}
.rk-btn:active{transform:translateY(1px)}
.rk-btn[disabled]{cursor:progress;filter:grayscale(.25) opacity(.8)}
.rk-btn--block{width:100%}
.rk-btn__arrow{width:20px;height:20px;transition:transform .15s}
.rk-btn:hover .rk-btn__arrow{transform:translateX(3px)}
.rk-btn--quiet{background:#fff;color:var(--violet);border:2px solid var(--violet);box-shadow:none;font-weight:700}
.rk-btn--quiet:hover{background:var(--paper);box-shadow:none;filter:none}
.rk-link{background:none;border:0;padding:0;color:var(--violet);font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:inherit}
.rk-spin{width:20px;height:20px;border-radius:50%;border:3px solid rgba(27,20,48,.25);border-top-color:var(--ink);animation:rk-rot .8s linear infinite}
@keyframes rk-rot{to{transform:rotate(360deg)}}

/* ---------- hero ---------- */
.rk-hero{position:relative;overflow:hidden;color:#fff;background:
  radial-gradient(900px 520px at 8% -10%,rgba(124,77,255,.75),transparent 60%),
  radial-gradient(700px 520px at 100% 110%,rgba(255,122,92,.55),transparent 60%),
  radial-gradient(600px 400px at 60% 40%,rgba(180,75,208,.35),transparent 70%),
  linear-gradient(160deg,#2a1663 0%,#24124f 55%,#331660 100%)}
.rk-hero::before{content:"";position:absolute;inset:-40% -10%;background:repeating-linear-gradient(100deg,transparent 0 46px,rgba(255,255,255,.035) 46px 48px);animation:rk-streak 18s linear infinite;pointer-events:none}
@keyframes rk-streak{to{transform:translateX(96px)}}
.rk-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-areas:"lead card" "facts card";grid-template-rows:1fr 1fr;column-gap:56px;padding-top:64px;padding-bottom:72px;align-items:start}
.rk-hero__lead{grid-area:lead;align-self:end}
.rk-hero__facts{grid-area:facts;align-self:start}
.rk-hero__card{grid-area:card;align-self:center}
.rk-hero h1{margin:0 0 26px;font-size:clamp(38px,5.2vw,68px);line-height:1.05;font-weight:900;letter-spacing:-.8px;text-wrap:balance}
.rk-hero h1 .rk-hl{background:linear-gradient(90deg,#ffd36e,#ff8f5e 55%,#ff6f9a);-webkit-background-clip:text;background-clip:text;color:transparent}
.rk-phonecta{position:relative;display:inline-flex;align-items:center;gap:14px;min-height:60px;padding:6px 26px 6px 8px;border:2px solid rgba(255,255,255,.85);border-radius:999px;color:#fff;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:.4px;background:rgba(255,255,255,.06);backdrop-filter:blur(2px);transition:background .15s,border-color .15s}
.rk-phonecta:hover{background:rgba(255,255,255,.14);border-color:#fff;color:#fff}
.rk-phonecta__ic{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--cta);color:var(--ink)}
.rk-phonecta__ic svg{width:22px;height:22px}
.rk-phonecta__ic::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid #ffb84d;animation:rk-ring 2.2s ease-out infinite}
@keyframes rk-ring{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.rk-hours{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:26px 0 10px}
.rk-hours span{display:inline-block;padding:4px 10px;border-radius:6px;background:rgba(255,195,90,.16);color:#ffd88f;font-size:12.5px;font-weight:700;letter-spacing:1.6px}
.rk-hero h2{margin:0;font-size:19px;line-height:1.4;font-weight:700;color:#fff}

/* banner card */
.rk-quick{position:relative;background:#fff;color:var(--ink);border-radius:20px;padding:30px 28px 24px;box-shadow:0 40px 80px -30px rgba(10,4,30,.7),0 0 0 1px rgba(255,255,255,.1)}
.rk-quick::before{content:"";position:absolute;left:24px;right:24px;top:-6px;height:6px;border-radius:6px 6px 0 0;background:var(--cta)}
.rk-quick h2{margin:0 0 18px;color:var(--ink);font-size:23px;line-height:1.25;font-weight:900;letter-spacing:-.2px}
.rk-quick h2 br+*{display:block}
.rk-quick__mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:0 0 16px;background:var(--paper);border-radius:12px}
.rk-quick__mode button{min-height:44px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:700;font-size:14.5px;cursor:pointer}
.rk-quick__mode button[aria-pressed="true"]{background:#fff;color:var(--violet);box-shadow:0 2px 8px rgba(36,18,79,.12)}
.rk-quick__note{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 0;font-size:13.5px;color:var(--muted);text-align:center}
.rk-quick__note svg{width:15px;height:15px;color:var(--ok);flex:0 0 auto}
.rk-quick .rk-btn{margin-top:6px}

/* ---------- fields + combobox ---------- */
.rk-field{position:relative;margin:0 0 14px}
.rk-field>label,.rk-lbl{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 6px;font-size:14.5px;font-weight:700;color:var(--ink)}
.rk-lbl .rk-link{font-size:13.5px;font-weight:600}
.rk-input{display:block;width:100%;min-height:52px;padding:12px 14px;border:1.5px solid var(--line-2);border-radius:var(--r-sm);background:#fff;color:var(--ink);font-size:16px;line-height:1.3;transition:border-color .15s,box-shadow .15s}
.rk-input::placeholder{color:#8f88a8}
.rk-input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 4px rgba(91,52,214,.16)}
.rk-input[disabled]{background:#f4f2f9;color:var(--soft);cursor:not-allowed}
.rk-input[readonly]{background:#f7f5fc}
.rk-input[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 3px rgba(195,38,45,.1)}
.rk-field.is-done .rk-input{border-color:#9b86e8}
.rk-err{display:flex;gap:6px;align-items:flex-start;margin:6px 0 0;color:var(--err);font-size:14px;font-weight:500;line-height:1.35}
.rk-err:empty{display:none}
.rk-help{margin:6px 0 0;color:var(--muted);font-size:13.5px;line-height:1.4}
.rk-combo{position:relative}
.rk-combo .rk-input{padding-right:44px}
.rk-combo__caret{position:absolute;right:6px;top:50%;width:36px;height:36px;margin-top:-18px;border:0;background:none;color:var(--muted);cursor:pointer;display:grid;place-items:center;border-radius:8px}
.rk-combo__caret svg{width:16px;height:16px;transition:transform .15s}
.rk-combo.is-open .rk-combo__caret svg{transform:rotate(180deg)}
.rk-combo__wait{position:absolute;right:44px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--soft);pointer-events:none}
.rk-combo__tick{position:absolute;right:42px;top:50%;width:18px;height:18px;margin-top:-9px;color:var(--ok);display:none}
.rk-field.is-done .rk-combo__tick{display:block}
.rk-list{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 6px);max-height:264px;overflow:auto;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow)}
.rk-list[hidden]{display:none}
.rk-list li{padding:11px 12px;border-radius:8px;cursor:pointer;font-size:16px;line-height:1.25;color:var(--ink)}
.rk-list li[aria-selected="true"],.rk-list li.is-active{background:#efe9ff;color:var(--violet)}
.rk-list li.rk-list__empty{color:var(--muted);cursor:default;background:none}
.rk-row2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.rk-row-zip{display:grid;grid-template-columns:2fr 1fr;gap:0 14px}
@media (max-width:480px){.rk-row2,.rk-row-zip{grid-template-columns:1fr}}
.rk-alert{margin:0 0 14px;padding:12px 14px;border-radius:var(--r-sm);background:var(--err-bg);color:#8d1a20;border:1px solid #f4c7ca;font-size:15px;line-height:1.45}
.rk-alert:empty{display:none}
.rk-alert--info{background:#f3efff;border-color:#d8ccff;color:#3b2391}
.rk-vinok{display:flex;gap:10px;align-items:center;margin:8px 0 0;padding:10px 12px;border-radius:10px;background:var(--ok-bg);color:#0b5c40;font-size:15px;font-weight:600}
.rk-vinok svg{width:18px;height:18px;flex:0 0 auto}

/* ---------- content sections (existing copy) ---------- */
.rockford-text-section,.rockford-text-section2{padding:72px 0 40px;background:#fff}
.rockford-text,.rockford-text-new,.rockford-text4{max-width:860px;margin:0 auto 34px}
.rockford-text h2,.rockford-text-new h2{position:relative;margin:0 0 16px;padding-top:18px;font-size:clamp(26px,3vw,34px);line-height:1.15;font-weight:900;letter-spacing:-.4px;color:var(--ink)}
.rockford-text h2::before,.rockford-text-new h2::before{content:"";position:absolute;top:0;left:0;width:54px;height:5px;border-radius:5px;background:var(--cta)}
.rockford-text p,.rockford-text-new p,.rockford-text4 p{margin:0 0 16px;font-size:17px;line-height:1.75;color:#3b3550}
.rockford-text4 p{position:relative;padding:16px 18px 16px 20px;margin:0 0 12px;background:var(--paper);border-left:4px solid var(--violet);border-radius:0 12px 12px 0}
.rockford-text-section .rockford-text:nth-child(2){padding:30px 32px;border-radius:20px;background:linear-gradient(135deg,#f7f4ff,#fff4ef)}
.rockford-reviews-section{position:relative;overflow:hidden;padding:76px 0;color:#fff;text-align:center;background:radial-gradient(600px 300px at 15% 0%,rgba(124,77,255,.6),transparent 70%),radial-gradient(500px 300px at 90% 100%,rgba(255,122,92,.45),transparent 70%),#24124f}
.rockford-reviews{max-width:820px;margin:0 auto}
.rockford-reviews h2{margin:0 0 18px;font-size:14px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:#ffd88f}
.rockford-reviews p{position:relative;margin:0 0 22px;font-size:clamp(20px,2.4vw,27px);line-height:1.5;font-weight:500}
.rockford-reviews p::before{content:"\201C";display:block;font-size:84px;line-height:.6;height:40px;color:var(--coral);font-family:Georgia,serif}
.rockford-reviews h3{margin:0;font-size:17px;font-weight:700;color:#e5ddff}
.rockford-reviews h3::before{content:"\2605\2605\2605\2605\2605";display:block;margin-bottom:6px;letter-spacing:4px;color:var(--gold);font-size:18px}
.rockford-footer-section{padding:26px 0;background:#170b38;color:#cfc6ee;text-align:center;font-size:14.5px}
.rockford-footer-text p{margin:0}
.rk-footnav ul{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;list-style:none;margin:0 0 14px;padding:0}
.rk-footnav a{color:#e8e2ff;text-decoration:none;font-size:14.5px}
.rk-footnav a:hover{text-decoration:underline}

/* subpage banner (existing markup) */
.rockford-home-header{position:relative;overflow:hidden;color:#fff;padding:54px 0 58px;background:radial-gradient(700px 400px at 5% -20%,rgba(124,77,255,.75),transparent 60%),radial-gradient(600px 400px at 100% 120%,rgba(255,122,92,.55),transparent 60%),linear-gradient(160deg,#2a1663,#24124f)}
.rockford-heading-mobile{display:none}
.rockford-heading-text h1{margin:0 0 8px;font-size:clamp(32px,4vw,48px);font-weight:900;letter-spacing:-.6px;line-height:1.1}
.rockford-heading-text p{margin:0 0 20px;font-size:19px;color:#e5ddff}
.rockford-heading-text a{text-decoration:none}
.rockford-heading-text .btn-default{display:inline-flex;align-items:center;min-height:52px;padding:0 24px;border:2px solid rgba(255,255,255,.85);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:20px;font-weight:800;cursor:pointer}
.rockford-heading-text .btn-default:hover{background:rgba(255,255,255,.15)}
.rockford-heading-text span{display:inline-block;margin:22px 12px 0 0;padding:4px 10px;border-radius:6px;background:rgba(255,195,90,.16);color:#ffd88f;font-size:12.5px;font-weight:700;letter-spacing:1.6px}
.rockford-heading-text h2{display:inline;margin:0;font-size:18px;font-weight:700}

/* ---------- hero responsive ---------- */
@media (max-width:1023px){
  .rk-hero__grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"lead" "card" "facts";grid-template-rows:auto;padding-top:28px;padding-bottom:40px}
  .rk-hero h1{margin-bottom:18px}
  .rk-hero__card{max-width:560px;width:100%}
  .rk-hero__facts{margin-top:30px}
}
@media (max-width:560px){
  .rk-hero__grid{padding-top:18px}
  .rk-hero h1{font-size:28px;letter-spacing:-.4px;margin-bottom:14px}
  .rk-quick{padding:22px 16px 18px;border-radius:16px}
  .rk-quick h2{font-size:19px;margin-bottom:14px}
  .rk-phonecta{font-size:21px;min-height:56px;padding-right:20px}
  .rockford-text-section .rockford-text:nth-child(2){padding:22px 18px}
}
@media (prefers-reduced-motion:reduce){
  .rk-hero::before,.rk-phonecta__ic::after{animation:none}
  *{scroll-behavior:auto!important}
}

/* ---------- dialogs ---------- */
.rk-lock,.rk-lock body{overflow:hidden}
.rk-dlg{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}
.rk-dlg[hidden]{display:none}
.rk-dlg__scrim{position:absolute;inset:0;background:rgba(20,10,51,.62);animation:rk-fade .18s ease-out}
.rk-dlg__panel{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 40px);overflow:auto;padding:28px 28px 24px;border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 40px 90px -20px rgba(10,4,30,.6);animation:rk-pop .2s ease-out}
.rk-dlg__panel:focus{outline:none}
.rk-dlg__grip{display:none}
.rk-dlg__x{position:absolute;right:12px;top:12px;width:44px;height:44px;border:0;border-radius:12px;background:var(--paper);color:var(--ink);font-size:26px;line-height:1;cursor:pointer}
.rk-dlg__title{margin:0 48px 12px 0;font-size:24px;line-height:1.2;font-weight:900;letter-spacing:-.3px}
.rk-dlg__body p{margin:0 0 14px;font-size:16px;line-height:1.6;color:#3b3550}
.rk-dlg__body .rk-btn{margin-top:8px}
.rk-dlg__body .rk-dlg__alt{display:block;margin:14px auto 0;text-align:center}
.rk-vinsample{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:var(--paper)}
.rk-vinsample span{font-size:12.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.rk-vinsample code{font:700 19px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:1.5px;color:var(--violet);word-break:break-all}
.rk-vinspots{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:4px 0 12px}
.rk-vinspots h3{margin:0 0 6px;font-size:15px;font-weight:800}
.rk-vinspots ul{margin:0;padding-left:18px;font-size:15px;line-height:1.5;color:#3b3550}
.rk-vinspots li{margin-bottom:4px}
@keyframes rk-fade{from{opacity:0}}
@keyframes rk-pop{from{opacity:0;transform:translateY(12px) scale(.98)}}
@keyframes rk-up{from{transform:translateY(100%)}}
@media (max-width:640px){
  .rk-dlg{align-items:flex-end;padding:0}
  .rk-dlg__panel{max-width:none;max-height:88vh;border-radius:22px 22px 0 0;padding:14px 18px 22px;animation:rk-up .22s ease-out}
  .rk-dlg__grip{display:block;width:44px;height:5px;margin:0 auto 14px;border-radius:5px;background:var(--line-2)}
  .rk-dlg__x{top:16px}
  .rk-vinspots{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.rk-dlg__scrim,.rk-dlg__panel{animation:none}}
@media (max-width:560px){.rockford-heading-text h2{display:block;margin-top:10px;font-size:17px}.rockford-heading-text span{margin-top:18px}}
.rk-foot-addr{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 10px;font-style:normal;font-size:15px;color:#e8e2ff}
.rk-foot-addr::before{content:"";flex:0 0 auto;width:15px;height:15px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffb84d'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
@media (max-width:560px){.rk-foot-addr{align-items:flex-start;text-align:left;justify-content:flex-start}.rk-foot-addr::before{margin-top:4px}}
