:root{
  --cream:#f7f1e6;
  --paper:#fffaf2;
  --brown:#51260f;
  --brown-2:#6b3518;
  --brown-3:#8d5b36;
  --ink:#2f190e;
  --muted:#79695e;
  --line:#ddcfbf;
  --dark:#2b160c;
  --max:1220px;
  --pad:clamp(20px,4vw,54px)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.container{width:min(var(--max),calc(100% - var(--pad)*2));margin:auto}
.section{padding:clamp(82px,10vw,145px) 0}
.eyebrow{display:inline-block;font-size:.73rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--brown-2)}
.eyebrow-light{color:#e8cdb6}

.site-header{position:sticky;top:0;z-index:30;background:rgba(247,241,230,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(81,38,15,.12)}
.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:block;flex:0 0 auto}
.brand img{width:min(340px,32vw);height:auto}
.nav{display:flex;align-items:center;gap:23px;font-size:.88rem;font-weight:650}
.nav a{transition:opacity .2s}
.nav a:hover{opacity:.55}
.nav-cta{border:1px solid var(--brown);padding:10px 15px}
.menu-button{display:none;border:0;background:transparent;color:var(--brown);padding:8px}
.menu-button span{width:24px;height:2px;background:currentColor;display:block;margin:5px 0}

.hero{overflow:hidden;border-bottom:1px solid var(--line)}
.hero-grid{min-height:calc(100svh - 92px);display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center;padding-top:70px;padding-bottom:70px}
.hero-copy{max-width:720px}
.hero h1,.section-heading h2,.category-copy h3,.personalization h2,.cta h2{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.035em;line-height:.98}
.hero h1{font-size:clamp(3.3rem,7vw,7rem);margin:20px 0 28px;color:var(--brown)}
.hero-lead{font-size:clamp(1.03rem,1.5vw,1.22rem);color:var(--muted);max-width:650px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;font-weight:800;font-size:.88rem;letter-spacing:.02em;transition:.25s}
.button-dark{background:var(--brown);color:#fff}
.button-dark:hover,.button-light:hover{transform:translateY(-2px)}
.button-outline{border:1px solid var(--brown);color:var(--brown)}
.hero-tags{margin-top:42px;padding-top:22px;border-top:1px solid var(--line);display:flex;gap:20px;flex-wrap:wrap;font-size:.74rem;text-transform:uppercase;letter-spacing:.11em;color:var(--brown-3)}
.hero-mark{position:relative;min-height:560px;display:grid;place-items:center}
.mark-card{width:min(470px,95%);aspect-ratio:1/1.05;background:#fffaf2;border:1px solid var(--line);display:grid;place-items:center;position:relative;z-index:2;box-shadow:0 32px 70px rgba(81,38,15,.08)}
.mark-card img{width:75%;mix-blend-mode:multiply}
.mark-card span{position:absolute;bottom:28px;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:var(--brown-3)}
.wood-lines{position:absolute;inset:7% -18% 4% 18%;border:1px solid rgba(81,38,15,.16);border-radius:48% 52% 49% 51%;transform:rotate(-8deg)}
.wood-lines:before,.wood-lines:after{content:"";position:absolute;border:1px solid rgba(81,38,15,.12);border-radius:50%}
.wood-lines:before{inset:12% 8% 17% 13%}
.wood-lines:after{inset:27% 18% 30% 26%}

.catalog{background:var(--paper)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:52px}
.section-heading h2{font-size:clamp(2.7rem,5vw,5.3rem);margin:12px 0 0;color:var(--brown)}
.section-heading>p{max-width:480px;color:var(--muted);margin:0}
.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.category-card{min-height:650px;border:1px solid var(--line);background:var(--cream);display:grid;grid-template-rows:1.15fr .85fr;overflow:hidden}
.category-art{position:relative;min-height:360px;background:#e8d8c4;overflow:hidden}
.category-copy{padding:36px}
.category-number{font-family:Georgia,serif;color:var(--brown-3);font-size:1rem}
.category-copy h3{font-size:clamp(2.6rem,4.5vw,4.7rem);margin:10px 0 14px;color:var(--brown)}
.category-copy p{color:var(--muted);max-width:490px}
.category-copy a{display:inline-flex;gap:9px;align-items:center;margin-top:12px;font-weight:800;font-size:.87rem;border-bottom:1px solid var(--brown);padding-bottom:5px}

.wine-art{background:linear-gradient(135deg,#9b6945,#633416)}
.rack{position:absolute;left:10%;right:10%;height:18px;background:#3a1d0d;border-radius:3px;box-shadow:0 4px 0 rgba(255,255,255,.08)}
.r1{top:24%}.r2{top:49%}.r3{top:74%}
.bottle{position:absolute;width:48px;height:190px;background:#29170f;border-radius:12px 12px 8px 8px;bottom:18%;z-index:2;box-shadow:inset -8px 0 rgba(255,255,255,.04)}
.bottle:before{content:"";position:absolute;width:18px;height:45px;background:#29170f;left:15px;top:-36px;border-radius:6px 6px 0 0}
.b1{left:20%;transform:rotate(-8deg)}.b2{left:47%;height:210px}.b3{right:19%;transform:rotate(7deg)}
.pingo-art{background:linear-gradient(145deg,#d7b68f,#8a5633)}
.barrel{position:absolute;width:260px;height:260px;border:25px solid #5b2d14;border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 5px rgba(255,255,255,.08)}
.barrel:before,.barrel:after{content:"";position:absolute;left:-20px;right:-20px;height:12px;background:#3b1b0b}
.barrel:before{top:70px}.barrel:after{bottom:70px}
.neck{position:absolute;width:34px;height:125px;background:#3b1b0b;left:50%;top:7%;transform:translateX(-50%);border-radius:10px}
.tap{position:absolute;width:95px;height:18px;background:#27140a;left:50%;top:48%;transform:translateX(-5%)}
.tap:after{content:"";position:absolute;width:14px;height:55px;background:#27140a;right:0;top:6px}
.glass{position:absolute;width:72px;height:82px;border:4px solid rgba(255,255,255,.72);border-top:0;left:64%;bottom:10%;border-radius:0 0 14px 14px}
.catalog-note{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;gap:20px;justify-content:space-between;color:var(--muted)}
.catalog-note strong{color:var(--brown);white-space:nowrap}

.personalization{background:var(--dark);color:#fff}
.personalization-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:8vw;align-items:center}
.personalization-mark{background:#f8f1e6;padding:8%;display:grid;place-items:center;aspect-ratio:1.05}
.personalization-mark img{width:78%;mix-blend-mode:multiply}
.personalization h2{font-size:clamp(3rem,5.7vw,6rem);margin:18px 0 28px}
.personalization-copy>p{color:#c9b5a5;max-width:650px;font-size:1.05rem}
.mini-features{display:grid;grid-template-columns:1fr;gap:0;margin-top:40px;border-top:1px solid rgba(255,255,255,.18)}
.mini-features span{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:.86rem;letter-spacing:.04em}

.steps{background:var(--cream)}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.step{padding:34px 34px 16px 0;border-right:1px solid var(--line)}
.step+.step{padding-left:34px}
.step:last-child{border-right:0}
.step>span{font-family:Georgia,serif;color:var(--brown-3)}
.step h3{font-family:Georgia,serif;color:var(--brown);font-size:2rem;margin:48px 0 10px}
.step p{color:var(--muted)}

.cta{background:#613116;color:#fff;padding:clamp(80px,10vw,140px) 0}
.cta-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}
.cta h2{font-size:clamp(3rem,5.7vw,6rem);margin:18px 0 0}
.cta-side p{color:#dbc4b3;margin:0 0 28px}
.button-light{background:#fff;color:var(--brown)}

.footer{background:#f1e7da;padding:44px 0 24px;border-top:1px solid var(--line)}
.footer-main{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:center;padding-bottom:35px}
.footer-logo img{width:300px;mix-blend-mode:multiply}
.footer-main p{color:var(--muted);margin:0}
.back-top{font-size:.83rem;font-weight:700}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;color:#8a7769;font-size:.75rem}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:920px){
  .header-inner{height:78px}
  .brand img{width:260px}
  .menu-button{display:block}
  .nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--cream);padding:20px var(--pad) 28px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}
  .nav.open{display:flex}
  .hero-grid{min-height:auto;grid-template-columns:1fr;padding-top:70px;padding-bottom:80px}
  .hero-mark{min-height:440px}
  .mark-card{width:min(430px,88vw)}
  .category-grid,.personalization-grid,.cta-grid{grid-template-columns:1fr}
  .personalization-mark{max-width:580px}
  .cta-side{max-width:650px}
  .footer-main{grid-template-columns:1fr}
}
@media(max-width:650px){
  .brand img{width:205px}
  .hero h1{font-size:clamp(3rem,14vw,4.9rem)}
  .hero-mark{min-height:370px}
  .category-card{min-height:560px}
  .category-art{min-height:310px}
  .catalog-note{flex-direction:column}
  .catalog-note strong{white-space:normal}
  .section-heading{align-items:start;flex-direction:column;gap:18px}
  .steps-grid{grid-template-columns:1fr}
  .step,.step+.step{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}
  .step h3{margin-top:22px}
  .footer-bottom{flex-direction:column;gap:10px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}
