/* A brief gallery opening. The supplied product photograph stays intact. */
.site-intro{display:none}
.intro-pending .site-intro{display:block;position:fixed;inset:0;z-index:40;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 70% 45%,#85644329,transparent 72%),#171410}
.intro-pending:not(.intro-following) .entrance-copy{opacity:0}
.intro-ribbon-transition{display:none;pointer-events:none}
.intro-scene{position:absolute;inset:0;z-index:1;isolation:isolate;overflow:hidden;color:#f3eadb}
.intro-scene::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 73% 47%,#d5ab6d16,transparent 48%),linear-gradient(120deg,#ffffff03,transparent 48%)}
.intro-topline,.intro-bottomline{position:absolute;inset-inline:clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;gap:24px;opacity:0;line-height:1.5}
.intro-topline{top:max(28px,env(safe-area-inset-top,0px));padding-bottom:21px;border-bottom:1px solid #c2a06b36}
.intro-topline>span:first-child{font:22px var(--serif);letter-spacing:6px}
.intro-topline>span:last-child{font:8px var(--sans);letter-spacing:3px;color:#d4b989}
.intro-bottomline{bottom:max(28px,env(safe-area-inset-bottom,0px));padding-top:17px;border-top:1px solid #c2a06b36;font:10px/1.6 var(--sans);color:#c9bba7}
.intro-enter{display:flex;align-items:center;gap:22px;color:#e4c591;font-size:9px;letter-spacing:1.5px;white-space:nowrap}
.intro-enter>span:last-child{font-size:19px;line-height:1}
.intro-gallery{position:absolute;inset:125px clamp(28px,7vw,108px) 115px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:clamp(34px,6vw,90px);max-width:1240px;margin-inline:auto}
.intro-caption{position:relative;z-index:2;min-width:0}
.intro-kicker{font:8px/1.7 var(--sans);letter-spacing:2.7px;color:#d4b989;margin:0 0 25px;opacity:0}
.intro-title{font:clamp(40px,5.2vw,84px)/1.04 var(--serif);letter-spacing:-1.8px;margin:0;font-weight:400}
.intro-title em{font-weight:400;color:#d4b587}
.intro-word-mask{display:block;overflow:hidden;padding-block:.04em .12em;margin-bottom:-.08em}
.intro-word{display:block;transform:translateY(112%);white-space:nowrap}
.intro-editorial-line{display:block;width:64px;height:1px;background:#b78e51;margin-top:31px;transform:scaleX(0);transform-origin:left}
.intro-artwork{position:relative;isolation:isolate;width:100%;max-width:580px;justify-self:center}
.intro-arch,.intro-arch-inner{position:absolute;z-index:-1;inset:-19% 8% -11%;border:1px solid #c2a06b55;border-radius:48% 48% 0 0;opacity:0;transform-origin:center bottom}
.intro-arch-inner{inset:-15% 11% -8%;border-color:#c2a06b20}
.intro-feature{position:relative;padding:7px;border:1px solid #ceb17d70;background:#282117;box-shadow:0 28px 70px #0005;opacity:0;transform:translateY(18px)}
.intro-feature img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.intro-photo-caption{display:block;text-align:center;font:9px/1.6 var(--sans);letter-spacing:.6px;color:#d3c5af;margin-top:21px;opacity:0}
@media(prefers-reduced-motion:no-preference){
  .intro-playing .intro-topline{animation:salon-fade .8s ease .12s both}
  .intro-playing .intro-bottomline{animation:salon-fade .8s ease .65s both}
  .intro-playing .intro-kicker{animation:salon-fade .8s ease .3s both}
  .intro-playing .intro-word{animation:salon-word .95s cubic-bezier(.22,1,.36,1) .45s both}
  .intro-playing .intro-title em{animation-delay:.65s}
  .intro-playing .intro-editorial-line{animation:salon-line 1s cubic-bezier(.22,1,.36,1) .9s both}
  .intro-playing .intro-arch,.intro-playing .intro-arch-inner{animation:salon-arch 1.35s cubic-bezier(.22,1,.36,1) .14s both}
  .intro-playing .intro-arch-inner{animation-delay:.28s}
  .intro-playing .intro-feature{animation:salon-photo 1.45s cubic-bezier(.22,1,.36,1) .2s both}
  .intro-playing .intro-photo-caption{animation:salon-fade .8s ease .85s both}
  .intro-following .site-intro{animation:salon-backdrop-out 1.35s ease both}
  .intro-following .header{animation:mart-page-reveal .8s ease both}
  .intro-following .entrance-copy{animation:mart-page-reveal .9s ease .12s both}
  @keyframes salon-fade{from{opacity:0}to{opacity:1}}
  @keyframes salon-word{from{transform:translateY(112%)}to{transform:translateY(0)}}
  @keyframes salon-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes salon-arch{from{opacity:0;transform:scaleY(.84)}to{opacity:1;transform:scaleY(1)}}
  @keyframes salon-photo{from{opacity:0;transform:translateY(18px);clip-path:inset(0 49%)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
  @keyframes salon-backdrop-out{from{opacity:1}to{opacity:0}}
  .intro-following .intro-ribbon-transition{display:block;position:fixed;inset:0;z-index:43;width:100%;height:100vh;height:100dvh}
  .intro-ribbon-transition path{stroke-dasharray:1;stroke-dashoffset:1;animation:silk-ribbon-pass 1.45s cubic-bezier(.25,.4,.2,1) both}
  @keyframes silk-ribbon-pass{0%{stroke-dashoffset:1;opacity:0}10%{opacity:1}75%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-.12;opacity:0}}
}
/* Taller phone composition: title, framed bag, then a quiet entry cue. */
@media(max-width:680px){
  .intro-topline{padding-bottom:17px;top:max(25px,env(safe-area-inset-top,0px))}.intro-topline>span:first-child{font-size:17px;letter-spacing:3.6px}.intro-topline>span:last-child{font-size:7px;letter-spacing:1.4px}
  .intro-gallery{inset:105px 28px 106px;display:flex;flex-direction:column;justify-content:center;gap:clamp(43px,7vh,68px)}
  .intro-caption{align-self:stretch;text-align:center}.intro-kicker{font-size:7px;letter-spacing:2px;margin-bottom:14px}.intro-title{font-size:clamp(42px,11.5vw,68px);line-height:1.02;letter-spacing:-1.6px}
  .intro-editorial-line{width:46px;margin:20px auto 0;transform-origin:center}.intro-artwork{width:min(100%,430px)}.intro-feature{padding:5px}.intro-photo-caption{font-size:8px;margin-top:15px}
  .intro-arch{inset:-17% 8% -10%}.intro-arch-inner{inset:-13% 11% -7%}.intro-bottomline{bottom:max(24px,env(safe-area-inset-bottom,0px));font-size:8px;gap:18px;align-items:end}.intro-bottomline>span:first-child{max-width:175px}.intro-enter{font-size:8px;letter-spacing:.5px;gap:14px}
}
html[dir=rtl] .intro-gallery{direction:rtl}
html[dir=rtl] .intro-caption{top:auto}
html[dir=rtl] .intro-title{font-family:Tahoma,Arial,sans-serif;font-size:clamp(40px,4.9vw,72px);line-height:1.35;letter-spacing:0}
html[dir=rtl] .intro-kicker,html[dir=rtl] .intro-enter{letter-spacing:0}
html[dir=rtl] .intro-editorial-line{transform-origin:right}
@media(max-width:680px){html[dir=rtl] .intro-title{font-size:clamp(34px,9vw,52px);line-height:1.35}html[dir=rtl] .intro-editorial-line{transform-origin:center}}
/* Compact landscape and short phones retain clear spacing. */
@media(max-height:650px) and (max-width:680px) and (orientation:portrait){.intro-gallery{inset-block:84px 87px;gap:34px}.intro-title{font-size:42px}.intro-kicker{margin-bottom:9px}.intro-editorial-line{margin-top:13px}.intro-artwork{max-width:310px}.intro-photo-caption{margin-top:10px}html[dir=rtl] .intro-title{font-size:31px}}
@media(max-height:500px) and (orientation:landscape){.intro-topline{top:16px;padding-bottom:10px}.intro-topline>span:first-child{font-size:17px}.intro-gallery{inset:80px 48px 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:35px}.intro-caption{text-align:start}.intro-title{font-size:clamp(34px,5.5vw,57px)}.intro-kicker{font-size:6px;margin-bottom:12px}.intro-editorial-line{margin:16px 0 0}.intro-artwork{max-width:350px}.intro-photo-caption{font-size:7px;margin-top:10px}.intro-bottomline{bottom:15px;padding-top:9px;font-size:8px}html[dir=rtl] .intro-title{font-size:30px}}
@media(prefers-reduced-motion:reduce){.site-intro,.intro-ribbon-transition{display:none!important}}
