/* Public organisation homepage only. Brand values and saved content stay authoritative. */
.organisation-home-shell {
  --home-ink: #172630;
  --home-muted: #52636d;
  background-attachment: fixed;
}
.organisation-home-shell .app-topbar { background: rgba(255,255,255,.97); border-bottom: 1px solid #e5eaed; }
.organisation-home-shell .app-navbar { max-width: 1320px; margin: auto; padding-top: 18px; padding-bottom: 18px; }
.organisation-home-shell .brand-subtitle { font-weight: 450; }
.organisation-home-shell > main.page-wrap { width: min(100% - 64px,1320px); padding: 48px 0 0; }
.organisation-home-shell .tenant-website { gap: 0; background: #fff; border-radius: 28px 28px 0 0; overflow: hidden; }
.organisation-home-shell .website-section { border: 0; border-radius: 0; background: #fff; color: var(--home-ink); }
.organisation-home-shell .website-section h1,
.organisation-home-shell .website-section h2,
.organisation-home-shell .website-section h3 { color: var(--home-ink); text-wrap: balance; }
.organisation-home-shell .website-section h1 { font-size: clamp(2.5rem,4.6vw,4.5rem); line-height: 1.06; letter-spacing: -.055em; margin: 0 0 28px; max-width: 14ch; }
.organisation-home-shell .website-section h2 { font-size: clamp(1.9rem,3vw,3rem); line-height: 1.15; letter-spacing: -.035em; margin-bottom: 24px; }
.organisation-home-shell .website-rich-text { color: var(--home-muted); font-size: 1.04rem; line-height: 1.85; }
.organisation-home-shell .website-rich-text > :last-child { margin-bottom: 0; }
.organisation-home-shell .page-kicker { color: var(--brand-readable,var(--home-ink)); font-size: .73rem; letter-spacing: .16em; font-weight: 750; margin-bottom: 24px; }
.organisation-home-shell .website-section-copy { padding: clamp(28px,5vw,76px); }
.organisation-home-shell .website-layout-welcome { min-height: 600px; align-items: center; grid-template-columns: 1.15fr 1fr; background: linear-gradient(115deg,#fff 52%,color-mix(in srgb,var(--brand) 7%,#f7f9fa)); }
.organisation-home-shell .website-layout-welcome .website-section-copy { padding-right: 32px; }
.organisation-home-shell .website-layout-welcome .website-rich-text { max-width: 44ch; }
.organisation-home-shell .website-layout-welcome .website-section-image { width: calc(100% - 48px); height: auto; min-height: 0; aspect-ratio: 1; border-radius: 50% 50% 18% 18%; background: color-mix(in srgb,var(--brand) 6%,#f2f6f6); object-fit: cover; }
.organisation-home-shell .website-actions { gap: 14px; margin-top: 34px; }
.organisation-home-shell .website-actions .btn { padding: 14px 20px; min-height: 48px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; font-size: .9rem; line-height: 1.4; }
.organisation-home-shell .website-actions .btn-soft { background: #fff; color: var(--home-ink); border-color: #c9d3d9; }
.organisation-home-shell .website-actions .btn:focus-visible { outline: 3px solid var(--home-ink); outline-offset: 4px; }
.organisation-home-shell .website-layout-learning { align-items: center; padding: 72px clamp(28px,5vw,76px); gap: clamp(28px,5vw,76px); border-top: 1px solid #e9eeef; grid-template-columns: 1fr 1fr; }
.organisation-home-shell .website-layout-learning .website-section-copy { padding: 0; }
.organisation-home-shell .website-layout-learning .website-section-image { height: auto; min-height: 0; aspect-ratio: 5/4; border-radius: 20px; background: color-mix(in srgb,var(--brand) 5%,#f4f7f8); }
.organisation-home-shell .website-feature-section { padding: 76px clamp(28px,5vw,76px); background: #f5f7f8; }
.organisation-home-shell .website-section-heading { max-width: 700px; margin-bottom: 36px; }
.organisation-home-shell .website-section-rule { display: block; width: 48px; height: 4px; background: var(--brand); border: 1px solid var(--brand-border,var(--brand)); border-radius: 4px; margin-bottom: 22px; }
.organisation-home-shell .website-three-cards { gap: 24px; margin-top: 0; }
.organisation-home-shell .website-three-cards article { position: relative; background: #fff; border: 1px solid #e2e8eb; border-radius: 16px; box-shadow: 0 8px 24px #10233105; }
.organisation-home-shell .website-three-cards article > .feature-picture { padding: 0; aspect-ratio: 16/11; background: color-mix(in srgb,var(--brand) 4%,#f0f5f5); border-bottom: 1px solid #edf1f3; }
.organisation-home-shell .website-three-cards article > div:not(.feature-picture) { padding: 28px; }
.organisation-home-shell .website-three-cards h3 { font-size: 1.25rem; line-height: 1.35; letter-spacing: -.02em; margin: 0 0 14px; }
.organisation-home-shell .website-three-cards .website-rich-text { font-size: .93rem; line-height: 1.8; }
.organisation-home-shell .website-testimonials { padding: 64px clamp(28px,5vw,76px); background: #102331; color: #fff; }
.organisation-home-shell .website-testimonials .website-section-heading { display: flex; gap: 24px; align-items: center; margin: 0 0 24px; max-width: none; }
.organisation-home-shell .website-testimonials h2 { color: #fff; margin: 0; font-size: clamp(1.7rem,2.8vw,2.5rem); }
.organisation-home-shell .testimonial-quote-mark { font-family: Georgia,serif; font-size: 6rem; line-height: 1; height: 64px; color: #b8cbd5; }
.organisation-home-shell .testimonial-slide { grid-template-columns: minmax(150px,.65fr) minmax(0,1.35fr); gap: clamp(24px,5vw,64px); padding: 24px 0; }
.organisation-home-shell .testimonial-picture { max-height: 270px; aspect-ratio: 1; border-radius: 20px; background: #e9f0f1; }
.organisation-home-shell .testimonial-slide h3 { color: #fff; font-size: 1.05rem; letter-spacing: .01em; }
.organisation-home-shell .testimonial-slide .website-rich-text { color: #d0dce3; }
.organisation-home-shell .testimonial-slide blockquote { font-size: clamp(1.3rem,2.2vw,2rem); color: #fff; line-height: 1.55; letter-spacing: -.025em; border: 0; padding: 0; margin: 20px 0; }
.organisation-home-shell .testimonial-slide .website-rich-text p { font-size: .85rem; }
.organisation-home-shell .testimonial-controls { justify-content: flex-end; margin-top: 24px; border-top: 1px solid #36505f; padding-top: 24px; }
.organisation-home-shell .testimonial-controls [data-slide-status] { min-width: 52px; text-align: center; font-size: .85rem; font-variant-numeric: tabular-nums; }
.organisation-home-shell .testimonial-controls .btn-soft { color: #fff; background: transparent; border-color: #78909f; }
.organisation-home-shell .testimonial-controls .btn-soft:hover { background: #294251; }
.organisation-home-shell .testimonial-controls .btn:focus-visible { outline-color: #fff; }
.organisation-home-shell .website-testimonials ~ .website-section { border-bottom: 1px solid #e5ebee; }
.organisation-home-shell .organisation-footer { margin-top: 0; padding-top: 64px; padding-bottom: 28px; }
/* Uploaded media and rich text must never force horizontal scrolling. */
.organisation-home-shell .website-section > *, .organisation-home-shell .testimonial-slide > * { min-width: 0; }
.organisation-home-shell .website-section h1, .organisation-home-shell .website-section h2, .organisation-home-shell .website-section h3 { overflow-wrap: anywhere; }
@media(max-width:1000px) {
 .organisation-home-shell > main.page-wrap { width: calc(100% - 32px); padding-top: 24px; }
 .organisation-home-shell .website-layout-welcome { min-height: 480px; }
 .organisation-home-shell .website-layout-welcome .website-section-image { width: calc(100% - 24px); }
 .organisation-home-shell .website-three-cards { gap: 16px; }
 .organisation-home-shell .website-three-cards article > div:not(.feature-picture) { padding: 20px; }
}
@media(max-width:700px) {
 .organisation-home-shell { background-attachment: scroll; }
 .organisation-home-shell > main.page-wrap { width: calc(100% - 24px); padding-top: 16px; }
 .organisation-home-shell .tenant-website { border-radius: 20px 20px 0 0; }
 .organisation-home-shell .website-layout-welcome, .organisation-home-shell .website-layout-learning { grid-template-columns: 1fr; }
 .organisation-home-shell .website-layout-welcome .website-section-copy { padding: 36px 24px 28px; }
 .organisation-home-shell .website-layout-welcome .website-section-image { width: calc(100% - 48px); max-height: 300px; aspect-ratio: 4/3; margin: 0 24px 32px; border-radius: 18px; }
 .organisation-home-shell .website-section h1 { max-width: 18ch; font-size: clamp(2.2rem,9vw,3.4rem); }
 .organisation-home-shell .website-layout-learning, .organisation-home-shell .website-feature-section, .organisation-home-shell .website-testimonials { padding: 44px 24px; }
 .organisation-home-shell .website-layout-learning .website-section-image { order: 1; max-height: 280px; }
 .organisation-home-shell .website-three-cards { grid-template-columns: 1fr; gap: 24px; }
 .organisation-home-shell .testimonial-slide { grid-template-columns: 1fr; gap: 24px; }
 .organisation-home-shell .testimonial-picture { width: 112px; height: 112px; border-radius: 50%; }
 .organisation-home-shell .testimonial-controls { justify-content: space-between; gap: 8px; }
 .organisation-home-shell .testimonial-controls .btn { padding: 12px; }
 .organisation-home-shell .website-section-copy { padding: 36px 24px; }
}
.organisation-home-shell .app-navbar { width: min(100% - 64px,1320px); padding-left: 0; padding-right: 0; }
.organisation-home-shell .website-section { scroll-margin-top: 100px; }
@media(max-width:700px) { .organisation-home-shell .app-navbar { width: calc(100% - 32px); } }
@media(max-width:700px) {
 .organisation-home-shell .testimonial-controls { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); }
 .organisation-home-shell .testimonial-controls[hidden] { display: none; }
 .organisation-home-shell .testimonial-controls .btn { width: 100%; margin: 0; }
}
