.hero--restaurant{background:linear-gradient(135deg,rgba(225,217,255,0.7),rgba(201,221,255,0.4));position:relative;overflow:hidden}.hero--restaurant::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(201,221,199,0.55),transparent 60%);opacity:0.7;pointer-events:none}.hero__grid{display:grid;gap:var(--space-8);position:relative;z-index:1}.hero__highlights{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.hero__media{align-self:center}.hero__image-wrap{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.hero__caption{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}@media(min-width:768px){.hero__grid{grid-template-columns:minmax(0,1.25fr)minmax(0,1fr)}}.layout-grid-2{display:grid;gap:var(--space-8)}.layout-grid-2--reverse{display:grid;gap:var(--space-8)}.layout-grid-3{display:grid}.align-center{align-items:center}@media(min-width:768px){.layout-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-grid-2--reverse{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-grid-2--reverse> :first-child{order:2}.layout-grid-2--reverse> :last-child{order:1}}@media(min-width:960px){.layout-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)}}.features-list{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.features-list li{position:relative;padding-left:1.25rem}.features-list li::before{content:"";position:absolute;left:0.35rem;top:0.55rem;width:6px;height:6px;border-radius:999px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent-blue))}.section-header{max-width:40rem;margin:0 auto var(--space-6);text-align:center}.image-card{display:flex;flex-direction:column;gap:var(--space-4)}.image-card__media{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.image-card__body h2{margin-bottom:var(--space-3)}.image-card--compact .image-card__media{box-shadow:var(--shadow-sm)}@media(min-width:768px){.image-card{flex-direction:column}}@media(min-width:1024px){.image-card{flex-direction:column}}