@font-face{font-family:'Alegreya';font-weight:700;font-style:normal;font-display:swap;src:url('fonts/alegreya-1.ttf') format('truetype')}
:root{--paper:#402c43;--ink:#f6e6ec;--accent:#f4c1a8;--panel:#503952;--display:'Alegreya';--body:system-ui;--white:#ffffff;--on-accent:#402c43}
*{box-sizing:border-box}
html{scrollbar-color:var(--accent) var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--body);caret-color:var(--accent)}
::selection{background:var(--accent);color:var(--on-accent)}
a{display:inline-flex;align-items:center;min-height:24px;max-width:100%;color:inherit;text-underline-offset:.25em;overflow-wrap:anywhere}a:hover{text-decoration-thickness:3px}
a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
h1,h2,h3{font-family:var(--display),serif;line-height:1.13;text-wrap:balance;margin:0 0 24px}h1{font-size:clamp(2.5rem,6vw,6rem);letter-spacing:-.03em}h2{font-size:clamp(1.8rem,3vw,2.6rem)}h3{font-size:1.5rem}
p{margin:0 0 24px;max-width:70ch}address{font-style:normal}img{display:block;width:100%;height:auto}figure{margin:0}figcaption{padding:12px 0;font-size:.95rem}
.skip{position:absolute;top:-100px;left:16px;z-index:10;background:var(--ink);color:var(--paper);padding:16px}.skip:focus{top:8px}
.meal-price,.price{font-weight:700;font-variant-numeric:tabular-nums}
.interior-main{max-width:1180px;margin:auto;padding:56px 24px 72px}.page-heading{margin-bottom:48px}.page-heading h1{font-size:clamp(2.5rem,5vw,4.5rem)}.page-body section{margin-top:48px}.service-list{list-style:none;padding:0;margin:0}.service-list li{padding:28px 0;border-top:1px solid var(--ink)}.service-title{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;align-items:baseline}.service-title h2{font-size:1.6rem}.actions{display:flex;gap:12px 24px;flex-wrap:wrap;margin:24px 0}.actions>a,.text-link{padding:12px 0}.actions>.button,.button{background:var(--accent);color:var(--on-accent);padding:16px 24px;font-weight:700}.article h2:not(:first-child){margin-top:48px}.photo{margin:32px 0;max-width:720px}.faq-list details{border-top:1px solid var(--ink);padding:24px 0}summary{cursor:pointer;font-weight:700;min-height:44px;padding:12px 0}details p{margin:20px 0 0}.facts{background:var(--panel);padding:28px}.facts dl{margin:24px 0 0}.facts dl>div{padding:12px 0}.facts dt{font-weight:700}.facts dd{margin:0}.facts a{padding:10px 0}
@media(max-width:760px){a{min-height:44px}}
@media(min-width:900px){.interior-main{padding:72px 48px}.story-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px}.contact-grid>.facts{margin-top:0}}
.program-mast{text-align:center;padding:28px 24px;border-bottom:1px solid var(--ink)}.program-name{font:700 clamp(1.8rem,3vw,2.8rem)/1.2 var(--display);text-decoration:none}.program-nav{display:flex;justify-content:center;gap:4px 28px;flex-wrap:wrap;margin-top:16px}.program-nav a{padding:10px 0}.program-page{max-width:1240px;margin:auto;padding:32px 24px 0}.program-opening{margin-bottom:40px}.program-opening h1{font-size:clamp(2.6rem,5vw,4.7rem);max-width:20ch}.program-call{background:var(--accent);color:var(--paper);padding:16px 24px;font-weight:700}.program-menu h2{font-size:2rem}.program-menu table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.program-menu caption{text-align:left;margin-bottom:20px}.program-menu th,.program-menu td{text-align:left;padding:20px 16px 20px 0;border-bottom:1px solid var(--ink);vertical-align:top}.program-menu th{font-weight:700}.program-menu tbody th{font:700 1.4rem/1.3 var(--display);width:25%}.program-menu td:last-child{width:14%;padding-right:0;font-weight:700}.program-story{margin:56px 0;padding-top:40px;border-top:2px solid var(--ink)}.program-story h2:not(:first-child){margin-top:40px}.program-story a{padding:10px 0}.program-photo{margin-top:32px}.program-location{background:var(--panel);padding:32px}.program-location h2{font-size:1.8rem}.program-location address{margin-bottom:24px}.program-foot{max-width:1240px;margin:auto;padding:40px 24px}.program-foot nav{display:flex;flex-wrap:wrap;gap:12px 24px}.program-foot a{padding:10px 0}
@media(min-width:900px){.program-page{padding:48px 48px 0}.program-opening{display:flex;justify-content:space-between;align-items:center;gap:40px}.program-opening h1{margin-bottom:0}.program-story{display:grid;grid-template-columns:1fr 1.6fr;gap:48px;align-items:center}.program-photo{margin:0}.program-location{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:24px}.program-location h2{grid-column:1/-1}.program-foot{padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.program-foot nav{grid-column:1/-1}}
@media(max-width:600px){.program-menu thead{display:none}.program-menu tr{display:grid;grid-template-columns:1fr auto;padding:20px 0;border-bottom:1px solid var(--ink);gap:8px 16px}.program-menu th,.program-menu td{border:0;padding:0;width:auto}.program-menu tbody th{width:auto}.program-menu td:nth-child(2){grid-column:1/-1;grid-row:2}.program-menu td:last-child{width:auto;grid-column:2;grid-row:1;padding-top:8px}}

/* Trust details: ledger composition, using this look's own type and palette. */
.cafe-bakery-1-trust-owner,.cafe-bakery-1-trust-reviews,.cafe-bakery-1-trust-credentials,.cafe-bakery-1-trust-photos{width:100%;max-width:1200px;margin:48px auto;padding:32px 24px;min-width:0;color:var(--ink);background:var(--paper);box-sizing:border-box}
.cafe-bakery-1-trust-owner>* ,.cafe-bakery-1-trust-reviews>* ,.cafe-bakery-1-trust-photos>*{min-width:0}
.cafe-bakery-1-trust-owner p,.cafe-bakery-1-trust-reviews p,.cafe-bakery-1-trust-credentials p{max-width:68ch;overflow-wrap:anywhere}
.cafe-bakery-1-trust-photo{margin:24px 0;max-width:480px;min-width:0}
.cafe-bakery-1-trust-photo img{display:block;width:100%;height:auto;object-fit:contain}
.cafe-bakery-1-trust-photo figcaption{padding:12px 0;font-size:.95rem}
.cafe-bakery-1-trust-owner a,.cafe-bakery-1-trust-reviews a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.cafe-bakery-1-trust-owner dd{margin:8px 0 24px}.cafe-bakery-1-trust-owner dt{font-weight:700}
.cafe-bakery-1-trust-credentials{border-block:1px solid currentColor}.cafe-bakery-1-trust-reviews article{padding-block:24px}
.cafe-bakery-1-trust-owner,.cafe-bakery-1-trust-reviews{border-top:3px solid currentColor}@media(min-width:960px){.cafe-bakery-1-trust-owner{display:grid;grid-template-columns:1fr 1.6fr .8fr;gap:32px}.cafe-bakery-1-trust-reviews{display:grid;grid-template-columns:1fr 2fr;gap:32px}}
@media(min-width:960px){.cafe-bakery-1-trust-photos{display:grid;grid-template-columns:1fr 1fr;gap:40px}}
