@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin.woff2) format("woff2");font-weight:500 700;font-display:optional}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-latin.woff2) format("woff2");font-weight:400 700;font-display:optional}@font-face{font-family:Fraunces Fallback;src:local("Georgia");size-adjust:116.25%;ascent-override:84.13%;descent-override:21.94%;line-gap-override:0%}@font-face{font-family:Hanken Fallback;src:local("Arial");size-adjust:102.14%;ascent-override:97.9%;descent-override:29.66%;line-gap-override:0%}:root{--paper:#f5f7f3;--white:#ffffff;--ink:#22252a;--slate:#515a63;--line:#dde3da;--grid:#e7ece4;--dark:#23262c;--dark-2:#2c3037;--blue:#274b8f;--blue-deep:#1d3a72;--blue-tint:#e8edf7;--yellow:#f0b41c;--yellow-deep:#d99f0e;--yellow-tint:#fbf3da;--ok:#206a4e;--err:#a33420;--font-display:"Fraunces","Fraunces Fallback","Georgia","Times New Roman",serif;--font-body:"Hanken Grotesk","Hanken Fallback",system-ui,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,"Cascadia Mono","Segoe UI Mono",Menlo,monospace;--maxw:74rem;--radius:2px;--shadow:0 1px 0 rgba(34,37,42,0.05),0 10px 28px rgba(34,37,42,0.09)}*,: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(--blue)}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.06;margin:0 0 .55em;letter-spacing:-.018em;font-weight:600}h1{font-size:clamp(2.3rem,5.2vw,3.8rem)}h2{font-size:clamp(1.65rem,3.4vw,2.4rem)}h3{font-size:1.3rem}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:var(--radius)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--dark);color:var(--white);padding:.6rem 1rem;z-index:100}.skip-link:focus{left:.5rem;top:.5rem}.container{padding:0 1.1rem}.container,.datum{max-width:var(--maxw);margin:0 auto}.datum{border:0;height:1px;background:var(--ink);position:relative;opacity:.85}.datum:after,.datum:before{content:"";position:absolute;top:-5px;width:1px;height:11px;background:var(--ink)}.datum:before{left:0}.datum:after{right:0}.section{padding:3.5rem 0}.section-alt{background:repeating-linear-gradient(0deg,transparent 0 31px,var(--grid) 31px 32px),repeating-linear-gradient(90deg,transparent 0 31px,var(--grid) 31px 32px),var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{max-width:46rem;margin-bottom:1.9rem}.section-head p{color:var(--slate)}.eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blue);display:block;margin-bottom:.7rem}.eyebrow:before{content:"— ";color:var(--yellow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:700 .98rem var(--font-body);letter-spacing:.015em;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,transform .12s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--yellow);color:var(--ink);border-color:var(--ink)}.btn-primary:hover{background:var(--yellow-deep);color:var(--ink)}.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}.btn-light{background:var(--white);color:var(--ink);border-color:var(--white)}.btn-light:hover{color:var(--blue)}.btn-lg{padding:1rem 1.9rem;font-size:1.05rem}.site-header{background:var(--dark);border-bottom:3px solid var(--yellow);position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header .container{display:flex;align-items:center;gap:1.25rem;min-height:3.9rem}.logo{font-family:var(--font-display);font-weight:600;font-size:1.38rem;letter-spacing:-.01em;text-decoration:none;white-space:nowrap}.logo,.logo:hover{color:var(--white)}.logo .dot-ca{color:var(--yellow)}.main-nav{display:none;margin-left:auto}.main-nav a{text-decoration:none;font-weight:600;font-size:.93rem;padding:.5rem .7rem;color:#cfd4d0;border-bottom:2px solid transparent}.main-nav a:hover{color:var(--white);border-bottom-color:var(--yellow)}.header-cta{margin-left:auto}.header-cta .btn{padding:.55rem 1rem;font-size:.92rem;white-space:nowrap}@media (min-width:860px){.main-nav{display:flex;gap:.25rem}.header-cta{display:none}}.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;color:var(--white)}.header-contact .call:hover{color:var(--yellow)}}.hero{padding:3.6rem 0 3.4rem;background:repeating-linear-gradient(0deg,transparent 0 31px,var(--grid) 31px 32px),repeating-linear-gradient(90deg,transparent 0 31px,var(--grid) 31px 32px),var(--paper);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media (min-width:980px){.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(21rem,.85fr);gap:3.5rem}}.hero h1{max-width:16ch}.hero-sub{color:var(--slate);max-width:34rem;font-size:1.12rem}.plan-card{background:var(--white);border:2px solid var(--ink);box-shadow:6px 6px 0 rgba(34,37,42,.12)}.plan-card-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--ink);color:var(--white);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;padding:.55rem 1rem}.plan-card-head .no{color:var(--yellow)}.plan-card-body{padding:1.2rem 1.2rem 1.35rem}.plan-row{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:.55rem 0;font-size:.95rem}.plan-row:first-of-type{border-top:0}.plan-row .k{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);align-self:center;white-space:nowrap}.plan-row .v{font-weight:650;text-align:right}.plan-row .v a{text-decoration:none}.plan-actions{display:grid;grid-gap:.6rem;gap:.6rem;margin-top:1rem}.plan-actions .btn{width:100%}.promise{font-family:var(--font-display);margin:2.4rem 0 0;line-height:1.05}.promise .small{display:block;font-size:clamp(1rem,2vw,1.3rem);font-weight:500;color:var(--slate);margin-bottom:.18em}.promise .large{display:block;font-size:clamp(1.9rem,4.6vw,3.1rem);font-weight:600;letter-spacing:-.018em}.promise .large em{font-style:normal;color:var(--ink);background:linear-gradient(transparent 62%,var(--yellow) 62%)}.search-wrap{position:relative;max-width:34rem;margin-top:.2rem}.hero .search-wrap,.section .search-wrap{margin-top:1.6rem}.plan-card .search-wrap{margin:0 0 1rem}.search-input{width:100%;font:500 1.02rem var(--font-body);padding:.95rem 1.05rem;border:2px solid var(--ink);border-radius:var(--radius);background:var(--white);color:var(--ink)}.search-input:focus{border-color:var(--blue);outline:none}.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);box-shadow:var(--shadow);list-style:none;margin:0;padding:.3rem;max-height:310px;overflow-y:auto;z-index:30}.search-item,.search-list{border-radius:var(--radius)}.search-item{padding:.6rem .75rem;cursor:pointer;display:flex;justify-content:space-between;gap:.75rem}.search-item:hover,.search-item[aria-selected=true]{background:var(--blue-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:1.1rem;gap:1.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{position:relative;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:before{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:3px;background:transparent;transition:background .15s ease}.card:hover{border-color:var(--ink);box-shadow:var(--shadow);color:inherit}.card:hover:before{background:var(--yellow)}.card-img{width:calc(100% + 2.5rem);margin:-1.25rem -1.25rem .95rem;border-radius:0;aspect-ratio:3/2;object-fit:cover;border-bottom:1px solid var(--line);filter:saturate(.82) contrast(1.02)}.hub-hero{border-radius:var(--radius);border:1px solid var(--line);aspect-ratio:3/1;object-fit:cover;width:100%;margin-bottom:1.5rem;filter:saturate(.85)}.card h3{margin-bottom:.35rem;font-size:1.15rem}.card p{color:var(--slate);font-size:.95rem;margin:0}.card .go{color:var(--blue);font-weight:600;font-size:.9rem}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-block;border:1px solid var(--ink);background:var(--white);border-radius:var(--radius);padding:.42rem .85rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .12s ease,color .12s ease}.chip:hover{background:var(--ink);color:var(--white)}.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:1px solid var(--line);border-left:4px solid var(--yellow);background:var(--yellow-tint);border-radius:var(--radius);padding:.9rem 1.1rem;margin:1.4rem 0;font-size:.97rem}.notice strong{display:block;margin-bottom:.15rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.faq-item{border-bottom:1px solid var(--line);padding:.4rem 0}.faq-item summary{font-weight:650;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(--blue);font-family:var(--font-mono);font-size:1.15rem}.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(--blue)}.steps{counter-reset:step;display:grid;grid-gap:1.4rem;gap:1.4rem}@media (min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}.step{counter-increment:step;border-top:1px solid var(--ink);padding-top:.9rem}.step:before{content:counter(step,decimal-leading-zero);font-family:var(--font-mono);font-weight:700;font-size:.95rem;color:var(--ink);background:var(--yellow);display:inline-block;padding:.1rem .5rem;margin-bottom:.6rem}.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:5px;background:var(--line)}.progress span.on{background:var(--yellow);outline:1px solid var(--ink)}.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(--blue);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(--ink);background:var(--yellow-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(--blue)}.photo-drop{border:2px dashed var(--slate);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:var(--radius);border:1px solid var(--line)}.action-bar{position:fixed;left:0;right:0;bottom:0;display:flex;gap:1px;background:var(--dark);border-top:1px solid var(--dark);box-shadow:0 -4px 16px rgba(34,37,42,.16);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(--dark);color:#fff}.action-wa{background:#25d366;color:#08331c}.action-quote{background:var(--yellow);color:var(--ink)}.action-btn svg{display:block}@media (min-width:860px){.action-bar{display:none}}@media (max-width:859px){body{padding-bottom:3.9rem}}.sticky-cta{display:none}.band{background:repeating-linear-gradient(0deg,transparent 0 31px,rgba(255,255,255,.045) 31px 32px),repeating-linear-gradient(90deg,transparent 0 31px,rgba(255,255,255,.045) 31px 32px),var(--dark);padding:3.6rem 0;border-top:3px solid var(--yellow)}.band,.band h2{color:var(--white)}.band p{color:#c3c9c4}.band a:not(.btn){color:var(--white)}.band-actions{display:flex;flex-wrap:wrap;gap:.75rem}.band .btn-primary{border-color:var(--yellow)}.btn-wa{background:#25d366;color:#08331c;border-color:#25d366}.btn-wa:hover{background:#1eb457;color:#08331c}.site-footer{background:var(--dark);color:#b6bcb7;padding:3rem 0 2rem;font-size:.93rem}.site-footer a{color:#dbe0dc;text-decoration:none}.site-footer a:hover{color:var(--yellow);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:1.05rem;margin-bottom:.7rem;letter-spacing:.05em}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:.45rem}.footer-legal{border-top:1px solid #3a3f46;margin-top:2.2rem;padding-top:1.2rem;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.85rem;color:#8f958f}.footer-address{font-style:normal;line-height:1.55;margin-top:1rem;font-size:.9rem}.footer-address strong{color:var(--white)}.muted-dim{color:#8f958f}.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(--ink);box-shadow:var(--shadow)}.contact-card strong{font-family:var(--font-display);font-size:1.15rem;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}