:root{color-scheme:light;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#111;background:#fff;font-synthesis:none;-webkit-font-smoothing:antialiased;--edge:clamp(20px,3.25vw,52px)}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%}a:focus-visible,button:focus-visible{outline:2px solid #111;outline-offset:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:12px;z-index:20;background:#fff;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{width:auto;height:auto;clip-path:none;padding:14px}
.site-header{height:clamp(78px,6.25vw,100px);padding:0 var(--edge);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px}.brand{justify-self:start;display:block}.brand img{width:clamp(190px,18vw,280px);height:auto}.site-nav{display:flex;justify-content:center;gap:clamp(24px,3.3vw,52px)}.site-nav a,.shop-link{font-size:13px;line-height:1.2;text-transform:uppercase;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.shop-link{justify-self:end;gap:20px}.site-nav a:hover,.shop-link:hover{text-decoration:underline;text-underline-offset:5px}
.hero{overflow:hidden;background:#eeece7}.hero img{width:100%;height:auto;aspect-ratio:5 / 3;object-fit:cover;object-position:center}
.introduction{padding:48px var(--edge) 52px;display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:32px}.eyebrow{font-size:12px;line-height:1.4;text-transform:uppercase;margin:0 0 7px}h1{font-size:clamp(30px,3vw,46px);line-height:1.06;font-weight:400;letter-spacing:-.055em;margin:0}.description{font-size:14px;line-height:1.5;margin:0;text-align:center}.entry{justify-self:end;display:flex;flex-direction:column;align-items:flex-start}.enter-link{font-size:14px;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;border-bottom:1px solid #111}.enter-link span{display:inline-block;transition:transform .2s ease}.enter-link:hover span{transform:translate(2px,-2px)}.entry-note{font-size:12px;color:#4f4f4f;line-height:1.4;margin-top:7px}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 20px 32px;scroll-margin-top:24px}.gallery:focus{outline:none}figure{margin:0;min-width:0}.gallery-link{display:block;overflow:hidden;background:#eeece7}.gallery img{width:100%;height:auto;aspect-ratio:.94;object-fit:cover;transition:transform .45s ease}.gallery figure:first-child img{object-position:44% center}.gallery figure:last-child img{object-position:62% center}.gallery-link:hover img{transform:scale(1.025)}figcaption{font-size:12px;text-transform:uppercase;padding:18px 12px 0}
body:has(.photo-dialog[open]){overflow:hidden}.photo-dialog{width:min(1200px,94vw);max-width:none;max-height:94dvh;padding:20px;border:0;background:white;color:#111}.photo-dialog::backdrop{background:rgb(0 0 0 / .75)}.photo-toolbar,.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;text-transform:uppercase}.photo-toolbar p{margin:0}.photo-dialog button{min-height:44px;border:0;background:none;padding:8px 0}.photo-close{display:flex;align-items:center;gap:20px}.photo-close span{font-size:26px}.photo-dialog>img{width:100%;max-height:70dvh;object-fit:contain}.photo-controls{margin-top:8px}
@media(min-width:901px){.hero img{height:min(60vw,calc(100svh - 280px));min-height:420px}}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto auto;gap:32px}.site-nav{gap:24px}.introduction{grid-template-columns:1fr 1fr;gap:24px;padding-top:32px;padding-bottom:36px}.description{grid-column:1;grid-row:2;text-align:left;max-width:340px}.entry{grid-column:2;grid-row:1 / 3}.desktop-break{display:none}.gallery img{aspect-ratio:4 / 5}}
@media(max-width:560px){.site-header{height:auto;min-height:112px;padding:20px;grid-template-columns:1fr auto;gap:12px 20px}.brand img{width:196px}.shop-link{grid-column:2;grid-row:1;gap:12px;min-height:28px}.site-nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;gap:26px}.site-nav a{min-height:32px;font-size:12px}.shop-link{font-size:12px}.hero img{aspect-ratio:1.05;object-position:51% center}.introduction{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:28px 20px 34px}h1{font-size:36px}.eyebrow{font-size:11px}.description{font-size:14px;line-height:1.5;max-width:330px}.entry{margin-top:0}.enter-link{font-size:13px;gap:32px}.gallery{grid-template-columns:1fr;gap:28px;padding:0 12px 28px}.gallery img{aspect-ratio:1.05;object-position:center}figcaption{padding:13px 8px 0;font-size:11px}.photo-dialog{padding:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* The approved graphic supplies the original imagery. Each frame reveals its
   exact image region; the surrounding interface remains live HTML. */
.approved-crop{position:relative;overflow:hidden;display:block}
.approved-crop img{position:absolute;display:block;max-width:none;height:auto!important;min-height:0!important;aspect-ratio:auto!important;object-fit:initial;transform:none!important;transition:none}
.crop-hero{aspect-ratio:1073 / 643}
.crop-hero img{width:100%;left:0;top:-10.2643857%}
.crop-space,.crop-details{aspect-ratio:510 / 549}
.crop-space img,.crop-details img{width:210.3921569%;top:-153.5519126%}
.crop-space img{left:-4.1176471%}
.crop-details img{left:-106.2745098%}
.photo-dialog #photo-full{width:min(100%,55vh);margin:0 auto}
/* Keep the entrance and its action comfortably in the first screen. */
@media(min-width:901px){
  .site-header{height:76px;padding:0 3.25vw;gap:20px}
  .brand img{width:clamp(190px,18vw,260px)}
  .site-nav{gap:36px}
  .site-nav a,.shop-link{font-size:13px}
  .hero{height:min(59.925vw,clamp(340px,calc(100svh - 232px),820px));aspect-ratio:auto}
  .crop-hero img{top:calc(50% - 36.1137vw)}
  .introduction{height:140px;padding:24px 3.25vw;grid-template-columns:1fr 1.4fr 1fr;gap:28px}
  .eyebrow{font-size:12px;line-height:1.2;margin-bottom:6px}
  h1{font-size:clamp(30px,3vw,42px);letter-spacing:-.04em;line-height:1.1}
  .description{font-size:14px;line-height:1.4}
  .enter-link{font-size:13px;min-height:36px;gap:20px}
  .entry-note{font-size:12px;margin-top:5px}
  .gallery{gap:12px;padding:0 20px 36px}
  figcaption{font-size:12px;line-height:1.2;padding:16px 12px 0}
}
@media(max-width:900px){.hero{aspect-ratio:1073 / 643}.gallery-link{aspect-ratio:510 / 549}}
