@font-face{font-family:Ultra;src:url(fonts/ultra.ttf)}
@font-face{font-family:Fraktur;src:url(fonts/fraktur.ttf)}
@font-face{font-family:Playfair;src:url(fonts/playfair.ttf);font-weight:400 900}
@font-face{font-family:Playfair;font-style:italic;src:url(fonts/playfair-i.ttf);font-weight:400 900}
@font-face{font-family:Caslon;src:url(fonts/caslon.ttf)}
@font-face{font-family:Caslon;font-style:italic;src:url(fonts/caslon-i.ttf)}
@font-face{font-family:Caslon;font-weight:700;src:url(fonts/caslon-b.ttf)}
@font-face{font-family:Oswald;src:url(fonts/oswald.ttf);font-weight:200 700}
@font-face{font-family:Kalam;src:url(fonts/kalam.ttf)}@font-face{font-family:Kalam;font-weight:700;src:url(fonts/kalam-b.ttf)}
@font-face{font-family:Courier;src:url(fonts/courier.ttf)}
:root{--paper:#f4ecd8;--sheet:#fbf7ec;--ink:#1a2238;--yel:#f2c230;--red:#a3291c;--rule:#1a2238;--mut:#585b68;--lt:#cdbf9c}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.62 Caslon,Georgia,serif}
a{color:inherit}img{max-width:100%;display:block}
.page{max-width:1240px;margin:0 auto;padding:0 18px}
.sc{font:500 12.5px Oswald,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.tbc{font:500 11.5px Oswald;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px dashed var(--red);color:var(--red);white-space:nowrap}
hr.d{border:0;border-top:3px double var(--rule);margin:0}
/* masthead */
.ears{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--rule)}
.ears span:nth-child(2){display:none}
.mast{text-align:center;padding:14px 0 6px}
.mast h1{font:400 clamp(40px,9vw,104px)/1 Fraktur,serif;margin:0;letter-spacing:.01em}
.mast p{margin:6px 0 0;font:italic 16px Caslon}
.dateline{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;border-top:3px double var(--rule);border-bottom:1px solid var(--rule);padding:8px 0;margin-top:12px}
.index{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:2px solid var(--rule);display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none}
.index a{flex:none;text-decoration:none;padding:11px 12px}.index a:hover{color:var(--red)}
.index .tk{margin-left:auto;flex:none;background:var(--ink);color:var(--yel);border:0;padding:9px 14px;cursor:pointer}
@media(min-width:760px){.ears span:nth-child(2){display:inline}}
/* front page */
.front{display:grid;gap:0;margin:22px 0 10px}
.col{padding:0 0 22px}
.box{border:1px solid var(--rule);padding:16px;margin-bottom:16px;background:var(--sheet)}
.box h3{font:800 20px Playfair;margin:0 0 6px;border-bottom:1px solid var(--rule);padding-bottom:6px}
.box dl{margin:0;font-size:15.5px}.box dt{margin-top:9px}.box dd{margin:0}
.kicker{color:var(--red)}
.hed{font:900 clamp(38px,5.6vw,68px)/.98 Playfair,serif;margin:6px 0 12px;letter-spacing:-.01em}
.deck{font:italic 400 clamp(19px,2vw,23px)/1.35 Playfair;margin:0 0 16px;color:#33384a}
.byline{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:6px 0;margin-bottom:14px}
figure{margin:0 0 14px}figure img{width:100%;filter:sepia(.12) contrast(1.04);border:1px solid var(--rule)}
figcaption{font:italic 14px Caslon;color:var(--mut);padding-top:6px;border-bottom:1px solid var(--lt);padding-bottom:8px}
.cols2{columns:2 260px;column-gap:28px;column-rule:1px solid var(--lt)}
.cols2 p{margin:0 0 12px}
.drop:first-letter{float:left;font:900 64px/.8 Playfair;padding:6px 8px 0 0;color:var(--red)}
.btnrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.btn{display:inline-block;font:600 13.5px Oswald;letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;border:2px solid var(--ink);background:var(--ink);color:var(--sheet);cursor:pointer;text-decoration:none;text-align:center}
.btn.y{background:var(--yel);color:var(--ink)}.btn.o{background:transparent;color:var(--ink)}
.toc{list-style:none;margin:0;padding:0}.toc li{display:flex;gap:8px;padding:6px 0;border-bottom:1px dotted var(--lt)}.toc li a{text-decoration:none}.toc li span:after{content:""}.toc b{font:700 15px Oswald;color:var(--red);min-width:22px}
.stars{font:700 30px Playfair;line-height:1}
@media(min-width:1000px){.front{grid-template-columns:250px 1fr 260px}.front>.col{padding:0 22px}.front>.col:first-child{padding-left:0;border-right:1px solid var(--rule)}.front>.col:last-child{padding-right:0;border-left:1px solid var(--rule)}}
/* section heads */
.shead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:40px 0 20px}
.shead:before,.shead:after{content:"";border-top:3px double var(--rule)}
.shead h2{font:900 clamp(26px,3.6vw,40px) Playfair;margin:0;text-align:center}
.shead small{display:block;text-align:center}
/* family */
.family{display:grid;gap:26px}
.family .cols3{columns:3 230px;column-gap:28px;column-rule:1px solid var(--lt)}
.family .cols3 p{margin:0 0 12px}
.pull{font:italic 700 clamp(24px,3vw,34px)/1.2 Playfair;border-top:4px solid var(--ink);border-bottom:1px solid var(--ink);padding:16px 0;margin:0}
.pull cite{display:block;font:500 12.5px Oswald;letter-spacing:.2em;text-transform:uppercase;font-style:normal;margin-top:10px;color:var(--red)}
.ledger{border-top:1px solid var(--rule)}.ledger div{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--lt)}.ledger b{font:900 19px Playfair}
@media(min-width:1000px){.family{grid-template-columns:1fr 2fr}}
/* picks */
.picks{display:grid;border-top:2px solid var(--rule)}
.pick{padding:18px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:54px 1fr;gap:4px 14px}
.pick .n{font:900 40px/1 Playfair;color:var(--red);grid-row:1/4}
.pick h3{font:800 23px/1.15 Playfair;margin:0}
.pick p{margin:0;color:var(--mut);font-size:15.5px}
.pick .ft{display:flex;gap:14px;align-items:center}
.price{font:700 16px Courier,monospace}
.add{font:600 12px Oswald;letter-spacing:.14em;text-transform:uppercase;background:none;border:1px solid var(--ink);color:var(--ink);padding:5px 10px;cursor:pointer}
.add:hover,.add.hit{background:var(--ink);color:var(--yel)}
@media(min-width:800px){.picks{grid-template-columns:1.3fr 1fr 1fr;column-gap:28px}.pick:first-child{grid-row:span 2;border-right:1px solid var(--lt);padding-right:24px}.pick:first-child h3{font-size:36px}}
/* menu */
.menuwrap{display:grid;gap:24px;align-items:start}
@media(min-width:1000px){.menuwrap{grid-template-columns:1fr 360px}}
.sheet{background:var(--sheet);border:1px solid var(--rule);outline:1px solid var(--rule);outline-offset:-8px;padding:34px clamp(18px,4vw,46px);box-shadow:0 1px 0 #d7c9a3,0 14px 30px -18px rgba(0,0,0,.35)}
.sheet .mh{text-align:center;margin-bottom:10px}.sheet .mh b{display:block;font:400 clamp(30px,4.6vw,52px)/1 Ultra}.sheet .mh i{font:italic 16px Caslon}
.jump{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:8px 0;margin:16px 0 8px}
.jump a{text-decoration:none;padding:2px 9px}.jump a+a{border-left:1px solid var(--lt)}.jump a:hover{color:var(--red)}
.mcols{columns:2 330px;column-gap:44px;column-rule:1px solid var(--lt)}
.cat{break-inside:avoid-column;padding-top:22px;scroll-margin-top:60px}
.cat h3{font:400 22px Ultra;text-align:center;margin:0 0 2px;letter-spacing:.02em}
.cat .sub{text-align:center;font:italic 14px Caslon;color:var(--mut);margin-bottom:8px}
.cat h3:after{content:"";display:block;width:60px;border-top:2px solid var(--yel);margin:6px auto 0}
.li{padding:7px 0;break-inside:avoid}
.ln{display:flex;align-items:baseline;gap:6px}
.ln .nm{font:700 16.5px Caslon}
.ln .dots{flex:1;border-bottom:2px dotted #a99a74;transform:translateY(-4px);min-width:16px}
.li p{margin:1px 0 0;color:var(--mut);font-size:14.5px;line-height:1.42;padding-right:56px}
.plus{border:0;background:none;cursor:pointer;font:700 15.5px Courier,monospace;color:var(--ink);padding:0 2px;white-space:nowrap}
.plus:after{content:"+";display:inline-block;margin-left:7px;width:20px;height:20px;line-height:18px;text-align:center;border:1px solid var(--ink);border-radius:50%;font:600 14px Oswald}
.plus:hover:after,.plus.hit:after{background:var(--ink);color:var(--yel)}
.hoagie{width:100%;border-collapse:collapse;font-size:15px}
.hoagie th{font:500 11.5px Oswald;letter-spacing:.16em;text-transform:uppercase;text-align:right;padding:4px 0;border-bottom:1px solid var(--rule)}.hoagie th:first-child{text-align:left}
.hoagie td{padding:8px 0;border-bottom:1px dotted var(--lt);vertical-align:top}.hoagie td:not(:first-child){text-align:right;width:84px}
.hoagie td b{font:700 16px Caslon}.hoagie td small{display:block;color:var(--mut);font-size:13.5px;line-height:1.35;padding-right:6px}
.fine{text-align:center;font:italic 14px Caslon;color:var(--mut);margin-top:22px;border-top:1px solid var(--lt);padding-top:12px}
/* ticket */
.ticket{position:sticky;top:58px;background:#fffdf6;color:#20243a;font:18px/1.35 Kalam,cursive;padding:0 0 14px;box-shadow:0 10px 26px -12px rgba(0,0,0,.4);max-height:calc(100vh - 74px);display:flex;flex-direction:column}
.ticket:before,.ticket:after{content:"";display:block;height:10px;background:radial-gradient(circle at 8px -2px,var(--paper) 7px,transparent 7.5px) 0 0/16px 10px repeat-x}
.ticket:after{transform:rotate(180deg);margin-bottom:-14px;margin-top:12px}
.th{font:13px/1.5 Courier,monospace;text-align:center;padding:12px 16px 8px;border-bottom:1px dashed #9a9178}
.th b{display:block;font:700 18px Courier;letter-spacing:.06em}
.tbody{flex:1;overflow:auto;padding:6px 16px;background:repeating-linear-gradient(#fffdf6 0 31px,#d9e3ef 31px 32px)}
.tl{display:grid;grid-template-columns:28px 1fr auto;align-items:start;min-height:32px;line-height:32px}
.tl .q{font-weight:700;color:var(--red)}.tl .nm{line-height:1.25;padding-top:5px}
.tl .ctl{display:flex;gap:4px;padding-top:4px}.tl .ctl button{width:23px;height:23px;border-radius:50%;border:1px solid #20243a;background:#fff;cursor:pointer;font:700 13px Oswald;line-height:1}
.tl .pr{font:14px Courier;color:var(--mut);display:block;line-height:1.2}
.blank{color:#9a9178;line-height:32px}
.tsum{font:14px/1.7 Courier,monospace;padding:8px 16px;border-top:1px dashed #9a9178}.tsum div{display:flex;justify-content:space-between}.tsum .g{font-weight:700;font-size:17px;border-top:1px solid #20243a;margin-top:4px}
.tfoot{padding:6px 16px 0}.tfoot .btn{width:100%}
#co{font:16px Caslon}
#co .f{margin:10px 0}#co label{display:block;font:500 11.5px Oswald;letter-spacing:.16em;text-transform:uppercase;margin-bottom:3px}
#co input,#co select,#co textarea{width:100%;border:0;border-bottom:1.5px solid #20243a;background:transparent;font:20px Kalam,cursive;padding:4px 2px;color:#1d3a8a;border-radius:0}
#co input:focus,#co select:focus,#co textarea:focus{outline:0;border-bottom-color:var(--red)}
.seg{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid #20243a}.seg label{margin:0!important;cursor:pointer}.seg input{display:none}
.seg span{display:block;text-align:center;padding:8px;font:600 13px Oswald;letter-spacing:.14em;text-transform:uppercase}.seg input:checked+span{background:#20243a;color:var(--yel)}
.hide{display:none!important}
.back{background:none;border:0;font:500 12px Oswald;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--mut);padding:0;margin-top:6px}
.mbar{display:none}
@media(max-width:999px){.ticket{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:50;max-height:86vh;transform:translateY(105%);transition:.3s}.ticket.on{transform:none}
.mbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:45;background:var(--ink);color:var(--yel);border:0;padding:14px;justify-content:space-between;font:600 14px Oswald;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}}
.xm{display:none}@media(max-width:999px){.xm{display:block;position:absolute;right:10px;top:16px;border:0;background:none;font:26px Oswald;cursor:pointer}}
/* order desk */
.desk{display:grid;border:1px solid var(--rule)}
.desk div{padding:20px;border-bottom:1px solid var(--rule)}.desk div:last-child{border:0}
.desk b{font:900 44px/1 Playfair;color:var(--red)}.desk h3{font:800 21px Playfair;margin:6px 0}
@media(min-width:800px){.desk{grid-template-columns:repeat(3,1fr)}.desk div{border-bottom:0;border-right:1px solid var(--rule)}}
/* visit */
.visit{display:grid;gap:26px}@media(min-width:1000px){.visit{grid-template-columns:1fr 1.25fr}}
.visit dl{display:grid;grid-template-columns:110px 1fr;gap:10px;margin:0 0 16px}.visit dt{padding-top:3px}.visit dd{margin:0}
.map{width:100%;height:330px;border:1px solid var(--rule);filter:sepia(.25)}
footer{margin-top:50px;border-top:3px double var(--rule);padding:18px 0 90px;text-align:center}
footer b{font:400 28px Fraktur}
/* tracker */
.trk{position:fixed;inset:0;z-index:70;background:rgba(20,24,40,.55);display:none;place-items:center;padding:18px}.trk.on{display:grid}
.tbox{position:relative;background:#fffdf6;max-width:440px;width:100%;padding:24px 24px 22px;font:18px Kalam;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.tbox .th{margin:-24px -24px 12px}
.stamp{position:absolute;right:18px;top:78px;transform:rotate(-12deg);border:3px solid var(--red);color:var(--red);font:700 20px Oswald;letter-spacing:.14em;padding:4px 10px;text-transform:uppercase;opacity:.85}
.stg{list-style:none;padding:0;margin:14px 0;font:16px Courier}
.stg li{padding:8px 0;border-bottom:1px dashed #b8ae92;color:#a59d86}.stg li:before{content:"[ ] "}.stg li.on{color:#20243a;font-weight:700}.stg li.on:before{content:"[x] "}
.toast{position:fixed;left:50%;bottom:80px;transform:translateX(-50%) translateY(200px);background:var(--ink);color:var(--yel);padding:10px 18px;font:500 13px Oswald;letter-spacing:.1em;z-index:60;transition:.3s}.toast.on{transform:translateX(-50%)}
.pick .n{grid-row:1/5}.add{white-space:nowrap}
@media(max-width:999px){.front>article{order:-1}}

/* v1 hero restored */
.v1 .strip{background:var(--ink);color:#e9e2cc;font:400 13px Oswald,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:7px 10px}.v1 header.v1h{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:3px double var(--line)}.v1 .nav{display:flex;align-items:center;justify-content:space-between;height:68px}.v1 .brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}.v1 .brand b{font:400 24px Ultra,serif;letter-spacing:.02em}.v1 .brand small{font:500 10.5px Oswald;letter-spacing:.32em;color:var(--red);margin-top:4px}.v1 .links{display:none;gap:26px;font:500 14px Oswald;letter-spacing:.14em;text-transform:uppercase}.v1 .links a{text-decoration:none}.v1 .links a:hover{color:var(--red)}.v1 .cartbtn{position:relative;font:600 14px Oswald;letter-spacing:.1em;text-transform:uppercase;background:var(--yel);border:0;padding:11px 16px;border-radius:3px;cursor:pointer;color:var(--ink)}.v1 .cartbtn i{font-style:normal;background:var(--ink);color:#fff;border-radius:20px;padding:1px 8px;margin-left:6px}
@media(min-width:900px){.v1 .links{display:flex}}.v1 /* hero */
.hero{background:radial-gradient(circle at 80% 20%,#fff8e3,transparent 60%),var(--cream);border-bottom:1px solid var(--line)}.v1 .hero .wrap{display:grid;gap:34px;padding:44px 20px 54px}.v1 .hero h1{font-size:clamp(46px,8.4vw,92px);color:var(--ink)}.v1 .hero h1 em{display:block;font:italic 400 .36em Caslon,serif;color:var(--red);letter-spacing:.01em;margin-top:10px}.v1 .hero p.lead{font-size:19px;max-width:520px;color:var(--ink2)}.v1 .cta{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.v1 .seal{display:inline-flex;align-items:center;justify-content:center;width:112px;height:112px;border-radius:50%;border:2px solid var(--ink);outline:6px solid var(--yel);outline-offset:-12px;text-align:center;font:500 12px Oswald;letter-spacing:.18em;text-transform:uppercase;line-height:1.2}.v1 .seal b{display:block;font:400 30px Ultra;letter-spacing:0}.v1 .photo{position:relative;background:#fff;padding:12px 12px 40px;box-shadow:0 18px 40px -18px rgba(28,37,65,.45);transform:rotate(1.2deg);max-width:560px;justify-self:center}.v1 .photo figcaption{position:absolute;bottom:10px;left:0;right:0;text-align:center;font:italic 15px Caslon;color:var(--mut)}.v1 .photo .seal{position:absolute;left:-26px;top:-30px;background:var(--paper);transform:rotate(-8deg)}
@media(min-width:900px){.v1 .hero .wrap{grid-template-columns:1.05fr .95fr;align-items:center;padding:70px 20px 80px}}.v1 .facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.v1 .facts div{padding:16px;border-right:1px solid var(--line);text-align:center;font:500 13px Oswald;letter-spacing:.14em;text-transform:uppercase}.v1 .facts b{display:block;font:400 22px Ultra;letter-spacing:0;color:var(--ink)}
@media(min-width:700px){.v1 .facts{grid-template-columns:repeat(4,1fr)}}

.v1{--cream:#f4ecd8;--paper:#fbf6ea;--ink2:#2c3a5e;--yel2:#e0a90f;--line:#d9ccab}
.v1 .wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.v1 .label{font:500 13px Oswald,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--red)}
.v1 h1{font-family:Ultra,serif;font-weight:400;line-height:1.08;margin:.2em 0}
.v1 .btn{border-radius:3px;padding:14px 26px;font-size:15px}
.v1 .demo{font:italic 15px Caslon;color:var(--mut)}
.v1 figure{margin:0}.v1 figure img{filter:none;border:0}.v1 .photo figcaption{border:0;padding:0}
.v1 header.v1h{position:sticky;top:0;z-index:30}
.v1{display:contents}
.ribbon{background:var(--ink);color:#e9e2cc;border-top:4px solid var(--yel)}
.ribbon .page{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;gap:12px}
.ribbon b{font:400 clamp(24px,3.4vw,38px)/1 Fraktur;color:var(--yel);text-align:center}
.ribbon .sc{display:none}@media(min-width:800px){.ribbon .sc{display:inline}}
.ticket{top:84px;max-height:calc(100vh - 100px)}.cat{scroll-margin-top:90px}
.stamp{top:14px;right:14px;font-size:15px;padding:3px 8px;background:#fffdf6}.tbox .th{padding-right:120px;text-align:left}
@media(max-width:999px){.ticket{top:auto}}
/* intro */
#intro{position:fixed;inset:0;z-index:9999;display:none;background:radial-gradient(circle at 50% 45%,#2a3150,#121729 70%);cursor:pointer;overflow:hidden}
.intro-on #intro{display:block}
#intro .q{position:absolute;inset:0;will-change:transform}
#intro svg{position:absolute;left:50%;top:50%;width:min(78vmin,640px);height:min(78vmin,640px);transform:translate(-50%,-50%);filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
#intro .cap{position:absolute;left:0;right:0;bottom:7vh;text-align:center;color:#f2c230;font:400 clamp(20px,3vw,30px) Ultra;letter-spacing:.04em}
#intro .cap small{display:block;font:500 12px Oswald;letter-spacing:.3em;color:#cfc7ae;margin-top:6px}
#intro .skip{position:absolute;right:18px;top:16px;font:500 12px Oswald;letter-spacing:.2em;text-transform:uppercase;color:#cfc7ae}
.v1 .hero .wrap.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:0;padding:0 20px}
@media(min-width:700px){.v1 .hero .wrap.facts{grid-template-columns:repeat(4,1fr)}}
.v1 .facts div:last-child{border-right:0}
@media(max-width:899px){.v1 .photo .seal{left:-8px;top:-24px;transform:rotate(-8deg) scale(.85)}}
