/* Final Powerhouse website and staff portal. */
:root { scroll-padding-top:110px; }
[hidden] { display:none !important; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.site-header { position:sticky;top:0;box-shadow:0 8px 35px #0001; }
.site-nav { gap:25px; }
.site-nav .staff-link { display:flex;align-items:center;gap:7px;color:#e8c87b; }
.staff-link .icon { width:15px;height:15px; }
.intro { inset:0; }
.hero-power { min-height:690px; }
.hero-power h1 { font-size:clamp(76px,8.4vw,128px); }
.hero-power .hero-copy { padding-top:65px;padding-bottom:95px; }
.hero-power .hero-copy>p:not(.eyebrow) { max-width:440px; }
.hero-bottom { min-height:64px; }
.power-brand { right:3%;width:41%; }
.about-band { padding:70px 6vw;background:#0c2033;display:grid;grid-template-columns:1fr 1fr;gap:8vw;border-bottom:1px solid #ffffff12; }
.about-band .eyebrow { color:var(--gold);font-size:10px;margin-bottom:22px; }
.about-band h2 { font-size:clamp(28px,3vw,44px);font-weight:400;line-height:1.1;letter-spacing:-1px; }
.about-band p:not(.eyebrow) { color:#b6c2ce;font-size:14px;line-height:1.8;margin-bottom:12px;max-width:540px; }
.about-band .underlink { margin-top:10px;color:#e8c87b;font-size:12px; }
.service-link { min-height:38px; }
.application-photo small { color:white;background:#061522aa;padding:4px 6px;font-size:9px; }
.contact-section { display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;background:#0c2033;border-top:1px solid #ffffff14; }
.contact-section .eyebrow { color:var(--gold);font-size:10px;margin-bottom:22px; }
.contact-section h2 { font-size:clamp(32px,3.5vw,50px);font-weight:400;letter-spacing:-1.5px;line-height:1.1;margin-bottom:25px; }
.contact-section p { max-width:400px;color:#aebbcb;line-height:1.7;font-size:14px; }
.contact-details { align-self:center;min-width:0; }
.contact-label { display:block;color:#aab8c7;font-size:9px;letter-spacing:1.6px;margin-bottom:18px; }
.contact-email { font-size:clamp(18px,2vw,30px);display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid #ffffff35;padding-bottom:24px;overflow-wrap:anywhere; }
.contact-email:hover { color:var(--gold); }
.contact-details>.btn { margin-top:28px; }
.contact-staff { display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px;font-size:11px;line-height:1.6;color:#aebbcb; }
.contact-staff a { color:#e8c87b;text-decoration:underline;text-underline-offset:4px; }
.site-footer { padding-bottom:22px; }
.footer-contact>a { font-size:15px;color:#f1d38d; }
.footer-contact>a:hover { text-decoration:underline; }
.footer-bottom { border-top:1px solid #ffffff20;grid-column:1/-1;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#9aabba; }
.footer-bottom nav { display:flex;align-items:center;gap:25px;flex-wrap:wrap; }
.footer-bottom a:hover { color:var(--gold); }
.footer-bottom .motion-toggle { font-size:10px;padding:10px 0;min-height:44px; }
.agency-credit { color:#bbc5cc; }
.no-script { padding:25px 6vw;background:#e8b94a;color:#081a2d;line-height:1.8; }
.no-script a { text-decoration:underline; }
.modal-open { overflow:hidden; }
dialog { max-height:90dvh;overscroll-behavior:contain; }
.enquiry-status { color:#285243;font-size:12px;line-height:1.6;margin-top:14px; }
.enquiry-ready { margin-top:15px;padding-top:20px;border-top:1px solid #c4cbd0; }
.enquiry-ready>p { font-weight:700;font-size:17px; }
.enquiry-ready .btn { background:#e8b94a;color:#081a2d; }
.enquiry-ready .underlink { margin:10px 0 5px 20px;background:none;font-size:12px; }
.enquiry-ready>small { display:block;font-size:11px;color:#5a6b75;line-height:1.7;margin-top:15px; }
.enquiry-preview { margin-top:20px; }
.enquiry-preview summary { font-size:12px;cursor:pointer;padding:8px 0; }
.enquiry-preview textarea { margin-top:8px;line-height:1.7; }
.back-link { display:inline-flex;align-items:center;gap:10px;font-size:12px;color:#dce3e9; }
.back-link .icon { width:19px;height:19px; }
.back-link:hover { color:var(--gold); }
.portal-page { background:radial-gradient(ellipse at 80% 12%,#173046 0%,#071522 54%); }
.portal-main { max-width:1480px;margin:auto;padding:65px 6vw 70px; }
.portal-heading { padding-bottom:45px;position:relative; }
.portal-heading .eyebrow { color:#e8c87b;font-size:10px; }
.portal-heading h1 { font-family:TW Display,Impact,sans-serif;font-size:clamp(70px,8vw,112px);font-weight:700;line-height:.94;letter-spacing:-1px;margin:25px 0; }
.portal-heading h1 em { color:var(--gold);font-style:normal; }
.portal-heading>p:last-child { color:#aebdcd;font-size:15px;line-height:1.75; }
.portal-heading:after { content:'POWER / COMFORT / CONNECTION';position:absolute;right:0;bottom:55px;writing-mode:vertical-rl;color:#a6b6c5;font-size:9px;letter-spacing:2.5px;border-left:1px solid #cdb57366;padding-left:20px; }
.portal-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:24px; }
.portal-card { border:1px solid #60718766;padding:36px 38px;min-width:0;position:relative;overflow:hidden; }
.inbox-card { background:linear-gradient(135deg,#153249,#0b1e32 90%);border-top:3px solid var(--gold); }
.admin-card { background:#0c1c2ba8;border-top:3px solid #8495a5; }
.card-kicker { display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px;letter-spacing:1.6px;color:#c3cfdb;margin-bottom:45px; }
.card-kicker .icon { width:30px;height:30px;color:var(--gold); }
.admin-card .card-kicker .icon { color:#9aafc4; }
.provider { font-size:9px;letter-spacing:1.6px;color:#e8c87b;display:block;margin-bottom:20px; }
.admin-card .provider { color:#b0c0d0; }
.portal-card h2 { font-weight:400;font-size:clamp(29px,3vw,42px);line-height:1.1;letter-spacing:-1px;margin-bottom:22px; }
.portal-card>p { color:#b3c2d0;font-size:14px;line-height:1.75;max-width:440px; }
.portal-card strong { font-weight:400;color:#e5eaf0;white-space:nowrap; }
.portal-card>.btn { margin-top:28px;min-height:54px; }
.btn-outline { background:transparent;color:#eef0ed;border:1px solid #778a9d; }
.btn-outline:hover { background:#22394e;color:white; }
.provider-note { font-size:11px;line-height:1.7;color:#9aadc0;display:flex;gap:10px;max-width:440px;margin-top:20px; }
.provider-note .icon { width:15px;height:15px;margin-top:3px; }
.email-domain { margin-top:30px;padding-top:22px;border-top:1px solid #ffffff15;color:#e8c87b;font-size:12px;letter-spacing:1px; }
.access-tag { display:inline-flex;align-items:center;color:#a6bacd;border:1px solid #ffffff20;font-size:10px;padding:8px 12px;margin-top:25px; }
.portal-help { display:grid;grid-template-columns:1fr 1.5fr;gap:6vw;margin-top:65px;border-top:1px solid #ffffff20;padding-top:45px; }
.portal-help .eyebrow { color:#e8c87b;font-size:9px;margin-bottom:20px; }
.portal-help h2 { font-size:30px;font-weight:400;letter-spacing:-1px;margin-bottom:15px; }
.portal-help>div>p:last-child { color:#a9b9c8;font-size:13px;line-height:1.7; }
.portal-help ol { list-style:none;padding:0;margin:0; }
.portal-help li { display:flex;gap:22px;margin-bottom:28px; }
.portal-help li>span { color:#e8c87b;font-size:12px;padding-top:4px; }
.portal-help h3 { font-size:16px;font-weight:400;margin-bottom:8px; }
.portal-help li p { color:#a9b9c8;font-size:12px;line-height:1.8; }
.portal-support { display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff20;padding-top:25px;font-size:10px;line-height:1.8;color:#a9b9c8; }
.portal-support>span { display:flex;align-items:center;gap:10px; }
.portal-support .icon { width:14px;height:14px; }
.portal-support a { white-space:nowrap;color:#e8c87b; }
.privacy-main { max-width:900px;padding:70px 6vw 100px;margin:auto; }
.privacy-main .eyebrow { font-size:10px;color:var(--gold);margin-bottom:24px; }
.privacy-main h1 { font-family:TW Display,Impact,sans-serif;font-size:clamp(50px,7vw,90px);line-height:1;letter-spacing:-1px;margin-bottom:25px; }
.privacy-intro { color:#b7c6d3;line-height:1.8;font-size:16px;margin-bottom:50px; }
.privacy-main section { border-top:1px solid #ffffff25;padding-top:25px;margin-bottom:35px; }
.privacy-main h2 { font-size:23px;font-weight:400;margin-bottom:20px; }
.privacy-main section p { font-size:14px;line-height:1.9;color:#b7c6d3;margin-bottom:15px; }
.privacy-main section a { color:var(--gold);text-decoration:underline;overflow-wrap:anywhere; }
.not-found-staff { margin:20px; }
@media(min-width:1600px) { .hero-power { min-height:790px; }.about-band { padding-left:8vw;padding-right:8vw; } }
@media(max-width:1100px) { .site-nav { gap:16px; }.hero-power h1 { font-size:9vw; }.footer-bottom { flex-wrap:wrap; }.portal-card { padding:30px; }.portal-card h2 { font-size:33px; }.portal-card>.btn { font-size:12px;gap:20px; } }
@media(max-width:800px) { :root { scroll-padding-top:90px; }.site-nav { gap:4px; }.hero-power { min-height:850px; }.hero-power .hero-copy { padding:45px 6vw 355px; }.hero-power h1 { font-size:clamp(77px,13.6vw,110px); }.power-brand { width:400px;max-width:66%;right:6vw; }.about-band { gap:40px; }.about-band h2 { font-size:32px; }.about-band p:not(.eyebrow) { font-size:13px; }.contact-section { grid-template-columns:1fr;gap:35px; }.contact-email { font-size:26px; }.contact-staff { font-size:12px; }.portal-main { padding-top:45px; }.portal-heading h1 { font-size:82px; }.portal-grid { gap:18px;grid-template-columns:1fr; }.portal-card { padding:32px; }.card-kicker { margin-bottom:30px; }.portal-card h2 { font-size:38px; }.portal-help { grid-template-columns:1fr;gap:30px; }.portal-support { flex-wrap:wrap;gap:15px; }.footer-bottom { align-items:start;flex-direction:column;gap:6px; }.footer-bottom nav { gap:20px; } }
@media(max-width:520px) { .hero-power { min-height:830px; }.hero-power .hero-copy { padding:38px 6vw 340px; }.hero-power h1 { font-size:16vw; }.power-brand { width:310px;max-width:84%;right:8%; }.hero-bottom { min-height:60px; }.about-band { grid-template-columns:1fr;padding:45px 6vw;gap:24px; }.about-band h2 { font-size:33px; }.about-band .eyebrow { margin-bottom:16px; }.contact-email { font-size:20px; }.contact-section h2 { font-size:33px; }.contact-details>.btn { font-size:12px;padding:16px 18px;gap:20px; }.footer-contact>a { font-size:14px; }.footer-bottom { font-size:9px; }.footer-bottom nav { gap:16px;font-size:10px; }.portal-header { gap:12px; }.portal-header .brand-type>span { max-width:110px;line-height:1.7; }.back-link { font-size:10px;gap:7px; }.back-link .icon { width:16px; }.back-link>span { max-width:55px;line-height:1.5; }.portal-main { padding:40px 6vw 45px; }.portal-heading { padding-bottom:30px; }.portal-heading h1 { font-size:22vw;margin:22px 0; }.portal-heading:after { display:none; }.portal-heading .eyebrow { font-size:8px;letter-spacing:1.2px; }.portal-heading>p:last-child { font-size:13px; }.portal-card { padding:26px 23px; }.card-kicker { font-size:8px;letter-spacing:1.1px; }.card-kicker .icon { width:26px;height:26px; }.portal-card h2 { font-size:33px; }.portal-card>p { font-size:13px; }.portal-card>.btn { width:100%;gap:15px;font-size:12px; }.provider-note { font-size:10px; }.portal-help { margin-top:40px;padding-top:35px; }.portal-help h2 { font-size:29px; }.portal-help h3 { font-size:15px; }.portal-support>span { align-items:start; }.portal-support .icon { margin-top:3px; }.enquiry-ready .underlink { margin-left:0;display:flex;width:max-content; }.privacy-main { padding-top:45px;padding-bottom:55px; }.privacy-main h1 { font-size:52px; }.privacy-intro { font-size:14px;margin-bottom:35px; }.privacy-main section p { font-size:13px; } }
@media(prefers-reduced-motion:reduce) { .intro { display:none !important; } }
