/*
Theme Name: Smoke Tokz Overland Park Child
Theme URI: https://smoketokzoverlandpark.com/
Description: Preservation-first redesign for Smoke Tokz Overland Park 119th Street and 95th Street. Keeps existing WordPress content and SEO structure while replacing the visible shell with a custom Smoke Tokz experience.
Author: Web Force KC
Author URI: https://webforcekc.com/
Template: twentytwentyfive
Version: 1.0.0
Text Domain: smoke-tokz-overland-park
*/

:root {
  --sh-black: #0b0b0b;
  --sh-charcoal: #171717;
  --sh-paper: #ffffff;
  --sh-warm: #f5f3ef;
  --sh-line: #dedbd4;
  --sh-muted: #6b6b68;
  --sh-red: #bf1e2e;
  --sh-red-dark: #8d1420;
  --sh-green: #56754e;
  --sh-max: 1240px;
  --sh-content: 860px;
  --sh-radius: 18px;
}

html { scroll-behavior: smooth; }
body { margin: 0; background: var(--sh-paper); color: var(--sh-black); }
a { text-underline-offset: .18em; }
.wp-site-blocks { overflow-x: clip; }
.sh-home { width:100%; max-width:none !important; }
.sh-home > .wp-block-group { width:100%; max-width:none !important; }
.sh-shell { width: min(calc(100% - 40px), var(--sh-max)); margin-inline: auto; }

/* Top utility bar */
.sh-topbar { background: #050505; color: #fff; border-bottom: 1px solid rgba(255,255,255,.08); }
.sh-topbar-inner { min-height: 36px; font-size: .82rem; letter-spacing: .01em; }
.sh-topbar p { margin: 0; }
.sh-topbar a { color: #fff; text-decoration: none; font-weight: 800; }
.sh-topbar a:hover { color: #f0c8cd; }

/* Main header */
.sh-header { background: var(--sh-black); color: #fff; position: sticky; top: 0; z-index: 50; box-shadow: 0 10px 30px rgba(0,0,0,.14); }
.admin-bar .sh-header { top: 32px; }
.sh-header-main { min-height: 92px; gap: 28px; }
.sh-brand { min-width: 235px; gap: 12px; }
.sh-brand .wp-block-shortcode { margin:0; line-height:0; }
.sh-bundled-logo { display:inline-block; line-height:0; }
.sh-bundled-logo img { display:block; width:auto; height:auto; }
.sh-header-logo img { width:clamp(190px,20vw,270px); max-height:68px; object-fit:contain; }
.sh-brand .wp-block-site-logo { margin: 0; }
.sh-brand .wp-block-site-logo img { max-height: 64px; width: auto; object-fit: contain; }
.sh-brand .wp-block-site-title { margin: 0; font-size: clamp(1.1rem,2vw,1.45rem); font-weight: 900; line-height: 1; }
.sh-brand .wp-block-site-title a { color: #fff; text-decoration: none; }
.sh-brand-kicker { margin: 4px 0 0; color: #bdbdbd; font-size: .7rem; text-transform: uppercase; letter-spacing: .13em; font-weight: 800; }
.sh-nav-wrap { flex: 1 1 auto; justify-content: flex-end; gap: 18px; }
.sh-header .wp-block-navigation { color: #fff; font-size: .96rem; font-weight: 800; }
.sh-header .wp-block-navigation a { color: #fff; text-decoration: none; }
.sh-header .wp-block-navigation-item__content { padding-block: .75rem; }
.sh-header .wp-block-navigation__submenu-container { background: #111; border: 1px solid #2a2a2a; color: #fff; }
.sh-header .wp-block-navigation__responsive-container.is-menu-open { background: #0b0b0b; color: #fff; padding: 28px; }
.sh-header-actions { gap: 10px; flex-wrap: nowrap; }
.sh-header-actions .wp-block-button__link { white-space: nowrap; border-radius: 999px; padding: .78rem 1rem; font-weight: 900; font-size: .88rem; }
.sh-call .wp-block-button__link { background: transparent; border: 1px solid rgba(255,255,255,.35); color: #fff; }
.sh-directions .wp-block-button__link { background: var(--sh-red); color: #fff; }
.sh-directions .wp-block-button__link:hover { background: var(--sh-red-dark); }

/* Homepage hero */
.sh-hero { background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(8,8,8,.88) 44%,rgba(8,8,8,.42) 72%,rgba(8,8,8,.2) 100%),url('assets/images/location119-interior.jpg') center/cover no-repeat; color:#fff; position:relative; overflow:hidden; }
.sh-hero-inner { min-height: 520px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr); gap: clamp(34px,6vw,84px); align-items:center; padding-block: clamp(58px,8vw,96px); position:relative; z-index:1; }
.sh-eyebrow { color: #f0c8cd; text-transform: uppercase; letter-spacing: .15em; font-size: .78rem; font-weight: 900; margin: 0 0 14px; }
.sh-hero-logo { margin-bottom:22px; }
.sh-hero-logo img { width:min(520px,88%); filter:drop-shadow(0 8px 22px rgba(0,0,0,.32)); }
.sh-hero h1 { color:#fff; font-size: clamp(2.9rem,6vw,5.6rem); letter-spacing:-.045em; line-height:.94; max-width: 900px; margin:0 0 22px; }
.sh-hero-copy { color:#ddd; font-size: clamp(1.06rem,1.6vw,1.28rem); line-height:1.65; max-width: 760px; margin:0; }
.sh-hero-buttons { margin-top: 28px; gap: 12px; }
.sh-hero-buttons .wp-block-button__link { border-radius:999px; padding:.95rem 1.35rem; font-weight:900; }
.sh-hero-buttons .is-style-fill .wp-block-button__link { background:var(--sh-red); color:#fff; border:1px solid var(--sh-red); }
.sh-hero-buttons .is-style-fill .wp-block-button__link:hover,.sh-hero-buttons .is-style-fill .wp-block-button__link:focus-visible { background:var(--sh-red-dark); border-color:var(--sh-red-dark); }
.sh-hero-buttons .is-style-outline .wp-block-button__link { color:#fff; border-color:rgba(255,255,255,.52); }
.sh-hero-card { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.14); border-radius: 24px; padding: 28px; backdrop-filter: blur(8px); }
.sh-hero-card h2 { color:#fff; font-size:1.25rem; margin-top:0; }
.sh-hero-card p { color:#d2d2d2; margin:.55rem 0; }
.sh-hero-card a { color:#fff; font-weight:900; }
.sh-trust-row { border-top:1px solid rgba(255,255,255,.1); margin-top:24px; padding-top:18px; display:flex; flex-wrap:wrap; gap:10px 18px; color:#cfcfcf; font-size:.86rem; font-weight:700; }

/* Homepage sections */
.sh-home-section { padding-block: clamp(54px,7vw,92px); }
.sh-home-section.is-warm { background: var(--sh-warm); }
.sh-section-kicker { color: var(--sh-red); font-size:.78rem; text-transform:uppercase; letter-spacing:.15em; font-weight:900; margin-bottom:10px; }
.sh-section-title { font-size: clamp(2rem,4.3vw,3.6rem); letter-spacing:-.04em; line-height:1; margin:0; max-width:800px; }
.sh-section-intro { color:#555; font-size:1.08rem; line-height:1.7; max-width:760px; }
.sh-card-grid { margin-top:32px; }
.sh-card-grid > .wp-block-column { background:#fff; border:1px solid var(--sh-line); border-radius:var(--sh-radius); padding:26px; box-shadow:0 10px 28px rgba(0,0,0,.045); }
.sh-card-grid h3 { margin:0 0 8px; font-size:1.35rem; }
.sh-card-grid p { color:#5c5c58; line-height:1.6; }
.sh-card-grid a { color:var(--sh-black); font-weight:900; }
.sh-card-grid a:hover { color:var(--sh-red); }
.sh-real-store { background:#fff; }
.sh-photo-grid { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,minmax(190px,1fr)); gap:14px; margin-top:30px; }
.sh-photo { margin:0; overflow:hidden; border-radius:var(--sh-radius); background:#111; min-height:240px; }
.sh-photo:first-child { grid-row:1 / 3; }
.sh-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.sh-photo:hover img { transform:scale(1.025); }
.sh-360-section { background:#111; color:#fff; }
.sh-360-section .sh-section-title { color:#fff; }
.sh-360-section .sh-section-intro { color:#d0d0d0; }
.sh-360-experience { margin-top:30px; }
.sh-360-stage { position:relative; overflow:hidden; width:100%; aspect-ratio:16/9; min-height:420px; background-color:#050505; background-position:center; background-size:cover; border:1px solid rgba(255,255,255,.18); border-radius:var(--sh-radius); box-shadow:0 24px 60px rgba(0,0,0,.3); }
.sh-360-preview,.sh-360-frame { display:block; width:100%; height:100%; border:0; }
.sh-360-preview { object-fit:cover; }
.sh-360-frame { position:absolute; inset:0; background:transparent; }
.sh-360-overlay { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:24px; text-align:center; background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.38)); }
.sh-360-overlay p { margin:0; color:#fff; font-weight:800; text-shadow:0 2px 12px rgba(0,0,0,.8); }
.sh-360-launch { display:inline-flex; align-items:center; gap:12px; appearance:none; border:0; border-radius:999px; padding:14px 22px; background:var(--sh-red); color:#fff; font:inherit; font-weight:900; cursor:pointer; box-shadow:0 12px 32px rgba(0,0,0,.32); }
.sh-360-launch:hover,.sh-360-launch:focus-visible { background:var(--sh-red-dark); transform:translateY(-1px); }
.sh-360-launch:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.sh-360-badge { display:grid; place-items:center; width:48px; height:48px; margin:-8px 0 -8px -14px; border-radius:50%; background:#fff; color:var(--sh-red); font-size:.86rem; }
.sh-360-help { color:#aaa; font-size:.9rem; margin:12px 2px 0; }
.sh-360-help a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.sh-location-band { background: var(--sh-red); color:#fff; }
.sh-location-band .sh-shell { padding-block:clamp(48px,6vw,78px); }
.sh-location-band h2,.sh-location-band p,.sh-location-band a { color:#fff; }
.sh-location-band h2 { margin:0; font-size:clamp(1.5rem,3vw,2.35rem); }
.sh-location-band p { margin:.4rem 0 0; }
.sh-location-band .wp-block-button__link { background:#fff; color:var(--sh-red); font-weight:900; border-radius:999px; }
.sh-location-grid { display:grid; grid-template-columns:minmax(260px,.78fr) minmax(420px,1.22fr); gap:clamp(28px,5vw,64px); align-items:center; }
.sh-location-kicker { text-transform:uppercase; letter-spacing:.14em; font-size:.76rem; font-weight:900; opacity:.82; }
.sh-location-address { margin-top:22px !important; line-height:1.65; }
.sh-location-buttons { margin-top:24px; gap:10px; }
.sh-location-buttons .is-style-outline .wp-block-button__link { background:transparent; color:#fff; border-color:rgba(255,255,255,.72); }
.sh-google-map { overflow:hidden; aspect-ratio:4/3; min-height:360px; border:1px solid rgba(255,255,255,.28); border-radius:var(--sh-radius); box-shadow:0 24px 55px rgba(0,0,0,.25); background:#eee; }
.sh-google-map iframe { display:block; width:100%; height:100%; border:0; }

/* Preserved legacy homepage content: keep it, but stop old spacer-heavy design from dominating */
.sh-preserved-wrap { padding-block: clamp(44px,6vw,76px); }
.sh-preserved-home { width:min(calc(100% - 40px), 1050px); margin-inline:auto; }
.sh-preserved-home > *:first-child { margin-top:0 !important; }
.sh-preserved-home .wp-block-spacer { max-height:48px !important; }
.sh-preserved-home img { max-width:100%; height:auto; }
.sh-preserved-home .wp-block-image { margin-block:24px; }
.sh-preserved-home h1,.sh-preserved-home h2,.sh-preserved-home h3 { letter-spacing:-.025em; line-height:1.1; }
.sh-preserved-home iframe { max-width:100%; }

/* Interior pages / blog */
.sh-main { padding-block: clamp(34px,5vw,70px); }
.sh-content { width:min(calc(100% - 40px), var(--sh-content)); margin-inline:auto; }
.sh-content-wide { width:min(calc(100% - 40px), var(--sh-max)); margin-inline:auto; }
.sh-page-shell { background:#fff; }
.sh-article { font-size:clamp(1rem,1.2vw,1.085rem); line-height:1.76; }
.sh-article h1,.sh-article h2,.sh-article h3 { line-height:1.08; letter-spacing:-.03em; }
.sh-article h1 { font-size:clamp(2.2rem,5vw,4rem); }
.sh-article h2 { margin-top:1.8em; }
.sh-article img { max-width:100%; height:auto; border-radius:14px; }
.sh-article iframe { max-width:100%; }
.sh-article .wp-block-button__link { border-radius:999px; font-weight:900; }
.sh-post-meta { color:var(--sh-muted); font-size:.9rem; margin-top:.5rem; }
.sh-post-terms { border-top:1px solid var(--sh-line); margin-top:46px; padding-top:22px; display:grid; gap:10px; font-size:.94rem; }
.sh-post-terms a { font-weight:800; }

.sh-blog-heading { margin-bottom:34px; }
.sh-blog-heading h1 { font-size:clamp(2.4rem,5vw,4.5rem); letter-spacing:-.045em; margin-bottom:8px; }
.sh-blog-heading p { color:#666; max-width:700px; }
.sh-archive-loop .wp-block-post-template { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.sh-archive-loop .wp-block-post { border:1px solid var(--sh-line); border-radius:16px; padding:24px; background:#fff; }
.sh-archive-loop .wp-block-post-title { margin:0 0 .5rem; line-height:1.1; }
.sh-archive-loop .wp-block-post-title a { color:var(--sh-black); text-decoration:none; }
.sh-archive-loop .wp-block-post-title a:hover { color:var(--sh-red); }
.sh-archive-loop .wp-block-post-date { color:#777; font-size:.86rem; }
.sh-archive-loop .wp-block-post-excerpt { color:#4d4d4a; }
.sh-archive-loop .wp-block-query-pagination { margin-top:32px; }

/* Footer */
.sh-footer { background:#080808; color:#fff; margin-top:0; padding-block:52px 28px; }
.sh-footer a { color:#fff; }
.sh-footer .wp-block-site-title a { color:#fff; text-decoration:none; font-weight:900; }
.sh-footer .wp-block-site-logo img { max-height:70px; width:auto; }
.sh-footer-logo img { width:min(330px,100%); max-height:104px; object-fit:contain; object-position:left center; }
.sh-footer h3 { color:#fff; margin-top:0; }
.sh-footer p { color:#d5d5d5; line-height:1.6; }
.sh-footer-columns { gap:34px; }
.sh-footer-small { border-top:1px solid rgba(255,255,255,.15); margin-top:28px; padding-top:22px; font-size:.84rem; color:#bdbdbd; }
.sh-footer-small p { margin:0; }
.sh-mobile-actions { position:fixed; z-index:1000; left:50%; bottom:18px; transform:translateX(-50%); display:grid; grid-template-columns:1fr 1fr .72fr; width:min(680px,calc(100% - 40px)); min-height:58px; overflow:hidden; border:1px solid rgba(255,255,255,.2); border-radius:16px; background:#080808; box-shadow:0 12px 34px rgba(0,0,0,.3); }
.sh-mobile-actions a { display:flex; align-items:center; justify-content:center; gap:8px; padding:10px 14px; color:#fff; text-decoration:none; font-size:.78rem; line-height:1.1; text-align:center; border-right:1px solid rgba(255,255,255,.14); }
.sh-mobile-actions a:last-child { border-right:0; }
.sh-mobile-actions span { font-size:1rem; line-height:1; }
.sh-mobile-google { background:var(--sh-red); }
.sh-mobile-apple { background:#202020; }
.sh-mobile-call { background:var(--sh-green); }
body { padding-bottom:94px; }

@media (max-width: 1020px) {
  .sh-header-main { min-height:78px; }
  .sh-brand { min-width:200px; }
  .sh-header-actions .sh-call { display:none; }
  .sh-hero-inner { grid-template-columns:1fr; min-height:0; }
  .sh-hero-card { max-width:620px; }
}

@media (max-width: 781px) {
  body { padding-bottom:72px; }
  .admin-bar .sh-header { top:46px; }
  .sh-shell,.sh-content,.sh-content-wide,.sh-preserved-home { width:min(calc(100% - 24px), var(--sh-max)); }
  .sh-topbar-inner { justify-content:center !important; text-align:center; min-height:32px; }
  .sh-topbar .sh-topbar-hide-mobile { display:none; }
  .sh-header-main { min-height:72px; gap:10px; }
  .sh-brand { min-width:0; }
  .sh-header-logo img { width:190px; max-height:54px; }
  .sh-brand-kicker { display:none; }
  .sh-nav-wrap { flex:0 0 auto; }
  .sh-header-actions { display:none; }
  .sh-header .wp-block-navigation__responsive-container-open { color:#fff; }
  .sh-hero { background-position:58% center; }
  .sh-hero-inner { padding-block:52px; background:linear-gradient(90deg,rgba(7,7,7,.94),rgba(7,7,7,.72)); }
  .sh-hero h1 { font-size:clamp(2.65rem,13vw,4.4rem); }
  .sh-hero-buttons { flex-direction:column; align-items:stretch; }
  .sh-hero-buttons .wp-block-button { width:100%; }
  .sh-hero-buttons .wp-block-button__link { width:100%; box-sizing:border-box; text-align:center; }
  .sh-card-grid { gap:14px; }
  .sh-photo-grid { grid-template-columns:1fr; grid-template-rows:none; }
  .sh-photo,.sh-photo:first-child { grid-row:auto; min-height:0; aspect-ratio:4/3; }
  .sh-360-stage { aspect-ratio:4/3; min-height:0; }
  .sh-360-launch { padding:12px 18px; font-size:.92rem; }
  .sh-location-grid { grid-template-columns:1fr; }
  .sh-google-map { min-height:0; }
  .sh-archive-loop .wp-block-post-template { grid-template-columns:1fr; }
  .sh-main { padding-top:30px; }
  .sh-footer { padding-top:40px; }
  .sh-mobile-actions { left:0; right:0; bottom:0; transform:none; width:auto; min-height:64px; padding-bottom:env(safe-area-inset-bottom); border-width:1px 0 0; border-radius:0; box-shadow:0 -8px 24px rgba(0,0,0,.24); }
  .sh-mobile-actions a { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; color:#fff; text-decoration:none; font-size:.72rem; line-height:1.1; text-align:center; padding:8px 4px; border-right:1px solid rgba(255,255,255,.14); }
  .sh-mobile-actions a:last-child { border-right:0; }
  .sh-mobile-actions span { font-size:1.18rem; line-height:1; }
}

@media (max-width: 400px) {
  .sh-header-logo img { width:154px; }
  .sh-hero-card { padding:22px; }
}

/* v1.0 Standard Inventory Search / Coming Soon */
.sh-inventory-section { background:linear-gradient(135deg,#090909,#202020); color:#fff; }
.sh-inventory-section .sh-section-kicker { color:var(--sh-red); }
.sh-inventory-section .sh-section-title { color:#fff; }
.sh-inventory-section .sh-section-intro { color:#eee; }
.sh-inventory-card { padding-block:clamp(10px,2vw,24px); }
.sh-inventory-demo { margin-top:28px; max-width:850px; }
.sh-inventory-demo label { display:block; margin-bottom:9px; color:#fff; font-weight:900; }
.sh-inventory-demo > div { display:grid; grid-template-columns:1fr auto; gap:10px; }
.sh-inventory-demo input,.sh-inventory-demo button { min-height:54px; border-radius:999px; border:1px solid rgba(255,255,255,.36); padding:.85rem 1.2rem; font:inherit; }
.sh-inventory-demo input { background:#fff; color:#222; }
.sh-inventory-demo button { background:var(--sh-red); color:#fff; font-weight:900; }
.sh-inventory-demo input:disabled,.sh-inventory-demo button:disabled { opacity:1; cursor:not-allowed; }
.sh-inventory-demo p,.sh-inventory-demo a { color:#fff; }
@media (max-width:620px) { .sh-inventory-demo > div { grid-template-columns:1fr; } .sh-inventory-demo button { width:100%; } }


/* v1.1 Inventory search action buttons — additive only */
.sh-inventory-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.sh-inventory-actions a,.sh-inventory-action { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.75rem 1.15rem; border:2px solid #fff; border-radius:999px; color:#fff !important; font-weight:900; text-decoration:none; }
.sh-inventory-actions .sh-inventory-primary { background:var(--sh-red); border-color:var(--sh-red); }
@media (max-width:620px) { .sh-inventory-actions { display:grid; grid-template-columns:1fr; } .sh-inventory-actions a { width:100%; box-sizing:border-box; } }
/* DFW two-location extension of the approved KC preservation shell. */
[hidden]{display:none!important}.stop-section{padding:70px 0;scroll-margin-top:110px}.stop-warm{background:var(--sh-warm)}.stop-dark{background:#111;color:#fff}.stop-dark .sh-section-title{color:#fff}.stop-dark a{color:#fff}.stop-top{display:flex;justify-content:space-between;padding-block:10px;font-size:.78rem}.stop-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:12px}.stop-brand img{display:block;width:220px;height:auto}.stop-header nav{display:flex;gap:20px;flex-wrap:wrap}.stop-header nav a{color:#fff;text-decoration:none;font-size:.93rem;font-weight:800}.stop-btn{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:44px;box-sizing:border-box;border-radius:999px;padding:12px 18px;background:var(--sh-red);border:1px solid var(--sh-red);color:#fff;text-decoration:none;font-weight:800;font-size:.9rem;line-height:1.2}.stop-btn.outline{background:transparent;border-color:currentColor;color:inherit}.stop-btn:hover{filter:brightness(1.15)}.stop-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.stop-select-label{display:block;font-weight:800;margin-bottom:8px;font-size:.9rem}.stop-choice select,.stop-inventory-choice select,.stop-bar-choice select{font:inherit;min-height:46px;border:1px solid #aaa;border-radius:12px;padding:10px 35px 10px 14px;color:#111;background:#fff;width:100%;box-sizing:border-box}.stop-choice h2{margin-top:22px!important}.stop-choice .stop-actions{display:grid;grid-template-columns:1fr 1fr}.stop-choice .stop-actions a:last-child{grid-column:1/-1}.stop-location-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:32px}.stop-location-card{border-radius:20px;overflow:hidden;background:#111;color:#fff;scroll-margin-top:110px}.stop-location-card a{color:#fff}.stop-store-exterior{display:block;width:100%;height:280px;object-fit:cover}.stop-location-body{padding:28px}.stop-location-logo{width:min(100%,290px);height:auto;display:block}.stop-location-body h3{font-size:2rem;margin:6px 0 14px}.stop-location-body p{line-height:1.65}.stop-text-link{display:inline-block;margin-top:22px;font-weight:800}.stop-inventory-card{border:1px solid #d8d5d0;background:#fff;padding:40px;border-radius:22px}.stop-inventory-choice{max-width:380px;margin:22px 0}.stop-search-row{display:flex;gap:12px}.stop-search-row input{min-width:0;flex:1;font:inherit;padding:14px;border:1px solid #bbb;border-radius:999px}.stop-search-row button{padding:14px 20px;background:#555;color:#fff;border:0;border-radius:999px;font-weight:800}.stop-pending label{display:block;margin-bottom:10px;font-weight:700}.stop-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.stop-product-card{background:#f5f3ef;border-radius:18px;overflow:hidden}.stop-product-card>img{width:100%;height:210px;object-fit:cover;display:block}.stop-product-card>div{padding:22px}.stop-product-card h3{font-size:1.4rem;margin-top:0}.stop-product-card p{font-size:.94rem;line-height:1.6}.stop-product-card a{font-weight:800}.stop-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}.stop-photo-grid figure{margin:0;border-radius:16px;overflow:hidden}.stop-photo-grid img{display:block;width:100%;height:250px;object-fit:cover}.stop-tour-title{margin-top:42px;font-size:1.7rem}.stop-tour,.stop-map{border-radius:18px;overflow:hidden;background:#222}.stop-tour iframe,.stop-map iframe{border:0;display:block;width:100%;height:540px}.stop-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}.stop-post-grid article{background:#fff;border-radius:18px;padding:26px}.stop-post-grid h3{font-size:1.45rem;line-height:1.3}.stop-small{font-size:.85rem;line-height:1.6}.stop-footer{background:#070707;color:#ddd;padding:60px 0}.stop-footer a{color:#fff}.stop-footer h2{font-size:2.3rem;color:#fff}.stop-footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.stop-footer-grid p{line-height:1.8}.stop-mobile-bar{display:none}.wfkc-inventory button,.wfkc-inventory input,.wfkc-inventory-actions a{border-radius:999px}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #e54858;outline-offset:4px}
@media(max-width:1000px){.stop-header{gap:14px}.stop-header>.stop-btn{display:none}.stop-product-grid{grid-template-columns:repeat(2,1fr)}.stop-photo-grid{grid-template-columns:repeat(2,1fr)}.stop-brand img{width:190px}}
@media(max-width:700px){body{padding-bottom:160px}.sh-shell{width:calc(100% - 32px)}.stop-top span{display:none}.stop-header{flex-direction:column;gap:8px;padding-block:10px}.stop-header nav{justify-content:center;gap:16px}.stop-header nav a{font-size:.82rem}.stop-brand img{width:180px}.stop-section{padding:42px 0}.sh-hero-inner{display:block;padding-block:44px}.sh-hero h1{font-size:clamp(2.8rem,12vw,4.5rem)}.stop-choice{margin-top:32px}.stop-location-grid,.stop-post-grid,.stop-footer-grid{grid-template-columns:1fr}.stop-location-body{padding:22px}.stop-store-exterior{height:240px}.stop-inventory-card{padding:24px 18px}.stop-search-row{flex-direction:column}.stop-product-grid{gap:12px}.stop-product-card>div{padding:16px}.stop-product-card h3{font-size:1.2rem}.stop-product-card>img{height:160px}.stop-photo-grid img{height:180px}.stop-tour iframe{height:360px}.stop-map iframe{height:400px}.stop-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:block;background:#101010;color:#fff;border-top:1px solid #333;padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.stop-bar-choice{display:flex;align-items:center;gap:10px}.stop-bar-choice label{margin:0;white-space:nowrap}.stop-bar-choice select{min-height:40px;padding-block:6px}.stop-mobile-bar .stop-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:8px}.stop-mobile-bar .stop-btn{padding:10px 6px;font-size:.78rem;min-height:44px}.stop-mobile-bar [data-stop-phone-label]{display:none}.stop-footer h2{font-size:1.9rem}}
@media(max-width:380px){.stop-product-grid{grid-template-columns:1fr}.stop-header nav{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* 1.0.1: supplied two-shop hero; preserve both halves on narrow screens. */
.stop-hero-photo{display:none}
@media(max-width:700px){.sh-hero{background:#0b0b0b}.stop-hero-photo{display:block}.stop-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:2/1}.sh-hero-inner{padding-top:32px}}

/* 1.0.2: hero randomization uses a CSS variable; mobile remains an actual image. */
.sh-hero{background-image:linear-gradient(90deg,rgba(5,5,5,.94) 0%,rgba(8,8,8,.8) 44%,rgba(8,8,8,.35) 72%,rgba(8,8,8,.18) 100%),var(--stop-hero-image,url('assets/images/location119-interior.jpg'))}
.stop-photo-grid>*{min-width:0}.stop-dark .sh-section-title{overflow-wrap:anywhere;font-size:clamp(2rem,4vw,3.7rem)}
@media(max-width:700px){.sh-hero{background-image:none}.stop-hero-photo img{aspect-ratio:auto;max-height:360px;object-fit:contain;background:#111}}

/* Overland Park: logo red and yellow; direct location actions on mobile. */
:root{--sh-red:#df1729;--sh-red-dark:#ac1020;--stop-yellow:#fff000}
body{padding-bottom:0}.sh-header{position:relative}.stop-brand img{width:175px;max-height:88px;object-fit:contain}.stop-header{padding-block:4px}.stop-choice .sh-eyebrow{color:var(--stop-yellow)}.stop-location-body h3{margin-top:0}.stop-tour-map{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.stop-tour-map h3{font-size:1.25rem}.stop-tour-map iframe{height:390px}.stop-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stop-faq details{padding:20px 0;border-bottom:1px solid #ddd}.stop-faq summary{font-size:1.1rem;font-weight:800;cursor:pointer}.stop-quick-answer{padding:28px;background:#f5f3ef;border-left:5px solid var(--sh-red);border-radius:12px;margin-top:28px}.stop-quick-answer h2{font-size:1.3rem;margin-top:0}.stop-footer-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px}.stop-footer .stop-brand img{width:210px}.stop-gallery-caption{margin:12px 0;font-size:.9rem}.stop-tour-map .stop-btn{margin-top:12px}section{scroll-margin-top:24px}.sh-home section p{line-height:1.65}.stop-brand:focus-visible{outline-color:var(--stop-yellow)}
@media(max-width:700px){body{padding-bottom:150px}.stop-header{flex-direction:row;flex-wrap:wrap;justify-content:space-between;padding-block:6px}.stop-brand img{width:135px;max-height:65px}.stop-header nav{max-width:195px;gap:10px;justify-content:flex-end}.stop-header nav a{font-size:.76rem;min-height:24px;display:flex;align-items:center}.stop-hero-photo img{height:150px;object-fit:cover;width:100%}.sh-hero-inner{display:flex;flex-direction:column;gap:26px;padding:24px 0 38px}.stop-choice{order:-1;margin:0;width:100%;box-sizing:border-box;padding:20px}.stop-choice h2{font-size:1.25rem;margin:14px 0 6px!important}.stop-choice p{font-size:.88rem}.stop-choice .stop-actions{display:flex;flex-wrap:wrap;margin-top:14px;gap:7px}.stop-choice .stop-btn{font-size:.78rem;padding:10px 12px}.sh-hero h1{font-size:2.8rem;line-height:1}.sh-hero-copy{font-size:1rem}.stop-tour-map{grid-template-columns:1fr}.stop-tour-map iframe{height:330px}.stop-photo-grid{grid-template-columns:1fr}.stop-photo-grid img{height:auto;aspect-ratio:4/3}.stop-quick-answer{padding:20px}.stop-top{font-size:.7rem}.stop-location-body .stop-actions{display:grid;grid-template-columns:1fr 1fr}.stop-location-body .stop-actions a:last-child{grid-column:1/-1}}
