@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-latin.woff2) format("woff2");font-weight:600 800;font-display:swap}:root{--ink:#212a26;--navy:#234739;--navy-soft:#ecf2ee;--paper:#fbfaf7;--white:#ffffff;--slate:#4e5c54;--cedar:#a63d1e;--cedar-deep:#853117;--cedar-tint:#f8e8e0;--line:#e3e1d8;--ok:#206a4e;--err:#a33420;--font-display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;--font-body:system-ui,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,"Cascadia Mono","Segoe UI Mono",Menlo,monospace;--maxw:72rem;--radius:10px;--shadow:0 1px 2px rgba(33,42,38,0.06),0 8px 24px rgba(33,42,38,0.07)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:var(--paper)}img{max-width:100%;height:auto;display:block}a{color:var(--ink);text-underline-offset:3px}a:hover{color:var(--cedar)}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;margin:0 0 .6em;letter-spacing:-.015em;font-weight:700}h1{font-size:clamp(2rem,5.5vw,3.25rem)}h2{font-size:clamp(1.5rem,3.5vw,2.125rem)}h3{font-size:1.25rem}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--cedar);outline-offset:2px;border-radius:2px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:var(--white);padding:.6rem 1rem;z-index:100}.skip-link:focus{left:.5rem;top:.5rem}.container{max-width:var(--maxw);margin:0 auto;padding:0 1.1rem}.datum{border:0;height:2px;background:var(--line);position:relative;margin:0}.datum:before{content:"";position:absolute;left:0;top:-3px;width:8px;height:8px;background:var(--cedar)}.section{padding:3.25rem 0}.section-alt{background:var(--navy-soft)}.section-head{max-width:44rem;margin-bottom:1.75rem}.section-head p{color:var(--slate)}.eyebrow{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cedar);display:block;margin-bottom:.6rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:600 1rem var(--font-body);padding:.85rem 1.5rem;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease}.btn-primary{background:var(--cedar);color:var(--white)}.btn-primary:hover{background:var(--cedar-deep);color:var(--white)}.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}.btn-ghost:hover{border-color:var(--cedar);color:var(--cedar)}.btn-light{background:var(--white);color:var(--ink)}.btn-light:hover{color:var(--cedar)}.btn-lg{padding:1rem 1.9rem;font-size:1.0625rem}.site-header{background:var(--paper);border-bottom:2px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header .container{display:flex;align-items:center;gap:1.25rem;min-height:4rem}.logo{font-family:var(--font-display);font-weight:800;font-size:1.2rem;text-decoration:none;letter-spacing:-.01em;white-space:nowrap}.logo .dot-ca{color:var(--cedar)}.main-nav{display:none;margin-left:auto}.main-nav a{text-decoration:none;font-weight:600;font-size:.95rem;padding:.5rem .7rem}.header-cta{margin-left:auto}.header-cta .btn{padding:.6rem 1rem;font-size:.95rem}@media (min-width:860px){.main-nav{display:flex;gap:.25rem}.header-cta{display:none}}.hero{padding:3.5rem 0 3rem}.hero h1{max-width:17ch}.hero-sub{color:var(--slate);max-width:40rem;font-size:1.15rem}.promise{font-family:var(--font-display);margin:2.2rem 0 0;line-height:1.05}.promise .small{display:block;font-size:clamp(1rem,2.2vw,1.35rem);font-weight:600;color:var(--slate);margin-bottom:.2em}.promise .large{display:block;font-size:clamp(2.1rem,6.5vw,4rem);font-weight:800;letter-spacing:-.02em}.promise .large em{font-style:normal;color:var(--cedar)}.search-wrap{position:relative;max-width:34rem;margin-top:1.9rem}.search-input{width:100%;font:500 1.05rem var(--font-body);padding:1rem 1.1rem;border:2px solid var(--ink);border-radius:var(--radius);background:var(--white);color:var(--ink)}.search-input::placeholder{color:var(--slate)}.search-list{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--white);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);list-style:none;margin:0;padding:.3rem;max-height:310px;overflow-y:auto;z-index:30}.search-item{padding:.6rem .75rem;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;gap:.75rem}.search-item:hover,.search-item[aria-selected=true]{background:var(--cedar-tint)}.search-item .kind{font-family:var(--font-mono);font-size:.7rem;color:var(--slate);align-self:center;white-space:nowrap}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid-2,.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}@media (min-width:640px){.grid-2,.grid-3{grid-template-columns:1fr 1fr}}@media (min-width:960px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.25rem 1.1rem;display:block;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.card:hover{border-color:var(--cedar);box-shadow:var(--shadow);color:inherit}.card-img{width:calc(100% + 2.5rem);margin:-1.25rem -1.25rem .9rem;border-radius:var(--radius) var(--radius) 0 0;aspect-ratio:3/2;object-fit:cover}.hub-hero{border-radius:var(--radius);aspect-ratio:3/1;object-fit:cover;width:100%;margin-bottom:1.5rem}.card h3{margin-bottom:.35rem;font-size:1.08rem}.card p{color:var(--slate);font-size:.95rem;margin:0}.card .go{color:var(--cedar);font-weight:600;font-size:.9rem}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-block;border:1.5px solid var(--line);background:var(--white);border-radius:999px;padding:.4rem .9rem;font-size:.92rem;font-weight:600;text-decoration:none}.chip:hover{border-color:var(--cedar)}.prose{max-width:46rem}.prose p{color:var(--ink)}.prose ul{padding-left:1.2rem;margin:0 0 1.2em}.prose li{margin-bottom:.4em}.two-col{display:grid;grid-gap:2.5rem;gap:2.5rem}@media (min-width:960px){.two-col{grid-template-columns:minmax(0,1fr) 21rem;align-items:start}.side-rail{position:-webkit-sticky;position:sticky;top:5rem}}.notice{border-left:4px solid var(--cedar);background:var(--cedar-tint);border-radius:0 var(--radius) var(--radius) 0;padding:.9rem 1.1rem;margin:1.4rem 0;font-size:.97rem}.notice strong{display:block;margin-bottom:.15rem}.faq-item{border-bottom:1px solid var(--line);padding:.4rem 0}.faq-item summary{font-weight:650;font-family:var(--font-display);cursor:pointer;padding:.7rem 0;list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--cedar);font-size:1.2rem}.faq-item[open] summary:after{content:"–"}.faq-item .a{padding:0 0 1rem;color:var(--ink);max-width:44rem}.crumbs{font-size:.88rem;color:var(--slate);padding:.9rem 0 0}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0}.crumbs li+li:before{content:"/";margin-right:.35rem;color:var(--line)}.crumbs a{color:var(--slate);text-decoration:none}.crumbs a:hover{color:var(--cedar)}.steps{counter-reset:step;display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}.step{counter-increment:step}.step:before{content:counter(step,decimal-leading-zero);font-family:var(--font-mono);color:var(--cedar);font-size:.85rem;display:block;border-top:2px solid var(--ink);padding-top:.6rem;margin-bottom:.4rem}.step h3{margin-bottom:.3rem}.step p{color:var(--slate);margin:0}.quote-shell{max-width:40rem;margin:0 auto}.progress{display:flex;gap:.35rem;margin:1.2rem 0 1.8rem}.progress span{flex:1 1;height:4px;background:var(--line);border-radius:2px}.progress span.on{background:var(--cedar)}.field{margin-bottom:1.15rem}.field label{display:block;font-weight:650;margin-bottom:.35rem}.field .hint{font-size:.88rem;color:var(--slate);margin:.25rem 0 0}.field input[type=email],.field input[type=tel],.field input[type=text],.field select,.field textarea{width:100%;font:500 1.02rem var(--font-body);padding:.85rem 1rem;border:2px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--ink)}.field textarea{min-height:7.5rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--cedar);outline:none}.field .error{color:var(--err);font-size:.9rem;margin:.3rem 0 0}.opt-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}@media (min-width:640px){.opt-grid{grid-template-columns:repeat(3,1fr)}}.opt{border:2px solid var(--line);border-radius:var(--radius);background:var(--white);padding:.8rem .9rem;font:600 .95rem var(--font-body);cursor:pointer;text-align:left;color:var(--ink)}.opt[aria-pressed=true]{border-color:var(--cedar);background:var(--cedar-tint)}.quote-nav{display:flex;gap:.75rem;margin-top:1.6rem}.quote-nav .btn{flex:1 1}.urgent-toggle{display:flex;align-items:center;gap:.6rem;border:2px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;background:var(--white);cursor:pointer}.urgent-toggle input{width:1.15rem;height:1.15rem;accent-color:var(--cedar)}.photo-drop{border:2px dashed var(--line);border-radius:var(--radius);padding:1.4rem 1rem;text-align:center;color:var(--slate);background:var(--white)}.photo-thumbs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.photo-thumbs .thumb{width:72px;height:72px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.action-bar{position:fixed;left:0;right:0;bottom:0;display:flex;gap:1px;background:var(--line);border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(22,35,58,.1);z-index:50;padding-bottom:env(safe-area-inset-bottom)}.action-btn{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:.6rem .4rem;font:700 .78rem var(--font-body);text-decoration:none;letter-spacing:.01em}.action-call{background:var(--navy);color:#fff}.action-wa{background:#25d366;color:#08331c}.action-quote{background:var(--cedar);color:#fff}.action-btn svg{display:block}@media (min-width:860px){.action-bar{display:none}}@media (max-width:859px){body{padding-bottom:3.9rem}}.header-contact{display:none}@media (min-width:860px){.header-contact{display:flex;align-items:center;gap:.9rem;margin-left:1rem}.header-contact .call{font-weight:700;text-decoration:none;white-space:nowrap}.header-contact .call:hover{color:var(--cedar)}}.sticky-cta{display:none}.band{background:var(--navy);padding:3.5rem 0}.band,.band h2{color:var(--white)}.band p{color:#c6cede}.band a:not(.btn){color:var(--white)}.band-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-wa{background:#25d366;color:#08331c}.btn-wa:hover{background:#1eb457;color:#08331c}.site-footer{background:var(--ink);color:#b9c2d2;padding:3rem 0 2rem;font-size:.93rem}.site-footer a{color:#dde3ec;text-decoration:none}.site-footer a:hover{color:var(--white);text-decoration:underline}.footer-grid{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:1fr 1fr}@media (min-width:860px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}.site-footer h4{color:var(--white);font-size:.95rem;margin-bottom:.7rem}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:.45rem}.footer-legal{border-top:1px solid #2c3b57;margin-top:2.2rem;padding-top:1.2rem;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.85rem;color:#8b96ab}.footer-address{font-style:normal;line-height:1.55;margin-top:1rem;font-size:.9rem}.footer-address strong{color:var(--white)}.muted-dim{color:#8b96ab}.contact-grid{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:1fr;margin-top:1.5rem}@media (min-width:640px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-card{display:flex;flex-direction:column;gap:.3rem;border:2px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;text-decoration:none;background:var(--white);transition:border-color .15s ease,box-shadow .15s ease}.contact-card:hover{border-color:var(--cedar);box-shadow:var(--shadow)}.contact-card strong{font-family:var(--font-display);font-size:1.1rem;color:var(--ink)}.contact-card span{color:var(--slate);font-size:.95rem}.contact-card.wa{border-color:#25d366}.contact-card.wa strong{color:#128c3e}.table-wrap{overflow-x:auto}.muted{color:var(--slate)}.mt-0{margin-top:0}.center{text-align:center}