:root{--wine:#451124;--cream:#F5E4D0;--lilac:#883449;--line:#45112428}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--wine);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:6px}.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}.skip{position:fixed;top:-100px;left:20px;background:var(--cream);padding:16px;z-index:10}.skip:focus{top:10px}.header{max-width:1440px;margin:auto;padding:28px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:18px;font-size:27px;font-weight:700;letter-spacing:-1px}.brand-logo{width:26px;height:54px;color:var(--lilac);flex-shrink:0}.brand-small{display:block;font-size:8px;letter-spacing:2px;margin-top:6px;font-weight:400}nav{display:flex;gap:32px;font-size:12px}nav a{padding:10px 0}nav a:hover{text-decoration:underline;text-underline-offset:6px}nav span{margin-left:8px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:65px 6% 75px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:500;line-height:1.6}h1,h2{font-weight:400;letter-spacing:-3px;line-height:1.08;margin:27px 0}h1{font-size:clamp(46px,5.4vw,78px)}h2{font-size:clamp(36px,4.2vw,60px)}em{font-style:normal}.intro{max-width:420px;font-size:16px;line-height:1.8;margin:26px 0 30px}.button{display:inline-flex;align-items:center;gap:30px;background:var(--wine);color:var(--cream);padding:17px 22px;font-size:12px}.button:hover{background:#883449}.button span{font-size:18px}.hero-photo{margin:0;min-width:0}.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 52%}.hero-photo figcaption{font-size:10px;margin-top:14px;letter-spacing:.4px;line-height:1.7}.section{max-width:1440px;margin:auto;padding:70px 6%}.section-top{display:flex;justify-content:space-between;align-items:start}.section-top>p:last-child{font-size:12px;line-height:1.7;margin:0}.desserts{border-top:1px solid var(--line)}.desserts h2{margin:28px 0 42px}.ingredients{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.ingredient{border-top:1px solid var(--line);padding-top:20px}.number{font-size:10px;letter-spacing:1px}h3{font-size:21px;font-weight:400;letter-spacing:-.5px;margin:18px 0 12px}.ingredient p{font-size:13px;line-height:1.8;min-height:94px;margin-bottom:24px}.ingredient-label{font-size:8px;letter-spacing:1.2px}.philosophy{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:7%;align-items:center}.philosophy .eyebrow{grid-column:1/-1}.philosophy h2{margin:20px 0}.philosophy-copy{font-size:15px;line-height:1.9;max-width:500px;margin:20px 0}.popup{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:10%;padding-top:90px;padding-bottom:90px}.popup h2{margin-bottom:28px}.popup p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:480px}.location{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding-top:24px;margin-top:30px;font-size:10px;letter-spacing:1.5px}.location-dot{width:7px;height:7px;background:var(--wine);border-radius:50%}.popup .details-note{font-size:11px!important}.popup-poster{background:var(--lilac);color:var(--cream);aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.poster-logo{width:90px;height:184px}.poster-name{font-size:30px;letter-spacing:-1px;font-weight:600;margin-top:22px}.poster-bottom{font-size:8px;letter-spacing:2px;margin-top:22px}footer{background:var(--lilac);color:var(--cream);padding:40px 6% 30px}.footer-brand{font-size:clamp(38px,6vw,80px);font-weight:600;letter-spacing:-3px;display:flex;justify-content:space-between;align-items:center;max-width:1268px;margin:auto}.footer-lockup{display:flex;align-items:center;gap:22px}.footer-logo{width:36px;height:74px;flex-shrink:0}.footer-brand>span:last-child{font-size:.6em;font-weight:400}footer>div{display:flex;justify-content:space-between;max-width:1268px;margin:30px auto 0;border-top:1px solid #F5E4D070;padding-top:20px;font-size:10px}.product-gallery{border-top:1px solid var(--line)}.product-gallery h2{margin-bottom:22px}.gallery-intro{max-width:650px;font-size:15px;line-height:1.8;margin:0 0 35px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-photo{margin:0;min-width:0}.product-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}.product-photo h3{font-size:21px;margin:20px 0 10px}.product-photo p{font-size:13px;line-height:1.75;margin:0}.more-photos{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.more-photos summary{cursor:pointer;font-size:13px;padding:22px 0;list-style:none;display:flex;justify-content:space-between}.more-photos summary::-webkit-details-marker{display:none}.more-photos summary span{font-size:20px}.more-photos[open] summary span{transform:rotate(45deg)}.detail-grid{padding:10px 0 30px}.detail-grid img{aspect-ratio:4/3}.detail-grid h3{font-size:17px}@media(max-width:850px){.hero{gap:5%;padding-top:45px}h1{font-size:51px;letter-spacing:-2px}.intro{font-size:14px}.ingredients{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.ingredient p{min-height:60px}.product-grid{gap:18px}.product-photo h3{font-size:18px}.poster-logo{width:70px;height:143px}.poster-name{font-size:25px}}@media(max-width:700px){.header{padding:20px 6%}.brand{font-size:23px;gap:13px}.brand-logo{width:22px;height:45px}.brand-small{font-size:7px}nav{font-size:11px;gap:18px}nav a:first-child{display:none}.hero{grid-template-columns:1fr;gap:34px;padding:38px 6% 45px}h1{font-size:52px;letter-spacing:-2px;max-width:440px}.intro{font-size:15px;max-width:100%}.hero-photo img{aspect-ratio:4/5}.section{padding:48px 6%}h2{font-size:38px;letter-spacing:-1.5px}.section-top>p:last-child{font-size:10px}.ingredients{gap:25px 20px}.ingredient p{font-size:12px;min-height:105px}.ingredient-label{font-size:7px;letter-spacing:.7px}.philosophy{grid-template-columns:1fr;gap:0}.philosophy-copy{font-size:14px;margin-top:0}.popup{grid-template-columns:1fr;gap:35px}.popup-poster{max-width:340px;width:100%;margin:auto}.poster-logo{width:85px;height:174px}.poster-name{font-size:30px}.product-grid{grid-template-columns:1fr;gap:30px}.product-photo h3{font-size:22px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.detail-grid img{aspect-ratio:1}.detail-grid h3{font-size:14px}.gallery-intro{font-size:14px}.footer-brand{font-size:44px;letter-spacing:-2px}.footer-logo{width:27px;height:55px}.footer-lockup{gap:14px}footer>div{font-size:9px;gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.layer-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin-bottom:22px}.ingredient{padding-top:0;border-top:0}.brand-logo{color:var(--wine)}.poster-bottom,footer>div{color:var(--cream)}

/* Full-width brand banner. */
.header{max-width:none;background:var(--wine);color:var(--cream);border-bottom:0;padding-left:max(6%,calc((100vw - 1268px)/2));padding-right:max(6%,calc((100vw - 1268px)/2))}.header .brand-logo{color:var(--cream)}.header a:focus-visible{outline-color:var(--cream)}

.legal-links{max-width:1268px;margin:22px auto 0;display:flex;gap:24px;font-size:12px}.legal-links a:focus-visible{outline-color:var(--cream)}

/* Final palette sampled from supplied textured artwork. */
.popup-poster{background:var(--lilac)}.ingredient .number,.ingredient-label{color:var(--lilac)}.header,footer{background:var(--wine)}.more-photos{border-color:var(--line)}

/* Supplied logo collection: cream on dark for header/footer; accent on dark for brand field. */
.popup-poster{background:var(--wine)}.poster-logo{color:var(--lilac)}.poster-name,.poster-bottom{color:var(--cream)}.header .brand-logo,.footer-logo{color:var(--cream)}

.brand-wordmark{display:block;width:185px;height:auto;aspect-ratio:750/190;color:var(--cream)}.poster-wordmark{display:block;width:220px;height:auto;aspect-ratio:750/190;color:var(--cream);margin-top:25px}.footer-wordmark{display:block;width:370px;height:auto;aspect-ratio:750/190;color:var(--cream)}@media(max-width:700px){.brand-wordmark{width:145px}.footer-wordmark{width:220px}.poster-wordmark{width:210px}}

.popup-poster .poster-logo{color:var(--cream)}
