@charset "UTF-8";
:root{color-scheme:light;--paper:#fffdf8;--ink:#272f26;--muted:#5b6457;--line:#dedfd4;--green:#4d5d3f;--soft:#f1f3e9;--amber:#a95827;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-size:16px;scroll-behavior:smooth;scroll-padding-top:105px}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b06b32;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}p{line-height:1.7}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(3.2rem,6.2vw,6.5rem);line-height:1.02;letter-spacing:-.055em}h2{font-size:clamp(2.3rem,4.4vw,4.1rem);line-height:1.08;letter-spacing:-.04em}h3{font-size:1.65rem;line-height:1.2}.wrap{max-width:1320px;margin-inline:auto;padding-inline:clamp(22px,5vw,76px)}.eyebrow{font-size:.78rem;letter-spacing:.17em;text-transform:uppercase;line-height:1.5;color:var(--muted);font-weight:600}.skip{position:absolute;left:12px;top:-100px;background:var(--ink);color:#fff;padding:14px;z-index:50}.skip:focus{top:12px}.header{border-bottom:1px solid var(--line)}.nav{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:block;flex:none}.brand img{width:190px;mix-blend-mode:multiply}.nav-right,.nav-links,.languages{display:flex;align-items:center;gap:28px}.nav-links a{text-decoration:none;font-size:.875rem;padding:12px 0}.nav-links a:hover{color:var(--amber)}.languages{gap:11px;font-size:.78rem}.languages a{text-decoration:none;padding:9px 1px}.languages [aria-current]{border-bottom:1px solid var(--ink);font-weight:700}.hero{display:grid;grid-template-columns:1.08fr .92fr;min-height:660px;gap:clamp(30px,5vw,78px);padding-top:54px;padding-bottom:70px;align-items:center}.hero h1{margin:25px 0 27px}.hero-text>p{max-width:540px;font-size:1.075rem}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:31px}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;padding:15px 22px;border:1px solid var(--green);background:var(--green);color:#fff;text-decoration:none;font-size:.875rem;line-height:1.3;border-radius:2px;transition:background .15s}.button:hover{background:#35482c}.button.secondary{background:transparent;color:var(--ink);border-color:#b8c0af}.button.secondary:hover{background:var(--soft)}.hero-caption{font-size:.78rem!important;color:var(--muted);margin-top:20px!important}.hero-figure{position:relative;padding-bottom:21px}.hero-image{width:100%;height:550px;object-fit:cover;object-position:51% 42%;border-radius:180px 180px 0 0}.image-caption{font-size:.75rem;letter-spacing:.025em;color:var(--muted);margin-top:14px}.hero-stamp{position:absolute;left:-24px;bottom:72px;width:110px;height:110px;background:#f8f2d6;color:var(--ink);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;transform:rotate(-8deg);font-size:.72rem;letter-spacing:.07em;line-height:1.2}.hero-stamp strong{font-family:var(--serif);font-size:1.8rem;font-weight:400;letter-spacing:-.07em}.principles{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:23px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;font-size:.8rem;letter-spacing:.11em;text-transform:uppercase}.section{padding-block:90px}.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,8vw,110px)}.story .eyebrow{margin-bottom:24px}.story-body{padding-top:8px}.story-body p+p{margin-top:19px}.story-note{margin-top:31px;color:var(--amber);font-family:var(--serif);font-size:1.5rem;line-height:1.45}.release{background:var(--soft)}.section-head{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:38px}.section-head .eyebrow{margin-bottom:20px}.section-head>p{max-width:360px;color:var(--muted)}.packages{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cdd3c3;border-bottom:1px solid #cdd3c3}.package{padding:32px 27px 31px;display:flex;flex-direction:column;align-items:start;position:relative}.package+.package{border-left:1px solid #cdd3c3}.quantity{font-family:var(--serif);font-size:4.7rem;line-height:1;letter-spacing:-.04em;margin-bottom:8px}.unit{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:27px}.package h3{min-height:2.5em;margin-bottom:14px}.package p{font-size:.94rem;flex:1;max-width:290px;margin-bottom:23px}.package a{font-size:.875rem}.availability{margin-top:23px;color:var(--muted);font-size:.875rem;max-width:900px}.special{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,6vw,84px);align-items:center;margin-top:70px}.special img{width:100%;max-width:500px;aspect-ratio:1.5;object-fit:cover}.special .eyebrow{margin-bottom:16px}.special h3{font-size:2.25rem;margin-bottom:20px}.special p{max-width:540px}.special a{display:inline-block;margin-top:20px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:36px}.step{border-top:1px solid var(--line);padding-top:24px}.step-number{font-size:.78rem;letter-spacing:.13em;color:var(--amber);margin-bottom:23px}.step h3{font-size:1.4rem;margin-bottom:13px}.step p{color:var(--muted);font-size:.94rem}.future{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:65px}.future .eyebrow{margin-bottom:23px}.future p+p{margin-top:17px}.signature{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--amber);margin-top:20px}.contact{background:#edf1e6;padding-block:72px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.contact h2{margin:20px 0 24px;max-width:550px}.contact p{max-width:540px}.contact-details{border-left:1px solid #c7cfbd;padding-left:40px;display:flex;flex-direction:column;align-items:start;gap:16px}.contact-details h3{font-size:1.6rem;margin-bottom:7px}.contact-details p{font-size:.94rem}.footer{padding-block:32px}.footer-top{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:25px;align-items:center}.footer-top img{width:140px;mix-blend-mode:multiply}.legal-links{display:flex;gap:22px;flex-wrap:wrap;font-size:.875rem}.business-line{font-size:.75rem;line-height:1.8;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px;margin-top:20px;color:var(--muted);font-size:.75rem}.legal-main{max-width:860px;padding-top:60px;padding-bottom:90px}.legal-main h1{font-size:clamp(2.7rem,5vw,4.3rem);margin:20px 0 22px}.legal-main h2{font-size:1.6rem;letter-spacing:-.02em;margin-top:34px;margin-bottom:12px}.legal-main h3{font-size:1.2rem;margin-top:22px;margin-bottom:10px}.legal-main p+p{margin-top:13px}.legal-main ul{line-height:1.8;padding-left:23px}.legal-main li+li{margin-top:6px}.legal-main .updated{font-size:.875rem;color:var(--muted);margin-bottom:35px}.legal-table{width:100%;border-collapse:collapse;margin:25px 0;font-size:.875rem}.legal-table th,.legal-table td{padding:15px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.5}.legal-table th{font-weight:600}.facts{display:grid;grid-template-columns:180px 1fr;gap:12px 24px;line-height:1.6}.facts dt{color:var(--muted)}.facts dd{margin:0}.notice{padding:22px;background:var(--soft);border-left:3px solid var(--green);margin-block:25px}.back{display:inline-block;margin-bottom:20px;font-size:.875rem}.not-found{padding-block:100px;max-width:700px}.not-found h1{font-size:3.5rem;margin-bottom:25px}
@media(min-width:1550px){.hero{min-height:730px}.hero-image{height:600px}}
@media(max-width:900px){.nav-links{gap:18px}.nav-right{gap:23px}.hero{gap:30px;min-height:0}.hero-image{height:510px}.hero h1{font-size:4.5rem}.story{gap:45px}.package{padding-inline:18px}.section-head{display:block}.section-head>p{margin-top:25px;max-width:600px}.contact-grid{gap:40px}.hero-stamp{width:92px;height:92px;left:-15px}.future{gap:35px}}
@media(max-width:680px){.nav{min-height:85px;gap:15px;flex-wrap:wrap;padding-top:20px;padding-bottom:18px}.brand img{width:155px}.nav-right{display:contents}.languages{margin-left:auto}.nav-links{width:100%;order:3;justify-content:space-between;gap:10px}.nav-links a{font-size:.8rem;padding-block:6px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:35px;padding-bottom:36px;gap:32px}.hero h1{font-size:clamp(3.1rem,11.5vw,4.5rem);margin-top:23px}.hero-text>p{font-size:1rem}.hero-image{height:390px;border-radius:140px 140px 0 0;object-position:50% 43%}.hero-stamp{left:15px;bottom:55px}.hero-figure{margin-inline:16px;padding-bottom:0}.actions{gap:10px;margin-top:25px}.button{padding-inline:18px}.principles{justify-content:start;column-gap:25px;font-size:.7rem;padding-block:21px}.section{padding-block:57px}.story,.special,.future,.contact-grid{grid-template-columns:1fr;gap:29px}.story-body{padding-top:0}.story .eyebrow{margin-bottom:17px}.packages{grid-template-columns:1fr}.package{padding:26px 0;display:grid;grid-template-columns:80px 1fr;column-gap:22px;align-items:start}.package+.package{border-left:0;border-top:1px solid #cdd3c3}.quantity{font-size:4.5rem;grid-column:1;grid-row:1/3}.unit{grid-column:1;grid-row:3;margin:0;font-size:.7rem}.package h3{grid-column:2;min-height:0;margin-bottom:13px;font-size:1.6rem}.package p{grid-column:2;max-width:none;margin-bottom:20px}.package a{grid-column:2}.special{margin-top:40px}.special img{max-width:none}.steps{grid-template-columns:1fr;gap:25px}.step{display:grid;grid-template-columns:34px 1fr;gap:7px 12px}.step-number{grid-row:1/3;margin-top:5px}.step h3{margin:0}.step p{grid-column:2}.future .eyebrow{margin-bottom:18px}.contact{padding-block:54px}.contact-details{border-left:0;border-top:1px solid #c7cfbd;padding:27px 0 0;gap:14px}.footer{padding-block:28px}.footer-top{align-items:start}.legal-links{gap:16px;font-size:.8rem}.legal-main{padding-top:40px;padding-bottom:60px}.facts{grid-template-columns:1fr;gap:4px}.facts dd{margin-bottom:12px}.legal-table{font-size:.8rem}.legal-table th,.legal-table td{padding:12px 5px;overflow-wrap:anywhere}.legal-main h1{overflow-wrap:anywhere}.legal-main p,.legal-main a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
/* Package photographs, audience offers and Dominic's personal page. */
.nav-links{gap:22px}.nav-links [aria-current]{color:var(--amber)}
.package-offer{background:var(--paper);border-top:3px solid var(--green);padding:32px;margin-bottom:40px}.package-offer h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:15px 0 20px}.offer-intro{max-width:800px}.offer-audiences{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:29px;border-top:1px solid var(--line);padding-top:26px}.offer-audiences h4{font:400 1.35rem var(--serif);margin:0 0 13px}.offer-audiences p{font-size:1rem;max-width:440px;margin-bottom:20px}.offer-audiences a{font-size:.875rem}.package-audience{margin-bottom:18px}.package-photos{display:flex;justify-content:center;width:100%;gap:0;margin-bottom:27px}.bottle-crop{display:block;position:relative;overflow:hidden;width:33.333%;height:265px}.bottle-crop img{height:100%;width:auto;max-width:none;position:absolute;left:50%;transform:translateX(-50%);object-fit:contain}.photo-note{font-size:.8125rem;color:var(--muted);margin-top:19px;max-width:900px;line-height:1.6}.roots-photo{text-align:center;display:flex;flex-direction:column;align-items:center}.special .roots-photo img{width:auto;height:330px;max-width:100%;aspect-ratio:auto;object-fit:contain;mix-blend-mode:multiply}.roots-photo figcaption{font-size:.8125rem;line-height:1.5;max-width:290px;color:var(--muted);margin-top:18px}.about-link{display:inline-block;margin-top:22px}.about-main{padding-block:55px 80px}.about-opening{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:48px;margin-top:18px}.about-opening h1{font-size:clamp(3.1rem,5.8vw,5.5rem);margin:20px 0 26px}.about-intro{font-size:1.125rem;max-width:630px}.about-opening figure img{width:100%;height:auto}.about-body{max-width:760px;margin:0 auto}.about-section{padding-top:37px}.about-section h2{font-size:clamp(1.9rem,3vw,2.4rem);margin-bottom:17px}.about-closing{border-top:1px solid var(--line);padding-top:27px;margin-top:36px}.about-body .signature{margin-top:20px}
@media(max-width:960px){.nav{flex-wrap:wrap;padding-top:20px;padding-bottom:17px;gap:15px}.nav-right{display:contents}.languages{margin-left:auto}.nav-links{width:100%;order:3;justify-content:space-between;gap:15px}.nav-links a{padding-block:6px}.about-opening{gap:32px}.bottle-crop{height:230px}}
@media(max-width:680px){.package-offer{padding:25px 20px;margin-bottom:31px}.offer-audiences{grid-template-columns:1fr;gap:25px}.offer-audiences>div+div{padding-top:24px;border-top:1px solid var(--line)}.package{display:flex;flex-direction:column;align-items:flex-start;padding-block:25px;position:relative}.package-photos{margin-bottom:25px;max-width:390px;align-self:center}.bottle-crop{height:260px}.package .quantity{font-size:3.7rem;margin:0 0 5px}.package .unit{margin-bottom:19px}.package h3{font-size:1.6rem;margin-bottom:12px}.package p{margin-bottom:19px;flex:auto}.package>a{padding-block:8px}.about-main{padding-block:33px 55px}.about-opening{grid-template-columns:1fr;gap:27px;padding-bottom:30px}.about-intro{font-size:1rem}.about-opening figure{max-width:500px}.about-section{padding-top:30px}.nav-links{gap:7px}.nav-links a{font-size:.8125rem}.about-opening h1{font-size:clamp(3rem,11.5vw,4.3rem)}}

/* Original photography by @JanaEdisonga. Preserve each full composition. */
.archive-photo img{width:100%;height:auto;aspect-ratio:2/3}
.archive-photo .image-caption{line-height:1.5;margin-top:12px}
.photo-credit{display:block;font-size:.8125rem;line-height:1.5;color:var(--muted)}
.hero-figure .photo-credit{margin-top:4px}
.story-photo{width:100%;max-width:100%;margin-top:30px}.story-photo img{aspect-ratio:2027/1520}
.steps-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,84px);align-items:center}
.window-photo,.future-photo{max-width:360px;width:100%}
.steps-feature .steps{grid-template-columns:1fr;gap:22px;margin-top:30px}
.steps-feature .step{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px 15px;padding-top:20px}
.steps-feature .step-number{grid-column:1;grid-row:1/3;margin:5px 0 0}
.steps-feature .step h3{margin:0}
.steps-feature .step p{grid-column:2}
.future-with-photo{grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,84px);align-items:center}
.future-copy{margin-top:27px}
.portrait-photo{width:100%;max-width:420px;justify-self:end}
@media(max-width:680px){
  .story-photo{max-width:100%;margin-top:25px}
  .steps-feature,.future-with-photo{grid-template-columns:minmax(0,1fr);gap:32px}
  .steps-feature .window-photo,.future-photo{order:2;max-width:320px;justify-self:center}
  .portrait-photo{max-width:400px;justify-self:center}
}

/* Immediate contact and complete bottle selections. */
.contact-strip{background:var(--soft);border-bottom:1px solid var(--line)}
.contact-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding-block:8px}
.contact-strip-inner>span{font-size:.875rem;color:var(--muted)}
.quick-contact{display:flex;flex-wrap:wrap;gap:8px}
.quick-contact .button{min-height:44px;padding:10px 17px;font-size:.875rem}
.hero-selection-link{display:inline-block;margin-top:22px;font-size:.875rem}
.package .package-description{flex:0 0 auto}
.package-selection{width:100%;margin-bottom:26px;flex:1}
.package-selection h4{font:600 .875rem/1.5 var(--sans);margin:0;padding-top:20px;border-top:1px solid #cdd3c3}
.package-wines{list-style:none;margin:13px 0 0;padding:0}
.package-wines li{display:flex;gap:10px;align-items:baseline;font-size:.9375rem;line-height:1.5;padding:5px 0}
.wine-count{flex:0 0 2.1em;font-variant-numeric:tabular-nums;color:var(--green)}
.package-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%;margin-top:auto}
.package-actions .button{padding:12px 16px;min-height:46px}
@media(max-width:400px){.contact-strip-inner{flex-wrap:wrap}.contact-strip-inner>span{flex:1}.quick-contact .button{padding-inline:12px}}
