/* WHPF responsive and readability refinements */
:root{--muted:#405461}
html{overflow-x:clip}
body{overflow-wrap:break-word}
img,video,iframe,svg{max-width:100%}
figure{max-width:100%}
.wp-article,.peacilu-page{min-width:0}
.wp-article img{height:auto}
.press-grid>*,.columns>*,.story-grid>*,.campaign-grid>*,.footer-main>*,.manifesto-grid>*{min-width:0}
header nav{flex-wrap:nowrap}
@media(max-width:1100px){
 .header-inner{width:calc(100% - 36px);gap:12px}
 header nav{gap:10px}
 header nav a{font-size:12px}
 .brand{min-width:0}
 .brand img{max-width:min(240px,35vw)!important}
}
@media(max-width:800px){
 .wrap,.intro.wrap,.memory.wrap,.faith.wrap{width:calc(100% - 32px)}
 .header-inner{width:calc(100% - 32px)}
 .hero,.manifesto,.childhood,.image-story,.founder-feature,.closing-memory,.film-section,.home-writing,.memory:not(.wrap),.join{padding-top:48px;padding-bottom:48px}
 .manifesto-grid,.campaign-grid,.story-grid,.memory-top,.foundation-videos,.columns,.remembrance-grid,.remembrance-second,.statement-head,.footer-main,.press-grid,.whpf-press-heading-layout{grid-template-columns:minmax(0,1fr);gap:24px}
 .childhood-grid,.video-grid,.writing-grid,.pillars,.reference-images{grid-template-columns:minmax(0,1fr)}
 .full-image img{min-height:240px;height:55vw}
 .full-image figcaption{left:16px;right:16px;bottom:16px;padding:12px;font-size:16px}
 h1{font-size:clamp(30px,8vw,48px)}
 h2{font-size:clamp(26px,7vw,38px)}
 .peacilu-page video{width:100%;height:auto}
 .press-entry.featured{grid-row:auto}
 .footer-bottom{flex-wrap:wrap;gap:12px}
}
@media(max-width:480px){
 .peacilu-page{padding-left:12px;padding-right:12px}
 .peacilu-page .peacilu-logo-crop{width:100%}
 .actions{gap:12px}
 .button{max-width:100%;white-space:normal;text-align:center}
}

/* Shared footer without the removed Sting video */
footer .whpf-footer-explore-video{display:block!important}
footer .whpf-footer-explore-video>div:first-child{width:100%}

.whpf-pfc-feature{background:#092f43;color:#fff;padding:clamp(30px,5vw,68px) 18px}
.whpf-pfc-feature,.whpf-pfc-feature p,.whpf-pfc-feature em,.whpf-pfc-feature .whpf-pfc-credit,.whpf-pfc-feature .whpf-peacilu-eyebrow{color:#fff!important;opacity:1!important}
.whpf-pfc-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(22px,4vw,50px);align-items:center}
.whpf-pfc-feature h2{color:#fff!important;font:normal clamp(29px,3.6vw,46px)/1.18 Georgia,serif!important;margin:8px 0 18px}
.whpf-pfc-feature p{font-size:clamp(15px,1.4vw,19px);line-height:1.6}
.whpf-pfc-feature .whpf-peacilu-eyebrow{color:#e6c782}
.whpf-pfc-feature .whpf-pfc-credit{font-size:12px;color:#c4d6e0}
.whpf-pfc-player{min-width:0}
.whpf-pfc-player iframe{width:100%;aspect-ratio:16/9;height:auto;display:block;border:0;border-radius:14px}
@media(max-width:800px){.whpf-pfc-inner{grid-template-columns:minmax(0,1fr)}}


.whpf-music-control{position:fixed;right:12px;bottom:14px;z-index:9999;font-family:Arial,sans-serif;max-width:calc(100vw - 24px)}
.whpf-music-toggle{border:1px solid #d6bd78;background:#123b5a;color:#fff;padding:11px 16px;border-radius:40px;box-shadow:0 4px 15px #0004;font-size:14px;font-weight:700;cursor:pointer}
.whpf-volume-toggle{border:1px solid #d6bd78;background:#fff;color:#123b5a;padding:9px 12px;border-radius:40px;box-shadow:0 4px 15px #0003;font-size:12px;font-weight:700;cursor:pointer;margin-bottom:5px}
@media(max-width:800px){.whpf-volume-toggle{min-height:40px}.whpf-music-control{gap:3px}}
.whpf-music-panel{width:200px;max-width:calc(100vw - 24px);background:#fff;color:#123b5a;padding:5px;border-radius:8px;box-shadow:0 3px 12px #0003;margin-bottom:4px}
.whpf-music-panel[hidden]{display:none!important}
.whpf-music-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;font-weight:bold;padding:3px 0 8px}
.whpf-music-close{background:transparent;border:0;font-size:20px;color:#123b5a;cursor:pointer}
.whpf-music-frame iframe{width:100%;aspect-ratio:16/9;height:auto;min-height:110px;border:0;border-radius:5px;display:block}
.whpf-music-heading{font-size:10px;gap:4px;padding:0 0 3px}
.whpf-music-panel p{display:none}
.whpf-music-panel p{font-size:11px;margin:5px 0 0}
@media(max-width:480px){.whpf-music-toggle{padding:9px 12px;font-size:12px}}
/* Keep long translated text and links inside the viewport */
@media(max-width:800px){.whpf-peace-alert,.whpf-peace-alert p{min-width:0;max-width:100%;overflow-wrap:anywhere}.whpf-peace-alert a{white-space:normal!important;overflow-wrap:anywhere}.whpf-peace-alert{overflow-x:clip}}
/* Mobile controls: below the header, away from Android bottom navigation. */
@media(max-width:800px){
 .whpf-music-control{position:fixed!important;top:calc(112px + env(safe-area-inset-top,0px))!important;bottom:auto!important;right:12px!important;left:auto!important;z-index:9999!important;display:flex;flex-direction:column-reverse;align-items:flex-end}
 .whpf-music-toggle{background:#123b5a!important;color:#fff!important;min-height:44px}
 .whpf-music-control{top:calc(190px + env(safe-area-inset-top,0px))!important}
 .whpf-music-panel{width:200px!important;max-width:calc(100vw - 28px)!important;margin:4px 0 0!important;padding:5px!important}
 .gt_switcher_wrapper,.gtranslate_wrapper:has(>.gt_float_switcher),.gt_float_switcher{position:fixed!important;top:calc(112px + env(safe-area-inset-top,0px))!important;bottom:auto!important;left:12px!important;right:auto!important;max-width:min(160px,calc(100vw - 170px))!important;z-index:9998!important;background:#fff!important;color:#122c3b!important;border-radius:8px!important;padding:5px!important;box-shadow:0 2px 12px #0002!important}
 .gt_switcher_wrapper a,.gt_float_switcher a,.gtranslate_wrapper a{color:#122c3b!important}
 .gt_float_switcher .gt-selected,.gt_float_switcher .gt_options{max-width:100%!important}
 /* Compact single-line language strip; keep flags visible and avoid overlaying hero. */
 .gt_switcher_wrapper,.gt_float_switcher{max-width:calc(100vw - 175px)!important;width:auto!important;white-space:nowrap!important;padding:3px 5px!important}
 .gt_float_switcher .gt_options{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:3px!important;overflow-x:auto!important;max-width:100%!important}
 .gt_float_switcher .gt_options a,.gt_float_switcher .gt-selected a{display:inline-flex!important;align-items:center!important;width:auto!important;white-space:nowrap!important;font-size:0!important;padding:5px!important}
 .gt_float_switcher img,.gt_switcher_wrapper img{display:inline-block!important;width:24px!important;height:auto!important;max-width:none!important}
 .gt_float_switcher .gt-selected{display:inline-flex!important;vertical-align:middle!important}
 .gt_float_switcher .gt-selected a span,.gt_float_switcher .gt_options a span{font-size:0!important}
 .gt_float_switcher .gt_options{box-shadow:none!important;border:0!important}
 /* Solid white backing across every language, including German and Spanish. */
 .gt_float_switcher,.gt_float_switcher .gt-selected,.gt_float_switcher .gt_options,.gt_float_switcher .gt_options a,.gt_float_switcher .gt-selected a,.gt_switcher_wrapper{background:#fff!important;background-color:#fff!important;opacity:1!important}
 .gt_float_switcher{width:max-content!important;max-width:calc(100vw - 24px)!important;overflow:visible!important}
 .gt_float_switcher .gt_options{width:max-content!important;max-width:none!important;overflow:visible!important}
 .gt_float_switcher .gt_options a{color:#122c3b!important}
 .gt_float_switcher .gt_options a:hover{background:#edf5fa!important}
 /* A full-width white band behind the complete language row, independent of plugin's narrow wrapper. */
 .gt_float_switcher::before{content:''!important;display:block!important;position:absolute!important;z-index:-1!important;left:0!important;top:0!important;width:calc(100vw - 24px)!important;height:100%!important;min-height:52px!important;background:#fff!important;border-radius:10px!important;box-shadow:0 2px 12px #0002!important;pointer-events:none!important}
 .gt_float_switcher{isolation:isolate!important;box-shadow:none!important}
 .gt_float_switcher .gt-selected,.gt_float_switcher .gt_options{position:relative!important;z-index:1!important}
 /* FIX: parent wrapper was capped at 160px, leaving later flags outside its white background. */
 .gtranslate_wrapper:has(.gt_float_switcher),.gtranslate_wrapper:has(.gt_switcher),.gt_switcher_wrapper,.gt_float_switcher{max-width:calc(100vw - 24px)!important;width:calc(100vw - 24px)!important;box-sizing:border-box!important;background:#fff!important;border-radius:10px!important}
 .gtranslate_wrapper:has(.gt_float_switcher){overflow:visible!important}
 .gt_float_switcher .gt_options{max-width:100%!important;overflow-x:auto!important;scrollbar-width:none!important}
 .gt_float_switcher .gt_options::-webkit-scrollbar{display:none!important}
 /* Leave visible white padding after the final Spanish label on narrow phones. */
 .gt_float_switcher .gt_options{padding-right:0!important;box-sizing:border-box!important}
 .gt_float_switcher .gt_options a:last-child{margin-right:0!important}
 .gt_float_switcher{padding-right:6px!important}
 /* Fit all four language names within the actual mobile viewport. */
 .gt_float_switcher,.gt_switcher_wrapper{left:8px!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important}
 .gt_float_switcher::before{width:100%!important;min-height:100%!important}
 .gt_float_switcher .gt-selected,.gt_float_switcher .gt_options{display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;gap:0!important;overflow:visible!important}
 .gt_float_switcher .gt_options a,.gt_float_switcher .gt-selected a{font-size:clamp(10px,2.7vw,13px)!important;padding:4px 2px!important;letter-spacing:-.02em!important}
 .gt_float_switcher .gt-selected a span,.gt_float_switcher .gt_options a span{font-size:inherit!important}
 .gt_float_switcher img,.gt_switcher_wrapper img{width:clamp(18px,5vw,24px)!important;margin-right:3px!important}
 .gt_float_switcher .gt-selected{flex-shrink:0!important}
}


/* Peacilu homepage introduction */
.whpf-peacilu-feature{background:linear-gradient(125deg,#edf9ff,#fff9e8);padding:clamp(28px,4vw,62px) 18px;color:#143b5a}
.whpf-peacilu-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(24px,4vw,56px)}
.whpf-peacilu-copy{text-align:center;min-width:0}
.whpf-peacilu-eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;color:#24577a;margin:0 0 14px}
.whpf-peacilu-mark{display:block;width:min(100%,360px);max-height:160px;object-fit:contain;margin:0 auto 10px;border-radius:12px}
.whpf-peacilu-copy h2{font-family:Georgia,'Times New Roman',serif!important;color:#123b72;font-size:clamp(30px,4vw,52px);margin:8px 0}
.whpf-peacilu-copy p:not(.whpf-peacilu-eyebrow){font-size:clamp(16px,1.5vw,20px);line-height:1.55;margin:10px auto 18px;max-width:460px}
.whpf-peacilu-link{display:inline-block;background:#123b72;color:white!important;padding:13px 20px;border-radius:10px;text-decoration:none;font-weight:700;line-height:1.4}
.whpf-peacilu-link:focus-visible{outline:3px solid #c07d14;outline-offset:3px}
.whpf-peacilu-film{min-width:0}
.whpf-peacilu-film video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#102c48;border-radius:16px;box-shadow:0 12px 34px #17345a20}
.whpf-peacilu-film p{text-align:center;font:16px/1.5 Georgia,serif;color:#284a63;margin:12px 0 0}
@media(max-width:800px){.whpf-peacilu-inner{grid-template-columns:minmax(0,1fr);gap:20px}.whpf-peacilu-mark{max-height:130px}.whpf-peacilu-feature{padding:32px 14px}}
