:root{
  --maroon:#5b0f0f; --maroon-2:#541112; --maroon-3:#4a0f10;
  --text:#ffffff; --text-dim:#dcbcbc; --outline:#ffffff22; --outline-2:#ffffff33; --accent:#18c27e;
}
.irepair-hours-wrap{background:var(--maroon); color:var(--text); padding:0 0 36px}
.irepair-hours-wrap .container{max-width:1100px; margin:0 auto; padding:0 16px}
.page-title{font-weight:800; font-size:1.6rem; margin:16px 0}
.irepair-hero{background:var(--maroon); padding:18px 0 22px}
.hero-inner{display:grid; grid-template-columns:1.25fr .95fr; gap:28px; align-items:center; max-width:1100px; margin:0 auto; padding:0 16px}
.hero-left .chip{display:inline-block; padding:6px 10px; border-radius:999px; background:#ffffff10; border:1px solid var(--outline); font-weight:700; font-size:.85rem; letter-spacing:.3px}
.hero-title{font-size:3rem; font-weight:900; letter-spacing:.2px; margin:12px 0; color:var(--text)}
.hero-sub{color:var(--text-dim); font-size:1.05rem; max-width:56ch}
.hero-cta{display:flex; gap:12px; margin-top:14px; flex-wrap:wrap}
.btn{background:#ffffff15; border:1px solid var(--outline-2); color:var(--text); padding:10px 14px; border-radius:10px; text-decoration:none; display:inline-block; font-weight:800}
.btn.primary{background:#fff; color:var(--maroon); border:0}
.btn.outline{background:#ffffff12; border:1px solid var(--outline-2)}
.hero-badges{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}
.tag{background:#ffffff12; border:1px solid var(--outline); padding:6px 10px; border-radius:999px; font-size:.9rem}
.hero-card{position:relative; background:linear-gradient(180deg,var(--maroon-2),var(--maroon-3)); border:1px solid var(--outline); border-radius:16px; padding:18px; box-shadow:0 10px 36px rgba(0,0,0,.25)}
.hero-card h3{margin:0 0 8px; text-align:center}
.hero-card .why{list-style:none; margin:0 0 12px; padding:0}
.hero-card .why li{display:flex; gap:10px; align-items:center; padding:6px 0}
.btn.white{display:block; text-align:center; margin-top:8px; background:#fff; color:var(--maroon); font-weight:800}
.ribbon{position:absolute; right:-8px; top:8px; background:#8e2b2b; color:#fff; padding:8px 12px; border-radius:10px; font-size:.85rem; transform:rotate(8deg); opacity:.9}
.hours-card{position:relative; background:linear-gradient(180deg,var(--maroon-2),var(--maroon-3)); border:1px solid var(--outline); border-radius:14px; padding:18px 18px 14px; margin-bottom:20px; box-shadow:0 6px 30px rgba(0,0,0,.22)}
.hours-head{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px}
.hours-head strong{font-size:1.1rem; font-weight:800}
.badge{font-size:.85rem; padding:4px 10px; border-radius:999px; border:1px solid var(--outline-2); background:#ffffff12; white-space:nowrap}
.badge.open{border-color:var(--accent); background:rgba(24,194,126,.22)}
.badge.closed{border-color:#ff6b6b; background:rgba(255,107,107,.22)}
.hours-sub{opacity:.9; margin-bottom:6px}
.hours-list{list-style:none; margin:0; padding:0}
.hours-list li{display:grid; grid-template-columns:1fr auto; align-items:center; gap:16px; padding:6px 8px; border-radius:8px}
.hours-list li + li{margin-top:2px}
.hours-list li.today{background:#ffffff10; position:relative; font-weight:700}
.hours-switch{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap}
.hours-switch button{background:#ffffff15;border:1px solid var(--outline-2);color:var(--text);padding:8px 14px;border-radius:999px;cursor:pointer;font-weight:700;letter-spacing:.3px}
.hours-switch button.active{background:#fff;color:var(--maroon)}
.quick-actions{display:flex; gap:10px; flex-wrap:wrap; margin:10px 0 18px}
.quick-actions .btn{background:#ffffff15; border:1px solid #ffffff33; font-weight:800}
.locations-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:8px}
.loc-card{background:linear-gradient(180deg,var(--maroon-2),var(--maroon-3)); border:1px solid var(--outline); border-radius:14px; padding:14px 14px 16px; box-shadow:0 6px 26px rgba(0,0,0,.2)}
.loc-head{display:flex; align-items:center; gap:10px; margin-bottom:8px}
.loc-pin{font-size:1.15rem}
.loc-title{font-weight:800}
.loc-address{color:var(--text-dim); font-size:.95rem}
.loc-map iframe{width:100%; height:260px; border:0; border-radius:10px}
.loc-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:10px}
.irepair-footer{padding:24px 0 30px}
.foot-grid{display:grid; grid-template-columns:1.2fr 1fr .8fr; gap:24px; align-items:flex-start}
.brand-logo{font-weight:900; font-size:1.2rem}
.dim{color:var(--text-dim)}
.socials{display:flex; gap:16px; margin-top:10px}
.foot-title{font-weight:800; margin-bottom:6px}
.nearby-list{list-style:none; margin:6px 0 8px; padding:0}
.nearby-list li{display:flex; gap:10px; align-items:center; padding:4px 0}
.nearby-list .icon{width:18px; text-align:center; opacity:.9}
.foot-switch{margin-top:8px; display:flex; gap:8px}
.foot-switch button{background:#ffffff15; border:1px solid var(--outline-2); color:#fff; padding:6px 10px; border-radius:999px; cursor:pointer}
.foot-switch button.active{background:#fff; color:#5b0f0f}
.foot-legal a{color:#fff; text-decoration:none}
@media (max-width: 980px){ .hero-inner{grid-template-columns:1fr} .locations-grid{grid-template-columns:1fr} .foot-grid{grid-template-columns:1fr} }

/* ===== Full Width with Theme Header/Footer overrides ===== */
body[class*="irepair-hours-theme"] .site,
body[class*="irepair-hours-theme"] .site-content,
body[class*="irepair-hours-theme"] .content-area,
body[class*="irepair-hours-theme"] .entry-content,
body[class*="irepair-hours-theme"] .container,
body[class*="irepair-hours-theme"] .wrap {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 auto !important;
}
.irepair-hours-theme-wrap { width: 100%; max-width: 100vw; overflow-x: hidden; }
body[class*="irepair-hours-theme"] .entry-header,
body[class*="irepair-hours-theme"] .page-title,
body[class*="irepair-hours-theme"] .breadcrumbs { display: none !important; }


/* Scope full-width tweaks only when the theme-based template is active */
body.irepair-hours-theme .site,
body.irepair-hours-theme .site-content,
body.irepair-hours-theme .content-area,
body.irepair-hours-theme .entry-content,


body.irepair-hours-theme .entry-header,
body.irepair-hours-theme .page-title,
body.irepair-hours-theme .breadcrumbs {
  display: none !important;
}

.irepair-hours-theme .irepair-hours-theme-wrap {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}


/* === Safer full-width layout for theme template (v3) === */
/* Stretch only the theme outer wrappers; keep our inner layout at 1100px */
body.irepair-hours-theme .site,
body.irepair-hours-theme .site-content,
body.irepair-hours-theme .content-area,
body.irepair-hours-theme .wrap {
  max-width: 100% !important;
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Keep the Hours content nicely centered */
body.irepair-hours-theme .irepair-hours-wrap .container,
body.irepair-hours-theme .irepair-hours-wrap .hero-inner {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}
