@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/cormorant-cyrillic.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/cormorant-latin.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/cormorant-italic-cyrillic.woff2') format('woff2');font-weight:300 700;font-style:italic;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/cormorant-italic-latin.woff2') format('woff2');font-weight:300 700;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --font-display:'Cormorant Garamond',Georgia,serif;
  --sapphire:#3c507d;
  --royal:#112250;
  --gold:#e0c58f;
  --electric:#245cff;
  --photo-ground:#f3f5f8;
  --swan:#f5f0e9;
  --shell:#d9cbc2;
  --ink:#112250;
  --paper:#fff;
  --white:#fff;
  --accent:#e0c58f;
  --muted:#46516b;
  --line:rgba(17,34,80,.2);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;font-size:clamp(1rem,.75rem + .5vw,1.375rem)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:1rem;line-height:1.65;overflow-x:hidden}
::selection{background:var(--gold);color:var(--royal)}
:focus-visible{outline:2px solid var(--electric);outline-offset:4px}
a{color:inherit;text-decoration:none}
img,video{display:block;width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:92px;padding:0 3vw;display:flex;align-items:center;gap:28px;border-bottom:1px solid rgba(224,197,143,.32);background:rgba(17,34,80,.98);color:var(--swan);position:sticky;top:0;z-index:20}
.wordmark{width:64px;height:64px;display:grid;place-items:center;flex:0 0 auto}
.brand-mark{width:60px;height:60px;object-fit:contain;filter:saturate(1.5) brightness(1.12)}
.nav{margin-left:auto;display:flex;gap:1.15rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.045em}
.nav a{padding:.5rem 0;border-bottom:1px solid transparent}
.nav a:hover,.nav a.active{border-color:var(--electric);color:var(--gold)}
.phone{font-size:.9rem;color:var(--gold);white-space:nowrap}
.menu-button{display:none;border:0;background:none;color:var(--gold);font:inherit;padding:.5rem}
.eyebrow{margin:0 0 2rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;color:var(--sapphire)}
h1,h2{margin:0;font-family:var(--font-display);font-weight:500;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(3.6rem,7vw,6rem)}
h1 em{color:var(--gold);font-style:italic}
h2{font-size:clamp(3rem,5vw,5.5rem)}
h3{font-family:var(--font-display);font-weight:600;font-size:1.75rem;line-height:1.2}
.text-link{display:inline-flex;padding-bottom:.45rem;border-bottom:1px solid;font-size:.9rem;text-transform:uppercase;letter-spacing:.065em}
.button{margin-top:1.5rem;background:var(--gold);color:var(--royal);padding:.9rem 1.4rem;font-weight:600}
.home-hero{min-height:calc(100svh - 92px);display:grid;grid-template-columns:.9fr 1.1fr;background:var(--royal);color:var(--swan)}
.home-hero-copy{padding:7vw 4vw 4vw;display:flex;flex-direction:column;align-items:flex-start}
.home-hero-copy .eyebrow{color:var(--gold)}
.home-hero-copy>p:not(.eyebrow){max-width:32rem;margin:auto 0 2rem;color:var(--shell)}
.home-hero-media{margin:0;position:relative;min-height:42rem;overflow:hidden}
.home-hero-media img{height:100%;object-fit:cover;transition:transform .8s ease}
.home-hero-media:hover img{transform:scale(1.025)}
.home-hero-media figcaption{position:absolute;right:1.4rem;bottom:1.2rem;color:#fff;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}
.directions{padding:8rem 5vw;background:var(--swan)}
.directions-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:4rem}
.directions-heading .eyebrow{margin:0;padding-bottom:.6rem}
.direction-stack{display:grid;gap:1.1rem}
.direction-row{height:clamp(340px,48vw,660px);position:relative;overflow:hidden;color:#fff}
.direction-row img{height:100%;object-fit:cover;transition:transform .7s ease}
.direction-row:hover img{transform:scale(1.025)}
.direction-custom{background:var(--royal)}
.direction-resale{background:#eee4d8}
.direction-custom,.direction-resale{height:clamp(420px,62vw,1800px)}
.direction-custom img,.direction-resale img{object-fit:cover;object-position:center 50%}
.direction-orthodox{background:var(--photo-ground)}
.direction-orthodox img{object-fit:contain}
.direction-orthodox .direction-shade{background:linear-gradient(180deg,transparent 45%,rgba(17,34,80,.08) 60%,rgba(17,34,80,.78) 100%)}
.direction-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,34,80,.05),rgba(17,34,80,.82))}
.direction-number,.direction-copy,.direction-link{position:absolute;z-index:1}
.direction-number{top:1.5rem;left:1.7rem;color:var(--gold);font-size:.8rem;letter-spacing:.12em}
.direction-orthodox .direction-number{color:var(--royal)}
.direction-copy{left:1.7rem;bottom:1.7rem;display:grid;gap:.35rem}
.direction-copy b{font:400 clamp(2.4rem,5vw,5.5rem)/1 var(--font-display)}
.direction-copy small{font-size:.9rem;letter-spacing:.04em}
.direction-link{right:1.7rem;bottom:2rem;border-bottom:1px solid var(--gold);padding-bottom:.35rem;color:var(--gold);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}
.rates{min-height:48px;padding:.7rem 4vw;background:var(--sapphire);color:var(--swan);display:flex;gap:1.5rem;align-items:center;font-size:.8rem}
.rates span{color:var(--shell)}
.rates a{margin-left:auto;color:var(--gold)}
.hero{min-height:680px;display:grid;grid-template-columns:1fr 1.15fr;background:var(--swan)}
.hero-copy{padding:9vw 6vw 7vw 8vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero-copy>p:not(.eyebrow){max-width:500px;color:var(--muted)}
.hero-copy h1 em{color:var(--sapphire)}
.hero-image{margin:0;position:relative;overflow:hidden;background:var(--shell)}
.hero-image img{height:100%;object-fit:cover}
.hero-image figcaption{position:absolute;bottom:1.4rem;left:1.4rem;background:var(--royal);color:var(--gold);padding:.7rem .9rem;font-size:.8rem}
.custom-hero .hero-image{background:#f4f0e9}
.custom-hero .hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.intro,.works,.possibilities,.catalog-page{padding:8rem 6vw}
.intro{background:var(--white)}
.lead{max-width:720px;font-size:1.12rem;color:var(--muted)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3.5rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.price-grid article{min-height:14rem;padding:1.8rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.price-grid article>span{font-size:.75rem;color:var(--sapphire)}
.price-grid p,.section-heading p,.possibilities>p:last-child{color:var(--muted)}
.source-links{display:flex;gap:.9rem;margin-top:2rem}
.source-links a{border:1px solid var(--royal);padding:.8rem 1rem;font-size:.85rem}
.fineprint{max-width:850px;color:var(--muted);font-size:.8rem}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:2.8rem}
.section-heading>p{max-width:450px}
.process{background:var(--royal);color:var(--swan);padding:6rem 8vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center}
.process .eyebrow{color:var(--gold)}
.process p:not(.eyebrow){color:var(--shell)}
.process video{max-height:650px;object-fit:contain;background:#081230}
.possibilities{background:#fff}
.product-list{display:flex;flex-wrap:wrap;gap:.65rem;margin:2rem 0}
.product-list span{border:1px solid var(--royal);border-radius:999px;padding:.7rem 1.1rem}
.product-slider{margin-top:3rem;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(290px,36vw);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 1.25rem;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--sapphire) rgba(17,34,80,.12);cursor:grab}
.product-slider:active{cursor:grabbing}
.product-slider::-webkit-scrollbar{height:8px}
.product-slider::-webkit-scrollbar-track{background:rgba(17,34,80,.12);border-radius:999px}
.product-slider::-webkit-scrollbar-thumb{background:var(--sapphire);border-radius:999px}
.slide-card{margin:0;background:var(--swan);scroll-snap-align:start}
.slide-card img{aspect-ratio:4/5;object-fit:cover}
.slide-card figcaption{padding:1rem;display:flex;justify-content:space-between;gap:1rem;font-size:.85rem}
.slider-heading{margin-top:3rem;display:flex;align-items:end;justify-content:space-between;gap:1rem}.slider-heading p{margin:0;font-family:var(--font-display);font-size:1.45rem}.slider-heading>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--sapphire)}
.slider-note{margin-top:1rem;color:var(--muted);font-size:.8rem}
.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin:4rem 0 1.6rem}
.gallery-heading .eyebrow{margin-bottom:.8rem}
.gallery-heading h3,.catalog-excerpt h3{margin:0;font-size:clamp(1.7rem,3vw,2.5rem)}
.gallery-heading>p{max-width:390px;margin:0;color:var(--muted)}
.gallery-heading-secondary{margin-top:5rem}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.work-card{display:block;min-width:0;background:var(--white);border:1px solid var(--line);transition:transform .2s ease,box-shadow .2s ease}
.work-card:hover,.work-card:focus-visible{transform:translateY(-3px);box-shadow:0 14px 30px rgba(17,34,80,.13)}
.work-card:focus-visible{outline:3px solid var(--sapphire);outline-offset:3px}
.work-card img{height:auto;aspect-ratio:1/1;object-fit:cover;background:#fff}
.work-card-copy{display:grid;padding:1.05rem 1.15rem 1.3rem}
.work-card-copy b{font:400 1.28rem/1.35 var(--font-display)}
.gallery-note{margin:1.3rem 0 0;color:var(--muted);font-size:.85rem;max-width:780px}
.orthodox-grid{margin-top:2.5rem}
.cross-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.collection-hero{display:grid;grid-template-columns:1fr 1.1fr;min-height:560px;background:var(--royal);color:var(--swan)}
.collection-hero-copy{min-width:0;padding:5rem 6vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.collection-hero-copy h1{font-size:clamp(2.5rem,4.8vw,5.2rem);overflow-wrap:anywhere}
.collection-hero-copy p{max-width:34rem;color:var(--shell)}
.collection-hero-copy .text-link{margin-top:1rem;color:var(--gold)}
.collection-hero-media{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:var(--photo-ground)}
.collection-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.resale-hero .collection-hero-media img{object-fit:cover}
.orthodox-hero h1{letter-spacing:-.03em}
.orthodox-page>h2{font-size:clamp(2.2rem,4vw,4rem);letter-spacing:-.03em}
.cross-category{display:block;position:relative;isolation:isolate;overflow:hidden;height:clamp(480px,42vw,680px);margin-top:3rem;background:var(--photo-ground)}
.cross-category-image{position:absolute;inset:0;overflow:hidden;background:var(--photo-ground)}
.cross-category-image img{height:calc(100% - 90px);aspect-ratio:auto;object-fit:contain;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.cross-category::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 48%,rgba(17,34,80,.08) 58%,rgba(17,34,80,.35) 70%,rgba(17,34,80,.69) 80%,rgba(17,34,80,.75) 90%,rgba(17,34,80,.8) 100%);pointer-events:none}
.cross-category-copy{position:absolute;z-index:2;inset:auto 0 0;display:flex;flex-direction:column;align-items:center;justify-content:end;padding:1.5rem;text-align:center;color:var(--white)}
.cross-category h3{margin:0;font:500 clamp(1.15rem,2vw,1.5rem)/1.3 Manrope,Arial,sans-serif;letter-spacing:.065em;text-transform:uppercase}
.category-description{max-width:52ch;font:400 .95rem/1.65 var(--font-display);color:rgba(255,253,249,.94)}
.category-action{display:inline-flex;align-items:center;gap:.75rem;margin-top:.75rem;padding-bottom:.4rem;border-bottom:1px solid rgba(224,197,143,.65);font-size:.9rem;color:var(--white);min-height:44px}
.custom-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3rem}
.custom-category-grid .cross-category{height:auto;aspect-ratio:1;margin-top:0;min-width:0}
.custom-category-grid .cross-category-image img{height:100%;padding:0;object-fit:cover}
.orthodox-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:3rem}
.orthodox-category-grid .cross-category{height:clamp(390px,36vw,580px);margin-top:0;min-width:0}
.orthodox-category-grid .cross-category-image img{padding:clamp(8px,1vw,20px)}
.custom-category-grid .cross-category::after{background:linear-gradient(180deg,transparent 45%,rgba(17,34,80,.15) 60%,rgba(17,34,80,.66) 80%,rgba(17,34,80,.85) 100%)}
.custom-model-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.custom-model-grid .work-card{border:0;background:transparent;box-shadow:none}
.custom-model-grid .work-card-copy{padding:1.25rem 0;border-bottom:1px solid var(--line)}
.custom-model-grid .work-card img{object-fit:contain}
.category-action svg{width:24px;height:24px;color:var(--gold)}
.cross-category:hover img{transform:scale(1.025)}
.cross-category:focus-visible,.cross-model:focus-visible{outline:3px solid var(--sapphire);outline-offset:5px}
.cross-catalog{padding:2.5rem 6vw 6rem;min-height:75svh}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;font-size:.82rem;color:var(--muted)}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.cross-catalog-heading{margin:3.5rem 0 3rem;display:flex;align-items:end;justify-content:space-between;gap:3rem}
.cross-catalog-heading h1{font-size:clamp(2.4rem,5vw,5.2rem);line-height:1.15;letter-spacing:-.03em;text-wrap:balance}
.cross-catalog-heading p{max-width:35ch;margin:0;color:var(--muted)}
.cross-model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2vw,2rem)}
.cross-model{display:block;min-width:0}
.cross-model-image{display:block;overflow:hidden;background:var(--photo-ground)}
.cross-model-image img{aspect-ratio:4/5;height:auto;object-fit:contain;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.cross-model:hover img{transform:scale(1.025)}
.cross-model-copy{display:grid;gap:.85rem;padding:1rem 0 .4rem}
.cross-model-copy b{font:600 1.35rem/1.25 var(--font-display)}
.cross-model-specs{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.2rem .8rem;color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums;padding-bottom:.8rem;border-bottom:1px solid var(--line)}
.sku-copy{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;border:0;padding:.25rem .15rem;background:transparent;color:var(--royal);font:600 1em/1.4 Manrope,Arial,sans-serif;font-variant-numeric:tabular-nums;cursor:pointer;text-decoration:underline;text-decoration-color:var(--electric);text-underline-offset:5px}
.sku-copy:hover{color:var(--electric)}
.sku-copy svg{width:15px;height:15px;flex-shrink:0;color:var(--electric)}
.copy-feedback{position:fixed;z-index:100;left:50%;bottom:1.5rem;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 2rem);background:var(--royal);color:#fff;padding:.85rem 1.2rem;text-align:center;font-size:.85rem;box-shadow:0 8px 24px rgba(3,10,31,.2)}
.cross-catalog-help{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--line)}
.cross-catalog-help p{margin:0;color:var(--muted)}
.cross-catalog .text-link{flex-shrink:0}
.cross-catalog ::selection,.orthodox-page ::selection{background:var(--gold);color:var(--royal)}
.gallery-dialog{border:0;padding:0;width:min(96vw,1120px);max-width:96vw;max-height:94svh;overflow:auto;background:#fff;color:var(--royal);box-shadow:0 25px 80px rgba(0,0,0,.35)}
.gallery-dialog::backdrop{background:rgba(3,10,31,.85)}
.gallery-view{display:grid;grid-template-rows:auto minmax(80px,1fr) auto;height:min(94svh,1000px);padding:1rem}
.gallery-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;padding-bottom:.5rem}
.gallery-tools{display:flex;align-items:center;gap:1rem;margin-left:auto}
.gallery-bottom{display:grid;justify-items:center;gap:.6rem;padding:.8rem .5rem .2rem;text-align:center;min-width:0}
.gallery-title{font:600 1.4rem/1.2 var(--font-display);overflow-wrap:anywhere}
.gallery-close,.gallery-prev,.gallery-next{border:0;cursor:pointer;font:inherit}
.gallery-close{background:transparent;color:var(--royal);padding:.35rem .2rem;font-size:.85rem;border-bottom:1px solid var(--royal)}
.gallery-stage{min-height:0;display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;grid-template-rows:minmax(0,1fr);align-items:center;gap:.4rem;position:relative}
.gallery-photo{grid-column:1;grid-row:1;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;overscroll-behavior:contain}
.gallery-image{display:block;min-height:0;min-width:0;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;touch-action:pan-y pinch-zoom}
.gallery-count{display:block;padding:.45rem .15rem;border-bottom:1px solid var(--gold);background:transparent;color:var(--royal);font:500 .85rem/1.2 Manrope,Arial,sans-serif;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.gallery-count[hidden]{display:none}
.gallery-prev,.gallery-next{grid-row:1;z-index:2;width:2.6rem;height:2.6rem;margin:auto;border-radius:50%;background:rgba(17,34,80,.82);color:#fff;font-size:1.8rem;line-height:1}
.gallery-prev{grid-column:1}.gallery-next{grid-column:3}
.gallery-prev[hidden],.gallery-next[hidden]{display:block;visibility:hidden;pointer-events:none}
.gallery-zoom{display:grid;place-items:center;width:44px;height:44px;padding:8px;border:0;background:transparent;color:var(--royal);cursor:pointer}
.gallery-zoom svg{width:24px;height:24px}
.gallery-zoom[aria-pressed="true"]{color:var(--electric)}
.gallery-dialog.is-zoomed .gallery-photo{overflow:auto;cursor:grab;touch-action:pan-x pan-y pinch-zoom}
.gallery-dialog.is-zoomed .gallery-image{width:200%;height:200%;max-width:none;max-height:none;touch-action:pan-x pan-y pinch-zoom;user-select:none}
.gallery-dialog.is-zoomed .gallery-prev,.gallery-dialog.is-zoomed .gallery-next{visibility:hidden;pointer-events:none}
.gallery-dialog.is-zoomed .gallery-photo.is-dragging{cursor:grabbing}
.gallery-caption{display:grid;gap:.7rem;min-width:0;max-width:100%}
.gallery-specs{margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 2rem;font-size:.9rem;font-variant-numeric:tabular-nums}
.gallery-specs[hidden]{display:none}
.gallery-specs div{display:flex;align-items:center;gap:.5rem}
.gallery-specs dt{color:var(--muted)}
.gallery-specs dd{margin:0;font-weight:600}
.gallery-specs .sku-copy{padding:0 .15rem}
.gallery-prev svg,.gallery-next svg{width:24px;height:24px;margin:auto}
.gallery-prev svg{transform:rotate(180deg)}
.gallery-close,.gallery-prev,.gallery-next{min-width:44px;min-height:44px}
.gallery-close:focus-visible,.gallery-prev:focus-visible,.gallery-next:focus-visible,.gallery-zoom:focus-visible{outline:2px solid var(--sapphire);outline-offset:3px}
.gallery-status{grid-column:1;grid-row:1;align-self:end;z-index:1;background:#fff;padding:.5rem 1rem;text-align:center;font-size:.8rem}
.product-gallery{width:min(94vw,880px);overscroll-behavior:contain}
.product-gallery .gallery-image{max-height:100%}
.product-gallery .gallery-bottom{display:grid;gap:.75rem}
body:has(.gallery-dialog[open]){overflow:hidden}
@media(max-width:1100px){.cross-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cross-catalog-heading{display:block}.cross-catalog-heading p{margin-top:1.5rem;max-width:55ch}}
@media(max-width:600px){
  .cross-category{height:520px;margin-top:2rem}.cross-category-image img{height:390px}.cross-category-copy{padding:1.5rem 1.1rem}.category-action{margin-top:.5rem}
  .custom-category-grid,.orthodox-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:2rem}
  .custom-category-grid .cross-category,.orthodox-category-grid .cross-category{height:clamp(260px,72vw,330px)}
  .custom-category-grid .cross-category-image img,.orthodox-category-grid .cross-category-image img{height:calc(100% - 105px);padding:8px}
  .custom-category-grid .cross-category-copy,.orthodox-category-grid .cross-category-copy{padding:.75rem .5rem}
  .custom-category-grid h3,.orthodox-category-grid h3{font-size:clamp(.8rem,3.4vw,1rem);letter-spacing:.035em;overflow-wrap:break-word}
  .custom-category-grid .category-action,.orthodox-category-grid .category-action{font-size:12px;gap:.35rem}
  .custom-category-grid .category-action svg,.orthodox-category-grid .category-action svg{width:16px;height:16px}
  .custom-model-grid{grid-template-columns:1fr}
  .cross-catalog{padding:1.5rem 1.1rem 4rem}.breadcrumbs{font-size:.85rem}.cross-catalog-heading{margin:2.5rem 0 2rem}.cross-catalog-heading p{font-size:.95rem}.cross-model-grid{gap:1.5rem .8rem}.cross-model-copy b{font-size:1.1rem}.cross-model-copy{gap:.6rem;padding:1rem 0}.cross-model-specs{display:grid;font-size:.8rem}.cross-catalog-help{display:block;margin-top:3rem}.cross-catalog-help .text-link{margin-top:1.5rem}
  .gallery-specs{gap:.4rem 1.1rem;font-size:.85rem}
}
@media(prefers-reduced-motion:reduce){.cross-category-image img,.cross-model-image img{transition:none}.cross-category:hover img,.cross-model:hover img{transform:none}}
.catalog-hero{padding:8rem 8vw 5rem;min-height:520px;display:flex;flex-direction:column;justify-content:end;background:var(--royal);color:var(--swan)}
.catalog-hero .eyebrow{color:var(--gold)}
.catalog-hero p{max-width:680px;color:var(--shell)}
.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3.5rem}
.catalog-card{background:var(--white);border:1px solid var(--line)}
.catalog-card:not(.product-card){padding:1.5rem}
.catalog-card img{aspect-ratio:1/1;object-fit:cover}
.catalog-card-body{padding:1.2rem}
.catalog-card .tag{font-size:.72rem;color:var(--sapphire);text-transform:uppercase;letter-spacing:.1em}
.catalog-card h3{margin:.7rem 0 .4rem}
.catalog-card p{color:var(--muted);margin:0}
.notice{margin-top:2rem;padding:1.4rem;border:1px solid var(--line);color:var(--muted)}
.cooperation{padding:7rem 6vw;background:var(--shell);display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:start}
.cooperation>div:first-child>p:not(.eyebrow){max-width:720px;color:var(--muted)}
.partner-panel{padding:2rem;background:var(--royal);color:var(--swan)}
.partner-panel h3{margin-top:0;color:var(--gold)}
.partner-panel ul{margin:0;padding-left:1.2rem}.partner-panel li{padding:.55rem 0;border-bottom:1px solid rgba(224,197,143,.25)}
.partner-note{margin:1.5rem 0 0;color:var(--shell);font-size:.82rem}
.store-section{padding:7rem 6vw;background:var(--sapphire);color:var(--swan);display:grid;grid-template-columns:.75fr 1.25fr;gap:5vw;align-items:center}
.store-section .eyebrow{color:var(--gold)}
.store-section p{color:var(--shell)}
.map-wrap{position:relative;min-width:0;overflow:hidden}.map-frame{display:block;width:100%;height:430px;min-height:430px;border:0;background:var(--shell);z-index:0}
.brand-map-pin{display:grid;justify-items:center;background:none;border:0;filter:drop-shadow(0 6px 7px rgba(17,34,80,.28))}
.brand-map-badge{width:76px;height:76px;display:grid;place-items:center;border-radius:50%;background:var(--royal);border:0;box-shadow:none}
.brand-map-badge img{width:66px;height:66px;object-fit:contain}.brand-map-tip{width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:16px solid var(--royal)}
.store-map .leaflet-control-zoom a,.store-map .map-recenter{background:var(--royal);color:var(--gold);border:0;width:44px;height:44px;line-height:44px}
.store-map .leaflet-control-zoom a:hover,.store-map .map-recenter:hover{background:var(--sapphire)}
.store-map .leaflet-popup-content{font-family:inherit;font-size:14px;line-height:1.6;color:var(--royal)}
.store-map .leaflet-popup-content p{color:var(--royal);margin:.5rem 0}.store-map .leaflet-popup-content a{color:var(--royal);text-decoration:underline}
.map-recenter{display:grid;place-items:center;cursor:pointer}.map-recenter svg{width:22px;height:22px}
.map-status{position:absolute;left:12px;right:12px;bottom:32px;z-index:500;margin:0;padding:.6rem .8rem;background:var(--royal);color:var(--swan)!important;font-size:14px;pointer-events:none}
.map-status[hidden]{display:none}.map-fallback{display:block;padding:2rem;color:var(--royal);text-decoration:underline}.store-map.leaflet-container .map-fallback{display:none}
.map-link{display:inline-flex;margin-top:1.5rem;border-bottom:1px solid var(--gold);color:var(--gold);padding-bottom:.35rem}
.location-details{margin-top:2rem;padding-top:.5rem;border-top:1px solid rgba(224,197,143,.4)}
.location-details p{margin:1rem 0}.location-details a{color:var(--gold)}
.faq-hero{padding:8rem 8vw 6rem;background:var(--royal);color:var(--swan)}
.faq-hero .eyebrow{color:var(--gold)}.faq-hero>p:last-child{max-width:670px;color:var(--shell)}
.faq-page{padding:7rem 7vw;background:var(--swan)}
.faq-group{display:grid;grid-template-columns:.72fr 1.28fr;gap:6vw;padding:3.5rem 0;border-top:1px solid var(--line)}
.faq-group:first-child{padding-top:0;border-top:0}.faq-group h2{font-size:clamp(2.2rem,4vw,4.8rem)}
.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;padding:1.35rem 3rem 1.35rem 0;position:relative;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:.25rem;top:1rem;font:400 1.8rem/1 var(--font-display);color:var(--sapphire)}
.faq-list details[open] summary::after{content:'−'}.faq-list details p{margin:0;padding:0 3rem 1.5rem 0;color:var(--muted);max-width:760px}
.contact{padding:7rem 7vw;background:var(--royal);color:var(--swan);display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.contact p{max-width:560px;color:var(--shell)}
.contact .eyebrow{color:var(--gold)}
.contact-links{display:flex;flex-direction:column;border-top:1px solid rgba(224,197,143,.55)}
.contact-links>*{padding:1rem 0;border-bottom:1px solid rgba(224,197,143,.55)}
.contact-links a:hover{color:var(--gold)}
footer{padding:1.8rem 4vw;display:flex;justify-content:space-between;background:#091634;color:var(--shell);font-size:.78rem}
@media(max-width:800px){
  .site-header{height:76px;padding:0 1rem}.wordmark{width:52px;height:52px}.brand-mark{width:46px;height:46px}.menu-button{display:block;margin-left:auto}.phone{display:none}
  .nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0;padding:1.25rem;background:var(--royal);color:var(--swan);border-bottom:1px solid rgba(224,197,143,.4);flex-direction:column;gap:.7rem}.nav.open{display:flex}.nav a{padding:.65rem 0;font-size:.9rem}.nav a:hover,.nav a.active{color:var(--gold);border-color:var(--gold)}
  .home-hero{display:block;min-height:0}.home-hero-copy{min-height:56svh;padding:4rem 1.25rem 2.5rem}.home-hero-copy>p:not(.eyebrow){margin:auto 0 1.5rem}.home-hero-media{min-height:0;height:min(58svh,440px)}
  .directions,.intro,.works,.possibilities,.catalog-page{padding:5rem 1.1rem}.directions-heading{display:block;margin-bottom:2.5rem}.directions-heading .eyebrow{margin-bottom:1.2rem}.direction-stack{gap:.75rem}.direction-row{height:min(118vw,520px)}.direction-copy{left:1.15rem;bottom:1.2rem}.direction-copy b{font-size:clamp(2.1rem,10vw,3.4rem)}.direction-number{top:1.1rem;left:1.15rem}.direction-link{right:1.15rem;bottom:1.45rem;font-size:.68rem}.direction-copy small{max-width:58vw}
  .rates{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1rem;padding:.75rem 1rem}.rates span,.rates a{grid-column:1/-1}.rates a{margin-left:0}.rates b{font-size:.75rem}
  .hero{display:block;min-height:0}.hero-copy{padding:5rem 1.25rem}.hero-image{height:min(56svh,430px)}
  .price-grid,.catalog-grid{grid-template-columns:1fr}.price-grid article{min-height:0}.section-heading,.contact{display:block}.section-heading>p{margin-top:1.5rem}
  .gallery-heading{display:block;margin-top:3rem}.gallery-heading>p{margin-top:1rem}.work-grid,.cross-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process{grid-template-columns:1fr;padding:5rem 1.25rem}.process video{max-height:56svh}.source-links{flex-direction:column}
  .product-slider{grid-auto-columns:82vw;margin-right:-1.1rem}.slide-card img{aspect-ratio:4/5;max-height:520px}
  .catalog-hero{min-height:auto;padding:5rem 1.25rem 4rem}.catalog-hero h1{font-size:clamp(2.35rem,10.5vw,4rem);line-height:1.1;overflow-wrap:anywhere}.catalog-hero p{font-size:1rem}
  .store-section,.cooperation{grid-template-columns:1fr;padding:5rem 1.25rem}.map-frame{height:360px;min-height:360px}.partner-panel{padding:1.4rem}
  .faq-hero{padding:5rem 1.25rem 4rem}.faq-hero h1{font-size:clamp(2.8rem,13vw,4.5rem)}.faq-page{padding:4rem 1.25rem}.faq-group{grid-template-columns:1fr;gap:2rem;padding:3rem 0}
  .contact{padding:5rem 1.25rem}.contact-links{margin-top:2.5rem}footer{gap:1rem;padding:1.5rem 1rem}
}
@media(max-width:520px){
  h1{font-size:clamp(2.8rem,13vw,4.4rem)}h2{font-size:clamp(2.35rem,11.5vw,3.8rem)}
  .direction-row{height:min(124vw,500px)}.direction-link{position:static;display:none}
  .product-slider{grid-auto-columns:86vw}.slide-card figcaption{flex-direction:column;gap:.25rem}
  .contact-links>*{font-size:.9rem}footer{flex-direction:column}
  .work-grid,.cross-grid{grid-template-columns:1fr}.work-card-copy b{font-size:1.35rem}.gallery-view{padding:.6rem}.gallery-stage{grid-template-columns:44px minmax(0,1fr) 44px;gap:.2rem}.gallery-count{top:.4rem;right:.4rem;font-size:.8rem}.gallery-prev,.gallery-next{width:44px;height:44px}.gallery-bottom{gap:.4rem}
}
@media(min-width:1600px){.eyebrow,.rates,.fineprint,.gallery-note,.partner-note,.breadcrumbs,.cross-model-specs,footer{font-size:.9rem}.direction-link{font-size:.85rem}}
@media(max-width:1100px){.site-header{gap:1rem}.nav{gap:.8rem;font-size:.8rem}.phone{font-size:.8rem}.custom-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.custom-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem .8rem}.custom-model-grid .work-card-copy{padding:.8rem 0}.custom-model-grid .work-card-copy b{font-size:1.1rem;overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-card,.direction-row img,.home-hero-media img{transition:none}}

@media(max-width:800px){
  .collection-hero{grid-template-columns:1fr;min-height:0}
  .collection-hero-media{grid-row:1;height:clamp(260px,74vw,380px)}
  .collection-hero-copy{padding:2.5rem 1.25rem 3rem}
  .collection-hero-copy h1{font-size:clamp(2.5rem,10vw,4rem)}
}

/* Opaque navy photograph: retain clean metal edges and photographic shadows.
   Fade only the outer photo margins into navy, never approximate its silhouette. */
.orthodox-hero{position:relative;grid-template-columns:.9fr 1.1fr;min-height:clamp(640px,44vw,900px)}
.orthodox-hero .collection-hero-media{overflow:hidden;background:var(--royal)}
.orthodox-hero .collection-hero-media>img{inset:1.5vw;width:calc(100% - 3vw);height:calc(100% - 3vw);max-height:none;object-fit:contain;transform:none;filter:none}
.orthodox-hero .collection-hero-media img{mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 2%,#000 96%,transparent);mask-composite:intersect}
@media(max-width:800px){
  .orthodox-hero{grid-template-columns:1fr;min-height:0}
  .orthodox-hero .collection-hero-media{height:clamp(340px,110vw,480px)}
  .orthodox-hero .collection-hero-media>img{inset:0;width:100%;height:100%}
}

/* Resale is a product catalog, not the single-column custom-work gallery. */
.resale-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2.5rem}
.resale-card{display:block;min-width:0;color:var(--royal)}
.resale-card-image{display:block;aspect-ratio:1;overflow:hidden;background:#f3ebdf}
.resale-card-image img{width:100%;height:100%;object-fit:contain}
.resale-card-copy{display:grid;gap:.6rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.resale-card-copy b{font:600 1.5rem/1.2 var(--font-display);overflow-wrap:anywhere}
.resale-price{font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums}
.resale-card:hover .resale-card-copy b{color:var(--electric)}
.resale-hero .collection-hero-media{background:#f3ebdf}
.resale-hero .collection-hero-media img{object-fit:cover;padding:0}
.gallery-details[hidden]{display:none}
.resale-gallery{width:min(96vw,1200px);overscroll-behavior:contain}
.resale-gallery .gallery-view{grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr);grid-template-rows:auto minmax(0,1fr);gap:1rem;height:min(94svh,900px)}
.resale-gallery .gallery-top{grid-column:1/-1}
.resale-gallery .gallery-stage{grid-column:1;grid-row:2}
.resale-gallery .gallery-bottom{grid-column:2;grid-row:2;justify-items:start;align-content:start;overflow:auto;text-align:left;padding:1.5rem 1rem}
.resale-gallery .gallery-title{font-size:2rem}
.gallery-details{display:grid;gap:1.2rem}
.gallery-price{margin:0;font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums}
.resale-details{display:grid;gap:1rem;margin:0;font-size:.95rem}
.resale-details div{display:grid;gap:.2rem}
.resale-details dt{color:var(--muted);font-size:.85rem}
.resale-details dd{margin:0;overflow-wrap:anywhere}
.gallery-details .text-link{justify-self:start}
@media(max-width:700px){
  .resale-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem .75rem}
  .resale-card-copy{padding:.75rem 0;gap:.45rem}
  .resale-card-copy b{font-size:1.2rem}
  .resale-price{font-size:.95rem}
  .resale-gallery .gallery-view{grid-template-columns:minmax(0,1fr);grid-template-rows:auto clamp(220px,40svh,360px) auto;height:auto;gap:.5rem}
  .resale-gallery .gallery-top,.resale-gallery .gallery-stage,.resale-gallery .gallery-bottom{grid-column:1}
  .resale-gallery .gallery-bottom{grid-row:3;overflow:visible;padding:1rem .6rem}
  .resale-gallery .gallery-title{font-size:1.65rem}
}

/* Shared controls keep the incumbent page composition and alignment. */
.contact-links>*{display:flex;gap:.8rem;align-items:center}
.contact-icon{width:22px;height:22px;flex:0 0 22px;color:var(--gold)}
.gallery-stage{grid-template-columns:minmax(0,1fr)}
.gallery-image{grid-column:1}
.gallery-prev,.gallery-next{position:absolute;top:50%;margin:0;transform:translateY(-50%)}
.gallery-prev{left:0}.gallery-next{right:0}
/* Product photos keep the clasp and chain; category previews share one gradient. */
.cross-catalog[data-photo-shape="square"] .cross-model-image img{aspect-ratio:1}
.resale-details .uin-copy{font:inherit;font-variant-numeric:tabular-nums}
.faq-list p a{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:600px){
  .custom-category-grid .cross-category{aspect-ratio:auto}
  /* A navy base keeps the lower fade continuous, without cropping the jewelry. */
  .custom-category-grid .cross-category,.custom-category-grid .cross-category-image{background:var(--royal)}
  .custom-category-grid .cross-category-image img{height:calc(100% - 105px);padding:0}
  .custom-category-grid .cross-category::after{background:linear-gradient(180deg,transparent 40%,rgba(17,34,80,.15) 48%,var(--royal) 65%)}
}

/* The price breakdown stays readable without six tall numbered panels. */
.price-intro{padding-block:5rem}
.price-intro .price-grid{margin-top:2rem}
.price-intro .price-grid article{min-height:0;padding:1.3rem}
.price-intro .price-grid h3{margin:0 0 .65rem;font-size:1.45rem}
.price-intro .price-grid p{margin:0}
@media(max-width:800px){
  .price-intro{padding-block:3rem}
  .price-intro h2{font-size:clamp(1.9rem,8vw,2.6rem)}
  .price-intro .lead{font-size:1rem}
  .price-intro .price-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem}
  .price-intro .price-grid article{padding:.9rem .75rem}
  .price-intro .price-grid h3{font-size:1.15rem;margin-bottom:.45rem}
  .price-intro .price-grid p{font-size:.9rem;line-height:1.5}
}
.cross-model-link:focus-visible{outline:2px solid var(--electric);outline-offset:5px}
@media(max-width:800px){
  .nav a:hover,.nav a.active{border-color:var(--electric)}
}
@media(max-width:600px){
  .cross-model-copy b{font-size:1.1rem}
  .cross-model-specs{display:flex;flex-direction:column;align-items:flex-start;font-size:.8rem;gap:0}
  .cross-model-copy{padding:.8rem 0 .2rem}
}
