:root{--ink:#1a2122;--ink2:#243031;--gold:#c98260;--gold2:#dd9d7d;--copper-dk:#a4543b;--slate:#2c3838;--stone:#f3efe8;--line:#e4ddd1;--text:#2a2f37;--muted:#6b7280;--r:14px;--sh:0 18px 40px -18px #1a212259}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font:400 17px/1.65 Inter,system-ui,sans-serif}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,.eyebrow,.btn,.logo b{font-family:Montserrat,system-ui,sans-serif}h1{letter-spacing:-.02em;margin:.2em 0 .35em;font-size:clamp(2.2rem,5.2vw,4.1rem);font-weight:800;line-height:1.08}h2{letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em;font-size:clamp(1.7rem,3.2vw,2.6rem);font-weight:700;line-height:1.15}h3{color:var(--ink);margin:0 0 .4em;font-size:1.15rem;font-weight:700}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--copper-dk);margin-bottom:.6em;font-size:.78rem;font-weight:700;display:inline-block}.skip{position:absolute;left:-999px}.skip:focus{z-index:99;background:#fff;padding:8px;top:8px;left:8px}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}.band{padding:96px 0}.band.stone{background:var(--stone)}.band.dark{background:var(--ink);color:#d9dce1}.band.dark h2,.band.dark h3{color:#fff}.center{text-align:center}.lead{max-width:720px;font-size:1.15rem}.center .lead{margin-left:auto;margin-right:auto}.btn{letter-spacing:.04em;cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 28px;font-size:.92rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.btn.gold{background:var(--gold);color:var(--ink)}.btn.gold:hover{background:var(--gold2);transform:translateY(-1px)}.btn.ghost{color:#fff;border-color:#ffffffb3}.btn.ghost:hover{color:var(--ink);background:#fff}.btn.dark{background:var(--ink);color:#fff}.btn.dark:hover{background:var(--ink2)}.btn.outline{border-color:var(--ink);color:var(--ink)}.btn.outline:hover{background:var(--ink);color:#fff}.btn.sm{padding:10px 20px;font-size:.82rem}.btns{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.center .btns{justify-content:center}.hdr{z-index:50;color:#fff;justify-content:space-between;align-items:center;padding:18px 32px;transition:all .25s;display:flex;position:fixed;inset:0 0 auto}.hdr.solid{background:#1a2122;padding:12px 32px;box-shadow:0 4px 20px #0003}.logo{color:#fff;align-items:center;gap:12px;text-decoration:none;display:flex}.logo svg{width:44px;height:28px}.logo span{flex-direction:column;line-height:1.1;display:flex}.logo b{letter-spacing:.16em;font-size:1.05rem}.logo small{letter-spacing:.32em;color:var(--gold);font-size:.62rem;font-weight:600}.hdr nav{align-items:center;gap:26px;display:flex}.hdr nav a:not(.btn){opacity:.9;font-size:.9rem;font-weight:500;text-decoration:none}.hdr nav a:not(.btn):hover,.hdr nav a[aria-current]{opacity:1;color:var(--gold2)}.nt,.burger{display:none}.hero{color:#fff;align-items:flex-end;min-height:92vh;display:flex;position:relative;overflow:hidden}.hero.short{min-height:62vh}.hero img.bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(90deg,#121718b3 0%,#12171859 60%,#12171826 100%),linear-gradient(#12171880 0%,#0000 30%,#12171899 100%);position:absolute;inset:0}.hero .wrap{z-index:1;width:100%;padding-top:140px;padding-bottom:90px;position:relative}.hero h1{color:#fff;max-width:900px}.hero p.lead{color:#e8e9ec}.trust{color:#e8e9ec;flex-wrap:wrap;gap:12px 30px;margin-top:38px;font-size:.88rem;display:flex}.trust span:before{content:"✓";color:var(--gold);margin-right:8px;font-weight:800}.grid{gap:26px;display:grid}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.split{grid-template-columns:1.1fr 1fr;align-items:center;gap:64px;display:grid}.split img{border-radius:var(--r);box-shadow:var(--sh);aspect-ratio:4/3;object-fit:cover;width:100%}.tile{border-radius:var(--r);color:#fff;aspect-ratio:3/4;box-shadow:var(--sh);align-items:flex-end;text-decoration:none;display:flex;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}.tile:hover img{transform:scale(1.05)}.tile:after{content:"";background:linear-gradient(#0000 35%,#121718e6);position:absolute;inset:0}.tile div{z-index:1;padding:24px;position:relative}.tile h3{color:#fff;font-size:1.2rem}.tile p{color:#d9dce1;margin:0;font-size:.92rem}.tile .price{color:var(--gold2);font-family:Montserrat;font-weight:700}.card{border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--line);background:#fff;flex-direction:column;padding:32px;display:flex;position:relative}.card .price{color:var(--ink);margin:.1em 0 .3em;font-family:Montserrat;font-size:2.2rem;font-weight:800}.card .price small{color:var(--muted);font-size:.9rem;font-weight:600}.card ul{flex:1;margin:0 0 24px;padding:0;list-style:none}.card li{border-bottom:1px solid #f0ebe2;padding:7px 0 7px 26px;font-size:.95rem;position:relative}.card li:before{content:"";border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);width:12px;height:7px;position:absolute;top:15px;left:2px;transform:rotate(-45deg)}.card.feat{border:2px solid var(--gold);transform:translateY(-8px)}.card .tag{background:var(--gold);color:var(--ink);letter-spacing:.14em;border-radius:999px;padding:5px 12px;font:700 .72rem Montserrat;position:absolute;top:-13px;left:32px}.card .btn{align-self:flex-start}.mini{border-radius:var(--r);border:1px solid var(--line);background:#fff;padding:24px}.mini .p{color:var(--gold);font:700 1.1rem Montserrat}.band.dark .mini{background:var(--ink2);border-color:#2c323c}.band.dark .mini p{color:#c3c7ce}.icon{width:48px;height:48px;color:var(--gold);background:#c9826029;border-radius:12px;place-items:center;margin-bottom:16px;font:800 1.2rem Montserrat;display:grid}.steps{counter-reset:s}.step{counter-increment:s}.step .icon:before{content:counter(s)}.compare{border-radius:var(--r);box-shadow:var(--sh);aspect-ratio:3/2;position:relative;overflow:hidden}.compare img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.compare .top{clip-path:inset(0 0 0 50%)}.compare input{opacity:0;cursor:ew-resize;z-index:3;width:100%;height:100%;margin:0;position:absolute;inset:0}.compare .bar{z-index:2;pointer-events:none;background:#fff;width:3px;position:absolute;top:0;bottom:0;left:50%}.compare .bar:after{content:"◀ ▶";color:var(--ink);white-space:nowrap;background:#fff;border-radius:999px;padding:10px 12px;font-size:.7rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.compare .lbl{z-index:2;color:#fff;letter-spacing:.14em;background:#1a2122bf;border-radius:999px;padding:6px 12px;font:700 .72rem Montserrat;position:absolute;bottom:14px}.quote{background:var(--ink2);border-radius:var(--r);border:1px solid #2c323c;padding:34px}.quote p{color:#e3e5e9;margin:0 0 18px;font-size:1.05rem}.quote:before{content:"“";color:var(--gold);margin-bottom:14px;font:800 3.5rem/.6 Montserrat;display:block}.quote cite{color:#fff;font-style:normal;font-weight:600}.quote cite span{color:var(--gold2);font-size:.88rem;font-weight:400;display:block}.filters{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:34px;display:flex}.filters label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:9px 20px;font:600 .85rem Montserrat}.filters input{opacity:0;position:absolute}.filters input:checked+span{color:var(--gold)}.masonry{columns:3 320px;column-gap:16px}.masonry figure{break-inside:avoid;border-radius:10px;margin:0 0 16px;position:relative;overflow:hidden}.masonry figcaption{color:#fff;opacity:0;background:linear-gradient(#0000,#121718cc);padding:26px 14px 10px;font-size:.8rem;transition:all .25s;position:absolute;bottom:0;left:0;right:0}.masonry figure:hover figcaption{opacity:1}details{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:12px;padding:20px 24px}summary{cursor:pointer;color:var(--ink);justify-content:space-between;gap:16px;font:600 1.02rem Montserrat;list-style:none;display:flex}summary:after{content:"+";color:var(--gold);font-size:1.4rem;line-height:1}details[open] summary:after{content:"–"}details p{margin:.8em 0 0}.checklist{columns:2 300px;column-gap:40px}.checklist section{break-inside:avoid;border-radius:var(--r);border:1px solid var(--line);background:#fff;margin-bottom:34px;padding:28px}.checklist ul{margin:0;padding-left:20px}.checklist li{margin:6px 0}.checklist li::marker{color:var(--gold)}.prose{max-width:820px}.prose ol li,.prose p{margin-bottom:1em}.cta{color:#fff;text-align:center;padding:120px 0;position:relative;overflow:hidden}.cta img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cta:after{content:"";background:#121718b8;position:absolute;inset:0}.cta .wrap{z-index:1;position:relative}.cta h2{color:#fff}.contact-cards .card{align-items:flex-start}.contact-cards a.big{color:var(--ink);word-break:break-word;font:700 1.25rem Montserrat;text-decoration:none}.ftr{color:#b9bec7;background:#121718;padding:72px 0 96px;font-size:.93rem}.ftr-in{grid-template-columns:2fr 1fr 1fr;gap:48px;max-width:1200px;margin:0 auto;padding:0 24px;display:grid}.ftr h3{color:#fff;letter-spacing:.18em;text-transform:uppercase;font-size:.85rem}.ftr-in div a:not(.logo):not(.btn),.ftr-in div span{margin:6px 0;text-decoration:none;display:block}.ftr-in .btn{margin-top:14px}.ftr a:hover{color:var(--gold2)}.ftr-line,.ftr-copy{text-align:center;margin:0;padding:0 24px}.ftr-line{color:#d9dce1;border-top:1px solid #262a31;margin-top:48px;padding-top:28px}.ftr-line a{text-decoration:none}.ftr-copy{color:#7c828c;margin-top:8px;font-size:.85rem}.mbar{display:none}@media (width<=1020px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr 1fr}.burger{cursor:pointer;z-index:2;flex-direction:column;gap:5px;padding:8px;display:flex}.burger i{background:#fff;width:26px;height:2px;display:block}.hdr nav{background:var(--ink);flex-direction:column;justify-content:center;gap:22px;font-size:1.2rem;transition:all .3s;position:fixed;inset:0;transform:translate(100%)}.hdr nav a:not(.btn){font-size:1.2rem}.nt:checked~nav{transform:none}}@media (width<=760px){body{font-size:16px}.band{padding:64px 0}.g2,.g3,.g4,.split{grid-template-columns:1fr}.split{gap:32px}.hdr,.hdr.solid{padding:12px 18px}.hero{min-height:88svh}.hero .wrap{padding-bottom:56px}.card.feat{transform:none}.tile{aspect-ratio:4/3}.ftr-in{grid-template-columns:1fr;gap:30px}.mbar{z-index:40;grid-template-columns:1fr 2fr;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0003}.mbar a{text-align:center;background:var(--ink);color:#fff;padding:16px;font:700 .95rem Montserrat;text-decoration:none}.mbar a.gold{background:var(--gold);color:var(--ink)}.btns .btn{flex:100%}.masonry{columns:2 150px;column-gap:8px}.masonry figure{margin-bottom:8px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.pair figure{margin:0;position:relative}.pair img{aspect-ratio:3/4;object-fit:cover;width:100%;box-shadow:var(--sh);border-radius:12px}.pair figcaption{color:#fff;letter-spacing:.14em;text-transform:uppercase;background:#1a2122cc;border-radius:999px;padding:6px 12px;font:700 .72rem Montserrat;position:absolute;bottom:12px;left:12px}.faq h3{margin-top:0}.faq .q{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:12px;padding:22px 26px}.faq .q p{margin:.3em 0 0}.badges{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.center .badges{justify-content:center}.badge{color:#fff;background:#000;border:1px solid #a6a6a6;border-radius:10px;align-items:center;gap:10px;min-width:170px;padding:8px 18px 8px 14px;text-decoration:none;transition:all .2s;display:inline-flex}.badge:hover{border-color:#fff;transform:translateY(-1px)}.badge svg{width:26px;height:26px}.badge span{letter-spacing:-.01em;flex-direction:column;font:600 1.2rem/1.05 Inter,system-ui,sans-serif;display:flex}.badge small{letter-spacing:.02em;font-size:.62rem;font-weight:500}.app{grid-template-columns:1.3fr 1fr;align-items:center;gap:56px;display:grid}.code{letter-spacing:.18em;color:var(--ink);background:var(--gold);border-radius:8px;padding:6px 14px;font:800 1.1rem Montserrat;display:inline-block}.phone{aspect-ratio:9/19;width:250px;box-shadow:var(--sh);background:#121718;border:10px solid #121718;border-radius:36px;justify-self:center;position:relative;overflow:hidden}.phone img{object-fit:cover;width:100%;height:100%}.phone div{color:#fff;background:linear-gradient(#0000,#121718eb);padding:22px 16px;font:700 .95rem Montserrat;position:absolute;bottom:0;left:0;right:0}.phone div b{color:var(--gold2);letter-spacing:.16em;font-size:.72rem;display:block}.appnote{border-radius:var(--r);background:var(--ink);color:#d9dce1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin-top:36px;padding:24px 28px;display:flex}.appnote p,.appnote .badges{margin:0}@media (width<=760px){.app{grid-template-columns:1fr;gap:36px}.phone{width:210px}.badge{flex:150px;min-width:0}}.hero .eyebrow,.band.dark .eyebrow,.cta .eyebrow,.ftr .eyebrow,.appnote .eyebrow{color:var(--gold2)}.logo img{width:auto;height:56px}.hdr.solid .logo img{height:46px}@media (width<=760px){.logo img,.hdr.solid .logo img{height:40px}}.ftr .logo img{height:64px}.mini .p,.card .price small{color:var(--copper-dk)}.band.dark .mini .p{color:var(--gold2)}.badge span{white-space:nowrap}@media (width<=760px){.badge span{font-size:1.05rem}.badge{padding:8px 12px}}@media (width<=1020px){.hdr nav{z-index:100;background:#1a2122;width:100vw;height:100dvh;padding:80px 24px 40px;position:fixed;inset:0 0 auto;overflow-y:auto}.burger{z-index:101;position:relative}.nt:checked~.burger i:first-child{transform:translateY(7px)rotate(45deg)}.nt:checked~.burger i:nth-child(2){opacity:0}.nt:checked~.burger i:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.burger i{transition:all .2s}html:has(.nt:checked),body:has(.nt:checked){overflow:hidden}body:has(.nt:checked) .mbar{display:none}}.pair{grid-template-columns:1fr}.pair img{aspect-ratio:3/2}.ftr .fh{color:#fff;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font:700 .85rem Montserrat}.muted{color:#5b616b}.ftr .muted,.ftr-in div span.muted{color:#aeb4bd}.band.dark .muted{color:#b9bec7}.contact-cards h2{font-size:1.25rem}.areas{text-align:center;max-width:900px;margin:0 auto;font-size:1.02rem}.masonry img{width:100%;height:auto}
