/* PublicHealth theme styles (merged from the static pages). Tailwind utilities come from the CDN (see header.php). */

/* --- from index.html --- */
html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;line-height:1.6}h1,h2,h3{font-family:'Plus Jakarta Sans',Inter,sans-serif}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-2{-webkit-line-clamp:2}.mega{display:none}.has-mega:hover .mega{display:block}.nphi-hero-grid{background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M40 0v80M0 40h80'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.nphi-hero-full{min-height:calc(100vh - 64px);display:flex;flex-direction:column}.nphi-hero-full>.hero-fill{flex:1;display:flex;align-items:center}@media (max-width:767px){.nphi-hero-full{min-height:calc(100vh - 64px)}}.search-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);z-index:9998;align-items:flex-start;justify-content:center;padding-top:120px}.search-overlay.active{display:flex}.search-overlay-box{background:#fff;border-radius:12px;padding:8px;width:90%;max-width:640px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);display:flex;align-items:center;animation:nphiSlideDown .3s ease}@keyframes nphiSlideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.search-overlay-box input{flex:1;border:none;padding:18px 22px;font-size:1.1rem;font-family:inherit;outline:none;background:transparent;min-width:0}.search-overlay-box button{width:50px;height:50px;background:#1a6b6b;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.search-overlay-box button:hover{background:#115252}.nphi-partners{position:relative;z-index:2;background:linear-gradient(180deg,transparent,rgba(0,0,0,.28));border-top:1px solid rgba(255,255,255,.08);padding:20px 0;overflow:hidden}.nphi-marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.nphi-track{display:flex;align-items:center;gap:0;animation:nphiMarquee 32s linear infinite;width:max-content;will-change:transform}.nphi-track>.nphi-item{margin-right:52px}.nphi-track:hover{animation-play-state:paused}.nphi-section{padding:56px 0 90px}.nphi-sec-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:48px;gap:24px}.nphi-sec-label{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#e8652a;margin-bottom:10px}.nphi-sec-label::before{content:"";width:28px;height:3px;background:#e8652a;border-radius:2px}.nphi-sec-head h2{font-size:2.1rem;font-weight:800;color:#111827;letter-spacing:-.02em;margin-bottom:10px}.nphi-sec-head p{font-size:1.02rem;color:#6b7280;max-width:580px;line-height:1.7}.nphi-view-all{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:#1a5c6b;white-space:nowrap;padding:11px 22px;border:1.5px solid #a0dede;border-radius:9999px;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.nphi-view-all:hover{background:#1a5c6b;color:#fff;border-color:#1a5c6b}.nphi-view-all svg{width:.75rem;height:.75rem}.nphi-view-all:hover svg{transform:translateX(4px)}.nphi-view-all-w{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:#fff;white-space:nowrap;padding:11px 22px;border:1.5px solid rgba(255,255,255,.4);border-radius:9999px;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.nphi-view-all-w:hover{background:#fff;color:#0a2e2e;border-color:#fff}.nphi-view-all-w svg{width:.75rem;height:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.nphi-view-all-w:hover svg{transform:translateX(4px)}.nphi-chead{font-size:2.1rem;font-weight:800;color:#111827;letter-spacing:-.02em}@media (max-width:640px){.nphi-chead{font-size:1.65rem}}.nphi-chead-w{font-size:2.1rem;font-weight:800;color:#fff;letter-spacing:-.02em}@media (max-width:640px){.nphi-chead-w{font-size:1.65rem}}.nphi-hero-h1{font-size:3.2rem;font-weight:800;line-height:1.12;letter-spacing:-.03em}@media (max-width:1024px){.nphi-hero-h1{font-size:2.6rem}}@media (max-width:768px){.nphi-hero-h1{font-size:2rem}}@media (max-width:480px){.nphi-hero-h1{font-size:1.7rem}}.nphi-orgsec{background:#f9fafb;padding:90px 0}.org-experts-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.panel-card{background:#fff;border-radius:20px;border:1px solid #e5e7eb;overflow:hidden}.panel-card-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border-bottom:1px solid #f3f4f6}.panel-card-header h3{font-size:1.08rem;font-weight:700;color:#111827}.view-link{font-size:.82rem;font-weight:600;color:#1a5c6b;display:inline-flex;align-items:center;gap:4px;text-decoration:none}.view-link:hover{color:#0f3d4a}.view-link svg{width:.75rem;height:.75rem}.org-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px}.org-card-v{padding:24px 18px;border:1px solid #e5e7eb;border-radius:14px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.org-card-v:hover{border-color:#5ec4c4;box-shadow:0 4px 6px -1px rgba(0,0,0,.07);transform:translateY(-3px)}.org-card-v .org-logo{width:56px;height:56px;margin:0 auto 12px;border-radius:10px;display:flex;align-items:center;justify-content:center}.org-card-v .org-logo svg{width:1.4rem;height:1.4rem}.org-logo.blue{background:#e8f0fe;color:#1a73e8}.org-logo.red{background:#fce8e6;color:#ea4335}.org-logo.green{background:#e6f4ea;color:#34a853}.org-logo.purple{background:#f3e8fd;color:#9c27b0}.org-logo.orange{background:#fef3e2;color:#f57c00}.org-logo.teal{background:#d4f0f0;color:#1a5c6b}.org-card-v h4{font-size:.82rem;font-weight:600;color:#1f2937;margin-bottom:3px;line-height:1.3}.org-card-v p{font-size:.72rem;color:#6b7280}.experts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px}.expert-card-v{padding:24px 16px;border:1px solid #e5e7eb;border-radius:14px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.expert-card-v:hover{border-color:#5ec4c4;box-shadow:0 4px 6px -1px rgba(0,0,0,.07);transform:translateY(-3px)}.expert-avatar{width:62px;height:62px;border-radius:9999px;margin:0 auto 12px;overflow:hidden;background:#d4f0f0;display:flex;align-items:center;justify-content:center;color:#1a6b6b;border:3px solid #d4f0f0}.expert-avatar svg{width:1.4rem;height:1.4rem}.expert-card-v h4{font-size:.85rem;font-weight:700;color:#1f2937;margin-bottom:3px}.expert-role{font-size:.72rem;color:#1a5c6b;font-weight:600;margin-bottom:5px}.expert-location{font-size:.72rem;color:#6b7280;display:flex;align-items:center;justify-content:center;gap:4px}.expert-location svg{width:.7rem;height:.7rem}@media (max-width:768px){.org-experts-grid{grid-template-columns:1fr}}@media (max-width:768px){.nphi-orgsec{padding:60px 0}}@media (max-width:480px){.org-grid,.experts-grid{grid-template-columns:1fr}}.nphi-footer{background:linear-gradient(180deg,#0a2535 0%,#071d2b 100%);color:#a0dede;padding-top:80px}.nphi-footer .footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.07)}.footer-col h4{font-size:.85rem;font-weight:700;color:#fff;margin-bottom:22px;text-transform:uppercase;letter-spacing:.08em}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col ul li{margin-bottom:12px}.footer-col ul li a{font-size:.88rem;color:#5ec4c4;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;text-decoration:none}.footer-col ul li a:hover{color:#fff;transform:translateX(4px)}.footer-contact li{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;font-size:.88rem;color:#5ec4c4}.footer-contact svg{color:#2ba3a3;margin-top:3px;width:16px;height:16px;flex-shrink:0}.footer-contact li a{color:#5ec4c4;text-decoration:none}.footer-contact li a:hover{color:#fff}.footer-contact li{align-items:center}.footer-contact .fbox{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:auto;height:auto;background:transparent;border-radius:0}.footer-contact .fbox svg{color:#2ba3a3;width:16px;height:16px;margin:0}.nphi-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:28px 0;font-size:.82rem;color:#2ba3a3}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:10px 28px}.footer-bottom-links a{color:#2ba3a3;text-decoration:none}.footer-bottom-links a:hover{color:#fff}@media (max-width:1024px){.nphi-footer .footer-main{grid-template-columns:repeat(2,1fr);gap:36px}}@media (max-width:768px){.nphi-footer .footer-main{grid-template-columns:1fr;gap:36px}.nphi-footer .footer-bottom{flex-direction:column;gap:14px;text-align:center}.footer-bottom-links{justify-content:center}}.nphi-evsec{background:#fff;padding:90px 0}.events-calendar-layout{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start}.events-vertical-list{display:flex;flex-direction:column;gap:24px}.event-card-v{background:#fff;border-radius:14px;border:1px solid #e5e7eb;padding:28px;display:flex;gap:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.event-card-v:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.08);border-color:#a0dede;transform:translateY(-3px)}.event-date-block{width:72px;height:80px;background:#1a5c6b;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.event-date-block .ev-month{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;line-height:1}.event-date-block .ev-day{font-size:1.6rem;font-weight:800;line-height:1.1;margin-top:2px}.event-card-v .ev-content{flex:1;min-width:0}.event-type-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:9999px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.event-type-badge svg,.event-type-badge i{width:.7rem;height:.7rem}.type-webinar{background:#dbeafe;color:#2563eb}.type-workshop{background:#dcfce7;color:#16a34a}.type-conference{background:#fef3c7;color:#d97706}.event-card-v .ev-content h4{font-size:1.05rem;font-weight:700;color:#111827;margin-bottom:10px;line-height:1.35}.event-details-v{display:flex;flex-wrap:wrap;gap:16px;font-size:.82rem;color:#6b7280}.event-details-v span{display:inline-flex;align-items:center;gap:6px}.event-details-v svg,.event-details-v i{color:#9ca3af;width:.75rem;height:.75rem}.event-card-v .ev-action{display:flex;align-items:center;flex-shrink:0}.ev-register-btn{width:44px;height:44px;background:#1a5c6b;color:#fff;border:none;border-radius:9999px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.ev-register-btn svg,.ev-register-btn i{width:.9rem;height:.9rem}.ev-register-btn:hover{background:#0f3d4a;transform:scale(1.1)}.intl-days-sidebar{position:sticky;top:100px}.intl-days-card{background:#fff;border-radius:20px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.07)}.intl-days-header{background:#fff;color:#0a2e2e;padding:14px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #e5e7eb}.intl-days-header h3{font-size:1.1rem;font-weight:700;color:#0a2e2e}.intl-days-header .arrow-circle{width:32px;height:32px;background:#eef8f8;color:#1a6b6b;border-radius:9999px;display:flex;align-items:center;justify-content:center}.intl-days-header .arrow-circle svg,.intl-days-header .arrow-circle i{width:.8rem;height:.8rem}.intl-days-list{padding:8px 0}.intl-day-item{display:flex;align-items:center;gap:18px;padding:18px 24px;border-bottom:1px solid #f3f4f6}.intl-day-item:last-child{border-bottom:none}.intl-day-item:hover{background:#f9fafb}.intl-day-date{width:62px;height:72px;background:#1a6b6b;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.intl-day-date .id-day{font-size:1.5rem;font-weight:800;line-height:1}.intl-day-date .id-month{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-top:2px}.intl-day-info h4{font-size:.88rem;font-weight:600;color:#1f2937;line-height:1.4;margin-bottom:3px}.intl-day-info .day-remaining{font-size:.76rem;color:#6b7280}.intl-day-info .day-remaining.today{color:#1a6b6b;font-weight:600}.nphi-ressec{background:#f9fafb;padding:90px 0}.resources-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:48px}.resource-card{display:flex;align-items:flex-start;gap:18px;padding:28px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.resource-card:hover{border-color:#5ec4c4;box-shadow:0 4px 6px -1px rgba(0,0,0,.07);transform:translateY(-2px)}.resource-card .res-icon{width:52px;height:52px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.resource-card .res-icon svg,.resource-card .res-icon i{width:1.15rem;height:1.15rem}.res-icon.publications{background:#e8f0fe;color:#1a73e8}.res-icon.guidelines{background:#e6f4ea;color:#34a853}.res-icon.tools{background:#fef3e2;color:#f57c00}.res-icon.data{background:#f3e8fd;color:#9c27b0}.resource-card h4{font-size:.92rem;font-weight:700;color:#1f2937;margin-bottom:4px}.resource-card p{font-size:.8rem;color:#6b7280;line-height:1.5}.newsletter{background:linear-gradient(135deg,#eef8f8,#d4f0f0);border:1px solid #a0dede;border-radius:20px;padding:44px 48px;display:flex;align-items:center;gap:44px}.newsletter .nl-icon{width:68px;height:68px;background:#1a5c6b;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.newsletter .nl-icon svg,.newsletter .nl-icon i{width:1.6rem;height:1.6rem}.newsletter .nl-content{flex:1}.newsletter .nl-content h3{font-size:1.25rem;font-weight:700;color:#0d3d3d;margin-bottom:5px}.newsletter .nl-content p{font-size:.92rem;color:#4b5563}.newsletter .nl-form{display:flex;gap:14px;flex-shrink:0}.newsletter .nl-form input{padding:13px 22px;border:1.5px solid #a0dede;border-radius:9999px;font-size:.92rem;font-family:inherit;outline:none;width:300px;background:#fff}.newsletter .nl-form input:focus{border-color:#228585;box-shadow:0 0 0 3px rgba(34,133,133,.1)}.newsletter .nl-form button{padding:13px 30px;background:#e8652a;color:#fff;border:none;border-radius:9999px;font-size:.92rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap}.newsletter .nl-form button:hover{background:#f07a42}@media (max-width:1024px){.events-calendar-layout{grid-template-columns:1fr}.intl-days-sidebar{position:static}.resources-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.nphi-evsec,.nphi-ressec{padding:60px 0}.resources-grid{grid-template-columns:1fr}.newsletter{flex-direction:column;text-align:center;padding:32px 24px}.newsletter .nl-form{flex-direction:column;width:100%}.newsletter .nl-form input{width:100%}}.nphi-news-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}.nphi-featured{border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.07),0 2px 4px -2px rgba(0,0,0,.05);transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #e5e7eb}.nphi-featured:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.08),0 8px 10px -6px rgba(0,0,0,.04);transform:translateY(-4px)}.nphi-featured .nf-img{height:340px;position:relative;overflow:hidden;background:#d4f0f0}.nphi-featured .nf-img img{width:100%;height:100%;object-fit:cover}.nphi-featured .nf-tag{position:absolute;top:18px;left:18px;background:#1a5c6b;color:#fff;padding:6px 16px;border-radius:9999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.nphi-featured .nf-body{padding:32px}.nphi-meta{display:flex;align-items:center;gap:18px;margin-bottom:14px;font-size:.82rem;color:#6b7280}.nphi-meta span{display:inline-flex;align-items:center;gap:6px}.nphi-meta svg{width:.72rem;height:.72rem;color:#9ca3af}.nphi-featured .nf-body h3{font-size:1.4rem;font-weight:700;color:#111827;margin-bottom:12px;line-height:1.35}.nphi-featured .nf-body h3 a{color:inherit;text-decoration:none}.nphi-featured .nf-body h3 a:hover{color:#1a5c6b}.nphi-featured .nf-body p{font-size:.92rem;color:#4b5563;line-height:1.75;margin-bottom:18px}.nphi-read{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:#1a5c6b;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.nphi-read:hover{color:#0f3d4a;gap:12px}.nphi-read svg{width:.85rem;height:.85rem}.nphi-list{display:flex;flex-direction:column;gap:18px}.nphi-news-item{display:flex;gap:18px;padding:18px;background:#fff;border-radius:14px;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1)}.nphi-news-item:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.07);border-color:#a0dede;transform:translateX(4px)}.nphi-news-item .ni-thumb{width:120px;height:96px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#d4f0f0}.nphi-news-item .ni-thumb img{width:100%;height:100%;object-fit:cover}.nphi-news-item .ni-info{flex:1;min-width:0}.nphi-news-item .ni-info h4{font-size:.92rem;font-weight:600;color:#1f2937;margin-bottom:8px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nphi-news-item .ni-info h4 a{color:inherit;text-decoration:none}.nphi-news-item .ni-info h4 a:hover{color:#1a5c6b}.nphi-news-item .ni-info .nphi-meta{margin-bottom:0;font-size:.76rem}@media (max-width:1024px){.nphi-news-grid{grid-template-columns:1fr}.nphi-featured .nf-img{height:260px}}@media (max-width:640px){.nphi-sec-head{flex-direction:column;gap:18px}.nphi-sec-head h2{font-size:1.65rem}.nphi-section{padding:44px 0 60px}}.nphi-item{display:flex;align-items:center;gap:9px;flex-shrink:0;opacity:.92}.nphi-item:hover{opacity:1}.nphi-item .m-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nphi-item .m-name{font-size:.8rem;font-weight:600;color:rgba(255,255,255,.92);white-space:nowrap}@keyframes nphiMarquee{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}@media (max-width:640px){.nphi-track>.nphi-item{margin-right:30px}}

/* --- from about.html --- */
html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;line-height:1.6}h1,h2,h3{font-family:'Plus Jakarta Sans',Inter,sans-serif}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-2{-webkit-line-clamp:2}.mega{display:none}.has-mega:hover .mega{display:block}.search-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);z-index:9998;align-items:flex-start;justify-content:center;padding-top:120px}.search-overlay.active{display:flex}.search-overlay-box{background:#fff;border-radius:12px;padding:8px;width:90%;max-width:640px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);display:flex;align-items:center;animation:nphiSlideDown .3s ease}@keyframes nphiSlideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.search-overlay-box input{flex:1;border:none;padding:18px 22px;font-size:1.1rem;font-family:inherit;outline:none;background:transparent;min-width:0}.search-overlay-box button{width:50px;height:50px;background:#1a6b6b;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.search-overlay-box button:hover{background:#115252}
/* shared unified footer (from homepage) */
.nphi-footer{background:linear-gradient(180deg,#0a2535 0%,#071d2b 100%);color:#a0dede;padding-top:80px}.nphi-footer .footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.07)}.footer-col h4{font-size:.85rem;font-weight:700;color:#fff;margin-bottom:22px;text-transform:uppercase;letter-spacing:.08em}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col ul li{margin-bottom:12px}.footer-col ul li a{font-size:.88rem;color:#5ec4c4;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;text-decoration:none}.footer-col ul li a:hover{color:#fff;transform:translateX(4px)}.footer-contact li{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;font-size:.88rem;color:#5ec4c4}.footer-contact svg{color:#2ba3a3;margin-top:3px;width:16px;height:16px;flex-shrink:0}.footer-contact li a{color:#5ec4c4;text-decoration:none}.footer-contact li a:hover{color:#fff}.footer-contact li{align-items:center}.footer-contact .fbox{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:auto;height:auto;background:transparent;border-radius:0}.footer-contact .fbox svg{color:#2ba3a3;width:16px;height:16px;margin:0}.nphi-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:28px 0;font-size:.82rem;color:#2ba3a3}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:10px 28px}.footer-bottom-links a{color:#2ba3a3;text-decoration:none}.footer-bottom-links a:hover{color:#fff}@media (max-width:1024px){.nphi-footer .footer-main{grid-template-columns:repeat(2,1fr);gap:36px}}@media (max-width:768px){.nphi-footer .footer-main{grid-template-columns:1fr;gap:36px}.nphi-footer .footer-bottom{flex-direction:column;gap:14px;text-align:center}.footer-bottom-links{justify-content:center}}

/* --- from news.html --- */
html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;line-height:1.6}h1,h2,h3{font-family:'Plus Jakarta Sans',Inter,sans-serif}.line-clamp-1,.line-clamp-2,.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.mega{display:none}.has-mega:hover .mega{display:block}.search-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);z-index:9998;align-items:flex-start;justify-content:center;padding-top:120px}.search-overlay.active{display:flex}.search-overlay-box{background:#fff;border-radius:12px;padding:8px;width:90%;max-width:640px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);display:flex;align-items:center;animation:nphiSlideDown .3s ease}@keyframes nphiSlideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.search-overlay-box input{flex:1;border:none;padding:18px 22px;font-size:1.1rem;font-family:inherit;outline:none;background:transparent;min-width:0}.search-overlay-box button{width:50px;height:50px;background:#1a6b6b;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.search-overlay-box button:hover{background:#115252}
/* shared unified footer (from homepage) */
.nphi-footer{background:linear-gradient(180deg,#0a2535 0%,#071d2b 100%);color:#a0dede;padding-top:80px}.nphi-footer .footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.07)}.footer-col h4{font-size:.85rem;font-weight:700;color:#fff;margin-bottom:22px;text-transform:uppercase;letter-spacing:.08em}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col ul li{margin-bottom:12px}.footer-col ul li a{font-size:.88rem;color:#5ec4c4;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;text-decoration:none}.footer-col ul li a:hover{color:#fff;transform:translateX(4px)}.footer-contact li{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;font-size:.88rem;color:#5ec4c4}.footer-contact svg{color:#2ba3a3;margin-top:3px;width:16px;height:16px;flex-shrink:0}.footer-contact li a{color:#5ec4c4;text-decoration:none}.footer-contact li a:hover{color:#fff}.footer-contact li{align-items:center}.footer-contact .fbox{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:auto;height:auto;background:transparent;border-radius:0}.footer-contact .fbox svg{color:#2ba3a3;width:16px;height:16px;margin:0}.nphi-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:28px 0;font-size:.82rem;color:#2ba3a3}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:10px 28px}.footer-bottom-links a{color:#2ba3a3;text-decoration:none}.footer-bottom-links a:hover{color:#fff}@media (max-width:1024px){.nphi-footer .footer-main{grid-template-columns:repeat(2,1fr);gap:36px}}@media (max-width:768px){.nphi-footer .footer-main{grid-template-columns:1fr;gap:36px}.nphi-footer .footer-bottom{flex-direction:column;gap:14px;text-align:center}.footer-bottom-links{justify-content:center}}

/* --- homepage dynamic: premium badges (matches static card design) --- */
.nphi-featured .nf-premium{position:absolute;top:18px;right:18px;background:#7c3aed;color:#fff;padding:6px 14px;border-radius:9999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:6px}
.nphi-featured .nf-premium svg{width:.72rem;height:.72rem}
.ph-lock{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;color:#7c3aed;text-transform:uppercase;letter-spacing:.04em}
.ph-lock svg{width:.72rem;height:.72rem}
.nphi-news-item .ni-thumb{display:flex;align-items:center;justify-content:center;color:#5b8a8a}
.nphi-news-item .ni-thumb svg{width:1.5rem;height:1.5rem}

/* --- hero: fixed first-screen + overlay alert (no layout shift) --- */
.nphi-hero-full{position:relative;min-height:calc(100vh - 64px);min-height:calc(100svh - 64px);display:flex;flex-direction:column;overflow:hidden}
.nphi-hero-full>.hero-fill{flex:1;display:flex;align-items:center;width:100%}
.nphi-hero-alert{position:absolute;top:12px;left:0;right:0;z-index:30;pointer-events:none;padding:0 1rem}
.nphi-hero-alert__inner{pointer-events:auto;max-width:56rem;margin:0 auto;display:flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px);color:#fff;border-radius:9999px;padding:.45rem .5rem .45rem .9rem;font-size:.82rem;line-height:1.4;box-shadow:0 8px 24px -8px rgba(0,0,0,.35)}
.nphi-hero-alert__badge{flex-shrink:0;font-weight:800;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;background:#fff;color:#0f3d4a;border-radius:9999px;padding:.2rem .6rem}
.nphi-hero-alert__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nphi-hero-alert__text a{font-weight:700;text-decoration:underline;text-underline-offset:2px;color:#fff}
.nphi-hero-alert__text a:hover{color:#d4f0f0}
.nphi-hero-alert__close{flex-shrink:0;width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;border:0;background:transparent;color:#d4f0f0;cursor:pointer}
.nphi-hero-alert__close:hover{background:rgba(255,255,255,.2);color:#fff}
.nphi-hero-alert__close svg{width:.9rem;height:.9rem}
.nphi-hero-alert.is-hidden{display:none}
@media (max-width:640px){.nphi-hero-alert{top:8px}.nphi-hero-alert__text{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}
/* --- partners: dynamic logos + static chip fallback share one track --- */
.nphi-item.has-logo{gap:0;opacity:1;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;display:flex;align-items:center;justify-content:center}
.nphi-item.has-logo .m-logo{width:auto;height:48px;min-width:0;max-width:200px;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible;flex-shrink:0;background:transparent;display:flex;align-items:center;justify-content:center}
.nphi-item.has-logo .m-logo img{width:auto;height:100%;max-width:200px;object-fit:contain}
.nphi-item .m-logo{width:auto;height:48px;min-width:0;max-width:200px;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible;flex-shrink:0;background:transparent;display:flex;align-items:center;justify-content:center}
.nphi-item .m-logo img{width:auto;height:100%;max-width:200px;object-fit:contain}
.nphi-item.has-logo a.m-link{display:flex;align-items:center;gap:0;color:inherit;text-decoration:none}
.nphi-item a.m-link{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none}
/* --- fluent newsletter embed inside the homepage subscribe strip --- */
.nl-form-fluent{flex-shrink:0;width:100%;max-width:430px}
.nl-form-fluent .fluentform{margin:0}
/* --- smart sticky header: hide on scroll down, show on scroll up (transform only, no layout shift) --- */
#siteHeader{transition:transform .32s ease,box-shadow .3s ease}
#siteHeader.nphi-header-hidden{transform:translateY(-110%)}
/* --- back to top --- */
.nphi-to-top{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;width:2.75rem;height:2.75rem;border-radius:9999px;border:0;background:#1a6b6b;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px -5px rgba(0,0,0,.3);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease,visibility .3s}
.nphi-to-top:hover{background:#115252}
.nphi-to-top.is-visible{opacity:1;visibility:visible;transform:none}
.nphi-to-top svg{width:1.25rem;height:1.25rem}.nphi-evsec--dark{position:relative;overflow:hidden;background:radial-gradient(ellipse 80% 60% at 70% 40%,rgba(42,163,163,.18) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 20% 80%,rgba(232,119,42,.08) 0%,transparent 50%),linear-gradient(160deg,#0a2e2e 0%,#0f3d4a 48%,#155e5e 100%);padding:70px 0}.nphi-evsec--dark::before{content:"";position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M40 0v80M0 40h80'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.nphi-evsec--dark>div{position:relative;z-index:1}.nphi-evsec--dark .nphi-sec-label{color:#f07a42}.nphi-evsec--dark .nphi-sec-label::before{background:#f07a42}.nphi-evsec--dark .nphi-sec-head h2{color:#fff}.nphi-evsec--dark .nphi-sec-head p{color:rgba(255,255,255,.78)}.nphi-evsec--dark .events-calendar-layout{align-items:start}.nphi-evsec--dark .events-vertical-list{height:100%;display:flex;flex-direction:column;gap:22px}.nphi-evsec--dark .event-featured{background:#fff;border:1.5px solid #16a34a;box-shadow:0 14px 30px -10px rgba(22,163,74,.4),0 4px 14px -6px rgba(0,0,0,.3);padding:30px;align-items:center}.nphi-evsec--dark .event-featured:hover{transform:translateY(-3px);border-color:#16a34a;box-shadow:0 20px 36px -12px rgba(22,163,74,.45),0 8px 18px -8px rgba(0,0,0,.35)}.nphi-evsec--dark .event-featured .event-date-block{background:#16a34a;width:84px;height:92px}.nphi-evsec--dark .event-featured .event-date-block .ev-day{font-size:1.9rem}.nphi-evsec--dark .event-featured .ev-content h4,.nphi-evsec--dark .event-featured .ev-content h4 a{color:#111827;font-size:1.15rem}.nphi-evsec--dark .event-featured .ev-register-btn{background:#16a34a;width:50px;height:50px}.nphi-evsec--dark .event-featured .ev-register-btn:hover{background:#15803d}.ev-next-pill{display:inline-flex;align-items:center;gap:6px;background:#16a34a;color:#fff;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:9999px;margin-bottom:8px}.ev-next-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.nphi-evsec--dark .event-past{background:#f4f7f7;border:1px solid #e5e7eb;box-shadow:0 3px 10px -6px rgba(0,0,0,.3);padding:20px 24px;align-items:center}.nphi-evsec--dark .event-past:hover{background:#fff;border-color:#a0dede;transform:translateY(-2px)}.nphi-evsec--dark .event-past .event-date-block{background:#1a6b6b;width:64px;height:72px}.nphi-evsec--dark .event-past .event-date-block .ev-day{font-size:1.4rem}.nphi-evsec--dark .event-past .ev-content h4,.nphi-evsec--dark .event-past .ev-content h4 a{color:#374151;font-size:.95rem}.nphi-evsec--dark .event-past .event-details-v{font-size:.78rem}.nphi-evsec--dark .event-details-v{color:#6b7280}.nphi-evsec--dark .event-details-v svg,.nphi-evsec--dark .event-details-v i{color:#9ca3af}.nphi-evsec--dark .type-webinar{background:#dbeafe;color:#2563eb}.nphi-evsec--dark .type-workshop{background:#dcfce7;color:#16a34a}.nphi-evsec--dark .type-conference{background:#fef3c7;color:#d97706}.nphi-evsec--dark .intl-days-sidebar{height:100%}.nphi-evsec--dark .intl-days-card{background:#fff;border:1px solid #e5e7eb;box-shadow:0 4px 14px -6px rgba(0,0,0,.35);height:100%;display:flex;flex-direction:column;overflow:hidden}.nphi-evsec--dark .intl-days-header{background:#fff;color:#0a2e2e;padding:14px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #e5e7eb}.nphi-evsec--dark .intl-days-header h3{color:#0a2e2e}.nphi-evsec--dark .intl-cal-icon{width:44px;height:44px;background:#d4f0f0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#1a6b6b}.nphi-evsec--dark .intl-cal-icon svg,.nphi-evsec--dark .intl-cal-icon i{width:20px;height:20px}.nphi-evsec--dark .intl-days-list{flex:1 1 auto;display:flex;flex-direction:column;padding:6px 0;background:#fff}.nphi-evsec--dark .intl-day-item{border-bottom:1px solid #f3f4f6;padding:14px 22px;background:#fff}.nphi-evsec--dark .intl-day-item:last-child{border-bottom:none}.nphi-evsec--dark .intl-day-item:hover{background:#f9fafb}.nphi-evsec--dark .intl-day-thumb{width:56px;height:56px;border-radius:50%;flex-shrink:0;background:#eef8f8;border:1px solid #a0dede;display:flex;align-items:center;justify-content:center;color:#1a6b6b;overflow:hidden}.nphi-evsec--dark .intl-day-thumb svg,.nphi-evsec--dark .intl-day-thumb i{width:1.3rem;height:1.3rem}.nphi-evsec--dark .intl-day-thumb img{width:100%;height:100%;object-fit:cover}.nphi-evsec--dark .day-meta{display:flex;align-items:center;gap:8px;margin-top:4px}.nphi-evsec--dark .day-date{font-size:.72rem;font-weight:700;color:#1a6b6b;text-transform:uppercase;letter-spacing:.06em}.nphi-evsec--dark .intl-day-first{background:#f0fdf4;padding:16px 22px}.nphi-evsec--dark .intl-day-first:hover{background:#e9f9ef}.nphi-evsec--dark .intl-day-first .intl-day-thumb{width:64px;height:64px;border:1.5px solid #16a34a;box-shadow:0 4px 12px -4px rgba(22,163,74,.4)}.nphi-evsec--dark .intl-day-first .intl-day-info h4{font-size:.95rem}.nphi-evsec--dark .intl-day-info h4{color:#1f2937}.nphi-evsec--dark .intl-day-info .day-remaining{color:#6b7280}.nphi-evsec--dark .intl-day-info .day-remaining.today{color:#1a6b6b;font-weight:700}@media (min-width:1025px) and (max-height:850px){.nphi-evsec--dark{padding:48px 0}.nphi-evsec--dark .nphi-sec-head{margin-bottom:28px}.nphi-evsec--dark .event-featured{padding:22px}.nphi-evsec--dark .event-featured .event-date-block{width:72px;height:80px}.nphi-evsec--dark .event-past{padding:14px 20px}.nphi-evsec--dark .intl-days-header{padding:14px 20px}.nphi-evsec--dark .intl-day-item{padding:10px 20px}.nphi-evsec--dark .intl-day-thumb{width:48px;height:48px}.nphi-evsec--dark .intl-day-first .intl-day-thumb{width:56px;height:56px}}@media (max-width:1024px){.nphi-evsec--dark .events-vertical-list,.nphi-evsec--dark .intl-days-sidebar,.nphi-evsec--dark .intl-days-card{height:auto}}@media (max-width:768px){.nphi-evsec--dark{padding:56px 0}}
/* --- homepage: news list rows share the featured card height equally --- */
.nphi-news-grid{align-items:stretch}
.nphi-list{height:100%}
.nphi-list .nphi-news-item{flex:1 1 0;min-height:0;align-items:center}
.nphi-list .nphi-news-item .ni-thumb{align-self:stretch;height:auto;min-height:76px}
@media (max-width:1024px){.nphi-list{height:auto}.nphi-list .nphi-news-item{flex:none}.nphi-list .nphi-news-item .ni-thumb{align-self:center;height:96px}}
/* --- directory cards: uploaded logos fill the chip, icon chip stays the fallback --- */
.org-card-v .org-logo{overflow:hidden}
.org-card-v .org-logo img{width:100%;height:100%;object-fit:cover}
/* --- hero: full-viewport first screen, partners strip lives below the fold --- */
.nphi-hero-full{min-height:calc(100vh - 64px);min-height:calc(100svh - 64px);display:flex;flex-direction:column}
.nphi-hero-full>.hero-fill{flex:1;display:flex;align-items:center;width:100%}
/* --- hero partners: light "Trusted by" strip (matches reference screenshot) --- */
.nphi-partners{position:relative;z-index:2;padding:26px 0 30px;overflow:hidden;background:radial-gradient(ellipse 60% 90% at 50% 0%,rgba(255,255,255,.9) 0%,transparent 60%),linear-gradient(180deg,#e9f1f8 0%,#eef4fa 45%,#f4f8fc 100%);border-top:1px solid rgba(15,61,74,.08)}
.nphi-partners::before{content:"";position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='72' height='72' viewBox='0 0 72 72' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%230f3d4a' fill-opacity='0.05'%3E%3Cpath d='M36 0v72M0 36h72'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.nphi-partners>div{position:relative;z-index:1}
.nphi-partners-label{margin:0 0 18px;text-align:center;font-size:1.02rem;font-weight:500;color:#4f6b7a}
.nphi-partners .nphi-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.nphi-partners .nphi-track>.nphi-item{margin-right:72px}
.nphi-partners .nphi-item .m-name{color:#334e5c}
.nphi-partners .nphi-item.has-logo .m-logo,.nphi-partners .nphi-item .m-logo{height:52px;max-width:220px}
.nphi-partners .nphi-item.has-logo .m-logo img,.nphi-partners .nphi-item .m-logo img{max-width:220px}
@media (max-width:640px){.nphi-partners{padding:18px 0 20px}.nphi-partners-label{font-size:.92rem;margin-bottom:12px}.nphi-partners .nphi-track>.nphi-item{margin-right:36px}}
/* PH-FIXPACK 2026-10: click/keyboard nav, responsive + a11y guards (single source; overrides merged statics above) */
.has-mega.is-open>.mega,.phu-has-mega.is-open>.mega{display:block}
.has-mega:focus-within>.mega,.phu-has-mega:focus-within>.mega{display:block}
.mega{max-width:calc(100vw - 2rem)}
.phu-has-mega:last-child>.mega,.has-mega:last-child>.mega{left:auto;right:0}
.ph-search-close{width:50px;height:50px;background:transparent;color:#1a6b6b;border:0;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ph-search-close:hover{background:#eef8f8}
img{max-width:100%}
.nphi-news-grid img,.course-card img{height:auto}
.font-mono{overflow-wrap:anywhere}
.break-words{overflow-wrap:break-word}
.search-overlay{padding-left:1rem;padding-right:1rem}
.search-overlay .ph-search-suggest{max-height:min(60vh,420px);overflow-y:auto}
@media (max-height:500px){.search-overlay{padding-top:40px}}
@media (max-width:1024px){.nphi-footer .footer-main{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.nphi-footer .footer-main{grid-template-columns:repeat(2,1fr);gap:28px}}
@media (max-width:480px){.nphi-footer .footer-main{grid-template-columns:1fr}}
@media print{.search-overlay,#siteHeader .mega,#nphiToTop,.nphi-hero-alert{display:none!important}#siteHeader{position:static}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.search-overlay-box{animation:none}.nphi-marquee,.nphi-track{animation:none!important}}
/* PH-HEADER 2026-10: account menu — themed gradient avatar (initials fallback + overlay photo), larger touch targets */
.ph-userpic{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;overflow:hidden;background:linear-gradient(135deg,#228585,#0d3d3d);color:#fff;font-weight:800;flex-shrink:0;line-height:1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35),0 1px 2px rgba(13,61,61,.25)}
.ph-userpic--t0{background:linear-gradient(135deg,#228585,#0d3d3d)}
.ph-userpic--t1{background:linear-gradient(135deg,#2ba3a3,#1a6b6b)}
.ph-userpic--t2{background:linear-gradient(135deg,#34a853,#115252)}
.ph-userpic--t3{background:linear-gradient(135deg,#1a73e8,#0d3d3d)}
.ph-userpic--t4{background:linear-gradient(135deg,#9c27b0,#0d3d3d)}
.ph-userpic.is-premium{box-shadow:inset 0 0 0 2px rgba(255,255,255,.5),0 0 0 2px #f2d06e,0 1px 3px rgba(13,61,61,.3)}
.ph-userpic__fallback{font-size:1em;letter-spacing:.02em;user-select:none;color:#fff;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.1em;line-height:1}
.ph-userpic__icon{width:.9em;height:.9em;opacity:.9}
.ph-userpic__icon svg{width:100%;height:100%}
.ph-userpic__initials{font-size:.62em;font-weight:800;letter-spacing:.04em;line-height:1}
.ph-userpic--noimg .ph-userpic__fallback{gap:.12em}
.ph-userpic__img{position:absolute!important;inset:0;width:100%!important;height:100%!important;display:block;object-fit:cover;border-radius:9999px}
/* Minimal navbar account dropdown: Dashboard + Logout only. */
.ph-account-menu{width:12rem;max-width:calc(100vw - 2rem);padding:.5rem}
.ph-account-trigger:focus-visible{outline:2px solid #228585;outline-offset:2px}
.phu-has-mega.is-open>.ph-account-trigger svg{transform:rotate(180deg)}
/* PH-FIX 2026-10: Fluent Forms submit buttons -> theme primary teal (#1a6b6b).
   Fluent ships blue (#007bff) which clashes with the theme; force teal site-wide
   (homepage newsletter id=2, contact id=1, and any future form). */
:root{--fluentform-primary:#1a6b6b}
.fluentform .ff-btn-submit,
.fluentform button.ff-btn-submit,
.fluentform button[type="submit"].ff-btn,
.fluentform .ff-btn.ff-btn-primary,
.ff-default .ff-btn-primary:not(.ff_btn_no_style),
.frm-fluent-form .ff_submit_btn_wrapper button,
.frm-fluent-form button.ff-btn-submit{background-color:#1a6b6b!important;border-color:#1a6b6b!important;color:#fff!important;box-shadow:none!important}
.fluentform .ff-btn-submit:hover,
.fluentform button.ff-btn-submit:hover,
.fluentform button[type="submit"].ff-btn:hover,
.fluentform .ff-btn.ff-btn-primary:hover,
.ff-default .ff-btn-primary:not(.ff_btn_no_style):hover,
.frm-fluent-form .ff_submit_btn_wrapper button:hover,
.frm-fluent-form button.ff-btn-submit:hover{background-color:#115252!important;border-color:#115252!important;color:#fff!important;opacity:1!important}
.fluentform .ff-btn-submit:focus-visible,
.fluentform button[type="submit"]:focus-visible{outline:2px solid #228585!important;outline-offset:2px}
/* Newsletter embed: pill button matching the .nl-form row design, in theme teal. */
.nl-form-fluent .fluentform .ff-btn-submit,
.nl-form-fluent .fluentform button[type="submit"]{border-radius:9999px!important;padding:13px 30px!important;font-size:.92rem!important;font-weight:600!important;font-family:inherit!important;white-space:nowrap!important;width:auto!important}
.newsletter .nl-form button{background:#1a6b6b}
.newsletter .nl-form button:hover{background:#115252}
/* Fluent inputs: theme-tinted focus ring instead of Fluent blue. */
.fluentform .ff-el-form-control:focus{border-color:#228585!important;box-shadow:0 0 0 3px rgba(34,133,133,.15)!important}
/* PH-FIX 2026-10: footer social icons -> solid theme teal (explicit CSS so the
   color holds even if the Tailwind CDN class generation misses). */
.ph-social-btn{background-color:#1a6b6b!important;color:#fff!important;border:0}
.ph-social-btn:hover{background-color:#115252!important;color:#fff!important}
.ph-social-btn svg{width:1rem;height:1rem}
/* PH-FIX 2026-10: header brand lockup — consistent logo sizing, no layout shift. */
#siteHeader .phu-brand{border-radius:.5rem;text-decoration:none;min-width:0}
#siteHeader .phu-brand:hover .phu-brand__img{opacity:.92}
#siteHeader .phu-brand:focus-visible{outline:2px solid #228585;outline-offset:3px}
.phu-brand__img{display:block;height:2.5rem !important;width:auto !important;max-width:13rem !important;object-fit:contain;border-radius:.375rem;flex-shrink:0}
@media (min-width:640px){.phu-brand__img{height:2.75rem !important;max-width:15rem !important}}
/* Footer brand logo matches header treatment. */
.nphi-footer .footer-brand img,.nphi-footer img.footer-logo{height:3.5rem;width:auto;max-width:16rem;object-fit:contain;border-radius:.375rem}
@media (min-width:640px){.nphi-footer .footer-brand img,.nphi-footer img.footer-logo{height:4rem;max-width:18rem}}
/* PH-HEADER-MOBILE 2026-10: scrollable drawer + accordion mega menu (mobile + tablet < lg). */
#mobileMenu{-webkit-overflow-scrolling:touch;scrollbar-width:thin}
#mobileMenu nav a{min-height:44px;display:flex;align-items:center}
#mobileMenu nav a.ph-mobile-toggle{min-height:0}
.ph-mobile-panel{display:none}
.ph-mobile-group.is-open>.ph-mobile-panel{display:block;animation:nphiSlideDown .22s ease}
.ph-mobile-toggle svg{transition:transform .25s ease}
.ph-mobile-group.is-open>.flex .ph-mobile-toggle svg,.ph-mobile-group.is-open .ph-mobile-toggle svg{transform:rotate(180deg)}
.ph-mobile-group.is-open{border-radius:.5rem}
/* Tablet (sm..lg): two-column link grid inside open panels so long megas don't scroll forever. */
@media (min-width:640px) and (max-width:1023.98px){
  #mobileMenu nav .ph-mobile-panel>div.pb-2{display:grid;grid-template-columns:1fr 1fr;gap:.15rem .75rem;align-items:start}
  #mobileMenu nav .ph-mobile-panel .px-3.pt-2\.5{grid-column:1/-1}
}
/* PH-HEADER-ACCOUNT 2026-10: keep logged-in dropdown inside the viewport on phones. */
.ph-account{position:relative}
#siteHeader .phu-has-mega .mega{z-index:60}
@media (max-width:639.98px){
  #siteHeader .phu-has-mega .mega{position:fixed;top:4rem;right:.5rem;left:auto;padding-top:0}
}
/* PH-HOME-RESPONSIVE 2026-10: homepage blocks — fluid titles, icons, grids (single override pack). */
.nphi-sec-head h2,.nphi-chead,.nphi-chead-w,.org-experts-grid h3,.panel-card-header h3{text-wrap:balance;overflow-wrap:break-word}
.nphi-sec-head p,.newsletter .nl-content p{overflow-wrap:break-word}
/* Section headers: never squeeze the pill button beside the title on phones. */
@media (max-width:639.98px){
  .nphi-sec-head{align-items:stretch}
  .nphi-sec-head .nphi-view-all,.nphi-sec-head .nphi-view-all-w{align-self:flex-start}
  section .flex.items-end.justify-between{flex-direction:column;align-items:flex-start;gap:14px}
}
/* Hero: compact quick cards on mobile/tablet (markup no longer hides them), tighter type. */
.nphi-hero-quick a{min-width:0}
.nphi-hero-quick svg{flex-shrink:0}
@media (max-width:1023.98px){
  .nphi-hero-full>.hero-fill .grid.gap-12{gap:2rem}
  .nphi-hero-quick{margin-top:1.75rem}
  .nphi-hero-quick a{padding:1rem}
  .nphi-hero-quick .w-12.h-12{width:2.5rem;height:2.5rem}
  .nphi-hero-quick .font-semibold.text-white{font-size:.9rem;line-height:1.35}
  .nphi-hero-quick .text-sm.text-primary-200{font-size:.78rem}
}
@media (max-width:479.98px){
  .nphi-hero-full .mt-8.flex.flex-wrap.gap-3 a{flex:1 1 100%;justify-content:center;padding-left:1rem;padding-right:1rem}
  .nphi-hero-full p.mt-6{font-size:1rem}
  .nphi-hero-alert__inner{border-radius:1rem}
}
/* News: tighter featured card + list rows on phones. */
@media (max-width:639.98px){
  .nphi-featured .nf-img{height:200px}
  .nphi-featured .nf-body{padding:1.25rem}
  .nphi-featured .nf-body h3{font-size:1.15rem}
  .nphi-list{gap:12px}
  .nphi-news-item{gap:12px;padding:12px}
  .nphi-news-item .ni-thumb{width:88px;height:76px}
  .nphi-news-item .ni-info h4{font-size:.86rem}
  .nphi-news-item .nphi-meta{flex-wrap:wrap;gap:6px 12px}
  .nphi-meta{flex-wrap:wrap;gap:6px 12px}
}
/* Courses: 3 cols too tight on tablet — 2 cols on md..lg, 1 col on phones. */
@media (min-width:768px) and (max-width:1023.98px){
  section .grid.md\:grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:639.98px){
  section .grid.md\:grid-cols-3{gap:1rem}
  .course-card .p-5,.group .p-5{padding:1rem}
}
/* Events: row cards squeeze on phones — shrink date block, wrap details. */
@media (max-width:639.98px){
  .nphi-evsec--dark{padding:44px 0}
  .event-card-v,.nphi-evsec--dark .event-featured,.nphi-evsec--dark .event-past{padding:1rem;gap:.85rem}
  .event-date-block{width:58px;height:66px}
  .event-date-block .ev-day{font-size:1.3rem}
  .nphi-evsec--dark .event-featured .event-date-block{width:66px;height:74px}
  .event-card-v .ev-content h4{font-size:.95rem;line-height:1.4;overflow-wrap:break-word}
  .event-details-v,.nphi-evsec--dark .event-past .event-details-v{flex-wrap:wrap;gap:4px 12px;font-size:.76rem}
  .ev-register-btn,.nphi-evsec--dark .event-featured .ev-register-btn{width:42px;height:42px;flex-shrink:0}
  .intl-days-card{margin-top:.5rem}
}
/* Resources: cards + newsletter strip. */
@media (max-width:639.98px){
  .resource-card{padding:1.1rem;gap:.9rem}
  .resource-card .res-icon{width:44px;height:44px}
  .newsletter{gap:1.25rem;padding:1.5rem 1.25rem}
  .newsletter .nl-icon{width:54px;height:54px}
  .newsletter .nl-content h3{font-size:1.1rem}
  .nl-form-fluent{max-width:none}
  .nl-form-fluent .fluentform .ff-btn-submit,.nl-form-fluent .fluentform button[type="submit"]{width:100%!important}
}
/* Jobs & tenders: allow 2-line titles on phones, keep meta readable. */
@media (max-width:639.98px){
  .nphi-job-row h4{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .nphi-job-row .mt-1\.5{gap:.3rem .75rem;font-size:12px}
  section .grid.lg\:grid-cols-3{gap:1rem}
}
/* Orgs & experts: stack panels below lg (2+2 cols too tight on tablet), inner padding. */
@media (max-width:1023.98px){
  .org-experts-grid{grid-template-columns:1fr;gap:1.5rem}
}
@media (max-width:639.98px){
  .org-experts-grid .org-grid,.org-experts-grid .experts-grid{padding:1rem;gap:.75rem}
  .panel-card-header{padding:1rem 1.1rem}
}
/* PH-NEWSLETTER 2026-10: roomier email field + left text wraps to next line. */
.newsletter .nl-content{flex:1 1 320px;min-width:0}
.newsletter .nl-content h3{text-wrap:balance}
.newsletter .nl-content p{max-width:44ch;text-wrap:pretty}
.newsletter .nl-form{flex:1 1 420px;max-width:540px;align-items:center}
.newsletter .nl-form input{flex:1 1 auto;min-width:0;width:100%;max-width:none;padding:14px 24px}
.newsletter .nl-form button{flex:0 0 auto}
.nl-form-fluent{flex:1 1 420px;max-width:540px}
@media (max-width:1023.98px){
  .newsletter{flex-wrap:wrap;gap:1.5rem}
  .newsletter .nl-content{flex:1 1 100%}
  .newsletter .nl-form,.nl-form-fluent{flex:1 1 100%;max-width:100%}
  .newsletter .nl-form input{max-width:none}
}
/* PH-HOME-TYPE 2026-10: proper heading scale (was oversized: hero 3.2rem,
   section 2.1rem). Fluid professional sizes, tighter rhythm. Wins over the
   merged static rules above by source order (equal specificity). Covers the
   static front-page.php path and the Homepage Hero/Section-Heading blocks
   (same classes). */
.nphi-hero-h1{font-size:clamp(1.9rem,1.35rem + 2.4vw,2.6rem);line-height:1.15;letter-spacing:-.02em}
.nphi-sec-head{gap:18px;margin-bottom:34px}
.nphi-sec-head h2,.nphi-chead,.nphi-chead-w{font-size:clamp(1.4rem,1.2rem + .9vw,1.75rem);line-height:1.25;letter-spacing:-.02em}
.nphi-sec-head p{font-size:.98rem;line-height:1.65}
.nphi-section{padding:52px 0 64px}
@media (max-width:1024px){
  .nphi-hero-h1{font-size:2.15rem}
  .nphi-sec-head h2,.nphi-chead,.nphi-chead-w{font-size:1.5rem}
  .nphi-section{padding:44px 0 56px}
  .nphi-sec-head{margin-bottom:28px}
}
@media (max-width:640px){
  .nphi-hero-h1{font-size:1.7rem;line-height:1.2}
  .nphi-sec-head h2,.nphi-chead,.nphi-chead-w{font-size:1.35rem}
  .nphi-sec-head p{font-size:.92rem}
  .nphi-section{padding:36px 0 48px}
  .nphi-sec-head{margin-bottom:24px}
}
