:root{--bg:#0f0f10;--bg-elevated:#17171a;--bg-card:#1c1c20;--border:#2a2a2f;--text:#f5f5f4;--text-muted:#a3a3a8;--color-primary:#ff7a1a;--color-primary-hover:#ff8f3d;--link-color:#ff7a1a;--max-width:1120px;--radius:12px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:var(--font-size-base,16px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg);color:var(--text);font-family:var(--font-family,"Prompt", sans-serif);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.skip-link{background:var(--color-primary);color:#0f0f10;z-index:100;border-radius:0 0 8px;padding:12px 20px;font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}a{color:var(--link-color,inherit);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}h1,h2,h3{margin:0 0 16px;line-height:1.25}h2{font-size:clamp(1.6rem,3vw,2.25rem)}h3{font-size:1.25rem}p{color:var(--text-muted);margin:0 0 12px}.site-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#0f0f10d9;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.brand{align-items:center;gap:10px;font-size:1.1rem;font-weight:700;display:flex}.brand-logo{object-fit:contain;width:auto;max-width:180px;height:32px}.main-nav{align-items:center;gap:28px;display:flex}.main-nav a{color:var(--text-muted);font-weight:500;transition:color .15s}.main-nav a:hover,.main-nav a:focus-visible{color:var(--text)}.main-nav a.active{color:var(--color-primary)}.nav-cta{background:var(--color-primary);border-radius:999px;padding:8px 18px;font-weight:600;color:#0f0f10!important}.nav-cta:hover{background:var(--color-primary-hover)}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;padding:8px;display:none}.nav-toggle span{background:var(--text);width:22px;height:2px;display:block}.hero{text-align:center;background:radial-gradient(60% 60% at 50% 0,#ff7a1a24,#0000 70%);padding:120px 0 80px}.eyebrow{color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;font-size:.85rem;font-weight:600}.hero h1{max-width:820px;margin:0 auto 20px;font-size:clamp(2rem,5vw,3.25rem)}.hero-lead{max-width:620px;margin:0 auto 32px;font-size:1.05rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.btn{border-radius:999px;padding:14px 28px;font-weight:600;transition:transform .15s,background .15s;display:inline-block}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--color-primary);color:#0f0f10}.btn-primary:hover{background:var(--color-primary-hover)}.btn-ghost{border:1px solid var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--color-primary)}.section{padding:80px 0}.section-alt{background:var(--bg-elevated)}.section-lead{max-width:100%;margin-bottom:32px;font-size:1.05rem}.about-rich-content img{border-radius:8px;max-width:100%;height:auto;margin:12px 0}.about-rich-content table{border-collapse:collapse;width:100%;margin:12px 0}.about-rich-content td,.about-rich-content th{border:1px solid var(--border);padding:8px 10px}.about-rich-content p{margin:0 0 12px}.about-rich-content ul,.about-rich-content ol{margin:0 0 12px;padding-left:22px}.tag-list{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.tag-list li{background:var(--bg-card);border:1px solid var(--border);border-radius:999px;padding:10px 18px;font-weight:500}.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.card-image{object-fit:cover;border-radius:8px;width:100%;height:160px;margin-bottom:16px}.card-featured{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.price{color:var(--color-primary);margin-bottom:8px;font-weight:700}.contact-links{flex-wrap:wrap;gap:20px;display:flex}.contact-links a{color:var(--text);border-bottom:2px solid #0000;align-items:center;gap:8px;padding-bottom:2px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.contact-links a i{font-size:1.05em}.contact-links a:hover,.contact-links a:focus-visible{color:var(--color-primary);border-color:var(--color-primary)}.quote-form{grid-template-columns:1fr 1fr;gap:20px 24px;display:grid}.form-row{flex-direction:column;gap:8px;display:flex}.form-row-full{grid-column:1/-1}@media (width<=640px){.quote-form{grid-template-columns:1fr}}.form-row label{font-size:.95rem;font-weight:600}.form-row input[type=text],.form-row input[type=email],.form-row input[type=tel],.form-row input[type=file],.form-row textarea{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font:inherit;padding:12px 16px}.form-row input:focus,.form-row textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.form-row textarea{resize:vertical}.quote-form .btn{cursor:pointer;border:none;align-self:flex-start}.form-feedback{margin:0;font-weight:500}.form-feedback.is-success{color:#2e9e5b}.form-feedback.is-error{color:#e0503f}body.modal-open{overflow:hidden}.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f0f10bf;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal-box{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:1140px;max-height:calc(100vh - 48px);margin:auto;display:flex;position:relative;overflow:hidden}.modal-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:32px 32px 0;display:flex}.modal-header h2{margin:0}.modal-body{scrollbar-width:thin;scrollbar-color:var(--color-primary) var(--bg-card);flex:1;padding:16px 32px 32px;overflow-y:auto}.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-track{background:var(--bg-card);border-radius:999px}.modal-body::-webkit-scrollbar-thumb{background-color:var(--color-primary);border:2px solid var(--bg-card);border-radius:999px}.modal-body::-webkit-scrollbar-thumb:hover{background-color:var(--color-primary-hover)}.modal-close{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;font-size:1.5rem;line-height:1}.modal-close:hover{color:var(--text);background:var(--bg-card)}.site-footer{border-top:1px solid var(--border);text-align:center;padding:32px 0}.site-footer p{margin:0;font-size:.9rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:12px;display:flex}.footer-links a{color:var(--text-muted);font-size:.85rem;text-decoration:none}.footer-links a:hover{color:var(--link-color);text-decoration:underline}.pdpa-banner{z-index:10000;background:var(--bg-elevated);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000040}.pdpa-banner[hidden]{display:none}.pdpa-banner-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.pdpa-banner-text{color:var(--text-muted);flex:320px;margin:0;font-size:.9rem}.pdpa-banner-text a{color:var(--link-color)}.pdpa-banner-btn{flex-shrink:0}@media (width<=560px){.pdpa-banner-inner{text-align:center;flex-direction:column;align-items:stretch}.pdpa-banner-btn{width:100%}}@media (width<=768px){.nav-toggle{display:flex}.main-nav{background:var(--bg-elevated);border-bottom:1px solid var(--border);opacity:0;pointer-events:none;flex-direction:column;align-items:flex-start;gap:0;padding:8px 0;transition:opacity .15s,transform .15s;position:fixed;top:72px;left:0;right:0;transform:translateY(-8px)}.main-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{width:100%;padding:14px 24px}.nav-cta{text-align:center;border-radius:0;margin-top:4px}}
