:root{--red:#8B2635;--cream:#FFF8F3;--green:#4A5D45;--black:#1A1A1A;--white:#FFFFFF;--gray:#6B6B6B;--light-gray:#F5F5F5;--font-serif:'Georgia',serif;--font-sans:system-ui,-apple-system,'Segoe UI',sans-serif}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}@font-face{font-family:'Playfair';src:url('/assets/fonts/playfair-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:'Playfair';src:url('/assets/fonts/playfair-bold.woff2') format('woff2');font-weight:700;font-display:swap}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--black);background:var(--white);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:'Playfair',var(--font-serif);line-height:1.2;font-weight:700}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}p{margin-bottom:1rem}a{color:var(--red);text-decoration:none;transition:color .3s ease}a:hover{text-decoration:underline}a:focus{outline:2px solid var(--red);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:var(--red);color:var(--white);padding:8px 16px;z-index:100;border-radius:0 0 4px 0}.skip-link:focus{top:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header{position:sticky;top:0;background:var(--white);box-shadow:0 2px 4px rgba(0,0,0,0.1);z-index:10}nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;max-width:1200px;margin:0 auto}.logo{font-family:'Playfair',var(--font-serif);font-size:1.5rem;font-weight:bold;color:var(--red)}.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}.nav-links a{color:var(--black);font-weight:500;transition:color .3s ease}.nav-links a:hover{color:var(--red);text-decoration:none}.hamburger{display:none;background:none;border:none;cursor:pointer;padding:.5rem}.hamburger svg{width:24px;height:24px}@media(max-width:768px){.nav-links{position:fixed;top:60px;right:-100%;width:250px;height:100vh;background:var(--white);flex-direction:column;padding:2rem;box-shadow:-2px 0 4px rgba(0,0,0,0.1);transition:right .3s ease}.nav-links.active{right:0}.hamburger{display:block}}.breadcrumb{padding:1rem 2rem;background:var(--light-gray)}.breadcrumb-list{display:flex;list-style:none;max-width:1200px;margin:0 auto;gap:1rem;flex-wrap:wrap;font-size:.9rem}.breadcrumb-list li:not(:last-child)::after{content:"›";margin-left:1rem;color:var(--gray)}.container{max-width:1200px;margin:0 auto;padding:2rem}.hero{background:var(--cream);padding:4rem 2rem;text-align:center}.hero h1{margin-bottom:1rem;color:var(--red)}.hero p{font-size:1.25rem;color:var(--gray);max-width:600px;margin:0 auto}.search-container{max-width:600px;margin:2rem auto;position:relative}.search-input{width:100%;padding:1rem 3.5rem 1rem 1.5rem;border:2px solid var(--red);border-radius:50px;font-size:1rem;transition:box-shadow .3s ease}.search-input:focus{outline:none;box-shadow:0 0 0 3px rgba(139,38,53,0.2)}.search-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);background:var(--red);color:var(--white);border:none;padding:.75rem 1.5rem;border-radius:50px;cursor:pointer;font-weight:bold;transition:background .3s ease}.search-btn:hover{background:#6B1F2A}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:4rem}.recipe-card{background:var(--white);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.1);transition:transform .3s ease,box-shadow .3s ease}.recipe-card:hover{transform:translateY(-5px);box-shadow:0 4px 16px rgba(0,0,0,0.15)}.recipe-card img{width:100%;height:200px;object-fit:cover}.recipe-card-content{padding:1.5rem}.recipe-card h3{margin-bottom:.5rem;color:var(--black)}.recipe-card p{color:var(--gray);font-size:.9rem;margin-bottom:0}.recipe-meta{display:flex;gap:1rem;font-size:.9rem;color:var(--gray);margin-bottom:.5rem}.cta-section{background:var(--red);color:var(--white);padding:3rem 2rem;text-align:center;border-radius:8px;margin:4rem 0}.cta-section h2{margin-bottom:1rem;color:var(--white)}.email-form{display:flex;gap:1rem;max-width:400px;margin:2rem auto;flex-wrap:wrap}.email-input{flex:1;min-width:200px;padding:.75rem 1rem;border:none;border-radius:4px;font-size:1rem}.submit-btn{background:var(--green);color:var(--white);border:none;padding:.75rem 2rem;border-radius:4px;cursor:pointer;font-weight:bold;transition:background .3s ease}.submit-btn:hover{background:#3A4D35}.category-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.category-tab{padding:.75rem 1.5rem;border:2px solid var(--red);border-radius:50px;background:var(--white);cursor:pointer;transition:all .3s ease;font-weight:500}.category-tab:hover,.category-tab.active{background:var(--red);color:var(--white)}.recipe-container{max-width:800px;margin:0 auto;padding:2rem}.recipe-header{text-align:center;margin-bottom:2rem}.recipe-image{width:100%;max-width:600px;height:400px;object-fit:cover;border-radius:8px;margin:0 auto 2rem;display:block}.recipe-content{display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:3rem}@media(max-width:768px){.recipe-content{grid-template-columns:1fr}}.ingredients{background:var(--light-gray);padding:2rem;border-radius:8px;height:fit-content}.ingredients h2{margin-bottom:1rem;color:var(--red)}.ingredients ul{list-style:none}.ingredients li{padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,0.1)}.ingredients li:last-child{border-bottom:none}.instructions h2{margin-bottom:1rem;color:var(--red)}.instructions ol{padding-left:1.5rem}.instructions li{margin-bottom:1rem;line-height:1.8}.nutrition{background:var(--cream);padding:2rem;border-radius:8px;margin-bottom:2rem}.nutrition h3{margin-bottom:1rem;color:var(--red)}.nutrition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;text-align:center}.nutrition-item strong{display:block;color:var(--red);font-size:.9rem}.faq{margin:3rem 0}.faq h2{margin-bottom:1.5rem;color:var(--red)}.faq-item{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--light-gray)}.faq-item:last-child{border-bottom:none}.faq-item h3{margin-bottom:.5rem;font-size:1.1rem}.affiliate-callout{background:var(--cream);padding:2rem;border-radius:8px;display:flex;gap:2rem;align-items:center;margin:2rem 0}@media(max-width:768px){.affiliate-callout{flex-direction:column;text-align:center}}.affiliate-callout img{width:150px;height:150px;object-fit:cover;border-radius:8px}.affiliate-content h3{margin-bottom:.5rem;color:var(--red)}.affiliate-btn{background:var(--red);color:var(--white);padding:.75rem 1.5rem;border-radius:4px;display:inline-block;margin-top:1rem;font-weight:bold;transition:background .3s ease}.affiliate-btn:hover{background:#6B1F2A;text-decoration:none}.rating{display:flex;gap:.25rem;align-items:center}.star{color:#FFD700;font-size:1.1rem}footer{background:var(--black);color:var(--white);padding:3rem 2rem;text-align:center}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}.footer-links a{color:var(--white);opacity:.8;transition:opacity .3s ease}.footer-links a:hover{opacity:1}.ad-slot{display:none;background:var(--light-gray);border:1px dashed var(--gray);text-align:center;color:var(--gray);font-size:.875rem}.ad-top-banner{height:90px;margin:2rem 0}.ad-300x250{width:300px;height:250px;margin:2rem auto}@media print{header,footer,.ad-slot,.cta-section,.related{display:none}body{font-size:12pt;line-height:1.5}.recipe-container{max-width:100%}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}