/* All Stiles review mockup - design system */
:root{
  --ink:#274b5d;
  --ink-deep:#1d3d4d;
  --mute:#66797f;
  --line:#e4e9ea;
  --canvas:#f5f2ec;
  --taupe:#b3a189;
  --serif:'Italiana',serif;
  --sans:'DM Sans',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--canvas);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:1920px;margin:0 auto;padding:0 2.5%}
.eyebrow{font:600 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.band-ink .eyebrow,.eyebrow.light{color:rgba(255,255,255,.65)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06;color:var(--ink-deep)}
h1{font-size:clamp(44px,6vw,76px)}
h2{font-size:clamp(34px,4.4vw,56px)}
h3{font-size:26px}
p.lede{color:var(--mute);font-size:16.5px;line-height:1.65;max-width:560px}
.btn{display:inline-block;font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:15px 28px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:opacity .2s}
.btn:hover{opacity:.85}
.btn.primary{background:var(--ink);color:#fff}
.btn.light{background:#f5f2ec;color:var(--ink)}
.btn.outline{background:transparent;border-color:currentColor;color:inherit}
.textlink{font:600 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink-deep)}
.textlink .arr{margin-left:6px}

/* topnote */
.topnote{display:block;background:var(--ink);color:#fff;text-align:center;text-decoration:none;font:500 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:9px 16px}
.topnote:hover{background:var(--ink-deep)}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:#f5f2ec;border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px}
.brand img{height:66px;width:auto}
.main-nav{display:flex;gap:30px;align-items:center}
.main-nav a{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink-deep)}
.main-nav a:hover{color:var(--mute)}
.header-call{font:600 12.5px var(--sans);letter-spacing:.08em;text-decoration:none;color:var(--ink-deep)}

/* hero */
.hero{position:relative}
.hero>img{width:100%;height:min(78vh,720px);object-fit:cover}
.hero-panel{position:absolute;left:6%;bottom:9%;max-width:520px;background:#f5f2ec;padding:46px 50px;box-shadow:0 30px 60px -25px rgba(39,75,93,.35)}
.hero-panel h1{margin:12px 0 16px}
.hero-panel .actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}

/* sections */
section{padding:90px 0}
.section-head{margin-bottom:46px}
.section-head h2{margin-top:12px}
.section-head .textlink{display:inline-block;margin-top:18px}

/* collections grid */
.coll-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.coll-card{position:relative;display:block;text-decoration:none;overflow:hidden;background:#f5f2ec}
.coll-card .ph{height:300px;overflow:hidden}
.coll-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.coll-card .meta{padding:18px 4px 4px}
.coll-card h3{font-size:23px}
.coll-card p{color:var(--mute);font-size:13.5px;margin-top:4px}
.coll-card:hover{transform:translateY(-4px)}
.coll-card{transition:transform .35s ease}
.coll-card:hover img{transform:scale(1.06)}
/* tau wipe */
.coll-card .wipe{position:absolute;inset:0;background:var(--taupe);opacity:.9;transform:translateX(-101%);transition:transform .55s cubic-bezier(.65,0,.35,1);display:flex;align-items:center;justify-content:center}
.coll-card .wipe span{font:600 12px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#fff}
.coll-card:hover .wipe{transform:translateX(0)}

/* ink band */
.band-ink{background:var(--ink);color:#fff;padding:86px 0}
.band-ink h2{color:#fff}
.band-ink p{color:rgba(255,255,255,.78);max-width:560px;font-size:16px;line-height:1.65}
.band-ink .actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.band-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;flex-wrap:wrap}

/* project stories */
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.story-card .ph{overflow:hidden}
.story-card img{width:100%;height:420px;object-fit:cover;transition:transform .6s ease}
.story-card:hover img{transform:scale(1.04)}
.story-card h3{margin:22px 0 8px}
.story-card p{color:var(--mute);font-size:15px;max-width:420px}
.story-card .textlink{display:inline-block;margin-top:14px}
.story-card:nth-child(2){margin-top:70px}

/* showroom */
.showroom-section{padding:0}
.showroom-lead{position:relative}
.showroom-lead>img{width:100%;height:640px;object-fit:cover;display:block}
.showroom-panel{position:absolute;left:6%;bottom:8%;max-width:460px;background:#f5f2ec;padding:40px 44px;box-shadow:0 30px 60px -25px rgba(39,75,93,.35)}
.showroom-panel h2{margin:10px 0 14px}
.showroom-panel p{color:var(--mute);font-size:15px;line-height:1.6}
.showroom-addr{margin-top:16px;font:600 12.5px var(--sans);letter-spacing:.06em;color:var(--ink-deep)!important}
.showroom-addr a{color:var(--ink-deep)}
.showroom-panel .btn{display:inline-block;margin-top:18px;text-decoration:none}
.showroom-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;padding-top:26px;padding-bottom:70px}
.showroom-gallery figure{margin:0;height:220px;overflow:hidden}
.showroom-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.showroom-gallery figure:hover img{transform:scale(1.05)}

/* closing */
.closing{text-align:left}
.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}

/* footer */
.site-footer{border-top:1px solid var(--line);padding:70px 0 40px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
.site-footer img{height:52px;width:auto;margin-bottom:16px}
.site-footer p{color:var(--mute);font-size:14px;line-height:1.65;max-width:300px}
.foot-col h4{font:600 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-deep);margin-bottom:16px}
.foot-col a,.foot-col span{display:block;color:var(--mute);font-size:14px;text-decoration:none;margin-bottom:10px}
.foot-col a:hover{color:var(--ink-deep)}
.foot-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:50px;padding-top:22px;font:500 10.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}

/* page hero (interior pages) */
.page-hero{padding:80px 0 50px}
.page-hero h1{margin-top:12px}
.page-hero .lede{margin-top:16px}

/* collection index */
.coll-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:34px}
.coll-index-grid .coll-card .ph{height:380px}

/* core viewer */
.viewer-layout{display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:start}
.viewer-main .ph{overflow:hidden;background:#f5f2ec}
#cvMain{width:100%;height:600px;object-fit:cover;transition:opacity .18s ease}
.viewer-caption{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px}
.viewer-caption h3{font-size:24px}
.viewer-caption span{color:var(--mute);font-size:13px}
.install-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.install-grid button{border:0;padding:0;cursor:pointer;background:none;height:150px;overflow:hidden}
.install-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,opacity .3s}
.install-grid button:hover img{transform:scale(1.06)}
.install-grid button.active{outline:2px solid var(--ink);outline-offset:2px}
.filter-tabs{display:flex;gap:10px;margin:26px 0 4px;flex-wrap:wrap}
.filter-tabs button{font:600 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:10px 20px;border:1px solid var(--line);background:#f5f2ec;color:var(--ink-deep);cursor:pointer}
.filter-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.tile-rail h4{font:600 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-deep);margin-bottom:18px}
.tile-rail .tile{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}
.tile-rail .tile img{width:64px;height:64px;object-fit:cover;flex:none}
.tile-rail .tile b{display:block;font:600 14px var(--sans);color:var(--ink-deep)}
.tile-rail .tile span{color:var(--mute);font-size:12.5px}
.tile-rail .tile:hover b{color:var(--taupe)}

/* product page */
.product-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:start}
.pd-gallery .ph{overflow:hidden;background:#f5f2ec}
#pdMain{width:100%;height:560px;object-fit:cover;transition:opacity .18s ease}
.pd-thumbs{display:flex;gap:12px;margin-top:14px}
.pd-thumbs button{border:0;padding:0;background:none;cursor:pointer;width:92px;height:92px;overflow:hidden}
.pd-thumbs img{width:100%;height:100%;object-fit:cover}
.pd-thumbs button.active{outline:2px solid var(--ink);outline-offset:2px}
.product-info h1{margin:10px 0 14px}
.product-info .lede{margin-bottom:26px}
.spec-table{width:100%;border-collapse:collapse;margin:8px 0 26px}
.spec-table td{padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.spec-table td:first-child{color:var(--mute);width:40%}
.spec-table td:last-child{font-weight:600;color:var(--ink-deep)}
.variant-label{font:600 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-deep);margin-bottom:12px}
.variant-dots{display:flex;gap:12px;margin-bottom:30px}
.variant-dots button{width:34px;height:34px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line);cursor:pointer;background-size:cover;background-position:center}
.variant-dots button.active{box-shadow:0 0 0 2px var(--ink)}
.product-info .actions{display:flex;gap:12px;flex-wrap:wrap}

/* responsive */
@media(max-width:980px){
  .coll-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
  .viewer-layout{grid-template-columns:1fr}
  .viewer-main{order:1}
  .tile-rail{order:2}
  .product-layout{grid-template-columns:1fr;gap:40px}
  .story-grid{gap:34px}
}
@media(max-width:640px){
  .wrap{padding:0 6%}
  section{padding:64px 0}
  .hero>img{height:480px}
  .hero-panel{position:static;max-width:none;margin:-90px 20px 0;position:relative;padding:30px 26px;left:auto;bottom:auto}
  .main-nav{gap:18px}
  .main-nav a{font-size:11px}
  .header-call{display:none}
  .coll-grid{grid-template-columns:1fr 1fr;gap:14px}
  .coll-card .ph{height:200px}
  .coll-index-grid{grid-template-columns:1fr}
  .story-grid{grid-template-columns:1fr}
  .story-card:nth-child(2){margin-top:0}
  .story-card img{height:300px}
  .showroom-lead>img{height:420px}
  .showroom-panel{position:static;max-width:none;margin:-90px 20px 0;position:relative;padding:28px 26px}
  .showroom-gallery{grid-template-columns:repeat(2,1fr);padding-bottom:50px}
  .showroom-gallery figure{height:160px}
  #cvMain{height:380px}
  #pdMain{height:380px}
  .install-grid{grid-template-columns:repeat(3,1fr);gap:10px}
  .install-grid button{height:100px}
  .foot-grid{grid-template-columns:1fr;gap:26px}
  .foot-bottom{flex-direction:column;gap:8px}
}

/* v15: v13-faithful restoration (hero slider, two ways in, study, mood mosaic) */
.hero-main{position:relative;padding:0}
.hero-main>.ph{height:min(86vh,760px);overflow:hidden;position:relative}
.hero-main>.ph>img{width:100%;height:100%;object-fit:cover}
.hero-main>.ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,35,45,.08) 40%,rgba(20,35,45,.45) 100%)}
.hero-copy{position:absolute;left:6%;bottom:12%;max-width:620px;color:#fff;z-index:2}
.hero-copy .eyebrow{color:rgba(255,255,255,.85)}
.hero-copy h1{color:#fff;margin:14px 0 18px;font-size:clamp(42px,6vw,74px)}
.hero-copy h1 em{font-family:Italiana,serif;font-style:italic;font-weight:400}
.hero-copy p{color:rgba(255,255,255,.92);font-size:16.5px;line-height:1.6;max-width:480px}
.hero-copy .actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.hero-caption{position:absolute;left:6%;bottom:34px;font:600 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.85);z-index:2}
.hero-dashes{position:absolute;right:6%;bottom:40px;display:flex;gap:10px;z-index:2}
.hero-dashes span{display:block;width:34px;height:2px;background:rgba(255,255,255,.45)}
.hero-dashes span.on{background:#fff}

.two-ways .section-head{margin-bottom:40px}
.ways-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.ways-grid .ph{overflow:hidden;height:380px}
.ways-grid .ph img{width:100%;height:100%;object-fit:cover}
.ways-grid .ph.strip{height:380px}
.ways-card{display:flex;flex-direction:column;justify-content:center;padding:40px 20px}
.ways-card h3{font-size:32px;margin-bottom:12px}
.ways-card p{color:var(--mute);font-size:15px;max-width:380px}
.ways-card .textlink{margin-top:18px}
.ways-mosaic{display:grid;grid-template-columns:1.15fr 1fr;gap:26px;margin-top:26px}
.ways-mosaic .ph{overflow:hidden}
.ways-mosaic .ph img{width:100%;height:100%;object-fit:cover}
.ways-mosaic .tall{height:560px;grid-row:span 2}
.ways-mosaic .half{height:267px}

.study{padding:100px 0 90px}
.study .inner{max-width:640px}
.study h2{margin:14px 0 18px}
.study p{color:var(--mute);font-size:16px;line-height:1.65;max-width:520px}
.study .btn{margin-top:28px;text-decoration:none}

.mood-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.mood-tile{position:relative;overflow:hidden}
.mood-tile img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.mood-tile:hover img{transform:scale(1.05)}
.mood-tile .label{position:absolute;left:24px;bottom:20px;font-family:Italiana,serif;font-style:italic;font-size:30px;color:#fff;text-shadow:0 2px 14px rgba(20,35,45,.45);z-index:2}
.mood-tile.tall{grid-row:span 2;height:100%;min-height:560px}
.mood-tile.half{height:269px}
.mood-tile.wide{grid-column:1/-1;height:340px;margin-top:0}

/* hamburger */
.menu-toggle{display:block;background:none;border:0;cursor:pointer;padding:8px;color:var(--ink-deep)}
.menu-toggle span{display:block;width:26px;height:2px;background:var(--ink-deep);margin:6px 0}
.mobile-menu{display:none;background:#f5f2ec;border-bottom:1px solid var(--line);padding:10px 6% 22px;position:fixed;left:0;right:0;top:76px;z-index:60;box-shadow:0 24px 30px -22px rgba(20,35,45,.35);max-height:72vh;overflow-y:auto}
.mobile-menu a{display:block;font:600 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink-deep);padding:13px 0;border-bottom:1px solid var(--line)}
.mobile-menu.open{display:block}
@media(max-width:820px){
  .main-nav{display:none}
  .menu-toggle{display:block}
  .hero-main>.ph{height:88vh}
  .hero-copy{bottom:15%}
  .ways-grid{grid-template-columns:1fr}
  .ways-grid .ph{height:300px}
  .ways-card{padding:26px 4px}
  .ways-mosaic{grid-template-columns:1fr 1fr;gap:14px}
  .ways-mosaic .tall{height:380px}
  .ways-mosaic .half{height:183px}
  .mood-grid{gap:12px}
  .mood-tile.tall{min-height:420px}
  .mood-tile.half{height:204px}
  .mood-tile.wide{height:260px}
  .mood-tile .label{font-size:26px;left:18px;bottom:14px}
}

/* v15b: tile finder + photo band */
.finder{padding:90px 0 70px}
.finder-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;align-items:start}
.acc-row{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);font:500 15px var(--sans);color:var(--ink-deep);cursor:pointer}
.acc-row span{font-size:18px;color:var(--mute)}
.finder-match{display:flex;align-items:center;gap:22px;margin-top:34px;flex-wrap:wrap}
.finder-match>span{font:600 13px var(--sans);color:var(--ink-deep)}
.photo-band{padding:0;line-height:0}
.photo-band img{width:100%;height:400px;object-fit:cover}
@media(max-width:820px){
  .finder-grid{grid-template-columns:1fr;gap:34px}
  .photo-band img{height:250px}
}

/* v15c: collections index 4-across */
.coll-grid .coll-card .ph{height:280px}
@media(max-width:820px){.coll-grid .coll-card .ph{height:200px}}

/* v15d: v4 collections catalog page */
.catalog-head{padding:56px 0 80px}
.breadcrumb{font:600 10.5px var(--sans);letter-spacing:2px;text-transform:uppercase;color:var(--mute);margin-bottom:44px}
.catalog-titlerow{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin:14px 0 56px}
.catalog-titlerow h1{font:400 clamp(56px,7vw,96px)/1 var(--serif);color:var(--ink-deep);letter-spacing:0}
.catalog-titlerow p{max-width:360px;font:400 14.5px/1.65 var(--sans);color:var(--ink);padding-bottom:10px}
.c4-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px 26px}
.c4-card{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:transform .35s ease}
a.c4-card:hover,span.c4-card:hover{transform:translateY(-5px)}
.c4-img{position:relative;overflow:hidden;aspect-ratio:1/1.06;background:var(--tau)}
.c4-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.c4-card:hover .c4-img img{transform:scale(1.05)}
.c4-img::after{content:"";position:absolute;inset:0;background:var(--tau);transform:translateY(101%);transition:transform .5s ease;mix-blend-mode:multiply;opacity:.35}
.c4-card:hover .c4-img::after{transform:translateY(0)}
.c4-namerow{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0 12px}
.c4-name{font:400 25px var(--serif);color:var(--ink-deep)}
.c4-count{font:600 9.5px var(--sans);letter-spacing:1.8px;color:var(--mute)}
.c4-swatches{display:flex;flex-wrap:wrap;gap:6px}
.c4-swatches img{width:62px;height:62px;object-fit:cover;display:block}
.c4-meta{margin-top:12px;font:600 9.5px var(--sans);letter-spacing:1.6px;color:var(--mute);text-transform:uppercase}
.catalog-footnote{margin-top:64px;font:400 13px var(--sans);color:var(--mute)}
.header-icons{display:flex;gap:18px;align-items:center;margin-left:auto;color:var(--ink-deep)}
.hicon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.hicon svg{width:21px;height:21px;display:block}
.nav-span{cursor:pointer}
@media(max-width:1100px){.c4-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){
  .catalog-titlerow{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:40px}
  .catalog-titlerow h1{font-size:56px}
  .c4-grid{grid-template-columns:1fr;gap:40px}
  .c4-swatches img{width:70px;height:70px}
}

/* hero slider */
.hero-main>.ph .hero-slide>img{width:100%;height:100%;object-fit:cover}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.hero-slide.on{opacity:1}
.hero-caption{transition:opacity .4s ease}
.mobile-menu .fake-link{display:block;font:600 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-deep);padding:13px 0;border-bottom:1px solid var(--line);cursor:pointer}

/* collection name-only title */
.page-hero h1.coll-name{margin-top:0}

/* all stiles diamond loader */
#as-loader{position:fixed;inset:0;background:#f5f2ec;display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .45s ease,visibility .45s}
#as-loader.hide{opacity:0;visibility:hidden}
#as-loader img{width:64px;height:64px;animation:as-spin 1.15s cubic-bezier(.55,.15,.35,.85) infinite}
@keyframes as-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
.ph .ph-loader{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:rgba(253,252,250,.65);z-index:3}
.ph .ph-loader img{width:40px;height:40px;animation:as-spin 1.15s cubic-bezier(.55,.15,.35,.85) infinite}
.ph.loading .ph-loader{display:flex}
.viewer-main .ph{position:relative}

/* stone intro (homepage) */
.stone-intro{padding:90px 0}
.stone-intro-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
.stone-intro-copy h2{margin:14px 0 18px}
.stone-intro-copy p{color:var(--mute);max-width:44ch;margin-bottom:22px}
.stone-stat{font:600 11.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--taupe);margin-bottom:28px}
.stone-intro-media{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.si-main img{width:100%;height:420px;object-fit:cover;display:block}
.si-side{display:grid;gap:16px}
.si-side img{width:100%;height:202px;object-fit:cover;display:block}
@media(max-width:980px){
  .stone-intro-grid{grid-template-columns:1fr;gap:36px}
  .si-main img{height:320px}
  .si-side img{height:150px}
}

/* batch round 2 */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:10px}
.feat-card{display:flex;flex-direction:column}
.feat-card h3{font-size:28px;margin-bottom:10px}
.feat-card p{color:var(--mute);font-size:15px;max-width:340px}
.feat-card .textlink{display:inline-block;margin:14px 0 22px}
.feat-card .ph{overflow:hidden;margin-top:auto}
.feat-card img{width:100%;height:300px;object-fit:cover;display:block;transition:transform .6s ease}
.feat-card:hover img{transform:scale(1.04)}
.showroom-band-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
.showroom-band-addr{margin-top:18px;font:600 12.5px var(--sans);letter-spacing:.06em;color:rgba(255,255,255,.85)!important}
.showroom-band-addr a{color:#fff}
.showroom-band-img{overflow:hidden;line-height:0}
.showroom-band-img img{width:100%;height:440px;object-fit:cover;display:block}
.band-ink.closing{padding:46px 0}
@media (max-width:960px){
  .feat-grid{grid-template-columns:1fr;gap:38px}
  .feat-card img{height:260px}
  .showroom-band-grid{grid-template-columns:1fr;gap:30px}
  .showroom-band-img img{height:280px}
}
/* catalog filter bar */
.filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:40px 0 10px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fb-search input{border:0;border-bottom:1px solid var(--line);background:none;padding:6px 2px;font:400 13px var(--sans);color:var(--ink);width:150px;outline:none}
.fb-search input:focus{border-color:var(--ink-deep)}
.fb-label{display:flex;align-items:center;gap:7px;font:600 10.5px var(--sans);letter-spacing:1.3px;text-transform:uppercase;color:var(--ink)}
.fb-label select{border:0;background:none;font:600 10.5px var(--sans);letter-spacing:1px;text-transform:uppercase;color:var(--mute);cursor:pointer;outline:none}
.fb-apply{border:1px solid var(--ink-deep);background:none;padding:9px 18px;font:600 10.5px var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-deep);cursor:pointer;transition:background .25s,color .25s}
.fb-apply:hover{background:var(--ink-deep);color:#fff}
.fb-count{font:600 10px var(--sans);letter-spacing:1.2px;text-transform:uppercase;color:var(--mute)}
.fb-sort{margin-left:auto}
@media(max-width:640px){.fb-sort{margin-left:0}.fb-search input{width:120px}}
/* v24: collection detail viewer proportions at full width */
.viewer-layout{max-width:1520px;margin-left:auto;margin-right:auto}
#cvMain{height:min(64vh,620px)}

/* v30 item page upgrades */
.pd-meta{margin:6px 0 22px;border-top:1px solid var(--line)}
.pd-meta .mr{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid var(--line);font:400 13.5px var(--sans)}
.pd-meta .mr b{font-weight:600;color:var(--ink-deep)}
.pd-meta .mr span{color:var(--mute);text-align:right}
.pd-sec-title{font:600 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-deep);margin:26px 0 10px}
.pd-fin-label{font:600 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-deep);margin:18px 0 10px}
.pd-finishes{display:flex;gap:8px;flex-wrap:wrap}
.pd-finishes .fin-chip{border:1px solid var(--line);padding:7px 14px;font:500 12px var(--sans);letter-spacing:.06em;color:var(--ink-deep)}
.pd-finishes .fin-chip.on{background:var(--ink-deep);color:#fff;border-color:var(--ink-deep)}
.pd-cols{display:grid;grid-template-columns:1fr 1fr;gap:60px}
@media(max-width:820px){.pd-cols{grid-template-columns:1fr;gap:10px}}
.pd-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.pd-scenes button{padding:0;border:0;background:none;cursor:pointer;aspect-ratio:1/1;overflow:hidden}
.pd-scenes button img{width:100%;height:100%;object-fit:cover;display:block}
.pd-scenes button.active{outline:2px solid var(--ink-deep);outline-offset:-2px}
@media(max-width:820px){.pd-scenes{grid-template-columns:repeat(3,1fr);gap:8px}}

/* v33: lightbox */
.lb{position:fixed;inset:0;background:rgba(22,26,28,.94);display:none;align-items:center;justify-content:center;z-index:300}
.lb.open{display:flex}
.lb img{max-width:92vw;max-height:88vh;object-fit:contain;box-shadow:0 10px 60px rgba(0,0,0,.5)}
.lb-close{position:absolute;top:16px;right:22px;font-size:34px;line-height:1;color:#fff;background:none;border:0;cursor:pointer;padding:6px 10px;z-index:2}
.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:44px;color:#fff;background:none;border:0;cursor:pointer;padding:10px 16px;opacity:.85;z-index:2}
.lb-arrow:hover{opacity:1}
.lb-prev{left:10px}.lb-next{right:10px}
.pd-scenes button{cursor:zoom-in}
@media(max-width:820px){.lb-arrow{font-size:32px;padding:8px 10px}}

/* v35: item page corrections */
#pdAvailSec .pd-cols{display:block}
.avail-table{width:100%;border-collapse:collapse}
.avail-table td{border:0;padding:8px 0;font-size:14px}
.avail-table td:last-child{text-align:right;font-weight:600;color:var(--ink-deep)}
.product-info .actions{margin-top:24px}
.avail-table{max-width:560px}
/* v55: sitewide type-system lock */
button,input,textarea,select{font-family:var(--sans)}
/* v56: homepage typography/color system across every light page */
:root{--ink:#1d3d4c;--ink-deep:#1d3d4c;--mute:#1d3d4c}
body{color:#1d3d4c;background:#f5f2ec}
h1,h2,h3,p,p.lede{color:#1d3d4c}
/* Dark and photographic sections keep light copy. */
.band-ink,.band-ink h1,.band-ink h2,.band-ink h3,.band-ink p,
.hero-copy,.hero-copy h1,.hero-copy h2,.hero-copy h3,.hero-copy p,
.img-hero,.img-hero h1,.img-hero h2,.img-hero h3,.img-hero p,
.as-footer,.as-footer h1,.as-footer h2,.as-footer h3,.as-footer p{color:#f5f2ec}
/* v58: same dark header system as the new homepage */
.site-header{height:88px;background:#111c20;border-bottom:1px solid rgba(101,175,199,.16)}
.site-header .wrap{height:88px;padding-top:0;padding-bottom:0}
.site-header .brand img{height:72px}
.header-icons,.header-icons .hicon,.menu-toggle{color:#fff}
.menu-toggle span{background:#fff}
@media(max-width:820px){.site-header,.site-header .wrap{height:72px}.site-header .brand img{height:58px}.mobile-menu{top:72px}}
/* v59: functional universal header search/account/menu */
.as-ui-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(5,12,15,.68);opacity:0;visibility:hidden;transition:.22s}
.as-ui-backdrop.open{opacity:1;visibility:visible}.as-ui-panel{position:absolute;top:0;right:0;width:min(520px,100%);height:100%;overflow:auto;background:#f5f2ec;color:#1d3d4c;padding:36px clamp(24px,5vw,52px);transform:translateX(100%);transition:.3s ease}
.as-ui-backdrop.open .as-ui-panel{transform:none}.as-ui-close{float:right;border:0;background:none;color:#1d3d4c;font:400 34px/1 'DM Sans',sans-serif;cursor:pointer}.as-ui-title{font:400 clamp(42px,6vw,68px)/1.02 Italiana,serif;margin:70px 0 28px;color:#1d3d4c}.as-ui-input{width:100%;border:0;border-bottom:1px solid #1d3d4c;background:transparent;color:#1d3d4c;font:400 16px 'DM Sans',sans-serif;padding:14px 2px;outline:none}.as-ui-results{margin-top:24px}.as-ui-result,.as-ui-nav a{display:block;padding:15px 0;border-bottom:1px solid rgba(29,61,76,.18);color:#1d3d4c;text-decoration:none}.as-ui-result strong{display:block;font:400 25px Italiana,serif}.as-ui-result small{font:500 10px 'DM Sans',sans-serif;letter-spacing:.17em;text-transform:uppercase}.as-ui-nav a{font:400 clamp(28px,5vw,44px) Italiana,serif}.as-ui-tabs{display:flex;gap:20px;margin-bottom:22px}.as-ui-tabs button{border:0;border-bottom:1px solid transparent;background:none;padding:8px 0;color:#1d3d4c;cursor:pointer;font:600 11px 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase}.as-ui-tabs button.active{border-color:#1d3d4c}.as-ui-form label{display:block;margin:16px 0 6px;font:600 10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}.as-ui-submit{margin-top:26px;border:0;background:#1d3d4c;color:#f5f2ec;padding:15px 24px;font:600 11px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.as-ui-note{margin-top:18px;font-size:13px;line-height:1.6}.tools span,.tools .menu,.tile-gateway-tools span,.tile-gateway-tools button,.header-icons .hicon,.header-icons .menu-toggle{cursor:pointer}
@media(max-width:600px){.as-ui-panel{padding-top:24px}.as-ui-title{margin-top:58px}}
/* v66: balanced thin photo showroom CTA, shared across pages */
.tile-thin-cta{position:relative;min-height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:29px 19px;color:#f5f2ec}
.tile-thin-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.48) saturate(.82)}
.tile-thin-cta .inner{position:relative}.tile-thin-cta h2{font:400 clamp(43px,4.6vw,66px)/1 Italiana,serif;color:#f5f2ec;margin:5px}.tile-thin-cta p{color:#f5f2ec;margin:5px 0}.tile-thin-cta .address-link{display:inline-flex;margin-top:6px;color:#f5f2ec;text-decoration:none;border-bottom:1px solid #65afc7;padding-bottom:5px;font:600 11px 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase}
@media(max-width:600px){.tile-thin-cta{min-height:233px;padding:22px 16px}.tile-thin-cta h2{font-size:40px}.tile-thin-cta p{font-size:12px;line-height:1.35}}
/* v67: compact global footer on every page */
.as-footer{padding:45px clamp(22px,6vw,92px) 20px}
.as-footer-brand img{width:118px;margin-bottom:14px}
.as-footer-brand p{font-size:clamp(22px,2vw,32px);max-width:275px}
.as-footer-column h2{margin:2px 0 14px}
.as-footer-column a{margin-bottom:7px;line-height:1.45}
.as-footer-bottom{margin-top:34px;padding-top:14px}
@media(max-width:700px){.as-footer{padding:34px 20px 18px}.as-footer-main{gap:25px 20px}.as-footer-brand img{width:104px;margin-bottom:10px}.as-footer-brand p{font-size:25px}.as-footer-column h2{margin-bottom:11px}.as-footer-column a{margin-bottom:6px;font-size:12px}.as-footer-bottom{margin-top:27px;padding-top:12px}}
/* v68: photo-section type is always light */
.tile-thin-cta,.tile-thin-cta .inner,.tile-thin-cta .section-kicker,.tile-thin-cta h2,.tile-thin-cta p,.tile-thin-cta .address-link{color:#f5f2ec!important}

/* v69: shared typography contract */
body,p,input,button,textarea,select,.eyebrow,.textlink,.btn,.acc-row,.as-footer,.site-header,.tile-gateway-header{font-family:'DM Sans',sans-serif}
h1,h2,h3,.as-ui-title,.as-ui-result strong,.as-ui-nav a,.as-footer-brand p{font-family:Italiana,serif;font-weight:400}
.tile-home-main h1,.tile-home-main h2{line-height:.98;letter-spacing:-.025em}
.tile-home-main h3{line-height:1.06;letter-spacing:0}
.tile-home-main p{font-family:'DM Sans',sans-serif;font-weight:400}
.tile-home-main .eyebrow{font:600 10px/1 'DM Sans',sans-serif;letter-spacing:.3em}
.tile-home-main .textlink,.tile-home-main .btn{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:.16em}
.tile-showroom-details p{font-size:15px;line-height:1.9}
.tile-thin-cta p{font-size:15px;line-height:1.5}

/* v71: visual typography parity with the approved homepage */
.tile-home-main h1,.tile-home-main h2{font:400 clamp(50px,8vw,68px)/.98 Italiana,serif;letter-spacing:-.025em;color:#1d3d4c}
.tile-home-main h3{font:400 32px/1.06 Italiana,serif;letter-spacing:0;color:#1d3d4c}
.tile-home-main p,.tile-home-main p.lede{font:400 15px/1.9 'DM Sans',sans-serif;letter-spacing:normal;color:#1d3d4c}
.tile-home-main .eyebrow,.tile-home-main .section-kicker{font:400 10px/1.5 'DM Sans',sans-serif;letter-spacing:.3em;text-transform:uppercase}
.tile-home-main .textlink,.tile-home-main .btn,.tile-home-main .address-link{font:400 11px/1.5 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase}
.tile-home-main .tile-idea .label{font:400 15px/1 Italiana,serif;letter-spacing:.01em;text-transform:none}
.tile-home-main .acc-row{font:400 15px/1.5 'DM Sans',sans-serif;letter-spacing:normal;text-transform:none}
@media(max-width:600px){.tile-home-main h1,.tile-home-main h2{font-size:50px}.tile-home-main h3{font-size:30px}.tile-home-main p,.tile-home-main p.lede{font-size:13px;line-height:1.7}.tile-home-main .tile-idea .label{font-size:12px}}

/* v74: approved shared card-title face */
.story-card h3,.feat-card h3,.ways-card h3,.c4-name,.coll-card h3,.mood-tile .label,.tile-idea .label,.product-card h3,.related-card h3{font-family:'Cormorant Garamond',serif!important;font-weight:500!important;line-height:1.02!important;letter-spacing:-.01em!important;text-transform:none!important}
.story-card h3,.feat-card h3,.ways-card h3{font-size:33px!important}
@media(max-width:600px){.story-card h3,.feat-card h3,.ways-card h3{font-size:31px!important}}

/* v97: sitewide image viewer */
.as-image-viewer{position:fixed;inset:0;z-index:2200;display:flex;align-items:center;justify-content:center;padding:clamp(12px,3vw,38px);background:rgba(5,13,16,.91);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;backdrop-filter:blur(9px)}
.as-image-viewer.open{opacity:1;visibility:visible}.as-image-dialog{position:relative;display:flex;flex-direction:column;width:min(1380px,100%);height:min(92vh,980px);background:#0d181c;box-shadow:0 24px 90px rgba(0,0,0,.48);transform:translateY(10px) scale(.985);transition:transform .25s ease;overflow:hidden}.as-image-viewer.open .as-image-dialog{transform:none}.as-image-stage{flex:1;min-height:0;display:grid;place-items:center;padding:clamp(20px,4vw,54px);background:#101b1f}.as-image-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 12px 42px rgba(0,0,0,.28)}.as-image-close{position:absolute;z-index:2;top:13px;right:15px;width:46px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(5,13,16,.7);color:#fff;font:300 31px/1 'DM Sans',sans-serif;cursor:pointer}.as-image-caption{margin:0;padding:0 clamp(20px,3vw,38px);color:#dce7e8;font:400 12px/1.45 'DM Sans',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.as-image-caption:not(:empty){padding-top:13px}.as-image-links{display:none;gap:8px;align-items:center;padding:14px clamp(20px,3vw,38px) 20px;overflow-x:auto}.as-image-links.has-links{display:flex}.as-image-links-label{flex:0 0 auto;margin-right:5px;color:#8ebdca;font:500 9px/1 'DM Sans',sans-serif;letter-spacing:.17em;text-transform:uppercase}.as-image-link{flex:0 0 auto;display:inline-flex;align-items:center;min-height:40px;padding:10px 15px;border:1px solid rgba(255,255,255,.32);color:#fff;text-decoration:none;font:500 10px/1.2 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase}.as-image-link:hover{background:#fff;color:#15343e}.as-lightbox-ready{cursor:zoom-in}
@media(max-width:700px){.as-image-viewer{padding:0}.as-image-dialog{width:100%;height:100dvh}.as-image-stage{padding:64px 12px 16px}.as-image-close{top:12px;right:12px}.as-image-caption{font-size:11px}.as-image-links{padding-bottom:max(18px,env(safe-area-inset-bottom))}}
/* v115: scoped viewer open state, hardened against embedded webview cache order */
body .as-image-viewer.open{opacity:1!important;visibility:visible!important}
/* v123: universal name search */
.as-search-trigger{cursor:pointer}
.as-search{position:fixed;inset:0;z-index:2600;background:rgba(7,16,20,.96);color:#f5f2ec;display:none;overflow:auto}.as-search.open{display:block}.as-search-shell{width:min(920px,calc(100% - 40px));margin:0 auto;padding:clamp(90px,13vh,140px) 0 70px}.as-search-close{position:absolute;top:24px;right:clamp(20px,4vw,52px);width:46px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:#fff;font:300 30px/1 sans-serif;cursor:pointer}.as-search-label{display:block;margin-bottom:20px;color:#8ebdca;font:500 10px/1.2 'DM Sans',sans-serif;letter-spacing:.24em;text-transform:uppercase}.as-search-row{display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.5)}.as-search-input{width:100%;padding:0 0 18px;border:0!important;outline:0;background:transparent!important;color:#fff;font:400 clamp(36px,6vw,66px)/1.05 Italiana,serif}.as-search-input::placeholder{color:rgba(255,255,255,.43)}.as-search-count{min-height:46px;padding-top:16px;color:#a8b9be;font:400 11px/1.5 'DM Sans',sans-serif;letter-spacing:.08em}.as-search-results{border-top:1px solid rgba(255,255,255,.14)}.as-search-result{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:21px 0;border-bottom:1px solid rgba(255,255,255,.14);color:#fff;text-decoration:none}.as-search-result strong{font:400 clamp(25px,3.5vw,38px)/1.05 Italiana,serif}.as-search-result span{color:#8ebdca;font:500 9px/1.2 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase}.as-search-result:hover strong{color:#9ed0df}.as-search-empty{padding:30px 0;color:#b8c4c7;font-size:14px}@media(max-width:700px){.as-search-shell{width:calc(100% - 40px);padding-top:102px}.as-search-close{top:16px}.as-search-input{font-size:40px}.as-search-result{padding:18px 0}.as-search-result strong{font-size:27px}}
/* v124: tile item name-only mobile header */
@media(max-width:700px){#tileMobileItemHeading #tileMobileItemType{display:none!important}#tileMobileItemHeading #tileMobileItemName{margin-top:0!important}}
/* v128: expanded Tile catalog filter options */
.tile-filter-toggle{grid-column:1/-1;width:100%;display:flex;justify-content:space-between;align-items:center;padding:17px 0;border:0;border-top:1px solid #d7d4cd;border-bottom:1px solid #d7d4cd;background:transparent;color:#163b49;font:500 11px/1 'DM Sans',sans-serif;letter-spacing:.17em;text-transform:uppercase;cursor:pointer}.tile-filter-toggle span{font-size:19px;font-weight:300}.tile-filter-panel{grid-column:1/-1;display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px;border-bottom:1px solid #d7d4cd;padding:4px 0 20px}.tile-filter-panel.open{display:grid}.tile-filter-panel label{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:58px;border-bottom:1px solid #dfdcd5;color:#163b49;font:400 12px 'DM Sans',sans-serif}.tile-filter-panel select{width:100%;grid-column:1/-1;margin-top:-13px;padding:19px 26px 8px 0;border:0;background:transparent;color:#163b49;font:500 10px 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase}.tile-filter-panel .fb-apply{margin-top:19px;justify-self:start}.filterbar>.fb-count{grid-column:1/-1}.filterbar>.fb-sort{grid-column:1/-1}@media(max-width:700px){.tile-filter-panel{grid-template-columns:1fr}.tile-filter-panel label{min-height:54px}.tile-filter-panel .fb-apply{margin-top:20px}}
/* v129: future filter fields */
.tile-filter-panel select:disabled{opacity:.55;cursor:not-allowed}.tile-filter-panel label:has(select:disabled){color:#64777d}
/* v130: consistent collection detail rows */
.tile-item-page.is-collection .tile-collection-info{border-bottom:0;padding-bottom:4px}.tile-item-page.is-collection .tile-specs{border-top:1px solid #cfc7ba}.tile-item-page.is-collection .tile-specs div{border-bottom:1px solid #cfc7ba}.tile-item-page.is-collection .tile-specs div:last-child{border-bottom:1px solid #cfc7ba}
/* v130: catalog title-to-search minimal spacing and consistent collection detail rows */
@media(max-width:700px){.tile-catalog-title,.stone-catalog-title{margin-bottom:8px!important;padding-bottom:6px!important}.tile-catalog-title h1,.stone-catalog-title h1{margin-bottom:0!important}.tile-catalog-title+.filterbar,.stone-catalog-title+.filterbar{margin-top:0!important;padding-top:6px!important}.tile-item-page.is-collection .tile-collection-info{border-bottom:0;padding-bottom:4px}.tile-item-page.is-collection .tile-specs{border-top:1px solid #cfc7ba}.tile-item-page.is-collection .tile-specs div{border-bottom:1px solid #cfc7ba}}
/* v131: compact Stone filter panel matching Tile */
.stone-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.stone-filter-panel .fb-apply{grid-column:1/-1}@media(max-width:700px){.stone-filter-panel{grid-template-columns:1fr}.catalog-titlerow{margin-bottom:8px!important;padding-bottom:6px!important}.catalog-titlerow h1{margin-bottom:0!important}.catalog-titlerow+.filterbar{margin-top:0!important;padding-top:6px!important}}
/* v135: desktop catalog vertical parity */
@media(min-width:701px){.catalog-titlerow{margin-bottom:48px}.catalog-titlerow+.filterbar{margin-top:0}.tile-catalog-title+.filterbar{margin-top:0}}

/* v136: Abita-only technical sheet link */
.tile-technical-sheet{margin-top:24px;padding:18px 0;border-top:1px solid #cfc7ba;border-bottom:1px solid #cfc7ba}.tile-technical-sheet>span{display:block;margin-bottom:11px;font:500 9px 'DM Sans',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#6f7d80}.tile-technical-sheet a{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#15343e;text-decoration:none;font:500 13px/1.35 'DM Sans',sans-serif}.tile-technical-sheet a:after{content:'↗';font-size:18px;font-weight:400}.tile-technical-sheet small{margin-left:auto;border:1px solid #9eaaa9;padding:3px 6px;font:500 8px/1 'DM Sans',sans-serif;letter-spacing:.12em}.tile-technical-sheet a:hover{text-decoration:underline}.tile-item-page.is-collection .tile-technical-sheet{order:6}.tile-item-page.is-collection .tile-item-copy>.btn{order:7}@media(max-width:800px){.tile-technical-sheet{margin-top:20px;padding:17px 0}.tile-technical-sheet a{min-height:44px}}

/* v137: contextual visualizer entry points */
.item-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:30px}.item-actions .btn{margin:0;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center}.visualizer-entry{border:1px solid #15343e;background:transparent;color:#15343e}.visualizer-entry:after{content:'↗';margin-left:9px;font-size:16px}.visualizer-entry:hover{background:#15343e;color:#fff}.tile-item-page.is-collection .item-actions{order:7}.tile-item-page.is-collection .tile-item-copy>.btn{order:8}@media(min-width:801px){.item-actions{grid-template-columns:1fr 1fr}.item-actions .btn{padding-left:14px;padding-right:14px}}

/* v147: quiet expanding share control */
.side-share{position:fixed;z-index:80;right:24px;top:116px;width:40px;height:40px;color:#15343e;overflow:visible}.side-share .share-trigger{position:relative;z-index:3;width:40px;height:40px;padding:0;border:0;background:transparent;color:#15343e;display:flex;align-items:center;justify-content:center;cursor:pointer}.side-share .share-trigger svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.side-share>a,.side-share>.share-copy{display:none;position:absolute;right:0;width:68px;height:38px;min-height:38px;padding:0;border:1px solid #cfc7ba;background:#f5f2ec;color:#15343e;align-items:center;justify-content:center;text-decoration:none;font:500 8px/1 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.side-share.open>a,.side-share.open>.share-copy{display:flex}.side-share .share-wa{top:49px}.side-share .share-copy{top:86px}.side-share .share-mail{top:123px}.side-share em{position:absolute;right:0;top:168px;padding:8px 10px;background:#15343e;color:#fff;font:500 9px/1 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.side-share em:empty{display:none}@media(max-width:800px){.side-share{position:absolute;right:28px;top:96px}.tile-item-page,.stone-item{position:relative}}

.c4-card.is-view-hidden{display:none!important}
@media(max-width:700px){.catalog-layout-tabs:has([data-catalog-view="items"]){grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.catalog-layout-tabs:has([data-catalog-view="items"]) .catalog-layout-tab{min-width:0;padding-left:2px;padding-right:2px;font-size:8px;white-space:nowrap}}
#tileCatalog.is-view-hidden,#tileItemCatalog.is-view-hidden{display:none!important}
.catalog-layout-tab{position:relative;min-height:70px;padding:0 8px;border:0!important;background:transparent!important;color:#15343e;font:500 9px/1.35 'DM Sans',sans-serif;letter-spacing:.13em;text-transform:uppercase;cursor:pointer}.catalog-layout-tab:after{content:'';position:absolute;left:10px;right:10px;bottom:-1px;height:2px;background:transparent}.catalog-layout-tab.is-active:after{background:#15343e}
.c4-card.row-expanded{display:grid;grid-template-rows:auto auto 1fr auto}.c4-card.row-expanded .c4-swatches{align-self:center}.c4-card.row-expanded .c4-meta{align-self:end}
.tile-catalog-grid .c4-swatches.is-expanded .sw-overflow{display:none!important}
.c4-card.row-expanded .c4-swatches{align-self:start!important}
/* v184: desktop catalog parity and overflow-chip alignment */
@media(min-width:901px){
  .tile-catalog-grid .c4-swatches{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important;min-height:62px;align-content:start}
  .tile-catalog-grid .c4-swatches .sw-link,.tile-catalog-grid .c4-swatches .sw-link img,.tile-catalog-grid .c4-swatches .sw-overflow{width:100%!important;height:auto!important;aspect-ratio:1/1;box-sizing:border-box}
  .tile-catalog-grid .c4-swatches .sw-overflow{font-size:11px}
  .catalog-head .catalog-layout-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0 0 32px;background:#f5f2ec;border-bottom:1px solid #cfc7ba}
}
/* v185: collection detail desktop structure; remove on-image pop-out captions */
.as-image-caption{display:none!important}
@media(min-width:801px){
  .tile-item-page.is-collection .tile-item-grid{grid-template-areas:"hero copy" "scenes copy";align-items:start}
  .tile-item-page.is-collection .tile-item-hero{grid-area:hero}
  .tile-item-page.is-collection .tile-mobile-scenes{grid-area:scenes;display:flex;gap:10px;overflow-x:auto;padding:0 0 4px;scroll-snap-type:x mandatory}
  .tile-item-page.is-collection .tile-mobile-scene{flex:0 0 112px;width:112px;height:76px;border:0;padding:0;background:#e8e3da;scroll-snap-align:start;cursor:pointer}
  .tile-item-page.is-collection .tile-mobile-scene img{display:block;width:100%;height:100%;object-fit:cover}
  .tile-item-page.is-collection .tile-item-copy{grid-area:copy;position:static}
  .tile-item-page.is-collection .tile-family{display:block!important;margin:18px 0 0;padding-top:16px;border-top:1px solid #cfc7ba}
  .tile-item-page.is-collection .tile-family>.eyebrow{margin-bottom:10px}
  .tile-item-page.is-collection .tile-family h2{display:none}
  .tile-item-page.is-collection .tile-family-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  .tile-item-page.is-collection .tile-family-links a{display:block;min-width:0;padding:0;background:transparent;color:#15343e;text-decoration:none;font:500 9px/1.2 'DM Sans',sans-serif}
  .tile-item-page.is-collection .tile-family-links img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin:0 0 5px;border:1px solid #d3cabd;background:#e8e3da}
  .tile-item-page.is-collection .tile-family-links span{display:block;overflow-wrap:anywhere}
  .tile-item-page.is-collection>.tile-gallery-wrap{display:none}
}
@media(min-width:801px){.tile-item-page.is-collection .tile-item-grid{column-gap:clamp(34px,5vw,82px);row-gap:16px}}
/* v186: consistent single spec divider; tighter desktop item rhythm */
.tile-technical-sheet{margin-top:0!important}
@media(min-width:801px){
  .tile-item-page:not(.is-collection){padding-top:18px}
  .tile-item-page:not(.is-collection)>.stone-item-back{display:inline-block;margin-bottom:8px}
  .tile-item-page:not(.is-collection) .tile-item-grid{column-gap:clamp(34px,5vw,82px);row-gap:12px}
  .tile-item-page:not(.is-collection) .tile-mobile-item-scenes{padding-top:0}
  .tile-item-page:not(.is-collection) .tile-family{grid-column:1;grid-row:3;margin-top:8px}
  .tile-item-page:not(.is-collection) .tile-family h2{font-size:30px;margin:7px 0 12px}
  .tile-item-page:not(.is-collection) .tile-family-links{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
}
@media(max-width:800px){.tile-item-page:not(.is-collection) .tile-family{order:4}}
/* v186: desktop collection layout from annotated review */
@media(min-width:801px){
 .tile-item-page.is-collection{padding-top:18px}
 .tile-item-page.is-collection>.stone-item-back{display:inline-block;margin:0 0 8px}
 .tile-item-page.is-collection .tile-item-grid{display:grid;grid-template-columns:96px minmax(0,1.45fr) minmax(300px,.66fr);grid-template-areas:'items hero copy' '. scenes copy';column-gap:16px;row-gap:8px}
 .tile-item-page.is-collection .tile-family{display:block!important;grid-area:items;margin:0;align-self:start}
 .tile-item-page.is-collection .tile-family h2{display:none}
 .tile-item-page.is-collection .tile-family>.eyebrow{margin:0 0 10px}
 .tile-item-page.is-collection .tile-family-links{display:flex;flex-direction:column;gap:12px}
 .tile-item-page.is-collection .tile-family-links a{display:block;padding:0;background:transparent;font:500 9px/1.25 'DM Sans',sans-serif}
 .tile-item-page.is-collection .tile-family-links img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin-bottom:5px;border:1px solid #d3cabd}
 .tile-item-page.is-collection .tile-item-hero{grid-area:hero}
 .tile-item-page.is-collection .tile-item-copy{grid-area:copy}
 .tile-item-page.is-collection .tile-mobile-scenes{grid-area:scenes;padding:0!important;margin:0!important}
}
/* v187: catalog tabs on every viewport */
@media(min-width:901px){.tile-catalog-page .catalog-layout-tabs{display:grid!important}}
/* v188 stone item hero and view rail */
.stone-item-visual{min-width:0}
@media(min-width:801px){.stone-item-grid{grid-template-areas:'visual copy';align-items:start}.stone-item-visual{grid-area:visual;display:flex;flex-direction:column;gap:12px}.stone-item-copy{grid-area:copy}.stone-mobile-scenes{display:flex;max-width:100%;min-width:0;gap:10px;overflow-x:auto;padding:0 0 4px;scroll-snap-type:x mandatory}}
@media(max-width:800px){.stone-item-visual{order:1;min-width:0;max-width:100%;display:flex;flex-direction:column;gap:20px}.stone-mobile-scenes{width:100%;max-width:100%;min-width:0}.stone-item-copy{order:2}}
@media(min-width:801px){.stone-item-grid>.mobile-item-heading{display:none!important}.stone-item-grid>.stone-item-visual{grid-column:1;grid-row:1;margin:0}.stone-item-grid>.stone-item-copy{grid-column:2;grid-row:1}.stone-item-visual .stone-mobile-scenes{margin-top:12px}}
/* v189: approved collection item-column vertical scroll */
@media(min-width:801px){
 .tile-item-page.is-collection .tile-family{position:relative}
 .tile-item-page.is-collection .tile-family.has-item-scroll .tile-family-links{height:476px;max-height:476px;overflow-y:auto;overflow-x:hidden;padding-right:0;scrollbar-width:none}
 .tile-item-page.is-collection .tile-family.has-item-scroll .tile-family-links::-webkit-scrollbar{display:none}
 .tile-item-page.is-collection .item-scroll-rail{position:absolute;right:-10px;top:42px;width:6px;height:476px;background:#d7d3cc;border-radius:6px}
 .tile-item-page.is-collection .item-scroll-rail i{display:block;width:6px;height:238px;background:#718086;border-radius:6px;will-change:transform}
}
@media(max-width:800px){.tile-item-page.is-collection .item-scroll-rail{display:none}}
@media(min-width:801px){.tile-item-page.is-collection .tile-family.has-item-scroll .tile-family-links{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important}.tile-item-page.is-collection .tile-family.has-item-scroll .tile-family-links a{flex:0 0 auto}}
/* v192: one fixed hero frame; edge-to-edge image crop */
@media(min-width:801px){
 .tile-item-page .tile-item-hero,.tile-item-page.is-collection .tile-item-hero{height:600px;min-height:600px;max-height:600px;aspect-ratio:auto;background:#e8e3da}
 .tile-item-page .tile-item-hero img,.tile-item-page.is-collection .tile-item-hero img{width:100%;height:100%;max-height:none;object-fit:cover}
 .stone-item-media{height:600px;min-height:600px;max-height:600px;background:#e8e3da!important;display:grid!important;place-items:center}
 .stone-item-media img{width:100%;height:100%;max-height:none;object-fit:cover}
}
@media(max-width:800px){
 .tile-item-page .tile-item-hero,.tile-item-page.is-collection .tile-item-hero{width:100%;height:360px;min-height:360px;max-height:360px;aspect-ratio:auto;background:#e8e3da}
 .tile-item-page .tile-item-hero img,.tile-item-page.is-collection .tile-item-hero img{width:100%;height:100%;max-height:none;object-fit:cover}
 .stone-item-media{width:100%;height:360px;min-height:360px;max-height:360px;background:#e8e3da!important;display:grid!important;place-items:center}
 .stone-item-media img{width:100%;height:100%;max-height:none;object-fit:cover}
}
@media(max-width:800px){.tile-item-page .tile-item-hero img,.tile-item-page.is-collection .tile-item-hero img{object-fit:cover!important}}

/* v193: natural-aspect image popout */
.as-image-dialog{width:auto;height:auto;max-width:92vw;max-height:92vh;background:transparent;box-shadow:none;overflow:visible}
.as-image-stage{flex:none;min-height:0;padding:0;background:transparent}
.as-image-stage img{display:block;max-width:92vw;max-height:88vh;width:auto;height:auto;object-fit:contain;box-shadow:0 12px 42px rgba(0,0,0,.38)}
.as-image-caption,.as-image-links{max-width:92vw;background:#0d181c}
@media(max-width:700px){.as-image-dialog{width:auto;height:auto;max-width:92vw;max-height:94dvh}.as-image-stage{padding:0}.as-image-stage img{max-width:92vw;max-height:86dvh}}
/* v194: no collection counts on listing pages */
.tile-catalog-page .fb-count,.stone-catalog-page .fb-count,.filterbar .fb-count{display:none!important}
