:root{--charcoal:#103e65;--charcoal-soft:#315575;--ink-soft:#526b80;--glass:#f5f8fb;--glass-2:#eaf2f8;--amber:#176bbe;--amber-deep:#10579d;--steel:#176bbe;--radius:8px}
html{scroll-padding-top:100px}body{overflow-x:visible}button,input,select,textarea{font:inherit}button:disabled{opacity:.55;cursor:wait}.btn:disabled{cursor:not-allowed}[hidden]{display:none!important}:focus-visible{outline:3px solid #2c8cd4;outline-offset:4px}p{line-height:1.65}.wrap{max-width:1240px}.skip-link{position:fixed;top:-100px;left:20px;z-index:500;background:#fff;padding:14px}.skip-link:focus{top:10px}.logo-text span{display:block}.logo-text .l2{margin-top:5px}.logo-mark{width:52px;height:52px}.nav-inner{height:88px}header{background:rgba(255,255,255,.95)}nav.links{gap:24px}nav.links a{font-size:13px}.header-cta{gap:18px}.header-cta .btn{padding:12px 16px}.phone-link{font-size:12px;white-space:nowrap}.btn{min-height:48px}.btn-amber:hover,.btn-steel:hover{box-shadow:0 5px 18px #176bbe24}.btn-outline{border-color:#bacad7}.btn svg{width:18px}.hero{padding:76px 0 0;background:radial-gradient(ellipse at 75% 15%,#e0ecf6 0,transparent 60%),#f5f8fb}.hero-grid{grid-template-columns:1fr 1fr;gap:62px;padding-bottom:88px}.hero h1{font-size:clamp(44px,4.7vw,66px);line-height:1.08;letter-spacing:-.045em}.hero h1 em{background:none;color:var(--amber)}.hero p.lead{max-width:460px;font-size:16px;margin:26px 0 28px}.hero-actions .btn{padding:15px 20px}.hero-actions .btn span{margin-left:12px}.hero .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:24px}.trust-row{gap:30px;margin-top:36px;padding-top:22px}.trust-item .num{font-size:15px;color:var(--amber);margin-bottom:8px}.trust-item .lbl{font-size:11px;line-height:1.5}.hero-visual{aspect-ratio:1/1.05;min-width:0;width:100%;padding:18px;background:#e4edf5;border-radius:12px 80px 12px 12px}.hero-photo{height:100%;width:100%;overflow:hidden;border-radius:4px 66px 4px 4px;background:#c8dce9}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:42% center}.photo-label{position:absolute;top:42px;left:40px;background:#ffffffed;padding:10px 13px;border-radius:30px;font-size:11px;display:flex;align-items:center;gap:8px}.status-dot{width:6px;height:6px;background:#217953;border-radius:50%}.hero-badge{bottom:35px;left:-28px;right:35px;border:0;border-radius:8px;padding:20px}.badge-icon{width:42px;height:42px;background:#e7f1fa;color:var(--amber);display:grid;place-items:center;font-size:28px;border-radius:6px}.hero-badge .score{font-size:16px}.hero-badge .cnt{margin-top:5px}.visual-caption{position:absolute;bottom:-32px;right:8px;font-size:10px;letter-spacing:.13em;color:#607a90}.support-inner{padding:25px 24px;gap:20px}.support-inner .txt{gap:12px}.support-inner strong{color:#fff;font-size:16px}.support-inner p{font-size:13px;color:#d0e2ef}.banner-link{font-size:13px;color:#fff;text-decoration:none;white-space:nowrap}.banner-link span{margin-left:20px}.section{padding:88px 0}.section-head{max-width:730px;margin-bottom:38px}.section-head h2{line-height:1.2;letter-spacing:-.03em}.section-head p{font-size:15px}.mullion-x{display:none}.services-grid{gap:16px;border:0;background:none}.service-card{border:1px solid var(--line);border-radius:10px;padding:28px;transition:box-shadow .2s,transform .2s}.service-card:hover{background:#fff;box-shadow:0 12px 30px #103e650c;transform:translateY(-3px)}.material-band{border-radius:10px;overflow:hidden;margin-top:30px}.material-band>div{padding:22px}.material-band .n,.material-band .l{display:block}.material-band .l{font-size:12px}.demo-note{display:flex;gap:14px;align-items:center;margin-bottom:20px;padding:14px 18px;background:#f0f5fa;border:1px solid #d5e4f0;border-radius:8px;color:#48637a;font-size:12px;line-height:1.6}.demo-pill{color:#134e7c;border:1px solid #b9cedf;background:#fff;padding:4px 9px;white-space:nowrap;border-radius:4px;font-size:11px;font-weight:600}.calc-wrap{grid-template-columns:1.1fr .9fr;border-radius:12px;overflow:clip;align-items:start}.calc-form{padding:32px;border:0}.step-heading{display:flex;align-items:center;gap:12px;margin-bottom:24px}.step-heading>span:first-child{background:#eaf2f8;width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:5px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--amber)}.step-heading h3{font-size:18px}.field-row{margin:0;gap:18px}.field{min-width:0;margin-bottom:19px}.field label{font-family:Inter,sans-serif;text-transform:none;letter-spacing:0;font-size:12px;font-weight:600}.field label span{font-weight:400}.field select,.field input[type=number],.field input[type=text],.field input[type=email],.field input[type=tel],.field textarea{font-size:16px;min-height:48px;background:#fff;border-color:#ccd8e2}.field textarea{min-height:100px}.field-hint{font-size:12px;color:var(--ink-soft);margin:0 0 20px;line-height:1.6}.dimensions .field{margin-bottom:10px}.check-row{padding:0;border:0;margin-top:8px;gap:10px}.check-row legend{font-size:12px;font-weight:600;margin-bottom:12px;color:var(--ink-soft)}.check-row label{padding:12px;border:1px solid #dce5ed;border-radius:6px;align-items:center;font-size:13px}.check-row label:has(input:checked){background:#f1f7fc;border-color:#bad3e8}.check-row small{display:block;color:#647c90;font-size:11px;margin-top:3px}.check-row input{width:18px;height:18px;flex:none}.calc-preview{padding:32px;align-self:stretch;justify-content:flex-start;background:radial-gradient(ellipse at 50% 30%,#275775 0,transparent 65%),#103852;min-width:0}.preview-top{width:100%;display:flex;justify-content:space-between;align-items:center}.calc-preview .mini-eyebrow{color:#c3d8e6;font-size:10px;margin:0}.preview-count{padding:5px 9px;border:1px solid #628195;border-radius:4px;font-size:11px;color:#d3e5f1}.preview-svg-wrap{max-width:310px;margin:22px auto 0;aspect-ratio:1}.preview-dims{color:#d2e1ed;margin:6px 0 28px;font-size:12px}.preview-info{text-align:center;margin-bottom:28px}.preview-info h3{font-size:19px;color:#fff}.preview-info p{font-size:12px;color:#b5cfdf;margin:7px 0}.price-block{border-top:1px solid #456780;width:100%;padding-top:24px}.price-out{display:block;border:0;padding:0;margin:0}.calc-preview .price-out .lbl{display:block;color:#c1d7e7;font-size:12px;margin-bottom:10px}.price-out .val{display:block;font-size:clamp(25px,3vw,38px);color:#fff;line-height:1.2;letter-spacing:-.03em}.calc-preview .price-note{color:#c1d7e7;margin:14px 0 0;font-size:12px;line-height:1.7}.preview-foot{display:flex;gap:12px;padding-top:24px;margin-top:auto;color:#b5cfdf;font-size:11px}.preview-foot>span{margin-top:14px}.quote-section{margin-top:28px;padding:28px 32px;border:1px solid var(--line);border-radius:10px;background:var(--glass)}.item-count{font-size:11px;margin-left:auto;color:var(--ink-soft)}.quote-section .step-heading{margin-bottom:12px}.empty-state{padding:20px;text-align:center;border:1px dashed #bdceda;border-radius:6px;color:#647b8d;font-size:13px}.quote-item{display:flex;align-items:flex-start;gap:18px;padding:19px 0;border-top:1px solid #d6e1e9}.quote-item-main{flex:1;min-width:0}.quote-item h4{margin:0 0 6px;font-size:14px}.quote-item p{font-size:12px;color:var(--ink-soft);margin:2px 0}.quote-item-price{font-size:14px;text-align:right;font-weight:600;white-space:nowrap}.quote-item-actions{display:flex;gap:15px;margin-top:10px}.text-button{padding:8px 0;background:none;border:0;cursor:pointer;color:#1765a8;text-decoration:underline;font-size:12px;min-height:40px}.quote-total{border-top:1px solid #d6e1e9;padding-top:16px;font-size:14px;line-height:1.7}.quote-total:empty{display:none}.quote-total strong{font-size:20px}.quote-total small{display:block;color:var(--ink-soft);font-size:12px}.request-form{display:grid;grid-template-columns:.7fr 1fr;gap:64px;padding:44px 32px 0}.send-summary{padding:18px;border-left:3px solid #176bbe;background:#f1f6fa;font-size:13px;line-height:1.7}.send-notice{font-size:11px;color:#556e82;line-height:1.7;margin:0 0 18px}.form-msg{line-height:1.7}.form-msg.err{background:#fff3ef;color:#833521}.form-msg a{font-weight:600}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.process-grid article{border-top:1px solid #bccedc;padding-top:26px}.process-number{display:block;color:var(--amber);font-family:'IBM Plex Mono',monospace;font-size:12px;margin-bottom:25px}.process-grid h3{font-size:20px;margin-bottom:12px}.process-grid p{font-size:14px;color:var(--ink-soft)}.gallery-grid{gap:18px}.gallery-item{border:0;border-radius:8px;aspect-ratio:4/3}.gallery-item img{cursor:zoom-in}.gallery-item figcaption{pointer-events:none;padding:40px 16px 14px}.gallery-note{font-size:11px}.ba-grid{gap:24px;max-width:800px}.ba-item{aspect-ratio:3/4;border:0;border-radius:8px}.ba-item img{object-fit:contain;background:#e4edf3;cursor:zoom-in}.ba-item figcaption{pointer-events:none}.ba-item .tag{border-radius:4px}.faq-section{background:#edf3f8}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}.faq-list details{border-bottom:1px solid #c7d7e3}.faq-list summary{padding:23px 28px 23px 0;cursor:pointer;font-weight:600;font-size:14px;position:relative;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:20px;font-size:23px;color:var(--amber)}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:13px;color:var(--ink-soft);margin:0 0 24px}.contact-grid{border-radius:12px;overflow:hidden}.contact-info,.contact-form{padding:36px}.map-embed{border-radius:6px;height:240px}.contact-row a{overflow-wrap:anywhere}.mobile-actions{display:none}.mobile-drawer{visibility:hidden;pointer-events:none}.mobile-drawer.open{visibility:visible;pointer-events:auto}.mobile-drawer .foot a{color:#c3e3ff}.mobile-drawer .close-x{min-width:48px;min-height:48px}.lightbox-close{position:absolute;right:12px;top:10px;border:0;border-radius:50%;width:44px;height:44px;background:#fff;color:#103e65;font-size:30px;cursor:pointer}#lightbox{border:0;border-radius:10px;padding:16px;max-width:min(950px,94vw);max-height:94dvh;background:#f5f8fb;color:#103e65}#lightbox::backdrop{background:#071d32df}#lightbox img{max-height:78dvh;object-fit:contain;margin:auto}#lightbox p{font-size:13px;margin:12px 0 0;padding-right:40px}footer{padding:30px 0}
@media(min-width:881px) and (max-width:1150px){.header-cta .phone-link{display:none}.hero-grid{gap:40px}.calc-form,.calc-preview{padding:26px}.hero-actions{gap:10px}.hero-actions .btn{font-size:12px}}
@media(max-width:880px){html{scroll-padding-top:86px}.nav-inner{height:74px}.hero{padding-top:38px}.hero-grid{grid-template-columns:1fr 1fr;gap:28px;padding-bottom:64px}.hero h1{font-size:43px}.hero p.lead{font-size:14px}.hero-visual{max-width:none;margin:0;aspect-ratio:3/4;padding:10px;border-radius:8px 48px 8px 8px}.hero-photo{border-radius:4px 40px 4px 4px}.photo-label{top:25px;left:20px;font-size:9px;padding:8px}.hero-badge{left:-12px;right:18px;bottom:25px;padding:14px;gap:8px}.hero-badge .score{font-size:12px}.hero-badge .cnt{font-size:10px}.badge-icon{width:30px;height:30px;font-size:22px}.trust-row{gap:18px}.trust-item .lbl{font-size:10px}.hero-actions .btn{font-size:12px}.section{padding:64px 0}.field-row{grid-template-columns:1fr 1fr}.calc-wrap{grid-template-columns:1fr}.calc-preview{order:-1;display:grid;grid-template-columns:150px 1fr;gap:0 20px;padding:24px}.preview-top{grid-column:1/-1;margin-bottom:12px}.preview-svg-wrap{grid-column:1;grid-row:2/5;width:150px;margin:0}.preview-dims{grid-column:1;grid-row:5;margin:0;font-size:10px}.preview-info{grid-column:2;grid-row:2;margin:0 0 12px;text-align:left}.preview-info h3{font-size:17px}.price-block{grid-column:2;grid-row:3/6;padding-top:12px}.price-out .val{font-size:29px}.calc-preview .price-out .lbl{font-size:11px}.calc-preview .price-note{font-size:11px;margin-top:8px}.preview-foot{grid-column:1/-1;padding-top:6px;margin-top:10px}.preview-foot p{margin:0}.preview-foot>span{margin:0}.request-form{gap:28px;grid-template-columns:1fr;padding:32px 0 0}.request-form .step-heading{margin-bottom:12px}.request-form>div:first-child>.field-hint{margin-bottom:14px}.send-summary{padding:12px 16px}.process-grid{gap:25px}.process-grid h3{font-size:17px}.faq-layout{gap:32px;grid-template-columns:1fr}.faq-layout .section-head{margin:0}.gallery-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr 1fr}.contact-info,.contact-form{padding:25px}.contact-form .field-row{grid-template-columns:1fr}}
@media(max-width:600px){body{padding-bottom:68px}.wrap{padding-left:20px;padding-right:20px}.header-cta .phone-link{display:none}.logo-mark{width:43px;height:43px}.logo-text .l1{font-size:17px}.logo-text .l2{font-size:9px}.nav-inner{height:70px}.hero{padding-top:34px}.hero-grid{grid-template-columns:1fr;gap:40px;padding-bottom:65px}.hero h1{font-size:clamp(42px,10.8vw,59px)}.hero .eyebrow{font-size:10px;margin-bottom:21px}.hero p.lead{font-size:15px;max-width:440px;margin:22px 0}.hero-actions{gap:10px}.hero-actions .btn{font-size:12px;padding:13px 14px;flex:1}.hero-actions .btn span{margin-left:4px}.trust-row{justify-content:space-between;gap:12px;margin-top:27px}.trust-item .lbl{font-size:10px}.hero-visual{aspect-ratio:1.45;max-width:100%;width:100%;padding:10px;border-radius:8px 50px 8px 8px}.hero-photo img{object-position:center 44%}.hero-badge{bottom:20px;left:-5px;right:30px;padding:13px 16px}.hero-badge .score{font-size:14px}.hero-badge .cnt{font-size:10px}.photo-label{top:24px;left:23px;font-size:10px}.visual-caption{bottom:-26px;font-size:9px}.support-inner{padding:23px 20px;gap:12px}.support-inner .txt{gap:4px}.support-inner p{font-size:12px}.banner-link{font-size:12px}.section{padding:54px 0}.section-head{margin-bottom:28px}.section-head h2{font-size:29px}.section-head p{font-size:14px}.eyebrow{font-size:11px}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{padding:23px;display:grid;grid-template-columns:32px 1fr;gap:8px 16px}.service-card .icon{grid-row:1/3;width:30px;height:30px}.service-card h3{font-size:16px}.service-card p{grid-column:2;font-size:13px}.material-band{grid-template-columns:1fr 1fr;margin-top:20px}.material-band>div{padding:18px}.material-band .n{font-size:20px}.material-band .l{font-size:10px}.demo-note{align-items:flex-start;flex-direction:column;gap:8px;font-size:11px;padding:13px}.calc-form{padding:22px 18px}.step-heading{gap:10px}.step-heading h3{font-size:16px}.calc-preview{padding:20px 16px;grid-template-columns:105px 1fr;gap:0 14px}.preview-svg-wrap{width:105px}.preview-info h3{font-size:15px}.preview-info p{font-size:10px;margin-bottom:8px}.price-out .val{font-size:25px}.calc-preview .price-note{font-size:10px}.preview-foot{font-size:10px}.preview-dims{font-size:9px}.field-row{gap:12px}.field label{font-size:11px}.field input,.field select{padding:12px 10px!important}.field-hint{font-size:11px}.check-row label{font-size:12px}.quote-section{padding:22px 18px}.quote-item{flex-wrap:wrap;gap:7px}.quote-item-main{flex-basis:100%}.quote-item-price{text-align:left;font-size:13px}.quote-total{font-size:12px}.quote-total strong{font-size:17px}.request-form .field-row{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr;gap:24px}.process-grid article{padding-top:20px}.process-number{margin-bottom:12px}.process-grid p{margin:9px 0 0;font-size:13px}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-item{aspect-ratio:1}.gallery-item figcaption{font-size:10px;padding:30px 10px 10px}.ba-grid{grid-template-columns:1fr 1fr;gap:12px}.ba-item{aspect-ratio:2/3}.ba-item figcaption{left:8px;top:10px}.ba-item .tag{font-size:9px;padding:5px 8px}.contact-grid{grid-template-columns:1fr}.contact-info,.contact-form{padding:26px 22px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.3fr;gap:10px;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:#fffffffa;border-top:1px solid #c7d6e2;z-index:90;backdrop-filter:blur(8px)}.mobile-actions a{padding:13px 8px;text-align:center;text-decoration:none;font-size:12px;font-weight:600;border:1px solid #b9cedd;border-radius:6px}.mobile-actions a:last-child{color:#fff;background:var(--amber);border-color:var(--amber)}.mobile-actions span{margin-left:15px}.footer-inner{font-size:11px}.faq-list summary{font-size:13px}.mobile-drawer{padding-bottom:calc(26px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.inline-estimate{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 0 20px;font-size:12px;border-top:1px solid #d4e0e9}.inline-estimate strong{font-size:19px;white-space:nowrap}.map-link{display:inline-block;color:#d7e9f8;font-size:12px;margin-top:12px;line-height:1.6}@media(max-width:400px){.inline-estimate{flex-direction:column;align-items:flex-start;gap:6px}}
.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item{aspect-ratio:4/3}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.gallery-footer .gallery-note{margin:0}.gallery-footer .btn{font-size:12px}.social-section{padding:38px 0;background:#eaf3fa;border-bottom:1px solid #cddfeb}.social-inner{display:flex;align-items:center;gap:38px}.social-score{display:flex;align-items:center;gap:16px;flex:none}.social-score strong{font-size:44px;color:#176bbe;letter-spacing:-.04em}.social-score span{font-size:11px;line-height:1.8;color:#526b80}.social-score b{font-weight:500}.social-copy{flex:1}.social-copy h2{font-size:18px}.social-copy p{font-size:12px;color:#526b80;margin:8px 0}.social-copy small{font-size:10px;color:#526b80}.social-inner>.btn{font-size:12px;flex:none}.showroom-section{background:#fff}.showroom-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.showroom-grid>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.showroom-grid h2{font-size:36px;line-height:1.2;letter-spacing:-.03em}.showroom-grid p{font-size:14px;color:#526b80}.showroom-details{display:flex;flex-direction:column;gap:7px;margin:24px 0;font-size:13px}.showroom-details span{color:#526b80}.showroom-source{display:block;font-size:11px;color:#526b80;margin-top:15px}@media(max-width:1100px){.social-inner{flex-wrap:wrap;gap:22px}.social-copy{min-width:250px}}@media(max-width:880px){.gallery-grid{grid-template-columns:1fr 1fr}.showroom-grid{gap:30px}.showroom-grid h2{font-size:30px}}@media(max-width:600px){.gallery-item{aspect-ratio:1}.gallery-footer{align-items:flex-start;flex-direction:column;gap:14px}.social-section{padding:28px 0}.social-inner{display:block}.social-score{margin-bottom:20px}.social-copy{min-width:0}.social-copy h2{font-size:19px}.social-inner>.btn{margin-top:18px}.showroom-grid{grid-template-columns:1fr;gap:28px}.showroom-grid h2{font-size:29px}}
