*{box-sizing:border-box}html{height:100%}body{min-height:100%;display:flex;flex-direction:column;overflow-x:hidden;margin:0;background:#fffdf4;color:#000;font-family:Arial,sans-serif}main{flex:1 0 auto}footer{flex-shrink:0}a{color:inherit}img{max-width:100%;height:auto}h1,h2,h3{font-family:Arial Black,Arial,sans-serif;line-height:1.08}h1{font-size:clamp(2.5rem,7vw,6rem)}h2{font-size:clamp(1.7rem,4vw,3.2rem)}p{line-height:1.65}.eyebrow{color:#e6392e;font-weight:bold;letter-spacing:.08em}.bl-header{position:sticky;top:0;z-index:1100;display:flex;align-items:center;gap:1rem;padding:12px 5vw;background:#e6392e;border-bottom:4px solid #000}.bl-brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-family:Arial Black,Arial}.bl-brand img{width:42px;height:42px;object-fit:cover;border:4px solid #000}.bl-nav{display:flex;gap:1.3rem;margin-left:auto}.bl-nav a,.bl-footer a{text-decoration:none}.bl-header-cta,.bl-button{display:inline-flex;align-items:center;gap:.4rem;background:#e6392e;color:#000;border:4px solid #000;box-shadow:6px 6px 0 #000;padding:.8rem 1rem;text-decoration:none;font-weight:bold}.bl-burger{display:none;position:relative;width:42px;height:42px;border:4px solid #000;background:#fffdf4;z-index:1101}.bl-burger span{position:absolute;left:50%;top:50%;width:22px;height:2px;margin-left:-11px;margin-top:-1px;transition:transform .25s,opacity .25s;background:#000}.bl-burger span:nth-child(1){transform:translateY(-7px)}.bl-burger span:nth-child(3){transform:translateY(7px)}.bl-burger.is-open span:nth-child(1){transform:rotate(45deg)}.bl-burger.is-open span:nth-child(2){opacity:0}.bl-burger.is-open span:nth-child(3){transform:rotate(-45deg)}section,.bl-legal{padding:clamp(3rem,7vw,7rem) 8vw}.bl-hero{min-height:72vh;display:grid;align-items:center;grid-template-columns:1fr 1fr;gap:2rem;background:linear-gradient(90deg,rgba(10,10,15,.9),rgba(10,10,15,.28)),url(../bl-art/pop-hero.jpg) center/cover}.bl-hero>div{max-width:680px}.bl-hero em{color:#e6392e;font-style:normal}.bl-hero>img{width:100%;height:100%;min-height:420px;object-fit:cover;border:4px solid #000;box-shadow:6px 6px 0 #000}.bl-intro,.split,.bl-contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,6rem);align-items:center}.split img,.bl-contact img{width:100%;max-height:520px;object-fit:cover;border:4px solid #000;box-shadow:6px 6px 0 #000}.bl-icons,.bl-timeline{background:#fffdf4}.bl-icons>div,.bl-services,.bl-tabs>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.bl-card,.bl-service,.bl-tabs article{padding:1.4rem;border:4px solid #000;box-shadow:6px 6px 0 #000;background:#fff}.bl-card i,.bl-service i{font-size:2rem;color:#ffd60a}.bl-gallery{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}.bl-gallery>div:first-child{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.bl-gallery img{height:280px;width:100%;object-fit:cover;border:4px solid #000}.bl-steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:0;list-style:none}.bl-steps li,.bl-timeline article{padding:1.5rem;border-bottom:4px solid #000}.bl-faq details{border-bottom:4px solid #000;padding:1rem 0}.bl-faq summary{font-weight:bold;cursor:pointer}.bl-cta{text-align:center;background:#ffd60a;color:#000}.bl-page-hero{max-width:950px}.bl-center{text-align:center;margin:auto}.bl-form{padding:2rem;background:#fffdf4;border:4px solid #000;box-shadow:6px 6px 0 #000}.bl-form label{display:block;margin:1rem 0;font-weight:bold}input,textarea{display:block;width:100%;margin-top:.4rem;padding:.75rem;background:#fff;color:#000;border:2px solid #000;font:inherit}.form-status{min-height:1.5rem;color:#e6392e}.bl-legal{max-width:980px;margin:auto}.bl-legal section{padding:1.3rem 0;border-bottom:4px solid #000}.bl-footer{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem;padding:3rem 5vw;background:#000;color:#fff}.bl-footer h3{color:#ffd60a;font-size:1rem}.bl-footer a{display:block;margin:.45rem 0}.bl-footer small{grid-column:1/-1;border-top:1px solid #555;padding-top:1rem}.bl-cookies{position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:1200;display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:720px;padding:1rem;background:#fffdf4;color:#000;border:4px solid #000;box-shadow:6px 6px 0 #000}.bl-cookies p{margin:0}.bl-cookies button{padding:.6rem 1rem;border:4px solid #000;background:#e6392e;font-weight:bold}@media(max-width:768px){.bl-header{flex-wrap:wrap}.bl-burger{display:block;margin-left:auto}.bl-header-cta{display:none}.bl-nav{display:none;order:4;width:100%;margin:0;padding:1rem 0;flex-direction:column;background:#e6392e;position:relative;z-index:1090}.bl-nav.is-open{display:flex}.bl-hero,.split,.bl-contact,.bl-gallery{grid-template-columns:1fr}.bl-hero{padding:4rem 8vw;min-height:620px}.bl-hero>img{min-height:280px}.bl-icons>div,.bl-services,.bl-tabs>div,.bl-steps ol{grid-template-columns:1fr 1fr}.bl-footer{grid-template-columns:1fr 1fr}}@media(max-width:360px){.bl-icons>div,.bl-services,.bl-tabs>div,.bl-steps ol,.bl-footer{grid-template-columns:1fr}.bl-brand span{font-size:.78rem}.bl-cookies{align-items:flex-start;flex-direction:column}}
.bl-hero--pop{background:#ffd60a}.bl-photo-stack{display:grid;gap:1rem;transform:rotate(2deg)}.bl-photo-stack img{width:100%;height:250px;object-fit:cover;border:5px solid #000;box-shadow:8px 8px 0 #e6392e}.bl-hero--pop h1{font-family:Impact,Arial Black,sans-serif}.bl-footer{grid-template-columns:1fr!important}

/* readability: header/footer contrast */
a{color:inherit}
.bl-header a,.bl-brand,.bl-nav a{color:#ffffff}
.bl-header .bl-header-cta,.bl-header-cta,.bl-button{background:#ffd60a;color:#000000}
.bl-footer{color:#ffffff}
.bl-footer a{color:#ffffff}
.bl-footer a:hover{color:#ffd60a}
.bl-footer h3{color:#ffd60a}
.bl-footer .bl-brand,.bl-footer .bl-brand span{color:#ffffff}

.bl-header a:link,.bl-header a:visited,.bl-brand:link,.bl-brand:visited,.bl-nav a:link,.bl-nav a:visited{color:#ffffff}
.bl-header-cta:link,.bl-header-cta:visited{background:#ffd60a;color:#000000}
.bl-footer a:link,.bl-footer a:visited,.bl-footer .bl-brand:link,.bl-footer .bl-brand:visited{color:#ffffff}


/* Pop-art structural layout */
.bl-hero--pop{background-image:radial-gradient(currentColor 1px,transparent 1px);background-size:8px 8px}.bl-photo-stack img{border:4px solid var(--ink);box-shadow:8px 8px 0 var(--accent)}.bl-photo-stack img:last-child{transform:rotate(4deg);margin-left:-2rem}.bl-comic-strip{display:flex;gap:0;padding:clamp(3rem,7vw,7rem) 5vw;overflow:auto;background:var(--paper)}.bl-comic-strip article{flex:1;min-width:220px;padding:1.5rem;border:4px solid var(--ink);margin-right:-4px;background:var(--bg)}.bl-comic-strip article:nth-child(even){background:var(--accent);transform:translateY(2rem)}.bl-pow-split{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,7vw,7rem);padding:clamp(4rem,8vw,8rem) 8vw;align-items:center}.bl-pow-split>div:first-child{position:relative}.bl-pow-split img{width:100%;min-height:420px;object-fit:cover;border:4px solid var(--ink)}.bl-pow-split b{position:absolute;right:-1rem;bottom:-1rem;padding:1rem;color:var(--ink);background:var(--accent);border:4px solid var(--ink);font-size:2rem;transform:rotate(-10deg)}.bl-bursts{display:flex;justify-content:space-around;gap:1rem;padding:5rem 8vw;background:var(--ink);color:var(--paper)}.bl-bursts article{width:190px;aspect-ratio:1;display:grid;place-items:center;text-align:center;padding:1rem;background:var(--accent);clip-path:polygon(50% 0,60% 20%,78% 8%,80% 29%,100% 30%,84% 48%,100% 65%,78% 67%,78% 92%,57% 79%,45% 100%,39% 79%,17% 92%,21% 68%,0 62%,17% 47%,1% 30%,22% 28%,25% 6%,42% 20%)}.bl-bursts strong{font-size:3rem}.bl-faq details{margin:1rem 0;padding:1rem 1.5rem;border:4px solid var(--ink);border-radius:1.5rem;background:var(--paper);position:relative}.bl-faq details:nth-of-type(2){margin-left:7%}.bl-footer--pop{text-align:center;display:block}.bl-footer--pop>div{max-width:680px;margin:auto}.bl-footer--pop small{display:block;padding-top:1rem}@media(max-width:768px){.bl-pow-split{grid-template-columns:1fr}.bl-bursts{flex-direction:column;align-items:center}.bl-comic-strip article:nth-child(even){transform:none}.bl-header--pop .bl-nav{display:none}.bl-header--pop .bl-nav.is-open{display:flex}}

/* cookie banner visibility */
.bl-cookies{position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:720px;margin:auto;padding:1rem 1.2rem}
.bl-cookies[hidden]{display:none!important}

/* footer legal links inline — no broken middots */
.bl-footer a{display:block}
.bl-legal-inline{display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:center;margin:.75rem 0}
.bl-legal-inline a{display:inline!important;margin:0!important}
.bl-footer small .bl-legal-inline,
.bl-footer .legal-inline{display:flex}
footer nav a{display:inline}
.rp-footer nav{display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center}
.rp-footer nav a{display:inline}



/* hero text readability over halftone */
.bl-hero--pop{background-color:#ffd60a;background-image:radial-gradient(#000 1.1px,transparent 1.2px);background-size:10px 10px}
.bl-hero--pop>div:first-child{
  position:relative;z-index:1;
  max-width:34rem;
  padding:clamp(1.25rem,3vw,2rem);
  background:#fffdf4;
  border:4px solid #000;
  box-shadow:8px 8px 0 #e6392e;
}
.bl-hero--pop .eyebrow{color:#e6392e;background:transparent;-webkit-text-stroke:0;font-weight:900;letter-spacing:.06em}
.bl-hero--pop h1{color:#000;margin:.35rem 0 .75rem;line-height:1.02;text-shadow:none}
.bl-hero--pop h1 em,.bl-hero--pop h1 span{color:#e6392e;-webkit-text-stroke:.5px #000;paint-order:stroke fill}
.bl-hero--pop>div:first-child>p{color:#111;font-weight:700;line-height:1.5;max-width:32ch}
.bl-hero--pop .bl-button{background:#ffd60a;color:#000;border:4px solid #000;box-shadow:5px 5px 0 #000}

