.foundation-shell main { overflow: hidden; }
.foundation-hero { padding-block: var(--space-9) var(--space-8); border-bottom: 1px solid var(--colour-line); }
.foundation-hero__grid { display: grid; gap: var(--space-7); align-items: end; }
.foundation-hero__copy { max-width: 48rem; }
.foundation-hero__copy .pw-standfirst { margin-top: var(--space-5); max-width: 42rem; }
.foundation-hero__meta { color: var(--colour-faint); font-size: var(--text-body-small); }
.foundation-page { padding-block: var(--space-8) var(--space-10); }
.foundation-grid { display: grid; gap: var(--space-7); }
.foundation-sidebar { border-top: 1px solid var(--colour-line); padding-top: var(--space-5); color: var(--colour-ink-soft); }
.foundation-sidebar p { margin: 0 0 var(--space-4); }
.foundation-sidebar nav { display: grid; gap: var(--space-3); }
.foundation-content { display: grid; gap: var(--space-7); }
.foundation-content section { border-top: 1px solid var(--colour-line); padding-top: var(--space-6); }
.foundation-content section:first-child { border-top: 0; padding-top: 0; }
.foundation-content h2 { margin: 0 0 var(--space-4); font-family: var(--font-serif); font-size: var(--text-heading-2); font-weight: 400; line-height: var(--leading-tight); }
.foundation-content h3 { margin: var(--space-5) 0 var(--space-2); font-family: var(--font-serif); font-size: var(--text-heading-3); font-weight: 400; line-height: var(--leading-heading); }
.foundation-content p, .foundation-content li { color: var(--colour-ink-soft); font-size: var(--text-body); }
.foundation-content p { margin: 0 0 var(--space-4); }
.foundation-content ul { margin: var(--space-3) 0 0; padding-left: 1.2rem; }
.foundation-card-grid { display: grid; gap: var(--space-4); margin-top: var(--space-5); }
.foundation-card { border: 1px solid var(--colour-line); border-radius: var(--radius-subtle); background: var(--colour-white); padding: var(--space-5); }
.foundation-card h3 { margin-top: 0; }
.foundation-card-grid--editorial { gap: var(--space-5); }
.foundation-card--media { padding: 0; overflow: hidden; display: grid; grid-template-rows: auto 1fr; }
.foundation-card--media .foundation-card__image { aspect-ratio: 4 / 3; border-radius: 0; }
.foundation-card--media .foundation-card__image img { width: 100%; height: 100%; object-fit: cover; }
.foundation-card__body { padding: var(--space-5); }
.foundation-card__body span { color: var(--colour-warm-clay); font-size: var(--text-label); font-weight: 800; letter-spacing: var(--tracking-label); text-transform: uppercase; }
.foundation-card__body h3 { margin-top: var(--space-3); font-size: clamp(1.45rem, 2.1vw, 2.1rem); }
.foundation-card__body p { margin-bottom: 0; }
.foundation-contact { display: grid; gap: var(--space-4); margin-top: var(--space-5); }
.foundation-contact label { display: grid; gap: var(--space-2); color: var(--colour-ink-soft); font-size: var(--text-body-small); }
.foundation-contact input, .foundation-contact textarea { width: 100%; border: 1px solid var(--colour-line-dark); border-radius: var(--radius-subtle); background: var(--colour-white); color: var(--colour-ink); padding: .95rem 1rem; }
.foundation-contact textarea { min-height: 10rem; resize: vertical; }
.foundation-contact .pw-button { justify-self: start; }
.pw-site-footer { border-top: 1px solid var(--colour-line); background: var(--colour-forest-shadow); color: var(--colour-white); padding-block: var(--space-8); }
.pw-site-footer__inner { display: grid; gap: var(--space-6); }
.pw-site-footer__brand { max-width: 28rem; }
.pw-site-footer__brand p:not(.pw-eyebrow), .pw-site-footer__note { color: rgba(255,255,255,.72); }
.pw-site-footer .pw-eyebrow { color: var(--colour-aged-gold); }
.pw-site-footer__nav { display: grid; gap: var(--space-2); align-content: start; }
.pw-site-footer__nav p { margin: 0 0 var(--space-2); color: var(--colour-aged-gold); font-size: var(--text-label); font-weight: 800; letter-spacing: var(--tracking-label); text-transform: uppercase; }
.pw-site-footer__nav a { color: rgba(255,255,255,.78); text-decoration: none; }
.pw-site-footer__nav a:hover { color: var(--colour-white); text-decoration: underline; text-underline-offset: .24em; }
.pw-site-footer__pinterest { display: inline-flex; align-items: center; gap: .5rem; margin-top: var(--space-2); color: rgba(255,255,255,.78); text-decoration: none; }
.pw-site-footer__pinterest svg { flex: 0 0 auto; width: .95rem; height: .95rem; color: var(--colour-aged-gold); }
.pw-site-footer__pinterest:hover { color: var(--colour-white); text-decoration: none; }
.pw-site-footer__pinterest:hover span { text-decoration: underline; text-underline-offset: .24em; }
.pw-site-footer__note { border-top: 1px solid rgba(255,255,255,.16); margin: 0; padding-top: var(--space-5); font-size: var(--text-caption); }
@media (min-width: 48rem) { .foundation-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .foundation-card-grid--editorial { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pw-site-footer__inner { grid-template-columns: 1.4fr 1fr 1fr 1fr; } .pw-site-footer__note { grid-column: 1 / -1; } }
@media (min-width: 75rem) { .foundation-hero__grid { grid-template-columns: minmax(0, .85fr) minmax(18rem, .35fr); } .foundation-grid { grid-template-columns: minmax(14rem, .34fr) minmax(0, .86fr); align-items: start; } .foundation-sidebar { position: sticky; top: 96px; } }
@media (max-width: 47.99rem) { .foundation-hero { padding-block: var(--space-7); } .foundation-contact .pw-button { width: 100%; } }
