:root{--ink:#24231f;--muted:#66645d;--paper:#fff;--soft:#f5f4f0;--line:#d9d7d0;--accent:#6b533e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}.top{background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:10px 5%;font-size:14px}header{padding:24px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:white;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,'Times New Roman',serif;font-size:30px;letter-spacing:-1px;line-height:1.2;white-space:nowrap}.brand span{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:2px;line-height:2.4}.header-actions{display:flex;align-items:center;gap:20px}#language{background:none;border:none;font-size:14px;padding:8px}nav{display:flex;gap:25px;font-size:14px}nav a:hover,.text-link:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:14px;transition:background .2s}.button:hover{background:var(--accent)}.button.small{padding:11px 16px}.hero{display:grid;grid-template-columns:46% 54%;padding:32px 5% 0;min-height:640px;max-width:1700px;margin:auto;gap:0}.hero-copy{padding:65px 45px 60px 0;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2px;font-weight:600;margin:0 0 22px;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(42px,4.7vw,74px);line-height:1.06;letter-spacing:-2.5px;margin-bottom:26px}h2{font-size:clamp(34px,3.5vw,52px);line-height:1.12;letter-spacing:-1.5px;margin-bottom:24px}h3{font-size:26px;line-height:1.25;margin-bottom:12px}.intro{max-width:390px;color:var(--muted);font-size:17px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:10px}.text-link{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:4px;display:inline-block}.hero-note{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px;margin-top:70px}.line{width:30px;height:1px;background:var(--accent)}.hero-image{position:relative;min-height:580px}.hero-image img{object-position:49% center}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:13px 22px;background:#ffffffeb;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.material-strip{margin:40px 5% 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-evenly;gap:16px;font-family:Georgia,serif;font-size:22px}.separator{color:#b9b5ad}.section{padding:100px 5%;max-width:1700px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:360px;color:var(--muted);margin-bottom:0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.filters button{padding:10px 18px;background:white;border:1px solid var(--line);font-size:14px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.material-card[hidden]{display:none}.card-image{height:270px;overflow:hidden;background:var(--soft)}.card-image img{transition:transform .5s}.material-card:hover img{transform:scale(1.035)}.card-meta{font-size:12px;color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;margin:22px 0 7px}.material-card h3{font-size:25px;margin-top:24px;margin-bottom:10px}.material-card p:not(.card-meta){font-size:15px;color:var(--muted);margin-bottom:15px}.material-card button{font-size:14px;background:none;border:0;border-bottom:1px solid var(--ink);padding:0 0 4px;color:var(--ink)}.collection-note{margin:28px 0 0;font-size:13px;color:var(--muted);max-width:830px}.inspiration{background:var(--soft);max-width:none}.inspiration-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:30px}.room{position:relative;overflow:hidden}.room.tall{height:700px}.room-stack>.room{height:420px}.room figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 30px 25px;background:linear-gradient(transparent,#0009);color:white}.room figcaption span{display:block;font-family:Georgia,serif;font-size:26px}.room small{font-size:12px;display:block;margin-top:8px}.inspiration-callout{padding:40px 0 0 35px}.inspiration-callout>p{font-size:13px;color:var(--muted);margin-bottom:12px}.inspiration-callout h3{font-size:34px}.installation{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#282a26;color:white;max-width:none}.installation .eyebrow{color:#cfc2b1}.installation-lead>p:not(.eyebrow){color:#cccfc7;max-width:390px}.button.light{background:white;color:var(--ink);border-color:white;margin-top:14px}.steps article{display:flex;gap:25px;padding:24px 0;border-bottom:1px solid #ffffff30}.steps article:first-child{padding-top:0}.steps article>span{font-family:Georgia,serif;font-size:23px;color:#cfc2b1}.steps p{color:#cccfc7;font-size:15px;margin-bottom:0;max-width:430px}.steps h3{font-size:27px}.quote{display:grid;grid-template-columns:1fr 1.15fr;gap:10%}.quote>div>p:not(.eyebrow){max-width:350px;color:var(--muted)}.phone-link{display:block;font-family:Georgia,serif;font-size:26px;margin-top:35px}.email-link{display:block;color:var(--muted);font-size:15px;margin-top:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;margin-bottom:20px}label>span{display:block;font-size:14px;margin-bottom:8px}input,textarea,select{width:100%;padding:12px;background:var(--soft);border:1px solid var(--line);border-radius:0;color:var(--ink);min-height:48px}textarea{resize:vertical}.form-note,#form-status{font-size:13px;color:var(--muted)}.visit{display:grid;grid-template-columns:1.1fr 1fr;background:var(--soft)}.visit-image{height:520px}.visit-image img{object-position:center}.visit-content{padding:70px 12%;align-self:center}.visit-content p:not(.eyebrow){color:var(--muted)}address{font-style:normal;font-size:20px;margin-bottom:22px}.visit-content .text-link{margin-left:25px}footer{padding:55px 5% 25px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:30px}footer p{color:var(--muted);font-size:14px}footer>div{justify-self:end}footer>div a{display:block;font-size:14px}footer small{grid-column:1/-1;color:var(--muted);font-size:12px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}dialog{width:min(560px,90vw);border:1px solid var(--line);padding:50px;background:white;color:var(--ink)}dialog::backdrop{background:#0008}.dialog-close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:30px}.dialog-close:hover{color:var(--accent)}dialog h2{font-size:38px}dialog p{color:var(--muted)}@media(min-width:1700px){.hero{min-height:730px}.hero-image{min-height:680px}}@media(max-width:1100px){nav{gap:15px}.brand{font-size:25px}.header-actions .small{display:none}.hero-copy{padding-right:25px}h1{font-size:52px}.hero-actions{gap:18px}.hero-image{min-height:530px}.hero-note{margin-top:40px}.material-grid{gap:20px}.card-image{height:220px}.installation,.quote{gap:6%}}@media(max-width:760px){header{padding:20px 6%;flex-wrap:wrap;gap:16px}.brand{font-size:27px}.brand span{font-size:9px}nav{order:3;width:100%;justify-content:space-between;gap:8px;font-size:13px}.top{font-size:12px;padding:8px 6%}.top a{display:none}.hero{display:flex;flex-direction:column;padding:0 6%;min-height:0}.hero-copy{padding:45px 0 35px}.eyebrow{font-size:11px;margin-bottom:18px}h1{font-size:49px;letter-spacing:-2px}.intro{font-size:16px}.hero-note{margin-top:30px}.hero-image{height:390px;min-height:0}.hero-image img{object-position:50% center}.hero-image figcaption{font-size:11px;padding:12px}.hero-actions{gap:20px}.material-strip{margin:25px 6% 0;padding:20px 0;gap:10px;font-size:15px;flex-wrap:wrap}.material-strip .separator{display:none}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;max-width:100%}.material-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.card-image{height:210px}.material-card h3{font-size:22px}.material-card p:not(.card-meta){font-size:14px}.card-meta{font-size:10px}.filters{gap:8px}.filters button{padding:8px 12px;font-size:12px}.inspiration-grid{grid-template-columns:1fr;gap:24px}.room.tall{height:460px}.room-stack>.room{height:300px}.inspiration-callout{padding:30px 0 0}.installation,.quote{grid-template-columns:1fr;gap:40px}.steps article{padding:22px 0}.visit{grid-template-columns:1fr}.visit-image{height:300px}.visit-content{padding:40px 6%}.visit-content .text-link{margin-left:15px}footer{padding:40px 6% 20px;grid-template-columns:1fr;gap:25px}footer>div{justify-self:start}footer small{margin-top:0}.form-row{gap:15px}.room figcaption span{font-size:23px}dialog{padding:38px 25px}}@media(max-width:390px){h1{font-size:43px}.material-grid{grid-template-columns:1fr}.card-image{height:290px}.form-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.variant{display:inline-block;padding:7px 12px;background:var(--soft);border:1px solid var(--line);margin:0 7px 8px 0;font-size:13px}.variant.unavailable{color:#776c62}#dialog-variants{margin:22px 0}#dialog-pages{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:25px}#dialog-pages img{height:auto;border:1px solid var(--line)}dialog{width:min(860px,94vw);max-height:90vh;overflow:auto}#form-status textarea{margin-top:15px}.material-card:has(img[src$="catalog-23.jpg"]) .card-image img{object-fit:contain}

#dialog-pages{display:block}.variant{cursor:pointer;font:inherit;font-size:13px;transition:background .15s}.variant:hover{border-color:var(--ink)}.variant[aria-pressed="true"]{background:#29251f;color:white;border-color:#29251f}.variant:focus-visible{outline:2px solid #99734b;outline-offset:3px}.color-preview{margin:0;background:#f5f2ed;padding:20px;text-align:center}.color-preview img{display:block;width:100%;height:320px!important;object-fit:contain;border:0!important}.color-preview figcaption{margin-top:15px;font-size:15px}.missing-sample{padding:60px 20px}.variant.unavailable[aria-pressed="true"]{color:white}@media(max-width:600px){.color-preview img{height:260px!important}.color-preview{padding:15px}}

.catalog-render{margin:20px 0;text-align:center}.catalog-render img{width:100%;max-height:520px;object-fit:contain;background:#f5f2ed}.catalog-render figcaption{margin-top:12px;font-size:15px}

.sample-frame{position:relative;overflow:hidden;margin:0 auto;max-width:100%}.color-preview .sample-frame img{position:absolute;width:var(--sample-width)!important;height:var(--sample-height)!important;max-width:none!important;object-fit:fill;border:0!important}@media(max-width:600px){.sample-frame{width:min(100%,var(--mobile-frame-width))!important;max-width:100%}}

.marble-render{width:min(100%,560px);margin:24px auto}.marble-render .render-image{width:100%;aspect-ratio:4/5;overflow:hidden}.marble-render .render-image.landscape{aspect-ratio:3/2}.marble-render .render-image img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;background:transparent}

.exterior-dialog #dialog-variants{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.exterior-tab{border:1px solid #aaa;border-radius:999px;padding:12px 24px;background:white;color:var(--ink);font-size:14px}.exterior-tab[aria-pressed="true"]{background:var(--ink);color:white;border-color:var(--ink)}.exterior-preview{text-align:center;margin:0 auto 24px}.exterior-dialog #dialog-pages .exterior-preview img{border:0;width:100%;height:auto;max-height:480px;object-fit:contain}.exterior-preview figcaption{margin-top:12px;font-size:15px}.exterior-sample{background:var(--soft);padding:24px}.finish-label{text-transform:uppercase;letter-spacing:1px;font-size:14px;margin-bottom:16px}.exterior-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 12px}.finish-swatch{display:flex;flex-direction:column;align-items:center;gap:10px;border:0;background:none;padding:4px;color:var(--ink);font-size:14px;line-height:1.3}.swatch-texture{display:block;width:clamp(48px,6vw,72px);aspect-ratio:1;border-radius:50%;background-size:cover;background-position:center;background-color:var(--soft);border:1px solid #0002}.finish-swatch[aria-pressed="true"] .swatch-texture{outline:2px solid var(--ink);outline-offset:4px}.finish-swatch:hover .swatch-texture{box-shadow:0 0 0 4px #d9d7d077}.exterior-dialog #dialog-pages{margin-bottom:36px}@media(max-width:600px){.exterior-swatches{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}.swatch-texture{width:64px}.exterior-tab{padding:11px 17px}.exterior-dialog #dialog-pages .exterior-preview img{max-height:380px}}

dialog:not(.exterior-dialog) #dialog-variants{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:22px 12px;margin:28px 0 36px}dialog:not(.exterior-dialog) .variant{display:flex;flex-direction:column;align-items:center;gap:12px;background:none;border:0;margin:0;padding:4px;color:var(--ink);font-size:14px;line-height:1.35}dialog:not(.exterior-dialog) .variant[aria-pressed="true"]{background:none;color:var(--ink)}dialog:not(.exterior-dialog) .variant[aria-pressed="true"] .swatch-texture{outline:2px solid var(--ink);outline-offset:4px}dialog:not(.exterior-dialog) .variant.unavailable{color:var(--muted)}dialog:not(.exterior-dialog) .variant.unavailable .swatch-texture{opacity:.5}dialog:not(.exterior-dialog) .variant:hover .swatch-texture{box-shadow:0 0 0 4px #d9d7d077}dialog:not(.exterior-dialog) .swatch-texture{width:64px}@media(max-width:600px){dialog:not(.exterior-dialog) #dialog-variants{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}}

.finish-gallery{width:100%;margin-bottom:24px}.gallery-stage>figure[hidden]{display:none!important}.gallery-stage>figure{margin-top:0;margin-bottom:0}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:16px}.gallery-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--ink);font-size:28px;line-height:1;display:grid;place-items:center}.gallery-controls button:hover{background:var(--ink);color:white}.gallery-controls span{font-size:14px;color:var(--muted);min-width:48px;text-align:center}.finish-gallery:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
/* Compact material collection layout on phones only. */
@media(max-width:600px){
 .material-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;text-align:center;padding:20px 0;margin-top:24px;font-size:17px;line-height:1.35}
 #materials.section{padding-top:38px;padding-bottom:48px}
 #materials .section-heading{margin-bottom:24px}
 #materials .section-heading .eyebrow{margin-bottom:14px;font-size:12px;letter-spacing:1.7px}
 #materials h2{font-size:36px;letter-spacing:-1px;margin-bottom:0}
 #materials .section-heading>p{margin-top:18px;font-size:16px;line-height:1.65}
 #materials .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:28px}
 #materials .filters button{min-height:46px;padding:10px 12px;border-radius:999px;font-size:14px;line-height:1.35;color:var(--ink)}
 #materials .filters button.active{color:white}
 #materials .filters button:first-child{grid-column:1/-1}
 #materials .material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}
 #materials .card-image{height:auto;aspect-ratio:4/3}
 #materials .material-card h3{font-size:22px;margin-top:20px;overflow-wrap:anywhere}
 #materials .material-card p:not(.card-meta){font-size:14px;line-height:1.6}
 #materials .material-card button{font-size:14px;min-height:36px}
}

#material-grid{scroll-margin-top:24px}

.service-options{border:0;padding:0;margin:0 0 24px;min-width:0}.service-options legend{font-size:16px;padding:0;margin-bottom:14px}.service-choices{display:grid;gap:10px}.service-choice{position:relative;margin:0}.service-choice input{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;opacity:0}.service-choice span{display:flex;align-items:center;justify-content:center;min-height:52px;padding:14px 18px;border:1px solid var(--line);border-radius:999px;font-size:16px;line-height:1.4;text-align:center;cursor:pointer}.service-choice input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}.service-choice input:focus-visible+span{outline:2px solid var(--accent);outline-offset:4px}.service-note{font-size:14px;color:var(--muted);line-height:1.5;margin:14px 0 0}


/* Unified project form: same content on mobile and desktop, responsive layout only */
.quote{background:#282a26;color:#fff;max-width:none;grid-template-columns:minmax(280px,.8fr) minmax(460px,1.2fr);gap:8%;border-top:1px solid #555851}
.quote>div>p:not(.eyebrow){color:#cccfc7;max-width:430px}
.quote .eyebrow{color:#d7c4ae}
.quote .service-choices{grid-template-columns:1fr 1.35fr}
.quote .service-choice span{border-color:#686a63;color:#fff;background:transparent}
.quote .service-choice input:checked+span{background:#fff;color:var(--ink);border-color:#fff}
.quote .service-note,.quote .form-note,.quote #form-status{color:#cccfc7}
.quote input,.quote textarea,.quote select{background:#2e302b;border-color:#686a63;color:#fff}
.quote input:focus,.quote textarea:focus,.quote select:focus{border-color:#d7c4ae}
.quote .button{background:#fff;color:var(--ink);border-color:#fff}
@media(max-width:760px){.quote{grid-template-columns:1fr;gap:34px}.quote .service-choices{grid-template-columns:1fr}}

/* Softer mobile transition from project form to visit image */
#form-status:empty{display:none}
@media(max-width:760px){.quote{padding-bottom:32px}}

/* Visit section real-project image and approved title tone */
.visit-image img{object-position:58% 42%}
.visit-content h2{color:#1c1c18}
@media(max-width:760px){.visit-image img{object-position:60% 42%}}
