*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#232323;font:400 17px/1.6 "Source Sans 3",Arial,sans-serif;-webkit-text-size-adjust:100%}
img{display:block;max-width:100%;height:auto}
a{color:#7d1428}
h1,h2,h3{margin:0;line-height:1.15;color:#1a1a1a;font-weight:700}
h1{font-size:clamp(32px,7.5vw,50px)}
h2{font-size:clamp(25px,5.5vw,34px);margin-bottom:12px}
h3{font-size:20px;margin-bottom:6px}
p{margin:0 0 12px}
.wrap{max-width:1100px;margin:0 auto;padding:0 18px}
.concept{background:#fff3c4;color:#4a3b00;font-size:13px;text-align:center;padding:6px 12px}
.concept a{color:#4a3b00}

/* header */
.site-head{background:#fff;border-bottom:1px solid #e8e2e3;position:relative;z-index:10}
.site-head .wrap{display:flex;align-items:center;gap:14px;padding-top:8px;padding-bottom:8px}
.brand img{height:54px;width:auto}
.menu-btn{margin-left:auto;background:none;border:1px solid #ccc;border-radius:4px;font:600 15px "Source Sans 3",Arial,sans-serif;padding:8px 12px;cursor:pointer;color:#333}
.site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid #e8e2e3;padding:6px 18px 14px}
.site-nav.open{display:block}
.site-nav a{display:block;padding:10px 0;color:#2a2a2a;text-decoration:none;font-weight:600;border-bottom:1px solid #f1eced}
.site-nav a.on{color:#7d1428}
.head-tel{display:none;color:#7d1428;font-weight:700;font-size:19px;text-decoration:none;white-space:nowrap}

/* buttons */
.btn{display:inline-block;text-decoration:none;font:700 17px "Source Sans 3",Arial,sans-serif;padding:12px 20px;border-radius:4px;border:2px solid transparent;cursor:pointer}
.btn-red{background:#7d1428;color:#fff}
.btn-white{background:#fff;color:#7d1428}
.btn-line{border-color:#fff;color:#fff}
.btn-dark{background:#1d1d1d;color:#fff}

/* hero */
.hero{background:#7d1428;color:#fff}
.hero .wrap{display:grid;gap:26px;padding-top:36px;padding-bottom:40px}
.hero h1{color:#fff}
.hero .lead{font-size:19px;color:#f4e3e6;margin:14px 0 20px;max-width:32em}
.hero .btns{display:flex;flex-wrap:wrap;gap:10px}
.hero .facts{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-size:15px;color:#f0d7dc}
.hero .facts b{color:#fff}
.page-hero{background:#7d1428;color:#fff}
.page-hero .wrap{padding-top:34px;padding-bottom:34px}
.page-hero h1{color:#fff}
.page-hero p{color:#f4e3e6;font-size:19px;margin:12px 0 0;max-width:36em}

/* forms */
.panel{background:#fff;color:#232323;border-radius:6px;padding:18px;display:grid;gap:11px}
.hero .panel{box-shadow:0 12px 34px rgba(0,0,0,.28)}
.panel.bordered{border:1px solid #ddd}
.panel h2,.panel h3{margin:0}
.tabs{display:flex;gap:6px;flex-wrap:wrap}
.tabs button{font:600 15px "Source Sans 3",Arial,sans-serif;padding:7px 12px;border-radius:4px;border:1px solid #d9cfd1;background:#f7f2f3;color:#4a2a31;cursor:pointer}
.tabs button[aria-pressed=true]{background:#7d1428;border-color:#7d1428;color:#fff}
label{display:grid;gap:3px;font-size:14px;font-weight:600;color:#444}
input,select,textarea{font:inherit;font-size:16px;padding:10px;border:1px solid #c9c2c3;border-radius:4px;width:100%;min-width:0;background:#fff;color:#222}
textarea{min-height:80px;resize:vertical}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check{display:flex;align-items:center;gap:8px;font-weight:600}
.check input{width:18px;height:18px}
.panel button.send{font:700 17px "Source Sans 3",Arial,sans-serif;background:#7d1428;color:#fff;border:0;border-radius:4px;padding:13px;cursor:pointer}
.note{font-size:13px;color:#666;margin:0}
[hidden]{display:none!important}

/* sections */
.sec{padding:46px 0 0}
.sec-grey{background:#f6f2f3;padding:40px 0;margin-top:46px}
.tiles{display:grid;gap:16px}
.tile{display:block;text-decoration:none;color:inherit;border:1px solid #e6dfe0;border-radius:6px;overflow:hidden;background:#fff}
.tile img{width:100%;aspect-ratio:2/1;object-fit:cover}
.tile div{padding:14px 16px}
.tile p{margin:0;color:#555;font-size:16px}
.tile span{display:inline-block;margin-top:8px;color:#7d1428;font-weight:700}
.split{display:grid;gap:22px;align-items:center}
.split img{width:100%;border-radius:6px;aspect-ratio:16/10;object-fit:cover}
.list{margin:0 0 12px;padding-left:20px}
.list li{margin-bottom:4px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.stats div{border-left:3px solid #7d1428;padding-left:12px}
.stats b{display:block;font-size:28px;line-height:1.1;color:#7d1428}
.stats span{font-size:15px;color:#444}
.quote{border-left:3px solid #7d1428;padding:4px 0 4px 16px;margin:0}
.quote p{font-size:20px;margin:0 0 6px}
.quote cite{font-style:normal;color:#666;font-size:15px}
.appband{background:#1d1d1d;color:#fff;padding:34px 0;margin-top:46px}
.appband h2{color:#fff}
.appband .wrap{display:grid;gap:14px;align-items:center}
.appband p{color:#ddd;margin:0}
.stores{display:flex;flex-wrap:wrap;gap:10px}
.store{display:inline-block;background:#fff;color:#111;text-decoration:none;font-weight:700;padding:9px 16px;border-radius:6px;line-height:1.2}
.store small{display:block;font-size:11px;font-weight:400;color:#555}
.table{width:100%;border-collapse:collapse;font-size:16px}
.table td,.table th{text-align:left;padding:9px 8px;border-bottom:1px solid #e6dfe0;vertical-align:top}
.table th{background:#f6f2f3}
.faq details{border-bottom:1px solid #e6dfe0;padding:12px 0}
.faq summary{font-weight:700;cursor:pointer}
.faq details p{margin:8px 0 0}

/* footer */
.site-foot{background:#1a1a1a;color:#cfcfcf;margin-top:50px;padding:36px 0 20px;font-size:15px}
.site-foot .cols{display:grid;gap:24px}
.site-foot h3{color:#fff;font-size:17px}
.site-foot a{color:#fff;text-decoration:none}
.site-foot p{margin:0 0 6px}
.site-foot .small{border-top:1px solid #333;margin-top:24px;padding-top:14px;font-size:13px;color:#999}
.map iframe{display:block;width:100%;height:300px;border:0}

@media(min-width:880px){
  .menu-btn{display:none}
  .site-head .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:24px}
  .site-nav{display:flex!important;position:static;border:0;padding:0;margin:0;gap:26px;justify-content:center;align-items:center}
  .site-nav a{border:0;padding:0}
  .head-tel{display:block;margin:0}
  .hero .wrap{grid-template-columns:1.15fr 1fr;align-items:center;padding-top:56px;padding-bottom:60px}
  .tiles{grid-template-columns:repeat(4,1fr)}
  .tile img{aspect-ratio:16/10}
  .split{grid-template-columns:1fr 1fr;gap:44px}
  .split.flip > img{order:2}
  .stats{grid-template-columns:repeat(4,1fr)}
  .appband .wrap{grid-template-columns:1.5fr 1fr}
  .appband .stores{justify-content:flex-end}
  .site-foot .cols{grid-template-columns:1.2fr 1fr 1fr 1fr}
  .cols2{display:grid;grid-template-columns:1fr 1fr;gap:44px}
}
