/* GPHCB Member Portal: intentionally scoped to avoid changing the public site. */
.gphcb-page{--gphcb-teal:#21b5c1;--gphcb-ink:#162943;--gphcb-purple:#582c7c;--gphcb-soft:#eff8fa;--gphcb-border:#dce8ec;--gphcb-muted:#64768a;box-sizing:border-box;color:var(--gphcb-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.6}
.gphcb-page *{box-sizing:border-box}
.gphcb-page a{text-decoration:none}
.gphcb-page .gphcb-brand{width:100%;height:auto;display:block;object-fit:contain}
.gphcb-eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:#0c8793;text-transform:uppercase}
.gphcb-page h1,.gphcb-page h2,.gphcb-page h3,.gphcb-page h4{color:var(--gphcb-ink);line-height:1.18;letter-spacing:-.025em;margin:0}
.gphcb-page h1{font-size:clamp(29px,3.3vw,40px);font-weight:800}
.gphcb-page h2{font-size:20px;font-weight:750}
.gphcb-page h3{font-size:16px}
.gphcb-page p{margin:10px 0 15px;color:#53667a}
.gphcb-page .gphcb-muted{color:var(--gphcb-muted)}
.gphcb-page .gphcb-small{font-size:13px}
.gphcb-page .gphcb-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 17px;border:1px solid #077d8a;background:#087e8d;color:#fff!important;border-radius:10px;font-weight:750;font-size:13px;line-height:1.3;white-space:normal;transition:background .2s,transform .2s;cursor:pointer;text-align:center}
.gphcb-page .gphcb-btn:hover{background:#006d79;transform:translateY(-1px)}
.gphcb-page .gphcb-btn:focus-visible,.gphcb-page a:focus-visible,.gphcb-page button:focus-visible,.gphcb-page input:focus-visible{outline:3px solid #70cad4;outline-offset:2px}
.gphcb-page .gphcb-btn-ghost{background:#fff;color:#066e7a!important;border-color:#b5d9de}
.gphcb-page .gphcb-btn-ghost:hover{background:#eff8fa}
.gphcb-page .gphcb-btn-small{min-height:34px;padding:7px 14px;font-size:12px}
.gphcb-page input[type="text"],.gphcb-page input[type="password"],.gphcb-page input[type="email"],.gphcb-page input:not([type]),.gphcb-verification input{width:100%;min-height:46px;background:#fff;border:1px solid #cddde3;padding:10px 12px;border-radius:9px;font-size:14px;color:#152d3d}
.gphcb-page input:disabled{background:#f5f8fa;color:#667b87}
.gphcb-page label{display:block;font-size:13px;font-weight:650;color:#283f50;margin:12px 0}
.gphcb-page button{font-family:inherit}
.gphcb-page .gphcb-panel{padding:25px;background:#fff;border:1px solid var(--gphcb-border);border-radius:17px;box-shadow:0 4px 16px rgba(22,41,67,.035)}
.gphcb-page .gphcb-empty{text-align:center;padding:50px 30px}
.gphcb-page .gphcb-empty h2{margin-bottom:10px}
.gphcb-page .gphcb-alert{padding:12px 16px;border-radius:9px;background:#fff5e9;border:1px solid #f2d7a9;font-size:13px;color:#874700}
.gphcb-page .gphcb-alert.is-success{background:#e7f7ef;border-color:#bfe7d1;color:#17653e}
.gphcb-page .gphcb-state{font-size:12px;font-weight:700;color:#68768a}
.gphcb-page .gphcb-state.is-done{color:#137d61}
.gphcb-page .gphcb-rich-content{line-height:1.75;overflow-wrap:anywhere}
.gphcb-page .gphcb-rich-content p{color:#364a5c}
.gphcb-page .gphcb-rich-content a{color:#087e8d;text-decoration:underline}
.gphcb-page .gphcb-rich-content img{max-width:100%;height:auto}
.gphcb-page .gphcb-rich-content ul,.gphcb-page .gphcb-rich-content ol{padding-left:24px}
.gphcb-login-page{min-height:75vh;background:#f3f8fa;padding:clamp(30px,5vw,80px) 20px}
.gphcb-login-layout{display:grid;grid-template-columns:1fr minmax(340px,.9fr);width:min(1080px,100%);margin:auto;border-radius:22px;overflow:hidden;box-shadow:0 28px 60px rgba(14,45,72,.10);min-height:545px}
.gphcb-login-intro{background:linear-gradient(155deg,#15324a,#12314f 55%,#11485d);padding:clamp(28px,5vw,66px);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;isolation:isolate;overflow:hidden}
.gphcb-login-intro:before{content:"";border:1px solid rgba(93,216,223,.17);width:370px;height:370px;border-radius:50%;position:absolute;left:-150px;top:-190px;z-index:-1}
.gphcb-login-intro .gphcb-brand{max-width:320px;padding:11px;background:#fff;border-radius:8px;margin-bottom:60px}
.gphcb-login-intro .gphcb-eyebrow{color:#67d6e1}
.gphcb-login-intro h1{color:#fff;font-size:clamp(31px,3.1vw,45px);margin:12px 0 10px}
.gphcb-login-intro p{color:#d1e5ec;font-size:16px;line-height:1.75}
.gphcb-login-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.gphcb-login-facts span{font-size:11px;padding:7px 10px;border:1px solid #4b6d7c;border-radius:40px;color:#cfebef}
.gphcb-login-card{background:#fff;padding:clamp(28px,5vw,60px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.gphcb-login-card> .gphcb-brand{max-width:275px;margin:0 auto 24px}
.gphcb-login-card h2{font-size:27px;margin:11px 0 0}
.gphcb-login-card p{font-size:14px;line-height:1.7}
.gphcb-login-card #loginform{margin-top:18px}
.gphcb-login-card #loginform p{margin:0 0 16px}
.gphcb-login-card #loginform label{font-weight:700;margin-bottom:5px}
.gphcb-login-card #loginform .login-remember label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500}
.gphcb-login-card #loginform input[type="checkbox"]{width:16px;height:16px}
.gphcb-login-card #wp-submit{background:#087e8d;color:white;border:0;border-radius:9px;padding:12px 22px;font-weight:700;width:100%;cursor:pointer}
.gphcb-login-card .gphcb-login-divider{border-top:1px solid #e2ecef;margin:18px 0 5px}
.gphcb-login-card .gphcb-small a{color:#097b8a;font-weight:750}
.gphcb-nav-actions{display:inline-flex;gap:14px;align-items:center;font-size:14px}
.gphcb-nav-actions a{font-weight:750;color:#087e8d}
.gphcb-nav-actions .gphcb-nav-signout{color:#4f6580}
.gphcb-portal{background:#f5f8fa;border:1px solid #e2edf1;border-radius:16px;overflow:hidden;width:100%;min-height:710px;box-shadow:0 8px 35px rgba(23,52,70,.045)}
.gphcb-shell{display:grid;grid-template-columns:249px minmax(0,1fr);min-height:710px}
.gphcb-sidebar{background:#fff;border-right:1px solid #e4ebf0;display:flex;flex-direction:column;min-width:0;padding:25px 15px 20px}
.gphcb-sidebar-brand{display:block;margin:0 10px 23px}
.gphcb-sidebar-brand .gphcb-brand{max-width:210px}
.gphcb-sidebar-subtitle{margin:5px 12px 10px;color:#8da0ac;font-size:10px;font-weight:800;letter-spacing:.16em}
.gphcb-sidebar-nav{display:flex;flex-direction:column;gap:4px}
.gphcb-sidebar-nav a{border-radius:9px;display:flex;gap:12px;align-items:center;padding:11px 12px;color:#4e6479;font-size:13px;font-weight:650;transition:background .2s,color .2s}
.gphcb-sidebar-nav a:hover{background:#f1f7f9;color:#0c7684}
.gphcb-sidebar-nav a.is-active{background:#e9f8fa;color:#057783;font-weight:800}
.gphcb-nav-dot{height:8px;width:8px;border:1.6px solid #8ca5b6;border-radius:50%;flex:none}
.gphcb-sidebar-nav a.is-active .gphcb-nav-dot{border-color:#078a98;background:#20bac5}
.gphcb-sidebar-bottom{margin:auto 8px 0;padding:20px 7px 0;display:flex;flex-direction:column;gap:13px;border-top:1px solid #e5edf0}
.gphcb-sidebar-bottom a{color:#526b80;font-size:13px;font-weight:650}
.gphcb-sidebar-bottom a:hover{color:#086d79}
.gphcb-main{min-width:0}
.gphcb-topbar{height:75px;padding:0 32px;display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid #e2e9ed;background:#fff}
.gphcb-topbar-label{font-size:12px;color:#758ba0;font-weight:650}
.gphcb-topbar-user{display:flex;align-items:center;gap:10px;font-size:13px;color:#2b4356;font-weight:700}
.gphcb-avatar{height:32px;width:32px;border-radius:50%;background:#eff1fa;color:#5c347f;display:grid;place-items:center;font-weight:800}
.gphcb-mobile-logo{display:none;width:120px}
.gphcb-content{padding:clamp(18px,3vw,36px);min-height:640px}
.gphcb-heading{margin:0 0 25px}
.gphcb-heading h1{margin:6px 0 8px}
.gphcb-heading>p{margin:0;color:#64778a;max-width:720px;font-size:14px}
.gphcb-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}
.gphcb-metric{min-width:0;background:#fff;border:1px solid var(--gphcb-border);padding:20px;border-radius:14px}
.gphcb-metric span{display:block;color:#617487;font-weight:650;font-size:12px}
.gphcb-metric strong{display:block;font-size:clamp(19px,2.5vw,28px);color:#182e44;line-height:1.4;margin:8px 0 3px;overflow-wrap:anywhere}
.gphcb-metric small{font-size:11px;color:#8a9ba8}
.gphcb-dashboard-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.9fr);gap:17px;margin-bottom:17px}
.gphcb-panel-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:21px}
.gphcb-panel-header h2{margin-top:5px}
.gphcb-panel-header>a{color:#047a87;font-size:12px;font-weight:750;white-space:nowrap}
.gphcb-digital-card{background:linear-gradient(125deg,#12304d,#1b506a 62%,#442b6f);padding:23px;border-radius:14px;color:white;margin:16px 0 19px;min-height:175px;display:flex;flex-direction:column;box-shadow:0 12px 25px rgba(8,38,66,.17)}
.gphcb-digital-card>span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#95e9ed}
.gphcb-digital-card strong{font-size:21px;letter-spacing:-.025em;margin-top:25px;color:#fff;overflow-wrap:anywhere}
.gphcb-digital-card small{color:#e1eef5}
.gphcb-digital-card>div{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:16px;color:#bce3ee;font-size:10px;flex-wrap:wrap}
.gphcb-learning-row{display:flex;align-items:center;gap:15px;border-bottom:1px solid #edf2f4;padding:13px 0;color:#304657!important}
.gphcb-learning-row>span:first-child{flex:1;min-width:0}
.gphcb-learning-row strong{display:block;font-size:13px}
.gphcb-learning-row small{color:#8393a4;font-size:11px;display:block}
.gphcb-learning-row b{color:#0e7e8a;font-size:12px;min-width:33px;text-align:right}
.gphcb-progress-track,.gphcb-mini-progress{background:#e8f0f3;border-radius:50px;height:7px;display:block;overflow:hidden}
.gphcb-progress-track{width:85px;flex:none}
.gphcb-progress-track i,.gphcb-mini-progress i{height:100%;background:linear-gradient(90deg,#20b4c0,#24a5b2);display:block;border-radius:50px}
.gphcb-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:17px}
.gphcb-course-card{background:#fff;border:1px solid #dbe7ed;border-radius:15px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 7px 20px rgba(20,39,65,.035)}
.gphcb-course-art{height:108px;background:radial-gradient(circle at 75% 50%,rgba(64,204,215,.18),transparent 45%),linear-gradient(120deg,#122e4c,#265b6e);display:flex;align-items:flex-end;padding:16px;color:#a2e2e9;font-size:10px;font-weight:800;letter-spacing:.14em}
.gphcb-course-body{padding:22px;display:flex;flex-direction:column;flex:1;gap:10px}
.gphcb-course-body h2{font-size:19px}
.gphcb-course-body p{font-size:13px;line-height:1.65;flex:1;margin:3px 0 10px}
.gphcb-course-body small{font-size:11px;color:#6a8191}
.gphcb-course-body .gphcb-btn{margin-top:12px;width:100%}
.gphcb-locked{padding:10px 0;color:#8c6570;font-size:12px;font-weight:750}
.gphcb-course-details{margin-bottom:18px}
.gphcb-course-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.gphcb-course-summary h2{font-size:24px;margin:6px 0}
.gphcb-course-summary .gphcb-progress-track{width:40%;height:10px}
.gphcb-subsection{margin-top:28px!important}
.gphcb-unit-row{display:flex;gap:14px;align-items:center;border-bottom:1px solid #edf2f4;padding:17px 0;color:#294055!important}
.gphcb-unit-number{height:33px;width:33px;flex:none;border-radius:10px;background:#e8f6f8;color:#0c7d89;display:grid;place-items:center;font-size:12px;font-weight:850}
.gphcb-unit-text{flex:1;min-width:0}
.gphcb-unit-text strong{display:block;font-size:13px}
.gphcb-unit-text small{font-size:11px;color:#8293a1}
.gphcb-unit-row .gphcb-state{font-size:11px}
.gphcb-lesson-content{max-width:900px}
.gphcb-video{width:100%;aspect-ratio:16/9;background:#111a20;overflow:hidden;margin-bottom:24px;border-radius:12px}
.gphcb-video iframe{width:100%;height:100%;border:0}
.gphcb-question{border:1px solid #dce8ee;border-radius:13px;padding:17px;margin:0 0 17px}
.gphcb-question legend{font-weight:800;font-size:14px;padding:0 7px}
.gphcb-page .gphcb-question label{display:flex;align-items:flex-start;gap:11px;padding:10px 11px;margin:5px 0;border-radius:9px;background:#f5f9fa;font-size:13px;font-weight:550;cursor:pointer}
.gphcb-question label input{flex:none;margin-top:3px}
.gphcb-award-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 0;border-bottom:1px solid #edf3f5}
.gphcb-award-row strong{font-size:14px;display:block}
.gphcb-award-row small{font-size:12px;color:#7b8b9a;display:block}
.gphcb-award-row form{margin:0}
.gphcb-update{padding:18px 0;border-bottom:1px solid #ebf1f3}
.gphcb-update time{color:#0d808d;font-size:11px;font-weight:750}
.gphcb-update h3{margin:7px 0 8px}
.gphcb-update .gphcb-rich-content{font-size:13px}
.gphcb-details{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gphcb-details dt{font-size:12px;color:#8290a0}
.gphcb-details dd{margin:0;font-size:13px;color:#233d52;font-weight:750;text-align:right;overflow-wrap:anywhere}
.gphcb-profile{max-width:650px}
.gphcb-profile form label{margin-bottom:18px}
.gphcb-certificate{background:#fff;border:10px solid #d6e8ed;outline:2px solid #4b317a;outline-offset:-19px;max-width:950px;min-height:570px;margin:18px auto;padding:50px;text-align:center;display:flex;align-items:center;flex-direction:column;box-shadow:0 16px 30px rgba(20,45,65,.09)}
.gphcb-certificate .gphcb-brand{max-width:470px;width:80%;margin:0 auto 35px}
.gphcb-certificate-kicker{letter-spacing:.2em;font-size:12px;color:#0c8090;font-weight:850;margin-bottom:9px}
.gphcb-certificate h2{font-family:Georgia,serif;font-size:clamp(25px,3.5vw,38px);color:#552b76;margin-bottom:24px}
.gphcb-certificate h3{font-family:Georgia,serif;color:#172c42;font-size:clamp(25px,3.5vw,40px);margin:9px 0 22px}
.gphcb-certificate h4{color:#146f7f;font-size:21px;margin:12px 0 38px}
.gphcb-certificate-footer{display:flex;justify-content:space-between;align-self:stretch;margin-top:auto;gap:20px;border-top:1px solid #c9dadd;padding-top:15px;color:#5b6b7b;font-size:11px;flex-wrap:wrap}
.gphcb-print-note{text-align:center;font-size:12px!important}
.gphcb-verification{width:min(750px,94%);margin:65px auto;padding:40px}
.gphcb-verification .gphcb-brand{max-width:370px;margin-bottom:32px}
.gphcb-verification h1{font-size:26px;margin:0 0 18px}
.gphcb-verification form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.gphcb-verification form label{width:100%;margin:5px 0 -6px}
.gphcb-verification form input{flex:1;min-width:200px}
.gphcb-verify-result{border:1px solid #aedbcc;background:#ecfaf4;border-radius:10px;padding:18px;margin-top:20px}
.gphcb-verify-result strong{color:#116044}
.gphcb-verify-result p{margin:7px 0}
@media(max-width:1100px){.gphcb-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gphcb-dashboard-columns{grid-template-columns:1fr}}
@media(max-width:800px){.gphcb-shell{grid-template-columns:1fr}.gphcb-sidebar{padding:12px 15px 13px;border-right:0;border-bottom:1px solid #e1eaf0}.gphcb-sidebar-brand,.gphcb-sidebar-subtitle,.gphcb-sidebar-bottom{display:none}.gphcb-sidebar-nav{flex-direction:row;overflow-x:auto;gap:8px}.gphcb-sidebar-nav a{white-space:nowrap;padding:9px 11px}.gphcb-mobile-logo{display:block}.gphcb-topbar-label{display:none}.gphcb-topbar{height:62px;padding:0 18px}.gphcb-content{padding:20px}.gphcb-login-layout{grid-template-columns:1fr;max-width:590px}.gphcb-login-intro{padding:28px}.gphcb-login-intro .gphcb-brand{margin-bottom:18px;max-width:250px}.gphcb-login-intro h1{font-size:31px}.gphcb-login-card{padding:30px}}
@media(max-width:520px){.gphcb-metrics{gap:9px}.gphcb-metric{padding:14px}.gphcb-metric strong{font-size:21px}.gphcb-panel{padding:18px!important}.gphcb-award-row{flex-wrap:wrap}.gphcb-unit-row .gphcb-state{display:none}.gphcb-course-summary{flex-direction:column;align-items:flex-start}.gphcb-course-summary .gphcb-progress-track{width:100%}.gphcb-topbar-user>span:last-child{display:none}.gphcb-certificate{min-height:490px;padding:30px 20px}.gphcb-certificate .gphcb-brand{width:95%;margin-bottom:25px}.gphcb-certificate-footer{font-size:9px}}
@media print{body *{visibility:hidden!important}.gphcb-certificate,.gphcb-certificate *{visibility:visible!important}.gphcb-certificate{position:absolute;top:0;left:0;width:100%;max-width:none;margin:0;box-shadow:none;border:6px solid #d6e8ed;outline:2px solid #4b317a}.gphcb-portal{border:0}}
