/* October client revision: browsing, campaign imagery, material and size choices. */
.ring-sizes {border:0;padding:0;margin:28px 0 12px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.ring-sizes legend {padding:0;margin-bottom:14px;font-size:14px}
.ring-sizes label {position:relative;margin:0!important;cursor:pointer}
.ring-sizes input {position:absolute;width:1px;height:1px;opacity:0;inset:50% auto auto 50%;margin:0;padding:0}
.ring-sizes span {display:grid;place-items:center;min-height:44px;border:1px solid var(--line);font-size:14px}
.ring-sizes input:checked+span {background:var(--charcoal,#282827);color:#fff;border-color:var(--charcoal,#282827)}
.ring-sizes input:focus-visible+span {outline:2px solid var(--red);outline-offset:3px}
[data-add-to-bag] select {width:100%;min-height:48px;padding:12px;border:1px solid var(--line);background:var(--paper);font:inherit;margin-top:10px}
.studio-entry {display:flex;width:max-content;max-width:100%;margin:18px 0 0;font-size:13px;gap:32px}
[data-page=collection] .product-visual {touch-action:pan-y;user-select:none;-webkit-user-select:none}
[data-page=collection] .product-visual img {-webkit-user-drag:none}
.gallery-thumbnails button span:last-child {white-space:normal;line-height:1.35}
.page-transition {position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;z-index:10000!important;transition:opacity .22s ease!important}
.page-transition.is-departing>img {visibility:visible!important;opacity:1;animation:none!important;transform:none!important}
.page-transition.is-intro>img {visibility:visible!important;width:var(--logo-size,210px)!important;height:var(--logo-size,210px)!important;opacity:0;transform:scale(.985);transition:none}
.page-transition.is-intro.logo-formed>img {opacity:1;transform:scale(1);transition:opacity .5s ease,transform 1.3s cubic-bezier(.2,.7,.2,1)}
.page-transition.is-intro {transition:none!important}
.page-transition.is-intro.is-revealing {transition:opacity .65s ease!important}
.page-transition.is-intro.is-revealing>img {transform:scale(1.03);transition:transform .65s ease}
.logo-particles {position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.page-transition.is-revealing {pointer-events:none}
.hero-copy .eyebrow {font-family:Jost,Arial,sans-serif!important;font-style:normal!important;letter-spacing:.17em;font-weight:400}
.hero-slideshow {position:relative;min-width:0;min-height:580px;overflow:hidden;background:#d9d7d2}
.hero-slideshow figure {margin:0;position:absolute;inset:0;opacity:0;transition:opacity 1s ease;pointer-events:none}
.hero-slideshow figure.is-current {opacity:1}
.hero-slideshow img {display:block;width:100%;height:100%;object-fit:cover;object-position:center 44%}
.hero-slideshow .slide-controls {position:absolute;inset:auto 18px 18px;display:flex;gap:6px;justify-content:center;align-items:center;z-index:2}
.slide-controls button {min-width:44px;min-height:44px;border:0;background:rgb(250 248 243 / .94);color:#282827;cursor:pointer;font:12px Jost,sans-serif}
.slide-controls button[aria-pressed=true] {background:#282827;color:#fff}
.home-hero.has-slideshow .hero-layout {grid-template-columns:1fr 1fr;background:var(--paper)}
.home-hero.has-slideshow .hero-copy {padding:clamp(28px,5vw,80px);background:#360000;color:#faf5ed;display:flex;flex-direction:column;justify-content:center}
.home-hero.has-slideshow .hero-copy h1 {font-size:clamp(36px,4.7vw,76px);line-height:1.15;color:inherit}
.home-hero.has-slideshow .hero-copy em {color:#d3b88b}
.home-hero.has-slideshow .hero-copy .eyebrow {color:#e0cdb2}
.home-hero.has-slideshow .hero-media {background:none}
.house-image-hero {display:grid;grid-template-columns:1fr 1fr;align-items:center;border-bottom:12px solid #360000;padding-bottom:0!important}
.house-image-hero .photo-heading {position:relative;min-height:600px;display:flex;align-items:center;overflow:hidden}
.house-image-hero .photo-heading>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mask-image:linear-gradient(to right,#000 75%,transparent)}
.house-image-hero .photo-heading>div {position:relative;background:rgb(245 242 235 / .7);backdrop-filter:blur(5px);padding:30px;margin:25px 40px 25px 0}
.house-image-hero h1 {font-size:clamp(32px,3.3vw,56px);line-height:1.2;margin:12px 0}
.house-image-hero .intro {padding:40px;max-width:58ch}
.photo-placement-note {font-size:12px;color:var(--muted);line-height:1.5}
.house-approach-photo {width:100%;max-height:640px;object-fit:cover;display:block;margin-top:32px}
.founders-layout.founders-pair {display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,7vw,110px);align-items:start}
.founders-pair article {border:0;padding:0;margin:0;max-width:none}
.founders-pair figure {margin:0 0 30px}
.founders-pair img {display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.founders-pair figcaption {font-size:12px;color:var(--muted);margin-top:8px}
.origin-reference {margin:45px 0 20px}
.origin-reference img {display:block;width:100%;height:auto}
.origin-reference figcaption {font-size:12px;margin-top:12px}
.contact-campaign {display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:30px}
.contact-campaign .page-hero {padding:35px 0;width:auto;max-width:none;margin:0}
.contact-campaign h1 {font-size:clamp(38px,4.5vw,68px)}
.contact-campaign figure {margin:0;position:relative}
.contact-campaign img {width:100%;height:500px;object-fit:cover;mask-image:linear-gradient(to left,#000 78%,transparent)}
.contact-campaign figcaption {font-size:12px;color:var(--muted);margin-top:8px}
@media(max-width:800px){
 .home-hero.has-slideshow .hero-layout,.house-image-hero,.contact-campaign {grid-template-columns:1fr}
 .hero-slideshow {min-height:560px}
 .home-hero.has-slideshow .hero-copy {padding:35px 26px}
 .house-image-hero .photo-heading {min-height:500px}
 .house-image-hero .photo-heading>img {mask-image:linear-gradient(to bottom,#000 80%,transparent)}
 .house-image-hero .intro {padding:20px 0 35px}
 .house-image-hero .photo-heading>div {margin:24px;padding:22px}
 .contact-campaign {gap:0}
 .contact-campaign img {height:auto;max-height:560px;object-fit:contain;mask-image:none}
 .founders-layout.founders-pair {gap:24px}
}
@media(max-width:480px){.ring-sizes {grid-template-columns:repeat(5,minmax(0,1fr))}.hero-slideshow {min-height:460px}.founders-layout.founders-pair {grid-template-columns:1fr}.founders-pair img {aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.hero-slideshow figure,.page-transition {transition:none!important}}
#approach figure {margin:30px 0 0}
#approach figure img {display:block;width:100%;max-height:530px;object-fit:cover;object-position:50% 28%}
.origin-reference {max-width:600px;margin:50px auto}
.origin-reference figure {margin:0}
.origin-reference img {max-height:650px;object-fit:cover}
.home-hero.has-slideshow .hero-layout {padding:0;gap:0}
.founders-layout.founders-pair article+article {border-top:0;margin-top:0;padding-top:0}
.founders-layout.founders-pair img {height:auto;aspect-ratio:2/3;object-fit:contain;background:#edeae5}
.house-image-hero .photo-heading>img {object-position:center top}
#approach figure img {object-position:center top}
.home-hero.has-slideshow .hero-copy {margin:0;align-self:stretch}
.page-transition.active {pointer-events:auto}
/* Preserve the client's horizontal film composition at every screen size. */
.home-hero.has-campaign .hero-layout {display:flex;flex-direction:column;padding:0;min-height:0;background:#360000}
.home-hero.has-campaign .hero-copy {order:1;position:static;align-self:stretch;max-width:none;padding:clamp(28px,4vw,58px);margin:0;color:var(--paper);pointer-events:auto}
.home-hero.has-campaign .hero-copy h1 {font-size:clamp(34px,4.4vw,68px);line-height:1.1;color:inherit}
.home-hero.has-campaign .hero-copy em {color:#d3b88b}
.home-hero.has-campaign .hero-copy .eyebrow {color:#e0cdb2}
.home-hero.has-campaign .hero-layout>.campaign-film {position:relative;inset:auto;order:0;background:var(--paper);line-height:0}
.home-hero.has-campaign .campaign-film::after {display:none}
.home-hero.has-campaign .campaign-film video {display:block;aspect-ratio:16/9;width:100%;height:auto;max-height:none;object-fit:contain;filter:none}
.home-hero.has-campaign .film-toggle {position:absolute;bottom:16px;right:16px;line-height:1.2;margin:0;background:rgb(250 248 243 / .94);border:0}
.home-hero.has-campaign .film-status:not(:empty) {position:relative;line-height:1.5;padding:14px;margin:0;background:var(--paper)}
.origin-reference:has(figure+figure) {display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,4vw,56px);max-width:1100px;align-items:start}
.origin-reference:has(figure+figure) figure:nth-child(2) {margin-top:80px}
.origin-reference:has(figure+figure) img {height:auto;max-height:none;object-fit:contain}
@media(max-width:600px){.origin-reference:has(figure+figure) {gap:16px}.origin-reference:has(figure+figure) figure:nth-child(2){margin-top:35px}.home-hero.has-campaign .film-toggle{bottom:10px;right:10px}.home-hero.has-campaign .hero-copy h1 br {display:block}}

/* Campaign photographs fill the hero; the existing collection design stays intact. */
.home-hero.has-slideshow{padding:0}
.home-hero.has-slideshow .hero-layout{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;min-height:clamp(600px,calc(100svh - var(--header-height,88px)),960px);background:#34322f}
.home-hero.has-slideshow .hero-slideshow{position:absolute;inset:0;min-height:0;z-index:-2}
.home-hero.has-slideshow .hero-slideshow::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.56),rgba(0,0,0,.12) 65%),linear-gradient(0deg,rgba(0,0,0,.28),transparent 60%)}
.home-hero.has-slideshow .hero-slideshow img{object-position:center 32%}
.home-hero.has-slideshow .hero-slideshow figure:first-child img{object-position:center 28%}
.home-hero.has-slideshow .hero-copy{align-self:end;justify-content:end;max-width:calc(606px + var(--gutter) * 2);margin:0;padding:72px var(--gutter) 108px;background:transparent;color:#fff;pointer-events:none}
.home-hero.has-slideshow .hero-copy h1{font-size:clamp(38px,4.7vw,72px);line-height:1.12;margin:22px 0 28px;max-width:15ch;text-shadow:0 1px 14px #0002}
.home-hero.has-slideshow .hero-copy em,.home-hero.has-slideshow .hero-copy .eyebrow{color:inherit}
.home-hero.has-slideshow .hero-cta{padding:0;pointer-events:auto;align-self:start}
.home-hero.has-slideshow .hero-cta .button{background:var(--charcoal);border-color:#faf9f580;color:#fff}
.home-hero.has-slideshow .slide-controls{inset:auto var(--gutter) 24px;justify-content:flex-end;z-index:1}
.home-hero.has-slideshow .slide-controls button{background:transparent;color:#fff;border-bottom:1px solid #ffffff50}
.home-hero.has-slideshow .slide-controls button[aria-pressed=true]{border-bottom:2px solid #fff}
.home-hero.has-slideshow .slide-controls button:focus-visible{outline-color:#fff}
@media(max-width:700px){
 .home-hero.has-slideshow .hero-layout{min-height:max(620px,calc(100svh - var(--header-height,76px)))}
 .home-hero.has-slideshow .hero-copy{padding:190px var(--gutter) 100px;max-width:100%}
 .home-hero.has-slideshow .hero-copy h1{font-size:clamp(32px,8.6vw,52px)}
 .home-hero.has-slideshow .hero-copy .eyebrow{font-size:.65rem}
 .home-hero.has-slideshow .hero-slideshow::after{background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.04) 85%)}
 .home-hero.has-slideshow .slide-controls{justify-content:flex-start;bottom:20px}
}
/* October 18: six process photographs near "The ring built the idea" read as a three-column sequence. */
.origin-reference:has(figure:nth-child(5)) {grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px}
.origin-reference:has(figure:nth-child(5)) figure:nth-child(2) {margin-top:0}
.origin-reference:has(figure:nth-child(5)) figure:nth-child(3n+2) {margin-top:80px}
@media(max-width:600px){.origin-reference:has(figure:nth-child(5)) {grid-template-columns:1fr 1fr}.origin-reference:has(figure:nth-child(5)) figure:nth-child(3n+2) {margin-top:0}.origin-reference:has(figure:nth-child(5)) figure:nth-child(even) {margin-top:35px}}
/* The October 17 hero photograph has more headroom than the interim frame: keep the face above the smoke-screen panel. */
.house-image-hero .photo-heading>img {object-position:50% 40%}
@media(max-width:800px){.house-image-hero .photo-heading {align-items:flex-end}}
/* Launch-day revision (Taylor, 2026-10-19). */
/* Home: the words sit over the campaign film rather than in a band beneath it. */
.home-hero.has-campaign .hero-layout {display:grid;grid-template-columns:1fr;background:#1d1c1b}
.home-hero.has-campaign .hero-layout>.campaign-film {grid-area:1/1;position:relative;order:0}
.home-hero.has-campaign .hero-layout>.campaign-film::after {content:'';display:block;position:absolute;inset:0;background:linear-gradient(0deg,rgb(0 0 0 / .55),rgb(0 0 0 / .18) 55%,rgb(0 0 0 / .3));pointer-events:none}
.home-hero.has-campaign .hero-copy {grid-area:1/1;z-index:1;align-self:center;justify-self:center;text-align:center;background:none;color:#fff;pointer-events:none;text-shadow:0 1px 18px rgb(0 0 0 / .35)}
.home-hero.has-campaign .hero-copy em {color:#e6cf9f}
.home-hero.has-campaign .hero-copy .eyebrow {color:#f1e6d4}
.home-hero.has-campaign .hero-cta {pointer-events:auto}
.home-hero.has-campaign .film-toggle {z-index:2}
@media(max-width:700px){.home-hero.has-campaign .campaign-film video {aspect-ratio:4/5;object-fit:cover}.home-hero.has-campaign .hero-copy {align-self:end;padding:28px var(--gutter) 72px}.home-hero.has-campaign .hero-copy h1 {font-size:clamp(30px,8.4vw,44px)}}
/* House: show her hands and rings; a lighter, smaller panel sits over the plinth instead of her hands. */
.house-image-hero .photo-heading {min-height:clamp(600px,56vw,800px);align-items:flex-end}
.house-image-hero .photo-heading>img {object-position:50% 92%}
.house-image-hero .photo-heading>div {background:rgb(250 248 243 / .55);backdrop-filter:blur(2px);padding:20px 24px;margin:0 40px 28px 0}
.house-image-hero .photo-heading h1 {font-size:clamp(26px,2.5vw,40px)}
@media(max-width:800px){.house-image-hero .photo-heading {min-height:clamp(520px,150vw,720px)}.house-image-hero .photo-heading>img {object-position:50% 38%}.house-image-hero .photo-heading>div {margin:0 16px 16px;padding:14px 18px}.house-image-hero .photo-heading h1 {font-size:24px;margin:6px 0 0}}
/* House: the approach photograph is the backdrop for "Form without Convention". */
.has-approach-photo {position:relative;isolation:isolate;overflow:hidden;min-height:clamp(560px,52vw,760px);padding-block:clamp(56px,7vw,110px);color:#fff;align-content:end}
.has-approach-photo .approach-photo {position:absolute;inset:0;z-index:-1}
.has-approach-photo .approach-photo img {width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.has-approach-photo .approach-photo::after {content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgb(18 17 16 / .72),rgb(18 17 16 / .25) 60%,rgb(18 17 16 / .5))}
.has-approach-photo .eyebrow {color:#e5c989}
.has-approach-photo h2 em {color:inherit}
.has-approach-photo .prose p {color:#fff}
@media(max-width:800px){.has-approach-photo .approach-photo img {object-position:62% 30%}.has-approach-photo .approach-photo::after {background:rgb(18 17 16 / .58)}}
/* Collection: the fur photograph is the backdrop; the words sit in the fur above the strand. */
[data-page=collection] .page-hero.has-photo {position:relative;isolation:isolate;overflow:hidden;background:#2a0505;min-height:clamp(480px,46vw,720px);align-content:start;padding-block:clamp(48px,5vw,84px) 0}
.collection-hero-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;z-index:-1}
[data-page=collection] .page-hero.has-photo::before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgb(30 4 4 / .55),rgb(30 4 4 / .1) 45%,transparent 60%)}
[data-page=collection] .page-hero.has-photo h1 {color:#fff}
@media(max-width:700px){[data-page=collection] .page-hero.has-photo {min-height:clamp(600px,165vw,720px)}.collection-hero-photo {object-position:50% 0%}}
/* Product gallery: picture-only thumbnails (Taylor, 2026-10-19). */
.gallery-thumbnails button {padding:0}
.gallery-thumbnails button img {height:4.25rem}
.gallery-caption:empty,.gallery-availability:empty {display:none}
/* Contact: the photograph is a full-bleed background behind the words, under a dark wash so the text stays readable (Taylor, 2026-10-19). */
.contact-campaign.has-photo {position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;min-height:clamp(560px,46vw,720px);padding:0;gap:0;background:#1e1a18;color:#fff}
.contact-campaign.has-photo .contact-hero-photo {position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:35% 22%;z-index:-2;mask-image:none}
.contact-campaign.has-photo::before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgb(20 10 8 / .25) 0%,rgb(20 10 8 / .55) 45%,rgb(20 10 8 / .78) 100%)}
.contact-campaign.has-photo .page-hero {grid-column:2;padding:56px var(--gutter) 56px 24px;margin:0}
.contact-campaign.has-photo .eyebrow {color:#e5c989}
.contact-campaign.has-photo h1,.contact-campaign.has-photo h1 em,.contact-campaign.has-photo .intro {color:#fff}
@media(max-width:800px){.contact-campaign.has-photo {grid-template-columns:1fr;align-items:end;min-height:clamp(560px,150vw,680px)}.contact-campaign.has-photo .contact-hero-photo {object-position:40% 15%}.contact-campaign.has-photo::before {background:linear-gradient(180deg,rgb(20 10 8 / .1) 0%,rgb(20 10 8 / .35) 40%,rgb(20 10 8 / .82) 75%)}.contact-campaign.has-photo .page-hero {grid-column:1;padding:32px var(--gutter) 36px}}
