/* Compact section rhythm; content sets the height instead of viewport spacers. */
.section{padding-top:72px;padding-bottom:0}
.section-heading{margin-bottom:30px}
.hero{min-height:0;padding-top:30px;padding-bottom:28px}
.client-strip{padding-top:12px;padding-bottom:8px}
.engagement-paths{margin-top:0}
.approach-section{display:block}
.approach-section>.section-heading{position:static;margin:0 0 24px}
.approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.approach-card,.approach-card:first-child,.approach-card:last-child{min-height:0;padding:0;display:block}
.approach-diagram{height:130px;justify-content:flex-start}
.approach-diagram svg{max-height:120px;width:200px}
.approach-card h3{min-height:0;margin:16px 0 12px}
.approach-card p{min-height:0;margin:0;max-width:none}
.approach-card.is-past{opacity:1;transform:none}
.funnel-bridge{margin-top:20px;padding:8px 0}
.benefit-grid article{padding-top:0}
.about-section{padding-bottom:0}
.contact-section{margin-top:64px;padding:0 0 28px}
.contact-bottom{margin-top:24px;gap:28px;align-items:center}
.booking-actions{gap:12px;flex-shrink:0}
body .booking-actions>button.text-link.brand-action{padding:13px 23px;min-height:48px;border:1px solid #343434;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;line-height:1.3;text-align:center}
body .booking-actions>.brand-action{width:100%;box-sizing:border-box;justify-content:space-between}
.brand-action .action-arrow{display:block;width:22px;height:12px;flex:0 0 22px}
.site-footer{padding-top:18px;gap:14px 24px;align-items:center}
.site-footer>div{align-items:center}
.footer-meta{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin:0;padding:8px 0 16px}
.footer-meta .motion-toggle{width:28px;height:28px;order:2;opacity:.6}
@media(max-width:900px){.approach-grid{gap:24px}.approach-card h3{font-size:22px}}
@media(max-width:680px){
  .section{padding-top:48px}
  .hero{padding-top:24px;padding-bottom:20px}
  .section-heading{margin-bottom:24px}
  .approach-grid{grid-template-columns:1fr;gap:28px}
  .approach-card,.approach-card:first-child,.approach-card:last-child{padding:0;min-height:0}
  .approach-diagram{height:96px}
  .approach-diagram svg{height:96px;width:160px}
  .approach-card h3{margin-top:10px}
  .contact-section{margin-top:44px;padding:0 0 20px}
  .contact-bottom{margin-top:22px;gap:20px;align-items:stretch}
  body .booking-actions>button.text-link.brand-action{min-height:46px;padding:12px 18px}
  .site-footer{padding-top:12px;gap:14px;grid-template-columns:1fr}
  .site-footer>div{grid-column:1;justify-content:flex-start}
  .footer-meta{grid-column:1;padding-bottom:14px}
}
body .booking-actions>a.button.primary.brand-action,body .booking-actions>button.text-link.brand-action{width:100%;box-sizing:border-box}

.site-footer > div { margin-left:auto; justify-content:flex-end; }
