@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/libre-baskerville-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC}
@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/libre-baskerville-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}

@font-face{font-family:"Noto Sans";font-weight:400;font-display:swap;src:url(fonts/noto-sans-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC}
@font-face{font-family:"Noto Sans";font-weight:400;font-display:swap;src:url(fonts/noto-sans-latin-ext-400.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}
@font-face{font-family:"Noto Sans";font-weight:600;font-display:swap;src:url(fonts/noto-sans-latin-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC}
@font-face{font-family:"Noto Sans";font-weight:600;font-display:swap;src:url(fonts/noto-sans-latin-ext-600.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}
@font-face{font-family:"Noto Sans";font-weight:700;font-display:swap;src:url(fonts/noto-sans-latin-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC}
@font-face{font-family:"Noto Sans";font-weight:700;font-display:swap;src:url(fonts/noto-sans-latin-ext-700.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}

:root{
  --paper:#ffffff;
  --tint:#eef1fa;
  --ink:#16123f;
  --muted:#4b5072;
  --honey:#566fc3;
  --honey-dark:#1800ad;
  --apple:#1800ad;
  --walnut:#1800ad;
  --line:#d9dff2;
  --serif:"Libre Baskerville",Georgia,"Times New Roman",serif;
  --sans:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--sans)}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-family:var(--serif);font-style:italic;font-weight:400;line-height:1.25;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.25rem,5vw,3.25rem)}
h2{font-size:2rem}
h3{font-family:"Noto Sans",system-ui,sans-serif;font-style:normal;font-weight:700;font-size:1.5rem;line-height:1.25}
p{margin:0 0 1em}
a{color:inherit}
:focus-visible{outline:3px solid var(--honey);outline-offset:3px}

.wrap{width:min(1120px,100%);margin-inline:auto;padding-inline:20px}
.narrow{max-width:720px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;z-index:20}
.skip:focus{left:8px}

.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:8px 24px;min-height:60px;flex-wrap:wrap;padding-block:8px}
.brand{display:inline-flex;align-items:center;gap:10px;font:italic 400 1.1875rem/1.2 var(--serif);text-decoration:none;color:var(--walnut)}
.brand img{height:38px;width:auto}
.hero-logo{width:128px;height:auto;margin:0 0 18px -3px}
nav{display:flex;gap:6px 20px;flex-wrap:wrap}
nav a{font-weight:600;font-size:.9375rem;text-decoration:none;color:var(--muted);padding:4px 0}
nav a:hover{color:var(--apple)}

.eyebrow{font-weight:600;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--honey-dark);margin-bottom:.6em}
.hero{padding-block:clamp(32px,6vw,72px)}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.lead{font-size:1.1875rem;line-height:1.5;color:var(--muted);max-width:32em}
.button{display:inline-block;margin-top:8px;padding:13px 26px;border-radius:6px;background:var(--apple);color:#fff;font-weight:600;text-decoration:none}
.button:hover{background:#566fc3}
.hero-photo{margin:0}
.hero-photo img{width:100%;aspect-ratio:1/1.08;object-fit:cover;object-position:50% 45%;border-radius:10px}

.section{padding-block:clamp(48px,8vw,96px)}
.section-tint{background:var(--tint)}
.section-dark{background:var(--walnut);color:#fff}
.section-dark .eyebrow{color:#d5dcf6}

.product{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(32px,5vw,56px)}
.product-flip{grid-template-columns:1fr 1.15fr}
.product-flip .product-photos{order:2}
.product-photos{display:grid;grid-template-columns:3fr 2fr;gap:12px;align-items:stretch;min-width:0}
.product-photos img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.photo-main{aspect-ratio:1/1.05}
.photo-side{aspect-ratio:auto}
.photo-stack{display:grid;grid-template-rows:1fr 1fr;gap:12px;min-height:0;min-width:0}
.photo-stack img{min-height:0;background:#f4f5f8}
.prices dd.note{font-weight:400;font-size:1rem;color:var(--muted)}
.meta{color:var(--muted);font-size:1rem}
.meta strong{color:var(--ink)}
.price{font-weight:600;color:var(--muted);margin:0}
.price.price-after{margin-top:14px}
.variants{list-style:none;padding:0;margin:0 0 20px}
.variants li{display:flex;align-items:baseline;gap:10px;padding:3px 0}
.dot{flex:none;width:11px;height:11px;border-radius:50%;transform:translateY(1px)}
.dot-gold{background:#d29a2e}.dot-lav{background:#8f7fb0}.dot-red{background:#b23327}.dot-green{background:#3f7a52}
.prices{margin:0;border-top:1px solid var(--line)}
.prices div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}
.prices dt{color:var(--muted)}
.prices dd{margin:0;font-weight:600;font-size:1.1875rem}

.orchard{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);margin-top:24px}
.orchard p{margin:0}
.placeholder{margin:20px 0 0;padding:12px 16px;border:1px dashed #a9b6e6;border-radius:6px;color:#fff}
.site-footer{background:var(--walnut);color:#d5dcf6;font-size:.9375rem;padding-block:20px;border-top:1px solid #3a25c0}

@media (max-width:820px){
  .hero-grid,.product,.product-flip,.orchard{grid-template-columns:minmax(0,1fr)}
  .product-flip .product-photos{order:0}
  .hero-photo{order:-1}
  .hero-photo img{aspect-ratio:1/.9}
  .product-photos img{aspect-ratio:auto;max-height:420px}
  .photo-stack img{height:auto;aspect-ratio:1/1.1}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
