
:root{
  --cream:#f1e8ce;
  --paper:#f7efdc;
  --wine:#7d1e22;
  --ink:#17120e;
  --muted:#665f55;
  --line:rgba(23,18,14,.17);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.site-header{
  border-bottom:1px solid var(--line);
  background:rgba(241,232,206,.97);
}
.nav{
  max-width:1320px;margin:auto;min-height:150px;padding:18px 36px;
  display:grid;grid-template-columns:1fr 1fr minmax(260px,360px) 1fr 1fr;
  align-items:center;gap:22px;
}
.nav>a:not(.logo){
  text-align:center;text-transform:uppercase;letter-spacing:.18em;font-size:11px;
}
.logo{display:flex;justify-content:center}
.logo img{width:330px;max-height:112px;object-fit:contain}

.eyebrow{
  margin:0 0 22px;color:var(--wine);font-weight:700;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
}
.hero{
  max-width:1440px;margin:auto;min-height:870px;padding:54px 34px 40px;
  display:grid;grid-template-columns:.72fr 1.28fr;gap:30px;
  border-left:1px solid var(--line);border-right:1px solid var(--line);
}
.hero-copy{align-self:center;padding:10px 0 40px}
h1,h2{
  margin:0;font-family:Georgia,"Times New Roman",serif;
  font-weight:600;letter-spacing:-.025em;
}
.hero h1{
  font-size:clamp(64px,7.7vw,112px);
  line-height:.95;margin-bottom:38px;
}
.lead,.large-copy{font-size:20px;line-height:1.62}
.lead{max-width:34ch}
.text-link{
  display:inline-block;margin-top:28px;padding-bottom:4px;
  border-bottom:1px solid var(--wine);font-size:13px;letter-spacing:.06em;
}

.hero-collage{position:relative;min-height:730px}
.print-card{
  position:absolute;background:var(--paper);border:1px solid var(--line);
  padding:16px 16px 48px;box-shadow:0 18px 38px rgba(30,22,12,.07);
}
.card-kicker{
  margin:0 0 10px;color:var(--wine);font-size:11px;font-weight:700;
  letter-spacing:.20em;text-transform:uppercase;
}
.print-card img{width:100%;height:auto;object-fit:cover}
.card-meta{position:absolute;left:16px;bottom:12px}
.card-meta strong{display:block;font-size:15px;font-weight:500}
.card-meta span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.card-main{width:72%;right:4%;top:0;transform:rotate(1deg)}
.card-main img{aspect-ratio:1.44/1;object-fit:cover}
.card-small-one{width:33%;left:5%;top:52%;transform:rotate(-4.5deg)}
.card-small-one img{aspect-ratio:1.25/1}
.card-small-two{width:28%;right:1%;top:62%;transform:rotate(3.5deg)}
.card-small-two img{aspect-ratio:1.12/1}

.split-section{
  max-width:1280px;margin:auto;padding:120px 48px;
  display:grid;grid-template-columns:.82fr 1.18fr;gap:110px;
  border:1px solid var(--line);border-bottom:0;
}
.split-section h2,.rostavin h2,.archive-cta h2,.contact h2{
  font-size:clamp(52px,5.8vw,86px);line-height:.97;
}
.body-copy{max-width:650px}
.body-copy p:not(.large-copy),.rostavin-copy p:not(.large-copy){
  line-height:1.75;color:#39322b;
}

.rostavin{
  max-width:1280px;margin:auto;padding:120px 48px;
  display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;
  background:var(--wine);color:var(--cream);
}
.rostavin .eyebrow{color:#e8b7a8}
.rostavin-copy p{color:var(--cream)!important}
.bottle-placeholder{
  min-height:600px;border:1px solid rgba(241,232,206,.45);
  display:grid;place-items:center;
  background:rgba(0,0,0,.05);
}
.bottle-placeholder span{
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
}

.archive-cta{
  max-width:1280px;margin:auto;padding:120px 48px;
  border-left:1px solid var(--line);border-right:1px solid var(--line);
}
.contact{
  padding:120px 48px;text-align:center;border-top:1px solid var(--line);
}
.contact a{
  display:inline-block;margin-top:18px;font-size:clamp(26px,4vw,56px);
  border-bottom:1px solid var(--wine);
}
footer{
  border-top:1px solid var(--line);padding:24px 32px;
  display:flex;justify-content:space-between;
  font-size:10px;letter-spacing:.16em;text-transform:uppercase;
}

/* Gallery */
.gallery-page{overflow-x:hidden}
.gallery-header{
  position:fixed;inset:0 0 auto 0;z-index:1000;height:112px;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:12px 28px;
  background:linear-gradient(to bottom, rgba(241,232,206,.98), rgba(241,232,206,.8) 62%, transparent);
  pointer-events:none;
}
.gallery-header>*{pointer-events:auto}
.gallery-header>a:first-child,.gallery-header span{
  font-size:10px;letter-spacing:.18em;text-transform:uppercase;
}
.gallery-header span{justify-self:end;color:var(--wine)}
.gallery-logo img{width:230px;max-height:80px;object-fit:contain}
.gallery-canvas{
  position:relative;min-height:4300px;
  background:
    radial-gradient(circle at 20% 8%,rgba(255,255,255,.2),transparent 18%),
    var(--cream);
}
.floating-image{
  position:absolute;margin:0;cursor:grab;user-select:none;touch-action:none;
  transition:box-shadow .18s ease;
}
.floating-image img{width:100%;pointer-events:none}
.floating-image:hover{box-shadow:0 16px 30px rgba(30,22,12,.09);z-index:30}
.floating-image:active{cursor:grabbing}

@media(max-width:900px){
  .nav{grid-template-columns:1fr 1fr;padding:14px 18px 20px;min-height:126px}
  .logo{grid-column:1/-1;grid-row:1}
  .logo img{width:250px}
  .hero,.split-section,.rostavin{grid-template-columns:1fr}
  .hero{padding:24px 16px 60px;min-height:auto}
  .hero-collage{min-height:620px}
  .card-main{width:86%;right:4%}
  .card-small-one{width:42%;left:2%;top:56%}
  .card-small-two{width:35%;right:2%;top:66%}
  .split-section,.rostavin,.archive-cta{padding:82px 26px;gap:48px}
  .bottle-placeholder{min-height:420px}
  .gallery-header{height:92px;padding:10px 14px}
  .gallery-logo img{width:180px}
  .gallery-canvas{min-height:6400px}
  .floating-image{
    width:76vw!important;left:12vw!important;transform:none!important;
  }
  .floating-image:nth-child(1){top:130px!important}
  .floating-image:nth-child(2){top:530px!important}
  .floating-image:nth-child(3){top:930px!important}
  .floating-image:nth-child(4){top:1330px!important}
  .floating-image:nth-child(5){top:1730px!important}
  .floating-image:nth-child(6){top:2130px!important}
  .floating-image:nth-child(7){top:2530px!important}
  .floating-image:nth-child(8){top:2930px!important}
  .floating-image:nth-child(9){top:3330px!important}
  .floating-image:nth-child(10){top:3730px!important}
  .floating-image:nth-child(11){top:4130px!important}
  .floating-image:nth-child(12){top:4530px!important}
  .floating-image:nth-child(13){top:4930px!important}
  .floating-image:nth-child(14){top:5330px!important}
  .floating-image:nth-child(15){top:5730px!important}
  .floating-image:nth-child(16){top:6130px!important}
}
