/* Editorial rhythm; homepage opening and Signal app layouts are retained. */
.section { padding-top:80px; padding-bottom:80px; }
.section.tight { padding-top:64px; padding-bottom:64px; }
.page-hero { padding-top:80px; padding-bottom:56px; }
.page-hero + .section { padding-top:32px; }
.contact-grid { margin-top:0; }
.contact-faq { margin-top:64px; }
.what-card,.pillar-card,.stack-card,.platform-card,.layer-card,.perk-card,.value-card,.svc-card { box-shadow:none; border-radius:8px; }
.what-card:hover,.pillar-card:hover,.stack-card:hover,.value-card:hover,.svc-card:hover { transform:none; box-shadow:none; }
.page-hero-grid-bg { opacity:.04; }
.section .h2 .gradient-text { background:none; color:var(--ink); -webkit-text-fill-color:currentColor; }
.booking-options { min-width:0; }
.booking-options p { max-width:62ch; color:var(--ink-soft); }
.booking-alternative { font-size:14px; overflow-wrap:anywhere; }
.cta-panel > div { min-width:0; }
.enquiry-status { color:var(--ink); line-height:1.6; }
.enquiry-status a { text-decoration:underline; }
button:disabled { cursor:wait; opacity:.65; }
.legal-content { min-width:0; overflow-wrap:anywhere; }
.cookies-table { width:100%; table-layout:fixed; }
.cookies-table th,.cookies-table td { overflow-wrap:anywhere; }
.legal-content code { white-space:normal; overflow-wrap:anywhere; }
.nav-toggle:focus-visible,.btn:focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
@media(max-width:1100px) {
 .section { padding-top:64px; padding-bottom:64px; }
 .page-hero { padding-top:64px; padding-bottom:40px; }
 .contact-grid { margin-top:0; }
}
@media(max-width:700px) {
 .section,.section.tight { padding-top:48px; padding-bottom:48px; }
 .page-hero { padding-top:48px; padding-bottom:24px; }
 .page-hero + .section { padding-top:24px; }
 .contact-faq { margin-top:48px; }
 .contact-primary,.contact-info { padding:24px; }
 .cta-panel > div { padding:20px !important; }
 .booking-options .btn { white-space:normal; }
 .cookies-table th,.cookies-table td { padding:10px 6px; font-size:12px; }
}

/* Keep explanatory content readable without putting every paragraph in a tile. */
.strategy-card { border-radius:8px; box-shadow:none; border:0; border-top:2px solid var(--cyan); }
.strategy-card:hover { transform:none; box-shadow:none; }
.about-hero { padding-top:80px; padding-bottom:56px; }
.about-hero-stripes { opacity:.25; }
.what-icon-wrap,.pillar-icon-wrap { box-shadow:none; border-radius:6px; background:var(--tint-blue); color:var(--blue); }
@media(max-width:700px) { .about-hero { padding-top:48px; padding-bottom:24px; } }
.what-icon,.pillar-icon { stroke:var(--blue); }
@media(min-width:1101px) {
 .cs-section-grid { grid-template-columns:200px minmax(0,1fr); gap:48px; }
 .cs-section-body { max-width:72ch; }
}
