@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&family=Instrument+Sans:ital,wght@0,400..700;1,400..700&family=DM+Mono:ital,wght@0,300;0,400;0,500;1,400&display=swap");:root{--ink:#2a2521;--ink-deep:#1c1a17;--ink-soft:#3a3530;--paper:#f5f2ec;--cream:#ede9e0;--warm:#b8a98a;--accent:#c8401a;--accent-l:#e8613c;--accent-d:#a8320e;--muted:#6b6258;--line:rgba(42,37,33,.11);--green:#3a6b40;--green-bg:#e7efe2;--error:#c8401a;--bg:var(--paper);--surface:#fff;--surface-2:var(--cream);--surface-dark:var(--ink);--fg:var(--ink);--fg-muted:var(--muted);--fg-faint:var(--warm);--fg-on-dark:#f5f2ec;--font-serif:"Fraunces","Times New Roman",Georgia,serif;--font-sans:"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--font-mono:"DM Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--fs-hero:clamp(40px,5.4vw,72px);--fs-display:clamp(32px,4vw,52px);--fs-h1:clamp(28px,3vw,40px);--fs-h2:clamp(22px,2.2vw,30px);--fs-h3:20px;--fs-body:16px;--fs-small:14px;--fs-eyebrow:11px;--lh-tight:1.05;--lh-snug:1.2;--lh-body:1.5;--r-thumb:4px;--r-input:3px;--r-button:6px;--r-card:10px;--shadow:0 1px 2px rgba(14,13,12,.04),0 6px 18px rgba(14,13,12,.06);--shadow-lg:0 10px 30px rgba(14,13,12,.1),0 30px 60px rgba(14,13,12,.14);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--ease:cubic-bezier(.2,.7,.2,1);--dur-screen:420ms;--dur-hover:160ms}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}*{box-sizing:border-box}.display,h1.display{font-size:var(--fs-hero);letter-spacing:-.015em;text-wrap:balance}.display,h1,h1.display{font-family:var(--font-serif);font-weight:500;line-height:var(--lh-tight)}h1{font-size:var(--fs-h1);letter-spacing:-.012em}h2{font-size:var(--fs-h2);letter-spacing:-.01em}h2,h3{font-family:var(--font-serif);font-weight:500;line-height:var(--lh-snug)}h3{font-size:var(--fs-h3)}.accent-italic,.display em,h1 em,h2 em{font-style:italic;font-weight:300;color:var(--accent)}p{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--fg);text-wrap:pretty}.text-muted,p.muted{color:var(--fg-muted)}.text-faint,p.faint{color:var(--fg-faint)}.eyebrow,.meta,.mono{font-size:var(--fs-eyebrow);font-weight:400;letter-spacing:.12em}.eyebrow,.meta,.meta-row,.mono{font-family:var(--font-mono);text-transform:uppercase;color:var(--fg-muted)}.meta-row{font-size:12px;letter-spacing:.08em}.price{font-family:var(--font-serif);font-weight:500;color:var(--accent);font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);transition:color var(--dur-hover) var(--ease),-webkit-text-decoration-color var(--dur-hover) var(--ease);transition:color var(--dur-hover) var(--ease),text-decoration-color var(--dur-hover) var(--ease);transition:color var(--dur-hover) var(--ease),text-decoration-color var(--dur-hover) var(--ease),-webkit-text-decoration-color var(--dur-hover) var(--ease)}a:hover{color:var(--accent);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}code,kbd,samp{font-family:var(--font-mono);font-size:.92em;background:var(--cream);padding:1px 5px;border-radius:3px}button,input,select,textarea{font-family:var(--font-sans);font-size:var(--fs-body)}#root,.app-root{min-height:100vh;display:flex;flex-direction:column}.screen{flex:1 1;animation:screenIn var(--dur-screen) var(--ease) both}@keyframes screenIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.nav{display:flex;align-items:center;gap:24px;padding:18px 32px;background:var(--paper);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:50}.nav__logo{display:inline-flex;align-items:baseline;gap:0;font-family:var(--font-serif);font-weight:700;font-size:22px;letter-spacing:-.01em;color:var(--ink);background:none;border:0;cursor:pointer;padding:0;line-height:1}.nav__hamburger,.nav__logo{flex:0 0 auto}.nav__links{display:flex;flex:1 1;gap:4px;margin:0 0 0 18px;padding:0;list-style:none;align-items:center;min-width:0;overflow:visible;scrollbar-width:none}.nav__links::-webkit-scrollbar{display:none}.nav__account{display:inline-flex;align-items:center;flex:0 0 auto;margin-left:auto;padding-left:8px;overflow:visible}.account-menu{right:0;left:auto}.nav__hamburger{display:none;background:transparent;border:1px solid var(--line);border-radius:6px;width:36px;height:36px;align-items:center;justify-content:center;font-size:17px;line-height:1;color:var(--ink);cursor:pointer;flex:0 0 auto}.nav__hamburger:hover{background:rgba(0,0,0,.04)}.nav__link{font-family:var(--font-sans);font-size:14px;color:var(--ink);text-decoration:none;padding:6px 10px;border-radius:4px}.nav__link:hover{color:var(--accent)}.nav__cart{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:6px;font-family:var(--font-sans);font-size:14px;font-weight:500;cursor:pointer;transition:background var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease)}.nav__cart:hover{background:rgba(0,0,0,.04);border-color:rgba(42,37,33,.22)}.nav__count{display:inline-block;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:11px;padding:2px 7px;border-radius:10px;min-width:18px;text-align:center}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--green);display:inline-block;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}em.acc{color:var(--accent)}em.acc,em.acc-l{font-style:italic;font-weight:300}em.acc-l{color:var(--accent-l)}.btn{font-family:var(--font-sans);font-weight:500;font-size:15px;padding:12px 20px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer;transition:background var(--dur-hover) var(--ease),transform var(--dur-hover) var(--ease),color var(--dur-hover) var(--ease);display:inline-flex;align-items:center;gap:8px;line-height:1.1}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--primary{background:var(--accent);color:var(--paper)}.btn--primary:hover:not(:disabled){background:var(--accent-d)}.btn--ghost{border-color:var(--line)}.btn--ghost:hover:not(:disabled){background:rgba(0,0,0,.04)}.btn--dark{background:var(--ink);color:var(--paper);width:100%;justify-content:center;padding:14px 20px}.btn--dark:hover:not(:disabled){background:var(--ink-soft)}.btn--green{background:var(--green);color:#fff}.btn--green:hover:not(:disabled){background:#2e5634}.btn--block{width:100%;justify-content:center}.btn--lg{padding:14px 22px;font-size:16px}.btn--sm{padding:8px 14px;font-size:13px}.input{font-family:var(--font-sans);font-size:16px;padding:12px 14px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);outline:none;width:100%;box-sizing:border-box;transition:border-color var(--dur-hover) var(--ease),box-shadow var(--dur-hover) var(--ease)}.input::placeholder{color:var(--warm)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(200,64,26,.18)}.field-label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow);padding:24px}.thumb{position:relative;aspect-ratio:2/3;border-radius:5px;overflow:hidden;border:1px solid var(--line);cursor:pointer;transition:transform var(--dur-hover) var(--ease),box-shadow var(--dur-hover) var(--ease);background:var(--cream)}@media (hover:hover){.thumb:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}}.thumb__img{position:absolute;inset:0}.thumb__wm{inset:0;font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.18em;color:hsla(0,0%,100%,.32);transform:rotate(-22deg);pointer-events:none;text-transform:uppercase;white-space:nowrap}.thumb__check,.thumb__wm{position:absolute;display:flex;align-items:center;justify-content:center}.thumb__check{top:8px;left:8px;width:24px;height:24px;border-radius:4px;background:hsla(0,0%,100%,.92);border:1px solid var(--line);font-size:14px;color:var(--ink);opacity:0;transition:opacity var(--dur-hover) var(--ease)}@media (hover:hover){.thumb:hover .thumb__check{opacity:1}}.thumb--selected{outline:2px solid var(--accent);outline-offset:2px}.thumb--selected .thumb__check{opacity:1;background:var(--accent);color:#fff;border-color:var(--accent)}.thumb--incart .thumb__check{opacity:1;background:var(--green);color:#fff;border-color:var(--green)}.thumb__expand{position:absolute;bottom:8px;right:8px;width:24px;height:24px;border-radius:4px;background:hsla(0,0%,100%,.92);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--ink);opacity:0;transition:opacity var(--dur-hover) var(--ease)}@media (hover:hover){.thumb:hover .thumb__expand{opacity:1}}.overlay{position:fixed;inset:0;background:rgba(14,13,12,.6);display:flex;align-items:center;justify-content:center;z-index:100;padding:24px;animation:fadeIn .2s var(--ease) both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{max-width:540px;width:100%;background:var(--paper);border-radius:var(--r-card);box-shadow:var(--shadow-lg);overflow:hidden;animation:modalIn .28s var(--ease) both}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}.modal__header{padding:22px 24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.modal__title{margin:0;font-family:var(--font-serif);font-weight:500;font-size:22px;letter-spacing:-.01em;flex:1 1}.icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--ink);cursor:pointer;font-size:16px;line-height:1}.icon-btn:hover{background:rgba(0,0,0,.04)}@keyframes spin{to{transform:rotate(1turn)}}.legal-prose{color:var(--ink);font-size:15px;line-height:1.65}.legal-prose h2{font-family:var(--font-serif);font-weight:500;font-size:22px;letter-spacing:-.005em;color:var(--ink);margin:32px 0 10px}.legal-prose p{margin:0 0 14px;color:var(--ink)}.legal-prose ul{margin:0 0 18px;padding-left:20px}.legal-prose li{margin:6px 0}.legal-prose strong{font-weight:600}.legal-prose a{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@media (max-width:640px){.nav{gap:10px;padding:14px 16px;position:relative}.nav__hamburger{display:inline-flex;margin-left:auto}.nav__links{display:none}.nav__links--open{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:100%;left:0;right:0;margin:0;padding:8px;gap:2px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);z-index:50;overflow:visible}.nav__links--open li{width:100%}.nav__links--open li>a,.nav__links--open li>span{display:block!important;width:100%;padding:12px!important;font-size:13px!important}.nav__account{width:100%;margin:4px 0 0;padding:10px 12px 4px;border-top:1px solid var(--line);justify-content:flex-start}.account-menu{right:auto;left:0;max-width:calc(100vw - 24px);max-height:calc(100vh - 120px);overflow-y:auto}}@media (max-width:800px){.landing-grid{grid-template-columns:1fr!important;gap:36px!important}.landing-grid,.landing-grid h1{text-align:center}.landing-grid p{margin-left:auto;margin-right:auto}}.lightbox-mobile-close,.lightbox-tapzone,.lightbox-topbar{display:none}.lightbox-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;align-items:center;justify-content:center;gap:7px;z-index:3;pointer-events:none}.lightbox-dot{flex:0 0 auto;padding:0;border:0;cursor:pointer;border-radius:999px;background:hsla(0,0%,100%,.45);box-shadow:0 1px 2px rgba(14,13,12,.18);pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:width var(--dur-hover) var(--ease),height var(--dur-hover) var(--ease),background var(--dur-hover) var(--ease),transform var(--dur-hover) var(--ease)}.lightbox-dot--sm{width:4px;height:4px}.lightbox-dot--md{width:6px;height:6px}.lightbox-dot--lg{width:8px;height:8px}.lightbox-dot--active{background:var(--paper);box-shadow:0 1px 3px rgba(14,13,12,.32)}.lightbox-dot:hover{background:hsla(0,0%,100%,.75)}.lightbox-hint{display:none;position:absolute;left:50%;bottom:30px;transform:translateX(-50%) translateY(4px);padding:7px 14px;border-radius:999px;background:rgba(28,26,23,.62);color:var(--paper);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:4;pointer-events:none;opacity:0;transition:opacity .6s var(--ease),transform .6s var(--ease)}.lightbox-hint--show{opacity:1;transform:translateX(-50%) translateY(0)}@media (max-width:820px){.lightbox-tapzone{display:block;position:absolute;top:0;bottom:0;width:40%;background:transparent;border:0;padding:0;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent}.lightbox-tapzone--left{left:0}.lightbox-tapzone--right{right:0}.lightbox-grid{grid-template-columns:1fr!important}.lightbox-grid>.lightbox-photo-pane{order:1;min-height:360px!important;padding:8px 16px 30px!important}.lightbox-grid>.lightbox-buy-pane{order:2}.lightbox-arrow,.lightbox-gallery,.lightbox-header{display:none!important}.lightbox-topbar{display:flex!important;justify-content:flex-end;position:absolute;top:0;left:0;right:0;padding:8px 8px 0;z-index:5;pointer-events:none;background:linear-gradient(rgba(28,26,23,.16),rgba(28,26,23,0))}.lightbox-mobile-close{display:inline-flex!important;pointer-events:auto;background:hsla(40,31%,94%,.92);border-color:var(--line)}.lightbox-hint{display:block}.cart-grid,.checkout-grid{grid-template-columns:1fr!important}}@media (max-width:600px){.order-info{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:900px){.director-hero{gap:36px!important}.director-grid-2,.director-hero{grid-template-columns:1fr!important}}@media (max-width:820px){.director-grid-4,.director-strip{grid-template-columns:repeat(2,1fr)!important}.director-strip{gap:18px!important}}@media (max-width:520px){.director-grid-4,.director-strip{grid-template-columns:1fr!important}}