@media screen{:root{--web-page:1320px;--web-reading:1120px;--web-gutter:clamp(20px, 4vw, 56px);--web-shadow:0 8px 32px color-mix(in srgb, var(--ink) 6%, transparent);--site-header-height:93px;--recipe-actions-height:72px}html{scroll-behavior:smooth;scroll-padding-top:118px}html:has(.recipe-detail){scroll-padding-top:calc(var(--site-header-height) + var(--recipe-actions-height) + 20px)}body{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.022' filter='url(%23paper)'/%3E%3C/svg%3E")}button,a,select,input{-webkit-tap-highlight-color:transparent}a,button,summary,select,input{scroll-margin-top:130px}:focus-visible{outline:2px solid var(--ink-red);outline-offset:5px}::selection{background:color-mix(in srgb, var(--ink-red) 18%, var(--paper));color:var(--ink)}.site-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.site-controls nav ul{background:var(--paper-sunk);border:1px solid var(--rule);border-radius:9999px;padding:4px}.site-controls nav a{letter-spacing:.08em;border-radius:9999px;place-items:center;min-width:36px;height:44px;padding:0 8px;font-size:11px;display:grid}.site-controls nav a[aria-current]{background:var(--paper-raised);color:var(--ink);box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 8%, transparent)}.theme-toggle{border:1px solid var(--rule-strong);width:44px;height:44px;color:var(--ink);cursor:pointer;transition:background .16s var(--ease-standard), border-color .16s var(--ease-standard);border-radius:50%;place-items:center;display:grid}.theme-toggle:hover{background:var(--paper-sunk);border-color:var(--ink-muted)}.theme-toggle svg{width:18px;height:18px}.logo-link{flex-shrink:0;display:inline-block}.book-logo{align-items:center;width:232px;display:flex}.logo-full{width:100%;height:auto}.book-logo.book-logo-cover{flex-direction:column;width:auto;max-width:100%}.logo-lead{width:clamp(175px,18vw,240px);height:auto;margin-bottom:12px}.logo-name{width:clamp(300px,30vw,440px);height:auto}.handwriting-reveal{overflow:visible}.ink-trace{stroke-dasharray:1;stroke-dashoffset:0}.ink-complete{opacity:1}.handwriting-reveal[data-writing=active] .ink-trace{stroke-dashoffset:1px;animation-name:write-ink;animation-timing-function:linear;animation-fill-mode:both}.handwriting-reveal[data-writing=active] .ink-complete{opacity:0;animation:.32s linear both finish-ink}@media (scripting:enabled){.handwriting-reveal[data-writing=idle]{opacity:0}}@keyframes write-ink{to{stroke-dashoffset:0}}@keyframes finish-ink{to{opacity:1}}.site-header{z-index:30;border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--paper) 93%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:sticky;top:0}.site-header-inner{max-width:var(--web-page);min-height:92px;padding:14px var(--web-gutter);justify-content:space-between;align-items:center;gap:28px;margin:auto;display:flex}.site-nav{font-family:var(--font-sans);align-items:center;gap:32px;font-size:14px;display:flex}.site-nav a{min-height:44px;color:var(--ink-muted);transition:color .16s var(--ease-standard);align-items:center;gap:8px;display:flex;position:relative}.site-nav a:after{content:"";background:var(--ink-red);transform-origin:0;height:1px;transition:transform .16s var(--ease-standard);position:absolute;bottom:1px;left:0;right:0;transform:scaleX(0)}.site-nav a:hover,.site-nav a[aria-current]{color:var(--ink-red)}.site-nav a:hover:after,.site-nav a[aria-current]:after{transform:scaleX(1)}.entrance-toolbar{padding:16px var(--web-gutter);z-index:2;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.entrance-edition{letter-spacing:.14em;font-size:11px}.book-entrance{flex-direction:column;align-items:center;min-height:calc(100svh - 80px);padding:clamp(250px,22vw,360px) 24px 36px;display:flex;position:relative;overflow:hidden}.entrance-ink{pointer-events:none;opacity:.76;width:max(100%,760px);padding-bottom:30px;position:absolute;top:-24px;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(#000 0% 12%,#0000 72%);mask-image:linear-gradient(#000 0% 12%,#0000 72%);container-type:inline-size}.entrance-ink-row{--entrance-ink-unit:clamp(7.6px, 1cqw, 17px);gap:calc(5 * var(--entrance-ink-unit));width:max-content;height:calc(5.43 * var(--entrance-ink-unit));border-bottom:1px solid var(--rule-strong);align-items:flex-end;display:flex}.entrance-title{text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.entrance-kicker{letter-spacing:.18em;color:var(--ink-red);margin-bottom:28px;font-size:11px}.entrance-subtitle{color:var(--ink-muted);margin-top:-34px;padding-left:34px;font-size:21px;font-style:italic}.enter-button{border:1px solid var(--ink-red);background:var(--ink-red);min-width:226px;min-height:72px;color:var(--paper-raised);box-shadow:0 6px 18px color-mix(in srgb, var(--ink-red) 14%, transparent);transition:transform .22s var(--ease-standard), box-shadow .22s var(--ease-standard), background .22s var(--ease-standard);border-radius:50px;justify-content:space-between;align-items:center;gap:28px;margin-top:32px;padding:12px 16px 12px 24px;display:flex}.enter-button:hover{box-shadow:0 10px 26px color-mix(in srgb, var(--ink-red) 21%, transparent);background:color-mix(in srgb, var(--ink-red) 88%, var(--ink));transform:translateY(-1px)}.entry-lettering{filter:brightness(0)invert();width:138px;height:auto}:root[data-theme=dark] .entry-lettering{filter:brightness(0)}:root[data-theme=dark] .enter-button{color:var(--paper)}.entry-arrow{border:1px solid;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.entry-arrow svg{width:18px;height:18px;transition:transform .16s var(--ease-standard)}.enter-button:hover .entry-arrow svg{transform:translate(2px)}.entry-caption{font-family:var(--font-sans);letter-spacing:.06em;color:var(--ink-muted);margin-top:12px;font-size:12px}.entrance-form{text-align:left;width:min(328px,100vw - 40px);margin-top:28px}.entrance-form>label{font:10px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;display:block}.entrance-password{border:1px solid var(--rule-strong);background:var(--paper-raised);border-radius:8px;align-items:center;padding:0 8px 0 14px;transition:border-color .16s,box-shadow .16s;display:flex}.entrance-password:focus-within{border-color:var(--ink-red);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink-red) 9%, transparent)}.entrance-password[data-invalid]{border-color:var(--ink-red)}.entrance-password>svg{width:16px;height:16px;color:var(--ink-muted);flex-shrink:0}.entrance-password input{width:100%;min-width:0;color:var(--ink);font:16px var(--font-serif);background:0 0;border:0;outline:none;padding:15px 12px}.entrance-password input::placeholder{color:var(--ink-muted);font-size:14px}.entrance-reveal{width:40px;height:44px;color:var(--ink-muted);cursor:pointer;border-radius:4px;flex-shrink:0;place-items:center;display:grid}.entrance-reveal svg{width:18px;height:18px}.entrance-reveal:hover{color:var(--ink-red)}.entrance-form .enter-button{cursor:pointer;width:100%;margin-top:16px;position:relative}.entrance-form .enter-button:disabled{cursor:wait;opacity:.65}.entrance-message{color:var(--ink-red);font:12px/1.5 var(--font-sans);margin:10px 0 0}.entrance-pending{text-align:center;font:11px var(--font-sans);color:var(--ink-muted);position:absolute;bottom:-23px;left:0;right:0}.entrance-invitation{max-width:365px;color:var(--ink-muted);margin-top:24px;font-size:16px;font-style:italic;line-height:1.7}.entrance-dedication{text-align:center;flex-direction:column;align-items:center;margin-top:auto;padding-top:48px;display:flex}.dedication-rule{background:var(--ink-red);width:36px;height:1px;margin-bottom:16px}.entrance-dedication .eyebrow{letter-spacing:.16em;font-size:11px}.dedication-name{letter-spacing:.12em;text-transform:uppercase;margin-top:8px;font-size:12px}.dedication-years{color:var(--ink-muted);margin-top:4px;font-size:14px}.collection-page{max-width:var(--web-page);padding:0 var(--web-gutter);margin-inline:auto}.collection-intro{grid-template-columns:1.1fr 1fr;align-items:center;gap:88px;padding-block:64px;display:grid}.accent-eyebrow{color:var(--ink-red);letter-spacing:.16em;font-size:11px}.collection-intro h1{letter-spacing:-.045em;margin-top:24px;font-size:clamp(60px,6.3vw,88px);line-height:1.03}.collection-hero-lead{display:block}.collection-hero-handwriting{aspect-ratio:1232/397;background-color:var(--ink-red);width:min(100%,5em);margin-top:.1em;display:block;-webkit-mask:url(/book/handwriting/a-tavola.png) 0/contain no-repeat;mask:url(/book/handwriting/a-tavola.png) 0/contain no-repeat}.collection-description{max-width:390px;color:var(--ink-muted);text-wrap:pretty;margin-top:28px;font-size:18px;line-height:1.7}.collection-intro-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:32px;display:flex}.primary-link,.print-action{border:1px solid var(--ink);background:var(--ink);min-height:48px;color:var(--paper);font-family:var(--font-sans);cursor:pointer;transition:background .16s var(--ease-standard), border-color .16s var(--ease-standard), transform .16s var(--ease-standard);border-radius:28px;justify-content:center;align-items:center;gap:14px;padding:12px 20px;font-size:14px;display:inline-flex}.primary-link:hover,.print-action-primary:hover{background:var(--ink-red);border-color:var(--ink-red);transform:translateY(-1px)}.primary-link svg,.print-action svg{width:16px;height:16px}.print-action{color:var(--ink);border-color:var(--rule-strong);background:0 0}.print-action:hover{background:var(--paper-sunk);border-color:var(--ink-muted)}.print-action-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.text-link{min-height:44px;font-family:var(--font-sans);color:var(--ink-red);cursor:pointer;align-items:center;gap:9px;padding-block:10px;font-size:14px;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.collection-statistics{font-family:var(--font-sans);letter-spacing:.02em;color:var(--ink-muted);flex-wrap:wrap;gap:8px 16px;margin-top:32px;font-size:12px;display:flex}.collection-statistics span+span:before{content:"·";color:var(--ink-red);margin-right:16px}.collection-illustration{width:min(100%,480px);margin-left:auto;position:relative}.collection-keepsakes{padding-bottom:48px;position:relative}.collection-page-note{z-index:1;background:var(--paper-raised);border:1px solid var(--rule-strong);width:min(320px,80%);box-shadow:var(--web-shadow);transition:transform .22s var(--ease-standard), border-color .22s var(--ease-standard);flex-direction:column;gap:16px;padding:24px;display:flex;position:absolute;bottom:0;left:-24px;transform:rotate(-4deg)}.collection-page-note:hover{border-color:var(--ink-red);transform:rotate(-3deg)translateY(-2px)}.collection-page-note>.eyebrow{color:var(--ink-red);font-size:11px}.collection-page-note .title-art{align-self:flex-start;width:100%;max-width:100%;max-height:80px}.page-note-caption{color:var(--ink-muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-style:italic;display:flex}.page-note-caption svg{color:var(--ink-red)}.collection-illustration img{width:100%;height:auto;display:block}.collection-illustration .collection-setting{object-fit:contain;opacity:.58;pointer-events:none;height:100%;position:absolute;inset:0}.collection-portrait{position:relative}.recipe-collection{scroll-margin-top:26px}.collection-heading{border-top:1px solid var(--rule-strong);justify-content:space-between;align-items:baseline;gap:24px;padding-top:40px;display:flex}.collection-heading h2{letter-spacing:-.025em;align-items:baseline;gap:12px;font-size:40px;line-height:1.2;display:flex}.collection-heading h2 span{font-family:var(--font-sans);letter-spacing:0;color:var(--ink-red);font-size:12px}.collection-heading>p{color:var(--ink-muted);font-size:16px;font-style:italic}.collection-toolbar{justify-content:space-between;align-items:center;gap:24px;margin-top:28px;display:flex}.recipe-search{flex:1;max-width:580px;position:relative}.recipe-search>svg{width:19px;height:19px;color:var(--ink-muted);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.recipe-search input{border:1px solid var(--rule-strong);background:var(--paper-raised);width:100%;height:56px;font-family:var(--font-sans);color:var(--ink);transition:border-color .16s var(--ease-standard), box-shadow .16s var(--ease-standard);text-overflow:ellipsis;border-radius:6px;padding:12px 56px 12px 48px;font-size:14px}.recipe-search input::placeholder{color:var(--ink-muted)}.recipe-search input:hover{border-color:var(--ink-muted)}.recipe-search input:focus{border-color:var(--ink-red);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink-red) 12%, transparent);outline:none}.recipe-search input::-webkit-search-cancel-button{display:none}.search-clear{cursor:pointer;width:44px;height:44px;color:var(--ink-muted);border-radius:6px;place-items:center;display:grid;position:absolute;top:6px;right:6px}.search-clear:hover{background:var(--paper-sunk);color:var(--ink)}.collection-view-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.collection-sort{width:202px;min-width:0;font-family:var(--font-sans);position:relative}.sort-trigger{border:1px solid var(--rule);background:var(--paper);text-align:left;width:100%;min-height:48px;color:var(--ink-muted);cursor:pointer;transition:border-color .16s var(--ease-standard), color .16s var(--ease-standard), background .16s var(--ease-standard);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;font-size:12px;display:flex}.sort-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sort-trigger:hover,.sort-trigger[aria-expanded=true]{border-color:var(--ink-red);color:var(--ink);background:var(--paper-raised)}.sort-chevron{width:16px;height:16px;transition:transform .16s var(--ease-standard);flex-shrink:0}.sort-trigger[aria-expanded=true] .sort-chevron{color:var(--ink-red);transform:rotate(180deg)}.sort-menu{z-index:30;border:1px solid var(--rule-strong);background:var(--paper-raised);width:226px;max-width:calc(100vw - 48px);box-shadow:0 12px 32px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:10px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.sort-menu [role=option]{text-align:left;width:100%;min-height:44px;color:var(--ink-muted);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:11px 12px;font-size:12px;display:flex}.sort-menu[data-side=top]{top:auto;bottom:calc(100% + 8px)}.sort-menu [role=option][aria-selected=true]{color:var(--ink-red)}.sort-menu [role=option][data-active=true]{background:var(--paper-sunk);color:var(--ink)}.sort-menu [role=option] svg{width:16px;height:16px;color:var(--ink-red);flex-shrink:0}.view-switch{border:1px solid var(--rule);border-radius:6px;gap:4px;padding:4px;display:flex}.view-switch button{width:40px;height:40px;color:var(--ink-muted);cursor:pointer;transition:background .16s var(--ease-standard), color .16s var(--ease-standard);border-radius:4px;place-items:center;display:grid}.view-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.view-switch button:not([aria-pressed=true]):hover{background:var(--paper-sunk);color:var(--ink-red)}.collection-results{font-family:var(--font-sans);color:var(--ink-muted);justify-content:space-between;align-items:baseline;gap:24px;margin-block:16px 28px;font-size:12px;line-height:1.6;display:flex}.result-count{overflow-wrap:anywhere;min-width:0}.result-count>span{color:var(--ink-red)}.ingredient-discovery{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px;display:flex}.ingredient-discovery>p{color:var(--ink-muted);font-size:14px;font-style:italic}.ingredient-discovery>div{flex-wrap:wrap;gap:8px;display:flex}.ingredient-discovery button{border:1px solid var(--rule);background:var(--paper-raised);min-height:40px;font-family:var(--font-sans);cursor:pointer;transition:color .16s var(--ease-standard), background .16s var(--ease-standard), border-color .16s var(--ease-standard);border-radius:22px;align-items:center;gap:12px;padding:8px 16px;font-size:12px;display:inline-flex}.ingredient-discovery button span{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.ingredient-discovery button:hover{border-color:var(--ink-red);color:var(--ink-red)}.ingredient-discovery button[aria-pressed=true]{background:var(--ink-red);border-color:var(--ink-red);color:var(--paper)}.ingredient-discovery button[aria-pressed=true] span{color:inherit;opacity:.8}.reset-filters{min-height:36px;color:var(--ink-red);cursor:pointer;flex-shrink:0;align-items:center;gap:6px;display:flex}.reset-filters:hover{text-underline-offset:3px;text-decoration:underline}.reset-filters svg{width:13px;height:13px}.chapter-tabs{flex-wrap:wrap;gap:8px;margin-bottom:36px;display:flex}.chapter-tabs button{min-height:44px;font-family:var(--font-sans);border:1px solid var(--rule-strong);cursor:pointer;color:var(--ink-muted);transition:color .16s var(--ease-standard), background .16s var(--ease-standard);border-radius:24px;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.chapter-tabs button[aria-pressed=true]{background:var(--ink-red);border-color:var(--ink-red);color:var(--paper)}.chapter-tabs button:hover:not([aria-pressed=true]){background:var(--paper-sunk);color:var(--ink)}.chapter-tabs button span{opacity:.7}.recipe-chapter+.recipe-chapter{margin-top:48px}.chapter-heading{align-items:center;gap:16px;margin-bottom:20px;display:flex}.chapter-heading h3{letter-spacing:.14em;font-size:11px}.chapter-heading>span{background:var(--rule);flex:1;height:1px}.chapter-heading p{font-family:var(--font-sans);color:var(--ink-muted);font-size:12px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.recipe-grid>li{min-width:0}.recipe-card{border:1px solid var(--rule);background:var(--paper-raised);height:100%;min-height:304px;box-shadow:0 2px 3px color-mix(in srgb, var(--ink) 2%, transparent);transition:border-color .22s var(--ease-standard), transform .22s var(--ease-standard), box-shadow .22s var(--ease-standard);border-radius:6px;flex-direction:column;padding:24px 24px 0;display:flex;position:relative}.recipe-card:hover{border-color:var(--rule-strong);box-shadow:var(--web-shadow);transform:translateY(-2px)}.recipe-card-meta{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.recipe-card-number{color:var(--ink-red);font-size:18px;font-style:italic}.recipe-card-meta .eyebrow{letter-spacing:.07em;text-align:right;font-size:11px}.recipe-card-art{border-bottom:1px solid var(--rule);background-image:linear-gradient(transparent calc(100% - 1px), color-mix(in srgb, var(--rule) 45%, transparent) 1px);background-size:100% 30px;justify-content:center;align-items:center;min-height:96px;margin-bottom:16px;padding:20px 0;display:flex}.recipe-card-art .title-art{max-height:48px}.recipe-card-art>span{font-size:25px}.recipe-card-copy{flex-direction:column;flex:1;display:flex}.recipe-card-title{letter-spacing:-.02em;transition:color .16s var(--ease-standard);font-size:24px;line-height:1.23;display:block}.recipe-card:hover .recipe-card-title{color:var(--ink-red)}.recipe-card-ingredients{-webkit-line-clamp:2;color:var(--ink-muted);-webkit-box-orient:vertical;margin-top:8px;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.recipe-card-details{font-family:var(--font-sans);color:var(--ink-muted);margin-top:12px;font-size:12px;line-height:1.6}.recipe-card-footer{border-top:1px solid var(--rule);font-family:var(--font-sans);color:var(--ink-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-block:12px;font-size:12px;display:flex}.recipe-card-footer svg{border:1px solid var(--rule);width:32px;height:32px;color:var(--ink-red);transition:background .16s var(--ease-standard), color .16s var(--ease-standard);border-radius:50%;padding:8px}.recipe-card:hover .recipe-card-footer svg{background:var(--ink-red);border-color:var(--ink-red);color:var(--paper)}[data-view=list] .recipe-grid{border-top:1px solid var(--rule);grid-template-columns:1fr;gap:0}[data-view=list] .recipe-card{border:0;border-bottom:1px solid var(--rule);min-height:128px;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:48px minmax(0,1fr) 240px 36px;align-items:center;gap:24px;padding:20px 16px;display:grid}[data-view=list] .recipe-card:hover{box-shadow:none;background:var(--paper-raised);transform:none}[data-view=list] .recipe-card-meta .eyebrow,[data-view=list] .recipe-card-footer>span{display:none}[data-view=list] .recipe-card-art{background:0 0;border:0;grid-area:1/3;min-height:0;margin:0;padding:0}[data-view=list] .recipe-card-art .title-art{max-height:42px}[data-view=list] .recipe-card-copy{grid-area:1/2}[data-view=list] .recipe-card-ingredients{-webkit-line-clamp:1;margin-top:4px}[data-view=list] .recipe-card-details{margin-top:4px}[data-view=list] .recipe-card-footer{border:0;margin:0;padding:0}.search-empty{text-align:center;border:1px solid var(--rule);background:var(--paper-raised);color:var(--ink-muted);border-radius:6px;padding:64px 24px}.search-empty>svg{width:38px;height:38px;color:var(--ink-red);margin:0 auto 24px}.search-empty>p{overflow-wrap:anywhere;color:var(--ink);font-size:28px}.search-empty>span{margin-block:12px;font-size:15px;line-height:1.7;display:block}.family-story{background:var(--paper-sunk);border:1px solid var(--rule);border-radius:6px;grid-template-columns:240px 1fr;align-items:center;gap:80px;margin-block:112px 0;padding:64px 72px;scroll-margin-top:28px;display:grid;position:relative}.story-portrait{transform:rotate(-2deg)}.story-portrait img{background:var(--paper-raised);border:1px solid var(--rule-strong);width:100%;height:auto;box-shadow:var(--web-shadow);padding:12px;display:block}.story-portrait figcaption{text-align:center;margin-top:16px;font-size:14px}.story-portrait figcaption span{color:var(--ink-muted);margin-top:4px;font-size:12px;display:block}.story-copy h2{letter-spacing:-.025em;text-wrap:balance;margin-block:16px 24px;font-size:clamp(32px,3.3vw,44px);line-height:1.16}.story-copy>p:not(.eyebrow){color:var(--ink-muted);margin-top:16px;font-size:18px;line-height:1.75}.story-copy>.story-closing{color:var(--ink-red);font-style:italic}.story-signature{width:140px;height:auto;margin-top:24px}.recipe-detail{max-width:var(--web-reading);padding:28px var(--web-gutter) 0}.recipe-actions{top:var(--site-header-height);z-index:20;background:var(--paper);border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:24px;margin-top:-12px;padding-block:12px;display:flex;position:sticky}.recipe-back-link{min-height:44px;font-family:var(--font-sans);color:var(--ink-muted);align-items:center;gap:8px;font-size:14px;display:inline-flex}.recipe-back-link:hover{color:var(--ink-red)}.recipe-jump-links{font-family:var(--font-sans);color:var(--ink-muted);gap:24px;font-size:12px;display:flex}.recipe-jump-links a{align-items:center;min-height:44px;padding-block:12px;display:inline-flex}.recipe-jump-links a:hover{color:var(--ink-red)}.recipe-reading-page{margin-top:48px}.recipe-detail .recipe-header{text-align:left;padding-right:90px;position:relative}.recipe-folio{color:var(--ink-red);font-size:32px;font-style:italic;position:absolute;top:3px;right:0}.recipe-detail .recipe-header>.eyebrow{color:var(--ink-red);letter-spacing:.12em;font-size:11px}.recipe-detail .recipe-title-art{justify-content:flex-start;margin-top:32px}.recipe-detail .recipe-title-art .title-art{max-height:98px}.recipe-detail .recipe-header h1{letter-spacing:-.035em;text-wrap:balance;max-width:800px;margin:24px 0 0;font-size:clamp(36px,4.5vw,58px);line-height:1.08}.recipe-detail .recipe-header>p[lang=it]{margin-top:12px;font-size:18px}.recipe-detail .recipe-facts{margin-top:24px;font-size:14px;line-height:1.8}.recipe-detail .recipe-tags{justify-content:flex-start;gap:8px;margin-top:20px}.recipe-detail .recipe-tags li{border:1px solid var(--rule-strong);background:0 0;padding:6px 12px;font-size:11px}.recipe-detail .recipe-divider{background:var(--rule-strong);width:100%;margin-top:36px}.recipe-detail .recipe-body{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:36px 64px;margin-top:40px}.recipe-detail .recipe-ingredients>h2,.recipe-detail .recipe-method>h2{letter-spacing:-.02em;align-items:baseline;gap:12px;font-size:29px;display:flex}.recipe-detail .recipe-ingredients>h2:before,.recipe-detail .recipe-method>h2:before{color:var(--ink-red);font-family:var(--font-sans);letter-spacing:.06em;font-size:11px}.recipe-detail .recipe-ingredients>h2:before{content:"01"}.recipe-detail .recipe-method>h2:before{content:"02"}.recipe-detail .recipe-ingredients>p{margin-top:8px;font-size:14px}.recipe-detail .recipe-ingredient-groups{column-gap:20px;margin-top:24px;padding-left:40px}.recipe-detail .recipe-ingredient-list li{padding-block:16px;position:relative}.recipe-detail .recipe-ingredient-list li>span:first-child{color:var(--ink-red);font-size:14px}.recipe-detail .recipe-ingredient-list .ingredient-name{font-size:18px;line-height:1.5}.checklist-caption{font-family:var(--font-sans);color:var(--ink-muted);justify-content:space-between;align-items:baseline;gap:16px;margin-top:16px;font-size:12px;line-height:1.6;display:flex}.checklist-caption button{color:var(--ink-red);cursor:pointer;min-height:36px}.checklist-caption button:hover{text-underline-offset:4px;text-decoration:underline}.ingredient-check{cursor:pointer;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:8px;left:-46px}.ingredient-check input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ingredient-check>span{border:1px solid var(--rule-strong);background:var(--paper-raised);pointer-events:none;border-radius:3px;width:17px;height:17px}.ingredient-check:hover>span,.ingredient-check input:focus-visible+span{border-color:var(--ink-red)}.ingredient-check input:focus-visible+span{outline:2px solid var(--ink-red);outline-offset:3px}.ingredient-check input:checked+span{background:var(--ink-red);border-color:var(--ink-red);color:var(--paper);place-items:center;display:grid}.ingredient-check input:checked+span:before{content:"✓";font-family:var(--font-sans);font-size:13px;line-height:1}.recipe-ingredient-list li:has(input:checked) .ingredient-name{color:var(--ink-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong)}.recipe-detail .recipe-tips{background:var(--paper-sunk);border:0;border-left:2px solid var(--ink-red);border-radius:0 6px 6px 0;margin-bottom:32px;padding:24px;position:relative}.recipe-detail .recipe-tips h2{letter-spacing:.1em;font-size:11px}.recipe-detail .recipe-tips p{font-size:16px;line-height:1.75}.recipe-detail .recipe-method ol{margin-top:24px}.recipe-detail .recipe-method li{grid-template-columns:32px 1fr;gap:20px}.recipe-detail .recipe-method li>span{font-size:27px;font-style:italic;line-height:1.5}.recipe-detail .recipe-method li>p{font-size:18px;line-height:1.8}.recipe-detail .recipe-method li+li{margin-top:28px}.recipe-detail .recipe-aside{border-top:1px solid var(--rule);grid-area:2/1/auto/-1;padding-top:32px}.recipe-detail .recipe-method-column{grid-area:1/2}.recipe-detail .recipe-glossary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.recipe-detail .recipe-glossary dl>div{margin-top:0}.recipe-detail .recipe-aside h2{letter-spacing:.1em;color:var(--ink-red);font-size:11px}.recipe-detail .recipe-notes li,.recipe-detail .recipe-glossary dt,.recipe-detail .recipe-glossary dd{font-size:16px;line-height:1.8}.recipe-detail .recipe-glossary{border-top:0;padding-top:0}.notebook-source{background:var(--paper-sunk);border:1px solid var(--rule);border-radius:6px;margin-top:64px;padding:8px 28px}.notebook-summary{border-radius:0;padding-block:24px}.notebook-summary-copy{align-items:center;gap:20px;display:flex}.notebook-summary-copy>svg{width:26px;height:26px;color:var(--ink-red)}.notebook-summary .eyebrow{letter-spacing:.1em;font-size:11px}.notebook-summary-copy>span>span:last-child{margin-top:4px;font-size:24px}.notebook-source-body{border-top:1px solid var(--rule);padding-block:24px 28px}.notebook-source-body>p{font-size:14px}.notebook-pages{gap:32px;margin-top:28px;display:grid}.notebook-page{border-top:1px solid var(--rule-strong);padding-top:24px}.notebook-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;margin-bottom:24px;display:flex}.notebook-page-heading h3{letter-spacing:-.01em;font-size:20px;line-height:1.4}.notebook-page-heading>span{font-family:var(--font-sans);color:var(--ink-red);letter-spacing:.03em;font-size:12px}.notebook-page-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.notebook-page-scan,.notebook-page-transcript{min-width:0}.notebook-page-pair .eyebrow{color:var(--ink-muted);margin-bottom:16px;font-size:11px}.notebook-scan-link{background:var(--scan-paper);border:1px solid var(--rule);cursor:zoom-in;transition:border-color .16s var(--ease-standard), box-shadow .16s var(--ease-standard);border-radius:6px;padding:16px 16px 0;display:block}.notebook-scan-link:hover{border-color:var(--ink-red);box-shadow:var(--web-shadow)}.notebook-scan-image{width:100%;height:auto;display:block}.scan-enlarge-label{border-top:1px solid var(--scan-rule);min-height:44px;font-family:var(--font-sans);color:var(--scan-ink-red);justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:12px;display:flex}.notebook-page-transcript{border-left:1px solid var(--rule);padding-left:28px}.notebook-lines{overflow-wrap:anywhere;font-size:16px;line-height:1.85}.transcript-line{min-height:1.85em;display:block}.scan-unavailable{border:1px dashed var(--rule-strong);color:var(--ink-muted);padding:36px 22px;font-style:italic;line-height:1.7}.scan-lightbox{width:min(1100px,94vw);max-width:94vw;max-height:90dvh;color:var(--ink);background:var(--paper);border:1px solid var(--rule-strong);box-shadow:var(--shadow-lg);border-radius:10px;margin:auto;padding:0;overflow:hidden}.scan-lightbox::backdrop{background:color-mix(in srgb, var(--ink) 72%, transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.scan-lightbox-header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:24px;padding:20px 28px;display:flex}.scan-lightbox-header .eyebrow{color:var(--ink-red);margin-bottom:4px;font-size:11px}.scan-lightbox-header h2{font-size:26px;line-height:1.25}.scan-lightbox-header button{border:1px solid var(--rule-strong);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.scan-lightbox-header button:hover{color:var(--ink-red);background:var(--paper-sunk)}.scan-zoom-viewport{overscroll-behavior:contain;background:var(--scan-paper);max-height:calc(90dvh - 112px);padding:28px;overflow:auto}.scan-enlarged{width:max(100%,900px);max-width:none;height:auto;display:block}.recipe-neighbours{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px;display:grid}.recipe-neighbour{background:var(--paper-raised);border:1px solid var(--rule);min-width:0;transition:border-color .16s var(--ease-standard), transform .16s var(--ease-standard);border-radius:6px;flex-direction:column;gap:8px;padding:24px;display:flex}.recipe-neighbour:hover{border-color:var(--rule-strong);transform:translateY(-2px)}.recipe-neighbour .eyebrow{letter-spacing:.08em;font-size:11px}.recipe-neighbour>span:nth-child(2){letter-spacing:-.015em;font-size:24px;line-height:1.25}.recipe-neighbour:hover>span:nth-child(2){color:var(--ink-red)}.recipe-neighbour-next{text-align:right;grid-column:2}.neighbour-art{align-items:flex-end;height:56px;margin-top:auto;padding-top:16px;display:flex}.recipe-neighbour-next .neighbour-art{justify-content:flex-end}.recipe-end{justify-content:space-between;gap:24px;margin-top:24px;display:flex}.preview-notice{background:var(--paper-sunk);border-radius:6px;font-size:14px;line-height:1.75}.print-toolbar-wrap{max-width:var(--web-reading);padding:48px var(--web-gutter) 32px}.print-edition-toolbar{border-bottom:1px solid var(--rule-strong);justify-content:space-between;align-items:center;gap:32px;padding-bottom:28px;display:flex}.print-edition-toolbar h1{letter-spacing:-.025em;margin-top:12px;font-size:36px}.print-edition-toolbar>div>p:last-child{max-width:530px;margin-top:12px;font-size:14px;line-height:1.8}.print-edition-toolbar .print-action{flex-shrink:0}.print-action:disabled{opacity:.45;cursor:wait;transform:none}.print-edition-status{font-size:12px;line-height:1.8}.print-edition-status[data-ready=true]:before{content:"✓";color:var(--ink-red);margin-right:10px}.site-footer{border-top:1px solid var(--rule-strong);margin-top:96px}.site-footer-inner{padding:56px var(--web-gutter) 48px;max-width:var(--web-page);grid-template-columns:1.4fr 1fr 1fr;align-items:start;gap:56px;margin:auto;display:grid}.site-footer .book-logo{width:228px}.footer-note{max-width:280px;color:var(--ink-muted);margin-top:16px;font-size:16px;font-style:italic;line-height:1.8}.footer-links{font-family:var(--font-sans);flex-direction:column;gap:0;font-size:14px;display:flex}.footer-links>.eyebrow{letter-spacing:.12em;margin-bottom:16px;font-size:11px}.footer-links a{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:24px;min-height:44px;padding-block:12px;display:flex}.footer-links a:hover{color:var(--ink-red)}.footer-links svg{width:14px;height:14px}.footer-invitation{padding-top:4px}.footer-invitation img{width:180px;height:auto}.footer-invitation p{max-width:210px;color:var(--ink-muted);margin-top:20px;font-size:16px;font-style:italic;line-height:1.8}.footer-colophon{max-width:calc(var(--web-page) - var(--web-gutter) * 2);border-top:1px solid var(--rule);font-family:var(--font-sans);letter-spacing:.04em;color:var(--ink-muted);justify-content:space-between;gap:24px;margin:auto;padding:24px 0 32px;font-size:11px;display:flex}.error-page{max-width:600px;margin:auto;padding:96px 24px}.error-page>svg{width:52px;height:52px;color:var(--ink-red);margin:0 auto 28px}.error-page>.book-logo{margin:0 auto 40px}.error-page h1{letter-spacing:-.03em;text-wrap:balance;margin-top:20px;font-size:42px}.error-page>.primary-link{margin-top:32px}@media (min-width:900px) and (max-height:950px){.book-entrance{padding-top:224px}.entrance-ink{opacity:.65;-webkit-mask-image:linear-gradient(#000 0% 8%,#0000 58%);mask-image:linear-gradient(#000 0% 8%,#0000 58%)}.logo-name{width:380px}.logo-lead{width:210px}.entrance-kicker{margin-bottom:22px}.entrance-dedication{padding-top:32px}}@media (max-width:1100px){.site-nav{gap:24px}.site-header .book-logo{width:210px}.collection-intro{gap:48px;padding-block:64px}.collection-intro h1{font-size:66px}.recipe-grid{gap:16px}.recipe-card{padding-inline:20px}.family-story{grid-template-columns:200px 1fr;gap:48px;padding:48px}.footer-colophon{margin-inline:var(--web-gutter)}}@media (max-width:899px){:root{--site-header-height:120px}html{scroll-padding-top:142px}.site-header-inner{flex-wrap:wrap;gap:8px 24px;min-height:0;padding-bottom:0}.site-nav{border-top:1px solid var(--rule);order:3;justify-content:center;gap:44px;width:100%}.site-nav a{min-height:44px;font-size:13px}.site-nav a:after{bottom:0}.collection-intro{gap:40px}.collection-page-note{padding:16px;left:-12px}.notebook-page-pair{gap:24px}.notebook-page-transcript{padding-left:20px}.collection-intro h1{font-size:60px}.collection-description{font-size:16px}.collection-intro-actions{gap:8px 16px}.collection-statistics{gap:8px 12px}.collection-statistics span+span:before{margin-right:12px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading{gap:16px}.collection-heading h2{font-size:36px}.collection-heading>p{max-width:220px;font-size:15px}.collection-results>p{display:none}.collection-toolbar{gap:16px}.recipe-search input{font-size:13px}.family-story{grid-template-columns:160px 1fr;gap:36px;margin-top:80px;padding:36px}.story-copy>p:not(.eyebrow){font-size:17px}.recipe-detail .recipe-body{column-gap:36px}[data-view=list] .recipe-card{grid-template-columns:36px minmax(0,1fr) 180px 32px;gap:16px}.site-footer-inner{grid-template-columns:1fr 1fr;gap:36px}.footer-invitation{display:none}}@media (max-width:639px){:root{--recipe-actions-height:134px;--web-gutter:24px}.site-header .book-logo{width:182px}.site-header-inner{column-gap:8px}.site-controls{gap:8px}.site-controls nav a{min-width:30px;padding-inline:6px}.site-nav{gap:28px}.entrance-edition{letter-spacing:.1em;max-width:140px;font-size:10px}.entrance-toolbar{padding:16px 20px}.book-entrance{min-height:calc(100svh - 72px);padding:200px 20px 28px}.entrance-ink{top:-12px}.entrance-kicker{letter-spacing:.14em;margin-bottom:24px;font-size:10px}.logo-lead{width:164px;margin-bottom:8px}.logo-name{width:290px}.entrance-subtitle{margin-top:-22px;padding-left:28px;font-size:18px}.enter-button{min-width:208px;min-height:64px;margin-top:28px}.entry-lettering{width:126px}.entry-arrow{width:36px;height:36px}.entrance-invitation{max-width:288px;margin-top:20px;font-size:14px}.entrance-dedication{padding-top:40px}.collection-intro{grid-template-columns:1fr;gap:48px;padding-block:48px}.collection-intro h1{font-size:66px}.collection-description{max-width:390px;margin-top:24px;font-size:17px}.collection-intro-actions,.collection-statistics{margin-top:24px}.collection-illustration{width:min(100%,340px);margin-inline:auto}.collection-keepsakes{padding-bottom:144px}.collection-page-note{gap:12px;width:240px;max-width:82%;padding:16px 20px;left:8px}.collection-page-note .title-art{max-height:64px}.collection-heading{flex-direction:column;align-items:flex-start;gap:8px;padding-top:28px}.collection-heading h2{font-size:36px}.collection-heading>p{max-width:none;font-size:15px}.collection-toolbar{flex-wrap:wrap;gap:12px;margin-top:24px}.recipe-search{flex-basis:100%;max-width:none}.recipe-search input{height:56px;padding-left:44px;font-size:16px}.recipe-search>svg{width:18px;left:16px}.search-clear{top:6px}.collection-view-controls{justify-content:space-between;width:100%}.collection-sort{flex:1;max-width:240px}.sort-trigger{gap:10px}.sort-menu{left:0;right:auto}.collection-results{margin-block:12px 24px}.ingredient-discovery{gap:12px;margin-top:20px}.ingredient-discovery>div{gap:8px}.ingredient-discovery button{min-height:44px;padding-inline:12px}.chapter-tabs{gap:8px;margin-bottom:24px}.chapter-tabs button{padding-inline:12px}.recipe-grid{grid-template-columns:1fr;gap:16px}.recipe-card{min-height:300px;padding:24px 24px 0}.recipe-card-art{min-height:100px}.recipe-card-title{font-size:26px}.recipe-card-ingredients{font-size:14px}[data-view=list] .recipe-card{grid-template-columns:28px minmax(0,1fr) 32px;gap:12px;padding-inline:8px}[data-view=list] .recipe-card-art{display:none}[data-view=list] .recipe-card-title{font-size:22px}.family-story{grid-template-columns:1fr;gap:32px;margin-top:64px;padding:40px 24px}.story-portrait{max-width:176px;margin-inline:auto}.story-copy h2{font-size:34px}.story-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}.story-signature{width:120px}.recipe-detail{padding-top:16px}.recipe-actions{flex-wrap:wrap;gap:8px 20px;padding-bottom:16px}.recipe-jump-links{border-top:1px solid var(--rule);order:3;gap:24px;width:100%;padding-top:4px}.recipe-reading-page{margin-top:32px}.recipe-detail .recipe-header{padding-top:40px;padding-right:0}.recipe-folio{font-size:22px;top:0;left:0;right:auto}.recipe-detail .recipe-title-art{margin-top:28px}.recipe-detail .recipe-title-art .title-art{max-height:74px}.recipe-detail .recipe-header h1{margin-top:24px;font-size:40px}.recipe-detail .recipe-facts{margin-top:24px;font-size:13px}.recipe-detail .recipe-tags{margin-top:16px}.recipe-detail .recipe-body{flex-direction:column;gap:40px;margin-top:32px;display:flex}.recipe-detail .recipe-ingredients>h2,.recipe-detail .recipe-method>h2{font-size:29px}.recipe-detail .recipe-tips{margin-bottom:32px;padding:20px}.recipe-detail .recipe-method li{grid-template-columns:28px 1fr;gap:12px}.recipe-detail .recipe-method li>p{font-size:18px;line-height:1.8}.recipe-detail .recipe-aside{padding-top:28px}.recipe-detail .recipe-glossary dl{grid-template-columns:1fr;gap:20px}.notebook-source{margin-top:48px;padding-inline:20px}.notebook-summary-copy{gap:12px}.notebook-summary-copy>svg{width:24px;height:24px}.notebook-summary-copy>span>span:last-child{font-size:21px}.notebook-page-pair{grid-template-columns:1fr;gap:28px}.notebook-page-transcript{border-left:0;padding-left:0}.notebook-lines{font-size:16px}.notebook-page-heading h3{font-size:19px}.scan-lightbox-header{gap:16px;padding:16px}.scan-lightbox-header h2{font-size:21px}.scan-zoom-viewport{padding:16px}.recipe-neighbours{grid-template-columns:1fr;gap:16px;margin-top:32px}.recipe-neighbour{padding:24px}.recipe-neighbour-next{grid-column:1}.recipe-end{gap:12px}.site-footer{margin-top:64px}.site-footer-inner{grid-template-columns:1fr;gap:32px;padding-block:40px 32px}.site-footer .book-logo{width:214px}.footer-note{max-width:310px;font-size:16px}.footer-links{max-width:360px}.footer-invitation{padding-top:12px;display:block}.footer-invitation img{width:152px}.footer-invitation p{max-width:none;margin-top:12px;font-size:15px}.footer-colophon{margin-inline:var(--web-gutter);flex-direction:column;gap:8px;padding-bottom:24px;line-height:1.7}.error-page h1{font-size:36px}.print-toolbar-wrap{padding-top:32px}.print-edition-toolbar{flex-direction:column;align-items:flex-start;gap:24px}.print-edition-toolbar h1{font-size:32px}}@media (max-width:359px){:root{--web-gutter:16px}.site-header .book-logo{width:152px}.site-controls{gap:6px}.site-controls nav a{min-width:28px;padding-inline:5px}.site-nav{gap:24px}.entrance-edition{max-width:104px}.entrance-kicker{letter-spacing:.06em}.logo-name{width:270px}.collection-intro h1{font-size:56px}.collection-description{font-size:16px}.recipe-card{padding-inline:22px}.story-copy h2{font-size:30px}.family-story{padding-inline:22px}.recipe-detail .recipe-header h1{font-size:36px}.notebook-summary-copy>svg{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}.handwriting-reveal{opacity:1!important}.handwriting-reveal .ink-trace{stroke-dashoffset:0!important;animation:none!important}.handwriting-reveal .ink-complete{opacity:1!important;animation:none!important}.recipe-card:hover,.recipe-neighbour:hover,.enter-button:hover,.primary-link:hover{transform:none}.collection-page-note:hover{transform:rotate(-4deg)}}}
