/* CC Cakes — English celebration-cake maker.
   High-contrast garamond, blush and gold, plenty of white space. Reads as a
   cake studio's portfolio rather than a recipe index. */
:root {
  --s-paper:     #fffdfb;
  --s-surface:   #ffffff;
  --s-surface-2: #f7eff0;
  --s-ink:       #241c20;
  --s-ink-soft:  #4a3e44;
  --s-muted:     #857680;
  --s-line:      #ecdfe3;
  --s-line-soft: #f5ecef;
  --s-accent:    #7d2f46;   /* deep rose */
  --s-accent-ink:#fffdfb;
  --s-accent-2:  #a8863f;   /* gold leaf */
  --s-display: "Cormorant Garamond", Garamond, Georgia, serif;
  --s-body: "Lato", -apple-system, BlinkMacSystemFont, sans-serif;
  --s-radius: 0px;
  --s-card-ratio: 1 / 1;
  --s-wrap: 1120px;
}
h1 { font-size: clamp(2.3rem, 5.4vw, 3.7rem); font-weight: 500; letter-spacing: .005em; }
h2 { font-weight: 500; }
.sat-header { background: var(--s-surface); color: var(--s-ink); border-bottom: 1px solid var(--s-line); }
.sat-header a { color: var(--s-ink); }
.sat-logo em { font-style: italic; color: var(--s-accent); }
.sat-eyebrow { color: var(--s-accent-2); }
.sat-section { padding: 62px 0; }
.sat-grid { gap: 40px 30px; }

/* ── Layout identity: centred editorial, square portfolio tiles ───────────
   A cake studio's portfolio. Everything centred, two large square images per
   row, wide margins, no card descriptions competing with the photography. */
.sat-hero { padding: 66px 0 20px; text-align: center; }
.sat-hero-grid { grid-template-columns: 1fr; gap: 34px; }
.sat-hero-text { max-width: 34rem; margin: 0 auto; }
.sat-hero-text .sat-lede { margin-left: auto; margin-right: auto; }
.sat-hero-img { aspect-ratio: 3 / 2; max-width: 900px; margin: 0 auto; }
.sat-page-head { text-align: center; margin-left: auto; margin-right: auto; }
.sat-page-head .sat-lede { margin-left: auto; margin-right: auto; }
.sat-section-head { justify-content: center; text-align: center; }
.sat-grid-4, .sat-grid-3 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 640px) { .sat-grid-4, .sat-grid-3 { grid-template-columns: 1fr; } }
.sat-card { text-align: center; gap: 14px; }
.sat-card-desc { display: none; }
.sat-card-title { font-size: 1.35rem; font-weight: 500; }
.sat-card-meta { letter-spacing: .18em; font-size: .64rem; }
.sat-crumbs { text-align: center; }
