@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--cream:#f7f3e9;--paper:#fffcf5;--red:#7e202a;--ink:#252920;--muted:#77766b;--line:#dcd8cc;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #bd7741;outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.055em;line-height:1.12}em{font-weight:500}p{line-height:1.8}img{display:block;max-width:100%}.skip{position:absolute;top:-100px;background:var(--red);color:white;padding:15px;z-index:10}.skip:focus{top:10px}.topline{height:35px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--red);color:var(--cream);font-size:14px;letter-spacing:.12em}.topline a{font-size:14px;letter-spacing:.08em}header{height:109px;display:flex;align-items:center;justify-content:space-between;padding:12px 5%;border-bottom:1px solid var(--line);gap:32px;background:var(--cream)}.brand{width:128px;flex-shrink:0}.brand img{width:100%;height:85px;object-fit:contain}nav{display:flex;gap:35px;align-items:center;font-size:14px}nav a:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--red);color:var(--cream);padding:18px 24px;min-height:55px;border:1px solid var(--red);font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#5c1720;transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.small{padding:12px 19px;min-height:45px}.hero{display:grid;grid-template-columns:49% 51%;min-height:665px}.hero-copy{padding:66px 8% 38px 10.2%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.16em;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:13px}.little-line{height:1px;width:26px;background:var(--red)}h1{font-size:clamp(49px,5.5vw,84px);margin:24px 0 26px;color:var(--red);line-height:1.04}h1 em{font-size:.71em;letter-spacing:-.055em;white-space:nowrap}.hero-copy>p{color:#66685f;font-size:16px;line-height:1.8}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:30px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid currentColor;padding-bottom:6px;font-weight:500}.text-link:hover{color:var(--red)}.hero-foot{display:flex;gap:10px;align-items:center;font-size:14px;color:#6b6e60;margin-top:auto;padding-top:36px}.hero-foot strong{color:var(--ink);font-weight:500;margin-left:12px}.status-dot{width:6px;height:6px;border-radius:50%;background:#52633b}.hero-visual{position:relative;overflow:hidden;background:#23221d}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:61% 50%}.round-seal{position:absolute;right:30px;top:32px;width:112px;height:112px;border-radius:50%;background:var(--cream);color:var(--red);display:flex;align-items:center;justify-content:center;flex-direction:column;line-height:1.3;font-size:14px;letter-spacing:.13em;transform:rotate(13deg);box-shadow:0 0 0 5px #f7f3e944}.round-seal span{font:italic 30px var(--serif);letter-spacing:-.03em}.photo-caption{position:absolute;bottom:24px;left:25px;font-size:14px;color:var(--cream);letter-spacing:.15em}.ribbon{display:flex;justify-content:space-around;align-items:center;gap:28px;padding:23px 4%;border-bottom:1px solid var(--line);background:#eeecdf;color:#3c4932;font-family:var(--serif);font-size:18px}.ribbon b{font-size:20px;font-weight:400;color:#84906e}.section{padding:96px 7%}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:42px}.section-intro>p{max-width:360px;color:#6b6d62;font-size:14px}.section h2{font-size:clamp(35px,3.8vw,55px);margin-top:15px}.section h2 em{color:var(--red)}.menu-toolbar{display:flex;gap:25px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px}.mode-switch{display:flex;border:1px solid var(--line);padding:4px;gap:3px}.mode-switch button{border:0;background:transparent;padding:13px 22px;display:flex;gap:28px;align-items:center;font-size:14px;color:#77766b}.mode-switch button.active{background:var(--red);color:var(--cream)}.search{display:flex;gap:12px;align-items:center;border-bottom:1px solid #aaa99e;padding:10px 0}.search input{border:0;background:transparent;font-size:14px;width:210px;padding:4px;outline-offset:3px}.search>span{font-size:25px}.price-note{font-size:14px;color:var(--muted);margin:13px 0 30px}.menu-layout{display:grid;grid-template-columns:210px 1fr;gap:44px}.category-list{display:flex;flex-direction:column;align-items:stretch;gap:4px}.category-list button{text-align:left;padding:13px 16px;border:0;background:transparent;font-size:14px;color:#68695f;display:flex;justify-content:space-between;gap:12px}.category-list button.active{background:#e9e5d9;color:var(--red);font-weight:700}.menu-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.menu-heading h3{font:500 27px var(--serif)}.menu-heading>span{font-size:14px;color:var(--muted)}#category-note{font-size:14px;color:var(--muted);margin-bottom:14px}.menu-items{display:grid;grid-template-columns:1fr 1fr;gap:0 34px}.menu-item{display:flex;flex-direction:column;align-items:flex-start;position:relative;padding:22px 0;border-top:1px solid var(--line);min-height:143px}.menu-item h4{font-size:16px;font-weight:600;margin:0 0 8px}.menu-item p{font-size:14px;line-height:1.65;color:#76776b;padding-right:20px}.menu-item .price{color:var(--red);font-size:14px;font-weight:600;padding-top:12px}.menu-item .sizes{font-size:14px;color:#7a7a70;padding-top:6px;line-height:1.7}.menu-item .item-more{font-size:14px;border:0;background:transparent;padding:0;color:var(--red);margin-top:10px;text-decoration:underline}.extras{padding-top:12px;font-size:14px;color:#666;line-height:1.9}.extras summary{cursor:pointer;color:var(--red)}.empty{padding:30px 0;color:var(--muted)}.menu-bottom{border-top:1px solid var(--line);padding-top:26px;margin-top:42px;display:flex;justify-content:space-between;align-items:center;font-size:16px;color:#65675c}.story{display:grid;grid-template-columns:1fr 1fr;background:#eae9df}.story-photo{min-height:610px;position:relative}.story-photo img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:30px;left:35px;color:white;font-size:14px;letter-spacing:.17em}.story-copy{padding:75px 13% 65px 12%}.story h2{font-size:clamp(35px,3.5vw,50px);margin:22px 0 26px}.story h2 em{color:var(--red)}.story p{font-size:14px;color:#6b6e62;margin-bottom:16px}.story .text-link{margin-top:15px}.visit-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;border-top:1px solid var(--line);padding-top:34px;gap:45px}.index{font-size:14px;letter-spacing:.15em;color:#848477}.visit h3{font-size:16px;font-weight:500;margin:25px 0 15px}.visit p{font-size:14px;line-height:2}.visit .text-link{margin-top:23px}.phone-big{font-family:var(--serif);font-size:30px;color:var(--red);white-space:nowrap}.phone-big span{font:22px var(--sans);margin-left:20px}.hours{display:flex;justify-content:space-between;gap:10px;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:15px}.hours strong{font-weight:500}.visit .fine{font-size:14px;color:var(--muted);margin-top:15px;line-height:1.8}.closing{background:var(--red);color:var(--cream);padding:64px 6% 72px;text-align:center}.closing p{font-size:14px;color:#e6c4bc}.closing>div{font-family:var(--serif);font-size:clamp(65px,8.8vw,125px);letter-spacing:-.06em;line-height:1.25;margin:14px 0 28px}.closing em{color:#d6bc99}.button.cream{background:var(--cream);color:var(--red);border-color:var(--cream)}.button.cream:hover{background:#e7decb}footer{padding:28px 5%;display:flex;gap:25px;justify-content:space-between;font-size:14px;color:#78796d}footer>div{display:flex;gap:19px}footer a:hover{color:var(--red)}[hidden]{display:none!important}@media(min-width:1600px){header,.topline{padding-left:7%;padding-right:7%}.hero-copy{padding-left:14.2%}.hero{min-height:760px}}@media(max-width:1050px){.hero-actions{gap:18px;flex-wrap:wrap}.hero-copy{padding-top:45px;padding-bottom:35px}.hero{min-height:630px}h1{font-size:62px}h1 em{white-space:normal}.ribbon{font-size:16px;gap:15px}.ribbon span:last-child,.ribbon b:last-of-type{display:none}.section{padding:70px 5%}.story-copy{padding:55px 9%}.story-photo{min-height:560px}.menu-layout{grid-template-columns:175px 1fr;gap:25px}.menu-items{gap:0 24px}.phone-big{font-size:25px}.visit-grid{gap:25px}header{gap:20px}nav{gap:20px}}@media(max-width:720px){html{scroll-padding-top:25px}.topline{padding:0 6%;height:32px;font-size:14px}header{height:94px;padding:8px 6%;gap:16px}.brand{width:108px}.brand img{height:76px}header>.button{font-size:14px;padding:11px 14px;gap:16px}nav{display:none}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:39px 7% 30px}.eyebrow{font-size:14px}h1{font-size:62px;margin:22px 0}h1 em{font-size:.65em;white-space:nowrap}.hero-copy>p{font-size:14px}.hero-actions{margin-top:25px;gap:23px}.button{padding:15px 20px;min-height:50px;font-size:14px}.text-link{font-size:14px}.hero-foot{padding-top:25px}.hero-visual{height:370px}.round-seal{width:90px;height:90px;right:25px;top:23px;font-size:14px}.round-seal span{font-size:25px}.ribbon{gap:15px;padding:18px 5%;font-size:14px}.ribbon span:nth-of-type(4),.ribbon b:nth-of-type(3){display:none}.ribbon b{font-size:16px}.section{padding:55px 6%}.section-intro{display:block;margin-bottom:27px}.section h2{font-size:39px}.section-intro>p{font-size:14px;margin-top:20px;max-width:100%}.menu-toolbar{flex-direction:column;align-items:stretch;gap:16px;padding-bottom:18px}.mode-switch button{flex:1;justify-content:space-between;padding:12px 17px}.search input{width:100%}.search{padding:4px 0}.price-note{font-size:14px;margin:12px 0 21px}.menu-layout{display:block}.category-list{flex-direction:row;overflow-x:auto;gap:5px;padding-bottom:20px;margin-bottom:15px}.category-list button{white-space:nowrap;font-size:14px;padding:10px 13px}.category-list button>span{display:none}.menu-heading h3{font-size:26px}.menu-items{grid-template-columns:1fr;gap:0}.menu-item{min-height:0;padding:19px 0}.menu-item h4{font-size:16px}.menu-item p{font-size:14px;padding-right:0}.menu-item .price{font-size:14px}.menu-bottom{align-items:flex-start;gap:20px;flex-direction:column;font-size:14px;margin-top:25px}.story{display:flex;flex-direction:column}.story-photo{min-height:0;height:365px}.story-copy{padding:43px 7% 48px}.story h2{font-size:39px}.story p{font-size:14px}.visit .section-intro .phone-big{display:block;margin-top:25px;font-size:28px}.visit-grid{grid-template-columns:1fr;gap:32px;padding-top:28px}.visit h3{margin-top:15px}.visit-grid>div:not(:last-child){border-bottom:1px solid var(--line);padding-bottom:29px}.visit .text-link{margin-top:15px}.hours{justify-content:flex-start;gap:35px}.closing{padding:45px 6% 50px}.closing>div{font-size:66px}.closing p{font-size:14px}footer{flex-direction:column;gap:17px;padding:26px 6%}footer>div{gap:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Larger reading text and page navigation, Pietro website only. */
body{font-size:16px}
.hero-copy>p,.section-intro>p,.story p,.visit p,.hours,.menu-bottom{font-size:16px;line-height:1.8}
.menu-item h4{font-size:18px;line-height:1.45}
.menu-item p,.extras{font-size:16px;line-height:1.65;color:#5b5d52}
.menu-item .price{font-size:17px}
.menu-item .sizes,.price-note,#category-note,.menu-heading>span,.visit .fine{font-size:14px;color:#606255}
.category-list button,.mode-switch button,.search input,nav,.button,.text-link{font-size:15px}
.category-list button,.mode-switch button,nav a{min-height:44px}
nav a{display:inline-flex;align-items:center}
nav a[aria-current="page"]{color:var(--red);text-decoration:underline;text-underline-offset:6px}
.topline{height:auto;min-height:40px;gap:12px;font-size:13px;letter-spacing:.08em}
.topline a{font-size:14px}
.eyebrow,.photo-caption,.image-label,.index{font-size:13px;letter-spacing:.1em}
.hero-foot{font-size:14px;flex-wrap:wrap;line-height:1.6}
footer{font-size:14px;line-height:1.6;flex-wrap:wrap}
footer>div{flex-wrap:wrap}
.menu-layout{grid-template-columns:240px minmax(0,1fr)}
.menu-preview-links{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.menu-preview-card{display:block;padding:30px;border:1px solid var(--line);background:var(--paper);transition:border-color .2s}
.menu-preview-card:hover{border-color:var(--red)}
.menu-preview-card h3{display:flex;justify-content:space-between;gap:20px;font:500 32px var(--serif);color:var(--red);margin:14px 0}
.menu-preview-card p{font-size:16px;color:#606255}
@media(max-width:1050px){nav{gap:18px}.menu-layout{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:720px){
header{height:auto;min-height:94px;flex-wrap:wrap;gap:8px 16px}
header nav{display:flex;order:3;width:100%;justify-content:space-between;gap:12px;font-size:14px}
header>.button{font-size:14px}
.hero-copy>p,.section-intro>p,.story p,.visit p,.hours,.menu-bottom{font-size:16px}
.hero-actions{align-items:flex-start;gap:20px}
.menu-layout{display:block}
.category-list button{font-size:14px}
.mode-switch button{font-size:15px;gap:12px}
.search input{font-size:16px}
.menu-item h4{font-size:18px}
.menu-item p{font-size:16px}
.menu-item .price{font-size:17px}
.menu-item .sizes,.price-note,.visit .fine{font-size:14px}
.image-label,.photo-caption{font-size:12px;letter-spacing:.05em;right:16px}
.menu-preview-links{grid-template-columns:1fr;gap:16px}
.menu-preview-card{padding:24px}
.topline{font-size:11px;letter-spacing:.04em}
}

.legal-page{max-width:1040px;padding:72px 6% 88px;margin:0 auto}
.legal-page>h1{font-size:clamp(34px,4vw,52px);line-height:1.18;color:var(--red);letter-spacing:-.035em;margin:16px 0 38px;overflow-wrap:anywhere}
.legal-copy{font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.legal-copy p{margin:0 0 18px}
.legal-copy :is(h2,h3,h4){font-family:var(--sans);font-weight:600;line-height:1.4;letter-spacing:normal;margin:32px 0 14px}
.legal-copy h2{font-size:23px}.legal-copy :is(h3,h4){font-size:19px}
.legal-copy ul,.legal-copy ol{padding-left:24px;margin:0 0 22px}.legal-copy li{margin:6px 0}
.legal-copy a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
@media(max-width:720px){.legal-page{padding:42px 6% 56px}.legal-page>h1{font-size:35px;margin-bottom:28px}.legal-copy h2{font-size:21px}}

/* Keep the decorative seal in three balanced lines, including on phones. */
.round-seal{gap:3px;padding:12px;text-align:center}
.round-seal .seal-caption{font:600 10px/1.2 var(--sans);letter-spacing:.1em;white-space:nowrap}
.round-seal .seal-word{font:italic 30px/1.05 var(--serif);letter-spacing:-.03em}
@media(max-width:720px){.round-seal{width:104px;height:104px;top:18px;right:18px;gap:3px;padding:12px;transform:rotate(-8deg);box-shadow:0 0 0 3px #f7f3e955}.round-seal .seal-caption{font-size:10px;letter-spacing:.09em}.round-seal .seal-word{font-size:29px}}
