:root{--paper:#f7f4eb;--ink:#342e28;--wine:#722b35;--muted:#756b61;--line:#dcd5c8;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:default}a,button,input{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b27b36;outline-offset:5px}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-weight:bold;font-size:26px;letter-spacing:-1px;color:var(--wine)}.brand svg{width:38px;height:38px}.domain{font-weight:normal;color:var(--muted)}nav{display:flex;gap:32px;font-size:13px}nav a:hover,.text-button:hover{color:var(--wine);text-decoration:underline;text-underline-offset:6px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding-top:76px;padding-bottom:82px}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:700;color:var(--wine);margin:0 0 22px;line-height:1.5}.hero .eyebrow{display:flex;align-items:center;gap:9px}.eyebrow span{width:6px;height:6px;border-radius:50%;background:var(--wine)}h1,h2,h3,h4,p,figure{margin-top:0}h1{font-family:var(--serif);font-size:clamp(38px,4.1vw,57px);font-weight:normal;line-height:1.14;letter-spacing:-2px;margin-bottom:26px}h1 em,h2 em{color:var(--wine);font-weight:normal}.hero-intro{max-width:440px;font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:29px}.button{display:inline-flex;align-items:center;gap:35px;background:var(--wine);color:#fff;padding:14px 23px;font-size:12px;border-radius:3px}.button:hover{background:#542029}.button span{font-size:20px;line-height:1}.hero-note{font-size:10px;color:var(--muted);margin:14px 0 0;letter-spacing:.5px}.hero-photo{position:relative;margin:12px 0 0;transform:rotate(2deg)}.photo-frame{padding:12px 12px 0;background:#fffdf7;box-shadow:0 12px 35px #40351d12}.hero-photo img{display:block;width:100%;height:322px;object-fit:cover;object-position:45% center}.photo-label{display:block;font-size:10px;letter-spacing:1px;color:var(--muted);padding:15px 3px}.hero-photo figcaption{font-family:var(--serif);font-style:italic;text-align:center;font-size:15px;color:var(--muted);padding-top:15px}.seal{position:absolute;right:-21px;top:-31px;width:112px;height:112px;background:var(--wine);color:#fff9e9;border-radius:50%;outline:1px dashed #e7c4b3;outline-offset:-8px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:8px;letter-spacing:2px;transform:rotate(10deg);line-height:1.8}.seal span{font-family:var(--serif);font-style:italic;font-size:26px;letter-spacing:0}.recipe-ribbon{border-block:1px solid var(--line);display:flex;justify-content:center;gap:54px;padding:19px 20px;font-family:var(--serif);font-style:italic;font-size:18px}.ribbon-star{color:var(--wine);font-style:normal}.recipe-section{padding-block:78px 80px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:25px}.section-heading .eyebrow{margin-bottom:12px}h2{font-family:var(--serif);font-size:43px;font-weight:normal;line-height:1.2;letter-spacing:-1.2px;margin-bottom:14px}.section-heading p:not(.eyebrow){color:var(--muted);font-size:14px;margin-bottom:0}.print-button{border:1px solid #c6baaa;background:transparent;padding:10px 16px;border-radius:3px;font-size:11px;white-space:nowrap;display:inline-flex;align-items:center;gap:8px}.print-button:hover{background:#ece6d9}.recipe-meta{display:flex;gap:0;margin-block:32px 40px;border-block:1px solid var(--line);padding:17px 0;color:var(--muted);font-size:11px}.recipe-meta span{padding:0 28px;border-right:1px solid var(--line)}.recipe-meta span:first-child{padding-left:0}.recipe-meta span:last-child{border:0}.recipe-meta b{color:var(--ink);font-weight:600;margin-right:7px}.recipe-grid{display:grid;grid-template-columns:365px 1fr;gap:68px}h3{font-family:var(--serif);font-weight:normal;font-size:27px;letter-spacing:-.6px;line-height:1.3;margin-bottom:22px}.ingredients{background:#ece9df;padding:27px 28px;align-self:start;border-radius:3px}.ingredients-heading h3{margin-bottom:17px}.portion-control{display:inline-flex;align-items:center;border:1px solid #cec5b7;border-radius:3px;background:var(--paper);height:36px}.portion-control button{border:0;background:transparent;font-size:18px;width:36px;height:34px}.portion-control span{font-size:11px;border-inline:1px solid var(--line);padding:0 15px}.portion-note{font-size:10px;color:var(--muted);margin:12px 0 6px}.ingredient-list{list-style:none;margin:0;padding:0}.ingredient-list li{border-bottom:1px solid #d7d0c2;padding:16px 0}.ingredient-list li:last-child{border:0}.ingredient-list label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:13px;line-height:1.5}.ingredient-list input{appearance:none;flex-shrink:0;width:15px;height:15px;border:1px solid #b2a895;background:transparent;border-radius:2px;margin:3px 0 0;position:relative}.ingredient-list input:checked{background:var(--wine);border-color:var(--wine)}.ingredient-list input:checked:after{content:'✓';position:absolute;color:white;line-height:13px;left:2px;font-size:11px}.ingredient-list input:checked+span{opacity:.55;text-decoration:line-through}.ingredient-list strong{font-weight:600}.ingredient-list small{display:block;color:var(--muted);font-size:11px}.shopping-note{font-family:var(--serif);font-style:italic;font-size:12px;color:var(--muted);margin:15px 0 0}.preparation{padding-top:5px}.steps{list-style:none;counter-reset:steps;margin:0;padding:0}.steps li{counter-increment:steps;display:flex;gap:20px;margin-bottom:25px}.steps li:before{content:'0' counter(steps);font-family:var(--serif);font-size:24px;color:var(--wine);line-height:1.4;min-width:32px}h4{font-size:14px;font-weight:600;margin-bottom:6px}.steps p{font-size:13px;color:var(--muted);line-height:1.85;margin:0}.recipe-note{display:flex;gap:17px;background:#efe5d7;padding:20px 23px;border-left:2px solid #a57845}.recipe-note>span{font-size:26px;color:var(--wine)}.recipe-note p{font-size:12px;line-height:1.8;margin:0;color:var(--muted)}.recipe-note strong{display:block;color:var(--ink);font-weight:600;margin-bottom:3px}.tips-section{background:#edeadf;padding-block:58px 62px}.tips-section .eyebrow{margin-bottom:12px}.tips-section h2{font-size:36px}.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:35px}.tips-grid article+article{border-left:1px solid #d3cabb;padding-left:34px}.tip-number{font-size:9px;color:var(--wine);letter-spacing:1.6px}.tips-grid h3{font-size:23px;margin:13px 0 12px}.tips-grid p{font-size:12px;color:var(--muted);line-height:1.9;margin:0}.variation{display:flex;align-items:center;gap:26px;padding-block:45px;border-bottom:1px solid var(--line)}.variation-icon{font-size:46px;color:#a37b42;line-height:1}.variation .eyebrow{font-size:9px;margin-bottom:8px}.variation h3{font-size:26px;margin-bottom:6px}.variation p:not(.eyebrow){font-size:12px;color:var(--muted);margin:0;max-width:560px}.text-button{margin-left:auto;flex-shrink:0;background:transparent;border:0;border-bottom:1px solid var(--wine);padding:6px 0;color:var(--wine);font-size:12px}.text-button span{margin-left:15px}.story{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-block:80px}.story h2{font-size:43px;line-height:1.25}.story .eyebrow{margin-bottom:18px}.handwritten{display:block;font-family:var(--serif);font-size:25px;font-style:italic;color:var(--wine);transform:rotate(-5deg);margin-top:32px}.story-copy p{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:18px}.story-copy .story-last{font-family:var(--serif);font-size:17px;font-style:italic;color:var(--ink)}.site-footer{border-top:1px solid var(--line);padding-block:29px 35px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}.footer-brand{font-size:20px;gap:0}.skip{position:absolute;top:-70px;left:15px;background:var(--wine);color:white;padding:10px 20px;z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}dialog{border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);padding:35px;width:min(690px,calc(100% - 32px));max-height:85vh;overflow:auto}dialog::backdrop{background:#24181199;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:start;justify-content:space-between;gap:10px}.dialog-header button{background:transparent;border:0;font-size:26px;line-height:1;color:var(--wine)}dialog h2{font-size:34px}dialog h3{font-size:23px;margin:24px 0 12px}dialog p,dialog li{font-size:13px;line-height:1.8}dialog li{margin-bottom:13px}dialog ol{padding-left:20px}.dialog-meta{color:var(--muted)}.dialog-tip{background:#ece5d9;padding:17px}
.archive-link{color:var(--wine);text-decoration:underline;text-underline-offset:4px}.archive-link:hover{color:#542029}.story-copy small{font-size:10px}
@media(min-width:1500px){.hero{padding-block:90px 100px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}.hero-photo img{height:285px}h1{font-size:43px}.recipe-grid{grid-template-columns:310px 1fr;gap:35px}.recipe-meta span{padding-inline:18px}.tips-grid{gap:24px}.tips-grid article+article{padding-left:24px}.story{gap:50px}nav{gap:20px}.seal{right:-10px;width:95px;height:95px}.variation{gap:20px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.site-header{height:auto;min-height:96px;flex-direction:column;justify-content:center;gap:12px;padding-block:19px}.brand{font-size:24px}.brand svg{width:30px;height:30px}nav{gap:24px;font-size:11px}.hero{grid-template-columns:1fr;gap:36px;padding-block:43px 35px}.hero-copy{max-width:500px}h1{font-size:clamp(37px,8vw,52px);letter-spacing:-1.5px}.hero-intro{font-size:13px;max-width:100%}.hero-photo{margin:0 10px 0 3px}.hero-photo img{height:auto;aspect-ratio:1.65;object-fit:cover}.hero-photo figcaption{font-size:13px}.seal{top:-22px;right:-16px;width:90px;height:90px}.seal span{font-size:23px}.recipe-ribbon{gap:12px;padding:16px 10px;font-size:13px}.ribbon-star{font-size:13px}.recipe-section{padding-block:43px}.section-heading{align-items:flex-start;gap:15px;flex-direction:column}h2,.story h2{font-size:35px}.recipe-meta{display:grid;grid-template-columns:1fr 1fr;row-gap:15px;padding:16px 0;margin-block:25px 28px}.recipe-meta span,.recipe-meta span:first-child{padding:0 10px 0 0;border:0;font-size:10px}.recipe-grid{grid-template-columns:1fr;gap:34px}.ingredients{padding:25px}.ingredients-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.ingredients-heading h3{margin:0;font-size:25px}.portion-control span{padding-inline:9px}.ingredient-list li{padding-block:14px}.steps li{gap:14px}.recipe-note{padding:17px}.tips-section{padding-block:40px}.tips-section h2{font-size:32px}.tips-grid{grid-template-columns:1fr;gap:25px;margin-top:28px}.tips-grid article+article{border-left:0;border-top:1px solid #d3cabb;padding:23px 0 0}.tips-grid h3{margin-block:9px}.variation{align-items:flex-start;gap:16px;flex-wrap:wrap;padding-block:32px}.variation-icon{font-size:34px}.variation>div{flex:1}.variation h3{font-size:24px}.text-button{margin-left:50px}.story{grid-template-columns:1fr;gap:38px;padding-block:45px}.handwritten{margin-top:20px}.site-footer{flex-direction:column;gap:15px;padding-block:25px}.site-footer span{font-size:11px}dialog{padding:24px}dialog h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;color:#000;font-size:11pt}.site-header,.hero,.recipe-ribbon,.tips-section,.variation,.story,.site-footer,.print-button,.shopping-note,.portion-note,.skip,dialog{display:none!important}.wrap{width:100%}.recipe-section{padding:0}.recipe-grid{grid-template-columns:30% 1fr;gap:25px}.ingredients{padding:15px;background:transparent;border:1px solid #ddd}.recipe-meta{margin:15px 0 20px}.portion-control button{display:none}.portion-control{border:0}.portion-control span{border:0;padding:0}.ingredient-list input{display:none}.ingredient-list input:checked+span{opacity:1;text-decoration:none}.ingredient-list label{font-size:10pt}.ingredient-list li{padding:9px 0}.steps li{break-inside:avoid;margin-bottom:15px}.steps p,.recipe-note p{color:#222;font-size:10pt}h2{font-size:28pt}h3{font-size:18pt}.recipe-note{background:transparent;border:1px solid #ddd}.print-variation main{display:none!important}.print-variation dialog[open]{display:block!important;position:static;width:100%;max-height:none;overflow:visible;border:0;padding:0}.print-variation .dialog-header button{display:none}.print-variation dialog::backdrop{display:none}}
