:root{--paper:#f3efe6;--paper-deep:#e8e2d6;--ink:#17211c;--muted:#62695f;--forest:#17251e;--near-black:#111813;--accent:#cb785e;--accent-light:#e79a7f;--line:#d6d5c9;--white:#fffaf0;--sans:"Outfit","Avenir Next",Avenir,"Segoe UI",sans-serif;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--shell:1440px;--gutter:clamp(22px,5.2vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.055em;line-height:1.06}p{line-height:1.65}em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em}::selection{background:var(--accent);color:var(--white)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.icon{width:22px;height:22px;flex:none;display:inline-block;vertical-align:middle}.skip-link{position:fixed;top:12px;left:12px;background:var(--white);color:var(--ink);padding:14px 20px;z-index:1000;transform:translateY(-160%)}.skip-link:focus{transform:none}.section-shell{max-width:calc(var(--shell) + var(--gutter)*2);padding-left:var(--gutter);padding-right:var(--gutter);margin-left:auto;margin-right:auto}.eyebrow{font-size:10px;line-height:1.5;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.eyebrow-line{width:25px;height:1px;background:var(--accent);display:inline-block;vertical-align:middle;margin-right:14px}.fine-print{font-size:12px;line-height:1.7}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 23px;border:1px solid transparent;border-radius:2px;font-size:12px;line-height:1.2;font-weight:600;letter-spacing:.03em;transition:background .25s,color .25s,transform .25s,border-color .25s}.button .icon{width:18px;height:18px}.button--dark{background:var(--ink);color:var(--white)}.button--dark:hover{background:#304136}.button--light{background:var(--paper);color:var(--ink)}.button--light:hover{background:#fffaf1}.button--coral{background:var(--accent);color:#151a14}.button--coral:hover{background:var(--accent-light)}.button--outline{border-color:var(--ink);background:transparent;color:var(--ink)}.button--outline:hover{background:var(--ink);color:var(--white)}.text-link{font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:12px 0;border-bottom:1px solid #9aa092}.text-link .icon{width:20px;height:20px;transition:transform .25s}.text-link:hover .icon{transform:translateX(5px)}.text-link--light{color:var(--paper);border-color:#586157}.text-button{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:7px 0;color:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px}.text-button .icon{width:16px;height:16px}.icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent}.circle-button{width:46px;height:46px;display:grid;place-items:center;background:transparent;border:1px solid #ffffff40;border-radius:50%;color:var(--white);transition:background .25s,border-color .25s}.circle-button:hover{background:var(--accent);border-color:var(--accent);color:var(--ink)}
@font-face{font-family:Outfit;src:url('/assets/fonts/outfit-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
.selection-fallback{border-top:1px solid var(--line);padding-top:15px;margin:18px 0}.selection-fallback>summary{font-size:10px;cursor:pointer}.selection-fallback>textarea{width:100%;margin-top:13px;resize:vertical;min-height:160px;padding:12px;background:#fbf7ee;border:1px solid var(--line);font-size:11px;line-height:1.7}.selection-fallback>.text-button{margin-top:6px}
/* A simple mark and a quiet navigation let the work lead. */
.site-header{position:relative;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:102px;padding:0 var(--gutter);max-width:calc(var(--shell) + var(--gutter)*2);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:inline-flex;align-items:center;gap:12px;flex:none}.brand-mark{width:43px;height:43px}.brand-words{font-size:17px;font-weight:650;letter-spacing:.1em;line-height:1.05}.brand-words>span{display:block;font-size:8px;font-weight:500;letter-spacing:.43em;margin-top:7px}.primary-navigation{display:flex;align-items:center;gap:clamp(22px,3.3vw,50px)}.primary-navigation>a{font-size:12px;font-weight:500;position:relative;padding:12px 0}.primary-navigation>a::after{content:"";height:1px;background:currentColor;position:absolute;bottom:6px;left:0;right:100%;transition:right .25s}.primary-navigation>a:hover::after,.primary-navigation>a[aria-current=page]::after{right:0}.header-actions{display:flex;align-items:center;gap:25px}.header-contact{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid currentColor;padding:12px 0;font-size:12px;font-weight:600}.header-contact .icon{width:18px;height:18px}.shortlist-open{display:flex;align-items:center;gap:6px;background:none;border:0;padding:8px 0}.shortlist-open>.icon{width:20px;height:20px}.shortlist-count{font-size:9px;line-height:1;width:17px;height:17px;border:1px solid #999e9166;border-radius:50%;display:grid;place-items:center}.menu-toggle,.mobile-contact{display:none}.site-header--hero{position:absolute;top:0;left:0;right:0;color:var(--white);background:linear-gradient(#0a110c70,transparent);border-bottom-color:#ffffff16}.site-header--hero .brand-words{font-weight:600}.site-header--hero .shortlist-count{border-color:#fff8}
/* The featured work changes only when the visitor asks. */
.cinematic-hero{min-height:800px;height:min(100svh,1100px);position:relative;isolation:isolate;background:var(--near-black);color:var(--white);overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s;z-index:0}.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}.hero-photograph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 45%;transform:scale(1.04);transition:transform 1.1s cubic-bezier(.2,.75,.25,1)}.hero-slide.is-active .hero-photograph{transform:scale(1)}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,17,12,.91),rgba(9,17,12,.58) 40%,rgba(9,17,12,.08) 75%),linear-gradient(0deg,rgba(9,17,12,.85),transparent 45%)}.hero-copy{position:absolute;top:clamp(165px,20vh,220px);left:var(--gutter);width:52%;max-width:790px}.hero-copy>.eyebrow{color:#e5e6d7}.hero-introduction{margin-top:28px;margin-bottom:16px;font-family:var(--serif);font-size:17px;font-style:italic;color:#e0ded3}.hero-heading{font-size:clamp(70px,8.5vw,150px);text-transform:uppercase;font-weight:580;letter-spacing:-.065em;line-height:.96;max-width:10.3ch;text-wrap:balance}.hero-specifications{max-width:490px;min-height:45px;font-size:12px;letter-spacing:.045em;color:#e0dfd4;margin-top:28px;line-height:1.7}.hero-copy-actions{display:flex;align-items:center;gap:36px;margin-top:25px}.hero-price{font-size:19px;line-height:1.15;white-space:nowrap}.hero-price>span{display:block;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#dadbcf;margin-top:8px}.hero-slide.is-active .hero-copy>.eyebrow,.hero-slide.is-active .hero-introduction,.hero-slide.is-active .hero-heading,.hero-slide.is-active .hero-specifications,.hero-slide.is-active .hero-copy-actions{animation:hero-entrance .8s both}.hero-slide.is-active .hero-introduction{animation-delay:.1s}.hero-slide.is-active .hero-heading{animation-delay:.17s}.hero-slide.is-active .hero-specifications{animation-delay:.24s}.hero-slide.is-active .hero-copy-actions{animation-delay:.31s}.hero-thumbnails{position:absolute;z-index:4;right:var(--gutter);bottom:140px;display:flex;align-items:flex-end;gap:13px}.hero-thumbnail{display:block;position:relative;width:clamp(94px,9.3vw,150px);height:clamp(140px,13vw,210px);padding:0;border:1px solid #fff4;background:var(--near-black);color:var(--white);overflow:hidden;text-align:left;transition:height .5s,transform .5s,border-color .5s;box-shadow:0 12px 30px #0003}.hero-thumbnail::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#101711e6)}.hero-thumbnail>img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.hero-thumbnail-index{position:absolute;z-index:1;top:12px;left:12px;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 8px #000}.hero-thumbnail-name{position:absolute;left:13px;right:13px;bottom:15px;font-size:12px;font-weight:500;line-height:1.3;z-index:1}.hero-thumbnail.is-active{border-color:var(--accent-light);transform:translateY(-14px)}.hero-thumbnail.is-active::before{content:"";position:absolute;width:20px;height:2px;background:var(--accent-light);bottom:8px;left:13px;z-index:2}.hero-thumbnail:hover>img{transform:scale(1.05)}.hero-bottom{position:absolute;z-index:5;left:var(--gutter);right:var(--gutter);bottom:38px;display:flex;align-items:center;justify-content:space-between;padding-top:28px;border-top:1px solid #ffffff36}.scroll-prompt{display:flex;align-items:center;gap:23px;font-size:10px;letter-spacing:.1em}.scroll-prompt .icon{width:18px}.hero-controls{display:flex;align-items:center;gap:12px}.hero-pagination{display:flex;align-items:baseline;gap:16px;margin-right:28px}.hero-pagination strong{font-size:24px;font-weight:450}.hero-pagination>span{font-size:10px;opacity:.65;letter-spacing:.15em}.hero-transition-ghost{position:fixed;object-fit:cover;z-index:3;pointer-events:none;will-change:transform,opacity;border-radius:2px}
/* Warm stone, full silhouettes, and room for discovery. */
.collection-intro,.featured-section,.related-section{padding-top:110px;padding-bottom:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:20px}.section-heading h2{font-size:clamp(34px,4.3vw,67px)}.section-heading-aside{max-width:330px;padding-bottom:6px}.section-heading-aside>p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:18px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 26px}.category-tile-image{height:330px;position:relative;overflow:hidden;background:#e1ded3}.category-tile:nth-child(3n+2) .category-tile-image{background:#d9e0d4}.category-tile-image>img{width:100%;height:100%;object-fit:contain;padding:14px;transition:transform .7s cubic-bezier(.2,.7,.3,1);mix-blend-mode:multiply}.category-tile:hover .category-tile-image>img{transform:scale(1.045)}.category-number{position:absolute;top:18px;left:18px;font-size:9px;color:var(--ink);font-weight:500}.category-tile-arrow{position:absolute;bottom:17px;right:17px;width:35px;height:35px;border:1px solid #17211c44;border-radius:50%;display:grid;place-items:center;background:#f3efe6b3;transition:background .25s}.category-tile-arrow .icon{width:17px;height:17px}.category-tile:hover .category-tile-arrow{background:var(--accent);border-color:var(--accent)}.category-tile-label{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:17px}.category-tile-label>h3{font-size:18px;font-weight:500;letter-spacing:-.035em}.category-tile-label>span{font-size:10px;color:var(--muted);white-space:nowrap}.all-collections-link{display:flex;align-items:center;justify-content:center;gap:24px;font-size:12px;margin-top:48px;padding-top:25px;border-top:1px solid var(--line)}.all-collections-link>.icon{width:18px}.editorial-section{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:var(--paper)}.editorial-image{position:relative;min-height:660px;overflow:hidden}.editorial-image>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:60% 45%;transition:transform 1s}.editorial-image::after,.about-photograph::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#101b12a6)}.image-caption{position:absolute;z-index:1;left:35px;bottom:30px;color:var(--paper);font-family:var(--serif);font-style:italic;font-size:14px}.editorial-copy{padding:clamp(48px,6vw,100px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.editorial-copy>.eyebrow{color:#bfbeb0;margin-bottom:25px}.editorial-copy>h2{font-size:clamp(36px,3.5vw,60px);margin-bottom:32px}.editorial-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#c4cbbd;max-width:435px;margin-bottom:20px}.editorial-copy>.text-link{margin-top:5px}.editorial-location{display:flex;align-items:center;gap:15px;margin-top:47px;font-size:11px;line-height:1.8;color:#dae1d1}.editorial-location>.icon{color:var(--accent-light);width:20px}.editorial-location small{font-size:9px;color:#a9b39f}.featured-section{padding-top:95px;padding-bottom:105px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:43px 22px}.product-card{position:relative;min-width:0}.product-card-visual{position:relative;aspect-ratio:4/5;background:#e7e5da;overflow:hidden}.product-card:nth-child(4n+2) .product-card-visual{background:#e0e5db}.product-card:nth-child(4n+3) .product-card-visual{background:#e4dfd5}.product-card-visual>a{display:block;width:100%;height:100%}.product-card-visual img{width:100%;height:100%;object-fit:contain;padding:12px;mix-blend-mode:multiply;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.product-card:hover .product-card-visual img{transform:scale(1.035)}.save-button{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid #17211c29;border-radius:50%;display:grid;place-items:center;background:#f3efe6e8;color:var(--ink);z-index:2;transition:background .2s,border-color .2s}.save-button>.icon{width:17px;height:17px}.save-button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.save-button[aria-pressed=true]>.icon{fill:currentColor}.save-button:hover{border-color:var(--ink)}.save-button--label{position:static;width:auto;height:auto;min-height:48px;display:inline-flex;justify-content:center;gap:12px;border-radius:2px;background:transparent;padding:12px 18px;font-size:12px}.save-button--label[aria-pressed=true]{background:var(--paper-deep);color:var(--ink);border-color:#899481}.product-card-view{position:absolute;bottom:12px;left:12px;right:12px;pointer-events:none;display:flex;justify-content:space-between;align-items:center;padding:13px;background:#17211cf2;color:var(--paper);font-size:10px;opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}.product-card-view>.icon{width:16px;height:16px}.product-card:hover .product-card-view,.product-card:focus-within .product-card-view{opacity:1;transform:none}.product-card-body{padding-top:17px}.product-category{color:var(--muted);font-size:9px;letter-spacing:.095em;text-transform:uppercase;margin-bottom:7px}.product-card-body h3{font-size:18px;line-height:1.3;letter-spacing:-.03em;font-weight:500}.product-card-body h3>a::after{content:"";position:absolute;inset:0}.product-card-body h3>a:focus-visible{outline-offset:3px}.product-card-meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:12px;font-size:12px}.product-sku{font-size:9px;letter-spacing:.025em;color:var(--muted);text-align:right}.product-card-specs{font-size:10px;line-height:1.6;color:var(--muted);margin-top:8px}.image-placeholder{width:100%;height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#778173}.image-placeholder>.icon{width:34px;height:34px}.image-placeholder>span{font-size:10px;letter-spacing:.045em}.quote-band{padding:70px var(--gutter);background:var(--forest);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:100px}.quote-band>div{max-width:600px}.quote-band>div:first-child{justify-self:end;width:100%}.quote-band .eyebrow{color:#c3c7b7;margin-bottom:20px}.quote-band h2{font-size:clamp(34px,3.4vw,58px)}.quote-band>div:nth-child(2){padding-top:20px;max-width:430px}.quote-band p:not(.eyebrow){color:#c5caba;font-size:13px;line-height:1.8}.quote-band .button{margin-top:24px;margin-bottom:18px}.quote-band .fine-print{font-size:10px!important}
/* Search and categories are always beside the collection, never a maze. */
.catalog-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;padding-top:74px;padding-bottom:57px}.catalog-intro .eyebrow{margin-bottom:20px}.catalog-intro h1{font-size:clamp(45px,5.8vw,88px);max-width:850px}.catalog-intro>p{max-width:300px;padding-bottom:8px;font-size:14px;line-height:1.8;color:var(--muted)}.catalog-section{padding-bottom:100px}.catalog-toolbar{display:flex;align-items:stretch;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:26px}.search-field{display:flex;align-items:center;gap:16px;flex:1;max-width:720px;border:1px solid #b8bdaf;padding:0 18px;min-height:54px;background:#fbf7ee}.search-field>.icon{width:20px;color:#75806e}.search-field>input{border:0;background:none;width:100%;min-width:0;outline:0;padding:17px 0;color:var(--ink);font-size:12px}.search-field:focus-within{outline:1px solid var(--ink);outline-offset:2px}.search-field kbd{padding:3px 7px;border:1px solid var(--line);font-size:10px;color:var(--muted);border-radius:2px}.sort-field{display:flex;align-items:center;gap:14px;flex:none;font-size:10px;color:var(--muted)}.sort-field select{max-width:200px;background:transparent;border:0;border-bottom:1px solid #a5ae9c;padding:12px 23px 12px 0;border-radius:0;font-size:12px;color:var(--ink)}.category-filters{display:flex;gap:10px;flex-wrap:wrap;padding-top:22px;padding-bottom:23px}.category-filter{display:flex;align-items:center;gap:10px;min-height:36px;font-size:10px;line-height:1.3;padding:9px 13px;border:1px solid #cccec1;border-radius:2px;transition:background .2s,border-color .2s}.category-filter>span{font-size:8px;opacity:.65}.category-filter.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.category-filter:hover{border-color:var(--ink)}.catalog-results-heading{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:18px 0 24px;border-top:1px solid var(--line)}.results-count{font-size:11px;flex:1}.catalog-delivery{display:flex;align-items:center;gap:9px;font-size:9px;color:var(--muted)}.catalog-delivery>.icon{width:14px;height:14px}.catalog-reset{font-size:10px}.catalog-empty{text-align:center;padding:100px 20px}.catalog-empty>.eyebrow{margin-bottom:20px}.catalog-empty>h2{font-size:43px}.catalog-empty>p:not(.eyebrow){max-width:480px;margin:20px auto 28px;font-size:14px;color:var(--muted)}.catalog-pagination{text-align:center;margin-top:50px;border-top:1px solid var(--line);padding-top:32px}.catalog-pagination>p{font-size:11px;color:var(--muted);margin-bottom:18px}.catalog-noscript{font-size:12px;color:var(--muted);padding-top:25px}
/* Individual works have space to breathe and an honest inquiry path. */
.product-breadcrumb{display:flex;align-items:center;gap:13px;padding-top:30px;padding-bottom:28px;font-size:10px;color:var(--muted)}.product-breadcrumb>a{color:var(--ink)}.product-breadcrumb>a:hover{text-decoration:underline}.product-detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(40px,6vw,100px);padding-bottom:80px;align-items:start}.product-main-image{background:#e1e5d9;position:relative;min-height:460px;aspect-ratio:5/6;overflow:hidden}.product-image-open{display:block;width:100%;height:100%;position:absolute;inset:0;border:0;background:transparent;padding:25px}.product-image-open>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.image-zoom-label{position:absolute;bottom:22px;right:22px;display:flex;align-items:center;gap:20px;color:var(--ink);font-size:10px;background:var(--paper);padding:12px 15px;border:1px solid #fff5}.image-zoom-label>.icon{width:16px;height:16px}.product-photograph-note{margin-top:15px;font-size:10px;line-height:1.7;color:var(--muted);max-width:460px}.product-gallery-thumbnails{display:flex;gap:10px;margin-top:12px}.product-gallery-thumbnails>button{width:75px;height:90px;padding:4px;background:var(--paper-deep);border:1px solid transparent}.product-gallery-thumbnails>button[aria-pressed=true]{border-color:var(--ink)}.product-gallery-thumbnails img{width:100%;height:100%;object-fit:contain}.product-information{padding-top:15px}.product-information>.eyebrow{color:var(--muted);margin-bottom:15px}.product-information>h1{font-size:clamp(42px,4.1vw,67px);font-weight:500;text-wrap:balance}.product-item-number{font-size:10px;margin-top:14px;color:var(--muted);letter-spacing:.08em}.product-detail-price{font-size:26px;letter-spacing:-.04em;margin-top:32px}.product-price-note{font-size:10px;color:var(--muted);margin-top:4px}.product-specification{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:30px;padding:22px 0}.product-specification>h2{font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:12px}.product-specification>p{font-size:14px;line-height:1.85}.product-specification .product-notes{font-size:12px;color:var(--muted);margin-top:14px;white-space:pre-line}.product-primary-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:26px}.product-primary-actions>.button{min-height:54px}.product-email-link{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:17px;font-size:10px}.product-email-link>.icon{width:15px;height:15px}.product-email-link:hover{text-decoration:underline;text-underline-offset:4px}.delivery-note{display:flex;align-items:start;gap:17px;background:#e7e8dc;padding:20px;margin-top:30px}.delivery-note>.icon{width:21px;color:#64775d}.delivery-note h3{font-size:15px;letter-spacing:-.035em;margin-bottom:6px}.delivery-note p{font-size:11px;line-height:1.7;color:var(--muted)}.product-faq{border-bottom:1px solid var(--line);padding:20px 0}.product-faq>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:20px;cursor:pointer}.product-faq>summary::-webkit-details-marker{display:none}.product-faq>summary>.icon{width:16px;height:16px}.product-faq[open]>summary>.icon{transform:rotate(45deg)}.product-faq>p{font-size:11px;color:var(--muted);padding-top:15px;line-height:1.8}.product-faq>a{display:flex;align-items:center;gap:20px;font-size:11px;margin-top:12px}.product-faq>a>.icon{width:15px}.related-section{padding-top:35px;border-top:1px solid var(--line)}
/* The business information is plain, welcoming and grounded in place. */
.page-intro{padding-top:80px;padding-bottom:68px}.page-intro>.eyebrow{margin-bottom:22px}.page-intro>h1{font-size:clamp(50px,6.5vw,104px);font-weight:450}.page-intro-description{margin-top:30px;max-width:500px;font-size:15px;line-height:1.8;color:var(--muted)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,130px);padding-bottom:70px;align-items:center}.about-photograph{height:650px;position:relative;overflow:hidden;background:#d7ddce}.about-photograph>img{width:100%;height:100%;object-fit:cover;object-position:58% 45%}.about-story>.eyebrow{margin-bottom:25px;color:var(--muted)}.about-story>h2{font-size:clamp(37px,3.7vw,60px);margin-bottom:30px}.about-story>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:19px}.about-story>.text-link{margin-top:12px}.about-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding-top:30px;padding-bottom:100px}.about-principles>div{border-top:1px solid var(--line);padding-top:25px}.about-principles span{font-size:10px;color:var(--accent);letter-spacing:.08em}.about-principles h3{font-size:20px;letter-spacing:-.04em;margin:20px 0 14px}.about-principles p{font-size:12px;color:var(--muted);line-height:1.9}.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(50px,10vw,170px);padding-bottom:110px}.contact-information>h2{font-size:34px;letter-spacing:-.045em;line-height:1.15;margin-bottom:20px}.contact-information>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:365px;margin-bottom:26px}.contact-method{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:23px 0;font-size:13px;line-height:1.6}.contact-method>.icon:first-child{width:21px;height:21px;color:var(--muted)}.contact-method>.icon:last-child{width:17px;height:17px;margin-left:auto}.contact-method>span{min-width:0}.contact-method small{display:block;font-size:9px;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.contact-method--email>span{overflow-wrap:anywhere;font-size:12px}.contact-service{margin-top:30px}.contact-service>.eyebrow{color:var(--muted);margin-bottom:10px;font-size:9px}.contact-service>p:last-child{font-size:11px;color:var(--muted);line-height:1.8}.inquiry-form{background:#e8e7db;padding:clamp(25px,3.5vw,55px)}.form-heading>.eyebrow{font-size:9px;margin-bottom:17px}.form-heading>h2{font-size:37px;margin-bottom:16px}.form-heading>p:last-child{font-size:11px;line-height:1.8;color:var(--muted);margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inquiry-form label{display:block;font-size:10px;line-height:1.6;font-weight:500;margin-bottom:20px}.optional{color:var(--muted);font-weight:400}.inquiry-form input,.inquiry-form textarea{display:block;width:100%;background:#faf7ef;border:1px solid #c9cbbd;min-width:0;color:var(--ink);padding:13px 12px;margin-top:7px;border-radius:1px;font-size:12px;line-height:1.6}.inquiry-form textarea{resize:vertical}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#7a8274;font-size:11px}.inquiry-form>.button{width:100%;margin-top:3px}.form-note{margin-top:14px;font-size:9px!important;line-height:1.8;color:var(--muted)}.inquiry-piece{display:flex;align-items:center;gap:12px;border:1px solid #b9c0aa;background:#dce3d1;margin-bottom:23px;padding:12px;font-size:10px}.inquiry-piece>.icon{width:15px;height:15px}.inquiry-piece>span{flex:1}.inquiry-piece strong{font-weight:500}.form-status{font-size:11px;line-height:1.7;margin-top:12px}.draft-fallback{border-top:1px solid #c9cbbd;margin-top:23px;padding-top:18px}.draft-fallback>summary{font-size:10px;cursor:pointer;line-height:1.6}.draft-fallback>p{font-size:10px;color:var(--muted)}.draft-fallback a{text-decoration:underline;text-underline-offset:3px}.email-draft{font-size:11px!important;min-height:150px;margin-top:14px!important}.visit-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(35px,7vw,100px);padding-bottom:100px}.visit-details>.eyebrow{color:var(--muted);margin-bottom:18px}.visit-details>h2{font-size:57px;margin-bottom:25px}.visit-details>address{font-style:normal;font-size:16px;line-height:1.8;max-width:260px;margin-bottom:25px}.visit-contact{margin-top:30px;margin-bottom:25px;display:grid;grid-template-columns:1fr auto;gap:7px 20px;padding-top:25px;border-top:1px solid var(--line)}.visit-contact>p{grid-column:1/-1;font-size:10px;color:var(--muted);margin-bottom:7px}.visit-contact>a{font-size:17px;letter-spacing:-.035em}.visit-contact>span{font-size:10px;color:var(--muted);align-self:center}.visit-details>.fine-print{color:var(--muted);font-size:11px;line-height:1.9;max-width:340px}.visit-map{min-height:500px;display:flex;flex-direction:column;background:var(--paper-deep)}.visit-map>iframe{width:100%;min-height:460px;flex:1;border:0;filter:saturate(.6)}.visit-map>a{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;font-size:11px}.visit-map>a>.icon{width:17px}.not-found{padding-top:100px;padding-bottom:140px}.not-found>.eyebrow{margin-bottom:25px}.not-found>h1{font-size:clamp(55px,7vw,110px)}.not-found>p:not(.eyebrow){max-width:400px;margin:30px 0;font-size:14px;color:var(--muted)}
/* A quiet ending and a browser-local collection. */
.site-footer{padding:80px var(--gutter) 25px;background:var(--near-black);color:var(--paper)}.footer-top{max-width:var(--shell);margin:auto;display:grid;grid-template-columns:1.3fr 1fr;gap:70px;padding-bottom:70px}.footer-statement>.eyebrow{color:#aab39f;font-size:9px;margin-bottom:23px}.footer-statement>h2{font-size:clamp(37px,4.7vw,73px);margin-bottom:25px}.footer-statement .text-link{font-size:11px;min-width:220px}.footer-contact{padding-top:12px;display:flex;align-items:flex-start;flex-direction:column;gap:15px;font-size:11px;color:#c9cebf}.footer-contact>.eyebrow{color:#b2b9a8;font-size:9px;margin-bottom:9px}.footer-contact .footer-phone{font-size:29px;color:var(--paper);letter-spacing:-.04em}.footer-contact .footer-address{margin-top:10px}.footer-contact>p:last-child{font-size:10px;line-height:1.9}.footer-contact>p:last-child>span{color:#8e9c86}.footer-contact>a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{max-width:var(--shell);margin:auto;border-top:1px solid #ffffff24;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-bottom .brand-mark{width:30px;height:30px}.footer-bottom .brand-words{font-size:12px}.footer-bottom .brand-words>span{font-size:6px;margin-top:5px}.footer-bottom nav{display:flex;gap:27px;font-size:10px;color:#cbd1c2}.footer-bottom nav .icon{width:12px;height:12px;margin-left:4px}.footer-bottom>p{font-size:8px;color:#909d87}.shortlist-dialog{position:fixed;inset:0 0 0 auto;width:min(600px,100%);height:100%;max-height:none;margin:0;max-width:100%;background:var(--paper);color:var(--ink);border:0;padding:35px 35px 45px;overflow-y:auto;box-shadow:-15px 0 50px #0002}.shortlist-dialog::backdrop,.image-dialog::backdrop{background:#111a12b8;backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding-bottom:24px}.dialog-header .eyebrow{font-size:9px;margin-bottom:9px;color:var(--muted)}.dialog-header h2{font-size:35px}.dialog-header h2>span{font-family:var(--sans);font-size:10px;letter-spacing:0;margin-left:14px;vertical-align:middle;border:1px solid #aeb5a1;border-radius:50%;width:23px;height:23px;display:inline-grid;place-items:center}.shortlist-note{font-size:11px;color:var(--muted);line-height:1.8;margin-top:19px;margin-bottom:22px}.shortlist-items{display:flex;flex-direction:column}.shortlist-item{display:grid;grid-template-columns:85px 1fr 25px;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:20px 0}.shortlist-item-image{height:105px;background:var(--paper-deep)}.shortlist-item-image>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.shortlist-item-name{font-size:16px;line-height:1.4;letter-spacing:-.03em}.shortlist-item-price{font-size:11px;color:var(--muted);margin-top:8px}.shortlist-item-link{font-size:10px;text-decoration:underline;text-underline-offset:4px;display:inline-flex;margin-top:8px}.shortlist-remove{border:0;background:none;padding:4px}.shortlist-remove>.icon{width:16px;height:16px}.shortlist-empty{text-align:center;min-height:330px;display:flex;align-items:center;justify-content:center;flex-direction:column}.shortlist-empty>.icon{width:30px;height:30px;color:#6c7a61;margin-bottom:23px}.shortlist-empty>h3{font-size:24px;font-family:var(--serif);font-style:italic}.shortlist-empty>p{font-size:11px;color:var(--muted);margin:15px 0 25px}.shortlist-actions{padding-top:25px}.shortlist-actions>.button{width:100%}.shortlist-actions>p{font-size:10px;color:var(--muted);margin:12px 0 17px}.image-dialog{border:0;background:var(--paper);padding:40px;max-width:min(1100px,95vw);max-height:94svh;overflow:auto}.image-dialog>.icon-button{position:absolute;top:10px;right:10px;background:var(--paper);z-index:1}.image-dialog>img{max-height:calc(94svh - 80px);width:auto;margin:auto;object-fit:contain}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);padding:13px 23px;border-radius:2px;max-width:calc(100vw - 40px);background:var(--ink);color:var(--paper);font-size:11px;z-index:100;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;box-shadow:0 5px 25px #0002}.toast.is-visible{opacity:1;transform:translate(-50%,0)}.reveal-pending{opacity:0;transform:translateY(23px);transition:opacity .75s,transform .75s}.reveal-pending.is-revealed{opacity:1;transform:none}@keyframes hero-entrance{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.hero-copy{left:max(var(--gutter),calc((100vw - 1440px)/2));width:650px}.hero-thumbnails{right:max(var(--gutter),calc((100vw - 1440px)/2))}.hero-bottom{left:max(var(--gutter),calc((100vw - 1440px)/2));right:max(var(--gutter),calc((100vw - 1440px)/2))}}
@media(max-width:1250px){.header-inner{gap:22px}.brand-words{font-size:14px}.brand-mark{width:37px;height:37px}.primary-navigation{gap:23px}.header-actions{gap:20px}.header-contact{gap:12px}.cinematic-hero{min-height:780px}.hero-heading{font-size:clamp(72px,8.7vw,110px)}.hero-copy{top:190px;width:50%}.hero-thumbnails{gap:10px;bottom:143px}.hero-thumbnail{width:105px;height:155px}.hero-specifications{max-width:390px;font-size:11px}.hero-copy-actions{gap:22px}.hero-price{font-size:17px}.category-tile-image{height:280px}.editorial-image{min-height:570px}.product-grid{gap:36px 18px}.contact-layout{gap:60px}.footer-bottom{gap:20px}.footer-bottom nav{gap:18px}}
@media(max-width:980px){.header-inner{height:88px}.primary-navigation{gap:20px}.header-contact{display:none}.hero-copy{top:155px;width:57%}.hero-heading{font-size:84px}.hero-thumbnails{bottom:141px;gap:8px}.hero-thumbnail{width:86px;height:129px}.hero-thumbnail-name{font-size:10px;left:9px;right:9px;bottom:13px}.hero-thumbnail-index{top:9px;left:9px;font-size:8px}.hero-copy-actions{flex-direction:row}.cinematic-hero{min-height:760px}.category-grid{gap:28px 20px}.category-tile-image{height:245px}.category-tile-label{align-items:flex-start;flex-direction:column;gap:5px}.category-tile-label>h3{font-size:17px}.collection-intro,.featured-section,.related-section{padding-top:75px;padding-bottom:75px}.section-heading{gap:35px}.section-heading-aside{max-width:285px}.editorial-copy{padding:45px}.editorial-image{min-height:540px}.editorial-copy>h2{font-size:39px}.editorial-copy>p:not(.eyebrow){font-size:12px}.editorial-location{margin-top:25px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 22px}.quote-band{gap:45px}.quote-band h2{font-size:40px}.product-detail{gap:40px;grid-template-columns:1fr 1fr}.product-main-image{min-height:420px;aspect-ratio:4/6}.product-information>h1{font-size:44px}.product-information{padding-top:5px}.product-specification>p{font-size:12px}.product-primary-actions>.button{font-size:11px;gap:20px}.page-intro{padding-top:64px}.page-intro>h1{font-size:77px}.about-photograph{height:550px}.about-layout{gap:40px}.about-story>h2{font-size:40px}.about-story>p:not(.eyebrow){font-size:12px}.about-principles{gap:30px}.contact-layout{gap:35px;grid-template-columns:.85fr 1.15fr}.contact-information>h2{font-size:29px}.form-row{grid-template-columns:1fr;gap:0}.visit-layout{gap:35px;grid-template-columns:.8fr 1.2fr}.visit-details>h2{font-size:48px}.footer-bottom{flex-wrap:wrap}.footer-bottom>p{margin-left:auto}}
@media(max-width:760px){html{scroll-padding-top:80px}.header-inner{height:auto;min-height:82px;flex-wrap:wrap;gap:0;padding-top:18px;padding-bottom:18px}.brand-words{font-size:14px}.brand-mark{width:35px;height:35px}.brand{gap:9px}.header-actions{margin-left:auto}.primary-navigation{order:3;flex-basis:100%;padding-top:15px;justify-content:space-between}.primary-navigation>a{font-size:10px}.js .menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:23px;background:none;border:0;padding:8px 0;font-size:10px}.menu-lines{width:18px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-toggle[aria-expanded=true] .menu-lines{height:1px;border:0}.menu-toggle[aria-expanded=true] .menu-lines::before,.menu-toggle[aria-expanded=true] .menu-lines::after{content:"";position:absolute;width:18px;height:1px;top:0;left:0;background:currentColor;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines::after{transform:rotate(-45deg)}.js .header-actions{margin-left:0}.js .primary-navigation{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:17px var(--gutter) 25px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:5px;color:var(--ink);box-shadow:0 14px 20px #0001}.js .primary-navigation.is-open{display:flex}.js .primary-navigation>a{font-size:16px;padding:15px 0}.js .primary-navigation .mobile-contact{display:block}.site-header--hero .primary-navigation{background:#18221ced;color:var(--paper);border-color:#fff3}.cinematic-hero{height:870px;min-height:0;max-height:none}.hero-copy{top:150px;left:var(--gutter);width:calc(100% - var(--gutter)*2);max-width:600px}.hero-heading{font-size:clamp(65px,12vw,96px);max-width:11ch}.hero-introduction{font-size:15px;margin-top:25px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:.15em}.hero-specifications{max-width:360px;margin-top:20px;min-height:0}.hero-copy-actions{margin-top:24px;gap:28px}.hero-copy-actions>.button{min-height:50px;padding:16px 19px;font-size:11px;gap:20px}.hero-price{font-size:18px}.hero-price>span{font-size:8px}.hero-scrim{background:linear-gradient(90deg,#07120acf,#07120a44),linear-gradient(0deg,#09120ee0,transparent 60%)}.hero-photograph{object-position:60% 35%}.hero-thumbnails{left:var(--gutter);right:var(--gutter);bottom:122px;gap:10px;justify-content:flex-end}.hero-thumbnail{width:calc((100vw - var(--gutter)*2 - 30px)/4);max-width:135px;height:155px}.hero-thumbnail-name{font-size:11px}.hero-thumbnail.is-active{transform:translateY(-10px)}.hero-bottom{bottom:26px;padding-top:19px}.scroll-prompt{max-width:130px;font-size:9px;gap:14px;line-height:1.5}.hero-pagination{gap:9px;margin-right:11px}.hero-pagination strong{font-size:22px}.hero-pagination>span{font-size:9px}.circle-button{width:37px;height:37px}.circle-button>.icon{width:18px;height:18px}.hero-controls{gap:9px}.section-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:32px}.section-heading h2{font-size:43px}.section-heading .eyebrow{margin-bottom:17px;font-size:9px}.section-heading-aside{max-width:420px}.section-heading-aside>p{font-size:12px;margin-bottom:10px}.section-heading-aside>.text-link{font-size:11px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 17px}.category-tile-image{height:250px}.category-tile-label>h3{font-size:16px}.category-tile-label>span{font-size:9px}.category-tile-arrow{width:29px;height:29px;right:11px;bottom:11px}.category-number{left:13px;top:13px;font-size:8px}.category-tile-image>img{padding:9px}.collection-intro,.featured-section,.related-section{padding-top:60px;padding-bottom:60px}.all-collections-link{margin-top:30px;font-size:11px;padding-top:21px}.editorial-section{grid-template-columns:1fr}.editorial-image{min-height:470px}.editorial-copy{padding:50px var(--gutter) 55px}.editorial-copy>h2{font-size:45px;max-width:420px}.editorial-copy>p:not(.eyebrow){font-size:13px;max-width:500px}.editorial-location{margin-top:30px}.image-caption{left:var(--gutter);font-size:13px;bottom:25px}.product-grid,.product-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 17px}.product-card-visual img{padding:8px}.product-category{font-size:8px;letter-spacing:.045em}.product-card-body{padding-top:13px}.product-card-body h3{font-size:16px}.product-card-meta{font-size:11px;flex-wrap:wrap;gap:4px;margin-top:10px}.product-card-specs{font-size:9px;margin-top:6px}.product-sku{font-size:8px}.save-button{width:31px;height:31px;right:9px;top:9px}.save-button>.icon{width:15px;height:15px}.product-card-view{display:none}.quote-band{grid-template-columns:1fr;gap:25px;padding-top:50px;padding-bottom:50px}.quote-band>div:first-child{justify-self:start}.quote-band>div:nth-child(2){padding:0;max-width:520px}.quote-band h2{font-size:43px}.quote-band .eyebrow{font-size:8px}.quote-band p:not(.eyebrow){font-size:12px}.quote-band .button{margin-top:20px}.catalog-intro{padding-top:49px;padding-bottom:33px;align-items:flex-start;flex-direction:column;gap:20px}.catalog-intro .eyebrow{font-size:8px;margin-bottom:20px}.catalog-intro h1{font-size:55px}.catalog-intro>p{max-width:390px;font-size:12px;padding:0}.catalog-toolbar{flex-direction:column;gap:14px;padding-top:20px}.search-field{min-height:49px;padding:0 14px}.search-field>input{font-size:11px;padding:15px 0}.sort-field{justify-content:flex-end;font-size:9px}.sort-field select{font-size:10px;padding:8px 16px 8px 0;max-width:170px}.category-filters{padding-top:18px;padding-bottom:18px;gap:7px;flex-wrap:nowrap;overflow-x:auto;margin-right:calc(-1*var(--gutter));padding-right:var(--gutter);scrollbar-width:thin}.category-filter{flex:none;min-height:34px;font-size:9px;padding:8px 11px;gap:7px;white-space:nowrap}.category-filter>span{font-size:7px}.catalog-results-heading{padding-top:17px;padding-bottom:20px;gap:10px;flex-wrap:wrap}.results-count{font-size:10px}.catalog-delivery{font-size:8px;flex-basis:100%;order:3;gap:7px}.catalog-delivery>.icon{width:12px;height:12px}.catalog-reset{font-size:9px}.catalog-section{padding-bottom:60px}.catalog-pagination{margin-top:35px;padding-top:25px}.catalog-pagination>p{font-size:10px}.catalog-pagination>.button{font-size:11px}.product-breadcrumb{padding-top:23px;padding-bottom:23px;font-size:9px}.product-detail{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.product-main-image{min-height:0;aspect-ratio:5/6;max-height:700px}.product-image-open{padding:20px}.product-photograph-note{font-size:9px}.product-information{padding-top:0}.product-information>.eyebrow{font-size:9px}.product-information>h1{font-size:49px;max-width:600px}.product-detail-price{font-size:28px;margin-top:25px}.product-specification>p{font-size:13px}.product-information>.product-primary-actions{margin-top:23px}.save-button--label{width:auto;min-height:48px;font-size:11px}.product-primary-actions>.button{font-size:12px}.product-email-link{font-size:10px}.product-faq>summary{font-size:12px}.related-section{padding-top:45px}.page-intro{padding-top:50px;padding-bottom:40px}.page-intro>.eyebrow{font-size:9px;margin-bottom:22px}.page-intro>h1{font-size:68px}.page-intro-description{font-size:13px;margin-top:25px;max-width:380px}.about-layout{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.about-photograph{height:520px}.about-story>h2{font-size:47px}.about-story>p:not(.eyebrow){font-size:13px;max-width:520px}.about-principles{grid-template-columns:1fr;gap:29px;padding-top:0;padding-bottom:55px}.about-principles>div{padding-top:20px}.about-principles h3{margin-top:12px;margin-bottom:10px;font-size:21px}.about-principles p{max-width:500px}.contact-layout{grid-template-columns:1fr;gap:40px;padding-bottom:65px}.contact-information>h2{font-size:35px}.contact-information>p{max-width:480px;font-size:12px}.contact-method{font-size:14px;padding:22px 0}.contact-method small{font-size:9px}.contact-service>p:last-child{font-size:11px;max-width:450px}.inquiry-form{padding:29px 24px}.form-heading>h2{font-size:35px}.form-heading>p:last-child{font-size:11px}.form-row{grid-template-columns:1fr 1fr;gap:17px}.inquiry-form label{font-size:10px}.inquiry-form input,.inquiry-form textarea{font-size:16px;padding:13px 11px}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{font-size:11px}.visit-layout{grid-template-columns:1fr;gap:35px;padding-bottom:60px}.visit-details>h2{font-size:49px}.visit-details>address{max-width:450px;font-size:16px}.visit-contact{max-width:360px}.visit-map{min-height:420px}.visit-map>iframe{min-height:380px}.site-footer{padding-top:60px}.footer-top{grid-template-columns:1fr;gap:45px;padding-bottom:45px}.footer-statement>h2{font-size:58px}.footer-contact{padding-top:0;gap:12px}.footer-contact>.eyebrow{margin-bottom:4px}.footer-contact .footer-phone{font-size:27px}.footer-bottom{gap:25px;flex-direction:column;align-items:flex-start}.footer-bottom nav{gap:22px;flex-wrap:wrap;font-size:9px}.footer-bottom>p{margin-left:0;font-size:8px}.shortlist-dialog{padding:26px 24px}.dialog-header h2{font-size:32px}.shortlist-item{grid-template-columns:75px 1fr 20px;gap:14px}.shortlist-item-name{font-size:15px}.shortlist-item-image{height:95px}.image-dialog{padding:35px 10px 15px;width:95vw}.image-dialog>img{max-height:calc(94svh - 60px)}.not-found{padding-top:65px;padding-bottom:90px}.not-found>h1{font-size:62px}}
@media(max-width:430px){.cinematic-hero{height:815px}.hero-copy{top:141px}.hero-heading{font-size:64px;max-width:10.3ch}.hero-introduction{font-size:13px;margin-top:22px}.hero-specifications{font-size:10px;max-width:330px}.hero-copy-actions{gap:20px}.hero-copy-actions>.button{font-size:10px;gap:18px;padding:16px}.hero-price{font-size:16px}.hero-price>span{font-size:7px}.hero-thumbnails{bottom:124px;gap:8px}.hero-thumbnail{width:calc((100vw - var(--gutter)*2 - 24px)/4);height:122px}.hero-thumbnail-name{font-size:9px;left:8px;right:8px;bottom:13px}.hero-thumbnail-index{left:8px;top:8px;font-size:7px}.hero-thumbnail.is-active::before{left:8px;bottom:7px;width:15px}.hero-controls{gap:7px}.hero-pagination{margin-right:7px;gap:8px}.hero-pagination strong{font-size:20px}.hero-pagination>span{font-size:8px}.circle-button{width:34px;height:34px}.scroll-prompt{max-width:120px;font-size:8px}.section-heading h2{font-size:39px}.category-tile-image{height:215px}.category-tile-label>h3{font-size:14px}.category-tile-label>span{font-size:8px}.editorial-image{min-height:370px}.editorial-copy>h2{font-size:41px}.product-card-body h3{font-size:14px}.product-grid,.product-grid--featured{column-gap:13px}.product-category{font-size:7px}.product-card-meta{font-size:10px}.product-card-specs{font-size:8px}.product-card-visual img{padding:5px}.catalog-intro h1{font-size:50px}.catalog-intro>p{font-size:11px}.page-intro>h1{font-size:60px}.product-information>h1{font-size:43px}.form-row{grid-template-columns:1fr;gap:0}.inquiry-form{padding:25px 20px}.footer-statement>h2{font-size:51px}.brand-words{font-size:12px}.brand-words>span{font-size:7px}.brand-mark{width:31px;height:31px}.js .menu-toggle{margin-right:19px;font-size:9px}.header-inner{min-height:78px}.js .primary-navigation{top:77px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-photograph{transform:none}.reveal-pending{opacity:1;transform:none}.hero-transition-ghost{display:none}.hero-thumbnail.is-active{transform:none}}


/* Readability revision: real-size text, recognizable navigation and the original badge. */
html { scroll-padding-top: 122px; }
body { font-size: 16px; }
.eyebrow { font-size: 12px; letter-spacing: .15em; }
.fine-print { font-size: 13px; }
.button { font-size: 14px; min-height: 54px; padding: 17px 23px; }
.text-link, .text-button { font-size: 14px; }
.text-link .icon, .button .icon { width: 20px; height: 20px; }
.icon-button { width: 44px; height: 44px; }
.site-header, .site-header--hero {
  position: sticky;
  top: 0;
  z-index: 30;
  color: var(--white);
  background: #18231d;
  border-bottom: 1px solid #fff3;
  box-shadow: 0 5px 20px #06100a25;
}



.header-inner { height: 106px; min-height: 106px; gap: 26px; padding-top: 8px; padding-bottom: 8px; }
.brand { gap: 12px; }
.brand-badge { display: flex; align-items: center; justify-content: center; height: 90px; width: 72px; flex: none; }
.brand-badge img, img.brand-badge { display: block; width: auto; max-width: 72px; height: 90px; object-fit: contain; }
.brand-words, .site-header--hero .brand-words { font-size: 20px; font-weight: 600; letter-spacing: .075em; }
.brand-words > span { font-size: 11px; letter-spacing: .3em; margin-top: 8px; }
.primary-navigation { gap: 8px; }
.primary-navigation > a {
  font-size: 15px;
  font-weight: 500;
  padding: 13px 18px;
  border: 1px solid #ffffff2b;
  border-radius: 999px;
  background: #ffffff0a;
  white-space: nowrap;
}
.primary-navigation > a::after { display: none; }
.primary-navigation > a:hover { background: #ffffff18; border-color: #ffffff65; }
.primary-navigation > a[aria-current=page] { background: #ce7d5e33; border-color: var(--accent-light); }
.header-actions { gap: 14px; }
.header-contact {
  display: inline-flex;
  font-size: 14px;
  font-weight: 600;
  gap: 14px;
  min-height: 46px;
  padding: 13px 17px;
  border: 1px solid var(--accent-light);
  border-radius: 4px;
  background: var(--accent);
  color: var(--near-black);
  white-space: nowrap;
}
.header-contact:hover { background: var(--accent-light); }
.shortlist-open { gap: 7px; min-height: 44px; padding: 9px 10px; border: 1px solid #ffffff2b; border-radius: 999px; }
.shortlist-label { font-size: 14px; }
.shortlist-count { font-size: 12px; width: 23px; height: 23px; border-color: #fff7; }
.cinematic-hero { height: min(calc(100svh - 106px), 1000px); min-height: 790px; }
.hero-copy { top: clamp(105px, 13vh, 155px); }
.hero-copy > .eyebrow { font-size: 12px; letter-spacing: .13em; }
.hero-introduction { font-size: 19px; margin-top: 25px; }
.hero-specifications { font-size: 14px; line-height: 1.65; max-width: 490px; }
.hero-copy-actions > .button { font-size: 14px; }
.hero-price { font-size: 23px; }
.hero-price > span { font-size: 12px; letter-spacing: .045em; }
.hero-thumbnail { width: clamp(115px, 10vw, 152px); height: clamp(165px, 14vw, 216px); }
.hero-thumbnail-name { font-size: 14px; line-height: 1.3; }
.hero-thumbnail-index { font-size: 11px; }
.scroll-prompt { font-size: 12px; letter-spacing: .045em; }
.hero-pagination > span { font-size: 12px; }
.collection-intro, .featured-section, .related-section { padding-top: 80px; padding-bottom: 80px; }
.section-heading { margin-bottom: 36px; }
.section-heading .eyebrow { font-size: 12px; }
.section-heading-aside { max-width: 370px; }
.section-heading-aside > p { font-size: 16px; line-height: 1.75; }
.category-tile-label > h3 { font-size: 20px; }
.category-tile-label > span { font-size: 13px; }
.category-number { font-size: 12px; }
.all-collections-link { font-size: 14px; margin-top: 34px; }
.editorial-copy > .eyebrow { font-size: 12px; }
.editorial-copy > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; }
.editorial-location { font-size: 14px; }
.editorial-location small { font-size: 12px; }
.image-caption { font-size: 16px; }
.product-category { font-size: 12px; letter-spacing: .055em; line-height: 1.5; }
.product-card-body h3 { font-size: 19px; line-height: 1.35; }
.product-card-meta { font-size: 15px; line-height: 1.5; flex-wrap: wrap; }
.product-sku { font-size: 12px; }
.product-card-specs { font-size: 13px; line-height: 1.65; margin-top: 10px; }
.product-card-view { font-size: 13px; }
.save-button { width: 40px; height: 40px; }
.save-button > .icon { width: 19px; height: 19px; }
.save-button--label { width: auto; height: auto; font-size: 14px; min-height: 50px; }
.image-placeholder > span { font-size: 13px; }
.quote-band { padding-top: 58px; padding-bottom: 58px; }
.quote-band p:not(.eyebrow) { font-size: 16px; line-height: 1.75; }
.quote-band .fine-print { font-size: 13px !important; }
.catalog-intro { padding-top: 58px; padding-bottom: 44px; }
.catalog-intro > p { font-size: 16px; max-width: 340px; }
.search-field > input { font-size: 15px; }
.search-field kbd { font-size: 13px; }
.sort-field { font-size: 13px; }
.sort-field select { font-size: 14px; max-width: 235px; }
.category-filter { min-height: 42px; padding: 10px 14px; font-size: 13px; }
.category-filter > span { font-size: 12px; }
.results-count { font-size: 14px; }
.catalog-delivery { font-size: 12px; line-height: 1.6; }
.catalog-delivery > .icon { width: 17px; height: 17px; }
.catalog-reset { font-size: 13px; }
.catalog-empty > p:not(.eyebrow) { font-size: 16px; }
.catalog-pagination > p, .catalog-noscript { font-size: 14px; }
.product-breadcrumb { font-size: 13px; }
.product-photograph-note { font-size: 13px; line-height: 1.7; }
.image-zoom-label { font-size: 13px; }
.product-information > .eyebrow, .product-item-number, .product-price-note { font-size: 13px; }
.product-specification > h2 { font-size: 13px; }
.product-specification > p { font-size: 16px; }
.product-specification .product-notes { font-size: 15px; }
.product-primary-actions > .button { font-size: 14px; }
.product-email-link { font-size: 14px; line-height: 1.65; text-align: center; }
.delivery-note h3 { font-size: 18px; }
.delivery-note p { font-size: 14px; line-height: 1.75; }
.product-faq > summary { font-size: 14px; line-height: 1.6; }
.product-faq > p, .product-faq > a { font-size: 14px; }
.page-intro { padding-top: 64px; padding-bottom: 50px; }
.page-intro-description { font-size: 17px; }
.about-story > .eyebrow { font-size: 12px; }
.about-story > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; }
.about-principles { padding-bottom: 75px; }
.about-principles span { font-size: 13px; }
.about-principles p { font-size: 15px; line-height: 1.8; }
.contact-information > p { font-size: 16px; line-height: 1.75; }
.contact-method { font-size: 16px; }
.contact-method small { font-size: 12px; }
.contact-method--email > span { font-size: 14px; }
.contact-service > .eyebrow { font-size: 12px; }
.contact-service > p:last-child { font-size: 14px; }
.form-heading > .eyebrow { font-size: 12px; }
.form-heading > p:last-child { font-size: 14px; line-height: 1.75; }
.inquiry-form label { font-size: 14px; }
.inquiry-form input, .inquiry-form textarea { font-size: 16px; line-height: 1.65; }
.inquiry-form input::placeholder, .inquiry-form textarea::placeholder { font-size: 14px; }
.inquiry-piece { font-size: 14px; line-height: 1.6; }
.form-note { font-size: 13px !important; }
.form-status { font-size: 14px; }
.draft-fallback > summary, .draft-fallback > p { font-size: 13px; line-height: 1.7; }
.email-draft { font-size: 14px !important; }
.visit-contact > p, .visit-contact > span { font-size: 13px; }
.visit-details > .fine-print { font-size: 14px; line-height: 1.8; }
.visit-map > a { font-size: 14px; }
.not-found > p:not(.eyebrow) { font-size: 16px; }
.site-footer { padding-top: 65px; }
.footer-statement > .eyebrow { font-size: 12px; }
.footer-statement .text-link { font-size: 14px; }
.footer-contact { font-size: 15px; }
.footer-contact > .eyebrow { font-size: 12px; }
.footer-contact > p:last-child { font-size: 14px; line-height: 1.8; }
.footer-bottom nav { font-size: 13px; gap: 24px; }
.footer-bottom > p { font-size: 12px; }
.footer-bottom .brand-badge { width: 55px; height: 70px; }
.footer-bottom .brand-badge img, .footer-bottom img.brand-badge { height: 70px; max-width: 55px; }
.footer-bottom .brand-words { font-size: 17px; }
.footer-bottom .brand-words > span { font-size: 11px; }
.dialog-header .eyebrow { font-size: 12px; }
.dialog-header h2 > span { font-size: 13px; width: 27px; height: 27px; }
.shortlist-note { font-size: 14px; }
.shortlist-item-name { font-size: 18px; }
.shortlist-item-price, .shortlist-item-link { font-size: 14px; }
.shortlist-empty > p, .shortlist-actions > p { font-size: 14px; }
.shortlist-remove { font-size: 25px; }
.selection-fallback > summary { font-size: 13px; }
.selection-fallback > textarea { font-size: 14px; }
.toast { font-size: 14px; }
.craft-section {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  align-items: center;
  gap: clamp(45px, 7vw, 108px);
  padding-top: 70px;
  padding-bottom: 80px;
  border-top: 1px solid var(--line);
}
.craft-image { margin: 0; width: min(100%, 450px); justify-self: center; }
.craft-image > img { width: 100%; height: auto; max-height: 600px; object-fit: contain; }
.craft-image > figcaption { font-size: 13px; line-height: 1.6; color: var(--muted); margin-top: 14px; }
.craft-copy { max-width: 600px; }
.craft-copy > .eyebrow { margin-bottom: 22px; color: var(--muted); }
.craft-copy > h2 { font-size: clamp(43px, 4.6vw, 68px); margin-bottom: 25px; }
.craft-copy > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; color: var(--muted); margin-bottom: 18px; }
.craft-copy > .text-link { margin-top: 9px; }
@media (max-width: 1200px) {
  .header-inner { gap: 18px; }
  .brand-words, .site-header--hero .brand-words { font-size: 18px; }
  .primary-navigation > a { font-size: 14px; padding: 12px 14px; }
  .header-contact { font-size: 13px; padding: 12px 14px; gap: 10px; }
  .header-actions { gap: 10px; }
  .shortlist-label { font-size: 13px; }
  .hero-copy { top: 110px; }
  .hero-specifications { max-width: 425px; }
  .hero-thumbnails { gap: 10px; }
  .hero-thumbnail { width: 112px; height: 162px; }
  .hero-thumbnail-name { font-size: 13px; }
  .footer-bottom { flex-wrap: wrap; }
}
@media (max-width: 1000px) {
  .brand-words, .site-header--hero .brand-words { font-size: 16px; }
  .brand-words > span { font-size: 10px; }
  .header-inner { gap: 12px; }
  .primary-navigation { gap: 6px; }
  .primary-navigation > a { font-size: 13px; padding: 12px; }
  .header-contact { font-size: 12px; padding: 12px; }
  .shortlist-open { padding-left: 8px; padding-right: 8px; }
  .hero-heading { font-size: 82px; }
  .hero-copy { width: 58%; }
  .hero-specifications { max-width: 410px; font-size: 13px; }
  .hero-thumbnails { bottom: 126px; }
  .hero-thumbnail { width: 91px; height: 139px; }
  .hero-thumbnail-name { font-size: 12px; }
  .category-tile-label > h3 { font-size: 18px; }
  .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .product-grid--featured { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-bottom nav { gap: 19px; }
}
@media (max-width: 900px) {
  html { scroll-padding-top: 105px; }
  .header-inner { height: 90px; min-height: 90px; padding: 8px var(--gutter); flex-wrap: nowrap; gap: 0; }
  html:not(.js) .header-inner { height: auto; flex-wrap: wrap; }
  html:not(.js) .primary-navigation { order: 3; flex-basis: 100%; display: flex; flex-wrap: wrap; padding-top: 14px; }
  .brand { gap: 9px; }
  .brand-badge { height: 60px; width: 48px; }
  .brand-badge img, img.brand-badge { height: 60px; max-width: 48px; }
  .brand-words, .site-header--hero .brand-words { font-size: 17px; }
  .brand-words > span { font-size: 10px; margin-top: 7px; }
  .header-contact { display: none; }
  .header-actions, .js .header-actions { margin-left: 0; }
  .shortlist-open { min-height: 42px; padding: 8px 10px; }
  .shortlist-label { font-size: 14px; }
  .shortlist-count { width: 22px; height: 22px; font-size: 12px; }
  .js .menu-toggle { display: flex; align-items: center; gap: 10px; margin-left: auto; margin-right: 20px; padding: 10px 0; font-size: 14px; font-weight: 500; background: none; border: 0; color: var(--white); }
  .menu-lines { width: 18px; height: 10px; border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; position: relative; }
  .menu-toggle[aria-expanded=true] .menu-lines { height: 1px; border: 0; }
  .menu-toggle[aria-expanded=true] .menu-lines::before, .menu-toggle[aria-expanded=true] .menu-lines::after { content: ''; position: absolute; width: 18px; height: 1px; top: 0; left: 0; background: currentColor; transform: rotate(45deg); }
  .menu-toggle[aria-expanded=true] .menu-lines::after { transform: rotate(-45deg); }
  .js .primary-navigation {
    display: none;
    position: absolute;
    top: 89px;
    left: 0;
    right: 0;
    width: 100%;
    padding: 18px var(--gutter) 24px;
    background: #18231d;
    color: var(--white);
    border-bottom: 1px solid #ffffff35;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    box-shadow: 0 15px 25px #0003;
  }
  .js .primary-navigation.is-open { display: flex; }
  .js .primary-navigation > a { padding: 14px 20px; font-size: 16px; border-radius: 5px; }
  .js .primary-navigation .mobile-contact { display: flex; background: var(--accent); border-color: var(--accent); color: var(--near-black); }
  .craft-section { grid-template-columns: 1fr; gap: 38px; padding-top: 55px; padding-bottom: 60px; }
  .craft-image { justify-self: start; }
  .craft-copy { max-width: 650px; }
}
@media (max-width: 760px) {
  body { font-size: 15px; }
  .eyebrow, .section-heading .eyebrow, .page-intro > .eyebrow { font-size: 12px; }
  .brand-words, .site-header--hero .brand-words { font-size: 15px; letter-spacing: .06em; }
  .brand-words > span { font-size: 10px; letter-spacing: .22em; }
  .js .menu-toggle { margin-right: 14px; gap: 8px; font-size: 14px; }
  .shortlist-open { gap: 5px; padding-left: 7px; padding-right: 7px; }
  .shortlist-label { font-size: 13px; }
  .cinematic-hero { height: 890px; min-height: 0; }
  .hero-copy { top: 94px; width: calc(100% - var(--gutter)*2); max-width: 600px; }
  .hero-copy > .eyebrow { font-size: 11px; letter-spacing: .1em; }
  .hero-introduction { font-size: 17px; }
  .hero-heading { font-size: clamp(64px, 11.8vw, 90px); max-width: 11ch; }
  .hero-specifications { font-size: 13px; max-width: 430px; margin-top: 24px; }
  .hero-copy-actions { margin-top: 23px; gap: 24px; }
  .hero-copy-actions > .button { font-size: 14px; min-height: 54px; padding: 16px 19px; gap: 17px; }
  .hero-price { font-size: 22px; }
  .hero-price > span { font-size: 11px; }
  .hero-thumbnails { bottom: 134px; gap: 9px; }
  .hero-thumbnail { width: calc((100vw - var(--gutter)*2 - 27px)/4); max-width: 135px; height: 156px; }
  .hero-thumbnail-name { font-size: 12px; }
  .hero-thumbnail-index { font-size: 10px; }
  .hero-bottom { bottom: 30px; }
  .scroll-prompt { font-size: 11px; max-width: 165px; gap: 14px; }
  .hero-pagination > span { font-size: 11px; }
  .circle-button { width: 42px; height: 42px; }
  .collection-intro, .featured-section, .related-section { padding-top: 52px; padding-bottom: 55px; }
  .section-heading { gap: 20px; margin-bottom: 29px; }
  .section-heading-aside > p { font-size: 15px; }
  .section-heading-aside > .text-link { font-size: 14px; }
  .category-tile-label > h3 { font-size: 18px; line-height: 1.35; }
  .category-tile-label > span { font-size: 12px; }
  .category-number { font-size: 11px; }
  .all-collections-link { font-size: 14px; }
  .editorial-copy > p:not(.eyebrow) { font-size: 15px; }
  .editorial-location { font-size: 14px; }
  .editorial-location small { font-size: 12px; }
  .image-caption { font-size: 15px; }
  .product-grid, .product-grid--featured { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 17px; }
  .product-card-body h3 { font-size: 18px; line-height: 1.4; }
  .product-category { font-size: 12px; line-height: 1.5; }
  .product-card-meta { font-size: 14px; }
  .product-sku { font-size: 12px; }
  .product-card-specs { font-size: 12px; line-height: 1.65; }
  .save-button { width: 36px; height: 36px; }
  .save-button--label { width: auto; height: auto; font-size: 14px; }
  .quote-band { padding-top: 43px; padding-bottom: 43px; }
  .quote-band .eyebrow { font-size: 11px; }
  .quote-band p:not(.eyebrow) { font-size: 15px; }
  .quote-band .fine-print { font-size: 12px !important; }
  .catalog-intro { padding-top: 42px; padding-bottom: 28px; }
  .catalog-intro .eyebrow { font-size: 11px; }
  .catalog-intro > p { font-size: 15px; }
  .search-field > input { font-size: 16px; }
  .search-field { min-height: 53px; }
  .sort-field { font-size: 13px; }
  .sort-field select { font-size: 16px; max-width: 230px; padding: 9px 20px 9px 0; }
  .category-filter { font-size: 13px; min-height: 42px; padding: 10px 13px; gap: 9px; }
  .category-filter > span { font-size: 12px; }
  .results-count { font-size: 14px; }
  .catalog-delivery { font-size: 12px; }
  .catalog-delivery > .icon { width: 16px; height: 16px; }
  .catalog-reset { font-size: 13px; }
  .catalog-pagination > p { font-size: 14px; }
  .catalog-pagination > .button { font-size: 14px; }
  .product-breadcrumb { font-size: 12px; line-height: 1.6; }
  .product-photograph-note { font-size: 12px; }
  .product-information > .eyebrow { font-size: 12px; }
  .product-specification > p { font-size: 15px; }
  .product-specification .product-notes { font-size: 14px; }
  .product-primary-actions > .button { font-size: 14px; }
  .product-email-link { font-size: 13px; }
  .product-faq > summary, .product-faq > p { font-size: 14px; }
  .page-intro { padding-top: 43px; padding-bottom: 34px; }
  .page-intro-description { font-size: 15px; }
  .about-story > p:not(.eyebrow) { font-size: 15px; }
  .about-principles p { font-size: 15px; }
  .contact-information > p { font-size: 15px; }
  .contact-method { font-size: 16px; }
  .contact-method small { font-size: 12px; }
  .contact-service > p:last-child { font-size: 14px; }
  .inquiry-form label { font-size: 14px; }
  .inquiry-form input, .inquiry-form textarea { font-size: 16px; }
  .inquiry-form input::placeholder, .inquiry-form textarea::placeholder { font-size: 14px; }
  .visit-details > .fine-print { font-size: 14px; }
  .site-footer { padding-top: 50px; }
  .footer-bottom nav { font-size: 13px; gap: 20px; }
  .footer-bottom > p { font-size: 12px; }
  .footer-contact > .eyebrow { font-size: 12px; }
  .footer-contact > p:last-child { font-size: 14px; }
  .shortlist-item-name { font-size: 18px; }
  .shortlist-item-price, .shortlist-item-link { font-size: 13px; }
  .craft-section { padding-top: 45px; padding-bottom: 52px; gap: 30px; }
  .craft-image > figcaption { font-size: 12px; }
  .craft-copy > h2 { font-size: 46px; }
  .craft-copy > p:not(.eyebrow) { font-size: 15px; }
}
@media (max-width: 430px) {
  .header-inner { padding-left: 16px; padding-right: 16px; column-gap: 8px; }
  .hero-copy { top: 86px; }
  .cinematic-hero { height: 860px; }
  .hero-introduction { font-size: 16px; margin-top: 24px; }
  .hero-heading { font-size: 64px; max-width: 10.3ch; }
  .hero-specifications { font-size: 13px; max-width: 345px; }
  .hero-copy-actions { gap: 20px; align-items: center; }
  .hero-copy-actions > .button { font-size: 14px; padding: 17px 16px; }
  .hero-price { font-size: 20px; }
  .hero-price > span { font-size: 11px; }
  .hero-thumbnails { bottom: 137px; gap: 8px; }
  .hero-thumbnail { width: calc((100vw - var(--gutter)*2 - 24px)/4); height: 137px; }
  .hero-thumbnail-name { font-size: 12px; }
  .hero-thumbnail-index { font-size: 10px; }
  .hero-pagination > span { font-size: 10px; }
  .hero-pagination { margin-right: 5px; gap: 7px; }
  .hero-controls { gap: 7px; }
  .scroll-prompt { max-width: 140px; font-size: 11px; gap: 10px; }
  .circle-button { width: 44px; height: 44px; }
  .category-tile-label > h3 { font-size: 17px; }
  .category-tile-label > span { font-size: 12px; }
  .product-card-body h3 { font-size: 17px; }
  .product-category { font-size: 12px; }
  .product-card-meta { font-size: 14px; }
  .product-sku, .product-card-specs { font-size: 12px; }
  .catalog-intro > p { font-size: 15px; }
  .brand-words, .site-header--hero .brand-words { font-size: 14px; }
  .brand-words > span { font-size: 10px; }
  .js .menu-toggle { font-size: 14px; min-height: 44px; margin-right: 0; gap: 7px; }
  .shortlist-label { font-size: 14px; }
  .footer-bottom .brand-badge { height: 60px; width: 48px; }
  .footer-bottom .brand-badge img, .footer-bottom img.brand-badge { height: 60px; max-width: 48px; }
  .craft-copy > h2 { font-size: 43px; }
}
@media (max-width: 360px) {
  .shortlist-label { display: none; }
  .js .menu-toggle { margin-right: 10px; }
  .hero-copy-actions { gap: 14px; }
  .hero-copy-actions > .button { font-size: 12px; padding-left: 13px; padding-right: 13px; gap: 12px; }
  .hero-price { font-size: 18px; }
  .scroll-prompt { max-width: 115px; font-size: 10px; }
}

/* Responsive flow: content sets the phone hero height; no fixed phone viewport. */
:root {
  --safe-left: env(safe-area-inset-left, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --edge-left: max(var(--gutter), var(--safe-left));
  --edge-right: max(var(--gutter), var(--safe-right));
  --header-gutter: var(--gutter);
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scrollbar-gutter: stable;
}
.section-shell { padding-left: var(--edge-left); padding-right: var(--edge-right); }
.header-inner { padding-left: max(var(--header-gutter), var(--safe-left)); padding-right: max(var(--header-gutter), var(--safe-right)); }
.quote-band, .site-footer { padding-left: var(--edge-left); padding-right: var(--edge-right); }
.site-footer { padding-bottom: max(25px, var(--safe-bottom)); }
.form-row, .form-row > *, .inquiry-form, .inquiry-form label,
.contact-information, .product-information, .search-field, .sort-field,
.footer-top > *, .footer-contact, .shortlist-item > * { min-width: 0; }
.inquiry-form input, .inquiry-form textarea, .sort-field select { max-width: 100%; }
.product-information > h1, .product-card-body h3, .product-card-specs,
.product-item-number, .product-notes, .shortlist-item-name,
.shortlist-item-link, .footer-contact > a, .footer-contact > p,
.inquiry-piece > span, .form-status { overflow-wrap: anywhere; }
.footer-contact > a { max-width: 100%; }
.product-gallery-thumbnails { flex-wrap: wrap; }
.shortlist-item { grid-template-columns: 85px minmax(0, 1fr) 44px; }
.shortlist-remove { width: 44px; min-height: 44px; display: grid; place-items: center; }
button, .category-filter { -webkit-tap-highlight-color: transparent; }
.circle-button, .icon-button, .save-button { min-width: 44px; min-height: 44px; }
.save-button { width: 44px; height: 44px; }
.save-button--label { width: auto; height: auto; }
.text-button { min-height: 44px; }
.category-filter { min-height: 44px; }
html:has(dialog[open]) { overflow: hidden; }
dialog { overscroll-behavior: contain; }
.shortlist-dialog {
  height: 100vh;
  height: 100dvh;
  max-height: 100dvh;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(24px, var(--safe-right)) max(28px, var(--safe-bottom)) max(24px, var(--safe-left));
  overscroll-behavior: contain;
}
.image-dialog {
  width: calc(100% - 28px);
  max-width: 1100px;
  max-height: calc(100vh - 28px);
  max-height: calc(100dvh - max(28px, env(safe-area-inset-top, 0px)) - max(28px, var(--safe-bottom)));
  padding: max(60px, env(safe-area-inset-top, 0px)) max(14px, var(--safe-right)) max(18px, var(--safe-bottom)) max(14px, var(--safe-left));
}
.image-dialog > .icon-button { top: 10px; right: 10px; }
.image-dialog > img {
  max-width: 100%;
  max-height: calc(100vh - 120px);
  max-height: calc(100dvh - 120px - env(safe-area-inset-top, 0px) - var(--safe-bottom));
  width: auto;
  height: auto;
}
.toast { bottom: max(20px, var(--safe-bottom)); }
@media (max-width: 900px) {
  .js .primary-navigation {
    top: 100%;
    max-height: calc(100vh - 90px);
    max-height: calc(100dvh - 90px - var(--safe-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-left: var(--edge-left);
    padding-right: var(--edge-right);
    padding-bottom: max(24px, var(--safe-bottom));
  }
  .shortlist-open, .js .menu-toggle { min-height: 44px; }
  .shortlist-item { grid-template-columns: 64px minmax(0, 1fr) 44px; gap: 12px; }
  .shortlist-item-image { height: 85px; }
}
@media (max-width: 900px), (max-width: 1100px) and (orientation: landscape) and (max-height: 600px) {
  .cinematic-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    row-gap: clamp(22px, 4vw, 34px);
    height: auto;
    min-height: 0;
    max-height: none;
    padding: 0 var(--edge-right) max(24px, var(--safe-bottom)) var(--edge-left);
    touch-action: pan-y pinch-zoom;
  }
  /* Opacity/visibility retain the tallest slide's intrinsic grid size.
     Static slide boxes let the photos use the full positioned hero as their containing block. */
  .hero-slide {
    position: static;
    inset: auto;
    grid-area: 1 / 1;
    width: 100%;
    min-width: 0;
    align-self: start;
    display: block;
  }
  .hero-photograph { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 58% 35%; z-index: -2; }
  .hero-scrim { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #07120ae0, #07120a55), linear-gradient(0deg, #09120ef0, transparent 65%); }
  .hero-copy {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    max-width: 660px;
    margin: 0;
    padding-top: clamp(30px, 6vw, 52px);
    padding-bottom: 0;
    z-index: 2;
  }
  .hero-copy > .eyebrow { font-size: clamp(11px, 1.5vw, 12px); line-height: 1.6; letter-spacing: .09em; }
  .hero-introduction { font-size: clamp(16px, 2.1vw, 19px); line-height: 1.5; margin-top: 21px; margin-bottom: 16px; }
  .hero-heading { font-size: clamp(48px, 14vw, 86px); line-height: .97; max-width: 12ch; overflow-wrap: anywhere; }
  .hero-specifications { font-size: 13px; line-height: 1.65; max-width: 490px; min-height: 0; margin-top: 22px; }
  .hero-copy-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 24px; margin-top: 23px; }
  .hero-copy-actions > .button { max-width: 100%; font-size: 14px; min-height: 54px; padding: 16px 19px; gap: 18px; }
  .hero-price { font-size: 21px; line-height: 1.3; white-space: normal; overflow-wrap: anywhere; }
  .hero-price > span { font-size: 12px; margin-top: 6px; }
  .hero-thumbnails {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    grid-area: 2 / 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(8px, 1.6vw, 14px);
    width: 100%;
    max-width: 560px;
    min-width: 0;
    justify-self: end;
    margin-top: 10px;
    z-index: 4;
  }
  .hero-thumbnail {
    width: 100%;
    max-width: none;
    height: auto;
    min-height: clamp(132px, 36vw, 185px);
    aspect-ratio: 3 / 4;
  }
  .hero-thumbnail.is-active { transform: translateY(-8px); }
  .hero-thumbnail-name { font-size: clamp(12px, 1.9vw, 14px); line-height: 1.3; left: 10px; right: 10px; bottom: 16px; overflow-wrap: anywhere; }
  .hero-thumbnail-index { font-size: 11px; left: 10px; top: 10px; }
  .hero-bottom {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    grid-area: 3 / 1;
    width: 100%;
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding-top: 19px;
    margin: 0;
    z-index: 5;
  }
  .scroll-prompt { font-size: 12px; line-height: 1.5; max-width: 170px; gap: 12px; min-height: 44px; }
  .hero-controls { margin-left: auto; gap: 8px; }
  .hero-pagination { gap: 8px; margin-right: 4px; }
  .hero-pagination strong { font-size: 23px; }
  .hero-pagination > span { font-size: 11px; }
  .circle-button { width: 44px; height: 44px; }
  .product-information > h1 { font-size: clamp(32px, 7vw, 52px); line-height: 1.1; }
  .page-intro > h1 { font-size: clamp(40px, 10.5vw, 76px); }
  .catalog-intro h1 { font-size: clamp(38px, 9.5vw, 70px); }
  .product-detail, .contact-layout, .visit-layout { min-width: 0; }
  .form-row > *, .inquiry-piece > span { min-width: 0; }
  .email-draft { font-size: 16px !important; }
  .selection-fallback > textarea { font-size: 16px; }
}
@media (max-width: 430px) {
  :root { --header-gutter: 16px; }
  .header-inner { column-gap: 8px; }
  .js .menu-toggle { margin-right: 0; }
  .hero-controls { gap: 7px; }
  .hero-pagination { margin-right: 2px; }
  .scroll-prompt { max-width: 130px; }
  .hero-bottom { gap: 12px; }
}
@media (max-width: 360px) {
  :root { --header-gutter: 12px; }
  .header-inner { column-gap: 6px; }
  .site-header .brand { gap: 7px; }
  .site-header .brand-badge, .site-header img.brand-badge { height: 52px; max-width: 43px; width: auto; }
  .site-header .brand-words { font-size: 13px; letter-spacing: .035em; }
  .site-header .brand-words > span { font-size: 9px; letter-spacing: .2em; }
  .js .menu-toggle { font-size: 13px; gap: 7px; margin-right: 0; }
  .shortlist-open { padding-left: 6px; padding-right: 6px; gap: 5px; }
  .shortlist-label { display: none; }
  .shortlist-count { width: 20px; height: 20px; }
  .hero-copy-actions { gap: 16px; }
  .hero-copy-actions > .button { font-size: 13px; padding-left: 16px; padding-right: 16px; }
  .hero-price { font-size: 20px; }
  .scroll-prompt { max-width: none; }
  .hero-bottom { gap: 8px 14px; }
}
@media (orientation: landscape) and (max-height: 500px) and (max-width: 1100px) {
  .hero-copy { padding-top: 28px; max-width: 720px; }
  .hero-heading { font-size: clamp(48px, 8vw, 72px); max-width: 15ch; }
  .hero-introduction { margin-top: 16px; }
  .hero-thumbnails { max-width: 465px; }
  .hero-thumbnail { min-height: 130px; aspect-ratio: 4 / 5; }
  .js .primary-navigation { max-height: calc(100dvh - 90px - var(--safe-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-thumbnail.is-active { transform: none; }
}

