
:root { color-scheme: dark; --bg:#050505; --panel:#0c0c0c; --ink:#eeeae4; --soft:#c8c1b9; --muted:#a29a91; --line:#3c3936; --warm:#b7a28d; }
* { box-sizing: border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Georgia,'Times New Roman',serif; -webkit-font-smoothing:antialiased; min-height:100vh; }
img {max-width:100%;} a {color:inherit} button,input,textarea {font:inherit;}
.skip { position:absolute; left:-9999px; background:#fff;color:#000;padding:12px;z-index:999; } .skip:focus {left:10px;top:10px;}
header { position:relative;z-index:3; width:100%; }
.navigation {width:min(100%,940px); margin:auto; padding:39px 22px 0; display:flex; justify-content:center; align-items:center; gap:clamp(22px,6vw,92px);}
.navigation a { font: 11px/1.5 Georgia,serif; text-transform:uppercase; color:#c7c2be; letter-spacing:.3em; text-decoration:none; white-space:nowrap; padding:9px 0; border-bottom:1px solid transparent;}
.navigation a:hover,.navigation a:focus-visible,.navigation a[aria-current='page'] {color:#f4f1ed; border-color:#a6a09a;}
.site-name {margin:75px auto 0;text-align:center;letter-spacing:.45em;font-size:clamp(23px,3.1vw,35px);font-weight:normal;padding-left:.45em;}
.subnav { margin:28px auto 0; padding-top:0; }
.site-name a {text-decoration:none}
.home-hero {position:relative; isolation:isolate; min-height:100vh; min-height:100svh; display:flex;flex-direction:column; overflow:hidden; }
.hero-center{position:relative;z-index:1; width:100%;margin:auto; padding:0 14px 18vh; display:flex;align-items:center;justify-content:center;flex-direction:column;}
.logo-replay {display:block;width:min(825px,86vw);border:0;background:transparent;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.logo-replay:focus-visible{outline:1px solid #ddd;outline-offset:4px;}
.hero-logo{width:100%;height:auto;display:block;animation:zoom 6.5s cubic-bezier(.16,1,.3,1) both;transform-origin:center;}
@keyframes zoom {0%{opacity:.18; transform:scale(.78); filter:blur(4px)} 25%{opacity:.92;filter:blur(0)} 100%{opacity:1; transform:scale(1);filter:blur(0)}}
.tagline{margin:-8px 12px 0;text-align:center;text-transform:uppercase;letter-spacing:.36em;font-size:clamp(10px,1.1vw,14px);line-height:1.9;color:#e1dcd7;animation:tagin 2s 1.5s both;}
@keyframes tagin {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.vineyard-backdrop {z-index:-1;position:absolute;left:0;right:0;bottom:0;height:clamp(240px,33vh,385px);background:url('assets/vineyard-twilight.webp') center bottom/cover no-repeat; -webkit-mask-image:linear-gradient(transparent,#000 23%,#000); mask-image:linear-gradient(transparent,#000 23%,#000);}
.vineyard-backdrop::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42),transparent 25%,transparent 75%,rgba(0,0,0,.42));}
.page {max-width:1050px;margin:74px auto 0;padding:0 28px 95px;min-height:calc(100vh - 265px);}
h1.page-title{text-align:center;font-size:clamp(26px,3vw,36px);font-weight:normal;letter-spacing:.3em;padding-left:.3em;text-transform:uppercase;margin:0;}
.rule{display:block;width:54px;height:1px;background:#92857b;margin:31px auto 46px;}
.lede{text-align:center;max-width:640px;margin:0 auto 38px;color:var(--soft);font-size:clamp(16px,1.75vw,19px);line-height:1.95;}
.disclaimer{text-align:center;margin:25px auto 0;max-width:580px;color:#928b85;font:12px/1.7 Arial,sans-serif;letter-spacing:.04em;}
.story-layout {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:65px;align-items:center;max-width:950px;margin:0 auto;}
.story-layout p{font-size:clamp(16px,1.6vw,18px);line-height:2;color:#c5beb7;}
.story-photo{width:100%;height:390px;object-fit:cover;filter:grayscale(.65) brightness(.72);border:1px solid #39332d;}
.wine-grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:48px;}
.wine-card {display:flex;flex-direction:column;gap:12px;align-items:center; padding:20px 8px 23px; min-width:0; text-align:center;text-decoration:none;border:1px solid #242221; background:linear-gradient(#0d0c0c,#050505);transition:border .2s,transform .2s;}
.wine-card:hover,.wine-card:focus-visible{border-color:#797168;transform:translateY(-3px)}
.wine-card img{width:105px;height:238px;object-fit:contain;display:block;}
.wine-card .wine-name{font-size:12px;letter-spacing:.17em;text-transform:uppercase;line-height:1.6;min-height:2.7em;}
.wine-card small{color:#9f9891;font:10px/1.5 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;}
.wine-detail {margin:10px auto 0;max-width:800px;display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:center;}
.bottle-panel {border:1px solid #2b2724; background:#0a0909;min-height:460px;display:flex;align-items:center;justify-content:center;padding:40px;}
.bottle-panel img {height:385px;width:auto;}
.wine-copy h1 {font-size:clamp(25px,3.5vw,37px);letter-spacing:.19em;font-weight:normal;text-transform:uppercase;line-height:1.35;}
.wine-copy p{line-height:2;color:#c7bfb8;font-size:17px;}
.eyebrow{font:11px/1.5 Arial,sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#a89b90;}
.linkbutton {display:inline-block;margin-top:24px;border:1px solid #8c847d;color:#e3dfd9;padding:16px 24px;text-decoration:none;text-align:center;font:11px/1.6 Georgia,serif;letter-spacing:.15em;text-transform:uppercase;}
.linkbutton:hover,.linkbutton:focus-visible{background:#ddd6ce;color:#111;}
.backlink{display:inline-block;margin:4px 0 36px;color:#aaa39c;font:11px/1.6 Arial,sans-serif;text-transform:uppercase;letter-spacing:.19em;text-decoration:none;}
.backlink:hover{text-decoration:underline;}
.contact-layout{max-width:850px;margin:30px auto;display:grid;grid-template-columns:1fr 1.12fr;gap:66px;align-items:start;}
.contact-layout p{color:#c8c0b7;font-size:17px;line-height:2;}
.contact-layout form{display:flex;flex-direction:column;gap:14px;}
.contact-layout label{font:11px/1.4 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#beb5ad;margin-top:3px;}
.contact-layout input,.contact-layout textarea{width:100%;border:1px solid #68615b;background:#090909;color:#fff;border-radius:0;padding:14px;min-height:49px;outline:none;}
.contact-layout textarea{min-height:150px;resize:vertical;}
.contact-layout input:focus,.contact-layout textarea:focus{border-color:#ddd1c4;}
.contact-layout button{background:#171514;border:1px solid #827b75;color:#e7e2dc;cursor:pointer;text-transform:uppercase;letter-spacing:.18em;font-size:11px;padding:17px;}
.contact-layout button:hover{background:#292622;}
#form-status{color:#d8ccb8;font:12px/1.8 Arial,sans-serif;}
footer{margin-top:auto;text-align:center;padding:24px 18px 29px;border-top:1px solid #24211f;color:#8f8982;font:10px/1.7 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;}
@media(max-width:760px){
.navigation{padding:30px 16px 0;gap:clamp(15px,4vw,35px)}.navigation a{font-size:10px;letter-spacing:.12em;}
.hero-center{padding:15px 0 18vh}.logo-replay{width:min(110vw,570px)}.tagline{font-size:10px;letter-spacing:.1em;max-width:92vw;}
.vineyard-backdrop{height:clamp(220px,35vh,320px)}.page{margin-top:65px;padding:0 22px 82px;}
.site-name{margin-top:55px;font-size:25px;letter-spacing:.27em;padding-left:.27em;}
.story-layout{grid-template-columns:1fr;gap:26px}.story-photo{height:280px;}
.wine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wine-card img{height:210px;width:95px;}.wine-card .wine-name{font-size:11px;}
.wine-detail{grid-template-columns:1fr;gap:25px;}.bottle-panel{min-height:330px;}.bottle-panel img{height:285px;}.wine-copy h1{font-size:27px;}
.contact-layout{grid-template-columns:1fr;gap:24px;}
}
@media(max-width:365px){.navigation{gap:13px}.navigation a{font-size:9px;letter-spacing:.05em}.site-name{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-logo,.tagline{animation:none}}

/* 2018 Cabernet Sauvignon · no white bottle background */
.cabernet-feature{max-width:850px;min-height:520px;margin:38px auto 0;display:grid;grid-template-columns:47% 53%;align-items:center;text-decoration:none;color:inherit;background:radial-gradient(ellipse at 28% 54%,#26201d 0%,#11100f 30%,#070707 68%,#050505 100%);border:1px solid #2b2622;overflow:hidden;transition:border-color .2s;}
.cabernet-feature:hover,.cabernet-feature:focus-visible{border-color:#998675;}
.cabernet-bottle-frame{height:505px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:22px 10px;}
.cabernet-bottle-frame img{height:100%;width:auto;object-fit:contain;filter:drop-shadow(15px 20px 15px rgba(0,0,0,.5));}
.cabernet-feature-text{padding:20px 55px 20px 25px;display:flex;flex-direction:column;align-items:flex-start;gap:21px;}
.cabernet-feature-text h2{font:normal clamp(26px,3vw,38px)/1.3 Georgia,serif;letter-spacing:.05em;margin:0;}
.wine-feature-details{font:15px/1.8 Georgia,serif;color:#c6b5a2;}
.feature-link{border-bottom:1px solid #9f8a77;letter-spacing:.16em;padding-bottom:8px;text-transform:uppercase;font:11px/2 Arial,sans-serif;color:#e2dbd4;}
.cabernet-detail{display:grid;grid-template-columns:40% 60%;gap:15px;margin:0 auto;max-width:1150px;align-items:start;}
.cabernet-product{border:1px solid #282320;min-height:670px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 50%,#27211d 0%,#12100f 50%,#080808 86%);padding:24px 18px;position:sticky;top:10px;overflow:hidden;}
.cabernet-product img{display:block;width:auto;max-width:100%;height:min(69vw,630px);object-fit:contain;filter:drop-shadow(8px 15px 16px #000);}
.cabernet-description{padding:20px 18px 20px 45px;}
.cabernet-description h1{font:normal clamp(26px,3.1vw,41px)/1.25 Georgia,serif;letter-spacing:.035em;margin:17px 0 5px;}
.detail-subtitle{font-size:15px;color:#d1b99e;line-height:1.7;margin:8px 0 18px;}
.fine-rule{display:block;width:100%;height:1px;background:#50463e;margin:27px 0;}
.cabernet-description h2{font:normal 15px/1.4 Georgia,serif;letter-spacing:.24em;text-transform:uppercase;color:#e7dfd5;margin:27px 0 17px;}
.wine-specs{padding:0;margin:0 0 30px;}.spec-row{display:grid;grid-template-columns:32% 68%;padding:11px 0;border-bottom:1px solid #292521;gap:14px;}.spec-row dt{font:10px/1.6 Arial,sans-serif;color:#baa48d;text-transform:uppercase;letter-spacing:.14em;}.spec-row dd{margin:0;color:#eee4da;font:14px/1.6 Georgia,serif;}
.tasting-notes p{margin:0 0 14px;color:#c7c0bb;line-height:1.83;font-size:15px;}
.detail-footnote{color:#a99b8d;font:12px/1.6 Georgia,serif;margin-top:20px;}
@media(max-width:760px){.cabernet-feature{grid-template-columns:1fr;gap:0;padding-bottom:30px;min-height:0;margin-top:14px;}.cabernet-bottle-frame{height:370px;padding:17px 20px 0;}.cabernet-feature-text{padding:2px 26px 22px;align-items:center;text-align:center;gap:17px;}.cabernet-feature-text h2{font-size:27px;}.cabernet-detail{grid-template-columns:1fr;gap:20px;}.cabernet-product{position:static;min-height:0;height:420px;}.cabernet-product img{height:396px;}.cabernet-description{padding:5px 5px 30px;}.cabernet-description h1{font-size:29px;}.spec-row{grid-template-columns:31% 69%;}.tasting-notes p{font-size:15px;}}

/* Product photography: preserve the actual tall, full-size Cabernet bottle proportions. */
.cabernet-bottle-frame img,
.cabernet-product img {
  aspect-ratio: 461 / 1726;
  object-fit: contain;
  object-position: center;
  max-width: 100%;
  transform: none;
}
/* Allow more of the real bottle to be seen at full height in its product setting. */
.cabernet-bottle-frame{height:590px;padding:24px 14px;}
.cabernet-bottle-frame img{height:100%;width:auto;}
.cabernet-feature{min-height:590px;}
.cabernet-product{min-height:780px;}
.cabernet-product img{height:735px;width:auto;}
@media(max-width:760px){
  .cabernet-feature{min-height:0;}
  .cabernet-bottle-frame{height:500px;padding:24px 15px 8px;}
  .cabernet-bottle-frame img{height:100%;width:auto;}
  .cabernet-product{min-height:0;height:510px;padding:15px;}
  .cabernet-product img{height:475px;width:auto;}
}

/* Jason Carroll's approved photo and biography. Preserve the photograph's original framing. */
.story-page{max-width:1210px;margin-top:67px;}
.story-content{display:grid;grid-template-columns:minmax(300px,42%) minmax(0,1fr);gap:clamp(30px,5vw,78px);align-items:start;}
.story-portrait{margin:0;position:sticky;top:30px;}
.story-portrait img{display:block;width:100%;height:auto;object-fit:contain;border:1px solid #38322d;}
.story-portrait figcaption{margin-top:15px;font:10px/1.5 Arial,sans-serif;letter-spacing:.20em;text-transform:uppercase;color:#aa9b8d;}
.story-biography{padding-top:8px;}
.story-kicker{font:11px/1.7 Arial,sans-serif;letter-spacing:.25em;text-transform:uppercase;color:#b7a28d;margin:0 0 14px;}
.story-biography h2{font:normal clamp(35px,4vw,56px)/1.2 Georgia,serif;letter-spacing:.045em;color:#eeeae4;margin:0;}
.story-subtitle{font:normal 15px/1.8 Georgia,serif;letter-spacing:.15em;color:#ceb69c;margin:10px 0 35px;text-transform:uppercase;}
.story-prose p{color:#c8c0b8;font-size:clamp(15px,1.45vw,17px);line-height:1.92;margin:0 0 24px;}
.story-prose p:last-child{color:#e8d7c6;}
@media(max-width:760px){
.story-page{margin-top:56px;}
.story-content{grid-template-columns:1fr;gap:36px;}
.story-portrait{position:static;max-width:500px;width:100%;margin:auto;}
.story-portrait img{height:auto;}
.story-biography{padding:0 2px;}
.story-biography h2{font-size:39px;}
.story-subtitle{margin-bottom:26px;}
.story-prose p{font-size:16px;line-height:1.9;}
}

/* Simple Netlify-powered contact form */
.honeypot {position:absolute!important;left:-10000px!important;top:auto!important;height:1px!important;width:1px!important;overflow:hidden!important;}
.form-note{font:12px/1.7 Arial,sans-serif!important;letter-spacing:0!important;color:#aaa098!important;margin:0;}
.contact-layout a{color:#e4dbd1;text-decoration-color:#8b7a69;text-underline-offset:4px;}

/* Homepage refinement, October 2026: half-scale logo, moved up, feathered alpha. */
.home-hero .hero-center {
  margin: 0 auto auto;
  padding: clamp(10px, 3vh, 36px) 14px 0;
}
.home-hero .logo-replay {
  width: min(412px, 52vw);
}
.home-hero .tagline {
  margin: 8px 12px 0;
  max-width: 92vw;
  letter-spacing: .24em;
}
@media (max-width:760px) {
  .home-hero .hero-center {padding: clamp(12px, 3.5vh, 28px) 10px 0;}
  .home-hero .logo-replay {width: min(55vw, 305px);}
  .home-hero .tagline {font-size: clamp(10px, 2.5vw, 12px);letter-spacing: .1em;line-height: 1.75;}
}


/* Approved October 2026: exact client-selected photo is the first Our Wines gallery image.
   The image is not stretched or cropped: preserve the naturally tall bottle. */
.cabernet-feature {
  max-width: 1010px; min-height: 610px;
  grid-template-columns: minmax(0,46%) minmax(0,54%);
  background: linear-gradient(115deg,#130f0c,#0d0c0b 50%,#060606 90%);
  border:1px solid #312b25;
}
.cabernet-barrel-photo {
  background:#120f0d; display:flex; align-items:center; justify-content:center;
  overflow:hidden; width:100%; align-self:stretch; min-width:0;
}
.cabernet-barrel-photo img {
  display:block; width:100%; height:auto; max-width:100%;
  object-fit:contain; object-position:center; aspect-ratio:548/853;
}
.cabernet-feature-text {padding:32px clamp(24px,5.3vw,72px);gap:24px;}
.cabernet-feature-text h2 {font-size:clamp(29px,3.5vw,44px);}
@media(max-width:760px){
  .cabernet-feature {grid-template-columns:1fr;min-height:0;max-width:460px;margin:17px auto 0;}
  .cabernet-barrel-photo {width:100%;height:auto;align-self:auto;}
  .cabernet-barrel-photo img {width:100%;height:auto;max-height:none;}
  .cabernet-feature-text {padding:26px 24px 32px;gap:16px;}
  .cabernet-feature-text h2 {font-size:clamp(25px,6vw,31px);}
}

/* 2026-10-14 approved price */
.wine-feature-price{font:normal 30px/1.25 Georgia,serif;color:#eee3d7;letter-spacing:.05em;margin:-4px 0 0;}
@media(max-width:760px){.wine-feature-price{font-size:28px;}}
