:root { --cream:#fff9ee; --paper:#fffdf7; --ink:#194d3c; --muted:#4d6255; --orange:#bd482c; --pale:#edf0df; }
body { background:var(--cream); font-size:21px; }
.site-header,.section,.home-feature,.information-page { max-width:1640px; }
.site-header { min-height:128px; height:auto; padding:24px 4.5%; gap:30px; background:#fff9eef7; }
.site-header .brand,.site-header .brand>span>span { font-size:35px; line-height:1.05; letter-spacing:-.04em; }
.site-header .brand img { width:70px; height:70px; }
.main-nav { font-size:20px; gap:28px; }
.language-switch a { font-size:18px; min-height:46px; min-width:44px; }
.header-social { display:none; }
.home-feature { padding:35px 4.5% 70px; }
.feature-main { grid-template-columns:.95fr 1.05fr; gap:54px; align-items:center; }
.feature-copy { padding:10px 0; }
.feature-copy .eyebrow { font-size:15px; letter-spacing:.08em; margin-bottom:26px; }
.feature-copy h1 { font-size:clamp(62px,5.9vw,96px); line-height:1.02; letter-spacing:-.055em; margin-bottom:30px; text-wrap:initial; }
.feature-copy h1 em { font-style:normal; color:var(--orange); font-weight:inherit; }
.feature-description { font-size:23px; line-height:1.55; max-width:570px; color:#395547; margin-bottom:0; }
.feature-photo { border-radius:36px; aspect-ratio:1.08; box-shadow:0 18px 50px #51331c12; }
.feature-photo-note { font-size:17px; bottom:24px; left:24px; padding:12px 19px; border-radius:14px; }
.feature-actions { gap:20px; margin-top:34px; }
.feature-actions .button { background:#bf4a2d; border-color:#bf4a2d; box-shadow:0 6px 0 #8c301b; font-size:24px; min-height:72px; padding:18px 30px; gap:30px; }
.feature-actions .button:hover { background:#a83a20; border-color:#a83a20; box-shadow:0 8px 0 #7e2815; }
.feature-actions .feature-video { font-size:22px; min-height:70px; display:inline-flex; align-items:center; gap:13px; padding:14px 24px; border:2px solid #194d3c; background:#fffdf5; color:#194d3c; border-radius:18px; }
.feature-video:hover { background:#e8eedc; }
.feature-video span { font-size:30px; }
.button,.hero-actions .button,.recipe-hero .hero-actions .button,.recipe-video .button,.contact-compose .button { font-size:21px; min-height:62px; padding:15px 26px; }
.feature-suggestions { margin-top:50px; padding-top:28px; }
.feature-suggestions-heading { margin-bottom:25px; }
.feature-suggestions-heading h2 { font-size:clamp(30px,3vw,43px); }
.feature-suggestions-heading>a { font-size:20px; }
.feature-suggestion-grid { gap:25px; }
.feature-suggestion { display:block; position:relative; padding:0 0 25px; background:#fffdf7; border:1px solid #e0ddce; border-radius:26px; overflow:hidden; box-shadow:0 7px 0 #e5e8d8; transition:transform .2s ease,box-shadow .2s ease; }
.feature-suggestion:hover { transform:translateY(-5px); background:#fffdf7; box-shadow:0 12px 0 #dbe3cf; }
.feature-suggestion img { width:100%; height:auto; aspect-ratio:1.6; object-fit:cover; border-radius:0; }
.feature-suggestion>span:not(.suggestion-arrow) { display:block; padding:22px 70px 0 23px; }
.feature-suggestion strong { font-size:27px; line-height:1.2; }
.feature-suggestion small { font-size:16px; line-height:1.4; margin-top:10px; display:block; }
.feature-suggestion .suggestion-arrow { position:absolute; right:19px; bottom:24px; display:grid; place-items:center; width:42px; height:42px; font-size:25px; background:#194d3c; color:#fffaf0; border-radius:12px; }
.editorial-strip { display:none; }
.section { padding:90px 4.5%; }
.section-heading h2,.kitchen-section h2,.press-teaser h2,.community-section h2 { font-size:clamp(42px,4.5vw,68px); line-height:1.08; }
.section-heading>p,.kitchen-section p:not(.eyebrow),.press-teaser p:not(.eyebrow),.community-section p:not(.eyebrow),.follow-section p:not(.eyebrow) { font-size:21px; line-height:1.65; }
.collection { background:#eef1df; border-radius:42px; }
.recipe-controls { gap:22px; }
.filters { flex-wrap:wrap; gap:10px; }
.filters button { font-size:19px; padding:12px 20px; min-height:52px; background:#fffdf5; }
.search-field { background:#fffdf5; border:2px solid #b5c6b0; min-height:58px; padding:10px 18px; }
.search-field input { font-size:19px; width:100%; }
.recipe-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; }
.recipe-card { background:#fffdf7; border:1px solid #d4dec7; border-radius:28px; overflow:hidden; box-shadow:0 10px 30px #214b3e07; transition:transform .25s ease,box-shadow .25s ease; }
.recipe-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px #214b3e18; }
.recipe-card .card-image { border-radius:0; aspect-ratio:1.42; }
.card-tag { font-size:15px; padding:9px 14px; left:20px; top:20px; }
.card-arrow { display:none; }
.card-content { padding:28px; }
.card-content .eyebrow { font-size:14px; margin-bottom:12px; }
.card-content h3 { font-size:37px; line-height:1.12; margin-bottom:14px; }
.card-content>p:last-of-type { font-size:18px; }
.recipe-card-cta { display:flex; justify-content:space-between; align-items:center; margin-top:22px; padding:17px 21px; background:#194d3c; color:#fffaf0; font-weight:800; font-size:21px; border-radius:16px; }
.recipe-card-cta:hover { background:#bc482b; }
.video-grid h3 { font-size:32px; }
.video-grid .text-link { font-size:20px; }
.video-format { font-size:14px; }
.kitchen-section { gap:70px; }
.kitchen-section .kitchen-image { border-radius:36px; }
.text-link,.story-link { font-size:21px; padding:12px 0; }
.community-section { border-radius:32px; max-width:1490px; padding:60px; }
.information-intro { max-width:1150px; padding:75px 45px 45px; }
.information-intro h1 { font-size:clamp(50px,5.7vw,88px); }
.information-deck { font-size:25px; line-height:1.6; }
.information-sections { max-width:1150px; padding:55px 45px; }
.information-sections h2 { font-size:36px; }
.information-sections p { font-size:21px; line-height:1.7; }
.contact-workbench { max-width:1400px; }
.contact-invite h2 { font-size:48px; }
.contact-invite>p,.contact-compose label { font-size:20px; }
.contact-compose input,.contact-compose select,.contact-compose textarea { font-size:20px; min-height:56px; border:2px solid #bdcbb8; }
.recipe-hero { max-width:1640px; padding:55px 4.5%; }
.recipe-hero h1 { font-size:clamp(48px,5vw,77px); }
.recipe-intro,.method p,.ingredient-panel li,.recipe-questions p { font-size:21px; line-height:1.7; }
.recipe-facts span,.byline { font-size:15px; }
.recipe-nav a,.recipe-nav button { font-size:19px; }
.method h3 { font-size:29px; }
.ingredient-panel h3 { font-size:23px; }
.recipe-questions summary { font-size:22px; }
.follow-section { max-width:1640px; padding:65px 4.5%; }
.follow-section h2 { font-size:52px; }
.social-links a { font-size:20px; padding:14px 0; }
.site-footer { max-width:1640px; padding:60px 4.5% 28px; }
.site-footer nav,.site-footer nav a,.footer-brand p,.site-footer button { font-size:17px!important; }
.contact-email { font-size:23px; }
.footer-brand .brand-name { font-size:43px; }
@media(max-width:1250px) { .site-header { flex-wrap:wrap; row-gap:22px; } .site-header .main-nav { order:3; flex-basis:100%; justify-content:center; font-size:20px; } .feature-main { gap:35px; } .feature-copy h1 { font-size:65px; } .feature-description { font-size:21px; } .feature-actions .button { font-size:23px; } .feature-suggestion strong { font-size:25px; } .feature-suggestion small { font-size:15px; } .recipe-controls { flex-direction:column; } .search-field { width:100%; } }
@media(max-width:1000px) { .feature-main { grid-template-columns:1fr 1fr; gap:26px; } .feature-copy h1 { font-size:58px; } .feature-photo { aspect-ratio:.85; } .feature-description { font-size:20px; } .feature-actions { gap:16px; margin-top:25px; } .feature-actions .button,.feature-actions .feature-video { font-size:21px; min-height:64px; padding:15px 21px; } .feature-suggestion>span:not(.suggestion-arrow) { padding:18px 20px 48px; } .feature-suggestion .suggestion-arrow { bottom:16px; } .feature-suggestion strong { font-size:25px; } .feature-suggestions-heading>a { font-size:18px; } .recipe-grid { gap:26px; } .card-content { padding:22px; } .card-content h3 { font-size:32px; } .card-content>p:last-of-type { font-size:16px; } .section-heading h2,.kitchen-section h2 { font-size:50px; } .kitchen-section { gap:38px; } }
@media(max-width:760px) { .site-header { padding:17px 22px; min-height:0; gap:18px; } .site-header .brand,.site-header .brand>span>span { font-size:28px; } .site-header .brand img { width:57px; height:57px; } .language-switch a { font-size:16px; min-width:32px; min-height:39px; } .site-header .main-nav { font-size:17px; gap:10px 19px; } .home-feature { padding:26px 22px 50px; } .feature-main { grid-template-columns:1fr; gap:22px; } .feature-copy { display:contents; } .feature-copy>.eyebrow { font-size:13px; margin:0; order:1; } .feature-copy>h1 { font-size:clamp(49px,10vw,64px); line-height:1; margin:0; order:2; } .feature-photo { order:3; aspect-ratio:1.12; border-radius:28px; } .feature-photo-note { font-size:15px; bottom:18px; left:18px; padding:10px 14px; } .feature-description { order:4; font-size:21px; line-height:1.55; } .feature-actions { order:5; display:grid; grid-template-columns:1fr; gap:18px; margin:0; } .feature-actions .button,.feature-actions .feature-video { font-size:23px; min-height:68px; justify-content:center; } .feature-suggestions { margin-top:42px; padding-top:25px; } .feature-suggestions-heading { display:block; } .feature-suggestions-heading h2 { font-size:36px; margin-bottom:14px; } .feature-suggestions-heading>a { font-size:19px; max-width:none; } .feature-suggestion-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:18px; padding:0 0 14px; } .feature-suggestion { flex:0 0 82%; scroll-snap-align:start; } .feature-suggestion img { aspect-ratio:1.3; } .feature-suggestion strong { font-size:29px; } .feature-suggestion small { font-size:17px; } .feature-suggestion>span:not(.suggestion-arrow) { padding:22px 70px 7px 22px; } .feature-suggestion .suggestion-arrow { bottom:25px; } .section { padding:60px 22px; } .collection { border-radius:28px; } .section-heading h2,.kitchen-section h2,.press-teaser h2,.community-section h2 { font-size:44px; } .section-heading>p,.kitchen-section p,.press-teaser p:not(.eyebrow),.community-section p:not(.eyebrow) { font-size:20px; } .filters button { font-size:17px; padding:10px 14px; } .search-field input { font-size:19px; } .recipe-grid { grid-template-columns:1fr; gap:32px; } .card-content h3 { font-size:34px; } .recipe-card-cta { font-size:22px; } .card-content>p:last-of-type { font-size:18px; } .video-grid article { display:block; } .video-grid h3 { font-size:31px; margin-top:22px; } .video-grid .text-link { font-size:20px; } .community-section { margin:0 22px; padding:30px 24px; } .information-intro,.information-sections { padding:45px 22px; } .information-intro h1 { font-size:48px; } .information-deck { font-size:23px; } .information-sections h2 { font-size:31px; } .information-sections p { font-size:20px; } .contact-workbench { padding:28px 22px; } .contact-invite h2 { font-size:39px; } .contact-compose label { font-size:18px; } .contact-compose input,.contact-compose textarea,.contact-compose select { font-size:19px; } .recipe-hero { padding:35px 22px; } .recipe-hero h1 { font-size:48px; } .recipe-intro,.method p,.ingredient-panel li { font-size:20px; } .hero-actions .button { font-size:20px; min-height:60px; padding:14px 22px; } .method h3 { font-size:27px; } .follow-section { padding:50px 22px; } .follow-section h2 { font-size:43px; } .social-links a { font-size:20px; } .site-footer { padding:40px 22px; } .contact-email { font-size:21px; } }
@media(max-width:760px) {
  .site-header .main-nav { display:grid; grid-template-columns:1fr 1fr; gap:0 14px; text-align:center; }
  .site-header .main-nav a,.site-header .main-nav a:nth-child(3) { display:flex; align-items:center; justify-content:center; min-height:42px; padding:5px 0; }
  .recipe-hero .hero-actions .button,.recipe-video .button,.contact-compose .button { font-size:20px; min-height:60px; padding:14px 22px; }
  .kitchen-section p:not(.eyebrow),.follow-section p:not(.eyebrow) { font-size:20px; }
}
@media(max-width:380px) { .site-header .brand,.site-header .brand>span>span { font-size:25px; } .site-header .brand img { width:48px; height:48px; } .language-switch a { font-size:15px; min-width:28px; padding:4px 6px; } .feature-copy>h1 { font-size:47px; } .feature-actions .button,.feature-actions .feature-video { font-size:21px; } }
@media(prefers-reduced-motion:reduce) { .recipe-card,.feature-suggestion { transition:none; } .recipe-card:hover,.feature-suggestion:hover { transform:none; } }
@media print {
  body { font-size:11pt; }
  .recipe-hero h1 { font-size:28pt; }
  .recipe-intro,.method p,.ingredient-panel li { font-size:11pt; line-height:1.5; }
  .method h3,.ingredient-panel h3 { font-size:16pt; }
}
