/* Growthly containers use pure white and black. Photos keep their natural colour. */
.product-preview{width:100%;max-width:560px;margin-inline:auto;color:var(--ink)}
.example-preview{width:100%;overflow:hidden}
.example-desktop-frame{width:100%;background:#fff;overflow:hidden}
.example-desktop-frame img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:top}
.product-preview .example-desktop-frame{border:1px solid #000;border-radius:7px}
.preview-footer{padding-top:12px}
.preview-footer p{color:#000;font-size:14px;line-height:1.6;margin:0}
.examples-heading{padding-bottom:35px}
.examples-heading h1{font-size:clamp(34px,5vw,60px);max-width:900px;line-height:1.14;letter-spacing:-.04em;margin:0 0 24px}
.examples-heading .section-intro{max-width:750px}
.examples-catalogue{padding-bottom:80px}
.examples-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.example-card{min-width:0;background:#fff;border:1px solid #000;border-radius:9px;overflow:hidden}
.example-card-preview{display:block;border-bottom:1px solid #000;text-decoration:none;background:#fff}
.example-card .example-desktop-frame img{aspect-ratio:16/9;object-fit:cover}
.example-card-body{padding:24px}
.example-card .example-profile{font-size:14px;line-height:1.5;color:#000;margin:0 0 7px}
.example-card h3{font-size:26px;font-weight:600;letter-spacing:-.025em;line-height:1.25;margin:0 0 11px}
.example-card h3 a{text-decoration:none}
.example-card .example-description{font-size:16px;line-height:1.6;color:#000;margin:0 0 15px}
.example-card-link{font-size:16px;line-height:1.5;text-decoration:none;display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:600}
.example-card-link .icon{width:17px;height:17px}
.example-card :is(h3 a,.example-card-link):hover{text-decoration:underline;text-underline-offset:5px}
.examples-grid :is(a,button):focus-visible,.product-preview a:focus-visible{outline:2px solid #000;outline-offset:4px}
.example-card-preview:focus-visible{outline-offset:-4px}
.examples-personalisation{margin-top:45px;padding-top:30px;border-top:1px solid #000;max-width:850px}
.examples-personalisation h2,.examples-secondary h2{font-size:clamp(26px,3vw,34px);letter-spacing:-.025em;line-height:1.25;margin:0 0 20px}
.examples-personalisation p,.examples-secondary>p{font-size:16px;line-height:1.7;color:#000;margin:0 0 22px}
.examples-secondary{margin-top:55px;border-top:1px solid #000;padding-top:32px}
.examples-secondary .examples-grid{max-width:590px;grid-template-columns:1fr}
/* The outer heading is compact, so the actual restaurant and its menu action appear early. */
.demo-page-heading{padding-top:24px;padding-bottom:20px}
.demo-back-link{display:inline-flex;align-items:center;gap:9px;font-size:14px;text-decoration:none;min-height:44px}
.demo-back-link .icon{width:17px;height:17px;transform:rotate(180deg)}
.demo-back-link:hover{text-decoration:underline;text-underline-offset:5px}
.demo-page-heading h1{font-size:28px;line-height:1.25;letter-spacing:-.03em;margin:10px 0 8px}
.demo-page-heading h1 span{display:block;font-size:16px;font-weight:400;letter-spacing:0;margin-top:5px}
.demo-disclaimer p{color:#000;font-size:14px;line-height:1.55;margin:0;max-width:900px}
.demo-disclaimer strong{font-weight:600}
.demo-photo-context{padding-top:18px;font-size:14px;line-height:1.6;color:#000}
.demo-photo-context>p{margin:0 0 6px}
.restaurant-photo-credits summary{min-height:44px;padding:12px 0;cursor:pointer}
.restaurant-photo-credits ul{padding-left:21px}
.restaurant-photo-credits li{margin-bottom:12px;overflow-wrap:anywhere}
.demo-afterword{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 0 60px}
.demo-afterword p{font-size:16px;line-height:1.7;color:#000;max-width:620px;margin:0}
.demo-afterword .text-link{font-size:16px;white-space:normal}
/* Functional pieces are shared; layout, hierarchy and section order belong to each restaurant. */
.examples-grid-compact .example-card-body{padding:20px 24px 16px}
.examples-grid-compact .example-card h3{margin-bottom:4px}
.restaurant-demo{--restaurant-ink:#000;--restaurant-muted:#000;--restaurant-paper:#fff;--restaurant-line:#000;--restaurant-button:#000;color:var(--restaurant-ink);background:var(--restaurant-paper);border:1px solid #000;border-radius:8px;overflow:hidden;font-size:16px;box-shadow:none}
.restaurant-demo *{min-width:0;overflow-wrap:anywhere}
.restaurant-demo a{color:inherit}
.restaurant-demo :is(a,button,summary):focus-visible{outline:3px solid var(--restaurant-ink);outline-offset:5px}
.restaurant-demo .restaurant-demo-nav{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 5.5%;border-bottom:1px solid var(--restaurant-line)}
.restaurant-demo .restaurant-wordmark{font-family:Georgia,serif;font-weight:400;font-size:32px;line-height:1.2;letter-spacing:-1px;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.restaurant-demo .restaurant-demo-nav nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:16px}
.restaurant-demo .restaurant-demo-nav nav a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;text-decoration:none}
.restaurant-demo .restaurant-demo-nav nav a:hover{text-decoration:underline;text-underline-offset:5px}
.restaurant-demo .restaurant-demo-hero{display:grid;grid-template-columns:1fr 1fr;min-height:440px}
.restaurant-demo .restaurant-hero-copy{padding:45px 10%;align-self:center}
.restaurant-demo h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(32px,4vw,54px);line-height:1.13;letter-spacing:-1px;margin:0 0 22px}
.restaurant-demo .restaurant-hero-copy>p{font-size:16px;line-height:1.6;max-width:410px;color:var(--restaurant-muted);margin:0 0 24px}
.restaurant-demo .restaurant-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;background:var(--restaurant-button);color:#fff;border:1px solid var(--restaurant-button);border-radius:3px;padding:12px 20px;font-size:16px;line-height:1.5;text-decoration:none}
.restaurant-demo .restaurant-button:hover{text-decoration:underline;text-underline-offset:4px}
.restaurant-demo .restaurant-button .icon{width:17px;height:17px}
.restaurant-demo .restaurant-demo-hero figure{margin:0;position:relative;min-height:440px;overflow:hidden}
.restaurant-demo .restaurant-demo-hero figure img{width:100%;height:100%;position:absolute;object-fit:cover;display:block}
.restaurant-demo :is(.restaurant-menu-section,.restaurant-about,.restaurant-contact){scroll-margin-top:110px}
.restaurant-demo .restaurant-menu-section{padding:55px 5.5%}
.restaurant-demo .restaurant-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:26px}
.restaurant-demo .restaurant-section-title h2{font-size:clamp(30px,3vw,44px);margin:0}
.restaurant-demo .restaurant-section-title>p{color:var(--restaurant-muted);font-size:16px;line-height:1.6;max-width:340px;margin:0}
.restaurant-demo .restaurant-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.restaurant-demo .restaurant-filters button{font:inherit;font-size:16px;color:var(--restaurant-ink);border:1px solid var(--restaurant-muted);background:transparent;min-height:44px;padding:10px 16px;border-radius:25px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;max-width:100%;text-align:left}
.restaurant-demo .restaurant-filters button[aria-pressed=true]{color:#fff;background:var(--restaurant-button);border-color:var(--restaurant-button);font-weight:600}
.restaurant-demo .restaurant-filters button[aria-pressed=true]:after{content:'';flex-shrink:0;width:9px;height:5px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);margin-bottom:3px}
.restaurant-demo .restaurant-filters button:hover{text-decoration:underline;text-underline-offset:4px}
.restaurant-demo .restaurant-menu-status{font-size:14px;line-height:1.6;color:var(--restaurant-muted);margin:0 0 10px;min-height:23px}
.restaurant-demo .restaurant-menu-empty{padding:18px 0;font-size:16px;line-height:1.6}
.restaurant-demo .restaurant-dishes{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
.restaurant-demo .restaurant-dish{padding:23px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--restaurant-line)}
.restaurant-demo .restaurant-dish[hidden],.restaurant-demo .restaurant-menu-empty[hidden]{display:none}
.restaurant-demo .restaurant-menu-group:not(:has(.restaurant-dish:not([hidden]))){display:none}
.restaurant-demo .restaurant-dish-category{display:block;font-size:14px;line-height:1.5;color:var(--restaurant-muted);margin-bottom:6px}
.restaurant-demo .restaurant-dish :is(h3,h4){font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:-.35px;line-height:1.35;margin:0 0 7px}
.restaurant-demo .restaurant-dish p{font-size:16px;line-height:1.6;color:var(--restaurant-muted);margin:0;max-width:365px}
.restaurant-demo .restaurant-dish-price{font-size:16px;white-space:nowrap;flex-shrink:0;margin-top:27px}
.restaurant-demo .restaurant-about{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;border-top:1px solid var(--restaurant-line);border-bottom:1px solid var(--restaurant-line)}
.restaurant-demo .restaurant-story-images{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:30px 5.5%}
.restaurant-demo .restaurant-story-images img{width:100%;height:100%;object-fit:cover;display:block}
.restaurant-demo .restaurant-interior-image{aspect-ratio:3/4}
.restaurant-demo .restaurant-detail-image{aspect-ratio:3/4;padding-top:45px}
.restaurant-demo .restaurant-story-copy{padding:40px 10%}
.restaurant-demo .restaurant-story-copy h2{font-size:clamp(30px,3vw,44px)}
.restaurant-demo .restaurant-story-copy p{font-size:16px;line-height:1.7;color:var(--restaurant-muted);margin:0}
.restaurant-demo .restaurant-contact{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:55px 5.5%}
.restaurant-demo .restaurant-practical-copy h2{font-size:clamp(30px,3vw,44px)}
.restaurant-demo .restaurant-practical-copy>p{font-size:16px;line-height:1.7;color:var(--restaurant-muted);margin:0 0 18px}
.restaurant-demo .restaurant-practical-panel{border-left:1px solid var(--restaurant-line);padding-left:30px}
.restaurant-demo .restaurant-practical-panel h3{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.3;margin:0 0 16px}
.restaurant-demo .restaurant-practical-panel p{font-size:16px;line-height:1.7;color:var(--restaurant-muted);margin:0 0 18px}
.restaurant-demo .restaurant-hours{font-size:16px;line-height:1.6;margin:0 0 25px}
.restaurant-demo .restaurant-hours>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--restaurant-line)}
.restaurant-demo .restaurant-hours dt{font-weight:600}
.restaurant-demo .restaurant-hours dd{margin:0;text-align:right}
.restaurant-demo .restaurant-contact-example{border-top:1px solid var(--restaurant-line);font-size:16px;line-height:1.7;margin-top:22px}
.restaurant-demo .restaurant-contact-example summary{min-height:44px;padding:15px 0;cursor:pointer;font-weight:600}
.restaurant-demo .restaurant-contact-example p{margin:0 0 15px;color:var(--restaurant-muted)}
.restaurant-demo .restaurant-demo-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--restaurant-line);padding:24px 5.5%;flex-wrap:wrap}
.restaurant-demo .restaurant-demo-footer .restaurant-wordmark{font-size:24px}
.restaurant-demo .restaurant-demo-footer>a{font-size:16px;min-height:44px;display:inline-flex;gap:10px;align-items:center;text-decoration:none}
.restaurant-demo .restaurant-demo-footer>a:hover{text-decoration:underline;text-underline-offset:5px}
.restaurant-demo .restaurant-demo-footer>a .icon{width:16px;height:16px}
.restaurant-demo .restaurant-highlights{padding:40px 5.5%;border-top:1px solid var(--restaurant-line)}
.restaurant-demo .restaurant-highlights h2{font-size:clamp(30px,3vw,44px)}
.restaurant-demo .restaurant-highlight-copy>div>p{font-size:16px;line-height:1.7;max-width:760px;color:var(--restaurant-muted)}
.restaurant-demo .restaurant-highlights ul{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:25px 0 15px}
.restaurant-demo .restaurant-highlights li{border-top:1px solid var(--restaurant-line);padding:20px 0}
.restaurant-demo .restaurant-highlights h3{font-size:22px;line-height:1.3;margin:0 0 10px}
.restaurant-demo .restaurant-highlights li p{font-size:16px;line-height:1.6;color:var(--restaurant-muted);margin:0 0 14px}
.restaurant-demo .restaurant-highlight-copy>a{min-height:44px;display:inline-flex;align-items:center;gap:10px;font-size:16px}
.restaurant-demo .restaurant-highlight-copy>a .icon{width:17px;height:17px}
/* Brisa: photograph across the full page; seasonal information sits beside the introduction. */
.restaurant-beach .restaurant-demo-nav{padding-block:18px}
.restaurant-beach .restaurant-wordmark{font-size:32px;font-style:italic}
.restaurant-beach .restaurant-demo-hero{grid-template-columns:1fr;min-height:0}
.restaurant-beach .restaurant-demo-hero figure{min-height:330px}
.restaurant-beach .restaurant-demo-hero figure img{object-position:center 57%}
.restaurant-beach .restaurant-hero-copy{display:grid;grid-template-columns:1.1fr 1fr;column-gap:60px;padding:38px 5.5%;align-items:center}
.restaurant-beach .restaurant-hero-copy h2{grid-row:span 2;font-size:clamp(38px,4.5vw,62px);font-style:italic;margin:0}
.restaurant-beach .restaurant-hero-copy>p{margin-bottom:18px}
.restaurant-beach .restaurant-button{justify-self:start;border-radius:30px}
.restaurant-beach .restaurant-coast-strip{display:grid;grid-template-columns:1fr 1fr auto;gap:25px;padding:22px 5.5%;background:#fff;border-top:1px solid var(--restaurant-line)}
.restaurant-beach .restaurant-coast-strip p{font-size:14px;line-height:1.6;margin:0}
.restaurant-beach .restaurant-coast-strip :is(strong,span){display:block}
.restaurant-beach .restaurant-coast-strip strong{font-size:16px;margin-bottom:4px}
.restaurant-beach .restaurant-coast-strip>a{display:inline-flex;gap:10px;align-items:center;min-height:44px;font-size:16px;text-decoration:underline;text-underline-offset:5px}
.restaurant-beach .restaurant-coast-strip .icon{width:17px;height:17px}
.restaurant-beach .restaurant-section-title h2{font-style:italic}
.restaurant-beach .restaurant-dish{padding:27px 0}
.restaurant-beach .restaurant-about{grid-template-columns:.9fr 1.3fr}
.restaurant-beach .restaurant-story-images{grid-template-columns:1.2fr 1fr;gap:0;padding:0}
.restaurant-beach .restaurant-interior-image{aspect-ratio:3/4}
.restaurant-beach .restaurant-detail-image{padding-top:0;aspect-ratio:3/4}
/* Casa Olmar: centred title, a horizontal food photograph and a traditional three-column carta. */
.restaurant-traditional .restaurant-demo-nav{justify-content:center;flex-direction:column;gap:5px;padding:24px 6% 15px}
.restaurant-traditional .restaurant-wordmark{font-size:40px;letter-spacing:-.7px}
.restaurant-traditional .restaurant-demo-nav nav{gap:35px}
.restaurant-traditional .restaurant-demo-hero{display:block;min-height:0}
.restaurant-traditional .restaurant-hero-copy{padding:38px 6% 40px;text-align:center;max-width:900px;margin-inline:auto}
.restaurant-traditional .restaurant-hero-copy h2{font-style:italic;font-size:clamp(34px,4vw,58px)}
.restaurant-traditional .restaurant-hero-copy>p{max-width:510px;margin-inline:auto}
.restaurant-traditional .restaurant-button{border-radius:0}
.restaurant-traditional .restaurant-demo-hero figure{min-height:260px}
.restaurant-traditional .restaurant-demo-hero figure img{object-position:center 48%}
.restaurant-traditional .restaurant-section-title{display:block;text-align:center;margin-bottom:30px}
.restaurant-traditional .restaurant-section-title>p{max-width:none;margin-top:12px}
.restaurant-traditional .restaurant-filters{justify-content:center}
.restaurant-traditional .restaurant-filters button{border-radius:0}
.restaurant-traditional .restaurant-menu-status{text-align:center;margin-bottom:30px}
.restaurant-traditional .restaurant-menu-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.restaurant-traditional .restaurant-menu-group>h3{font-family:Georgia,serif;font-size:30px;line-height:1.3;font-weight:400;letter-spacing:-.4px;margin:0 0 12px;padding-bottom:14px;border-bottom:1px solid var(--restaurant-ink)}
.restaurant-traditional .restaurant-dishes{display:block}
.restaurant-traditional .restaurant-dish{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:22px 0}
.restaurant-traditional .restaurant-dish>div{display:contents}
.restaurant-traditional .restaurant-dish h4{font-size:21px;grid-column:1;grid-row:1;margin:0}
.restaurant-traditional .restaurant-dish p{font-size:15px;grid-column:1/-1;grid-row:2}
.restaurant-traditional .restaurant-dish-price{grid-column:2;grid-row:1;margin:0;font-size:15px;line-height:1.8}
.restaurant-traditional .restaurant-daily-menu{display:grid;grid-template-columns:1fr 1.3fr auto;align-items:center;gap:30px;background:#fff;padding:32px 5.5%}
.restaurant-traditional .restaurant-daily-menu h2{font-size:32px;letter-spacing:-.5px;margin:0 0 12px}
.restaurant-traditional .restaurant-daily-menu>div p{font-size:16px;line-height:1.6;margin:0 0 7px}
.restaurant-traditional .restaurant-daily-menu dl{margin:0;font-size:16px;line-height:1.6}
.restaurant-traditional .restaurant-daily-menu dl>div{margin-bottom:12px}
.restaurant-traditional .restaurant-daily-menu dt{font-weight:600}
.restaurant-traditional .restaurant-daily-menu dd{margin:0;color:var(--restaurant-muted)}
.restaurant-traditional .restaurant-daily-price{font-family:Georgia,serif;font-size:42px;white-space:nowrap;line-height:1;margin:0}
.restaurant-traditional .restaurant-about{grid-template-columns:1fr 1.2fr}
.restaurant-traditional .restaurant-story-images{padding:30px 7% 30px 0}
/* Mesa Clara: asymmetric sans headline, arched picture and numbered menu groups. */
.restaurant-modern .restaurant-wordmark{font-family:Manrope,sans-serif;font-weight:600;font-size:30px;letter-spacing:-1.3px}
.restaurant-modern .restaurant-demo-nav{padding-block:24px}
.restaurant-modern .restaurant-demo-hero{grid-template-columns:1.15fr .8fr;min-height:580px;padding:32px 5.5%;gap:30px}
.restaurant-modern .restaurant-demo-hero figure{min-height:520px;border-radius:180px 180px 0 0}
.restaurant-modern .restaurant-hero-copy{padding:24px 0 30px;align-self:center}
.restaurant-modern :is(h2,.restaurant-dish h4,.restaurant-practical-panel h3){font-family:Manrope,sans-serif;font-weight:500}
.restaurant-modern .restaurant-hero-copy h2{font-size:clamp(36px,4.5vw,66px);letter-spacing:-2.5px;line-height:1.07;margin-top:0}
.restaurant-modern .restaurant-button{border-radius:0}
.restaurant-modern .restaurant-about{grid-template-columns:1.15fr .8fr;gap:30px;padding:38px 5.5%;align-items:start}
.restaurant-modern .restaurant-story-images{grid-template-columns:1.3fr 1fr;gap:15px;padding:0;align-items:start}
.restaurant-modern .restaurant-interior-image{aspect-ratio:4/5}
.restaurant-modern .restaurant-detail-image{aspect-ratio:4/5;padding-top:35px}
.restaurant-modern .restaurant-story-copy{padding:0}
.restaurant-modern .restaurant-story-copy h2{font-size:35px;line-height:1.2}
.restaurant-modern .restaurant-filters button{border-radius:0}
.restaurant-modern .restaurant-menu-groups{display:grid;gap:0}
.restaurant-modern .restaurant-menu-group{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:24px 0;border-top:1px solid var(--restaurant-line)}
.restaurant-modern .restaurant-menu-group>h3{font-family:Manrope,sans-serif;font-size:22px;line-height:1.35;margin:0;padding-top:18px;font-weight:500}
.restaurant-modern .restaurant-menu-number{display:block;font-size:14px;line-height:1.5;margin:0 0 10px}
.restaurant-modern .restaurant-dishes{gap:0 24px}
.restaurant-modern .restaurant-dish{padding:18px 0}
.restaurant-modern .restaurant-dish h4{font-size:20px}
.restaurant-modern .restaurant-dish-price{margin-top:0}
.restaurant-modern .restaurant-highlights{background:#fff}
/* Distrito: bold direct opening, illustrated food features and a compact card catalogue. */
.restaurant-urban .restaurant-wordmark{font-family:Manrope,sans-serif;font-weight:800;font-size:30px;letter-spacing:-1px}
.restaurant-urban .restaurant-demo-nav{padding-block:18px}
.restaurant-urban .restaurant-demo-hero{background:#fff;color:#000;grid-template-columns:.85fr 1.15fr;min-height:510px}
.restaurant-urban .restaurant-demo-hero figure{min-height:510px}
.restaurant-urban .restaurant-hero-copy{padding:38px 10%}
.restaurant-urban :is(h2,.restaurant-dish h3,.restaurant-practical-panel h3){font-family:Manrope,sans-serif;font-weight:800}
.restaurant-urban .restaurant-hero-copy h2{font-size:clamp(32px,3.7vw,53px);line-height:1.03;letter-spacing:-1.8px;text-transform:uppercase}
.restaurant-urban .restaurant-hero-copy>p{color:#000}
.restaurant-urban .restaurant-hero-copy .restaurant-button{background:#000;color:#fff;border-color:#000;border-radius:0;font-weight:700}
.restaurant-urban .restaurant-hero-copy :is(a,button):focus-visible{outline-color:#000}
.restaurant-urban .restaurant-highlights{display:grid;grid-template-columns:.75fr 1.25fr;gap:35px;padding:32px 5.5%;background:#fff;align-items:start}
.restaurant-urban .restaurant-feature-image{margin:0;aspect-ratio:4/5}
.restaurant-urban .restaurant-feature-image img{width:100%;height:100%;object-fit:cover}
.restaurant-urban .restaurant-highlight-copy h2{font-size:30px;letter-spacing:-.8px;margin-bottom:12px}
.restaurant-urban .restaurant-highlight-copy>div>p{font-size:15px;line-height:1.6;margin-bottom:20px}
.restaurant-urban .restaurant-highlights ul{display:block;margin:0 0 8px}
.restaurant-urban .restaurant-highlights li{display:grid;grid-template-columns:32px 1fr auto;column-gap:15px;padding:16px 0}
.restaurant-urban .restaurant-highlights h3{font-family:Manrope,sans-serif;font-weight:700;font-size:21px;margin:0 0 6px}
.restaurant-urban .restaurant-highlights li p{font-size:15px;grid-column:2;margin:0}
.restaurant-urban .restaurant-feature-number{font-size:14px;grid-column:1;grid-row:1/3}
.restaurant-urban .restaurant-feature-price{font-size:16px;font-weight:700;grid-column:3;grid-row:1;white-space:nowrap}
.restaurant-urban .restaurant-filters button{border-radius:0;font-weight:600}
.restaurant-urban .restaurant-dishes{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.restaurant-urban .restaurant-dish{display:block;border:1px solid var(--restaurant-line);padding:22px}
.restaurant-urban .restaurant-dish h3{font-size:21px}
.restaurant-urban .restaurant-dish p{font-size:15px;margin-bottom:18px}
.restaurant-urban .restaurant-dish-price{display:block;font-size:22px;font-weight:800;margin:0}
.restaurant-urban .restaurant-contact{background:#fff;color:#000;gap:35px}
.restaurant-urban .restaurant-contact :is(p,dd){color:#000}
.restaurant-urban .restaurant-contact :is(a,summary):focus-visible{outline-color:#000}
.restaurant-urban .restaurant-practical-copy h2{font-size:40px}
.restaurant-urban .restaurant-about{grid-template-columns:1fr 1fr;align-items:start}
.restaurant-urban .restaurant-story-images{grid-template-columns:1fr;gap:0;padding:0}
.restaurant-urban .restaurant-interior-image{aspect-ratio:4/3}
/* The historical secondary café preserves its own split composition. */
.restaurant-cafe .restaurant-wordmark{font-style:italic;font-size:34px}
.restaurant-cafe .restaurant-demo-hero{background:#fff;color:#000}
.restaurant-cafe .restaurant-demo-hero figure{order:-1}
.restaurant-cafe .restaurant-hero-copy>p{color:#000}
.restaurant-cafe .restaurant-hero-copy .restaurant-button{background:#000;color:#fff;border-color:#000}
.restaurant-cafe .restaurant-hero-copy .restaurant-button:focus-visible{outline-color:#000}
.restaurant-cafe .restaurant-hero-copy h2{font-style:italic}
@media(max-width:1050px){
 .restaurant-demo .restaurant-demo-nav{flex-wrap:wrap;gap:12px}
 .restaurant-demo .restaurant-dishes{gap:0 25px}
 .restaurant-demo .restaurant-hours>div{display:block}
 .restaurant-demo .restaurant-hours dd{text-align:left;margin-top:4px}
 .restaurant-beach .restaurant-hero-copy{column-gap:30px}
 .restaurant-traditional .restaurant-menu-groups{gap:22px}
 .restaurant-traditional .restaurant-daily-menu{gap:22px}
 .restaurant-modern .restaurant-demo-hero{gap:25px;min-height:480px}
 .restaurant-modern .restaurant-demo-hero figure{min-height:440px}
 .restaurant-modern .restaurant-hero-copy h2{margin-top:0;font-size:44px;letter-spacing:-1.5px}
 .restaurant-modern .restaurant-menu-group{grid-template-columns:140px 1fr;gap:25px}
 .restaurant-urban .restaurant-dishes{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .restaurant-urban .restaurant-demo-hero{grid-template-columns:1fr 1fr}
 .restaurant-urban .restaurant-highlights{grid-template-columns:.7fr 1.3fr;gap:25px}
}
@media(max-width:760px){
 .examples-grid{gap:18px}
 .example-card-body{padding:20px}
 .example-card h3{font-size:24px}
 .restaurant-demo .restaurant-demo-nav{align-items:flex-start;gap:8px;padding:16px 6%}
 .restaurant-demo .restaurant-demo-nav nav{gap:18px}
 .restaurant-demo .restaurant-demo-hero,.restaurant-urban .restaurant-demo-hero,.restaurant-cafe .restaurant-demo-hero{grid-template-columns:1fr;min-height:0}
 .restaurant-demo .restaurant-demo-hero figure{min-height:230px}
 .restaurant-demo .restaurant-hero-copy{padding:27px 6%}
 .restaurant-demo .restaurant-hero-copy h2{font-size:36px;letter-spacing:-1px;margin-bottom:17px}
 .restaurant-demo .restaurant-hero-copy>p{margin-bottom:20px;line-height:1.6}
 .restaurant-demo .restaurant-menu-section{padding:35px 6%}
 .restaurant-demo .restaurant-section-title{display:block;margin-bottom:24px}
 .restaurant-demo .restaurant-section-title h2{font-size:32px;margin-bottom:12px}
 .restaurant-demo .restaurant-section-title>p{max-width:none}
 .restaurant-demo .restaurant-filters{gap:8px}
 .restaurant-demo .restaurant-filters button{padding:10px 13px}
 .restaurant-demo .restaurant-dishes{grid-template-columns:1fr;gap:0}
 .restaurant-demo .restaurant-dish{padding:21px 0;gap:14px}
 .restaurant-demo .restaurant-dish :is(h3,h4){font-size:22px}
 .restaurant-demo .restaurant-dish-price{font-size:16px}
 .restaurant-demo .restaurant-about{grid-template-columns:1fr}
 .restaurant-demo .restaurant-story-images{padding:25px 6%}
 .restaurant-demo .restaurant-story-copy{padding:10px 6% 32px}
 .restaurant-demo .restaurant-story-copy h2,.restaurant-demo .restaurant-practical-copy h2{font-size:32px}
 .restaurant-demo .restaurant-contact{grid-template-columns:1fr;gap:30px;padding:35px 6%}
 .restaurant-demo .restaurant-practical-panel{border-left:0;border-top:1px solid var(--restaurant-line);padding:25px 0 0}
 .restaurant-demo .restaurant-practical-panel h3{font-size:24px}
 .restaurant-demo .restaurant-highlights{padding:32px 6%}
 .restaurant-demo .restaurant-highlights h2{font-size:32px}
 .restaurant-demo .restaurant-highlights ul{grid-template-columns:1fr;gap:0}
 .restaurant-demo .restaurant-highlights li{padding:18px 0}
 .restaurant-demo .restaurant-demo-footer{padding:22px 6%}
 .restaurant-demo .restaurant-demo-footer .restaurant-wordmark{font-size:24px}
 .restaurant-beach .restaurant-demo-hero figure{min-height:190px}
 .restaurant-beach .restaurant-hero-copy{display:block;padding:24px 6%}
 .restaurant-beach .restaurant-hero-copy h2{font-size:36px;margin-bottom:15px}
 .restaurant-beach .restaurant-coast-strip{grid-template-columns:1fr 1fr;gap:18px;padding:20px 6%}
 .restaurant-beach .restaurant-coast-strip>a{grid-column:1/-1;justify-self:start}
 .restaurant-beach .restaurant-story-images{padding:0}
 .restaurant-beach .restaurant-story-copy{padding:30px 6%}
 .restaurant-traditional .restaurant-demo-nav{align-items:center;padding:20px 6% 12px}
 .restaurant-traditional .restaurant-hero-copy{padding:30px 6% 34px}
 .restaurant-traditional .restaurant-demo-hero figure{min-height:210px}
 .restaurant-traditional .restaurant-menu-groups{grid-template-columns:1fr;gap:32px}
 .restaurant-traditional .restaurant-menu-group>h3{font-size:30px;margin-bottom:0}
 .restaurant-traditional .restaurant-dish-price{font-size:16px}
 .restaurant-traditional .restaurant-daily-menu{grid-template-columns:1fr;gap:22px;padding:30px 6%}
 .restaurant-traditional .restaurant-daily-price{font-size:35px}
 .restaurant-traditional .restaurant-daily-menu h2{font-size:30px}
 .restaurant-traditional .restaurant-story-copy{padding:30px 6% 0}
 .restaurant-modern .restaurant-demo-hero{padding:28px 6%;gap:25px}
 .restaurant-modern .restaurant-hero-copy{padding:0}
 .restaurant-modern .restaurant-hero-copy h2{font-size:40px;letter-spacing:-1.5px;margin-top:0}
 .restaurant-modern .restaurant-demo-hero figure{min-height:300px;max-width:310px;width:100%;justify-self:end}
  .restaurant-modern .restaurant-about{gap:20px;padding:28px 6%}
 .restaurant-modern .restaurant-story-images{padding:0;grid-template-columns:1.3fr 1fr}
 .restaurant-modern .restaurant-story-copy{padding:0}
 .restaurant-modern .restaurant-menu-group{display:block;padding:22px 0}
 .restaurant-modern .restaurant-menu-group>h3{display:flex;gap:16px;align-items:baseline;padding-top:0}
 .restaurant-modern .restaurant-menu-number{margin:0}
 .restaurant-modern .restaurant-dish-price{margin-top:0}
 .restaurant-urban .restaurant-hero-copy h2{font-size:40px}
 .restaurant-urban .restaurant-demo-hero figure{min-height:240px}
 .restaurant-urban .restaurant-highlights{grid-template-columns:1fr;gap:24px}
 .restaurant-urban .restaurant-feature-image{aspect-ratio:16/9}
 .restaurant-urban .restaurant-highlights li{padding:18px 0}
 .restaurant-urban .restaurant-dishes{gap:14px}
 .restaurant-urban .restaurant-dish{padding:22px}
 .restaurant-urban .restaurant-dish-price{font-size:22px}
 .restaurant-urban .restaurant-story-images{padding:0}
 .restaurant-urban .restaurant-story-copy{padding:30px 6%}
 .restaurant-cafe .restaurant-demo-hero figure{order:1}
 .demo-afterword{align-items:flex-start;flex-direction:column;gap:20px}
}
@media(max-width:580px){
 .product-preview{max-width:470px}
 .examples-heading{padding-bottom:25px}
 .examples-heading h1{font-size:34px}
 .examples-grid{grid-template-columns:1fr;gap:20px}
 .example-card .example-preview{height:150px}
 .example-card .example-desktop-frame img{aspect-ratio:auto;height:auto;min-height:150px;object-fit:cover}
 .example-card-body,.examples-grid-compact .example-card-body{padding:17px 20px 15px}
 .example-card h3{font-size:25px;margin-bottom:6px}
 .example-card .example-profile{font-size:14px;margin-bottom:5px}
 .example-card .example-description{display:none}
 .example-card-link{margin-top:3px}
 .examples-personalisation{margin-top:32px;padding-top:26px}
 .examples-catalogue{padding-bottom:55px}
 .demo-page-heading{padding-top:14px;padding-bottom:18px}
 .demo-page-heading h1{font-size:24px;margin:7px 0}
 .demo-page-heading h1 span{font-size:16px}
 .demo-disclaimer p{font-size:14px}
 .restaurant-demo .restaurant-demo-nav{display:block;padding:13px 6% 7px}
 .restaurant-demo .restaurant-wordmark{font-size:29px;margin-bottom:7px}
 .restaurant-demo .restaurant-demo-nav nav{gap:18px;font-size:16px}
 .restaurant-demo .restaurant-demo-hero figure{min-height:200px}
 .restaurant-demo .restaurant-story-images{gap:10px}
 .restaurant-demo .restaurant-detail-image{padding-top:24px}
 .restaurant-demo .restaurant-demo-footer{display:block}
 .restaurant-demo .restaurant-demo-footer .restaurant-wordmark{display:block;margin:0 0 5px}
 .restaurant-beach .restaurant-demo-hero figure{min-height:170px}
 .restaurant-beach .restaurant-coast-strip{grid-template-columns:1fr;gap:14px}
 .restaurant-beach .restaurant-detail-image{padding-top:0}
 .restaurant-traditional .restaurant-demo-nav{text-align:center;padding-bottom:9px}
 .restaurant-traditional .restaurant-demo-nav nav{justify-content:center;gap:16px}
 .restaurant-traditional .restaurant-hero-copy h2{font-size:33px}
 .restaurant-traditional .restaurant-demo-hero figure{min-height:180px}
 .restaurant-modern .restaurant-demo-hero figure{min-height:285px}
 .restaurant-urban .restaurant-hero-copy h2{font-size:36px}
 .restaurant-urban .restaurant-highlights li{grid-template-columns:24px 1fr auto;column-gap:10px}
 .restaurant-urban .restaurant-highlights h3{font-size:20px}
 .examples-secondary{margin-top:40px}
}
@media(max-width:380px){
 .example-card-body{padding-inline:18px}
 .restaurant-demo .restaurant-demo-nav nav{gap:14px}
 .restaurant-demo .restaurant-wordmark{font-size:27px}
 .restaurant-demo .restaurant-hero-copy h2{font-size:32px}
 .restaurant-demo .restaurant-dish :is(h3,h4){font-size:21px}
 .restaurant-demo .restaurant-filters button{padding-inline:11px}
 .restaurant-modern .restaurant-demo-hero figure{min-height:250px}
}
@media print{.restaurant-demo .restaurant-filters{display:none}.restaurant-demo .restaurant-dish[hidden]{display:flex!important}.restaurant-demo .restaurant-menu-group{display:block!important}.restaurant-demo .restaurant-menu-empty{display:none}.restaurant-demo .restaurant-photo-credits{break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.product-preview *,.examples-grid *,.restaurant-demo *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
