/* VERSO human-centered extension. The original stylesheet and brand assets are retained. */
:root { --teal-600:#087b77; --slate:#4d6072; }
html { scroll-padding-top:112px; }
body { font-size:16px; }
img { max-width:100%; }
figure { margin:0; }
.site-shell { width:min(100% - 5rem,1280px); }
.section-pad { padding-block:5.5rem; }
.header-inner { min-height:98px; gap:1.5rem; grid-template-columns:auto minmax(0,1fr) auto; }
.header-brand-group { display:flex; flex-direction:column; align-items:flex-start; gap:0; }
.brand-image-lockup { width:210px; height:55px; }
.company-byline { color:#4d6072; font-size:.8rem; margin:0 0 8px 14px; }
.desktop-nav { gap:1.35rem; flex-wrap:wrap; min-width:0; }
.desktop-nav a,.language-toggle,.header-cta { font-size:.875rem; }
.header-cta { padding-inline:1rem; }
.language-toggle { min-height:44px; }
.mobile-menu-button { display:none; }
.hero { background:#f4f8f7; padding:0; overflow:visible; }
.hero-layout { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:3.25rem; padding-block:3.8rem 3rem; min-height:0; align-items:center; }
.hero-copy { padding:0; }
.hero-eyebrow { font-size:.75rem; letter-spacing:.11em; margin:0 0 1.5rem; }
.hero-eyebrow > span { display:none; }
.hero h1 { font-size:clamp(3rem,4.8vw,4.6rem); line-height:1.04; letter-spacing:-.055em; margin:0; }
.hero h1 b { font-weight:800; }
.hero h1 > span { margin-top:.15em; color:#087b77; background:none; -webkit-text-fill-color:initial; }
.hero-lede { font-size:1.05rem; line-height:1.75; max-width:35rem; margin:1.65rem 0 0; }
.hero-actions { margin-top:1.75rem; gap:.75rem; flex-wrap:wrap; }
.primary-cta,.secondary-cta { font-size:.875rem; min-height:48px; border-radius:7px; padding:1rem 1.2rem; }
.primary-cta { background:#092441; }
.primary-cta:hover { background:#146057; }
.adventure-hero { position:relative; padding-top:1.75rem; }
.adventure-hero > img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:48px 6px 6px 6px; }
.photo-label { display:flex; justify-content:space-between; align-items:center; font-size:.75rem; font-weight:750; letter-spacing:.12em; margin-bottom:1rem; color:#234156; }
.photo-label > span:last-child { background:#d5efb0; color:#1c392a; padding:.4rem .75rem; border-radius:3px; }
.adventure-hero figcaption { display:flex; align-items:center; gap:1rem; background:#fff; margin:-1px 0 0 32px; border-radius:0 0 6px 6px; padding:1.25rem 1.4rem; box-shadow:0 9px 30px #143b4410; }
.caption-line { height:45px; width:3px; flex-shrink:0; background:#1a9b8b; }
.adventure-hero strong { display:block; font-size:1.02rem; line-height:1.4; }
.adventure-hero figcaption div > span { display:block; color:#516373; font-size:.86rem; margin-top:.3rem; line-height:1.5; }
.proof-bar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 auto; padding:1.6rem 0; border-top:1px solid #cbdad9; gap:1.4rem; }
.proof-item,.proof-item:first-child { padding:0 1rem 0 0; align-items:flex-start; }
.proof-item > span { font-size:.8rem; }
.proof-item strong { font-size:.9rem; }
.proof-item p { font-size:.8rem; margin-top:.35rem; line-height:1.5; }
.place-ribbon { background:#0a243d; color:white; padding:1.1rem 0; }
.place-ribbon > div { display:flex; gap:1.45rem; align-items:center; }
.place-ribbon span { margin-right:auto; font-size:.9rem; color:#cddde2; }
.place-ribbon b { font-size:.75rem; font-weight:650; letter-spacing:.13em; }
.place-ribbon i { display:block; width:4px; height:4px; border-radius:50%; background:#a5d775; }
.eyebrow { font-size:.75rem; line-height:1.6; letter-spacing:.13em; }
.section-heading h2,.q2v-heading h2,.contact-heading h2,.schools-copy h2,.hosts-heading h2,.story-copy h2,.fuse-copy h2,.platform-copy h2 { font-size:clamp(2.1rem,3.2vw,3.15rem); letter-spacing:-.04em; line-height:1.12; }
.section-heading > p,.q2v-heading > div > p,.platform-lede,.contact-heading > p,.hosts-heading > div > p,.story-copy > p { font-size:1rem; line-height:1.8; }
.learning-story { display:grid; grid-template-columns:1.05fr 1fr; gap:4rem; align-items:center; margin-top:3.2rem; }
.editorial-photo { position:relative; }
.editorial-photo img { width:100%; height:auto; display:block; border-radius:6px 6px 40px 6px; }
.editorial-photo figcaption { position:absolute; bottom:0; left:0; padding:.65rem 1rem; background:#092441; color:white; font-size:.75rem; letter-spacing:.09em; }
.learning-story-copy h3 { font-size:2rem; letter-spacing:-.04em; line-height:1.18; margin:.7rem 0 1rem; }
.learning-story-copy > p:not(.eyebrow) { color:var(--slate); font-size:1rem; line-height:1.8; }
.learning-story-copy ul { padding-left:1.2rem; color:#214337; line-height:1.9; }
.learning-story-copy li::marker { color:#188476; }
.text-link { display:inline-block; color:#086963; font-weight:700; border-bottom:1px solid #9dbdb5; padding-bottom:.35rem; font-size:.9rem; }
.audience-grid { margin-top:3rem; gap:1.25rem; }
.audience-card { min-height:0; padding:1.6rem; border-radius:6px; background:#f5f8f8; }
.audience-card .icon-box { display:none; }
.audience-card > span { position:static; font-size:.8rem; color:#087b77; }
.audience-card h3 { margin:1rem 0 .7rem; font-size:1.3rem; }
.audience-card p { font-size:1rem; line-height:1.7; }
.destinations-section { background:#edf4f3; }
.destination-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.6rem; margin-top:2.5rem; }
.destination-card { border-radius:8px; overflow:hidden; background:white; }
.destination-image { position:relative; }
.destination-image img { display:block; width:100%; aspect-ratio:1.8; height:auto; object-fit:cover; }
.destination-image > span { position:absolute; bottom:1rem; left:1.3rem; background:#fff; border-radius:3px; padding:.5rem .8rem; font-size:.85rem; font-weight:750; letter-spacing:.09em; color:#0a243d; }
.destination-copy { padding:1.7rem 2rem 2rem; }
.destination-copy h3 { margin:0 0 .8rem; font-size:1.6rem; line-height:1.2; letter-spacing:-.035em; }
.destination-copy p { margin:0; color:#4d6072; line-height:1.8; }
.location-tags { display:block; font-size:.75rem; letter-spacing:.06em; color:#08736a; font-weight:700; margin-top:1.4rem; }
.destination-note { color:#516575; font-size:.8rem; line-height:1.65; max-width:75rem; margin:1.5rem 0 0; }
.q2v-section { background:#0a243d; }
.q2v-heading { grid-template-columns:.8fr 1.2fr; gap:4rem; }
.q2v-wordmark { width:min(100%,480px); max-width:100%; }
.q2v-wordmark img { height:auto; }
.stage-grid { gap:0; grid-template-columns:repeat(7,minmax(0,1fr)); overflow:visible; }
.stage-grid li { min-height:180px; padding:.5rem 1rem; }
.stage-grid h3 { font-size:1rem; margin-top:1.5rem; overflow-wrap:anywhere; }
.stage-grid p { font-size:.875rem; line-height:1.5; }
.stage-grid li > span,.movement-header p,.movement-header span { font-size:.75rem; }
.dual-outcome { margin-top:1.25rem; }
.dual-outcome article { padding:1.5rem; }
.dual-outcome article p { font-size:.75rem; }
.dual-outcome article h3 { font-size:1.5rem; }
.dual-outcome article div > span { font-size:1rem; line-height:1.75; }
.program-card { padding:1.7rem; min-height:0; border-radius:7px; }
.program-card h3 { font-size:1.5rem; overflow-wrap:anywhere; }
.program-description,.program-card li,.school-benefits li,.schools-lede,.turnkey-card > p,.turnkey-card li,.role-card p,.host-details li,.host-ask > p { font-size:1rem; line-height:1.7; }
.program-tag,.program-note,.school-note,.school-badge,.turnkey-card-heading span,.evidence-card span { font-size:.8rem; line-height:1.7; }
.program-note { align-items:flex-start; }
.university-note { margin-top:2rem; border-top:1px solid #d2dfde; border-bottom:1px solid #d2dfde; display:flex; align-items:center; gap:3rem; padding:2rem 0; }
.university-note > div { max-width:760px; }
.university-note h3 { font-size:1.6rem; letter-spacing:-.025em; margin:.5rem 0; }
.university-note p:not(.eyebrow) { color:#516575; line-height:1.75; margin:0; }
.university-note > a { flex-shrink:0; }
.schools-section { background:#f2f6f7; }
.schools-layout { align-items:start; gap:4rem; }
.guide-details { border:1px solid #cfdddd; border-radius:8px; overflow:hidden; }
.guide-details > summary { padding:1.3rem 1.5rem; cursor:pointer; font-size:1rem; font-weight:700; line-height:1.6; background:#fff; }
.guide-details > summary::marker { color:#138475; }
.guide-details[open] > summary { border-bottom:1px solid #cfdddd; }
.guide-details .roles-panel { padding:1.5rem; width:100%; margin:0; border:0; box-shadow:none; border-radius:0; }
.turnkey-card { padding:1.2rem; }
.turnkey-card ul { grid-template-columns:1fr; }
.role-card { padding:1.2rem 0; }
.role-card h4 { font-size:1rem; }
.evidence-card strong { font-size:.9rem; }
.hosts-section > .site-shell > .guide-details { margin-top:2.5rem; border-color:#46647a; }
.hosts-section .guide-details > summary { background:#103652; color:#fff; }
.guide-details .host-details { margin:0; padding:2rem; }
.host-stats span { font-size:.8rem; }
.host-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
.host-stats article { min-width:0; }
.host-stats span { overflow-wrap:anywhere; }
@media(max-width:900px) { .host-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.host-details h3 { font-size:1.5rem; }
.platform-copy .guide-details { margin-top:1.5rem; }
.guide-details .platform-features { margin:0; padding:1.5rem; }
.platform-features p { font-size:1rem; }
.platform-features h3 { font-size:1.1rem; }
.platform-status,.platform-identity > p { font-size:.75rem; line-height:1.7; }
.fuse-section { background:#f0f7f5; border-top:1px solid #d5e5df; }
.fuse-layout { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:4rem; }
.fuse-logo-panel { background:#fff; border-radius:16px; border:1px solid #e0e9e5; overflow:hidden; }
.fuse-logo-panel img { display:block; width:100%; height:auto; }
.fuse-copy h2 { margin:.8rem 0 1.5rem; }
.fuse-intro,.mission-text { color:#415c67; line-height:1.85; margin:0; }
.fuse-copy h3 { font-size:1.25rem; margin:1.5rem 0 .5rem; }
.brand-relationship { display:grid; grid-template-columns:1fr 1fr 1.5fr; margin-top:1.8rem; border-top:1px solid #bfdbd1; padding-top:1.2rem; gap:1rem; }
.brand-relationship b { display:block; letter-spacing:.07em; font-size:1rem; }
.brand-relationship small { display:block; font-size:.8rem; margin-top:.4rem; color:#415c67; line-height:1.5; }
.partner-card-copy > p,.partner-growth-card > p { font-size:.75rem; }
.partner-card-copy > span,.partner-growth-card > span:last-of-type { font-size:1rem; line-height:1.8; }
.partner-grid { gap:1.5rem; }
.partner-card,.partner-growth-card { border-radius:8px; }
/* Keep the ICC logo in its own row so its intrinsic size cannot cover the copy. */
.partner-card { grid-template-columns:minmax(0,1fr); align-content:start; align-items:start; gap:1.5rem; min-width:0; }
.partner-card-copy { min-width:0; }
.partner-logo-box { width:min(100%,320px); max-width:100%; min-width:0; height:auto; min-height:0; aspect-ratio:auto; padding:1rem; justify-self:start; }
.partner-logo-box img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; }
.partner-growth-card { display:flex; flex-direction:column; }
.partner-cta { position:relative; left:auto; bottom:auto; align-self:flex-start; margin-top:1.5rem; }
.story-layout { grid-template-columns:1fr 1fr; gap:4rem; }
.connections-photo img { width:100%; height:auto; display:block; border-radius:5px 45px 5px 5px; }
.story-copy blockquote { font-size:1.4rem; line-height:1.5; }
.trait-list > span { font-size:.875rem; }
.contact-form { border-radius:8px; }
.contact-form label > span,.contact-select,.contact-form input,.contact-form textarea { font-size:1rem; }
.contact-form input,.contact-select { min-height:48px; }
.contact-submit { font-size:1rem; }
.form-note,.privacy-note,.contact-location { font-size:.8rem; line-height:1.7; color:#526574; }
.form-status { font-size:.9rem; }
.footer-brand { display:block; width:250px; max-width:100%; background:white; border-radius:4px; padding:.6rem; }
.footer-brand img { display:block; width:100%; height:auto; }
.footer-top > p { font-size:1rem; }
.footer-bottom { gap:1rem; flex-wrap:wrap; font-size:.8rem; }
.credits-footer { border-top:1px solid #304355; margin-top:1.5rem; padding-top:1rem; padding-bottom:1rem; color:#aec2cd; font-size:.8rem; line-height:1.8; }
.credits-footer > p { margin:0 0 .8rem; }
.credits-footer a { text-decoration:underline; text-underline-offset:3px; }
.credits-footer summary { cursor:pointer; color:#d8e6ea; }
.credits-footer details p { max-width:1000px; }
.mobile-drawer-panel { overflow-y:auto; }
.mobile-drawer-backdrop { width:100%; height:100%; }
.mobile-nav { margin-top:1rem; }
.mobile-nav a { padding:.65rem .25rem; font-size:1rem; }
.mobile-language { margin-top:1.2rem; min-height:44px; }
.hero h1,.fuse-copy,.brand-relationship,.partner-card-copy,.contact-heading { overflow-wrap:anywhere; }
.section-heading > *,.q2v-heading > *,.schools-layout > *,.hosts-heading > *,.platform-layout > *,.contact-layout > *,.fuse-layout > * { min-width:0; }
h2,h3,h4 { overflow-wrap:anywhere; }
@media(max-width:640px) { .header-actions .language-toggle { display:inline-flex; } }
:focus-visible { outline:3px solid #138778; outline-offset:4px; }
@media(min-width:901px) { .schools-layout > .guide-details { margin-top:3.5rem; } }
@media(max-width:1180px) { .desktop-nav { display:none; } .header-inner { grid-template-columns:auto 1fr; } .header-actions { justify-self:end; } .mobile-menu-button { display:inline-flex; } .hero-layout { gap:2rem; } .hero h1 { font-size:3.5rem; } .stage-grid { grid-template-columns:repeat(4,minmax(0,1fr)); row-gap:1.5rem; } .stage-grid li:nth-child(5) { border-left:0; padding-left:0; } }
@media(max-width:900px) { .hero-layout { grid-template-columns:1fr; padding-block:2.75rem; } .hero-copy { max-width:660px; } .hero h1 { font-size:clamp(3rem,6.7vw,4.5rem); } .adventure-hero { padding-top:0; max-width:760px; } .proof-bar { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; } .proof-item,.proof-item:first-child { border-bottom:0; padding:0; } .proof-item > span { display:none; } .place-ribbon > div { flex-wrap:wrap; gap:.85rem; } .place-ribbon span { flex-basis:100%; margin-bottom:.4rem; } .learning-story,.fuse-layout,.story-layout { grid-template-columns:1fr; gap:2rem; } .learning-story-copy { max-width:700px; } .q2v-heading { grid-template-columns:1fr; gap:2rem; } .fuse-logo-panel { max-width:360px; } .fuse-layout { grid-template-columns:.65fr 1fr; } .fuse-copy h2 { font-size:2rem; } .brand-relationship { grid-template-columns:1fr 1fr; } .brand-relationship > span:last-child { grid-column:1/-1; } .university-note { align-items:flex-start; flex-direction:column; gap:1.5rem; } .connections-photo { max-width:760px; } }
@media(max-width:640px) { html { scroll-padding-top:96px; } .site-shell { width:calc(100% - 2rem); } .section-pad { padding-block:3.5rem; } .header-inner { min-height:88px; gap:.5rem; } .brand-image-lockup { width:175px; height:47px; } .company-byline { font-size:.75rem; margin:0 0 5px 11px; } .header-actions { gap:.5rem; } .header-cta { display:none; } .language-toggle { font-size:.8rem; padding:0 .3rem; } .language-toggle > span:first-child { display:none; } .mobile-menu-button.button-base { width:38px; height:38px; } .hero-layout { padding-block:2.4rem 1.8rem; gap:1.8rem; } .hero h1 { font-size:clamp(2.65rem,10.6vw,3.55rem); line-height:1.06; } .hero-eyebrow { font-size:.75rem; margin-bottom:1.15rem; } .hero-lede { font-size:1rem; margin-top:1.2rem; } .hero-actions { display:flex; align-items:stretch; flex-direction:row; } .hero-actions a { flex:1 1 140px; font-size:.8rem; padding:.9rem .7rem; } .adventure-hero > img { border-radius:28px 4px 4px 4px; } .adventure-hero figcaption { margin-left:16px; padding:1rem; } .adventure-hero strong { font-size:.95rem; } .adventure-hero figcaption div > span { font-size:.8rem; } .photo-label { font-size:.7rem; } .proof-bar { grid-template-columns:1fr; padding:1rem 0; gap:0; } .proof-item,.proof-item:first-child { padding:.85rem 0; border-bottom:1px solid #dce5e3; } .proof-item:last-child { border-bottom:0; } .proof-item > span { display:block; } .proof-item strong { font-size:.95rem; } .place-ribbon b { font-size:.7rem; } .place-ribbon span { font-size:.85rem; } .section-heading h2,.q2v-heading h2,.contact-heading h2,.schools-copy h2,.hosts-heading h2,.story-copy h2,.platform-copy h2,.fuse-copy h2 { font-size:2.2rem; } .section-heading { gap:1.1rem; } .learning-story { margin-top:2rem; } .learning-story-copy h3 { font-size:1.8rem; } .audience-grid { margin-top:2rem; } .audience-card { padding:1.5rem; } .destination-grid { grid-template-columns:1fr; } .destination-copy { padding:1.4rem; } .destination-copy h3 { font-size:1.5rem; } .stage-grid { grid-template-columns:1fr 1fr; gap:1rem 0; } .stage-grid li { min-height:155px; } .stage-grid li:nth-child(odd) { border-left:0; padding-left:0; } .stage-grid h3 { margin-top:1rem; } .stage-grid li:nth-child(7) { grid-column:1/-1; border-top:1px solid #304858; padding-top:1rem; } .movement-header > div { flex-wrap:wrap; gap:1rem; } .movement-header span { font-size:.75rem; } .program-card { padding:1.5rem; } .schools-layout,.platform-layout,.contact-layout { gap:2.25rem; } .guide-details .roles-panel,.guide-details .host-details { padding:1rem; } .guide-details > summary { padding:1.1rem; } .fuse-layout { grid-template-columns:1fr; } .fuse-logo-panel { width:260px; max-width:100%; margin:auto; } .brand-relationship { grid-template-columns:1fr 1fr 1.3fr; gap:.7rem; } .brand-relationship > span:last-child { grid-column:auto; } .partner-card,.partner-growth-card { padding:1.5rem; min-height:0; } .partner-logo-box { padding:0; } .partner-card-copy h3 { font-size:1.35rem; } .footer-top { grid-template-columns:1fr; gap:1.4rem; } .footer-top > p { text-align:left; } .footer-top > a:last-child { justify-self:start; grid-column:auto; } .footer-bottom { flex-direction:column; align-items:flex-start; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; animation:none!important; } }
