/* Sussex RPC identity and the reference STORM homepage layout. */
:root{--navy:#0b203a;--blue:#073f7b;--gold:#fff;--muted:#3e5573;--line:#ced9e7;color:#092747;font-family:"Segoe UI",Arial,sans-serif}
body{background:#f2f5f8}.button.gold{background:#fff;border-color:#fff;color:#003b72}.masthead{border-bottom:0;background:#0b203a}.brand{gap:10px}.brand strong{font-size:19px;letter-spacing:-.02em;line-height:1.2}.brand small{font-size:13px;letter-spacing:0;font-weight:700;color:#e0e6ed}.brand-crest{width:60px;height:60px;flex-shrink:0;object-fit:contain;border-radius:0;box-shadow:none}.auth .button{font-size:14px;border-radius:3px;padding:10px 15px}.auth .button:not(.gold):not(.secondary){background:transparent;border-color:#a0acba}.auth .button.gold{color:#003b72}.auth .button.secondary{color:#003b72}.nav a[aria-current=page],.nav a:hover{color:#fff;border-color:#fff}.button,button.primary{border-radius:3px}.page-header h1{color:#092747}.card{border-radius:3px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.home-page .masthead{position:absolute;left:0;right:0;top:0;z-index:5;background:transparent}.home-page .masthead>.wrap{width:calc(100% - 60px);max-width:none}.home-page .top{padding:14px 0;align-items:center}.home-page .masthead .nav{display:none}.home-page #main>.wrap.section{position:relative;padding:100px 24px 0;background:#0b203a}.home-page #main>.wrap.section:empty{display:none}
.storm-hero{position:relative;min-height:700px;height:min(850px,100svh);background:#051827;overflow:hidden;color:white;display:flex;align-items:flex-end;padding:120px 24px 44px}.storm-scene{display:block;width:100%;height:100%}.storm-hero-image{position:absolute;inset:0}.storm-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,15,26,.66) 0%,rgba(2,15,26,.30) 42%,rgba(2,15,26,.82) 100%)}.storm-hero-content{position:relative;width:min(916px,100%);margin:0 auto;text-align:center}.storm-hero h1{font-size:30px;line-height:1.23;font-weight:650;letter-spacing:-.025em;max-width:680px;margin:0 auto 25px;text-shadow:0 1px 5px #0008}.storm-search{width:min(560px,100%);margin:0 auto}.storm-search-row{display:flex;align-items:stretch}.storm-search-row input{border:1px solid #c1cddd;border-right:0;border-radius:4px 0 0 4px;background:#fff;color:#193552;padding:15px 17px;min-height:54px;font-size:16px;min-width:0}.storm-search-row input::placeholder{color:#617289;opacity:1}.storm-search-row button{display:grid;place-items:center;width:53px;min-width:53px;border:0;border-radius:0 3px 3px 0;background:#063d72;color:white}.storm-search-row button:hover{background:#0a548f}.storm-icon{display:block;width:28px;height:28px}.storm-search .storm-icon{width:20px;height:20px}.storm-tiles{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;margin-top:30px}.storm-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:122px;background:#073f7b;color:#fff;text-decoration:none;padding:18px 8px 10px;font-size:14px;font-weight:700;line-height:1.3}.storm-tile:hover{background:#0c579e}.storm-tile>span:not(.tile-chevron){min-height:35px;display:flex;align-items:center;justify-content:center}.tile-chevron{display:block;width:9px;height:9px;border-right:2px solid white;border-bottom:2px solid white;transform:rotate(45deg);margin-top:auto}.storm-welcome{background:#fff;text-align:center;padding:58px 24px 64px;border-bottom:1px solid #ccd8e5}.storm-welcome-inner{max-width:660px;margin:0 auto}.storm-recruitment{font-size:13px;font-weight:750;text-transform:uppercase;color:#003b72;margin:0 0 16px}.storm-welcome h2{font-size:38px;color:#092747;font-weight:600;margin:0 0 18px;letter-spacing:-.025em}.storm-welcome-inner>p:not(.storm-recruitment){font-size:16px;line-height:1.65;color:#3e5573;margin:0 auto 18px}.storm-find{margin:31px auto 0;max-width:420px;text-align:left}.storm-find label{display:block;font-size:15px;font-weight:650;color:#092747;margin-bottom:7px}.storm-find-hint{font-size:14px;line-height:1.6;color:#4b6280;margin:10px 0 0}.storm-find-hint a{font-weight:650;color:#003b72}.storm-container{max-width:1120px;width:calc(100% - 48px);margin:0 auto}.storm-services{padding:40px 0 70px;background:#f2f5f8}.storm-services header{text-align:center;margin-bottom:28px}.storm-services h2{font-size:32px;margin:0 0 7px;color:#092747;font-weight:700}.storm-services header p{margin:0;color:#3e5573}.storm-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.storm-service-card{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #cdd9e8}.storm-card-image{display:block;height:220px;overflow:hidden;background:#0b274a}.storm-card-image svg{transition:transform .2s ease}.storm-service-card:hover .storm-card-image svg{transform:scale(1.025)}.storm-card-content{display:flex;flex-direction:column;align-items:flex-start;padding:20px;flex:1}.storm-card-content h3{font-size:19px;margin:0 0 9px;line-height:1.3}.storm-card-content h3 a{color:#003c71;text-decoration:none}.storm-card-content h3 a:hover{text-decoration:underline}.storm-card-content p{font-size:16px;line-height:1.5;color:#3e5573;margin:0 0 20px}.storm-card-cta{color:#003b72;font-weight:700;font-size:15px;margin-top:auto;padding-top:4px}.storm-footer{background:#0b203a;color:white}.storm-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.05fr;gap:35px;padding-top:33px;padding-bottom:52px}.storm-footer h2{font-size:13px;line-height:1.4;letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-weight:750}.storm-footer p{font-size:15px;margin:0 0 10px}.storm-footer nav a{display:block;width:fit-content;color:white;text-decoration:none;font-size:14px;margin:0 0 7px}.storm-footer nav a:hover{text-decoration:underline}.storm-footer .footer-roleplay{font-size:13px;color:#b6c6d8}.storm-discord{display:inline-block;background:#5865f2;border-radius:3px;padding:9px 18px;color:#fff;font-weight:700;font-size:14px;text-decoration:none}.storm-discord:hover{background:#4752c4}.storm-footer-bar{border-top:1px solid #ffffff20;text-align:center;padding:18px 24px}.storm-footer-bar p{font-size:12px;line-height:1.6;color:#b9c9dc;margin:0 0 5px}.storm-footer-bar a{color:#dce7f3}
@media(min-width:1600px){.storm-hero{height:700px}.storm-hero-content{margin-bottom:0}}
@media(max-width:1000px){.storm-tiles{gap:8px}.storm-tile{font-size:13px;padding-left:5px;padding-right:5px}.storm-card-image{height:180px}.storm-footer-grid{gap:25px}.storm-hero{min-height:680px}}
@media(max-width:700px){.home-page .masthead>.wrap{width:calc(100% - 30px)}.home-page .top{gap:12px;flex-direction:row;align-items:center}.home-page .auth{width:auto;justify-content:flex-end;gap:7px}.brand-crest{width:46px;height:46px}.brand strong{font-size:17px}.brand small{font-size:12px}.auth .button{padding:8px 11px;min-height:40px}.storm-hero{height:auto;min-height:710px;padding:165px 20px 30px}.storm-hero h1{font-size:26px}.storm-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:24px}.storm-tile{min-height:106px;font-size:13px;padding-top:14px;gap:7px}.storm-tile:last-child{grid-column:span 2}.storm-tile>span:not(.tile-chevron){min-height:27px}.storm-icon{width:24px;height:24px}.storm-welcome{padding:42px 22px 45px}.storm-welcome h2{font-size:31px}.storm-services{padding:34px 0 45px}.storm-services h2{font-size:28px}.storm-card-grid{grid-template-columns:1fr;gap:22px}.storm-container{width:calc(100% - 36px)}.storm-card-image{height:auto;aspect-ratio:16/9}.storm-footer-grid{grid-template-columns:1fr 1fr;padding-bottom:35px;gap:30px 20px}.storm-card-content{padding:22px}.storm-card-content p{margin-bottom:20px}.desktop-break{display:none}}
@media(max-width:380px){.brand strong{font-size:15px}.brand-crest{width:40px;height:40px}.brand{gap:7px}.auth .button{font-size:13px;padding:7px 9px}.storm-hero{padding-top:145px}.storm-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.storm-tile:last-child{grid-column:span 3}.storm-tile{min-height:101px}.storm-footer-grid{grid-template-columns:1fr 1fr}}
.storm-footer-follow{max-width:1120px;width:calc(100% - 48px);margin:0 auto;padding:0 0 28px}.storm-footer-follow h2{display:table;background:#07539f;color:#fff;padding:2px 5px;margin:0 0 10px;font-size:12px;text-transform:none;letter-spacing:0}.storm-footer-social-buttons{display:flex;gap:8px}.storm-footer-social-button{display:grid;place-items:center;width:36px;height:36px;color:#fff;text-decoration:none;border:1px solid #ffffff20;border-radius:2px}.storm-footer-social-button:hover{transform:translateY(-2px);filter:brightness(1.12)}.storm-footer-social-button .storm-icon{width:21px;height:21px}.storm-footer-social-button[data-network="discord"]{background:#5865f2}.storm-footer-social-button[data-network="tiktok"]{background:#111}.storm-footer-social-button[data-network="youtube"]{background:#e62117}.storm-footer-social-button[data-network="x"]{background:#111}@media(max-width:700px){.storm-footer-follow{width:calc(100% - 36px)}}
.storm-tiles{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;max-width:916px;margin:32px auto 0}.storm-tile{min-height:142px;padding:21px 10px 12px;font-size:15px;gap:12px;box-shadow:0 5px 10px #00162b66}.storm-tile .storm-icon{width:33px;height:33px}.storm-tile>span:not(.tile-chevron){min-height:38px}@media(max-width:700px){.storm-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.storm-tile{min-height:126px;font-size:14px;padding:17px 8px 10px}.storm-tile:last-child{grid-column:auto}.storm-tile .storm-icon{width:29px;height:29px}}@media(max-width:380px){.storm-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.storm-tile:last-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.storm-card-image svg{transition:none}}

.hero-community-logo{display:block;width:150px;height:150px;object-fit:contain;margin:0 auto 20px}
@media(max-width:700px){.hero-community-logo{width:120px;height:120px;margin-bottom:18px}}
.team-page{max-width:1000px;margin:0 auto;padding:10px 0 52px}.team-page-heading{display:flex;align-items:center;justify-content:center;gap:22px;text-align:left;margin:0 auto 34px}.team-page-logo{width:92px;height:92px;flex:0 0 92px;object-fit:contain}.team-page-heading .page-header{margin:0}.team-page-heading .lead{max-width:580px;margin:8px 0 0}.team-member-rows{display:grid;gap:20px}.team-member-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%;gap:20px;max-width:1000px;margin:0 auto}.team-member-row[data-columns="1"]{max-width:490px}.team-member-card{min-width:0;display:flex;align-items:center;gap:22px;padding:25px;background:#fff;border:1px solid #cdd9e8;border-top:4px solid #07539f;box-shadow:0 8px 20px #0b203a12}.team-member-avatar{width:128px;height:128px;flex:0 0 128px;border-radius:50%;object-fit:cover;background:#dce7f0}.team-member-avatar-fallback{display:grid;place-items:center;color:#fff;background:#07539f;font-weight:800;font-size:48px}.team-member-card h2{margin:2px 0 18px;color:#092747;font-size:25px;overflow-wrap:anywhere}.team-member-card .eyebrow{margin:0;color:#3f6285}.team-member-card dl{display:grid;grid-template-columns:1fr;gap:12px;margin:0}.team-member-card dt{font-size:11px;color:#5a7088;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.team-member-card dd{margin:3px 0 0;color:#092747;font-size:16px;font-weight:650;overflow-wrap:anywhere}@media(max-width:700px){.team-page-heading{justify-content:flex-start;gap:16px}.team-page-logo{width:72px;height:72px;flex-basis:72px}.team-member-row{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:1fr;max-width:none}.team-member-row[data-columns="1"]{max-width:none}.team-member-card{padding:20px}.team-member-avatar{width:96px;height:96px;flex-basis:96px}.team-member-card h2{font-size:22px}}@media(max-width:400px){.team-page-heading{align-items:flex-start}.team-page-logo{width:60px;height:60px;flex-basis:60px}.team-member-card{align-items:flex-start;flex-direction:column}.team-member-avatar{width:82px;height:82px;flex-basis:82px}}
.recruitment-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:28px 0}.recruitment-service-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:26px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:5px;text-decoration:none;color:inherit;box-shadow:0 8px 20px #0b203a12}.recruitment-service-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0b203a20}.recruitment-service-card img{width:80px;height:80px;object-fit:contain}.recruitment-service-card h2{margin:0;color:var(--navy);font-size:21px}.recruitment-service-card p{color:var(--muted);line-height:1.55;flex:1}.recruitment-service-card .button{margin-top:8px}.recruitment-service-banner{display:flex;align-items:center;gap:18px;padding:22px 26px;margin:0 0 24px;background:#f5f8fb;border-left:4px solid var(--blue);border-radius:4px}.recruitment-service-banner img{width:72px;height:72px;object-fit:contain}.recruitment-service-banner .page-header{margin:0}.recruitment-service-banner .page-header h1{font-size:28px}.recruitment-role-card{overflow:hidden}.recruitment-role-image{display:block;width:100%;height:180px;object-fit:cover;border-radius:4px;margin-bottom:18px}.recruitment-role-hero{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:5px;margin:0 0 22px}@media(max-width:950px){.recruitment-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.recruitment-service-grid{grid-template-columns:1fr}.recruitment-service-banner{align-items:flex-start;padding:18px}.recruitment-service-banner .page-header h1{font-size:24px}}
.police-recruitment-page{margin:0;background:#f2f1ef;color:#082d55}.police-recruitment-page main{max-width:960px;margin:0 auto;background:#f2f1ef;min-height:100vh}.police-careers-back{display:block;padding:14px 20px;color:#004f91;font-weight:700;text-decoration:none;background:#fff}.police-careers-hero{position:relative;height:300px;overflow:hidden}.police-careers-hero img{width:100%;height:100%;object-fit:cover}.police-careers-hero:after{content:'';position:absolute;inset:0;background:#061c3090}.police-careers-hero h1{position:absolute;z-index:1;inset:50% 20px auto;text-align:center;transform:translateY(-50%);margin:0;color:#fff;font-size:36px;line-height:1.35;text-shadow:0 2px 5px #000}.police-careers-content{max-width:500px;margin:0 auto;padding:16px 0 34px}.police-careers-content h2{margin:0 0 8px;font-size:22px}.police-careers-content>p{font-size:12px;line-height:1.5;margin:0 0 14px}.police-career-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.police-career-tile{display:block;background:#fff;color:#003f82;text-decoration:none;box-shadow:0 1px 2px #0003;min-width:0}.police-career-tile img,.police-career-tile-placeholder{display:block;width:100%;height:90px;object-fit:cover;background:linear-gradient(135deg,#123d65,#167c9f)}.police-career-tile span{display:block;min-height:45px;padding:12px 10px;font-size:12px;font-weight:700}.police-career-tile:hover{box-shadow:0 3px 8px #0004;transform:translateY(-1px)}@media(max-width:700px){.police-careers-content{padding:16px}.police-careers-hero{height:240px}.police-careers-hero h1{font-size:27px}.police-career-grid{grid-template-columns:repeat(2,1fr)}}
.police-role-page{max-width:620px;margin:0 auto;padding:22px 0 40px}.police-role-banner{display:block;width:100%;height:210px;object-fit:cover;margin-bottom:20px}.police-role-page h1{margin:4px 0 12px;font-size:32px}.police-role-intro,.police-role-section{background:#fff;padding:20px;line-height:1.6;white-space:pre-wrap;margin-top:14px}.police-role-section h2{margin:0 0 10px;font-size:21px}.police-role-section ul{margin:0;padding-left:22px}.police-role-application{background:#fff;padding:0;margin-top:18px;border:1px solid #c8d3dd}.police-role-application summary{cursor:pointer;padding:17px 20px;color:#fff;background:#064c88;font-size:17px;font-weight:700;list-style:none}.police-role-application summary::-webkit-details-marker{display:none}.police-role-application summary:after{content:'+';float:right;font-size:22px}.police-role-application[open] summary:after{content:'−'}.police-application-body{padding:20px}.police-application-body h2{margin-top:0}.police-application-body textarea{background:#fff}@media(max-width:700px){.police-role-page{padding:16px}.police-role-page h1{font-size:27px}}
.police-career-tile small{display:block;margin-top:7px;color:#38536c;font-size:11px;font-weight:400;line-height:1.4}
.service-role-thumbnail{display:block;width:100%;height:220px;object-fit:cover;background:#fff;margin:14px 0;border-radius:2px}.police-role-banner{object-fit:contain;background:#fff;padding:18px;height:180px}
.police-recruitment-page main{max-width:1100px}.police-careers-hero{height:340px}.police-careers-content{max-width:700px}.police-career-tile img,.police-career-tile-placeholder{height:120px}
.service-careers-heading{display:flex;align-items:center;gap:22px;padding:30px 38px;color:#fff;background:#0b6fae}.service-careers-heading.service-fire{background:#c83b27}.service-careers-heading.service-ambulance{background:#00857a}.service-careers-heading.service-staff{background:#5a4fa0}.service-careers-heading .eyebrow,.service-careers-heading p{color:#fff}.service-careers-heading img{width:88px;height:88px;object-fit:contain;background:#fff;border-radius:50%;padding:8px}.service-careers-heading h1{margin:0 0 7px;font-size:32px;color:#fff}.service-careers-heading p{margin:0;line-height:1.5}.service-careers-content{max-width:700px;margin:0 auto;padding:28px 0 44px}.service-careers-content h2{margin:0 0 8px}.service-careers-content>p{margin:0 0 18px;color:#38536c}.service-career-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-career-tile{display:block;background:#fff;color:#123f67;text-decoration:none;box-shadow:0 1px 3px #0003}.service-career-tile img,.service-career-placeholder{width:100%;height:125px;display:block;object-fit:cover;background:linear-gradient(135deg,#174f6e,#41a4a8)}.service-career-tile.service-fire .service-career-placeholder{background:linear-gradient(135deg,#9e2a1d,#ed8b45)}.service-career-tile.service-ambulance .service-career-placeholder{background:linear-gradient(135deg,#006d68,#4bbcaf)}.service-career-tile.service-staff .service-career-placeholder{background:linear-gradient(135deg,#4b3f8f,#9a96d2)}.service-career-tile span{display:block;padding:13px 12px;min-height:74px}.service-career-tile small{display:block;margin-top:6px;color:#38536c;font-size:11px;line-height:1.4}.service-role-page{max-width:700px;margin:0 auto;padding:22px 0 44px}.service-role-heading{display:flex;align-items:center;gap:18px;padding:20px;background:#0b6fae;color:#fff}.service-role-page.service-fire .service-role-heading{background:#c83b27}.service-role-page.service-ambulance .service-role-heading{background:#00857a}.service-role-page.service-staff .service-role-heading{background:#5a4fa0}.service-role-heading .eyebrow{color:#fff}.service-role-heading img{width:86px;height:86px;object-fit:contain;border-radius:4px;background:#fff;padding:6px}.service-role-heading h1{margin:5px 0 0;font-size:30px;color:#fff}.service-role-copy{background:#fff;padding:22px;margin-top:14px;line-height:1.65}.service-role-copy h2{margin:0 0 8px;font-size:21px}@media(max-width:700px){.service-careers-heading,.service-role-heading{padding:22px 16px;align-items:flex-start}.service-careers-heading h1{font-size:25px}.service-careers-content,.service-role-page{padding:20px 16px 36px}.service-career-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.police-careers-back{padding:12px 16px}.police-careers-hero{height:220px}.police-careers-hero h1{font-size:24px;line-height:1.25}.police-careers-content{max-width:none;padding:20px 16px 30px}.police-career-grid,.service-career-grid{grid-template-columns:1fr;gap:14px}.police-career-tile img,.police-career-tile-placeholder,.service-career-tile img,.service-career-placeholder{height:155px}.service-careers-heading{padding:24px 18px;gap:14px;flex-direction:column;align-items:flex-start}.service-careers-heading img{width:68px;height:68px}.service-careers-heading h1{font-size:27px}.service-careers-content{padding:22px 16px 34px}.police-role-page,.service-role-page{padding:16px 14px 30px}.police-role-banner{height:130px;padding:12px}.service-role-heading{padding:17px;gap:12px;flex-direction:column;align-items:flex-start}.service-role-heading img{width:68px;height:68px}.service-role-heading h1{font-size:25px}.service-role-thumbnail{height:170px;margin:12px 0}.police-role-intro,.police-role-section,.service-role-copy{padding:17px;font-size:15px}.police-role-application summary{padding:15px 17px}.police-application-body{padding:16px}.submission-dropdowns details.card{padding:16px}.submission-dropdowns summary{display:block;line-height:1.5}.submission-dropdowns .button{width:100%;text-align:center}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.form-actions{flex-direction:column;align-items:stretch}.form-actions .button,.form-actions button{width:100%;text-align:center}}
/* Preserve configured groups, wrapping cards before their text becomes cramped. */
.team-member-row[data-columns]{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:20px;max-width:1000px}
.team-member-row[data-columns="1"]{max-width:490px}
.team-member-row .team-member-card{box-sizing:border-box;flex:1 1 220px;max-width:490px;min-width:0;flex-direction:column;align-items:center;text-align:center;padding:24px 20px;gap:18px}
.team-member-card>div:not(.team-member-avatar){width:100%;min-width:0}
.team-member-card .team-member-avatar{width:104px;height:104px;flex:0 0 104px;max-width:100%}
.team-member-card h2{font-size:23px;line-height:1.3;margin:6px 0 16px}
.team-member-card h2,.team-member-card dd,.team-member-card .eyebrow{white-space:normal;word-break:normal;overflow-wrap:anywhere}
.team-member-card dl{width:100%;min-width:0}
@media(max-width:500px){.team-member-row .team-member-card{flex-basis:100%;max-width:100%}}
