.gallery { padding: 120px 4vw; background: #dceaa0; }
.gallery-head { padding: 0 4vw; }
.gallery-head h2, .reviews h2 { font-family: "Fraunces", serif; font-size: clamp(54px, 6vw, 92px); line-height: .9; letter-spacing: -.045em; margin: 0; }
.gallery-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; grid-auto-rows: 340px; gap: 16px; }
.gallery-grid figure { margin: 0; position: relative; overflow: hidden; border-radius: 24px; background: #ccc; }
.gallery-grid figure.wide, .gallery-grid figure.store { grid-column: span 2; }
.gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.gallery-grid figure:hover img { transform: scale(1.025); }
.gallery-grid figcaption { position: absolute; left: 18px; bottom: 18px; background: rgba(255,253,246,.93); padding: 10px 15px; border-radius: 999px; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.reviews { padding: 120px 8vw; background: var(--white); }
.review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.review-grid blockquote { margin: 0; padding: 38px; border: 1px solid rgba(23,60,45,.22); border-radius: 24px; display: flex; flex-direction: column; min-height: 300px; }
.review-grid blockquote:nth-child(2) { background: var(--lav); border-color: transparent; }
.review-grid blockquote:nth-child(3) { background: var(--cream); border-color: transparent; }
.review-grid p { font-family: "Fraunces", serif; font-size: 26px; line-height: 1.25; flex: 1; }
.review-grid cite { font-style: normal; font-weight: 700; font-size: 14px; }
.quote h2 { font-size: 72px; }
.quote > p:not(.eyebrow) { font-size: 18px; line-height: 1.6; max-width: 450px; }
.quote .pill { width: max-content; margin-top: 20px; }
.froyo-hero img { object-position: 52% 44%; }
.froyo-card img { object-position: 52% 42%; }
.fruit-hero img { object-position: center; }
@media (max-width: 900px) {
  .gallery-grid { grid-template-columns: 1fr 1fr; }
  .review-grid { grid-template-columns: 1fr; }
  .review-grid blockquote { min-height: 0; }
}
@media (max-width: 560px) {
  .gallery { padding: 80px 4vw; }
  .gallery-head { padding: 0 2vw; }
  .gallery-grid { grid-template-columns: 1fr; grid-auto-rows: 390px; }
  .gallery-grid figure.wide, .gallery-grid figure.store { grid-column: auto; }
  .reviews { padding: 80px 6vw; }
  .review-grid p { font-size: 23px; }
  .quote h2 { font-size: 54px; }
}

/* YOGART brand system: deep green, warm cream and white only. */
:root {
  --ink: #16584f;
  --cream: #f6f0e2;
  --lime: #16584f;
  --lav: #f6f0e2;
  --orange: #f6f0e2;
  --white: #ffffff;
}
body { background: var(--cream); color: var(--ink); }
.announcement, footer, .community-card, .green-card { background: var(--ink); color: var(--white); }
.announcement span { color: var(--white); }
.nav-wrap { background: rgba(246,240,226,.96); border-color: rgba(22,88,79,.2); }
.brand { width: 176px; }
.brand img { width: 176px; height: 58px; object-fit: contain; object-position: center; }
.hero h1 em { color: var(--ink); }
.pill { background: var(--ink); color: var(--white); }
.pill:hover { background: var(--ink); opacity: .88; }
.quick-facts span:not(:last-child):after { color: var(--ink); }
.burst { background: var(--ink); color: var(--white); }
.marquee { background: var(--ink); color: var(--white); border-color: var(--ink); }
.lavender-card { background: var(--cream); border: 1px solid var(--ink); }
.favorites, .reviews { background: var(--white); }
.gallery { background: var(--cream); }
.gallery-grid figcaption { background: var(--white); color: var(--ink); }
.review-grid blockquote { border-color: rgba(22,88,79,.28); }
.review-grid blockquote:nth-child(2), .review-grid blockquote:nth-child(3) { background: var(--cream); border-color: rgba(22,88,79,.28); }
.quote { background: var(--cream); color: var(--ink); }
.pill.cream { background: var(--white); color: var(--ink); }
.menu-list p, footer p { color: var(--ink); opacity: .72; }
.photo-card, .gallery-grid figure { background: var(--cream); }
footer img { width: 210px; height: 84px; object-fit: contain; object-position: center; filter: none; }
.brand img { mix-blend-mode: multiply; }
footer img { filter: brightness(0) invert(1); mix-blend-mode: normal; }
.hero-film { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.hero-visual { background:var(--cream); }
.hero-visual, .store-story img, .social-grid a { background:var(--ink); }
.guide-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:26px}.guide-actions>a:not(.pill){font-size:13px;font-weight:600;text-underline-offset:5px}
.catering{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:90px 7vw;background:var(--cream)}.catering img{width:100%;height:560px;object-fit:cover;border-radius:20px}.catering h2{font-family:"Fraunces",serif;font-size:clamp(44px,5vw,74px);line-height:.95;letter-spacing:-.04em;margin:0}.catering p:not(.eyebrow){font-size:18px;line-height:1.7;margin-top:30px}.store-story img{color:var(--cream)}
.photo-card img{object-position:center 35%}
@media(max-width:900px){.catering{grid-template-columns:1fr}.catering img{height:440px}}
.film-toggle { position:absolute; right:24px; bottom:24px; background:var(--cream); color:var(--ink); border:1px solid var(--ink); border-radius:999px; padding:11px 18px; cursor:pointer; font:inherit; font-size:12px; }
.feature-grid { grid-template-columns:1.2fr 1fr 1fr; }
.photo-card img { transition:transform 1.2s ease; }
.photo-card:hover img { transform:scale(1.04); }
.photo-card:after { background:linear-gradient(transparent,rgba(22,88,79,.94)); inset:30% 0 0; }
.photo-card .card-label { padding:30px; }
.photo-card h3 { font-size:38px; }
.social-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.social-grid a { display:block; overflow:hidden; border-radius:14px; aspect-ratio:9/14; }
.social-grid img { width:100%;height:100%;object-fit:cover;transition:transform .9s ease; }
.social-grid a:hover img { transform:scale(1.04); }
.store-story { display:grid;grid-template-columns:1fr 1.3fr;gap:24px;padding:110px 6vw;background:var(--cream);align-items:center; }
.store-story h2 { font-family:"Fraunces",serif;font-size:clamp(48px,6vw,85px);line-height:.95;letter-spacing:-.045em;margin:0; }
.store-story p:not(.eyebrow) { max-width:400px;line-height:1.7;margin-top:30px; }
.store-story img { width:100%;height:440px;object-fit:cover;border-radius:18px; }
.store-story img:last-child { grid-column:1/-1;height:480px;object-position:center 60%; }
footer p {color:var(--white);}
@media(max-width:900px){.feature-grid{grid-template-columns:1fr}.social-grid{grid-template-columns:repeat(2,1fr)}.store-story{grid-template-columns:1fr}.store-story img:last-child{grid-column:auto}.hero-film{object-position:center}}
@media(max-width:560px){.store-story{padding:70px 6vw}.store-story img,.store-story img:last-child{height:320px}.social-grid{gap:10px}.film-toggle{bottom:16px;right:16px}.photo-card h3{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.photo-card img,.social-grid img{transition:none}}
.canva-hero { width:100%;height:100%;object-fit:cover;object-position:center; }
.hero-caption { position:absolute;bottom:30px;left:30px;background:var(--cream);color:var(--ink);padding:12px 20px;border-radius:999px;font-size:12px;letter-spacing:.05em; }
.mobile-order{display:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
section[id]{scroll-margin-top:100px}
@media(max-width:560px){.hero-visual{min-height:390px}.hero-caption{left:20px;bottom:20px;font-size:11px}.nav-wrap.open nav{top:72px}.mobile-order{position:fixed;display:block;bottom:12px;left:16px;right:16px;text-align:center;padding:15px 22px;background:var(--ink);color:var(--white);border:1px solid var(--cream);border-radius:999px;font-weight:700;text-decoration:none;z-index:30}footer{padding-bottom:95px}}

/* Explicit lower-page brand surfaces, including cached-theme fallback. */
.community-card,footer{background-color:#16584f;color:#fff}
.visit,.catering,.gallery,.quote{background-color:#f6f0e2;color:#16584f}
footer p,footer a{color:#fff}
