/* Base responsive defaults - see lib/build.ts */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; overflow-wrap: break-word; }
img, picture, video, canvas, svg, iframe { max-width: 100%; height: auto; }
table { max-width: 100%; }
pre { overflow-x: auto; }
input, button, textarea, select { font: inherit; max-width: 100%; }
/* 16px minimum stops mobile Safari zooming in when a field takes focus. */
input, textarea, select { font-size: max(1rem, 16px); }

*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'Segoe UI',Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6;color:#1a1a1a;background:#fff;overflow-wrap:break-word;word-wrap:break-word}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}a{color:#b8860b}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.2;color:#111}h1{font-size:clamp(1.8rem,5vw,3rem);margin-bottom:.75rem}h2{font-size:clamp(1.4rem,4vw,2.2rem);margin-bottom:.75rem}h3{font-size:1.2rem;margin-bottom:.5rem}p{margin-bottom:1rem}.site-header{background:#111;color:#fff}.header-inner{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding-top:1rem;padding-bottom:1rem}.brand{text-decoration:none;color:#fff;text-align:center;display:flex;flex-direction:column}.brand-name{font-size:1.5rem;font-weight:700;color:#f0b429}.brand-tag{font-size:.9rem;color:#ddd;font-style:italic}.main-nav ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem}.main-nav a{display:block;color:#fff;text-decoration:none;padding:.6rem .8rem;min-height:44px;line-height:1.4;border-radius:4px}.main-nav a:hover,.main-nav a:focus{background:#f0b429;color:#111}.header-cta{display:inline-block;background:#f0b429;color:#111;font-weight:700;text-decoration:none;padding:.75rem 1.25rem;border-radius:6px;min-height:44px}.header-cta:hover,.header-cta:focus{background:#fff}.hero{background:#111;color:#fff;padding:3rem 0}.hero .container{text-align:center}.hero p.lead{font-size:1.15rem;color:#eee;max-width:640px;margin:0 auto 1.5rem}.btn{display:inline-block;background:#f0b429;color:#111;font-weight:700;text-decoration:none;padding:.85rem 1.5rem;border-radius:6px;min-height:44px}.btn:hover,.btn:focus{background:#fff;color:#111}.btn-dark{background:#111;color:#fff}.btn-dark:hover,.btn-dark:focus{background:#333;color:#fff}section{padding:2.5rem 0}section.alt{background:#faf6ec}.grid{display:grid;gap:1.5rem;grid-template-columns:1fr}@media(min-width:48em){.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.card{background:#fff;border:1px solid #eee;border-left:4px solid #f0b429;border-radius:8px;padding:1.5rem;box-shadow:0 2px 6px rgba(0,0,0,.05)}.icon{width:48px;height:48px;color:#f0b429;margin-bottom:.5rem}.center{text-align:center}.cta-band{background:#f0b429;color:#111;text-align:center}.cta-band h2{color:#111}.price-tag{font-size:1.6rem;font-weight:700;color:#b8860b;margin:.5rem 0}ul.ticks{list-style:none;margin-bottom:1rem}ul.ticks li{padding-left:1.75rem;position:relative;margin-bottom:.5rem}ul.ticks li:before{content:'\2713';position:absolute;left:0;color:#b8860b;font-weight:700}.contact-list{list-style:none}.contact-list li{margin-bottom:1rem;font-size:1.1rem}details{border:1px solid #eee;border-left:4px solid #f0b429;border-radius:6px;padding:1rem;margin-bottom:1rem;background:#fff}summary{font-weight:700;cursor:pointer;font-size:1.05rem;padding:.25rem 0}details p{margin-top:.75rem;margin-bottom:0}.site-footer{background:#111;color:#ddd;margin-top:1rem}.footer-inner{display:flex;flex-wrap:wrap;gap:2rem;padding-top:2.5rem;padding-bottom:1.5rem}.footer-col{flex:1 1 240px}.footer-col h2{color:#f0b429;font-size:1.1rem}.footer-col a{color:#f0b429;text-decoration:none}.footer-col a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #333;padding-top:1rem;padding-bottom:1.5rem;font-size:.9rem}@media(min-width:48em){.header-inner{flex-direction:row;justify-content:space-between;align-items:center}.brand{text-align:left}.main-nav{flex:1;margin:0 1rem}}