/*
Theme Name: Boldmedia
Description: Lightweight signage and branding theme for Boldmedia Group sites. Poppins, accessible, mobile-first.
Version: 0.1.0
Author: Boldmedia Group
Requires PHP: 7.4
*/
:root{--red:#EC282E;--red-d:#C4161C;--ink:#1D1D1B;--grey:#5E5E5C;--grey-l:#F2F2F0;--line:#E2E2DE;--yellow:#FFC20E;--orange:#F7941D;--white:#fff;--r:10px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--white);line-height:1.65;font-size:16px}
img{max-width:100%;height:auto;display:block}a{color:var(--red-d)}a:hover{color:var(--red)}
h1,h2,h3,h4{line-height:1.15;margin:0 0 .6em;font-weight:800;letter-spacing:-.01em}h1{font-size:clamp(32px,5.5vw,56px)}h2{font-size:clamp(26px,3.6vw,38px)}h3{font-size:20px;font-weight:700}
p{margin:0 0 1em}.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:8px 12px}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:8px;font-weight:600;text-decoration:none;border:2px solid transparent;cursor:pointer;font:600 16px Poppins,sans-serif;transition:background .15s}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-d);color:#fff}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000;color:#fff}
.btn-ghost{border-color:currentColor;color:inherit;background:transparent}
.btn-yellow{background:var(--yellow);color:var(--ink)}.btn-yellow:hover{background:#ffd34d;color:var(--ink)}
/* top bar + header */
.topbar{background:var(--ink);color:#d9d9d6;font-size:14px}.topbar .wrap{display:flex;gap:18px;justify-content:flex-end;padding-top:6px;padding-bottom:6px;flex-wrap:wrap}.topbar a{color:#fff;text-decoration:none}@media(max-width:700px){.topbar .wrap{justify-content:center;gap:12px;font-size:13px}.topbar a[href^=mailto]{display:none}}
.hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.logo img{height:46px;width:auto}.logo-text{font-weight:800;font-size:22px;text-decoration:none;color:var(--ink)}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}.nav a{display:block;padding:10px 12px;color:var(--ink);text-decoration:none;font-weight:500;border-radius:6px}.nav a:hover{background:var(--grey-l)}
.hdr-cta{display:flex;gap:10px;align-items:center}.menu-btn{display:none;background:none;border:0;padding:10px;cursor:pointer}
.menu-btn span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0}
@media(max-width:980px){.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line)}.nav.open{display:block}.nav ul{flex-direction:column;padding:8px 16px 16px}.menu-btn{display:block}.hdr-cta .btn{padding:10px 14px;font-size:14px}}
/* hero */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding-top:72px;padding-bottom:72px}
.hero .eyebrow{display:inline-block;background:var(--red);color:#fff;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:4px;margin-bottom:18px}
.hero p.lead{font-size:19px;color:#d9d9d6;max-width:560px}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero-img{border-radius:var(--r);overflow:hidden;border:4px solid var(--yellow)}
.hero::after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;background:var(--orange);opacity:.15;border-radius:50%}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr;padding-top:48px;padding-bottom:48px}}
/* sections */
.sec{padding:72px 0}.sec-grey{background:var(--grey-l)}.sec-dark{background:var(--ink);color:#fff}.sec-red{background:var(--red);color:#fff}
.sec-head{max-width:720px;margin-bottom:36px}.sec-head p{color:var(--grey);font-size:18px}.sec-dark .sec-head p{color:#cfcfcc}
.kicker{color:var(--red);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin-bottom:8px}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:transform .15s,border-color .15s}
.card:hover{transform:translateY(-3px);border-color:var(--red);color:var(--ink)}.card img{aspect-ratio:16/10;object-fit:cover;width:100%}
.card .in{padding:18px 20px 22px}.card h3{margin-bottom:6px}.card p{color:var(--grey);font-size:15px;margin:0}
.card .more{margin-top:12px;color:var(--red-d);font-weight:600;font-size:15px}
.steps{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));counter-reset:s}
.step{background:#fff;border-radius:var(--r);padding:22px;border-top:5px solid var(--yellow)}.step:nth-child(2){border-color:var(--orange)}.step:nth-child(3){border-color:var(--red)}.step:nth-child(4){border-color:var(--ink)}
.step b{display:block;font-size:13px;color:var(--grey);text-transform:uppercase;letter-spacing:.06em}
.ctas{display:flex;gap:12px;flex-wrap:wrap}
.band{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
/* content */
.page-hero{background:var(--ink);color:#fff;padding:52px 0}.page-hero p{color:#cfcfcc;max-width:700px;font-size:18px}
.crumbs{font-size:14px;color:#bdbdba;margin-bottom:12px}.crumbs a{color:#fff}
.content{padding:48px 0}.content .wrap{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px}
.entry h2{margin-top:1.2em}.entry ul{padding-left:1.2em}.entry li{margin-bottom:.35em}
.side .box{background:var(--grey-l);border-radius:var(--r);padding:22px;position:sticky;top:96px}.side .box h3{margin-bottom:10px}
@media(max-width:900px){.content .wrap{grid-template-columns:1fr}}
.illus{font-size:12px;color:var(--grey);margin-top:6px}
/* quote form */
.bq{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px}.bq h3{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.bq h3:first-of-type{border:0;margin-top:0;padding-top:0}
.bq-g{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.bq-f{margin-bottom:12px}.bq label{display:block;font-weight:500;font-size:14px;margin-bottom:6px}.bq label span{color:var(--grey);font-weight:400}
.bq input,.bq select,.bq textarea{width:100%;padding:12px;border:1px solid #c9c9c5;border-radius:8px;font:15px Poppins,sans-serif;background:#fff;color:var(--ink)}
.bq input:focus,.bq select:focus,.bq textarea:focus{border-color:var(--red);outline:2px solid var(--red);outline-offset:0}
.bq-chk{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;color:var(--grey)}.bq-chk input{width:auto;margin-top:5px}
.bq-hp{position:absolute;left:-9999px}.bq-note{font-size:13px;color:var(--grey)}.bq-err{background:#fdeaea;color:#8d1015;padding:12px 14px;border-radius:8px;font-weight:500}
/* footer */
.ftr{background:#111110;color:#cfcfcc;padding:56px 0 24px;font-size:15px}.ftr a{color:#fff;text-decoration:none}.ftr a:hover{color:var(--yellow)}
.ftr .cols{display:grid;gap:28px;grid-template-columns:1.4fr 1fr 1fr 1fr}.ftr h4{color:#fff;font-size:16px;margin-bottom:12px}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin-bottom:8px}
.ftr .chip{display:inline-block;background:#fff;padding:10px 14px;border-radius:8px;margin-bottom:14px}.ftr .chip img{height:38px;width:auto}
.ftr .base{border-top:1px solid #2b2b29;margin-top:36px;padding-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#9b9b98}
@media(max-width:860px){.ftr .cols{grid-template-columns:1fr 1fr}}
.wa-float{position:fixed;right:16px;bottom:16px;z-index:60;background:#25D366;color:#fff;border-radius:50px;padding:12px 18px;font-weight:600;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.2)}.wa-float:hover{color:#fff}
/* mega menu v3 */
.nav .mm-root{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.mm{position:static;display:flex;align-items:center}.mm-x{display:none}
.mm-t:after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);vertical-align:3px;opacity:.6;transition:transform .2s}
.mm:hover>.mm-t,.mm:focus-within>.mm-t{color:var(--red-d);background:var(--grey-l)}
.mm:hover>.mm-t:after{transform:rotate(225deg);vertical-align:-1px}
.mm-p{visibility:hidden;opacity:0;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility 0s .15s;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);box-shadow:0 24px 48px rgba(0,0,0,.14);z-index:60;padding:28px 0 32px}
.mm:hover>.mm-p,.mm:focus-within>.mm-p{visibility:visible;opacity:1;transform:none;transition-delay:.08s}
.nav .mm-p ul{display:block;list-style:none;margin:0;padding:0;gap:0}.nav .mm-p a{display:block;padding:5px 0;font-weight:400;font-size:14px;line-height:1.35;color:var(--ink);border-radius:0;white-space:normal}.nav .mm-p a:hover{background:none;color:var(--red)}
.hdr .mm-p .wrap{display:block;min-height:0}.hdr .mm-p .mm-in{display:grid;grid-template-columns:1fr 260px;gap:36px;align-items:start}
.mm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 32px}
.mm-g h4{margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--yellow);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.nav .mm-p a.mm-more{margin-top:4px;font-size:13px;font-weight:600;color:var(--red-d)}
.mm-cta{background:var(--ink);color:#fff;border-radius:var(--r);padding:22px}.mm-cta strong{display:block;margin:0 0 8px;font-size:16px;color:var(--yellow)}.mm-cta p{font-size:14px;line-height:1.5;color:#d9d9d6;margin:0 0 16px}
.nav .mm-cta .btn{display:inline-block;color:#fff;padding:11px 18px;font-weight:600}.nav .mm-cta a.mm-allbtn{margin-top:14px;color:#fff;font-weight:600;font-size:14px}.nav .mm-cta a.mm-allbtn:hover{color:var(--yellow)}
.mm-sm{position:relative}.mm-sm>.mm-p{left:0;right:auto;width:560px;border-radius:0 0 var(--r) var(--r);padding:22px 0 24px}.mm-sm>.mm-p .wrap{padding:0 24px}
.mm-cols{columns:2;column-gap:28px}.mm-cols li{break-inside:avoid}.mm-cols a span{color:#999;font-size:12px}.mm-all{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line)}.nav .mm-all a{font-weight:600;color:var(--red-d)}
@media(max-width:1180px){.mm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hdr .mm-p .mm-in{grid-template-columns:1fr 230px}}
@media(max-width:980px){.nav{max-height:calc(100vh - 140px);overflow:auto;box-shadow:0 16px 32px rgba(0,0,0,.12)}.nav .mm-root{flex-direction:column;align-items:stretch;padding:8px 16px 18px}
.nav .mm-root>li{border-bottom:1px solid var(--line)}.nav .mm-root>li>a{padding:14px 4px;font-weight:600}
.mm{flex-wrap:wrap}.mm>.mm-t{flex:1}.mm>.mm-p{flex:0 0 100%}.mm-t:after{display:none}.mm:hover>.mm-t{background:none;color:var(--ink)}
.mm-x{display:block;width:44px;height:44px;border:0;background:transparent;cursor:pointer;position:relative}.mm-x:after{content:"";position:absolute;left:16px;top:14px;width:9px;height:9px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);transition:transform .2s}.mm.on>.mm-x:after{transform:rotate(225deg);top:19px}
.mm-p,.mm:hover>.mm-p,.mm:focus-within>.mm-p{display:none;visibility:visible;opacity:1;transform:none;position:static;width:100%;box-shadow:none;border:0;padding:0 0 14px}.mm.on>.mm-p{display:block}
.mm-sm>.mm-p{width:100%}.mm-sm>.mm-p .wrap,.mm-p .wrap{padding:0 4px}.hdr .mm-p .mm-in,.mm-grid{display:block}.mm-g{margin:0 0 14px}.mm-g h4{border-bottom-width:1px}.mm-cols{columns:1}.mm-cta{margin-top:8px}}
@media(max-width:700px){.topbar .wrap{gap:4px 14px}.topbar a[href^=mailto],.topbar .tb-web{display:none}}
/* topbar icons */
.topbar a[href^="tel:"]:before,.topbar a[href^="mailto:"]:before{content:"";display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;background:no-repeat center/contain}
.topbar a[href^="tel:"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFC20E' d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.2.2 2.4.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E")}
.topbar a[href^="mailto:"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFC20E' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5-8-5V6l8 5 8-5z'/%3E%3C/svg%3E")}
.topbar a.tb-web:before{content:"";display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFC20E' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm6.9 6h-2.9a15.6 15.6 0 0 0-1.4-3.6A8 8 0 0 1 18.9 8zM12 4c.8 1.2 1.5 2.5 1.9 4h-3.8c.4-1.5 1.1-2.8 1.9-4zM4.3 14a8.2 8.2 0 0 1 0-4h3.4a16.5 16.5 0 0 0 0 4zm.8 2h2.9c.3 1.3.8 2.5 1.4 3.6A8 8 0 0 1 5.1 16zM8 8H5.1a8 8 0 0 1 4.3-3.6C8.8 5.5 8.3 6.7 8 8zm4 12c-.8-1.2-1.5-2.5-1.9-4h3.8c-.4 1.5-1.1 2.8-1.9 4zm2.3-6H9.7a14.7 14.7 0 0 1 0-4h4.6a14.7 14.7 0 0 1 0 4zm.3 5.6c.6-1.1 1.1-2.3 1.4-3.6h2.9a8 8 0 0 1-4.3 3.6zm1.7-5.6a16.5 16.5 0 0 0 0-4h3.4a8.2 8.2 0 0 1 0 4z'/%3E%3C/svg%3E")}

/* shop hero */
.page-hero-img{background-size:cover;background-position:center;padding:96px 0}.page-hero-img h1{font-size:clamp(32px,5vw,52px);margin:0 0 10px}
