/* Dedicated pages share the approved showroom design. */
/* Shared project actions lift like the brand without changing layout. */
.button{transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}
@media(hover:hover) and (pointer:fine){.button:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 8px 24px #00e7f025,0 3px 12px #a855f733}}
.button:not(:disabled):focus-visible{transform:translateY(-3px);box-shadow:0 8px 24px #00e7f025}
.button:not(:disabled):active{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.button,.button:not(:disabled):hover,.button:not(:disabled):focus-visible,.button:not(:disabled):active{transform:none;transition:none}}
.social-contact{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.social-contact h3{font-size:1.1rem;margin-bottom:14px}
.social-contact a{display:block;width:fit-content;max-width:100%;min-height:44px;padding:5px 0;text-decoration:none;overflow-wrap:anywhere;font-size:.94rem}
.social-contact a span{display:block;font-size:.75rem;color:var(--muted)}
.social-contact a:hover{color:var(--teal)}
.copyable-summary{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.copyable-summary summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--muted);font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
.copyable-summary textarea{margin-top:16px}
.project-review{white-space:normal}
.project-review section+section{margin-top:24px}
.project-review h4{color:var(--text);font-size:1rem;margin-bottom:8px}
.project-review ul{list-style:none;margin:0;padding:0}
.project-review li{margin:6px 0;line-height:1.65}
.studio.is-review-step{grid-template-columns:minmax(0,1fr)}
.studio.is-review-step .step-panel{max-width:900px;margin-inline:auto;width:100%}
.copyable-summary summary::after{content:'+';margin-left:auto;padding-left:12px;color:var(--teal)}
.copyable-summary[open] summary::after{content:'−'}
.quote-page .summary-panel{border-top:0;padding-top:0;margin-top:20px}
footer .footer-brand{margin-bottom:18px}
.social-links{align-content:start;align-items:start}
.about-intro .eyebrow{color:var(--teal)}
.site-header .desktop-navigation a{display:inline-flex;align-items:center;min-height:44px}
.footer-links a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:360px){.site-header .brand{width:90px;min-height:76px}.site-header .brand img{width:90px;height:66px}.site-header>.button{padding-inline:10px;font-size:.75rem;gap:6px}}
@media(min-width:901px){
  .site-header{width:92%;max-width:2200px;flex-wrap:nowrap}
  .home-page .hero-inner{width:92%;max-width:2200px;padding-top:clamp(76px,7vh,110px);padding-bottom:44px}
  .home-page .hero{min-height:clamp(720px,75vh,1050px)}
  .home-page main>.hero h1{font-size:clamp(4.5rem,5.2vw,8rem);line-height:1.04;max-width:1000px}
  .home-page .hero-lede{font-size:clamp(1rem,1.05vw,1.25rem);max-width:620px}
  .home-page .hero-photos{left:22%}
  .home-page .hero-bottom{max-width:850px}
}
.site-header{position:relative;flex-wrap:wrap;gap:20px}.site-header .desktop-navigation{display:flex;gap:20px}.site-header nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:7px}.mobile-navigation{display:none}
main>section:first-child:not(.hero){margin-top:55px}main>section:first-child h1{font-size:clamp(2.5rem,4.5vw,4.1rem);letter-spacing:-.045em;line-height:1.14;margin-bottom:24px}.quote-page main>.quote-section{margin-top:0;padding-top:50px}.quote-page .section-top h1{margin-bottom:0}.policies-page .policy-section{gap:60px}.gallery-page-link{margin-top:22px}.home-about{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:85px}.home-about p:not(.eyebrow){color:var(--muted)}.home-about .text-link{color:var(--teal)}
.final-cta .footer-brand{width:150px;min-height:108px}.final-cta .footer-brand img{display:block;width:150px;height:100px}.social-section{padding-top:45px;border-top:1px solid var(--line);margin-top:65px}.social-section h2{font-size:2.1rem}.social-links{gap:15px 26px}.social-links a{min-height:50px}.social-intro{font-size:.94rem}.footer-links{line-height:2}
.about-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:75px;align-items:center}.about-intro p{color:var(--muted);max-width:600px}.about-intro .about-lede{font-size:1.15rem;line-height:1.75;color:var(--text)}.about-intro figure{margin:0}.about-intro img{width:100%;height:540px;object-fit:cover;object-position:center 60%}.about-intro figcaption{font-size:.8rem;color:var(--muted);margin-top:12px}.about-story{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;margin-top:85px}.about-reasons article{border-top:1px solid var(--line);padding:24px 0}.about-reasons p{color:var(--muted)}.about-reasons h3{font-size:1.45rem;margin-bottom:16px}.about-reasons .button{margin-top:10px}
@media(max-width:1300px){.header-contact{display:none!important}.site-header .desktop-navigation{margin-left:auto}.site-header>.button{margin-left:0}}
@media(max-width:900px){.site-header .desktop-navigation{display:none}.mobile-navigation{display:block;margin-left:auto;order:3}.site-header>.button{margin-left:auto}.mobile-navigation>summary{cursor:pointer;list-style:none;display:flex;gap:10px;align-items:center;min-height:44px;color:var(--text);font-size:.875rem}.mobile-navigation>summary::-webkit-details-marker{display:none}.site-header .mobile-navigation nav{display:flex;position:absolute;z-index:30;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:12px 20px;margin:0;background:var(--deep);border:1px solid var(--line);box-shadow:0 16px 30px #0008}.mobile-navigation nav a{display:block;min-height:44px;padding:10px 4px}.final-cta>.footer-brand{grid-column:1/-1}.home-about,.about-intro,.about-story{grid-template-columns:1fr;gap:25px}.about-intro figure{max-width:600px}.about-intro img{height:380px}.about-story{margin-top:60px}.home-about{margin-top:65px}.policies-page .policy-section{gap:20px}}
@media(max-width:620px){.site-header{gap:12px;padding-bottom:8px}.site-header>.button{font-size:.8rem;gap:8px;min-height:44px}.mobile-navigation{width:100%;border-top:1px solid var(--line);margin:0}.mobile-navigation>summary{justify-content:space-between}.site-header .mobile-navigation nav{top:100%}.social-section{margin-top:45px;padding-top:32px}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}.social-links a{align-items:start;gap:8px;width:auto;min-width:0}.social-links a>span{width:18px;flex-shrink:0}.social-links strong{font-size:.78rem;overflow-wrap:anywhere}.social-links small{font-size:.72rem}.social-section h2{font-size:2rem}.final-cta>.footer-brand{justify-self:start}.about-intro img{height:350px}main>section:first-child:not(.hero){margin-top:35px}.quote-page main>.quote-section{margin-top:0;padding-top:35px}.home-about h2{font-size:2.15rem}}
.live-estimate{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 24px;background:#12141e;border:1px solid #454456;border-top:2px solid var(--teal);box-shadow:0 8px 24px #0005;margin-bottom:18px}
.live-estimate span{display:block;color:var(--muted);font-size:.8rem;margin-bottom:3px}.live-estimate strong{display:block;font-size:clamp(1.25rem,2.2vw,1.8rem);font-weight:600;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:var(--text)}
.live-estimate-detail{max-width:440px;text-align:right}.live-estimate-detail p{margin:0 0 3px;font-size:.85rem}.live-estimate-detail small{color:var(--muted);font-size:.75rem}.quote-page .steps{scroll-margin-top:130px}.swatches label.is-selected{border-color:var(--teal);background:#163139}
@media(max-width:620px){.live-estimate{padding:12px 16px;display:block;margin-bottom:12px}.live-estimate strong{font-size:1.45rem}.live-estimate-detail{text-align:left;margin-top:5px}.live-estimate-detail p{font-size:.75rem}.live-estimate-detail small{font-size:.7rem}.quote-page .steps{scroll-margin-top:165px}}
.flake-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flake-options label{display:block;position:relative;border:1px solid var(--line);padding:10px;cursor:pointer}.flake-options label.is-selected{border-color:var(--teal);background:#163139}.flake-options input{position:absolute;top:17px;left:17px;accent-color:var(--teal)}.flake-options strong{display:block;font-size:.85rem;font-weight:500;margin-top:8px}.flake-sample{display:block;height:80px;background-color:var(--flake-base,#62676d);background-image:radial-gradient(ellipse at 20% 30%,var(--flake-light,#e1e2df) 0 1.7px,transparent 2.2px),radial-gradient(ellipse at 70% 65%,var(--flake-dark,#24272b) 0 2px,transparent 2.7px),radial-gradient(ellipse at 45% 85%,var(--flake-light,#e1e2df) 0 1px,transparent 1.7px);background-size:11px 13px,17px 15px,7px 9px}#flake-preview{height:65px;margin-top:18px}.flake-options label:focus-within{outline:2px solid var(--teal);outline-offset:3px}
