@import "https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@100..125,500..900&family=Public+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700&display=swap";:root{--ink:#14202f;--brand:#1e4b7a;--brand-dark:#0f1a28;--accent:#c94d15;--accent-2:#9c3a0d;--accent-3:#e5b03a;--cream:#f3f5f7;--card:#fff;--line:#d8dfe6;--muted:#536171;--font:"Public Sans",Arial,sans-serif;--font-head:"Archivo","Public Sans",Arial,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;--gut:max(20px,4.5vw)}*{box-sizing:border-box}html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body,#root{max-width:100%;overflow-x:clip}body{color:var(--ink);font-family:var(--font);background:var(--cream);margin:0;font-size:16px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.6px;margin:0;font-weight:800;font-stretch:112%;line-height:1.05}p{margin:0}small{font:700 12px var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--accent-2);display:block}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,.84,.44,1),transform .7s cubic-bezier(.16,.84,.44,1);transform:translateY(26px)}.reveal.visible{opacity:1;transform:none}header{height:76px;padding:0 var(--gut);z-index:50;border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:24px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;display:flex}.brand img{width:48px;height:48px}.brand b{font:800 18px var(--font-head);color:var(--brand);letter-spacing:-.2px;font-stretch:115%;display:block}.brand small{color:var(--muted);letter-spacing:.6px;margin-top:1px;font-size:10.5px}nav{gap:28px;margin-left:auto;font-size:15px;font-weight:600;display:flex}nav a{border-bottom:2px solid #0000;padding:6px 0}nav a:hover,nav a.nav-active{border-color:var(--accent);color:var(--brand)}.hamb{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:8px;display:none}.header-phone{white-space:nowrap;align-items:center;gap:7px;font-size:15px;font-weight:700;display:flex}.header-phone svg{color:var(--accent)}.header-cta{background:var(--accent);color:#fff;white-space:nowrap;border-radius:6px;padding:11px 18px;font-size:14px;font-weight:700}.header-cta:hover{background:var(--accent-2)}.btn{border:2px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:9px;padding:14px 22px;font-size:15px;font-weight:700;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.btn:hover{background:var(--accent-2);border-color:var(--accent-2);transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.line{color:#fff;background:0 0;border-color:#ffffffbf}.btn.line:hover{background:#ffffff1f;border-color:#fff}.btn.ghost{border-color:var(--line);color:var(--ink);background:0 0}.btn.ghost:hover{border-color:var(--brand);background:#fff}.btn.full{width:100%}.btn-row{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.tape{background:repeating-linear-gradient(90deg,#14202fd9 0 2px,transparent 2px 64px) 0 0/100% 15px no-repeat, repeating-linear-gradient(90deg,#14202f99 0 1px,transparent 1px 16px) 0 0/100% 8px no-repeat, repeating-linear-gradient(90deg,#14202f59 0 1px,transparent 1px 8px) 0 0/100% 5px no-repeat, var(--accent-3);height:26px}.tape.dark{height:18px}.hero{color:#fff;flex-direction:column;justify-content:flex-end;min-height:min(86vh,780px);display:flex;position:relative;overflow:hidden}.hero-bg{object-fit:cover;object-position:50% 62%;width:100%;height:100%;position:absolute;inset:0}.hero:before{content:"";z-index:1;background:linear-gradient(#0a121d0d 30%,#0a121d8c 62%,#0a121de0 100%),linear-gradient(90deg,#0a121d73,#0000 60%);position:absolute;inset:0}.hero-in{z-index:2;padding:0 var(--gut) 52px;max-width:900px;position:relative}.hero h1{letter-spacing:-1.5px;font-size:clamp(40px,6.4vw,84px);font-weight:900;line-height:.98}.hero h1 span{display:block}.hero p{color:#e6ebf1;max-width:560px;margin:20px 0 26px;font-size:clamp(16px,1.6vw,19px);line-height:1.5}.hero-btns{flex-wrap:wrap;gap:12px;display:flex}.hero .tape{z-index:2;position:relative}.intro{max-width:1240px;padding:96px var(--gut) 80px;grid-template-columns:1.25fr 1fr;align-items:end;gap:64px;margin:0 auto;display:grid}.intro blockquote{font:800 clamp(28px,3.6vw,46px)/1.12 var(--font-head);letter-spacing:-.8px;color:var(--brand);margin:0;font-stretch:108%}.intro-side p{color:var(--muted);font-size:17px;line-height:1.7}.intro-contact{flex-wrap:wrap;gap:6px 12px;font-weight:700;display:flex;color:var(--ink)!important;margin-top:18px!important;font-size:15px!important}.intro-contact a{border-bottom:2px solid var(--accent-3)}.intro-contact span{color:var(--line)}.svc-index{max-width:1240px;padding:0 var(--gut) 100px;margin:0 auto}.svc-index-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:16px;display:flex}.svc-index h2{font-size:clamp(26px,3vw,36px)}.svc-index-head p{color:var(--muted);font-size:14px}.svc-index ol{margin:0;padding:0;list-style:none}.svc-index li{border-bottom:1px solid var(--line)}.svc-index li a{grid-template-columns:200px 1fr auto;align-items:center;gap:32px;padding:18px 0;transition:background .2s;display:grid}.svc-index li a:hover{background:#fff}.svc-thumb{aspect-ratio:3/2;background:var(--line);border-radius:4px;display:block;position:relative;overflow:hidden}.svc-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.svc-index li a:hover .svc-thumb img{transform:scale(1.05)}.svc-thumb em,figure>em{font:600 10px var(--mono);letter-spacing:.4px;text-transform:uppercase;color:#fff;background:#0f1a28b8;border-radius:3px;padding:3px 6px;font-style:normal;position:absolute;bottom:6px;left:6px}.svc-txt b{font:800 clamp(20px,2.2vw,28px) var(--font-head);letter-spacing:-.4px;font-stretch:110%;display:block}.svc-txt span{color:var(--muted);margin-top:4px;display:block}.svc-arrow{color:var(--accent);margin-right:8px;transition:transform .2s}.svc-index li a:hover .svc-arrow{transform:translate(3px,-3px)}.build{background:var(--brand-dark);color:#fff}.build-in{max-width:1240px;padding:84px var(--gut) 96px;margin:0 auto}.build-head{grid-template-columns:1fr 1fr;align-items:end;gap:20px 64px;margin-bottom:44px;display:grid}.build-head small{color:var(--accent-3);grid-column:1/-1}.build-head h2{font-size:clamp(30px,4vw,52px)}.build-head p{color:#b8c4d2;font-size:16px;line-height:1.6}.build-strip{grid-template-columns:repeat(3,1fr);align-items:start;gap:40px 22px;margin:0;padding:0;list-style:none;display:grid}.build-strip img{aspect-ratio:4/3;object-fit:cover;border-radius:3px;width:100%}.build-strip li>div{border-top:2px solid var(--accent-3);grid-template-columns:auto 1fr;gap:2px 12px;margin-top:14px;padding-top:14px;display:grid}.build-strip .mark{font:700 13px var(--mono);color:var(--brand-dark);background:var(--accent-3);border-radius:2px;grid-row:span 2;place-items:center;width:28px;height:28px;display:grid}.build-strip b{font:800 19px var(--font-head);font-stretch:110%}.build-strip p{color:#aebbc9;font-size:14.5px;line-height:1.5}.painted{max-width:1240px;padding:96px var(--gut);margin:0 auto}.painted-head{margin-bottom:28px}.painted-head h2{margin-top:8px;font-size:clamp(30px,4vw,52px)}.pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.pair figure,.painted-row figure{background:var(--line);border-radius:4px;margin:0;position:relative;overflow:hidden}.pair img{aspect-ratio:4/3;object-fit:cover;width:100%}.pair figure:first-child img{object-position:50% 70%}.pair figcaption{font:700 12px var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--ink);background:#fff;border-radius:3px;padding:6px 10px;position:absolute;top:14px;left:14px}.pair figcaption.o{background:var(--accent);color:#fff}.painted-row{grid-template-columns:1.3fr 1fr 1fr;align-items:stretch;gap:14px;margin-top:14px;display:grid}.painted-row img{object-fit:cover;width:100%;height:100%;min-height:240px}.painted-row blockquote{border-left:4px solid var(--accent);background:#fff;flex-direction:column;justify-content:space-between;gap:18px;margin:0;padding:30px 28px;display:flex}.painted-row blockquote p{font:700 clamp(19px,1.9vw,24px)/1.3 var(--font-head);letter-spacing:-.3px;color:var(--brand)}.painted-row cite{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-style:normal}.reviews{padding:88px var(--gut);background:#e8edf2}.reviews>small,.reviews .rv{max-width:1240px;margin-left:auto;margin-right:auto}.reviews>small{color:var(--brand);margin-bottom:24px}.rv{grid-template-columns:1.6fr 1fr;align-items:start;gap:20px;display:grid}.rv figure{border-top:4px solid var(--accent-3);background:#fff;border-radius:4px;margin:0;padding:32px}.rv blockquote{color:#2b3949;margin:0;font-size:16px;line-height:1.65}.rv .big blockquote{font:600 clamp(19px,1.8vw,23px)/1.5 var(--font);color:var(--ink)}.rv figcaption{flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:20px;display:flex}.rv figcaption b{font:800 16px var(--font-head);font-stretch:110%}.rv figcaption span{font:600 11.5px var(--mono);text-transform:uppercase;letter-spacing:.6px;color:var(--accent-2)}.estimate{max-width:1240px;padding:96px var(--gut);grid-template-columns:1.5fr 1fr;align-items:start;gap:56px;margin:0 auto;display:grid}.est-form h2{font-size:clamp(30px,3.8vw,48px)}.est-form>p{color:var(--muted);margin:12px 0 26px;font-size:16.5px}.chips{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.chips button{border:1.5px solid var(--line);cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;padding:9px 14px;font-size:14px;font-weight:600;transition:border-color .2s,background .2s}.chips button:hover{border-color:var(--brand)}.chips button.on{background:var(--brand);border-color:var(--brand);color:#fff}.estimate label{margin-bottom:16px;font-size:13.5px;font-weight:700;display:block}.estimate input,.estimate textarea{border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:5px;margin-top:7px;padding:13px 14px;font-size:16px;display:block}.estimate input:focus,.estimate textarea:focus{border-color:var(--brand);outline:none}.estimate textarea{resize:vertical;min-height:120px}.row2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.notice{border-left:4px solid var(--accent);background:#fff;padding:18px 20px;line-height:1.6}.est-side{background:var(--brand-dark);color:#fff;border-radius:4px;padding:32px 28px}.est-side img{width:150px;margin:0 auto 22px}.est-side ul{margin:0;padding:0;list-style:none}.est-side li{overflow-wrap:anywhere;border-top:1px solid #ffffff1f;align-items:center;gap:12px;padding:13px 0;font-size:15px;display:flex}.est-side li svg{color:var(--accent-3);flex:none}.est-side a:hover{color:var(--accent-3)}.page-head{color:#fff;flex-direction:column;justify-content:flex-end;min-height:380px;display:flex;position:relative;overflow:hidden}.page-head>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.page-head:before{content:"";z-index:1;background:linear-gradient(#0a121d59 25%,#0a121de6);position:absolute;inset:0}.page-head>.ph-in{z-index:2;padding:0 var(--gut) 40px;max-width:900px;position:relative}.page-head small{color:var(--accent-3)}.page-head h1{margin:10px 0 12px;font-size:clamp(36px,5.4vw,68px)}.page-head p{color:#dfe6ee;max-width:600px;font-size:17px;line-height:1.55}.page-head .tape{z-index:2;position:relative}.svc-blocks{max-width:1240px;padding:72px var(--gut) 40px;gap:72px;margin:0 auto;display:grid}.svc-blocks article{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;display:grid}.svc-blocks article.flip figure{order:2}.svc-blocks figure,.detail figure{border-radius:4px;margin:0;position:relative;overflow:hidden}.svc-blocks figure img{aspect-ratio:4/3;object-fit:cover;width:100%}.svc-blocks h2{margin-bottom:14px;font-size:clamp(26px,3vw,38px)}.svc-blocks p,.detail .lead{color:var(--muted);font-size:16.5px;line-height:1.7}.svc-blocks ul,.detail ul{margin:20px 0 0;padding:0;list-style:none}.svc-blocks li,.detail li{border-bottom:1px solid var(--line);padding:10px 0 10px 26px;font-weight:600;position:relative}.svc-blocks li:before,.detail li:before{content:"";background:var(--accent);width:12px;height:4px;position:absolute;top:17px;left:2px}.detail{max-width:1240px;padding:72px var(--gut) 96px;grid-template-columns:1fr 1fr;align-items:start;gap:56px;margin:0 auto;display:grid}.detail figure img{aspect-ratio:4/3;object-fit:cover;width:100%}.others{flex-direction:column;margin-top:40px;display:flex}.others small{margin-bottom:8px}.others a{border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 0;font-weight:700;display:flex}.others a:hover{color:var(--accent)}.all-photos{max-width:1240px;padding:0 var(--gut) 96px;margin:0 auto}.all-photos h2{margin-bottom:22px;font-size:clamp(24px,2.6vw,32px)}.masonry{columns:3 300px;column-gap:12px}.masonry button{cursor:zoom-in;background:var(--line);break-inside:avoid;border:0;border-radius:3px;width:100%;margin:0 0 12px;padding:0;display:block;overflow:hidden}.masonry img{width:100%;height:auto;transition:transform .4s}.masonry button:hover img{transform:scale(1.03)}.lightbox{z-index:250;background:#080d14f0;place-items:center;padding:56px 64px;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:100%;max-height:calc(100vh - 112px)}.lightbox button{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:50%;place-items:center;width:46px;height:46px;display:grid;position:absolute}.lightbox button:hover{background:var(--accent)}.lb-x{top:14px;right:14px}.lb-prev{margin-top:-23px;top:50%;left:12px}.lb-next{margin-top:-23px;top:50%;right:12px}footer{background:var(--brand-dark);color:#b8c4d2;padding:64px var(--gut) 26px}.foot-grid{grid-template-columns:1.5fr 1fr 1fr;gap:48px;max-width:1240px;margin:0 auto 40px;display:grid}.foot-brand img{width:120px;margin-bottom:18px}.foot-brand p{max-width:380px;line-height:1.7}footer h3{font:700 12px var(--mono);text-transform:uppercase;letter-spacing:1px;color:var(--accent-3);margin-bottom:14px}.foot-grid a,.foot-grid span{padding:5px 0;display:block}.foot-grid a:hover{color:#fff}.foot-bottom{color:#7f8ea0;border-top:1px solid #ffffff1a;max-width:1240px;margin:0 auto;padding-top:20px;font-size:13px}.mobile-quote{display:none}.site-toast{background:var(--brand-dark);color:#fff;border-left:3px solid var(--accent-3);opacity:0;pointer-events:none;z-index:200;border-radius:6px;max-width:calc(100vw - 32px);padding:13px 20px;font-size:14px;font-weight:600;transition:opacity .25s,transform .25s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);box-shadow:0 18px 40px -16px #00000080}.site-toast.show{opacity:1;transform:translate(-50%)}@media (width<=1000px){nav{padding:14px var(--gut) 20px;border-bottom:1px solid var(--line);background:#fff;flex-direction:column;gap:4px;display:none;position:absolute;top:76px;left:0;right:0}nav.open{display:flex}.hamb{margin-left:auto;display:block}.header-cta{display:none}.intro,.build-head,.estimate,.detail,.svc-blocks article{grid-template-columns:1fr}.intro{padding:64px var(--gut);gap:24px}.svc-blocks article.flip figure{order:0}.svc-blocks article{gap:24px}.build-strip{grid-template-columns:repeat(2,1fr)}.rv{grid-template-columns:1fr}.painted-row{grid-template-columns:1fr 1fr}.painted-row blockquote{grid-column:1/-1}.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}@media (width<=640px){header{gap:10px;height:66px}nav{top:66px}.brand img{width:40px;height:40px}.brand b{font-size:16px}.header-phone span{display:none}.header-phone{padding:8px}.hero{min-height:calc(100svh - 122px)}.hero-in{padding-bottom:30px}.hero h1{letter-spacing:-1px}.hero-btns .btn{flex:auto}.svc-index li a{grid-template-columns:96px 1fr auto;gap:16px;padding:14px 0}.svc-thumb em{padding:2px 4px;font-size:8.5px;bottom:4px;left:4px}.svc-index-head p{display:none}.build-in{padding:60px var(--gut) 64px}.build-strip{scroll-snap-type:x mandatory;margin:0 calc(var(--gut)*-1);padding:0 var(--gut) 8px;scrollbar-width:none;gap:14px;display:flex;overflow-x:auto}.build-strip::-webkit-scrollbar{display:none}.build-strip li{scroll-snap-align:start;flex:0 0 82%}.painted,.estimate{padding:64px var(--gut)}.pair{grid-template-columns:1fr}.painted-row{grid-template-columns:1fr 1fr}.painted-row img{min-height:160px}.reviews{padding:64px var(--gut)}.rv figure{padding:24px}.row2{grid-template-columns:1fr;gap:0}.page-head{min-height:300px}.svc-blocks{gap:56px;padding-top:48px}.lightbox{padding:60px 8px}.foot-grid{grid-template-columns:1fr;gap:28px}.mobile-quote{background:var(--accent);color:#fff;z-index:60;justify-content:center;align-items:center;gap:10px;height:56px;font-size:16px;font-weight:700;display:flex;position:fixed;bottom:0;left:0;right:0}body{padding-bottom:56px}}.agency-pop{z-index:300;opacity:0;pointer-events:none;background:#080d14cc;place-items:center;padding:1rem;transition:opacity .26s;display:grid;position:fixed;inset:0}.agency-pop[hidden]{display:none!important}.agency-pop.is-open{opacity:1;pointer-events:auto}.agency-card{background:var(--brand-dark);border-top:4px solid var(--accent-3);text-align:center;color:#fff;border-radius:8px;width:min(100%,460px);max-height:calc(100vh - 2rem);padding:2rem 1.6rem 1.4rem;position:relative;overflow-y:auto;box-shadow:0 40px 100px -20px #000000b3}.agency-card img{width:120px;height:auto;margin:0 auto .9rem}.agency-card h2{color:#fff;font-size:1.3rem}.agency-card p{color:#dfe6ee;margin-top:.8rem;font-size:15px;line-height:1.55}.agency-card .agency-note{color:#b8c4d2;font-size:14px}.agency-card .agency-note strong{color:#fff}.agency-actions{gap:.6rem;margin-top:1.3rem;display:grid}.agency-card .btn.ghost{color:#fff;border-color:#ffffff59}.agency-card .btn.ghost:hover{border-color:var(--accent-3);background:#ffffff14}.agency-close{color:#b8c4d2;cursor:pointer;background:0 0;border:0;width:44px;height:44px;font-size:1.8rem;line-height:1;position:absolute;top:.4rem;right:.5rem}.agency-close:hover{color:#fff}.agency-dismiss{color:var(--accent-3);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:.9rem;padding:.6rem;font-weight:600}.agency-dismiss:hover{color:#fff}@media (width<=1000px){.svc-blocks figure,.detail figure{max-width:720px}}.painted-row img{aspect-ratio:1;height:auto;min-height:0}.page-head+.build>.tape{display:none}
