
/* Component: retrofit.css */
/* GIBTK retrofit: homepage introduction. Scope styles to avoid legacy collisions. */
.retrofit-intro{padding:clamp(2rem,5vw,4.25rem) 1rem;background:#f5f8fa;color:#172e4d;text-align:center}
.retrofit-intro .container{max-width:900px;margin:auto}
.retrofit-intro .retrofit-kicker{font-size:.85rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#446785;margin-bottom:.8rem}
.retrofit-intro h1{font-family:inherit;font-size:clamp(2rem,4.3vw,3.25rem);line-height:1.12;color:#172e4d;margin:0 auto 1rem;max-width:18ch}
.retrofit-intro p:not(.retrofit-kicker){font-size:clamp(1rem,1.7vw,1.15rem);max-width:64ch;margin:0 auto 1.5rem;line-height:1.65}
.retrofit-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem}
.retrofit-actions a{display:inline-block;padding:.85rem 1.25rem;border-radius:.45rem;font-weight:700;text-decoration:none!important;border:2px solid #172e4d}
.retrofit-actions .retrofit-primary{background:#172e4d;color:#fff!important}
.retrofit-actions .retrofit-secondary{background:transparent;color:#172e4d!important}
.retrofit-actions a:focus-visible{outline:3px solid #d6a63c;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.retrofit-intro *{animation:none!important;transition:none!important}}


/* Component: home-refresh.css */
/* GIBTK homepage-only design layer. Load after legacy style.css. */
:root{--home-ink:#172e4d;--home-blue:#64acd8;--home-red:#d95353}
#bloc-0:first-of-type{padding:8px 30px;background:#fff}#bloc-0:first-of-type .row{justify-content:flex-end;gap:10px}#bloc-0:first-of-type .col-lg-1{flex:0 0 auto;width:auto;max-width:none;background:transparent!important;padding:0}#bloc-0:first-of-type .top-button-pad{padding:0!important}#bloc-0:first-of-type p{margin:0}#bloc-0:first-of-type a{display:inline-block;background:var(--home-blue);border:2px solid #438cb9;border-radius:999px;color:white!important;padding:8px 23px;font-size:14px;letter-spacing:.035em;text-decoration:none}#bloc-0:first-of-type .bgc-3160 a{background:var(--home-red);border-color:#b93d3d}#bloc-0:first-of-type a:hover{filter:brightness(.92);transform:translateY(-1px)}
.headermast{position:sticky!important;top:0;z-index:1100;background:rgba(255,255,255,.98);box-shadow:0 5px 20px rgba(23,46,77,.09);transition:transform .24s ease}.headermast.nav-hidden{transform:translateY(-110%)}.headermast>.container{width:calc(100% - 56px);max-width:none!important}.headermast .navbar .nav-link{font-size:clamp(15px,1.05vw,17px);position:relative}.headermast .navbar .nav-link:after{content:'';position:absolute;left:50%;bottom:2px;width:0;height:2px;background:#64acd8;transition:width .24s ease,left .24s ease}.headermast .navbar .nav-link:hover:after,.headermast .navbar .nav-link:focus-visible:after{left:12%;width:76%}
.gala-showcase{background:linear-gradient(145deg,#102a48,#1b4165);color:#fff;padding:clamp(55px,6vw,100px) 24px}.gala-inner{max-width:1240px;margin:auto}.gala-eyebrow{color:#9dd6f1;letter-spacing:.15em;text-transform:uppercase;font-size:13px;font-weight:700}.gala-showcase h2{color:white;font-size:clamp(38px,5.4vw,76px);line-height:1.08;margin:14px 0}.gala-lede{font-size:clamp(17px,2vw,22px);color:#d8e7f3;max-width:730px;margin-bottom:35px}.gala-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.85fr);gap:30px;align-items:start}.gala-film,.gala-info{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.18);border-radius:18px;overflow:hidden}.gala-video{aspect-ratio:16/9;background:#081a2a}.gala-video iframe{width:100%;height:100%;border:0}.gala-video-caption{padding:16px 20px;margin:0;color:#dcecf8}.gala-info{padding:clamp(22px,3vw,38px)}.gala-tag{display:inline-block;border:1px solid #9bd7f2;border-radius:999px;color:#bce5f8;padding:6px 13px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.gala-info h3{color:white;font-size:clamp(24px,2.5vw,35px);line-height:1.2;margin:20px 0}.gala-info p{color:#dceaf6;line-height:1.6}.gala-deadline{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#b9d9ec;margin-top:24px}.gala-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0 22px}.gala-countdown span{text-align:center;background:rgba(255,255,255,.11);border-radius:9px;padding:10px 4px}.gala-countdown strong{display:block;font-size:clamp(22px,2.4vw,36px);line-height:1.2;color:white;font-variant-numeric:tabular-nums}.gala-countdown small{font-size:11px;color:#c7e4f3}.gala-cta{display:block;text-align:center;background:#f7c56d;color:#142d47!important;font-weight:800;text-decoration:none;padding:16px;border-radius:999px}.gala-cta:hover{background:#ffe1a5;text-decoration:none}.gala-text-link{display:block;text-align:center;color:#ccecff!important;margin-top:16px}.gala-flyer{margin-top:30px;padding:25px;display:grid;grid-template-columns:1fr minmax(180px,300px);gap:30px;align-items:center;background:rgba(255,255,255,.07);border-radius:16px}.gala-flyer h3{color:white}.gala-flyer p,.gala-flyer a{color:#d7eaf7}.gala-flyer img{width:100%;max-height:430px;object-fit:contain}.gala-flyer.flyer-pending{grid-template-columns:1fr}
.gibtk-social{position:fixed;right:16px;top:50%;transform:translateY(-50%);z-index:1050;display:flex;flex-direction:column;gap:7px;padding:12px 9px;border:1px solid #d9e2eb;border-radius:999px;background:rgba(255,255,255,.97);box-shadow:0 12px 35px rgba(0,0,0,.16)}.gibtk-social a{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;font-size:19px;color:#214365!important;text-decoration:none;transition:background .2s,transform .2s,color .2s}.gibtk-social a:hover,.gibtk-social a:focus-visible{background:#214365;color:white!important;transform:scale(1.07)}.social-label{font-size:9px;letter-spacing:.11em;color:#526a7d;writing-mode:vertical-rl;margin:5px auto}.social-separator{height:1px;background:#d7e0e8;margin:4px}
.home-footer{background:#101f31;color:#d9e5ee;padding:65px 24px}.home-footer-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}.home-footer h2,.home-footer h3{color:white}.home-footer h2{font-size:21px;margin:14px 0}.home-footer h3{font-size:16px;margin:12px 0 20px}.home-footer p{line-height:1.75}.home-footer a{display:block;color:#c9e0f0;text-decoration:none;margin:0 0 11px}.home-footer a:hover{text-decoration:underline;color:white}.footer-social{display:flex;gap:10px}.footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid #69869e;display:grid;place-items:center}.home-footer .footer-brand img{object-fit:contain}
@media(max-width:900px){.gala-layout{grid-template-columns:1fr}.home-footer-inner{grid-template-columns:repeat(2,1fr)}.gibtk-social{right:7px}.headermast>.container{width:calc(100% - 24px)}}@media(max-width:600px){.gala-flyer{grid-template-columns:1fr}.home-footer-inner{grid-template-columns:1fr}.gibtk-social{top:auto;bottom:12px;right:12px;transform:none;flex-direction:row;padding:5px 8px;gap:2px}.gibtk-social a{width:36px;height:36px;font-size:16px}.gibtk-social .social-label,.gibtk-social .social-separator{display:none}.gala-showcase{padding-left:16px;padding-right:16px}.gala-info{padding:20px}}@media(prefers-reduced-motion:reduce){.headermast,.gibtk-social a,.headermast .navbar .nav-link:after{transition:none!important}}

/* V4: conservative, homepage-only refinements */
.headermast{min-height:0!important}
.headermast>.container{width:calc(100% - 32px)!important}
.headermast .row{align-items:center}
.headermast .navbar-brand img{width:auto!important;height:54px!important;max-width:100%;object-fit:contain}
.headermast .container-div-bloc-0-margin-top{margin:0!important;padding:0!important}
.headermast .navpad,.headermast .navbar,.headermast .navbar .container-fluid{padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important}
.headermast .navbar .nav-link,.headermast .dropdown-menu .nav-link{text-decoration:none!important;border-bottom:0!important}
.headermast .navbar .nav-link:after{left:5%;bottom:1px;height:2px;width:0;transition:width .22s ease,left .22s ease}
.headermast .navbar .nav-link:hover:after,.headermast .navbar .nav-link:focus-visible:after,.headermast .navbar .nav-link.active:after,.headermast .navbar .nav-link[aria-current="page"]:after{left:5%;width:90%}
.headermast .dropdown-menu .nav-link:after{left:4%;bottom:2px}
.headermast .dropdown-menu .nav-link:hover:after,.headermast .dropdown-menu .nav-link:focus-visible:after{left:4%;width:92%}
.gala-layout{display:block}.gala-info{max-width:100%;padding:clamp(20px,3vw,36px)}
.gala-showcase{padding:clamp(35px,4vw,60px) 24px}
.gala-flyer-open{position:relative;display:block;cursor:zoom-in;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:12px;padding:6px;color:white}
.gala-flyer-open[hidden]{display:none!important}.gala-flyer-open img{display:block;width:100%;height:auto;max-height:450px;object-fit:contain}
.gala-flyer-open span{display:block;padding:8px 5px;font-size:13px;text-align:center}
.gala-flyer-missing{font-size:13px;color:#cbdce9!important}
.gala-lightbox[hidden]{display:none!important}.gala-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(7,16,27,.94);display:flex;align-items:center;justify-content:center;padding:55px 24px 24px;cursor:zoom-out}
.gala-lightbox img{max-width:100%;max-height:calc(100vh - 85px);object-fit:contain;cursor:default}
.gala-lightbox-close{position:absolute;top:10px;right:20px;background:transparent;border:0;color:white;font-size:42px;line-height:1;cursor:pointer}
.gibtk-social{right:0!important;border-radius:12px 0 0 12px;padding:8px 3px;gap:2px;border-right:0}
.gibtk-social a{width:38px;height:40px;font-size:18px}
.home-scroll-jewel{position:fixed;right:58px;bottom:22px;width:58px;height:58px;padding:0;border:0;border-radius:50%;background:transparent;z-index:1090;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;filter:drop-shadow(0 3px 9px rgba(0,0,0,.22))}
.home-scroll-jewel.is-visible{opacity:1;visibility:visible;transform:none}
.home-scroll-jewel svg{width:100%;height:100%}.home-scroll-track{fill:#173452;stroke:#b9d2e3;stroke-width:3}.home-scroll-progress{fill:none;stroke:#65acd9;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:157.08;stroke-dashoffset:157.08;transform:rotate(-90deg);transform-origin:50% 50%}
.home-scroll-heart{fill:white}.home-scroll-arrow{fill:none;stroke:#173452;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.home-scroll-jewel:focus-visible,.gala-flyer-open:focus-visible,.gala-lightbox-close:focus-visible{outline:3px solid #ffcd70;outline-offset:3px}
@media(max-width:767px){.headermast .navbar-brand img{height:48px!important}.gibtk-social{right:0!important;bottom:0;border-radius:10px 0 0 0}.home-scroll-jewel{right:16px;bottom:62px;width:52px;height:52px}}
@media(prefers-reduced-motion:reduce){.home-scroll-jewel,.headermast .navbar .nav-link:after{transition:none!important}}

/* V5: original site remains unchanged; Gala video is part of the Gala presentation. */
.gala-showcase .gala-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:22px;align-items:stretch}
.gala-showcase .gala-film{display:flex;flex-direction:column;justify-content:center}
.gala-showcase .gala-video{width:100%;aspect-ratio:16/9}
.gala-showcase .gala-video iframe{display:block;width:100%;height:100%}
@media(max-width:900px){.gala-showcase .gala-layout{grid-template-columns:1fr}}


/* Component: social-retrofit-v11.css */
/* V11 shared floating social rail. Scoped; no changes to legacy page styling. */
.gibtk-social{position:fixed!important;right:0!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;z-index:1050!important;display:flex!important;flex-direction:column!important;gap:2px!important;padding:8px 3px!important;background:rgba(255,255,255,.97)!important;border:1px solid #d9e2eb!important;border-right:0!important;border-radius:12px 0 0 12px!important;box-shadow:0 10px 28px rgba(0,0,0,.14)!important;width:auto!important}
.gibtk-social a{display:grid!important;place-items:center!important;width:38px!important;height:40px!important;border-radius:50%!important;font-size:18px!important;line-height:1!important;color:#214365!important;text-decoration:none!important;transition:background .2s,transform .2s,color .2s}
.gibtk-social a:hover,.gibtk-social a:focus-visible{background:#214365!important;color:#fff!important;transform:scale(1.05)}
.gibtk-social .social-label{display:block;font-size:9px;letter-spacing:.11em;color:#526a7d;writing-mode:vertical-rl;margin:5px auto}
.gibtk-social .social-separator{display:block;width:70%;height:1px;background:#d7e0e8;margin:4px auto}
.gibtk-social a:focus-visible{outline:2px solid #e2ad56;outline-offset:2px}
@media(max-width:767px){.gibtk-social{top:auto!important;right:0!important;bottom:0!important;transform:none!important;flex-direction:row!important;border-radius:10px 0 0 0!important;padding:5px 7px!important;gap:2px!important}.gibtk-social a{width:36px!important;height:36px!important;font-size:16px!important}.gibtk-social .social-label,.gibtk-social .social-separator{display:none!important}}
/* Homepage CTA: place the two original-style pills visibly within header itself. */
@media(min-width:992px){body.gibtk-home-v11 .page-container>.bloc:has(.top-button-pad):not(.headermast){display:none!important}body.gibtk-home-v11 .headermast{position:sticky!important}body.gibtk-home-v11 .headermast .gibtk-header-actions{position:absolute;top:7px;right:28px;z-index:10;display:flex;gap:4px;align-items:center}body.gibtk-home-v11 .headermast .gibtk-header-actions a{display:inline-flex;align-items:center;justify-content:center;padding:7px 21px!important;border:2px solid #438cb9!important;border-radius:999px!important;background:#65add8!important;color:white!important;text-decoration:none!important;font-size:14px!important;font-weight:800!important;line-height:1.1!important;letter-spacing:0!important}body.gibtk-home-v11 .headermast .gibtk-header-actions a:hover{filter:brightness(.94)}body.gibtk-home-v11 .headermast .gibtk-header-actions a:focus-visible{outline:3px solid #e2ad56;outline-offset:3px}}
@media(max-width:991px){body.gibtk-home-v11 .gibtk-header-actions{display:none!important}}
@media(prefers-reduced-motion:reduce){.gibtk-social a{transition:none!important}}


/* Component: footer-retrofit-v14.css */
/* GIBTK V14: shared footer styling. Scoped to .home-footer only. */
.home-footer{background:#101f31;color:#d9e5ee;padding:52px 24px}
.home-footer .home-footer-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)) minmax(0,1.2fr);gap:32px}
.home-footer h2,.home-footer h3{color:#fff}
.home-footer h2{font-size:21px;margin:14px 0}
.home-footer h3{font-size:16px;margin:12px 0 20px}
.home-footer p{color:#d9e5ee;line-height:1.7}
.home-footer a{display:block;color:#c9e0f0;text-decoration:none;margin:0 0 11px}
.home-footer a:hover,.home-footer a:focus-visible{color:#fff;text-decoration:underline}
.home-footer .footer-social{display:flex;gap:10px}
.home-footer .footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid #69869e;display:grid;place-items:center}
.home-footer .footer-brand img{object-fit:contain;max-width:100%}
@media(max-width:950px){.home-footer .home-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.home-footer{padding:38px 22px}.home-footer .home-footer-inner{grid-template-columns:minmax(0,1fr);gap:20px}}


/* Component: donation-return-v13.css */
/* V13: contextual return links on individual donation program articles. */
.donation-return-v13 { margin: 2.25rem 0 1rem; padding: 1.3rem 1.5rem; border-top: 2px solid var(--donation-return-accent, #24588e); background:#f7f9fb; border-radius:0 0 12px 12px; }
.donation-return-v13__eyebrow { margin:0 0 .5rem; font-size:.75rem; text-transform:uppercase; letter-spacing:.075em; font-weight:700; color:#536477; }
.donation-return-v13__link { display:inline-flex; gap:.6rem; align-items:center; padding:.65rem .95rem; min-height:44px; border:1px solid var(--donation-return-accent, #24588e); border-radius:99px; color:var(--donation-return-accent, #24588e)!important; font-weight:700; text-decoration:none!important; }
.donation-return-v13__link:hover { background:var(--donation-return-accent, #24588e); color:white!important; }
.donation-return-v13__link:focus-visible { outline:3px solid #c47a12; outline-offset:3px; }


/* Component: program-retrofit-v18.css */
/* GIBTK V18: Authentic photography, concise polished program heroes. */
@media (min-width: 0px) {
  body .gibtk-program-hero { position:relative; isolation:isolate; overflow:hidden; min-height:270px; padding:48px 20px!important; display:flex; align-items:center; background-size:cover!important; background-position:center 42%!important; background-repeat:no-repeat; filter:none!important; }
  body .gibtk-program-hero::before { content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(100deg, rgba(20,30,54,.83) 0%, rgba(46,28,77,.65) 46%,rgba(27,35,54,.22) 100%); pointer-events:none; }
  body .gibtk-program-hero::after { content:""; position:absolute; height:5px; bottom:0;left:0;right:0; background:linear-gradient(90deg,#f7df69 0 22%, #793ca2 22% 75%, #65b7d9 75%); z-index:2; }
  body .gibtk-program-hero > .container {position:relative;z-index:1;width:100%;}
  body .gibtk-program-hero .header-titles {background:rgba(41,22,71,.69)!important; border-left:5px solid #ffe36b; box-shadow:0 14px 40px rgba(0,0,0,.17); border-radius:3px 18px 18px 3px; width:min(800px,92%); margin:0 auto!important; padding:22px 24px!important; backdrop-filter:blur(2px);}
  body .gibtk-program-hero .header-titles h1 {font-size:clamp(2rem,4.4vw,3.9rem)!important; line-height:1.12!important; letter-spacing:-.028em; text-shadow:0 2px 8px rgba(0,0,0,.25); color:#fff!important; margin:0!important;}
  body .gibtk-program-hero .bloc-shape-divider{display:none!important;}
  body .gibtk-program-hero .four-seasons{display:none!important;}
}
@media(min-width:992px){body .gibtk-program-hero {min-height:340px; padding:65px 28px!important;}}
@media(max-width:575px){body .gibtk-program-hero {min-height:230px; padding:38px 12px!important;}body .gibtk-program-hero .header-titles{width:96%;padding:17px!important;}}
/* A single accessible destination for the program's two actions. */
.gibtk-program-actions {--program-accent:#604492;max-width:1030px;margin:2.5rem auto 1.4rem; padding:1.65rem clamp(1rem,3vw,2rem); background:#f7f8fb; border-top:4px solid var(--program-accent);border-radius:0 0 14px 14px;text-align:center;}
.gibtk-program-actions__eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#526076;margin:0 0 .35rem;}
.gibtk-program-actions h2{font-size:clamp(1.45rem,2.9vw,2.15rem)!important; color:#273245!important; margin:0 0 1.25rem;}
.gibtk-program-actions__buttons{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center;align-items:center;}
.gibtk-program-actions__button,.gibtk-program-actions__button:visited{min-height:49px;display:inline-flex;align-items:center;justify-content:center;padding:.82rem 1.35rem;border-radius:10px;font-weight:800;font-size:1rem;line-height:1.3;text-align:center;text-decoration:none!important;transition:background-color .15s ease,transform .15s ease,color .15s ease;}
.gibtk-program-actions__button--donate,.gibtk-program-actions__button--donate:visited {background:#f8e36b!important;color:#2c2b31!important;border:2px solid #d9bb4c!important;}
.gibtk-program-actions__button--donate:hover{background:#efcc45!important;color:#24232a!important;transform:translateY(-1px);}
.gibtk-program-actions__button--back,.gibtk-program-actions__button--back:visited {background:#fff!important;color:var(--program-accent)!important;border:2px solid var(--program-accent)!important;}
.gibtk-program-actions__button--back:hover{background:var(--program-accent)!important;color:#fff!important;transform:translateY(-1px);}
.gibtk-program-actions__button:focus-visible{outline:3px solid #246a9f!important;outline-offset:4px;}
.gibtk-program-actions__button:active{transform:translateY(0);}
/* Existing yellow project buttons elsewhere: predictable link states. */
a.button-infocenter-color:link,a.button-infocenter-color:visited,a.button-infocenter-color{background:#f8e666!important;color:#303039!important;border-color:#f8e666!important;text-decoration:none!important;}
a.button-infocenter-color:hover{background:#eecb4e!important;color:#24232a!important;border-color:#eecb4e!important;text-decoration:none!important;}
a.button-infocenter-color:focus-visible{outline:3px solid #78bee7!important;outline-offset:4px;}
@media(prefers-reduced-motion:reduce){.gibtk-program-actions__button{transition:none!important;}}


/* V19: final scoped overrides. Category color, luminous photos, stronger legibility near bottom. */
body .gibtk-program-hero::before {background:linear-gradient(to bottom, rgba(25,32,42,.015) 0%, rgba(32,36,48,.045) 32%, color-mix(in srgb,var(--program-hero-color,#604492) 25%,transparent) 64%, color-mix(in srgb,var(--program-hero-color,#604492) 68%,transparent) 100%)!important;}
body .gibtk-program-hero .header-titles{background:rgba(18,27,42,.53)!important;backdrop-filter:none!important;box-shadow:0 8px 22px rgba(0,0,0,.14)!important;}
body .gibtk-program-hero{min-height:240px!important;padding:40px 18px!important;}
@media(min-width:992px){body .gibtk-program-hero{min-height:300px!important;padding:52px 22px!important}}
@media(max-width:767px){body.gibtk-home-v11 .four-seasons{display:none!important}}
/* New independent menu; no Blocs navigation selectors or Bootstrap dropdown behavior. */
.gibtk-site-header{position:sticky;top:0;z-index:3000;background:#fff;box-shadow:0 2px 13px #172e4d1d;font-family:Arial,Helvetica,sans-serif;color:#626262}
.gibtk-site-header *{box-sizing:border-box}
.gibtk-header-inner{max-width:1920px;margin:auto;min-height:94px;padding:9px clamp(16px,2.5vw,42px);display:flex;align-items:center;gap:clamp(12px,2vw,35px)}
.gibtk-header-logo{display:flex;flex:0 0 auto;align-items:center}.gibtk-header-logo img{display:block;object-fit:contain;width:clamp(90px,9vw,155px);height:clamp(80px,9vw,155px)}
.gibtk-desktop-links{display:flex;gap:clamp(9px,1.25vw,24px);align-items:center;flex-wrap:wrap;flex:1}
.gibtk-desktop-links a,.gibtk-desktop-links summary{color:#666!important;font-weight:700;text-decoration:none!important;font-size:clamp(14px,1.13vw,22px);line-height:1.25;cursor:pointer;white-space:nowrap;position:relative;padding:8px 0;list-style:none}
.gibtk-desktop-links summary::-webkit-details-marker{display:none}
.gibtk-desktop-links details{position:relative}
.gibtk-desktop-links summary::after{content:' ';display:inline-block;width:7px;height:7px;border-bottom:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin:0 2px 3px 8px}
.gibtk-desktop-links a::before,.gibtk-desktop-links summary::before{content:'';position:absolute;bottom:1px;left:0;right:0;height:3px;background:#4b96c9;transform:scaleX(0);transform-origin:left;transition:transform .18s}
.gibtk-desktop-links a:hover::before,.gibtk-desktop-links summary:hover::before,.gibtk-desktop-links a[aria-current=page]::before,.gibtk-desktop-links details:has([aria-current=page])>summary::before{transform:scaleX(1)}
.gibtk-desktop-submenu{position:absolute;top:100%;left:-12px;min-width:250px;max-height:min(70vh,650px);overflow-y:auto;display:grid;gap:0;z-index:3100;background:white;box-shadow:0 10px 24px #0002;border:1px solid #dee5ec;padding:10px 14px;border-radius:7px}
.gibtk-desktop-submenu a{font-size:15px!important;padding:10px 8px!important;white-space:normal!important}
.gibtk-header-donate,.gibtk-header-donate:visited{margin-left:auto;background:#63acd7!important;border:2px solid #408cbb;border-radius:50px;color:white!important;text-decoration:none!important;font:bold 15px Arial,Helvetica,sans-serif;padding:9px 22px;white-space:nowrap}
.gibtk-header-donate:hover{background:#448fbf!important}
.gibtk-mobile-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #cfdae5;border-radius:8px;background:white;color:#173452;cursor:pointer}
.gibtk-mobile-panel[hidden]{display:none!important}
.gibtk-mobile-panel{background:#fff;border-top:1px solid #e4e8ee;box-shadow:0 10px 18px #0002;padding:12px 18px 20px}
.gibtk-mobile-panel a{display:flex;align-items:center;min-height:50px;padding:10px 12px;border-bottom:1px solid #ebeff4;color:#203b54!important;font:bold 17px Arial,Helvetica,sans-serif;text-decoration:none!important}
.gibtk-mobile-panel a[aria-current=page]{border-left:4px solid #63acd7;background:#eef7fc}
.gibtk-mobile-panel .gibtk-mobile-donate{background:#63acd7;color:#fff!important;justify-content:center;border:0;border-radius:30px;margin-top:16px}
.gibtk-site-header a:focus-visible,.gibtk-site-header summary:focus-visible,.gibtk-mobile-toggle:focus-visible{outline:3px solid #dfac38;outline-offset:3px}
@media(max-width:1250px){.gibtk-desktop-links{display:none}.gibtk-mobile-toggle{display:inline-flex;margin-left:auto}.gibtk-header-donate{display:none}.gibtk-header-inner{min-height:74px;padding:7px 15px}.gibtk-header-logo img{width:75px;height:70px}}
/* Keep social rail pinned to window edge and mobile-friendly. */
.gibtk-social{right:0!important}
@media(max-width:600px){.gibtk-social{right:0!important;bottom:0!important}}
@media(prefers-reduced-motion:reduce){.gibtk-desktop-links a::before,.gibtk-desktop-links summary::before{transition:none}}

/* Final luminous title panel with dark bottom gradient for legibility */
body .gibtk-program-hero .header-titles{background:rgba(17,27,40,.37)!important;}

/* V21: compact Gala flyer preview with full-size lightbox. */
#gala-flyer{grid-template-columns:minmax(0,1fr) minmax(125px,190px);gap:clamp(14px,3vw,30px)}
#gala-flyer .gala-flyer-open{width:100%;max-width:190px;justify-self:end;box-shadow:0 8px 24px rgba(0,0,0,.22)}
#gala-flyer .gala-flyer-open img{max-height:230px;width:100%;object-fit:contain}
#gala-flyer .gala-flyer-open:hover{border-color:#f7c56d;transform:translateY(-2px)}
#gala-flyer .gala-flyer-missing[hidden],#gibtk-gala .gala-countdown-end[hidden],#gibtk-gala .gala-countdown[hidden]{display:none!important}
body.gala-lightbox-active{overflow:hidden}
@media(max-width:540px){#gala-flyer{grid-template-columns:1fr}#gala-flyer .gala-flyer-open{justify-self:start;max-width:170px}}
@media(prefers-reduced-motion:reduce){#gala-flyer .gala-flyer-open:hover{transform:none}}

/* V22: give program photographs 20px more vertical breathing room. */
body .gibtk-program-hero{min-height:260px!important;padding-top:50px!important;padding-bottom:50px!important;}
@media(min-width:992px){body .gibtk-program-hero{min-height:320px!important;padding-top:62px!important;padding-bottom:62px!important;}}

/* V23: clean shared navigation and program layout */
.gibtk-desktop-links{gap:clamp(8px,1vw,18px)}
.gibtk-desktop-links>a,.gibtk-desktop-links>details>summary{font-size:clamp(13px,.94vw,18px)!important}
.gibtk-mega{position:static!important}
.gibtk-mega-panel{position:absolute;top:calc(100% - 4px);left:clamp(12px,3vw,56px);right:clamp(12px,3vw,56px);z-index:3200;background:#fff;border:1px solid #dce4ed;box-shadow:0 18px 35px #102b462a;border-radius:12px;padding:24px 28px;max-height:72vh;overflow:auto}
.gibtk-mega:not([open]) .gibtk-mega-panel{display:none}
.gibtk-mega-intro{display:flex;align-items:baseline;gap:18px;padding-bottom:16px;border-bottom:1px solid #e6ebef;color:#233b52}
.gibtk-mega-intro strong{font-size:22px}.gibtk-mega-intro span{font-size:14px;color:#697783}
.gibtk-mega-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:20px}
.gibtk-mega-column{display:flex;flex-direction:column;gap:5px;min-width:0;padding:12px 12px 4px;border-top:4px solid #d98548}
.gibtk-mega-medical{border-color:#9a3444}.gibtk-mega-nutrition{border-color:#d6a42b}.gibtk-mega-love{border-color:#639cc5}
.gibtk-desktop-links .gibtk-mega-column a{white-space:normal!important;font-size:14px!important;font-weight:500!important;line-height:1.4;padding:5px 0!important;color:#34465b!important}
.gibtk-desktop-links .gibtk-mega-column .gibtk-mega-heading{font-weight:800!important;font-size:16px!important;color:#213e59!important;margin-bottom:6px}
.gibtk-desktop-links .gibtk-mega-all{display:inline-block;margin-top:16px;font-size:14px!important;color:#216d9d!important}
@media(max-width:1450px){.gibtk-desktop-links{display:none}.gibtk-mobile-toggle{display:inline-flex;margin-left:auto}.gibtk-header-donate{display:none}}
/* The four-color strip is exclusive to the homepage. */
body:not(.gibtk-home-v11) .four-seasons{display:none!important}
/* Sitewide editorial typography; don't override buttons or special display typography. */
.page-container .volt-content,.page-container .two-col-text-pad{font-family:Arial,Helvetica,sans-serif;color:#344454;font-size:17px;line-height:1.78}
.page-container .volt-content p,.page-container .two-col-text-pad p{font-size:inherit;line-height:inherit;margin-bottom:1.15em}
.page-container .volt-content h2,.page-container .volt-content h3{font-family:Arial,Helvetica,sans-serif;line-height:1.3;color:#253e58;margin:1.25em 0 .55em}
.page-container .volt-content img{max-width:100%;height:auto}
/* Keep original board portraits; refine existing card-designer presentation. */
body:has(.cd-container) #bloc-19 .cd-container{border-radius:16px;overflow:hidden;box-shadow:0 9px 26px #19334c24;transition:transform .2s,box-shadow .2s}
@media(hover:hover){body:has(.cd-container) #bloc-19 .cd-container:hover{transform:translateY(-4px);box-shadow:0 15px 30px #19334c32}}
body:has(.cd-container) #bloc-19 .card-bottom-pad{padding:14px}
.gibtk-about-hero{position:relative;min-height:330px;background-position:center 42%;background-size:cover;display:flex;align-items:end;justify-content:center;padding:38px 20px}
.gibtk-about-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(15,35,55,.68))}
.gibtk-about-hero-caption{position:relative;z-index:1;text-align:center;color:#fff}
.gibtk-about-hero-caption h1{font-size:clamp(34px,4vw,62px);font-weight:800;color:#fff;text-shadow:0 2px 10px #0005}
.gibtk-mission-hero{background-image:url('../dorothea-project-legacy.jpg')}
.gibtk-information-hero{background-image:url('../img/giving-it-back-to-kids-world-wide-charity-1.jpg')}
.gibtk-simple-donate,.gibtk-simple-outline{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 26px;border-radius:28px;text-decoration:none!important;font-weight:700}
.gibtk-simple-donate{background:#4d9ecb;color:#fff!important}.gibtk-simple-outline{border:2px solid #4d9ecb;color:#27668b!important}
.gibtk-involved-actions{text-align:center;padding:50px 15px;background:#f8f5ee}.gibtk-involved-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:20px}
.gibtk-legal-line{font-size:13px;color:#aebdcc;text-align:center;padding:18px 12px;border-top:1px solid #ffffff24}
/* Program images become masonry, without click-to-enlarge behavior. */
.gibtk-photo-masonry{columns:3 240px;column-gap:16px;margin:24px 0}
.gibtk-photo-masonry img{display:block;width:100%;height:auto;margin:0 0 16px;border-radius:11px;box-shadow:0 4px 14px #162e4518;break-inside:avoid}
.gibtk-photo-masonry>a{display:block;break-inside:avoid;pointer-events:none;cursor:default}
/* Legacy V-notch hero treatment removed. */
body:has(.gibtk-program-hero) .gibtk-program-hero{clip-path:none!important;border-radius:0!important}
body:has(.gibtk-program-hero) .gibtk-program-hero::after{clip-path:none!important}
.gibtk-video-cream{background:#f8f5ee;padding:40px 22px;margin:30px 0;border-radius:16px}
.gibtk-video-cream iframe,.gibtk-video-cream video{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;box-shadow:0 9px 26px #152f4322}
.gibtk-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px}
.gibtk-report-grid img{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 7px 18px #102b4520}
@media(max-width:640px){.gibtk-report-grid{grid-template-columns:1fr}.gibtk-about-hero{min-height:270px}}

/* V24: readable, space-efficient desktop navigation; mobile menu styling unchanged. */
@media (min-width: 1121px) {
 .gibtk-header-inner {max-width:none;gap:clamp(10px,1.15vw,20px);padding-inline:clamp(12px,1.6vw,30px);}
 .gibtk-header-logo img {width:clamp(74px,7.5vw,112px);height:clamp(70px,7.5vw,112px);}
 .gibtk-desktop-links {gap:clamp(9px,1.15vw,18px);flex-wrap:nowrap;min-width:0;}
 .gibtk-desktop-links>a,.gibtk-desktop-links>details>summary {font-size:15px!important;}
 .gibtk-desktop-links summary::after {margin-left:6px;}
 .gibtk-header-donate {padding:9px 15px;font-size:14px;flex-shrink:0;}
 .gibtk-desktop-links{display:flex!important;}
 .gibtk-mobile-toggle{display:none!important;}
 .gibtk-header-donate{display:inline-flex!important;}
}
@media (max-width:1120px) {
 .gibtk-desktop-links{display:none!important;}
 .gibtk-mobile-toggle{display:inline-flex!important;margin-left:auto;}
 .gibtk-header-donate{display:none!important;}
 .gibtk-header-inner{min-height:74px;padding:7px 15px;}
 .gibtk-header-logo img{width:75px;height:70px;}
}
/* V24: photographic desktop heroes, lower-third heading and subtle bottom gradient. */
@media (min-width:992px) {
 body .gibtk-program-hero{min-height:350px!important;padding:44px 24px!important;align-items:flex-end!important;background-size:cover!important;background-position:center 42%!important;}
 body .gibtk-program-hero::before{background:linear-gradient(to bottom,transparent 36%,rgba(12,25,39,.10) 54%,rgba(12,25,39,.70) 100%)!important;}
 body .gibtk-program-hero .header-titles{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0 10px 20px!important;width:100%!important;text-align:center!important;}
 body .gibtk-program-hero .header-titles h1{font-size:clamp(32px,3.1vw,48px)!important;}
 .gibtk-about-hero{min-height:350px;align-items:flex-end;background-position:center 42%;padding:36px 20px;}
 .gibtk-about-hero::before{background:linear-gradient(to bottom,transparent 35%,rgba(12,25,39,.08) 55%,rgba(12,25,39,.72) 100%);}
 .gibtk-about-hero-caption h1{font-size:clamp(32px,3.1vw,48px);}
}
/* V24: mission invitation and the slate-colored bottom-most legal strip. */
.gibtk-mission-giving{background:#542a9a;background-image:repeating-linear-gradient(45deg,transparent 0,transparent 6px,rgba(24,10,58,.12) 6px,rgba(24,10,58,.12) 7px);text-align:center;padding:50px 20px 56px;}
.gibtk-mission-giving-inner{max-width:900px;margin:0 auto;}
.gibtk-mission-giving h2{color:#fff!important;font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1.2;margin:0 0 35px;}
.gibtk-mission-giving-button,.gibtk-mission-giving-button:visited{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:18px 24px;background:#ffe967;color:#29334b!important;font-size:19px;font-weight:800;font-style:italic;text-decoration:none!important;border-radius:8px;}
.gibtk-mission-giving-button:hover,.gibtk-mission-giving-button:focus-visible{background:#fff1a1;color:#17273d!important;}
.home-footer{padding-bottom:0!important;}
.gibtk-footer-slate-bottom{background:#283e53;margin:40px -24px 0;padding:0 24px;}
.gibtk-footer-slate-bottom .gibtk-legal-line{max-width:1240px;margin:auto;border-top:0;color:#e0e8f0;padding:20px 12px;line-height:1.6;}
@media(max-width:600px){.gibtk-footer-slate-bottom{margin-left:-22px;margin-right:-22px;}}

/* V27: one authoritative hero design across ALL interior page hero variants.
   The shared class is applied directly to every hero in PHP markup. This rule
   intentionally supersedes the legacy Blocs min-height and banner classes. */
body .gibtk-unified-hero {
  position:relative!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:center!important;
  width:100%!important;
  height:480px!important;
  min-height:480px!important;
  max-height:none!important;
  padding:30px 24px 76px!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background-size:cover!important;
  background-position:center 30%!important;
  background-repeat:no-repeat!important;
  -webkit-clip-path:polygon(0 0,100% 0,100% calc(100% - 48px),50% 100%,0 calc(100% - 48px))!important;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 48px),50% 100%,0 calc(100% - 48px))!important;
}
body .gibtk-unified-hero::before {
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:linear-gradient(to bottom,transparent 40%,rgba(12,25,39,.10) 58%,rgba(12,25,39,.64) 100%)!important;
  pointer-events:none!important;
}
body .gibtk-unified-hero::after {display:none!important;content:none!important;}
body .gibtk-unified-hero > .container,
body .gibtk-unified-hero .gibtk-about-hero-caption {position:relative!important;z-index:1!important;width:100%!important;max-width:1200px;}
body .gibtk-unified-hero .header-titles {
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  padding:0 10px!important;
  margin:0 auto!important;
  width:100%!important;
  text-align:center!important;
}
body .gibtk-unified-hero .header-titles h1,
body .gibtk-unified-hero .gibtk-about-hero-caption h1 {
  color:#fff!important;
  font-size:clamp(32px,3.1vw,48px)!important;
  line-height:1.2!important;
  text-shadow:0 2px 10px rgba(0,0,0,.5)!important;
  margin:0!important;
}
body .gibtk-unified-hero .bloc-shape-divider,
body .gibtk-unified-hero .bloc-divider-bottom,
body .gibtk-unified-hero .svg-divider {display:none!important;}
@media (min-width:992px) and (max-width:1279.98px) {
  body .gibtk-unified-hero {height:420px!important;min-height:420px!important;}
}
@media (min-width:768px) and (max-width:991.98px) {
  body .gibtk-unified-hero {height:360px!important;min-height:360px!important;padding-bottom:66px!important;}
}
@media (max-width:767.98px) {
  body .gibtk-unified-hero {
    height:300px!important;
    min-height:300px!important;
    padding:22px 15px 52px!important;
    -webkit-clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),50% 100%,0 calc(100% - 24px))!important;
    clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),50% 100%,0 calc(100% - 24px))!important;
  }
  body .gibtk-unified-hero .header-titles h1,
  body .gibtk-unified-hero .gibtk-about-hero-caption h1 {font-size:clamp(27px,6vw,38px)!important;}
}
/* Keep the legacy duplicate footer suppressed. */
#the-end.bloc{display:none!important;}


/* V28 — unified photographic heroes. Only the outer hero gets clipped. */
body .gibtk-unified-hero:not(.gibtk-about-hero-caption) {
  display:flex!important; flex-direction:column!important; align-items:stretch!important;
  justify-content:flex-end!important; position:relative!important; isolation:isolate!important;
  height:480px!important; min-height:480px!important; max-height:none!important;
  padding:32px max(28px,7vw) 112px!important;
  background-size:cover!important; background-position:center 30%!important;
  border-radius:0!important; overflow:hidden!important;
  -webkit-clip-path:polygon(0 0,100% 0,100% calc(100% - 48px),50% 100%,0 calc(100% - 48px))!important;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 48px),50% 100%,0 calc(100% - 48px))!important;
}
body .gibtk-unified-hero:not(.gibtk-about-hero-caption)::before {
  content:none!important; display:none!important; background:none!important;
}
body .gibtk-unified-hero:not(.gibtk-about-hero-caption)::after {
  content:none!important; display:none!important;
}
body .gibtk-unified-hero .container,
body .gibtk-unified-hero .row,
body .gibtk-unified-hero .col,
body .gibtk-unified-hero .header-titles,
body .gibtk-unified-hero .gibtk-about-hero-caption {
  background:transparent!important; background-color:transparent!important;
  background-image:none!important; box-shadow:none!important; backdrop-filter:none!important;
  border:0!important; border-radius:0!important; text-align:left!important;
}
body .gibtk-unified-hero > .container {max-width:none!important; width:100%!important; padding:0!important; margin:0!important;}
body .gibtk-unified-hero .header-titles,
body .gibtk-unified-hero .gibtk-about-hero-caption {
  position:relative!important; width:100%!important; height:auto!important;
  min-height:0!important; max-width:none!important; margin:0!important;
  padding:0!important; display:block!important; clip-path:none!important;
  -webkit-clip-path:none!important;
}
body .gibtk-unified-hero h1,
body .gibtk-unified-hero .header-titles h1,
body .gibtk-unified-hero .gibtk-about-hero-caption h1 {
  color:#fff!important; font-size:clamp(32px,3.2vw,46px)!important;
  font-weight:650!important; line-height:1.16!important;
  text-align:left!important; margin:0!important; padding:0!important;
  text-shadow:0 2px 9px rgba(0,0,0,.7)!important;
  background:none!important; border:0!important; box-shadow:none!important;
}
body .gibtk-unified-hero .bloc-shape-divider,
body .gibtk-unified-hero .bloc-divider-bottom,
body .gibtk-unified-hero .svg-divider {display:none!important;}
@media (min-width:992px) and (max-width:1279.98px){body .gibtk-unified-hero:not(.gibtk-about-hero-caption){height:420px!important;min-height:420px!important;padding-bottom:98px!important;}}
@media (min-width:768px) and (max-width:991.98px){body .gibtk-unified-hero:not(.gibtk-about-hero-caption){height:360px!important;min-height:360px!important;padding-bottom:86px!important;}}
@media (max-width:767.98px){
 body .gibtk-unified-hero:not(.gibtk-about-hero-caption){height:300px!important;min-height:300px!important;padding:24px 24px 65px!important;
 -webkit-clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),50% 100%,0 calc(100% - 24px))!important;
 clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),50% 100%,0 calc(100% - 24px))!important;}
 body .gibtk-unified-hero h1{font-size:clamp(27px,6vw,38px)!important;}
}
/* V28 — Volt owns its content layout; Bootstrap owns the columns. */
.volt-content[data-name="get-involved-02"]{display:block!important;grid-template-columns:none!important;gap:normal!important;}
.volt-content[data-name="get-involved-02"] > .gibtk-involvement{width:100%;}
.gibtk-involvement{background:#f8f9fb;padding:clamp(28px,4vw,55px) 0;}
.gibtk-involvement .involvement-card{background:#fff;padding:clamp(22px,3vw,32px);border:1px solid #e4e8ef;border-radius:12px;box-shadow:0 3px 14px rgba(24,43,68,.04);}
.gibtk-involvement .involvement-card h3{color:#253a57;font-size:1.2rem;font-weight:700;line-height:1.35;margin-bottom:1rem;}
.gibtk-involvement .involvement-card p{color:#4d5b6c;line-height:1.75;margin-bottom:1rem;}
.gibtk-involvement .involvement-card p:last-child{margin-bottom:0;}
.gibtk-involvement .involvement-card-featured{background:#eef3f9;border-color:#dbe5f1;}
/* Existing PHP page supplies an outer container; avoid double-container narrowing. */
.volt-content[data-name="get-involved-02"] .gibtk-involvement > .container{max-width:100%!important;padding-left:0!important;padding-right:0!important;}

/* V29: every interior hero heading is explicitly left-aligned, including
   nested Blocs title wrappers and mobile breakpoint variants. */
body .gibtk-unified-hero,
body .gibtk-unified-hero .header-titles,
body .gibtk-unified-hero .header-titles *,
body .gibtk-unified-hero .gibtk-about-hero-caption,
body .gibtk-unified-hero .gibtk-about-hero-caption *,
body .gibtk-unified-hero h1 {text-align:left!important;}
/* Footer contact links are block elements globally; group the two US
   telephone links without extra vertical margins. */
.home-footer-inner > div:last-child > p:first-of-type a {margin-bottom:0!important;}
.home-footer-inner > div:last-child > p:first-of-type {line-height:1.5!important;}
