/* Round 4, 27 October: concise navigation and progressive disclosure. */
.booking-mobile{display:none}
body:not(.page-home) main h1{font-size:61px;line-height:1.12}
.r3-header .centre-name>span{font-size:15px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.consent-row{min-height:44px;cursor:pointer;align-items:center}
.newsletter-disclosure>summary{display:none}
.newsletter-disclosure>.newsletter-band{display:grid}
.social-links{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:12px}
.social-links a{display:inline-flex;align-items:center;min-height:44px;font-size:15px}
.regulation-copy{max-width:1060px}
.home-change .regulation-intro{font-size:1.35rem;line-height:1.5;max-width:65ch}
.regulation-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 36px;list-style:none;margin:24px 0;padding:0}
.regulation-list li{position:relative;padding-left:22px}
.regulation-list li:before{content:'•';position:absolute;left:0;color:var(--clay)}
.regulation-quote{font:italic 1.5rem/1.45 var(--font-display);max-width:65ch}
.home-recognition{padding-top:96px!important}
.audience-disclosure{width:100%}
.audience-disclosure>summary{font:1.75rem/1.25 var(--font-display);color:var(--bark);pointer-events:none;list-style:none}
.audience-detail-body{margin-top:16px}
.page-who .audience-copy{display:block}
.page-services .gp-tag{font-size:15px}
.page-process .booking-payment{padding-block:24px}
.contact-email{overflow-wrap:anywhere}
@media(min-width:768px){.newsletter-disclosure:not([open])>.newsletter-band{display:grid}.audience-disclosure:not([open])>.audience-detail-body{display:block}}
@media(max-width:767px){
 body:not(.page-home) main h1{font-size:32px;line-height:1.15}
 .booking-desktop{display:none}.booking-mobile{display:inline}
 .r3-header .header-booking{max-width:none;min-width:88px;white-space:nowrap;min-height:44px;padding:10px 12px;line-height:1.2}
 .site-footer{padding-block:16px}
 .newsletter-disclosure>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:16px;cursor:pointer;border-bottom:1px solid #9fb09a}
 .newsletter-disclosure>summary:after{content:'+';font-size:22px}
 .newsletter-disclosure[open]>summary:after{content:'−'}
 .newsletter-disclosure:not([open])>.newsletter-band{display:none}
 .site-footer .compact-footer{gap:8px;margin-top:12px}
 .site-footer .compact-footer nav ul{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
 .site-footer .compact-footer nav a{min-height:44px;display:flex;align-items:center;font-size:15px;line-height:1.25}
 .site-footer .footer-meta{display:block;margin-top:4px;padding-top:8px}
 .site-footer .footer-meta p{font-size:15px;line-height:1.3;margin:0 0 6px}
 .site-footer .social-links{margin:0;gap:0;justify-content:space-between}
 .site-footer .footer-brand{min-height:44px}
 .site-footer .footer-line{font-size:15px}
 .home-recognition{padding-top:64px!important}
 .regulation-list{grid-template-columns:1fr;gap:10px;margin:20px 0}
 .home-change .regulation-intro{font-size:18px;line-height:1.45}
 .regulation-quote{font-size:21px;line-height:1.4}
 .page-home .home-change{padding-block:40px}
 .page-home .home-philosophy{padding-block:32px}
 .page-home .r3-tree .tree-art{max-width:140px;margin-inline:auto}
 .page-home .r3-tree .tree-art img{height:190px;width:140px;object-fit:cover;object-position:50% 45%}
 .page-home .r3-tree .tree-labels{max-width:none}
 .page-home .r3-tree{gap:4px}
 .page-home .r3-tree h3{font-size:22px;margin:0}
 .page-home .r3-tree .tree-subtitle{font-size:15px;margin:0}
 .page-home .roots-layout{gap:20px}
 .page-home .home-philosophy h2{font-size:28px}
 .page-home .home-philosophy p{line-height:1.4}
 .page-home .home-philosophy .tree-labels{gap:2px 12px}
 .audience-disclosure>summary{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-size:23px}
 .audience-disclosure>summary:after{content:'+';flex:none;color:var(--clay)}
 .audience-disclosure[open]>summary:after{content:'−'}
 .audience-disclosure:not([open])>.audience-detail-body{display:none}
 .page-who .audience-detail{padding-block:18px}
 .page-who .audience-copy{display:block}
 .page-services .services-hero{padding-block:32px 16px}
 .page-services .services-hero .hero-inner{padding-block:0}
 .page-services .services-hero .page-final-action{margin-block:16px}
 .page-services .service-jumps{margin-top:12px}
 .page-services .services-fees{padding-top:24px}
}
.r3-audience-detail .audience-copy{display:block!important}
.footer-links-disclosure>summary{display:none}
@media(min-width:768px){.footer-links-disclosure:not([open])>nav{display:block}}
@media(max-width:767px){
 .page-home .r3-header .header-booking{display:inline-flex!important}
 .page-home .r3-header .header-bar{gap:8px}
 .page-services .services-funding .gp-tag{font-size:15px!important}
 .footer-links-disclosure>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:44px;font-size:15px;border-block:1px solid #9fb09a}
 .footer-links-disclosure>summary:after{content:'+';font-size:22px}
 .footer-links-disclosure[open]>summary:after{content:'−'}
 .footer-links-disclosure:not([open])>nav{display:none}
 .page-home .r3-tree .tree-art{max-width:none;width:100%}
 .page-home .r3-tree .tree-art img{margin-inline:auto}
 .page-home .r3-tree .tree-labels{width:100%;padding:4px 0;gap:0 12px}
 .page-home .r3-tree .tree-labels li{padding:3px 0;line-height:1.2}
 .page-home .r3-tree{margin:0}
 .page-audience .audience-detail{padding-block:18px}
 .site-footer .footer-meta p{margin-bottom:4px}
 .site-footer .compact-footer>div:first-child{height:44px}
 .site-footer .footer-brand{min-height:44px}
}
@media(max-width:767px){
 .page-services .site-footer .footer-line{font-size:15px!important}
 .page-home .r3-tree .tree-art img{height:100px;width:140px;object-position:50% 45%}
 .page-home .r3-tree h3{padding:0 8px}
 .page-home .r3-tree .tree-subtitle{padding:0 8px}
 .page-home .r3-tree figcaption{font-size:15px;margin:0 8px 4px;padding:0}
}
@media(min-width:768px){
 .audience-disclosure{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);column-gap:64px}
 .audience-disclosure>summary{grid-column:1;grid-row:1;align-self:start}
 .audience-disclosure>.audience-detail-body{grid-column:2;margin-top:0;max-width:64ch}
}
@media(max-width:767px){.page-home .r3-tree .tree-art img{height:120px;width:100px;object-fit:contain}}
@media(min-width:768px){
 .audience-disclosure>summary{pointer-events:auto;cursor:pointer}
 .audience-disclosure:not([open])>.audience-detail-body{display:none}
}
.r3-audience-detail .audience-copy>.audience-disclosure{max-width:none}
@media(max-width:767px){.page-home .home-philosophy{padding-block:24px}.page-home .r3-tree{margin-bottom:16px}}
@media(max-width:767px){.page-home .home-philosophy{padding-block:24px!important}}

/* Privacy policy provider table remains readable on narrow screens. */
.policy-table-scroll { overflow-x: auto; margin: 1.5rem 0; }
.policy-table-scroll table { width: 100%; min-width: 640px; border-collapse: collapse; }
.policy-table-scroll th, .policy-table-scroll td { padding: .8rem; border: 1px solid #cbd4c9; text-align: left; vertical-align: top; }
.policy-table-scroll th { background: #edf2ea; }

.policy-table-hint { display: none; }
@media (max-width: 680px) { .policy-table-hint { display: block; } }
