:root{--ink:#1b1d18;--black:#12140f;--gold:#caa967;--cream:#f5f3ed;--paper:#fefdfa;--muted:#73766e;--line:#e1ded5;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:var(--gold);color:#171914}.skip-link{position:absolute;top:-100px;left:10px;z-index:99;background:#fff;padding:12px}.skip-link:focus{top:12px}
.shell{width:min(1260px,calc(100% - 88px));margin:auto}.eyebrow{display:flex;align-items:center;gap:15px;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.21em;text-transform:uppercase;margin:0 0 23px}.eyebrow:before{content:"";width:29px;height:1px;background:currentColor}.eyebrow.dark{color:#9b7841}.section{padding:108px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.display,.title{font-family:var(--serif);font-weight:400;letter-spacing:-.047em;margin:0}.display{font-size:clamp(58px,7vw,108px);line-height:1.08}.title{font-size:clamp(38px,4.2vw,65px);line-height:1.17}.section-copy{max-width:530px;font-size:15px;line-height:1.85;color:#686c63}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 23px;min-height:49px;border:1px solid var(--gold);background:var(--gold);color:#171810;text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:800;transition:.2s}.btn:hover{background:#e8c987;transform:translateY(-2px)}.btn-outline{background:transparent;color:white;border-color:#fff9}.btn-outline:hover{color:#1d1e19}.btn span,.text-link span{font-size:18px;font-weight:400;line-height:0}.text-link{display:inline-flex;align-items:center;gap:21px;padding-bottom:11px;border-bottom:1px solid var(--gold);text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:800}.text-link:hover{color:#a78547}
.topline{height:31px;background:#12140f;color:#c9c8be;display:flex;justify-content:center;align-items:center;text-align:center;letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:700;border-bottom:1px solid #ffffff1c}.header{position:absolute;z-index:50;top:31px;left:0;right:0;color:#fff;border-bottom:1px solid #ffffff30}.header-inner{height:91px;display:flex;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:9px;min-width:183px}.brand img{height:70px;width:77px;object-fit:contain}.brand-wordmark{font-size:13px;line-height:1.25;letter-spacing:.17em;font-weight:700}.brand-wordmark small{display:block;color:var(--gold);letter-spacing:.22em;font-size:9px;margin-top:5px;font-weight:500}.nav{display:flex;align-items:center;gap:31px;margin-left:auto}.nav a{text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:10px;white-space:nowrap;position:relative}.nav a:after{content:"";position:absolute;bottom:-10px;left:0;right:100%;height:1px;background:var(--gold);transition:.25s}.nav a:hover:after,.nav a.active:after{right:0}.head-action{min-height:40px;padding:12px 17px;font-size:9px}.menu-toggle{display:none;background:transparent;color:white;border:1px solid #ffffff73;padding:10px 12px;letter-spacing:.12em;text-transform:uppercase;font-size:10px}.header.scrolled{position:fixed;top:0;background:#151711f5;backdrop-filter:blur(15px);box-shadow:0 8px 30px #0002}.header.scrolled .header-inner{height:74px}.header.scrolled .brand img{height:55px}
.hero{position:relative;min-height:690px;height:min(850px,92vh);background:#272a24;color:#fff;overflow:hidden}.hero-img,.pagehero>img,.cta-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b110edb 0%,#0f1411a8 47%,#05080735),linear-gradient(0deg,#0004,transparent 35%)}.hero-inner{position:relative;z-index:1;height:100%;display:flex;align-items:center;padding-top:120px}.hero-content{max-width:775px}.hero .eyebrow{color:#e9cd93}.hero h1{max-width:770px}.hero-desc{max-width:550px;color:#e9e8e0;font-size:17px;line-height:1.8;margin:28px 0 35px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.hero-side{position:absolute;z-index:2;bottom:58px;right:3%;writing-mode:vertical-rl;letter-spacing:.26em;text-transform:uppercase;font-size:9px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;height:1px;background:#fff4}
.ticker{background:#24261f;color:#e8e7dd}.ticker-inner{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #fff2}.ticker-item{display:flex;align-items:center;justify-content:center;gap:17px;min-height:101px;border-right:1px solid #fff2;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:700}.ticker-item span{font:400 26px var(--serif);color:var(--gold)}
.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1.07fr;gap:10%;align-items:center}.intro-copy .section-copy{margin:26px 0 33px}.image-frame{position:relative;min-height:540px;background:#d9d6cc}.image-frame img{width:100%;height:540px;object-fit:cover}.image-badge{position:absolute;bottom:28px;left:-42px;width:175px;height:175px;background:#23251e;border:7px solid var(--cream);color:#e7c78b;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.image-badge span{font:400 47px var(--serif)}.image-badge small{font-size:9px;line-height:1.8;text-transform:uppercase;letter-spacing:.15em}
.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.product-card{position:relative;display:block}.product-card .photo{height:388px;overflow:hidden;background:#d5d3ca}.product-card img,.project-card img,.product-row img,.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.product-card:hover img,.project-card:hover img,.product-row:hover img,.gallery-card:hover img{transform:scale(1.045)}.product-card-info{padding:24px 2px 10px}.product-card .meta{font-size:10px;color:#a18148;letter-spacing:.17em;font-weight:700}.product-card h3{font:400 28px var(--serif);letter-spacing:-.02em;margin:10px 0}.product-card .desc{font-size:13px;color:#73756c;line-height:1.8;margin:0 0 18px}.round-arrow{position:absolute;right:15px;top:343px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--gold);font-size:22px}
.benefits{background:#22241d;color:var(--paper)}.benefits-heading{max-width:770px;margin-bottom:65px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.benefit{border-top:1px solid #5a5b50;padding-top:25px}.benefit-num{display:block;font:400 44px var(--serif);color:var(--gold);margin-bottom:32px}.benefit h3{font:400 29px var(--serif);margin:0 0 14px}.benefit p{font-size:14px;line-height:1.85;color:#bec0b6}
.projects{background:var(--cream)}.project-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:25px}.project-card{min-height:430px;display:block;position:relative;overflow:hidden;background:#ccc6ba;color:#fff}.project-card:nth-child(even){min-height:380px}.project-card img{position:absolute;inset:0}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 65%)}.project-caption{position:absolute;bottom:27px;left:29px;right:29px;z-index:1;display:flex;justify-content:space-between;align-items:end}.project-caption small{color:#e6d1a3;letter-spacing:.17em;font-size:9px;text-transform:uppercase;font-weight:700}.project-caption h3{font:400 29px var(--serif);margin:9px 0 0}.project-caption b{font-weight:400;font-size:23px}
.cta-photo{position:relative;min-height:470px;background:#21251d;color:#fff;overflow:hidden;display:flex;align-items:center}.cta-photo:after{content:"";position:absolute;inset:0;background:#121913c7}.cta-inner{position:relative;z-index:1;text-align:center;max-width:810px;padding:85px 0}.cta-inner .eyebrow{justify-content:center}.cta-inner .eyebrow:before{display:none}.cta-inner .title{margin-bottom:19px}.cta-inner p{color:#e3e3db;line-height:1.85;margin:0 auto 29px;max-width:540px}
.footer{background:#141610;color:#b9b9af;padding-top:72px}.footer-top{display:grid;grid-template-columns:1.25fr .65fr 1.1fr 1fr;gap:42px;padding-bottom:64px}.footer .brand{color:#fff;margin-bottom:14px}.footer .brand img{height:78px;width:87px}.footer .footer-copy{line-height:1.8;font-size:13px;max-width:250px}.footer h4{text-transform:uppercase;color:#e2c587;font-size:10px;letter-spacing:.18em;margin:15px 0 21px}.footer a,.footer p{line-height:1.85;font-size:13px}.footer a:hover{color:var(--gold)}.footer-links{display:flex;flex-direction:column;gap:7px}.footer-bottom{border-top:1px solid #373a30;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:10px}
.pagehero{height:425px;background:#2a2b24;color:white;position:relative;overflow:hidden;display:flex;align-items:end}.pagehero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10150fec,#10171191 55%,#10131277)}.pagehero .shell{position:relative;z-index:1;padding-bottom:63px;padding-top:165px}.pagehero .eyebrow{margin-bottom:15px}.pagehero .title{font-size:clamp(49px,5vw,78px)}.page-intro{padding:88px 0 55px}.page-intro .section-copy{max-width:740px;font-size:17px}
.product-list{padding:10px 0 108px}.product-row{display:grid;grid-template-columns:1.04fr .96fr;min-height:450px;background:var(--cream);overflow:hidden;margin-bottom:25px;scroll-margin-top:95px}.product-row:nth-child(even) .product-photo{order:2}.product-photo{height:450px;overflow:hidden;background:#d7d4cb}.product-info{padding:58px clamp(30px,5vw,86px);display:flex;flex-direction:column;justify-content:center}.product-info h2{font:400 clamp(35px,3.2vw,52px) var(--serif);margin:7px 0 14px}.product-info .subtitle{font-size:16px;color:#62665c;margin:0 0 12px}.product-info p{font-size:14px;line-height:1.8;color:#74766c}.feature-list{list-style:none;margin:17px 0 23px;padding:0;display:flex;flex-direction:column;gap:10px}.feature-list li{font-size:12px;color:#51544d}.feature-list li:before{content:"✓";color:#a38148;margin-right:12px}.product-info .text-link{align-self:flex-start}
.gallery-controls{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 34px}.filter-btn{padding:11px 17px;background:none;border:1px solid #d5d0c7;color:#65675f;font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:700}.filter-btn:hover,.filter-btn.active{background:var(--black);color:#fff;border-color:var(--black)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;padding-bottom:105px}.gallery-card{margin:0}.gallery-card .photo{height:360px;overflow:hidden;background:#d8d4cb}.gallery-card figcaption{padding:21px 2px}.gallery-card h3{font:400 28px var(--serif);margin:7px 0}.gallery-card .kicker{font-size:10px;letter-spacing:.17em;color:#9e7c45;text-transform:uppercase}.gallery-card p{font-size:13px;color:#77796f}
.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:105px 0}.story-photo{height:585px;background:#ddd}.story-photo img{height:100%;width:100%;object-fit:cover}.story p{line-height:1.9;color:#74756a;font-size:15px}.steps{background:var(--cream)}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:57px}.step{padding-top:24px;border-top:1px solid #cec6b6}.step .num{font:400 50px var(--serif);color:#ae8948}.step h3{font:400 30px var(--serif);margin:22px 0 12px}.step p{color:#77786f;line-height:1.85;font-size:14px}
.contact-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;padding:110px 0}.contact-details h3{font:400 26px var(--serif);margin:0 0 10px}.contact-details p,.contact-details a{font-size:15px;line-height:1.8;color:#686b61}.contact-line{border-top:1px solid #dedbd2;padding:24px 0}.contact-form{background:var(--cream);padding:47px}.contact-form h2{font:400 37px var(--serif);margin:0 0 14px}.contact-form>p{font-size:13px;line-height:1.7;color:#74766e;margin:0 0 28px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.field input,.field select,.field textarea{width:100%;padding:13px;border:1px solid #d4d2ca;border-radius:0;background:white;outline:none;color:#24261f;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#b58e55}.field textarea{height:140px;resize:vertical}.contact-form .btn{margin-top:28px}.form-status{min-height:30px;padding-top:12px;font-size:12px;color:#876c40}.contact-form .tiny{font-size:11px;color:#717269}
.loading{padding:30vh 20px;text-align:center;color:#76766e}.no-script{padding:50px}.reveal{opacity:0;transform:translateY(23px);transition:opacity .6s,transform .6s}.reveal.shown{opacity:1;transform:none}
@media(max-width:1100px){.shell{width:calc(100% - 60px)}.nav{gap:20px}.footer-top{grid-template-columns:1.2fr 1fr 1fr}.footer-top>div:last-child{grid-column:2/4}.intro-grid{gap:6%}}
@media(max-width:800px){.shell{width:calc(100% - 40px)}.header-inner{height:78px}.brand{min-width:0}.brand img{height:58px;width:65px}.menu-toggle{display:inline-flex;margin-left:auto}.head-action{display:none}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#181b16;padding:22px 20px;flex-direction:column;align-items:stretch;gap:0;margin:0;box-shadow:0 20px 30px #0004}.header.menu-open .nav{display:flex}.nav a{padding:14px 9px;font-size:12px;border-bottom:1px solid #fff2}.nav a:after{display:none}.hero{min-height:680px;height:88vh}.hero-inner{padding-top:135px}.hero-desc{font-size:15px}.hero-side{display:none}.ticker-item{min-height:80px;gap:8px;font-size:9px;letter-spacing:.06em;text-align:center}.ticker-item span{font-size:20px}.section{padding:75px 0}.intro-grid,.story,.contact-wrap{grid-template-columns:1fr;gap:45px}.intro-copy{order:1}.image-frame{order:0;min-height:400px}.image-frame img{height:400px}.image-badge{left:10px;bottom:10px;width:123px;height:123px;border-width:5px}.image-badge span{font-size:31px}.image-badge small{font-size:7px}.collection-grid{grid-template-columns:repeat(2,1fr)}.collection-grid .product-card:last-child{display:none}.benefit-grid,.step-grid{grid-template-columns:1fr;gap:17px}.benefits-heading{margin-bottom:30px}.benefit-num{margin-bottom:13px}.project-grid{gap:12px}.project-card,.project-card:nth-child(even){min-height:350px}.footer-top{grid-template-columns:1fr 1fr;gap:33px}.footer-top>div:last-child{grid-column:auto}.product-row{grid-template-columns:1fr}.product-row:nth-child(even) .product-photo{order:0}.product-photo{height:370px}.product-info{padding:35px}.story-photo{height:450px}.contact-wrap{padding:70px 0}.gallery-card .photo{height:285px}}
@media(max-width:550px){.shell{width:calc(100% - 36px)}.topline{font-size:8px}.brand-wordmark{display:none}.hero{height:750px;min-height:670px}.hero h1{font-size:clamp(51px,14vw,76px)}.hero-actions .btn{width:100%}.ticker-inner{grid-template-columns:1fr}.ticker-item{min-height:46px;border-bottom:1px solid #fff2}.section-head{display:block}.section-head .text-link{margin-top:17px}.collection-grid,.project-grid,.gallery-grid,.form-grid{grid-template-columns:1fr}.collection-grid .product-card:last-child{display:block}.product-card .photo{height:340px}.round-arrow{top:293px}.project-card,.project-card:nth-child(even){min-height:360px}.section{padding:66px 0}.pagehero{height:365px}.pagehero .shell{padding-bottom:45px}.page-intro{padding:60px 0 30px}.gallery-grid{gap:12px;padding-bottom:60px}.gallery-card .photo{height:270px}.footer-top>div:first-child,.footer-top>div:last-child{grid-column:1/-1}.footer-bottom{display:block;line-height:2}.contact-form{padding:28px 20px}.field.full{grid-column:1}.story{padding:65px 0}.story-photo{height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*,*:before,*:after{transition-duration:0.01ms!important;animation-duration:0.01ms!important}}

/* Admin-defined visibility and variable overrides are applied at runtime. */

.custom-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.custom-image-grid>img{width:100%;height:440px;object-fit:cover}.custom-section-copy .section-copy{margin:25px 0}.custom-section-copy .btn{margin-top:12px}.custom-banner{color:white;background:#25291e;background-size:cover;background-position:center;text-align:center}.custom-banner .custom-section-copy{max-width:780px;margin:0 auto}.custom-banner .title{color:#fff}.custom-banner .section-copy{color:#e4e7de;margin:25px auto}.custom-banner .eyebrow{justify-content:center}.custom-text-block{text-align:center;background:var(--cream)}.custom-text-block .custom-section-copy{max-width:780px;margin:auto}.custom-text-block .eyebrow{justify-content:center}.custom-text-block .section-copy{margin:25px auto}.custom-spacer{height:100px}@media(max-width:800px){.custom-image-grid{grid-template-columns:1fr}.custom-image-grid>img{height:300px}}

.custom-motion-block img{max-height:460px;object-fit:cover}.motion-float img{animation:kFloat 5s ease-in-out infinite}.motion-fade img{animation:kFade 2s ease-in both}.motion-zoom img{animation:kZoom 4s ease-in-out infinite alternate}.motion-slide img{animation:kSlide 1.2s ease-out both}
@keyframes kFloat{50%{transform:translateY(-18px)}}@keyframes kFade{from{opacity:0}to{opacity:1}}@keyframes kZoom{to{transform:scale(1.045)}}@keyframes kSlide{from{transform:translateX(-35px);opacity:0}to{transform:none;opacity:1}}
.custom-video{margin-top:30px;aspect-ratio:16/9;background:#181b17}.custom-video iframe,.custom-video video{width:100%;height:100%;border:0}.custom-slides{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px 0}.custom-slides img{height:360px;width:min(600px,80%);object-fit:cover;flex-shrink:0;scroll-snap-align:center}.custom-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.custom-marquee{background:var(--black);color:var(--gold);overflow:hidden;padding:25px 0}.marquee-track{width:max-content;animation:kMarquee 24s linear infinite;white-space:nowrap;font-family:var(--serif);font-size:clamp(25px,4vw,55px)}@keyframes kMarquee{to{transform:translateX(-50%)}}@media(max-width:700px){.custom-two-columns{grid-template-columns:1fr}.custom-slides img{height:250px}}@media(prefers-reduced-motion:reduce){.custom-motion-block img,.marquee-track{animation:none!important}}

.canvas-main{position:relative}.canvas-layer{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:hidden}.canvas-element{position:absolute;display:block;pointer-events:auto;overflow-wrap:anywhere}.canvas-element.btn{height:auto;min-height:32px}.canvas-element[src]{height:auto;max-height:450px}

/* Multifamily trade-forward editorial refinements */
.hero-side{letter-spacing:.18em}.ticker-inner{font-weight:600;letter-spacing:.025em}.product-info .subtitle{color:var(--gold)}

/* Accessible administration entry, shown on desktop and mobile navigation */
.admin-nav-link{font-weight:700!important;color:var(--gold)!important}.footer-admin-link{color:var(--gold);text-decoration:underline;text-underline-offset:3px}

/* Pencil buttons appear only inside the authenticated admin preview */
.pencil-wrap{position:relative;display:block}.pencil-edit{position:absolute;right:0;top:0;transform:translate(25%,-40%);z-index:30;width:34px;height:34px;display:grid;place-items:center;border:1px solid #c3a064;background:#22251d;color:#fff;cursor:pointer;font:23px/1 Arial,sans-serif;opacity:.9;border-radius:50%;box-shadow:0 3px 15px #0003}.pencil-edit:hover,.pencil-edit:focus{background:#b39255;color:#111}.pencil-wrap [contenteditable=true]{outline:2px dashed #d3ad69;outline-offset:5px;min-width:5em}

/* 2026-10 responsive header and hero overlap fix */
.topline{height:auto;min-height:34px;padding:8px 22px;line-height:1.45;overflow-wrap:anywhere}
.header-inner{min-width:0}.brand{flex:0 0 auto;max-width:295px;min-width:0}.brand-wordmark{max-width:185px;overflow-wrap:normal;white-space:normal}
.header .nav{min-width:0}.header .nav a{line-height:1.4}
.hero-inner{padding-top:175px;padding-bottom:60px}
.hero-content{min-width:0}.hero .eyebrow{line-height:1.55;max-width:100%;letter-spacing:.13em}
.hero h1{overflow-wrap:normal;word-break:normal;font-size:clamp(45px,6.5vw,96px)}
@media(max-width:1280px){
 .header{top:34px}
 .header-inner{height:80px;gap:12px}
 .brand img{height:58px;width:64px}
 .brand-wordmark{font-size:12px;letter-spacing:.1em}
 .menu-toggle{display:inline-flex;margin-left:auto;flex-shrink:0}
 .head-action{display:none}
 .header .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#181b16;padding:18px 30px;flex-direction:column;align-items:stretch;gap:0;margin:0;max-height:75vh;overflow-y:auto;box-shadow:0 20px 30px #0004}
 .header.menu-open .nav{display:flex}
 .header .nav a{padding:13px 9px;font-size:12px;border-bottom:1px solid #fff2;white-space:normal}
 .header .nav a:after{display:none}
 .hero-inner{padding-top:195px;align-items:center}
 .hero-content{max-width:700px}
 .hero .eyebrow{max-width:560px}
}
@media(max-width:800px){
 .header{top:34px}
 .hero-inner{padding-top:190px;padding-bottom:55px}
 .hero h1{font-size:clamp(43px,8.4vw,68px);line-height:1.09}
 .hero .eyebrow{font-size:9px;letter-spacing:.09em}
}
@media(max-width:550px){
 .topline{font-size:7px;letter-spacing:.09em;padding:9px 12px}
 .hero-inner{padding-top:135px}
 .hero h1{font-size:clamp(42px,11vw,64px)}
 .hero .eyebrow{font-size:8px}
}

/* Hero and navigation refinements based on wide-desktop screenshot */
@media(min-width:1281px){
 .header-inner{gap:18px}
 .header .nav{gap:clamp(10px,1.25vw,21px)}
 .header .nav a{font-size:10px;letter-spacing:.045em}
 .brand{max-width:250px}
 .brand-wordmark{letter-spacing:.11em}
 .head-action{padding:12px 14px;white-space:nowrap;flex-shrink:0}
}
.hero{min-height:700px;height:min(810px,95svh)}
.hero-inner{padding-top:180px;padding-bottom:35px;align-items:center}
.hero-content{width:min(760px,64vw);max-width:760px}
.hero .eyebrow{max-width:690px;margin-bottom:22px;font-size:10px;letter-spacing:.12em}
.hero .display{font-size:clamp(51px,5.1vw,78px);line-height:1.12;letter-spacing:-.044em;max-width:760px}
.hero-desc{font-size:16px;max-width:590px}
@media(min-width:801px) and (max-width:1450px){
 .hero-content{width:min(730px,75vw)}
 .hero .display{font-size:clamp(51px,5vw,68px)}
 .hero-inner{padding-top:200px}
}
@media(max-width:800px){
 .hero-inner{padding-top:165px}
 .hero-content{width:100%;max-width:100%}
 .hero .display{font-size:clamp(43px,8vw,62px)}
 .hero .eyebrow{margin-bottom:18px}
}

/* Mobile hero polish: compact typography, readable CTAs, tree face preserved */
@media(max-width:800px){
 .hero{height:auto;min-height:0}
 .hero-inner{min-height:690px;height:auto;align-items:flex-start;padding-top:155px;padding-bottom:64px}
 .hero-content{width:100%;max-width:100%}
 .hero .display{font-size:clamp(37px,7.5vw,56px);line-height:1.1;letter-spacing:-.035em}
 .hero .eyebrow{font-size:9px;line-height:1.55;letter-spacing:.08em;margin-bottom:17px}
 .hero-desc{font-size:14px;line-height:1.6;max-width:510px;margin:22px 0 26px}
 .hero-actions{gap:12px}
 .hero-actions .btn{min-height:48px;padding:13px 17px;font-size:10px;gap:12px;justify-content:center;letter-spacing:.09em}
 .hero-actions .btn span{font-size:0}
 .hero-actions .btn span:after{content:"\2197";font:normal 19px/1 Arial,sans-serif}
}
@media(max-width:550px){
 .hero-inner{min-height:690px;padding-top:140px;padding-bottom:55px}
 .hero .display{font-size:clamp(37px,9.2vw,46px);line-height:1.1}
 .hero-desc{font-size:14px;line-height:1.58;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
 .hero-actions .btn{width:100%;min-height:48px;padding:13px 18px}
 .hero .eyebrow{max-width:94%;font-size:8px;letter-spacing:.065em}
}

/* Granite and quartz catalog */
.stone-catalog{padding:24px 0 100px}.stone-tabs{display:flex;gap:10px;border-bottom:1px solid #dfd9cd;margin-bottom:36px}.stone-tab{border:0;background:transparent;color:#5a5b55;padding:16px 28px;font:600 17px var(--sans);cursor:pointer;border-bottom:3px solid transparent}.stone-tab:hover,.stone-tab.active{color:#181814;border-bottom-color:var(--gold)}.stone-group{margin:30px 0 52px}.stone-group-heading{margin:0 0 22px}.stone-group-heading h2{font-family:var(--serif);font-size:clamp(25px,3vw,38px);margin:8px 0}.stone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.stone-card{background:#fff;border:1px solid #e8e3d9;overflow:hidden}.stone-image{aspect-ratio:1.5;overflow:hidden;background:#eee}.stone-image img{width:100%;height:100%;display:block;object-fit:cover}.stone-card-info{padding:18px 22px 22px}.stone-card-info h3{font-family:var(--serif);font-size:24px;margin:0 0 5px}.stone-card-info p{margin:0;color:#65645e}.stone-empty{padding:60px 20px;text-align:center;border:1px solid #e8e3d9;background:#faf9f6}.stone-empty h2{font-family:var(--serif)}@media(max-width:650px){.stone-grid{grid-template-columns:1fr}.stone-tab{flex:1}}

.nav-dropdown{position:relative;display:flex;align-items:center}.nav-submenu{display:none;position:absolute;top:100%;left:0;z-index:40;background:#191b17;padding:12px;min-width:170px;box-shadow:0 12px 28px #0005}.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{display:flex;flex-direction:column}.nav .nav-submenu a{padding:12px;color:#f9f4e8}.nav .nav-submenu a:after{display:none}@media(max-width:1100px){.nav-dropdown{display:block;width:100%}.nav-submenu{display:flex;position:static;flex-direction:column;box-shadow:none;background:transparent;border-left:1px solid #caa96766;margin-left:16px;padding:0 0 0 12px}.nav .nav-submenu a{padding:12px}}

/* Anchor the submenu to its parent on desktop, not the page edge. */
@media(min-width:1101px){.header .nav .nav-dropdown{position:relative;display:flex;align-items:center;align-self:stretch}.header .nav .nav-dropdown .nav-submenu{position:absolute;left:0;right:auto;top:100%;z-index:100;min-width:180px}.header .nav .nav-dropdown:hover .nav-submenu,.header .nav .nav-dropdown:focus-within .nav-submenu{display:flex}}

/* Editor-only catalog controls */
.catalog-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin:0 0 24px;background:#f5f0e5;border:1px solid #d9c8a5}.catalog-preview-toolbar button,.catalog-card-actions button{border:1px solid #bda168;background:#1b1d18;color:white;padding:9px 11px;cursor:pointer;font-size:12px}.catalog-card-actions{display:flex;gap:8px;flex-wrap:wrap;padding:9px 12px;background:#f5f0e5}.catalog-card-actions button:last-child{background:#fff;color:#3d3123}@media(max-width:700px){.catalog-preview-toolbar{flex-direction:column;align-items:stretch}}

.cab-construction{background:#f5f3ed;padding:84px 0 100px}.cab-heading{max-width:740px;margin-bottom:42px}.cab-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:46px;border-top:1px solid #d5cbbc}.cab-spec{display:flex;align-items:flex-start;gap:20px;padding:24px 0;border-bottom:1px solid #d5cbbc}.cab-spec-num{color:#ab8c54;font:600 12px var(--sans);min-width:30px;padding-top:5px}.cab-spec h3{font:500 24px var(--serif);margin:0 0 8px}.cab-spec p{margin:0;color:#53564f;line-height:1.6}.cab-spec-notes{margin-top:25px;color:#53564f;font-size:14px}.cab-spec-cta{margin-top:42px;background:#1a2019;padding:30px;color:white}.cab-spec-cta h3{font:500 28px var(--serif);margin:0 0 9px}.cab-spec-cta p{margin:0 0 18px;color:#dedbd4}@media(max-width:700px){.cab-spec-grid{grid-template-columns:1fr}.cab-construction{padding:52px 0}}

/* Editorial construction detail card grid */
.cab-construction{background:#faf9f6;padding:92px 0 105px}.cab-heading{text-align:center;margin:0 auto 44px;max-width:790px}.cab-heading .eyebrow{color:#ad894b}.cab-heading .section-copy{margin:18px auto 0}.cab-spec-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;border:0}.cab-spec{display:flex;flex-direction:column;gap:0;overflow:hidden;padding:0;background:#fff;border:1px solid #e4ddd0;border-radius:3px;transition:transform .2s ease,box-shadow .2s ease}.cab-spec:hover{transform:translateY(-3px);box-shadow:0 14px 30px #1b21191a}.cab-spec-media{width:100%;aspect-ratio:1.5;background:#edeae3;overflow:hidden}.cab-spec-media img{width:100%;height:100%;object-fit:cover;display:block}.cab-spec-content{padding:21px 22px 23px;position:relative;min-height:136px}.cab-spec-num{display:inline-flex;align-items:center;justify-content:center;background:#c5a164;color:#fff;width:34px;height:34px;border-radius:50%;font-size:12px;margin-bottom:12px;padding:0}.cab-spec h3{font:500 23px/1.18 var(--serif);margin:0 0 8px;color:#1c2019}.cab-spec p{font-size:14px;line-height:1.55;color:#525650}.cab-spec-notes{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:24px 28px;margin-top:28px;background:#f1ede5;border-radius:6px}.cab-spec-notes p{margin:0;line-height:1.65}.cab-spec-cta{border-radius:4px}.cab-spec-grid .cab-spec:last-child:nth-child(3n+2){grid-column:span 2}@media(max-width:1000px){.cab-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cab-spec-grid .cab-spec:last-child:nth-child(3n+2){grid-column:auto}}@media(max-width:620px){.cab-construction{padding:55px 0 72px}.cab-spec-grid{grid-template-columns:1fr}.cab-spec-grid .cab-spec:last-child:nth-child(3n+2){grid-column:auto}.cab-spec-notes{grid-template-columns:1fr;padding:21px}.cab-spec-media{aspect-ratio:1.65}}

/* Cabinet gallery display repair: preserve complete technical illustrations */
.cab-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cab-spec-grid .cab-spec:last-child:nth-child(3n+2){grid-column:auto}.cab-spec-media{aspect-ratio:1.48;display:flex;align-items:center;justify-content:center;background:#fff;padding:10px}.cab-spec-media img{width:100%;height:100%;object-fit:contain;object-position:center}.cab-spec-content{min-height:0;padding:20px 24px 25px}.cab-spec h3{font-size:23px}.cab-spec p{max-width:58ch}.cab-spec:hover{box-shadow:0 12px 25px #1b211912}@media(max-width:740px){.cab-spec-grid{grid-template-columns:1fr}.cab-spec-media{aspect-ratio:1.48;padding:4px}.cab-spec-content{padding:16px 20px 23px}}

/* Interactive cabinet product options */
.cab-config{padding:85px 0;background:#f7f5ef}.cab-config-heading{max-width:790px;margin:0 0 40px}.cab-config-heading .section-copy{margin-top:14px}.cab-config-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:42px;align-items:start}.cab-config-controls{background:#fff;border:1px solid #e5dfd4;padding:32px}.cab-config-step+ .cab-config-step{border-top:1px solid #e5dfd4;margin-top:27px;padding-top:26px}.cab-config-step h3{font:500 22px var(--serif);margin:0 0 17px}.cab-config-step h3 span{font:600 12px var(--sans);color:#b49559;margin-right:12px}.cab-option-row{display:flex;gap:10px;flex-wrap:wrap}.cab-option-row button{appearance:none;cursor:pointer;border:1px solid #d4ccc0;background:#fff;color:#292a26;padding:13px 17px;text-align:left;display:flex;flex-direction:column;gap:4px;min-width:123px;font:600 14px var(--sans)}.cab-option-row small{font:400 12px var(--sans);color:#727067}.cab-option-row button.is-selected,.cab-color-option.is-selected{border-color:#ac8647;outline:2px solid #bd9d62;outline-offset:-2px;background:#faf5e9}.cab-option-description{font-size:13px;color:#666961;margin:12px 0 0;line-height:1.6}.cab-color-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.cab-color-option{appearance:none;background:#fff;border:1px solid #e6dfd5;padding:6px;cursor:pointer;text-align:center;min-width:0;color:#252924}.cab-color-thumb{display:block;width:100%;height:90px;background-size:cover;background-position:center;background-blend-mode:normal;border:1px solid #ddd}.cab-color-option>span:last-child{display:block;font:500 11px/1.35 var(--sans);margin:8px 0 4px}.cab-preview-panel{position:sticky;top:105px;background:#fff;border:1px solid #dfd8cb;padding:24px;text-align:center}.cab-preview-topline{font:600 11px var(--sans);letter-spacing:.18em;color:#aa8a4c;text-align:left}.cab-preview-stage{height:420px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#f6f5f2,#eae7e0);margin:18px 0 22px;overflow:hidden}.cab-sample-door{--door-shade:#47312e;--door-grain:none;width:66%;height:82%;position:relative;background-color:var(--door-shade);background-image:var(--door-grain);background-size:cover;background-position:center;box-shadow:7px 12px 18px #0002,inset 0 0 0 1px #0003;border:17px solid #0002;border-color:transparent}.cab-sample-door:before{content:"";position:absolute;inset:14%;border:12px solid #0002;box-shadow:inset 0 1px 9px #0004,0 1px 4px #fff5;pointer-events:none}.cab-sample-door.is-slim:before{inset:7%;border-width:6px}.cab-sample-door.is-slab:before{display:none}.cab-sample-door:after{content:"";position:absolute;right:19px;top:42%;width:7px;height:76px;border-radius:5px;background:linear-gradient(90deg,#8f733c,#d5b574,#775f31);box-shadow:2px 2px 4px #0003}.cab-preview-panel h3{font:500 28px var(--serif);margin:0 0 5px}.cab-preview-panel>p{margin:0 0 12px}.cab-preview-disclaimer{font-size:12px;line-height:1.6;color:#75756f;text-align:left;border-top:1px solid #e5dfd4;padding-top:17px;margin-top:18px!important}@media(max-width:990px){.cab-config-layout{grid-template-columns:1fr}.cab-preview-panel{position:static}.cab-preview-stage{height:360px}}@media(max-width:600px){.cab-config{padding:55px 0}.cab-config-controls{padding:20px}.cab-color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cab-color-thumb{height:80px}}

/* Public project portal login */
.nav .login-nav-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid #caa967;color:#caa967;padding:9px 15px;white-space:nowrap;font-weight:700;letter-spacing:.06em}.nav .login-nav-link:hover,.nav .login-nav-link:focus-visible{background:#caa967;color:#11140f}.nav .login-nav-link:after{display:none}@media(max-width:1100px){.nav .login-nav-link{margin:12px 0;width:max-content}}
