:root{--ink:#102f45;--teal:#15999c;--paper:#f6f4ef;--white:#fff;--muted:#667078;--line:#d9ddd9;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:#172127;font-family:var(--sans);line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:1rem}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,47,69,.1)}.showroom-bar{min-height:36px;background:var(--ink);color:#e7eff1}.showroom-bar-inner{max-width:var(--max);min-height:36px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:24px;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.showroom-bar-hours{color:#83e0df;white-space:nowrap}.showroom-bar-address{margin-left:auto;white-space:nowrap}.showroom-bar-directions{white-space:nowrap}.showroom-bar a:hover{color:#83e0df}.nav{max-width:var(--max);margin:auto;min-height:112px;padding:0 24px;display:flex;align-items:center;gap:28px}.logo img{width:100px;max-height:100px;object-fit:contain}.links{display:flex;align-items:center;gap:24px;margin-left:auto}.links a{font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.links a:hover,.links a[aria-current=page]{color:var(--teal)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.88rem 1.15rem;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:.25s}.btn:hover,.nav-cta:hover{background:var(--teal);border-color:var(--teal);transform:translateY(-1px)}.btn.light{background:#fff;color:var(--ink);border-color:#fff}.btn.ghost{background:transparent;color:inherit;border-color:currentColor}.menu{display:none;background:none;border:0;font-size:1.4rem}.hero{min-height:calc(100vh - 148px);display:grid;align-items:end;background:linear-gradient(90deg,rgba(8,24,34,.72),rgba(8,24,34,.05)),url('../images/rilco-hero.webp') center/cover;color:#fff;padding:clamp(80px,12vw,160px) max(24px,calc((100vw - var(--max))/2 + 24px))}.hero-copy{max-width:690px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--teal)}.hero .eyebrow{color:#83e0df}.hero h1,.page-hero h1,h2{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.03em}.hero h1{font-size:clamp(3.5rem,8vw,7.8rem);margin:.25em 0}.hero p{font-size:clamp(1rem,1.6vw,1.28rem);max-width:560px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.section{max-width:var(--max);margin:auto;padding:clamp(72px,10vw,140px) 24px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:42px}.section h2{font-size:clamp(2.5rem,5vw,5rem);margin:.18em 0}.section-head p{max-width:470px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;min-height:360px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.card:before,.visual{content:'';position:absolute;inset:0 0 36%;background:linear-gradient(135deg,#e9e3d8,#aab6b5)}.card[data-color=charcoal]:before,.visual.charcoal{background:linear-gradient(135deg,#0d1820,#58616a)}.card[data-color=oak]:before,.visual.oak{background:linear-gradient(135deg,#7c5a3e,#d4b894)}.card[data-color=teal]:before,.visual.teal{background:linear-gradient(135deg,#0b5c62,#49c3bf)}.card[data-color=pearl]:before{background:linear-gradient(135deg,#e8e7e2,#bfc7c5)}.card>*{position:relative}.card h3{margin:.5rem 0 .1rem;font-family:var(--serif);font-size:1.65rem;font-weight:400;line-height:1.15;letter-spacing:-.02em}.meta{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.feature{background:var(--ink);color:#fff}.feature-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;padding:clamp(70px,10vw,130px) 24px}.feature h2{font-size:clamp(3rem,6vw,6rem);margin:.2em 0}.feature p{color:#cbd5d9}.image-panel{min-height:520px;background:url('../images/rilco-hero.webp') 68% center/cover}.page-hero{max-width:var(--max);margin:auto;padding:clamp(90px,12vw,160px) 24px 70px}.page-hero h1{font-size:clamp(3.5rem,8vw,7rem);margin:.2em 0}.page-hero p{font-size:1.15rem;max-width:650px;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.filters button{padding:.7rem 1rem;border:1px solid var(--line);background:transparent;cursor:pointer}.filters button.active{background:var(--ink);color:#fff}.detail{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}.detail-visual{position:sticky;top:146px;min-height:580px;background:linear-gradient(135deg,#ece7de,#9dacaf)}.specs{margin:35px 0;border-top:1px solid var(--line)}.specs div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.notice{padding:16px;border-left:3px solid var(--teal);background:#edf5f3;color:#345}.prose{max-width:740px}.prose p{font-size:1.08rem;margin:1.5em 0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}label{font-weight:700;font-size:.82rem}input,select,textarea{width:100%;padding:14px;border:1px solid #bac2c2;background:#fff}textarea{min-height:160px;resize:vertical}.hp{position:absolute;left:-9999px}.status{grid-column:1/-1;min-height:1.5em}.footer{background:#0b2435;color:#d7e0e3}.footer-inner{max-width:var(--max);margin:auto;padding:70px 24px 30px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer h3{color:#fff}.footer a:hover{color:#6fd0ce}.legal{border-top:1px solid #294253;margin-top:50px;padding-top:22px;font-size:.78rem;color:#9fb0b8}.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.in{opacity:1;transform:none}@media(max-width:900px){.menu{display:block;margin-left:auto}.links{display:none;position:absolute;top:148px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.links.open{display:flex}.nav-cta{display:none}.grid{grid-template-columns:1fr 1fr}.feature-inner,.detail,.contact-grid{grid-template-columns:1fr}.detail-visual{position:relative;top:0}.image-panel{min-height:360px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.showroom-bar-inner{min-height:42px;padding:5px 16px;gap:12px;justify-content:space-between;letter-spacing:.04em}.showroom-bar-address{margin-left:0;overflow:hidden;text-overflow:ellipsis}.showroom-bar-directions{display:none}.grid,.footer-grid,.form{grid-template-columns:1fr}.field.full{grid-column:auto}.section-head{display:block}.hero{min-height:calc(100vh - 154px);background-position:62% center}.hero h1{font-size:3.4rem}.page-hero h1{font-size:3.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important}}

/* Refined contact and footer system */
.footer{background:#fff;color:var(--ink);border-top:1px solid var(--line)}
.footer-cta{max-width:var(--max);margin:auto;padding:80px 24px 64px;display:flex;align-items:end;justify-content:space-between;gap:48px;border-bottom:1px solid var(--line)}
.footer-cta h2{max-width:760px;margin:.18em 0 0;font-size:clamp(2.6rem,5vw,5rem)}
.footer-inner{padding:56px 24px 28px}
.footer-grid{grid-template-columns:1.25fr 1fr 1.1fr 1fr;gap:48px}
.footer-brand img{width:180px;height:auto;margin-bottom:20px}
.footer-brand p{max-width:300px;color:var(--muted)}
.footer-label{margin:0 0 18px;color:var(--teal);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.footer address{font-style:normal;line-height:1.75}
.footer-link{display:inline-block;margin-top:14px;font-weight:700}
.footer-contact{display:grid;gap:8px}
.hours-list{margin:0}
.hours-list div{padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.hours-list dt{font-weight:700}
.hours-list dd{margin:2px 0 0;color:var(--muted)}
.footer a:hover{color:var(--teal)}
.legal{border-top:1px solid var(--line);color:var(--muted)}
.contact-intro{background:var(--ink);color:#fff;padding:34px}
.contact-intro h2{margin:.1em 0 .45em;font-size:clamp(2.2rem,4vw,3.8rem)}
.contact-intro p{color:#d5e0e4}
.contact-methods{display:grid;gap:0;margin-top:30px;border-top:1px solid #345064}
.contact-methods a,.contact-methods div{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #345064}
.contact-methods span:first-child{color:#8fa5b0}
.contact-form-wrap{background:#fff;padding:clamp(24px,4vw,48px)}
.contact-form-wrap h2{margin-top:0;font-size:clamp(2.2rem,4vw,3.8rem)}
@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr}.footer-cta{align-items:flex-start;flex-direction:column}.contact-grid{gap:30px}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-cta{padding-top:60px}.contact-intro,.contact-form-wrap{padding:24px}.contact-methods a,.contact-methods div{display:grid;gap:2px}}

/* Real product catalog */
.product-card{min-height:510px;padding-top:350px;justify-content:flex-start}
.product-card:before{display:none}
.product-card .card-media{position:absolute;inset:0 0 auto;width:100%;height:330px;object-fit:cover;object-position:center 30%;transition:transform .55s ease}
.product-card:hover .card-media{transform:scale(1.025)}
.product-card[data-subcategory=mosaic]{min-height:420px;padding-top:250px}
.product-card[data-subcategory=mosaic] .card-media{height:230px;object-fit:contain;object-position:center;background:#eef0ed;padding:18px}
.product-taxonomy{color:var(--teal)}
.product-card h3{font-size:1.8rem}
.product-room-column{min-width:0}
.product-room-image{width:100%;height:min(72vh,760px);min-height:620px;object-fit:cover;background:#e8e6e1}
.image-caption{margin:.65rem 0 0;font-size:.78rem;color:var(--muted)}
.product-main-image{width:100%;height:min(68vh,720px);object-fit:contain;background:#fff}
.face-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}
.face-strip button{height:94px;padding:0;background:#fff;border:2px solid transparent;cursor:pointer;overflow:hidden}
.face-strip button.active{border-color:var(--teal)}
.face-strip img{width:100%;height:100%;object-fit:cover}
.face-note{font-size:.82rem;color:var(--muted);margin-top:12px}
.product-copy h1{font-family:var(--serif);font-weight:400;font-size:clamp(3.5rem,6vw,6.5rem);line-height:1;margin:.15em 0 .3em}
.faces-section{grid-column:1/-1;margin-top:28px;padding-top:80px;border-top:1px solid var(--line)}
.face-viewer{display:grid;grid-template-columns:minmax(300px,.72fr) 1.28fr;gap:42px;align-items:center}
.faces-section .product-main-image{height:500px}
.faces-section .face-strip{margin-top:0}
@media(max-width:900px){.product-room-image{height:560px;min-height:0}.faces-section{padding-top:48px}.face-viewer{grid-template-columns:1fr}.faces-section .product-main-image{height:520px}}
@media(max-width:600px){.product-card{min-height:450px;padding-top:300px}.product-card .card-media{height:280px}.product-card[data-subcategory=mosaic]{min-height:390px;padding-top:230px}.product-card[data-subcategory=mosaic] .card-media{height:210px}.product-room-image{height:420px}.face-strip button{height:70px}.faces-section .product-main-image{height:440px}.faces-section{padding-top:36px}}

/* Porcelain catalogue hierarchy and draggable tile faces */
.catalog-section{padding-top:0}
.catalog-heading{margin-bottom:34px}
.catalog-heading h2{font-size:clamp(2.5rem,5vw,4.8rem);margin:.14em 0}
.catalog-heading p{max-width:560px;color:var(--muted);margin:0}
.tile-rail{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;padding:2px 2px 18px;scroll-snap-type:x mandatory;cursor:grab;user-select:none;scrollbar-color:var(--teal) #e2e5e2;scrollbar-width:thin}
.tile-rail.dragging{cursor:grabbing;scroll-snap-type:none}
.tile-rail-card{display:block;flex:0 0 clamp(180px,18vw,270px);scroll-snap-align:start;background:transparent;transition:transform .25s ease,box-shadow .25s ease}
.tile-rail-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(16,47,69,.12)}
.tile-rail-card img{width:100%;height:clamp(360px,36vw,540px);aspect-ratio:1/2;object-fit:cover;background:transparent;pointer-events:none}
.tile-rail-name,.tile-rail-meta{display:block;padding:0}
.tile-rail-category{display:block;padding-top:14px;color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.tile-rail-name{padding-top:14px;font-family:var(--serif);font-size:1.24rem;line-height:1.1}
.tile-rail-category+.tile-rail-name{padding-top:5px}
.tile-rail-meta{padding-top:6px;padding-bottom:8px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.new-formats-section{max-width:none;padding-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:0;padding-bottom:clamp(36px,4vw,56px);background:#eef0ed}
.new-formats-section+#projects{padding-top:clamp(36px,4vw,56px)}
.new-formats-section .section-head{max-width:var(--max);padding-right:max(24px,calc((100vw - var(--max))/2 + 24px))}
.format-rail{padding-right:max(24px,calc((100vw - var(--max))/2 + 24px))}
.format-rail .tile-rail-card{flex-basis:clamp(210px,22vw,320px)}
.format-rail .tile-rail-card img{height:clamp(390px,42vw,580px);aspect-ratio:auto}
.format-rail .tile-rail-card[data-subcategory="tile-48x72"] img{object-position:center}
.format-rail .tile-rail-card[data-subcategory="paver"] img{object-position:center}
.rail-footer{display:flex;justify-content:space-between;gap:20px;padding:10px max(24px,calc((100vw - var(--max))/2 + 24px)) 0 0;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.rail-footer a{color:var(--ink)}
.rail-footer a:hover{color:var(--teal)}
.product-surface-image{object-fit:contain;background:#fff}
@media(max-width:600px){.tile-rail{margin-right:-24px;padding-right:24px}.tile-rail-card{flex-basis:52vw}.tile-rail-card img{height:104vw}.new-formats-section{padding-right:24px}.new-formats-section .section-head{padding-right:0}.format-rail{padding-right:24px}.format-rail .tile-rail-card{flex-basis:66vw}.format-rail .tile-rail-card img{height:112vw}.rail-footer{padding-right:0}}

/* True-format product rails */
.format-group+.format-group{margin-top:clamp(64px,8vw,104px)}
.format-group-heading{max-width:var(--max);padding-right:max(24px,calc((100vw - var(--max))/2 + 24px));display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}
.format-group-heading h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3rem);font-weight:400;line-height:1;margin:.15em 0 0}
.format-group-heading>a{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.format-group-heading>a:hover{color:var(--teal)}
.format-rail[data-product-rail="tile-48x72"] .tile-rail-card{flex-basis:clamp(220px,21vw,310px)}
.format-rail[data-product-rail="tile-48x72"] .tile-rail-card img{height:auto;aspect-ratio:2/3;object-fit:cover}
.format-rail[data-product-rail="tile-48x96"] .tile-rail-card{flex-basis:clamp(190px,18vw,270px)}
.format-rail[data-product-rail="tile-48x96"] .tile-rail-card img{height:auto;aspect-ratio:1/2;object-fit:cover}
.format-rail[data-product-rail="paver"] .tile-rail-card{flex-basis:clamp(250px,25vw,360px)}
.format-rail[data-product-rail="paver"] .tile-rail-card img{height:auto;aspect-ratio:1/1;object-fit:cover}
@media(max-width:600px){.format-group-heading{padding-right:0;align-items:flex-start}.format-group-heading>a{padding-top:7px}.format-rail[data-product-rail="tile-48x72"] .tile-rail-card{flex-basis:58vw}.format-rail[data-product-rail="tile-48x96"] .tile-rail-card{flex-basis:50vw}.format-rail[data-product-rail="paver"] .tile-rail-card{flex-basis:70vw}}

/* Product filtering and physically proportioned catalog cards */
.catalog-status{margin:-12px 0 28px;color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.product-card{min-height:0;padding:0 0 26px;justify-content:flex-start}
.product-card .card-media{position:relative;inset:auto;width:100%;height:auto;object-fit:cover;object-position:center;background:#f0f0ed}
.product-card[data-subcategory="tile-24x48"] .card-media,.product-card[data-subcategory="tile-48x96"] .card-media{aspect-ratio:1/2}
.product-card[data-subcategory="designer-24x48"]{grid-column:span 1}
.designer-card-media{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:#ddd}
.designer-room-image{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.designer-face-image{position:absolute;right:18px;bottom:18px;width:24%;height:58%;object-fit:cover;box-shadow:0 10px 28px rgba(10,25,34,.3);border:3px solid rgba(255,255,255,.9);transition:transform .55s ease}
.product-card[data-subcategory="designer-24x48"]:hover .designer-room-image{transform:scale(1.025)}
.product-card[data-subcategory="designer-24x48"]:hover .designer-face-image{transform:translateY(-4px)}
.product-card[data-subcategory="tile-48x72"] .card-media{aspect-ratio:2/3}
.product-card[data-subcategory="paver"] .card-media{aspect-ratio:1/1}
.product-card .product-taxonomy,.product-card h3,.product-card>span:last-child{margin-left:24px;margin-right:24px}
.product-card .product-taxonomy{margin-top:22px}
.product-card[data-subcategory=mosaic]{min-height:0;padding-top:0}
.product-card[data-subcategory=mosaic] .card-media{position:relative;height:auto;aspect-ratio:1/1;padding:18px}
@media(max-width:600px){.product-card,.product-card[data-subcategory=mosaic]{min-height:0;padding-top:0}.product-card .card-media,.product-card[data-subcategory=mosaic] .card-media{height:auto}.designer-face-image{right:12px;bottom:12px;border-width:2px}}

/* Surface-first product detail */
.product-breadcrumbs{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-bottom:-28px;color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.product-breadcrumbs a{color:var(--ink)}
.product-breadcrumbs a:hover{color:var(--teal)}
.product-surface-frame{display:flex;align-items:center;justify-content:center;min-height:640px;background:#ecece8;padding:clamp(18px,3vw,42px);overflow:hidden}
.product-surface-frame .product-surface-image{width:auto;max-width:100%;height:min(68vh,720px);min-height:0}
.detail[data-subcategory="tile-24x48"] .product-surface-frame .product-surface-image,.detail[data-subcategory="designer-24x48"] .product-surface-frame .product-surface-image,.detail[data-subcategory="tile-48x96"] .product-surface-frame .product-surface-image{aspect-ratio:1/2}
.detail[data-subcategory="designer-24x48"] .product-surface-frame .product-surface-image{object-fit:contain;background:transparent}
.detail[data-subcategory="tile-48x72"] .product-surface-frame .product-surface-image{aspect-ratio:2/3}
.detail[data-subcategory="paver"] .product-surface-frame .product-surface-image{width:min(100%,620px);height:auto;aspect-ratio:1/1;object-fit:cover}
.installed-section{grid-column:1/-1;margin-top:28px;padding-top:80px;border-top:1px solid var(--line)}
.product-installed-image{width:100%;max-height:820px;object-fit:cover;background:#e8e6e1}
.detail[data-surface-background="original"] .product-surface-frame,.detail[data-surface-background="original"] .faces-section .product-main-image{background:#ecece8}
.detail[data-surface-background="warm"] .product-surface-frame,.detail[data-surface-background="warm"] .faces-section .product-main-image{background:#bda78f}
.detail[data-surface-background="neutral"] .product-surface-frame,.detail[data-surface-background="neutral"] .faces-section .product-main-image{background:#d9dcda}
.detail[data-surface-background="charcoal"] .product-surface-frame,.detail[data-surface-background="charcoal"] .faces-section .product-main-image{background:#293944}
.surface-background-control{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.surface-background-control>span{display:block;margin-bottom:10px;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.surface-background-buttons{display:flex;flex-wrap:wrap;gap:8px}
.surface-background-buttons button{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:.72rem;font-weight:700;cursor:pointer}
.surface-background-buttons button[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.surface-swatch{width:15px;height:15px;border-radius:50%;border:1px solid rgba(16,47,69,.2)}
.surface-swatch.original{background:#ecece8}.surface-swatch.warm{background:#bda78f}.surface-swatch.neutral{background:#d9dcda}.surface-swatch.charcoal{background:#293944}
.surface-background-control small{display:block;margin-top:10px;color:var(--muted);font-size:.72rem}
.detail[data-slug="sodalite"] .product-surface-image,.product-card[data-slug="sodalite"] .card-media{image-orientation:none}
.detail[data-slug="amazonite-aqua"] .product-surface-image,.detail[data-slug="calcutta-azule"] .product-surface-image,.detail[data-slug="marmontis-onyx"] .product-surface-image,.detail[data-slug="lyris-white"] .product-surface-image{object-fit:cover;transform:scale(1.012)}
.tile-rail-card[data-slug="amazonite-aqua"] img,.tile-rail-card[data-slug="calcutta-azule"] img,.tile-rail-card[data-slug="marmontis-onyx"] img,.tile-rail-card[data-slug="lyris-white"] img,.product-card[data-slug="amazonite-aqua"] .card-media,.product-card[data-slug="calcutta-azule"] .card-media,.product-card[data-slug="marmontis-onyx"] .card-media,.product-card[data-slug="lyris-white"] .card-media{transform:scale(1.012)}
.product-project-link,.product-related{grid-column:1/-1;margin-top:28px;padding-top:clamp(58px,7vw,92px);border-top:1px solid var(--line)}
.product-project-link{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,7vw,90px);align-items:center}
.product-project-link h2,.product-related h2{margin:.16em 0 .24em;font-size:clamp(2.6rem,4.5vw,4.7rem)}
.product-project-link p{max-width:510px;margin:0 0 28px;color:var(--muted)}
.product-project-link img{width:100%;aspect-ratio:4/3;object-fit:cover}
.product-related-heading{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:32px}
.product-related-heading a{flex:0 0 auto;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.related-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.related-product-card{display:flex;min-width:0;flex-direction:column;background:#fff;border:1px solid var(--line);transition:transform .25s,border-color .25s}
.related-product-card:hover{transform:translateY(-4px);border-color:var(--teal)}
.related-product-media{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;overflow:hidden;background:#e8e9e6;padding:18px}
.related-product-media img{width:100%;height:100%;object-fit:contain;transition:transform .5s}
.related-product-card:hover img{transform:scale(1.025)}
.related-product-copy{display:flex;min-height:154px;padding:20px 22px;flex-direction:column;align-items:flex-start}
.related-product-copy small{color:var(--teal);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.related-product-copy strong{margin-top:6px;font-family:var(--serif);font-size:clamp(1.5rem,2vw,2rem);font-weight:400;line-height:1.05}
.related-product-copy em{margin-top:auto;padding-top:20px;font-size:.63rem;font-style:normal;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:900px){.product-surface-frame{min-height:0}.product-surface-frame .product-surface-image{height:min(72vh,680px)}.installed-section{padding-top:48px}.product-project-link{grid-template-columns:1fr}.related-product-grid{grid-template-columns:1fr 1fr}.related-product-card:last-child{grid-column:1/-1}}
@media(max-width:600px){.product-breadcrumbs{margin-bottom:-16px}.product-related-heading{align-items:flex-start;flex-direction:column}.related-product-grid{grid-template-columns:1fr}.related-product-card:last-child{grid-column:auto}}

/* Homepage rotating hero photography */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#142d3e}
.hero-slides,.hero-slide{position:absolute;inset:0}
.hero-slides{z-index:-2}
.hero-slide{opacity:0;background-position:center;background-size:cover;transition:opacity 1s ease}
.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,24,34,.8) 0%,rgba(8,24,34,.4) 46%,rgba(8,24,34,.1) 100%)}
.hero-slide.active{opacity:1}
.hero-slide:nth-child(1){background-image:url('../images/rilco-home-bathroom.jpg')}
.hero-slide:nth-child(2){background-image:url('../images/showroom/dsc-2524.jpg');background-position:center 48%}
.hero-slide:nth-child(3){background-image:url('../images/showroom/dsc-2549.jpg');background-position:center 52%}
.hero-slide:nth-child(4){background-image:url('../images/showroom/dsc-2210.jpg');background-position:center 52%}
.hero-slide:nth-child(5){background-image:url('../images/showroom/dsc-2208.jpg');background-position:center 48%}
.hero-copy{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide:not(:first-child){display:none}}
@media(max-width:600px){.hero-slide:nth-child(1){background-position:54% center}.hero-slide:nth-child(2){background-position:56% center}.hero-slide:nth-child(3){background-position:46% center}.hero-slide:nth-child(4){background-position:53% center}.hero-slide:nth-child(5){background-position:58% center}}

/* Showroom photography */
.showroom-preview{max-width:none;background:var(--ink);color:#fff;padding:clamp(72px,9vw,120px) max(24px,calc((100vw - var(--max))/2 + 24px))}
.showroom-preview-copy{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(48px,8vw,110px);align-items:end;margin-bottom:52px}
.showroom-preview-heading{min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.showroom-preview-copy h2{font-size:clamp(2.8rem,4.4vw,4.6rem);line-height:1.02;margin:.18em 0 0;text-align:left;max-width:720px;width:100%}
.showroom-preview-action{padding-bottom:8px}
.showroom-preview-copy p{color:#cbd5d9;max-width:470px;margin:0 0 28px;font-size:1.05rem}
.showroom-preview-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:12px}
.showroom-preview-grid img{width:100%;height:100%;object-fit:cover}
.showroom-preview-grid img:nth-child(1){grid-column:span 7;grid-row:span 2}
.showroom-preview-grid img:nth-child(2),.showroom-preview-grid img:nth-child(3){grid-column:span 5}
.showroom-preview-grid img:nth-child(n+4){grid-column:span 4}
.showroom-lead-image{max-width:var(--max);margin:0 auto;padding:0 24px}
.showroom-lead-image img{width:100%;height:min(68vw,760px);object-fit:cover}
.showroom-gallery{columns:3 300px;column-gap:14px}
.showroom-gallery img{width:100%;margin:0 0 14px;break-inside:avoid;background:#e8e6e1}
@media(max-width:1000px){.showroom-preview-copy{grid-template-columns:1fr;gap:28px}.showroom-preview-action{padding-bottom:0}.showroom-preview-grid{grid-auto-rows:190px}}
@media(max-width:700px){.showroom-preview-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.showroom-preview-grid img:nth-child(n){grid-column:span 1;grid-row:span 1}.showroom-preview-grid img:nth-child(1){grid-column:1/-1}.showroom-gallery{columns:2 150px}.showroom-lead-image{padding:0}.showroom-lead-image img{height:62vh}}

/* Featured black porcelain facade */
.facade-project-image{background-image:url('../images/projects/black-porcelain-facade.jpg');background-position:center 88%}

/* About page showroom photograph */
.about-image{background-image:url('../images/showroom/dsc-2524.jpg');background-position:52% center}
@media(max-width:900px){.about-image{background-position:58% center}}

/* Waterproof flooring collection */
.product-category-filters{display:grid;gap:12px;padding:18px;background:#eeefec;border:1px solid var(--line)}
.product-category-filters>.filter-family:first-of-type{padding-top:14px;border-top:1px solid var(--line)}
.filter-family{display:flex;flex-wrap:wrap;align-items:center;gap:9px}
.filter-family>span{flex:0 0 82px;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.product-card[data-subcategory="luxury-vinyl"] .card-media{aspect-ratio:1/2;object-position:center}
.detail[data-subcategory="luxury-vinyl"] .product-surface-frame{min-height:440px}
.detail[data-subcategory="luxury-vinyl"] .product-surface-frame .product-surface-image{width:100%;height:auto;aspect-ratio:5.3/1;object-fit:cover;box-shadow:0 18px 45px rgba(16,47,69,.18)}
.flooring-faces-section .face-viewer{grid-template-columns:1fr}
.flooring-faces-section .product-main-image{width:100%;height:auto;aspect-ratio:5.3/1;object-fit:cover;box-shadow:0 16px 38px rgba(16,47,69,.13)}
.flooring-faces-section .face-strip{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px}
.flooring-faces-section .face-strip button{height:auto;aspect-ratio:5.3/1;background:#e5e3de}
.flooring-faces-section .face-strip img{object-fit:cover}
.faces-section,.installed-section,.flooring-installation{scroll-margin-top:132px}
.flooring-installation{grid-column:1/-1;margin-top:28px;padding-top:80px;border-top:1px solid var(--line)}
.installation-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,7vw,90px);align-items:end;margin-bottom:44px}
.installation-intro h2{font-size:clamp(2.8rem,5vw,5rem);margin:.16em 0 0}
.installation-intro p{max-width:500px;margin:0;color:var(--muted)}
.installation-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.installation-steps article{position:relative;min-height:350px;padding:28px;background:#fff;border-top:4px solid var(--ink)}
.installation-steps h3{margin:22px 0 8px;font-family:var(--serif);font-size:1.5rem;font-weight:400;line-height:1.1}
.installation-steps p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}
.step-number{position:absolute;top:24px;right:25px;color:var(--teal);font-size:.7rem;font-weight:700;letter-spacing:.12em}
.install-illustration{position:relative;width:100%;height:145px;margin-top:24px;background:#eef0ed;overflow:hidden}
.install-illustration i{position:absolute;display:block;background:#bca78e;border:1px solid #775f49;box-shadow:0 5px 10px rgba(16,47,69,.12)}
.install-illustration.prepare i{width:68%;height:18px;left:16%;transform:skewX(-25deg)}
.install-illustration.prepare i:nth-child(1){top:35px}.install-illustration.prepare i:nth-child(2){top:64px}.install-illustration.prepare i:nth-child(3){top:93px}
.install-illustration.space:before,.install-illustration.space:after{content:'';position:absolute;top:18px;bottom:18px;width:7px;background:var(--ink)}
.install-illustration.space:before{left:16px}.install-illustration.space:after{right:16px}
.install-illustration.space i{width:64%;height:24px;left:18%;transform:skewY(-8deg)}
.install-illustration.space i:nth-child(1){top:28px}.install-illustration.space i:nth-child(2){top:61px}.install-illustration.space i:nth-child(3){top:94px}
.install-illustration.lock i{top:58px;width:44%;height:28px}.install-illustration.lock i:first-child{left:7%;transform:rotate(7deg)}.install-illustration.lock i:last-child{right:7%;transform:rotate(-7deg)}
.install-illustration.lock:after{content:'';position:absolute;left:47%;top:57px;width:18px;height:18px;border-right:4px solid var(--teal);border-bottom:4px solid var(--teal);transform:rotate(45deg)}
.install-illustration.row i{width:54%;height:22px;transform:skewX(-22deg)}
.install-illustration.row i:nth-child(1){top:30px;left:8%}.install-illustration.row i:nth-child(2){top:62px;left:34%}.install-illustration.row i:nth-child(3){top:94px;left:8%}
.install-illustration.trim i:first-child{left:12%;top:45px;width:72%;height:30px;transform:rotate(-8deg)}
.install-illustration.trim i:nth-child(2){left:56%;top:25px;width:3px;height:82px;background:var(--teal);border:0;box-shadow:none;transform:rotate(18deg)}
.install-illustration.trim i:nth-child(3){left:63%;top:74px;width:22%;height:30px;transform:rotate(-8deg)}
.install-illustration.finish i:first-child{left:12%;bottom:25px;width:76%;height:25px;transform:skewX(-22deg)}
.install-illustration.finish i:nth-child(2){left:63%;top:16px;width:8px;height:105px;background:var(--ink)}
.install-illustration.finish i:nth-child(3){left:66%;top:68px;width:20%;height:8px;background:var(--teal);border:0;box-shadow:none}
.installation-note{margin:18px 0 0;padding:22px 24px;border-left:4px solid var(--teal);background:#edf5f3;color:#345}
@media(max-width:900px){.installation-intro{grid-template-columns:1fr;align-items:start}.installation-steps{grid-template-columns:1fr 1fr}.flooring-installation{padding-top:48px}}
@media(max-width:600px){.filter-family>span{flex-basis:100%}.product-category-filters{padding:14px}.detail[data-subcategory="luxury-vinyl"] .product-surface-frame{min-height:250px}.flooring-faces-section .face-strip{grid-template-columns:1fr 1fr}.flooring-faces-section .face-strip button{aspect-ratio:5.3/1}.installation-steps{grid-template-columns:1fr}.installation-steps article{min-height:320px}.flooring-installation{padding-top:36px}}

/* Footer social profiles */
.footer-social{display:flex;gap:10px;margin-top:22px}
.footer-social a{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--ink);transition:background .2s,border-color .2s,color .2s,transform .2s}
.footer-social a:hover,.footer-social a:focus-visible{background:var(--teal);border-color:var(--teal);color:#fff;transform:translateY(-2px)}
.footer-social svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.footer-social svg path{fill:currentColor;stroke:none}
.footer-social .social-dot{fill:currentColor;stroke:none}

/* Approved deep-charcoal theme; keep teal accents and original photography. */
:root{--ink:#293944}
.hero{background-color:var(--ink)}
.hero-slide::after{background:linear-gradient(90deg,rgba(41,57,68,.8) 0%,rgba(41,57,68,.4) 46%,rgba(41,57,68,.1) 100%)}
#tile-faces{max-width:none;background:var(--ink);color:#fff;padding-left:max(24px,calc((100vw - 1240px)/2 + 24px));padding-right:max(24px,calc((100vw - 1240px)/2 + 24px))}
#tile-faces .section-head p,#tile-faces .tile-rail-meta{color:#d6dfe3}
#tile-faces .eyebrow{color:#80d8d6}
#tile-faces .tile-rail{scrollbar-color:#15999c transparent}
#tile-faces .tile-rail[data-product-rail="tile-48x72"] .tile-rail-card{flex-basis:clamp(220px,21vw,310px)}
#tile-faces .tile-rail[data-product-rail="tile-48x72"] .tile-rail-card img{height:auto;aspect-ratio:2/3;object-fit:cover}

/* Verified residential project stories */
.project-index-hero{padding-bottom:56px}
.project-index-section{padding-top:0}
.project-index-section [data-projects],.home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.project-list-card{display:flex;min-width:0;min-height:0;flex-direction:column;background:#fff;overflow:hidden}
.project-list-media{min-width:0;overflow:hidden;background:#e6e7e4}
.project-list-media img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
.project-list-card:hover .project-list-media img{transform:scale(1.018)}
.project-list-copy{min-width:0;display:flex;flex:1;flex-direction:column;padding:26px 28px 30px}
.project-list-title{max-width:100%;margin:.35em 0 .3em;font-family:var(--serif);font-size:clamp(2rem,2.5vw,2.8rem);font-weight:400;line-height:1.02;letter-spacing:-.03em}
.project-list-link{margin-top:auto;padding-top:24px;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.project-detail{padding-bottom:clamp(80px,10vw,140px)}
.project-detail-intro{max-width:1480px;margin:auto;padding:clamp(58px,8vw,110px) 24px 0;display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);gap:clamp(40px,6vw,90px);align-items:center}
.project-detail-header{padding:24px 0;text-align:left}
.project-detail-header h1{margin:.18em 0 .2em;font-family:var(--serif);font-size:clamp(3.7rem,6.5vw,7rem);font-weight:400;line-height:.96;letter-spacing:-.045em}
.project-lead-video{position:relative;display:flex;align-items:center;justify-content:center;min-height:520px;background:#1c2931;overflow:hidden}
.project-lead-video video{display:block;width:100%;height:min(76vh,760px);object-fit:contain;background:#1c2931}
.project-video-label{position:absolute;left:20px;bottom:20px;padding:10px 13px;background:rgba(20,31,38,.78);color:#fff;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(8px)}
.project-facts{max-width:var(--max);margin:0 auto;padding:30px 24px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.project-facts div{padding:21px 24px;border-left:1px solid var(--line)}
.project-facts div:last-child{border-right:1px solid var(--line)}
.project-facts span,.project-facts strong{display:block}
.project-facts span{color:var(--muted);font-size:.65rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.project-facts strong{margin-top:7px;font-family:var(--serif);font-size:1.2rem;font-weight:400;line-height:1.2}
.project-bathroom-chapter{max-width:1480px;margin:auto;padding:clamp(82px,9vw,125px) 24px}
.project-chapter-head{max-width:1240px;margin:0 auto 48px;display:grid;grid-template-columns:1.05fr .75fr;gap:clamp(40px,8vw,120px);align-items:end}
.project-chapter-head h2,.project-feature h2,.project-closing h2{font-size:clamp(2.7rem,4.5vw,4.65rem);margin:.18em 0 0}
.project-chapter-head p{margin:0 0 8px;color:var(--muted);font-size:1.06rem}
.project-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.project-photo-pair figure{margin:0}
.project-photo-pair img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#e5e5e1}
.project-feature{max-width:var(--max);margin:auto;padding:clamp(90px,11vw,150px) 24px 0;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(40px,7vw,95px);align-items:center}
.project-feature-shower{max-width:none;padding:clamp(72px,8vw,112px) max(24px,calc((100vw - var(--max))/2 + 24px));background:var(--ink);color:#fff}
.project-feature-shower .eyebrow{color:#80d8d6}
.project-feature-shower .project-feature-copy p{color:#cbd5d9}
.project-feature-kitchen{grid-template-columns:.82fr 1.18fr}
.project-feature-media img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#e5e5e1}
.project-feature-copy p{color:var(--muted);font-size:1.06rem}
.project-swipe-section{max-width:1480px;margin:auto;padding:clamp(78px,9vw,125px) 24px 0}
.project-swipe-heading{max-width:1240px;margin:0 auto 36px;display:flex;align-items:end;justify-content:space-between;gap:40px}
.project-swipe-heading h2{font-size:clamp(2.7rem,4.5vw,4.7rem);margin:.18em 0 0}
.project-swipe-heading p{max-width:390px;margin:0 0 8px;color:var(--muted)}
.project-swipe-shell{position:relative;max-width:920px;margin:auto}
.project-swipe-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x pan-y}
.project-swipe-track::-webkit-scrollbar{display:none}
.project-swipe-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;background:#fff}
.project-swipe-slide img{width:100%;height:min(66vh,720px);object-fit:contain;background:#e9e9e5}
.project-swipe-copy{padding:24px 28px 28px;text-align:center}
.project-swipe-copy span{color:var(--teal);font-size:.67rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.project-swipe-copy h3{margin:7px 0 4px;font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.7rem);font-weight:400;line-height:1.05}
.project-swipe-copy p{max-width:580px;margin:0 auto;color:var(--muted)}
.project-swipe-arrow{position:absolute;top:calc(50% - 48px);z-index:2;width:52px;height:52px;border:0;border-radius:50%;background:var(--ink);color:#fff;cursor:pointer;font-size:1.25rem;box-shadow:0 12px 28px rgba(20,35,44,.18)}
.project-swipe-arrow.previous{left:-76px}.project-swipe-arrow.next{right:-76px}
.project-swipe-navigation{max-width:920px;margin:18px auto 0;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.1em}
.project-swipe-dots{display:flex;gap:8px}
.project-swipe-dots button{width:34px;height:3px;padding:0;border:0;background:#c9cecc;cursor:pointer}
.project-swipe-dots button[aria-pressed="true"]{background:var(--teal)}
.project-closing{max-width:var(--max);margin:clamp(90px,12vw,160px) auto 0;padding:clamp(55px,7vw,90px);background:var(--ink);color:#fff;text-align:center}
.project-closing h2{max-width:820px;margin-left:auto;margin-right:auto}
.project-closing .btn{background:#fff;border-color:#fff;color:var(--ink)}
.project-material-links{max-width:var(--max);margin:clamp(80px,10vw,130px) auto 0;padding:0 24px}
.project-material-links-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,7vw,90px);align-items:end;margin-bottom:34px}
.project-material-links-heading h2{margin:.18em 0 0;font-size:clamp(2.7rem,4.5vw,4.7rem)}
.project-material-links-heading p{margin:0 0 8px;color:var(--muted)}
.project-material-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.project-material-link-grid a{min-height:220px;padding:27px;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;transition:transform .25s,border-color .25s}
.project-material-link-grid a:hover{transform:translateY(-4px);border-color:var(--teal)}
.project-material-link-grid span{color:var(--teal);font-size:.65rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.project-material-link-grid strong{margin-top:14px;font-family:var(--serif);font-size:clamp(1.65rem,2.5vw,2.35rem);font-weight:400;line-height:1.08}
.project-material-link-grid em{margin-top:auto;padding-top:24px;font-size:.66rem;font-style:normal;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:900px){.project-index-section [data-projects],.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-detail-intro,.project-chapter-head,.project-feature,.project-feature-kitchen,.project-material-links-heading{grid-template-columns:1fr}.project-detail-intro{gap:24px}.project-detail-header{padding-bottom:0}.project-facts{grid-template-columns:1fr 1fr}.project-facts div:nth-child(2){border-right:1px solid var(--line)}.project-chapter-head{gap:20px}.project-chapter-head p{max-width:680px}.project-photo-pair{grid-template-columns:1fr 1fr}.project-feature-kitchen .project-feature-copy{order:2}.project-feature-kitchen .project-feature-media{order:1}.project-material-link-grid{grid-template-columns:1fr 1fr}.project-material-link-grid a:last-child{grid-column:1/-1}}
@media(max-width:1100px){.project-swipe-arrow{top:calc(50% - 44px)}.project-swipe-arrow.previous{left:14px}.project-swipe-arrow.next{right:14px}}
@media(max-width:900px){.project-swipe-heading{display:block}.project-swipe-heading p{margin-top:16px}.project-swipe-slide img{height:min(68vh,680px)}}
@media(max-width:600px){.project-index-section [data-projects],.home-project-grid{grid-template-columns:1fr}.project-detail-intro{padding-left:0;padding-right:0}.project-detail-header{padding-left:24px;padding-right:24px}.project-lead-video{min-height:0}.project-lead-video video{height:auto;max-height:76vh}.project-video-label{left:10px;bottom:10px}.project-facts{grid-template-columns:1fr}.project-facts div,.project-facts div:nth-child(2){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.project-swipe-section{padding-left:0;padding-right:0}.project-swipe-heading{padding:0 24px}.project-swipe-shell{max-width:none}.project-swipe-slide img{height:auto;max-height:68vh}.project-swipe-copy{padding:22px 24px 25px}.project-swipe-copy p{font-size:.9rem}.project-swipe-arrow{width:44px;height:44px;top:38%}.project-swipe-navigation{padding:0 24px}.project-material-link-grid{grid-template-columns:1fr}.project-material-link-grid a:last-child{grid-column:auto}.project-closing{margin-left:0;margin-right:0;padding:52px 24px}.project-list-copy{padding:24px}.project-list-title{font-size:2.15rem}}
@media(max-width:600px){.showroom-bar-inner{display:grid;justify-content:center;gap:0;min-height:46px;padding:4px 12px;text-align:center}.showroom-bar-address{max-width:none;overflow:visible;text-overflow:clip;line-height:1.25}.showroom-bar-hours{line-height:1.25}.hero{min-height:calc(100vh - 158px)}}

/* Curated Google reviews on the About page */
.google-reviews{max-width:none;padding:clamp(72px,9vw,118px) max(24px,calc((100vw - var(--max))/2 + 24px));background:var(--ink);color:#fff}
.google-reviews-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(42px,7vw,104px);align-items:end;margin-bottom:44px}
.google-reviews-intro h2{max-width:710px;margin:.18em 0 0;font-size:clamp(3rem,5.7vw,5.7rem)}
.google-reviews-summary{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding-bottom:9px}
.google-reviews-score{font-family:var(--serif);font-size:clamp(4rem,6vw,6rem);line-height:.82;letter-spacing:-.06em}
.google-reviews-stars{color:#80d8d6;font-size:1.1rem;letter-spacing:.12em;white-space:nowrap}
.google-reviews-count{margin-top:5px;color:#cbd5d9;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.google-reviews-grid{display:grid;grid-template-columns:1.25fr .875fr .875fr;gap:16px}
.google-review-card{min-height:330px;padding:clamp(27px,3vw,40px);display:flex;flex-direction:column;background:#fff;color:#172127}
.google-review-card-feature{background:#eff2ef}
.google-review-source{display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.google-review-mark{width:26px;height:26px;display:inline-grid;place-items:center;border:1px solid #cad0cd;border-radius:50%;color:#4285f4;font-size:.8rem;font-weight:800;text-transform:none}
.google-review-card blockquote{margin:auto 0;padding:28px 0;font-family:var(--serif);font-size:clamp(1.55rem,2.2vw,2.55rem);line-height:1.12;letter-spacing:-.025em}
.google-review-card:not(.google-review-card-feature) blockquote{font-size:clamp(1.35rem,1.7vw,1.85rem)}
.google-review-author strong,.google-review-author span{display:block}
.google-review-author strong{font-size:.84rem;letter-spacing:.04em}
.google-review-author span{margin-top:3px;color:var(--muted);font-size:.72rem}
.google-reviews-footer{margin-top:28px;display:flex;justify-content:space-between;gap:24px;align-items:center}
.google-reviews-footer p{margin:0;color:#cbd5d9;font-size:.86rem}
@media(max-width:900px){.google-reviews-intro{grid-template-columns:1fr;gap:30px}.google-reviews-grid{grid-template-columns:1fr 1fr}.google-review-card-feature{grid-column:1/-1}}
@media(max-width:600px){.google-reviews-grid{grid-template-columns:1fr}.google-review-card-feature{grid-column:auto}.google-review-card{min-height:280px}.google-reviews-footer{align-items:flex-start;flex-direction:column}}

/* Shopper action paths */
.shopping-actions{max-width:var(--max);margin:auto;padding:clamp(64px,7vw,96px) 24px}
.shopping-actions-intro{margin-bottom:24px}
.shopping-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.shopping-action-card{min-height:310px;padding:30px;display:grid;grid-template-rows:auto 1fr auto;gap:28px;border:1px solid #cad0cd;background:#fff;transition:transform .25s ease,border-color .25s ease,background .25s ease}
.shopping-action-card:hover{transform:translateY(-4px);border-color:var(--teal)}
.shopping-action-card.visit{background:var(--ink);border-color:var(--ink);color:#fff}
.shopping-action-number{font-size:.68rem;font-weight:700;letter-spacing:.14em;color:var(--teal)}
.shopping-action-card h3{max-width:470px;margin:0 0 12px;font-family:var(--serif);font-size:clamp(2rem,3vw,3.25rem);font-weight:400;line-height:1.02;letter-spacing:-.03em}
.shopping-action-card p{max-width:500px;margin:0;color:var(--muted)}
.shopping-action-card.visit p{color:#cbd5d9}
.shopping-action-link{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.optional{font-weight:400;color:var(--muted)}
@media(max-width:700px){.shopping-actions-grid{grid-template-columns:1fr}.shopping-action-card{min-height:270px;padding:26px}}

/* Product discovery hub, category landing pages, and faceted browsing */
.product-index-hero{padding-bottom:clamp(68px,8vw,104px)}
.product-directory{padding-top:0}
.catalog-heading{max-width:850px;margin-bottom:38px}
.catalog-heading h2{margin:.18em 0 .22em;font-size:clamp(2.8rem,5vw,5rem);line-height:.98}
.catalog-heading p{max-width:700px;margin:0;color:var(--muted);font-size:1.03rem}
.product-directory-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.product-directory-heading .catalog-heading{margin-bottom:0}
.product-directory-all{flex:0 0 auto;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.product-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.product-directory-card{display:flex;min-width:0;flex-direction:column;background:#fff;border:1px solid var(--line);color:var(--ink);transition:transform .25s ease,border-color .25s ease}
.product-directory-card:hover{transform:translateY(-4px);border-color:var(--teal)}
.product-directory-image{display:block;aspect-ratio:4/5;overflow:hidden;background:#e7e8e5}
.product-directory-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.product-directory-card:hover .product-directory-image img{transform:scale(1.025)}
.product-directory-copy{display:flex;min-height:184px;padding:22px;flex-direction:column;align-items:flex-start}
.product-directory-card small{font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--teal)}
.product-directory-card strong{margin-top:8px;font-family:var(--serif);font-size:clamp(1.65rem,2.1vw,2.45rem);font-weight:400;line-height:1}
.product-directory-card em{margin-top:auto;padding-top:24px;font-size:.64rem;font-style:normal;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.catalog-toolbar{display:grid;grid-template-columns:minmax(280px,1.25fr) minmax(300px,.75fr);gap:18px 26px;padding:clamp(22px,3vw,34px);background:#e9ece9;border-top:4px solid var(--ink)}
.catalog-toolbar label span{display:block;margin-bottom:8px;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#52616a}
.catalog-toolbar input,.catalog-toolbar select{width:100%;height:52px;padding:0 15px;border:1px solid #bcc5c2;border-radius:0;background:#fff;color:var(--ink);font:inherit}
.catalog-toolbar input:focus,.catalog-toolbar select:focus{outline:2px solid var(--teal);outline-offset:1px}
.catalog-family-tabs{display:flex;align-items:end;gap:7px}
.catalog-family-tabs button,.catalog-clear{min-height:52px;padding:12px 16px;border:1px solid #aeb9b5;background:transparent;color:var(--ink);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.catalog-family-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}
.catalog-select-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.catalog-clear{justify-self:start;min-height:auto;padding:8px 0;border:0;border-bottom:1px solid currentColor}
.catalog-results-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:28px 0 20px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.catalog-results-head p{margin:0;font-weight:700;color:var(--ink)}
.catalog-results-head span{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.catalog-empty{padding:70px 24px;background:#eceeeb;text-align:center;color:var(--muted)}
.catalog-empty[hidden]{display:none}
.category-breadcrumbs{max-width:var(--max);margin:auto;padding:28px 24px 0;display:flex;gap:8px;align-items:center;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.category-breadcrumbs a{color:var(--ink)}
.category-hero{max-width:var(--max);margin:auto;padding:clamp(54px,8vw,110px) 24px clamp(58px,7vw,92px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(44px,8vw,120px);align-items:end}
.category-hero h1{margin:.16em 0 .18em;font-family:var(--serif);font-size:clamp(4rem,8vw,8.2rem);font-weight:400;line-height:.88;letter-spacing:-.055em}
.category-hero-copy p{max-width:560px;margin:0;color:var(--muted);font-size:1.08rem}
.category-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.category-fact{min-height:135px;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.category-fact span,.category-fact strong{display:block}
.category-fact span{font-size:.63rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.category-fact strong{margin-top:8px;font-family:var(--serif);font-size:1.42rem;font-weight:400;line-height:1.08}
.category-catalog{padding-top:clamp(60px,8vw,100px);background:#f4f3ef}
.category-catalog .catalog-toolbar{grid-template-columns:minmax(260px,1fr) 2fr}
.category-catalog .catalog-select-grid{grid-column:auto;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.category-catalog .catalog-clear{grid-column:1/-1}
@media(max-width:1000px){.product-directory-grid{grid-template-columns:1fr 1fr}.catalog-toolbar,.category-catalog .catalog-toolbar{grid-template-columns:1fr}.catalog-select-grid,.category-catalog .catalog-select-grid{grid-column:1/-1;grid-template-columns:1fr 1fr}.category-hero{grid-template-columns:1fr;gap:38px}.category-hero-copy p{max-width:720px}}
@media(max-width:650px){.product-directory-heading{align-items:flex-start;flex-direction:column;gap:22px}.product-directory-grid{grid-template-columns:1fr}.product-directory-image{aspect-ratio:4/3}.product-directory-copy{min-height:160px;padding:22px}.catalog-toolbar{padding:20px}.catalog-family-tabs{align-items:stretch;flex-direction:column}.catalog-family-tabs button{width:100%}.catalog-select-grid,.category-catalog .catalog-select-grid{grid-template-columns:1fr}.catalog-results-head{align-items:flex-start;flex-direction:column;gap:6px}.category-breadcrumbs{padding-top:20px}.category-hero{padding-top:42px}.category-facts{grid-template-columns:1fr}.category-fact{min-height:0}.category-hero h1{font-size:clamp(3.6rem,18vw,5.7rem)}}

/* Upcoming exclusive 48 x 110 porcelain video */
.upcoming-format-video{position:relative;min-height:clamp(560px,72vw,900px);overflow:hidden;background:#171b1d;color:#fff;isolation:isolate}
.upcoming-format-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.upcoming-format-video video::-webkit-media-controls{display:none!important}
.upcoming-format-video-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,11,12,.08) 30%,rgba(8,11,12,.62) 100%)}
.upcoming-format-video-title{position:absolute;left:clamp(24px,7vw,112px);right:clamp(24px,7vw,112px);bottom:clamp(34px,6vw,88px);display:flex;align-items:flex-end;justify-content:space-between;gap:28px;border-top:1px solid rgba(255,255,255,.64);padding-top:18px;text-transform:uppercase}
.upcoming-format-video-title strong{font-family:var(--serif);font-size:clamp(3.4rem,8vw,9rem);font-weight:400;line-height:.84;letter-spacing:-.045em}
.upcoming-format-video-title span{padding-bottom:.3em;font-size:clamp(.78rem,1.3vw,1.05rem);font-weight:700;letter-spacing:.2em}
@media(max-width:700px){.upcoming-format-video{min-height:68vh}.upcoming-format-video video{object-position:center}.upcoming-format-video-title{align-items:flex-start;flex-direction:column;gap:14px}.upcoming-format-video-title strong{font-size:clamp(3.2rem,18vw,5.5rem)}.upcoming-format-video-title span{padding-bottom:0}}

/* Large-format bathroom video on the home page. */
.feature-video-panel{min-height:520px;overflow:hidden;background:#1f2f38;display:flex;align-items:center;justify-content:center}
.feature-video-panel video{display:block;width:100%;height:520px;object-fit:cover;background:#1f2f38}
@media(max-width:900px){.feature-video-panel{min-height:360px}.feature-video-panel video{height:auto;max-height:72vh;object-fit:contain}}
