#stores #content.page-stores{padding:0;margin:0;border:0;background:transparent;box-shadow:none}
#stores #wrapper{overflow-x:clip}
#stores .shops-bleed{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
#stores .shops-wrap{max-width:1140px;margin:0 auto;padding-left:15px;padding-right:15px}
#stores .shops-intro{background:#0E1C2F;color:#fff;position:relative;overflow:hidden}
#stores .shops-intro::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 85% 40%,rgba(90,173,212,.22),transparent 70%)}
#stores .shops-intro .shops-wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:56px;padding-bottom:56px}
#stores .shops-intro h1{margin:0;font-weight:900;text-transform:uppercase;font-size:clamp(40px,5.4vw,68px);line-height:.98;letter-spacing:-.02em;color:#fff}
#stores .shops-intro h1 span{color:#5AADD4}
#stores .shops-intro .lead{margin:18px 0 32px;max-width:46ch;font-size:16.5px;line-height:1.65;color:#C9D6E6}
#stores .shop-index{list-style:none;margin:0;padding:0}
#stores .shop-index a{display:grid;grid-template-columns:28px 1fr auto 20px;align-items:center;gap:14px;padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.18);text-decoration:none;color:#fff}
#stores .shop-index li:first-child a{border-top:1px solid rgba(255,255,255,.18)}
#stores .shop-index a:hover{background:rgba(255,255,255,.05)}
#stores .shop-index .num{font-size:12px;font-weight:800;color:#0E1C2F;background:#FFC700;width:24px;height:24px;border-radius:50%;display:grid;place-items:center}
#stores .shop-index .name{font-weight:800;text-transform:uppercase;font-size:15px;letter-spacing:.02em}
#stores .shop-index .city{font-size:13px;color:#C5D3E2;margin-left:10px;font-weight:500;text-transform:none;letter-spacing:0}
#stores .shop-index .state{font-size:12px;font-weight:700;color:#C5D3E2;white-space:nowrap}
#stores .shop-index .state:empty{display:none}
#stores .shop-index .state.is-open{color:#B6E7C0}
#stores .shop-index .go{color:#C5D3E2}
#stores .shop-map{width:100%;max-width:520px;justify-self:center}
#stores .shop-map .land{fill:#17304F;stroke:rgba(90,173,212,.7);stroke-width:1.4;stroke-linejoin:round}
#stores .shop-map .pin{cursor:pointer}
#stores .shop-map .halo{fill:rgba(255,199,0,.18)}
#stores .shop-map .dot{fill:#FFC700;stroke:#0E1C2F;stroke-width:2.5}
#stores .shop-map text{fill:#fff;font:800 13px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.04em}
#stores .shop-map text.n{fill:#0E1C2F;font-size:10px;letter-spacing:0}
#stores .shop-map .pin:hover .dot{fill:#fff}
#stores .shop-map .pin:hover text{fill:#FFC700}
#stores .shop-map .pin:hover text.n{fill:#0E1C2F}
#stores .shops-list{padding:72px 0 8px}
#stores .shop{scroll-margin-top:24px}
#stores .shop + .shop{margin-top:72px;padding-top:72px;border-top:1px solid #E6E6E6}
#stores .banner{position:relative;border-radius:12px;overflow:hidden;background:#0E1C2F;aspect-ratio:1110/280;min-height:200px}
#stores .banner img{width:100%;height:100%;object-fit:cover}
#stores .banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,28,47,.82) 0%,rgba(14,28,47,.45) 45%,rgba(14,28,47,0) 75%)}
#stores .banner-txt{position:absolute;z-index:1;left:36px;bottom:30px;right:200px;color:#fff}
#stores .banner h2{margin:0;font-weight:900;text-transform:uppercase;font-size:clamp(30px,4vw,48px);line-height:1;letter-spacing:-.01em;color:#fff}
#stores .banner p{margin:8px 0 0;font-weight:600;font-size:14px;color:#E4ECF4}
#stores .status{position:absolute;z-index:1;top:22px;right:22px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:#3d3d3d;font-size:12.5px;font-weight:700;border-radius:999px;padding:8px 14px}
#stores .status:empty{display:none}
#stores .status::before{content:"";width:8px;height:8px;border-radius:50%;background:#737373}
#stores .status.is-open{color:#1F6B2A}
#stores .status.is-open::before{background:#1F6B2A}
#stores .shop-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:44px;margin-top:36px}
#stores .shop-body.has-about{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) minmax(0,1.15fr)}
#stores .blk-title{margin:0 0 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#236C92}
#stores .shop address{font-style:normal;font-size:15.5px;line-height:1.6;font-weight:500;color:#212121}
#stores .tel{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-weight:700;font-size:16px;text-decoration:none;color:#212121;font-variant-numeric:tabular-nums}
#stores .tel:hover{color:#7A6352}
#stores .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
#stores .shop-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:13.5px;text-transform:uppercase;letter-spacing:.03em;border-radius:8px;padding:12px 18px;text-decoration:none;border:1.5px solid #7A6352}
#stores .shop-btn-primary{background:#7A6352;color:#fff}
#stores .shop-btn-primary:hover{background:#5E4B3D;border-color:#5E4B3D;color:#fff}
#stores .shop-btn-ghost{background:#fff;color:#7A6352}
#stores .shop-btn-ghost:hover{background:#F3EEE9;color:#7A6352}
#stores .more{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-size:13.5px;font-weight:700;color:#236C92;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
#stores .more:hover{color:#0E1C2F}
#stores .about p{margin:0;color:#3d3d3d;max-width:62ch}
#stores .facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:16px 0 0;padding:0}
#stores .facts li{font-size:12.5px;font-weight:700;background:#F3EEE9;color:#5E4B3D;border-radius:999px;padding:6px 12px}
#stores .hours{background:#F6F6F6;border-radius:12px;padding:22px 22px 18px}
#stores .hours table{width:100%;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}
#stores .hours th{text-align:left;font-weight:600;padding:8px 12px;width:92px;color:#3d3d3d}
#stores .hours td{padding:8px 12px;text-align:right;color:#3d3d3d}
#stores .hours tr.closed td{color:#555}
#stores .hours tr.is-today{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}
#stores .hours tr.is-today th,#stores .hours tr.is-today td{color:#212121;font-weight:800}
#stores .hours tr.is-today th{border-radius:8px 0 0 8px}
#stores .hours tr.is-today td{border-radius:0 8px 8px 0}
#stores .hours .note{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:#6B4200;background:#FFF4CC;border-radius:6px;padding:8px 12px}
#stores .shops-faq{padding:72px 0 8px}
#stores .shops-faq h2{margin:0 0 8px;font-weight:900;text-transform:uppercase;font-size:clamp(26px,3vw,36px);letter-spacing:-.01em;color:#0E1C2F}
#stores .shops-faq > p{margin:0 0 28px;max-width:62ch;color:#3d3d3d}
#stores .faq-item{padding:22px 0;border-top:1px solid #E6E6E6}
#stores .faq-item:last-child{border-bottom:1px solid #E6E6E6}
#stores .faq-item h3{margin:0 0 8px;font-size:18px;font-weight:800;color:#212121;text-transform:none;letter-spacing:0}
#stores .faq-item p{margin:0;max-width:68ch;color:#3d3d3d}
#stores .shops-online{margin-top:72px;background:#F3EEE9}
#stores .shops-online .shops-wrap{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:44px;padding-bottom:44px}
#stores .shops-online h2{margin:0;font-weight:900;text-transform:uppercase;font-size:clamp(22px,2.4vw,28px);letter-spacing:.01em;color:#5E4B3D}
#stores .shops-online p{margin:6px 0 0;color:#4a3d33}
#stores svg.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:1080px){
  #stores .shop-body.has-about{grid-template-columns:1fr 1fr}
  #stores .about{grid-column:1/-1}
}
@media (max-width:860px){
  #stores .shops-intro .shops-wrap{grid-template-columns:1fr;gap:28px;padding-top:40px;padding-bottom:40px}
  #stores .shop-map{max-width:340px}
}
@media (max-width:620px){
  #stores .shop-index a{grid-template-columns:28px 1fr 20px}
  #stores .shop-index .state{display:none}
  #stores .shop-index .city{display:block;margin:2px 0 0}
  #stores .shops-list{padding-top:48px}
  #stores .shop + .shop{margin-top:48px;padding-top:48px}
  #stores .banner{aspect-ratio:auto;height:220px}
  #stores .banner::after{background:linear-gradient(0deg,rgba(14,28,47,.88) 0%,rgba(14,28,47,.25) 70%)}
  #stores .banner-txt{left:20px;bottom:20px;right:16px}
  #stores .status{top:14px;right:14px}
  #stores .shop-body,#stores .shop-body.has-about{grid-template-columns:1fr;gap:32px;margin-top:24px}
  #stores .about{order:2}
  #stores .actions .shop-btn{flex:1 1 140px}
  #stores .shops-online .shops-wrap{flex-direction:column;align-items:flex-start}
  #stores .hours{padding:16px 12px 14px}
  #stores .hours th{width:68px;padding:7px 4px 7px 8px}
  #stores .hours td{padding:7px 8px 7px 4px;font-size:12px;white-space:nowrap}
}
