/* Home-page sections injected by the CMS (guide + news). Scoped to .cms-home; colours come from inline vars. */
.cms-home{position:relative;background:var(--c-bg);color:var(--c-ink);padding-block:clamp(90px,11vw,160px);border-top:1px solid color-mix(in srgb,var(--c-ink) 12%,transparent);font-family:var(--c-body)}
.cms-wrap{max-width:1280px;margin:0 auto;padding-inline:max(20px,5vw)}
.cms-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,64px)}
.cms-head h2{font-family:var(--c-display);font-weight:400;font-size:clamp(2.4rem,4.8vw,4.4rem);line-height:1.04;margin:18px 0 0;letter-spacing:-.01em}
.cms-head h2 em{font-style:italic;color:var(--c-accent)}
.cms-label{display:block;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--c-accent)}
.cms-more{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;color:inherit;border-bottom:1px solid currentColor;padding-bottom:6px}
.cms-more:hover{color:var(--c-accent)}
.cms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,36px)}
.cms-card{display:grid;align-content:start;gap:12px;text-decoration:none;color:inherit}
.cms-ph{overflow:hidden;aspect-ratio:4/3;background:var(--c-soft)}
.cms-ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.cms-card:hover .cms-ph img{transform:scale(1.04)}
.cms-card h3{font-family:var(--c-display);font-weight:400;font-size:clamp(1.5rem,2.1vw,1.9rem);line-height:1.12;margin:0}
.cms-card p{margin:0;color:var(--c-muted);font-size:.95rem;line-height:1.6}
.cms-guides .cms-ph{aspect-ratio:16/10}
@media (max-width:900px){.cms-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.cms-grid{grid-template-columns:1fr}}
