@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/font-8.ttf) format('truetype');
}


:root{--bg:#080d13;--panel:#101923;--ink:#f6f8fb;--muted:#98a6b5;--blue:#47b9ee;--line:#ffffff1c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Barlow',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:800;line-height:1.02}h2{font-size:clamp(36px,4vw,56px)}h2 span{color:var(--blue)}p{line-height:1.7;color:var(--muted)}.wrap{width:min(1240px,90%);margin:auto}.topbar{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#030608;color:#97a7b6;font-size:10px;font-weight:700;letter-spacing:1.7px}.topbar a{letter-spacing:.4px;color:#dce4e9}.header{display:flex;align-items:center;gap:30px;padding:17px 5%;min-height:99px;border-bottom:1px solid var(--line);background:#0b1118}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:21px;line-height:1.08;font-weight:500;letter-spacing:1px}.brand img{width:64px;height:64px;object-fit:contain}.brand b{display:block;font-size:29px;font-weight:900;letter-spacing:3px}.brand small{font-size:7px;letter-spacing:1.2px;display:block;margin-top:6px}.header nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-left:auto;font-size:13px;font-weight:600}.navitem{position:relative;padding:15px 0;white-space:nowrap}.navitem>a:hover,.textlink:hover{color:var(--blue)}.dropdown{display:none;position:absolute;top:100%;left:-16px;min-width:180px;background:#162330;padding:12px;z-index:30;box-shadow:0 15px 30px #0006}.dropdown a{display:block;padding:9px}.dropdown a:hover{background:#254257}.navitem:hover .dropdown,.navitem:focus-within .dropdown{display:block}.button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;background:var(--blue);padding:17px 24px;color:#061522;font-weight:700;font-size:14px;border:1px solid var(--blue);transition:background .2s}.button:hover{background:#82d5fa}.button.ghost{background:#10182060;color:white;border-color:#ffffff65}.button.compact{padding:12px 17px;font-size:12px;white-space:nowrap}.hero{height:650px;min-height:570px;position:relative;overflow:hidden}.heroimage{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 42%}.herooverlay{position:absolute;inset:0;background:linear-gradient(90deg,#030c16ef 0%,#06111ecc 34%,#03101f20 100%),linear-gradient(0deg,#080d13 0%,transparent 35%)}.herocontent{position:relative;padding-top:84px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.2px;color:var(--blue);margin-bottom:18px}.line{display:inline-block;width:30px;height:2px;background:var(--blue);vertical-align:middle;margin-right:9px}.hero h1{font-size:clamp(58px,6.8vw,96px);letter-spacing:-1px;margin:24px 0;max-width:780px;line-height:.95}.hero h1 span{display:block}.outline{color:transparent;-webkit-text-stroke:1.3px white}.hero p{max-width:490px;white-space:pre-line;color:#c1cbd6;font-size:16px;margin-bottom:28px}.actions{display:flex;flex-wrap:wrap;gap:14px}.herobottom{position:absolute;bottom:30px;left:5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:2px}.herobottom>span:first-child{font-size:16px;font-weight:800}.herobottom b{color:var(--blue);padding-left:12px}.herobottom i{color:#667584;font-style:normal}.rinkstrip{background:#142638;border-top:1px solid #2b465e;border-bottom:1px solid #2b465e}.rinkinner{display:flex;align-items:center;gap:24px;padding:24px 0}.rinkicon{font-size:44px;color:var(--blue)}.rinkinner small{display:block;font-size:10px;letter-spacing:1.5px;color:#a1b3c5}.rinkinner strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:29px}.rinkinner p{margin:0 0 0 auto;font-size:14px;color:#dfe7ef}.rinkinner p small{letter-spacing:0;font-size:12px}.rinkinner>a{font-weight:700;font-size:13px;border-left:1px solid #fff3;padding-left:30px;margin-left:20px}.rinkinner>a span{margin-left:35px;color:var(--blue)}.section{padding:80px 0}.sectionheading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px}.sectionheading h2,.sectionheading h1{margin:0}.sectionheading .eyebrow{margin-bottom:10px}.textlink{font-size:13px;font-weight:700;display:inline-block;padding-bottom:8px;border-bottom:1px solid #7e909e}.newsgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.cardphoto{aspect-ratio:1.65;position:relative;overflow:hidden;background:#16212d}.cardphoto img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.newscard:hover img{transform:scale(1.035)}.tag{position:absolute;bottom:0;left:0;background:var(--blue);padding:7px 12px;font-size:9px;font-weight:800;letter-spacing:1px;color:#081824}.cardmeta{color:#8395a6;font-size:10px;letter-spacing:1.4px;margin:20px 0 12px;display:flex;justify-content:space-between}.cardmeta span{color:var(--blue);font-size:18px}.newscard h3{font-size:29px;margin-bottom:12px}.newscard p{font-size:13px;line-height:1.6}.teamsection{background:#111c27;border-block:1px solid #ffffff0c;padding:75px 0}.teamlayout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:center}.teamlayout p{max-width:400px;font-size:14px;margin-bottom:25px}.agegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.agegrid a{padding:22px 15px;min-height:122px;border:1px solid #334453;position:relative;background:linear-gradient(140deg,#1c2d3c,#12202c)}.agegrid a:hover{border-color:var(--blue)}.agegrid small{display:block;color:#8a9cac;font-size:8px;letter-spacing:1px}.agegrid b{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:34px;margin-top:16px}.agegrid span{position:absolute;bottom:15px;right:13px;color:var(--blue)}.community{text-align:center;padding:90px 0}.community h2{font-size:clamp(40px,5vw,67px)}.sponsors{border-top:1px solid var(--line);padding:60px 0;text-align:center}.sponsors h2{font-size:37px}.sponsorlogos{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;margin:35px 0}.sponsorlogos a{height:112px;flex:1 1 180px;max-width:290px;background:white;padding:17px;display:flex;align-items:center;justify-content:center}.sponsorlogos img{width:100%;height:100%;object-fit:contain}footer{background:#04080d;padding:55px 0 0}.footergrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.25fr;gap:35px}.footergrid>div>b{font-size:11px;letter-spacing:1.6px;display:block;margin-bottom:23px}.footergrid>div>a:not(.brand):not(.button){display:block;font-size:12px;color:#95a4b3;margin:12px 0}.footergrid p{font-size:12px;margin-top:18px}.legal{display:flex;justify-content:space-between;padding:24px 0;margin-top:40px;border-top:1px solid var(--line);font-size:10px;color:#789}.innerpage{min-height:60vh;padding:35px 0 80px}.breadcrumbs{font-size:12px;color:#8b9daf;margin-bottom:50px}.innerpage h1{font-size:clamp(44px,6vw,76px);max-width:1000px;margin-bottom:35px}.articlehero{max-height:550px;width:100%;object-fit:contain;background:#101923;margin-bottom:35px}.articlebody{max-width:860px;white-space:pre-line}.articlebody p{font-size:16px;color:#c2cdd7}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:30px}.gallery img{width:100%;height:230px;object-fit:contain;background:#14212c}.hoursbox{padding:35px;background:#152b3d;margin:30px 0;white-space:pre-line}.documents{margin:40px 0}.documents a{display:flex;gap:18px;padding:18px;background:#172634;border-bottom:1px solid #ffffff19}.documents a:hover{background:#25465e}.account{max-width:650px;margin:10vh auto;padding:30px}.account h1{font-size:65px;margin:25px 0}.account>a{display:table;margin-top:22px}.adminlayout{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.adminlayout aside{background:#101d28;padding:25px 18px;border-right:1px solid #fff1}.adminbrand{font-size:30px;font-weight:900}.adminbrand span{font-size:12px;color:var(--blue)}.adminlayout aside p{font-size:10px;letter-spacing:2px;margin-top:35px}.adminlayout aside button{display:flex;justify-content:space-between;width:100%;background:none;border:0;color:#b2c2d2;padding:13px 12px;text-align:left;font-size:13px}.adminlayout aside button.active{background:#248bbe33;color:var(--blue)}.adminlayout aside>a:last-child{display:block;margin-top:35px;font-size:12px}.adminmain{padding:45px;max-width:1300px;width:100%;overflow:hidden}.adminmain h1{font-size:42px}.notice{padding:18px;background:#173b50;margin-bottom:25px;border-left:3px solid var(--blue)}input,textarea,select{background:#111f2b;border:1px solid #3b4e60;padding:12px;color:white;max-width:100%;border-radius:2px}label{display:block;font-size:12px;color:#b0c1d1;margin-bottom:20px}label input,label textarea{display:block;width:100%;margin-top:8px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.checkbox{display:flex;align-items:center;gap:10px}.checkbox input{width:auto;margin:0}.adminlist>div{display:flex;align-items:center;gap:15px;padding:18px 0;border-bottom:1px solid #fff2}.adminlist strong{font-size:14px;flex:1}.adminlist small{display:block;color:#8ea4b5;font-size:11px;font-weight:400;margin-top:8px}.adminlist img{width:55px;height:45px;object-fit:cover}.adminlist button,.docedit button{background:none;color:var(--blue);border:1px solid #365064;padding:8px;font-size:12px}.adminlist button.danger{color:#e79595}.adminpreview{max-height:180px;margin-bottom:25px}.docedit{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:12px}.search{width:100%;margin-bottom:25px}.placeholder{display:grid;place-items:center;height:100%;font-weight:900;font-size:44px;color:#52738c}.muted{color:#89a}.editor{max-width:900px}@media(min-width:1600px){.herobottom{left:calc((100% - 1240px)/2)}}@media(max-width:1100px){.header{gap:18px;flex-wrap:wrap}.header nav{order:3;width:100%;justify-content:space-between;gap:12px}.header>.button{margin-left:auto}.hero{height:620px}.teamlayout{gap:35px}.agegrid{grid-template-columns:repeat(2,1fr)}.footergrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.topbar>span:nth-child(2){display:none}.topbar{font-size:8px;letter-spacing:.8px}.header{padding:14px 5%}.brand img{width:48px;height:48px}.brand b{font-size:23px}.header nav{flex-wrap:wrap;justify-content:flex-start;gap:0 20px;font-size:12px}.navitem{padding:7px 0}.hero{height:600px}.herocontent{padding-top:55px}.hero h1{font-size:60px}.heroimage{object-position:60% center}.hero p{font-size:14px}.herooverlay{background:linear-gradient(90deg,#03101ce8,#03101c65),linear-gradient(0deg,#080d13,transparent)}.hero .button{padding:14px 17px;font-size:12px;gap:16px}.herobottom>span:nth-child(2){display:none}.rinkinner{flex-wrap:wrap;gap:13px}.rinkinner p{margin:0;width:100%}.rinkinner>a{margin:0;padding:10px 0 0;border:0}.newsgrid{grid-template-columns:1fr;gap:32px}.section{padding:50px 0}.sectionheading{align-items:start}.sectionheading .textlink{font-size:11px;white-space:nowrap}.teamlayout{grid-template-columns:1fr}.teamsection{padding:50px 0}.agegrid{grid-template-columns:repeat(2,1fr)}.community{padding:60px 0}.footergrid{grid-template-columns:1fr 1fr;gap:35px 20px}.footergrid>div:first-child{grid-column:1/-1}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img{height:170px}.adminlayout{display:block}.adminlayout aside{display:flex;flex-wrap:wrap;gap:5px}.adminlayout aside button{width:auto}.adminlayout aside p{display:none}.adminlayout aside>a:last-child{margin:10px}.adminbrand{width:100%}.adminmain{padding:25px 5%}.adminlist>div{flex-wrap:wrap}.formgrid{grid-template-columns:1fr}.adminmain .sectionheading{flex-wrap:wrap}.account h1{font-size:55px}}
.calendar{width:100%;height:620px;border:0;background:white;margin:30px 0}.supportlinks{display:flex;flex-wrap:wrap;gap:15px;margin:30px 0}.innerpage .newsgrid{margin-top:25px}button:disabled{opacity:.5;cursor:wait}
.install{max-width:880px;padding:60px 0}.install h1{font-size:58px}.install h2{font-size:32px;margin-top:35px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:25px;background:#122637;margin-bottom:30px}.ok{color:#9ce2b6}.bad,.error{color:#ffb4b4}.error{border-left-color:#fa6e6e}.hours-table{width:100%;border-collapse:collapse;margin:20px 0 30px}.hours-table th,.hours-table td{text-align:left;padding:15px;border-bottom:1px solid #ffffff26}.pricegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:40px}.pricegrid article{padding:25px;background:#14212e;border:1px solid #ffffff16}.pricegrid h3{font-size:25px}.pricegrid b{font-size:25px;color:var(--blue)}.pricegrid p{font-size:13px;margin:15px 0 0}.playercard .cardphoto{aspect-ratio:3/4}.playercard .cardphoto img{object-fit:contain}.adminlayout aside .adminnav{display:block;padding:12px;color:#adc2d2;font-size:13px;margin:2px 0}.adminlayout aside .adminnav.active{background:#248bbe33;color:var(--blue)}.adminlayout aside>a:last-child{margin:10px}.adminlayout .button.small{padding:8px 12px;font-size:12px}.adminmain button:not(.button){background:#1c3447;color:white;border:1px solid #47647c;padding:10px}.adminmain select{display:block;width:100%;margin-top:10px}.adminmain input[type=file]{padding:10px}.adminmain .adminsearch{display:flex;gap:10px;margin:25px 0}.adminmain .adminsearch input{flex:1}.dashboardgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.dashboardgrid a{display:flex;flex-direction:column;padding:25px;background:#152838;border:1px solid #ffffff12}.dashboardgrid b{font-size:35px;color:var(--blue)}.dashboardgrid span{font-size:13px;margin-top:12px}.medialibrary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:25px 0}.medialibrary article{background:#142738;padding:15px;overflow:hidden}.medialibrary img{height:130px;width:100%;object-fit:contain;background:#fff}.medialibrary p{font-size:11px;word-break:break-all}.medialibrary input{font-size:10px;width:100%;margin-bottom:10px}.adminmain details{padding:20px;background:#122331;margin:25px 0}.adminmain summary{cursor:pointer;margin-bottom:15px;color:var(--blue)}fieldset{border:1px solid #456;padding:20px;margin-bottom:25px}.hint{font-size:12px}.revisionlist form{display:flex;gap:20px;align-items:center;margin:10px 0}.account form{margin-top:25px}.account label{font-size:14px}.account .checkbox{align-items:start}.account .checkbox a{text-decoration:underline}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.mobile-toggle{display:none}.submenu-toggle{background:none;border:0;color:#d0e4f0;padding:5px}.submenu-open .dropdown{display:block}.calendar-consent{background:#172b3b;padding:24px;margin:30px 0}.calendar-consent summary{cursor:pointer}.calendar-consent p{margin-top:20px}dialog#lightbox{max-width:94vw;max-height:95vh;border:0;padding:35px 15px 15px;background:#08131b;color:white}dialog#lightbox::backdrop{background:#000d}dialog#lightbox img{max-height:82vh;max-width:88vw}.lightbox-close{position:absolute;right:12px;top:5px;background:none;border:0;color:white;font-size:26px}.mt{margin-top:45px}.prices h2{margin-top:35px}.legal{gap:18px;flex-wrap:wrap}@media(max-width:1000px){.dashboardgrid,.medialibrary{grid-template-columns:repeat(2,minmax(0,1fr))}.pricegrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.mobile-toggle{display:block;background:none;border:1px solid #3e627a;color:white;padding:9px;margin-left:auto}.header nav{display:none}.header nav.open{display:flex}.header>.button.compact{display:none}.checks,.pricegrid{grid-template-columns:1fr}.install h1{font-size:42px}.adminlayout aside .adminnav{padding:9px;font-size:11px}.adminlist strong{min-width:160px}.adminlist form{margin:0}.hours-table th,.hours-table td{font-size:14px;padding:12px 5px}.adminmain .formgrid{display:block}.hero h1{font-size:56px}}
/* Orcas 2: roster cards and responsive introduction */
.roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:start;margin-top:28px}.roster-card{min-width:0;overflow:hidden;background:linear-gradient(150deg,#172b3c,#0f1b26);border:1px solid #314958;border-radius:8px;box-shadow:0 12px 40px #0002}.roster-photo{display:block;background:#101c26;padding:16px 16px 0}.roster-photo img{width:100%;height:320px;object-fit:contain;object-position:center top}.roster-info{padding:26px;overflow-wrap:anywhere}.roster-info h3{font-size:34px;margin:15px 0}.roster-group{display:flex;justify-content:space-between;gap:12px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:1.5px}.roster-group span{color:#fff}.roster-position{color:#fff;font-size:15px;font-weight:600;margin-bottom:18px}.roster-bio{border-top:1px solid #ffffff1c;padding-top:18px}.roster-bio p{font-size:15px;line-height:1.65;color:#c6d5e1}.roster-bio p:last-child{margin-bottom:0}.roster-bio h2,.roster-bio h3{font-size:27px}.captain-row{display:flex;justify-content:center;flex-wrap:wrap;gap:26px;margin:30px 0}.captain-row .roster-card{width:calc((100% - 52px)/3);border-color:var(--blue)}.captain-label{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--blue);color:#082136;padding:12px;font-size:12px;font-weight:800;letter-spacing:1.5px}.captain-label span{border:2px solid #082136;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:18px}.hero-media{position:absolute;inset:0}.hero-media .heroimage{object-position:center center}.hero-slide{opacity:0;visibility:hidden;transition:opacity .7s}.hero-slide.is-active{opacity:1;visibility:visible}.hero-controls{position:absolute;right:5%;bottom:25px;z-index:5;display:flex;align-items:center;gap:6px;background:#071522de;padding:7px;border:1px solid #7998ac;border-radius:6px}.hero-controls button{min-width:42px;min-height:42px;background:#193a50;border:1px solid #547183;color:white;padding:8px 13px}.hero-controls span{padding:0 8px;color:white;font-size:13px}.herooverlay{pointer-events:none}.herobottom{pointer-events:none}.hero-video{display:block;width:100%;height:100%;object-fit:contain;background:#02070d}.hero.hero-has-video{height:auto;min-height:0;display:flex;flex-direction:column}.hero-has-video .hero-media{position:relative;aspect-ratio:16/9;width:min(1240px,100%);margin:auto;order:0}.hero-has-video .herooverlay{display:none}.hero-has-video .herocontent{padding:45px 0;order:1}.hero-has-video .herobottom{position:static;margin:0 auto 28px;order:2}.slide-row{display:flex;align-items:center;gap:16px;border:1px solid #3c566b;background:#0c1b28;padding:14px;margin:12px 0}.slide-row>img{width:95px;max-height:90px;object-fit:contain}.slide-inputs{flex:1;min-width:0}.slide-tools{display:flex;flex-wrap:wrap;gap:6px;width:120px}.slide-row label{margin-bottom:10px}.hero-settings h3{font-size:28px;margin-top:28px}.hero-settings legend{font-weight:bold;font-size:20px;color:var(--blue)}
@media(max-width:1000px){.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.captain-row .roster-card{width:calc((100% - 26px)/2)}}
@media(max-width:700px){.hero{height:auto;min-height:0;display:flex;flex-direction:column}.hero-media{position:relative;inset:auto;width:100%;aspect-ratio:16/9;order:0;background:#07131e}.hero-media .heroimage{object-fit:contain;object-position:center center}.herooverlay{display:none}.herocontent{padding:32px 0 28px;order:1}.hero h1{font-size:clamp(37px,9.5vw,62px);overflow-wrap:anywhere;margin:15px 0 22px}.hero p{max-width:none}.herobottom{position:static;order:2;margin:0 auto 25px}.hero-controls{right:8px;bottom:8px;padding:3px;gap:3px}.hero-controls button{min-width:36px;min-height:36px;padding:6px 9px}.hero-controls span{font-size:11px}.hero-media:has(.hero-controls){margin-bottom:58px}.hero-controls{bottom:-54px}.roster-grid{grid-template-columns:1fr;gap:20px}.captain-row .roster-card{width:100%}.roster-photo img{height:auto;max-height:390px;width:100%}.roster-info{padding:23px}.roster-info h3{font-size:32px}.slide-row{flex-wrap:wrap}.slide-inputs{flex-basis:70%}.slide-tools{width:100%}.innerpage{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

.documents a{align-items:center;border:1px solid #344f63;border-radius:5px;margin:10px 0;gap:16px}.pdf-badge{flex-shrink:0;font-size:11px;font-weight:800;letter-spacing:1px;color:#092439;background:var(--blue);padding:10px;border-radius:3px}.document-name{flex:1;min-width:0;overflow-wrap:anywhere}.documents a>span:last-child{color:var(--blue)}
/* 3.0: aligned roster and club forms */
.roster-grid{align-items:stretch}.roster-card{display:flex;flex-direction:column}.roster-photo{flex:none;height:336px}.roster-photo img{height:320px;width:100%;object-fit:contain}.no-portrait{display:grid;place-items:center;background:linear-gradient(140deg,#183b50,#101c26)}.no-portrait span{color:#7799af;font-weight:900;font-size:42px;letter-spacing:5px}.roster-info{display:flex;flex-direction:column;flex:1}.roster-info h3{min-height:2.08em;margin-bottom:10px}.roster-position{min-height:2.8em;margin:0 0 14px;line-height:1.4}.roster-bio{display:block;min-height:150px;flex:1;width:100%}.contact-intro{max-width:740px;font-size:20px;line-height:1.7}.contact-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:40px 0}.contact-quick article{background:linear-gradient(135deg,#153447,#10202c);border:1px solid #2c4b60;border-radius:8px;padding:28px;overflow-wrap:anywhere}.contact-quick small{letter-spacing:2px;color:var(--blue);font-size:11px}.contact-quick h3{font-size:32px;margin:18px 0}.contact-quick a,.contact-team a{color:#69cfff}.contact-quick p{margin:0}.contact-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:start}.public-form-panel{background:#112331;padding:32px;border:1px solid #314d60;border-radius:10px;scroll-margin-top:30px}.public-form-panel h2,.contact-team h2{font-size:38px}.public-form-panel label{font-size:14px;line-height:1.5}.public-form-panel select{display:block;width:100%;margin-top:8px}.public-form-panel input,.public-form-panel textarea{background:#0b1924}.public-form-panel .checkbox{align-items:flex-start}.public-form-panel .checkbox input{margin-top:4px}.public-form-panel .checkbox a{color:var(--blue);text-decoration:underline}.contact-team article{padding:24px;background:#10202b;border-left:2px solid #2d8cb7;margin-bottom:15px;font-size:15px;line-height:1.9;overflow-wrap:anywhere}.contact-map{margin-top:45px;background:#102535;border:1px solid #2b495e;border-radius:8px;padding:30px;display:grid;grid-template-columns:1fr 1.8fr;gap:30px}.contact-map h2{font-size:38px}.map-placeholder{background:#0a1721;padding:25px;min-height:240px;display:flex;flex-direction:column;justify-content:center}.contact-map iframe{width:100%;height:370px;border:0;border-radius:6px}.application-page{max-width:950px}.entry-data{background:#132b3c;padding:25px;overflow-wrap:anywhere}.entry-data dt{color:var(--blue);font-size:12px;text-transform:uppercase;margin-top:20px}.entry-data dd{margin:6px 0 20px;line-height:1.6}.medialibrary form{border-top:1px solid #527388;margin-top:12px;padding-top:12px}.medialibrary video{width:100%}
@media(max-width:900px){.contact-layout,.contact-map{grid-template-columns:1fr}.contact-quick{grid-template-columns:1fr}.contact-quick article{padding:24px}.contact-intro{font-size:18px}}
@media(max-width:700px){.public-form-panel{padding:22px 18px}.contact-map{padding:22px 18px}.roster-photo{height:336px}.roster-photo img{height:320px;max-height:none}.roster-info h3{min-height:2.08em}.roster-bio{min-height:150px}}

.header nav{flex-wrap:wrap;min-width:0}.header nav .navitem{white-space:normal}.header nav .dropdown{white-space:nowrap}
.contact-team h3{font-size:28px;margin:0 0 8px}.contact-team .contact-role{color:#b8d2e3;margin:0 0 12px;font-weight:600}.contact-team article>a{display:block;overflow-wrap:anywhere}.contact-team article>p:last-child{margin-bottom:0}.rink-route{display:inline-block;margin-top:18px;font-weight:700}.club-legal{padding:24px;background:#101e28;border:1px solid #294253;border-radius:7px;margin-top:30px}.club-legal summary{cursor:pointer;color:#a8c0d0}.club-legal p{margin:20px 0 0}.contact-person-editor{background:#112735;border-radius:6px}.contact-editor legend{color:var(--blue);font-weight:700}.contact-editor .actions{gap:8px}.contact-editor>fieldset{margin-top:25px}
/* Community links and rink scheduling. */
.social-links{display:flex;align-items:center;gap:8px;flex-shrink:0}.social-links a{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff40;border-radius:50%;color:#fff;background:#18243b}.social-links svg{width:19px;height:19px;fill:currentColor}.social-links a:hover,.social-links a:focus-visible{background:#1762b8;outline:2px solid #72d7ff;outline-offset:2px}.topbar{flex-wrap:wrap}.herobottom .social-links{position:relative;z-index:2}.herobottom .social-links a{width:42px;height:42px}.contact-map-frame{display:block;width:100%;height:380px;border:0;border-radius:16px}.map-placeholder{min-width:0}.rink-calendar{margin:24px 0 48px;padding:24px;border:1px solid #ffffff25;border-radius:20px;background:#0d192b;color:#edf5ff;min-width:0;scroll-margin-top:100px}.calendar-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:18px}.calendar-toolbar label{display:grid;gap:5px;font-size:13px}.calendar-toolbar button,.calendar-toolbar input,.calendar-toolbar select{background:#1e304b;color:#fff;border:1px solid #516582;border-radius:8px;padding:10px;min-height:44px;width:auto}.calendar-toolbar button{cursor:pointer}.calendar-legend{display:flex;gap:10px 18px;flex-wrap:wrap;font-size:13px;margin-bottom:20px}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:10px;height:10px;border-radius:3px;display:block}.calendar-scroll{max-height:650px;overflow:auto;border:1px solid #40506a;border-radius:12px;overscroll-behavior:contain}.calendar-grid{display:grid;grid-template-columns:52px repeat(var(--days,7),minmax(120px,1fr));min-width:calc(52px + var(--days,7)*120px);position:relative;background:#132238}.calendar-day-head{position:sticky;top:0;z-index:5;background:#1f3452;padding:12px 6px;text-align:center;border-right:1px solid #40506a;font-size:13px;font-weight:700}.calendar-day-head.is-today{background:#154e78}.calendar-axis,.calendar-day{height:1440px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 29px,#ffffff0c 29px,#ffffff0c 30px,transparent 30px,transparent 59px,#ffffff25 59px,#ffffff25 60px);border-right:1px solid #40506a}.calendar-axis span{position:absolute;left:5px;font-size:11px;color:#c1d3eb}.calendar-day.is-today{background-color:#1b345040}.calendar-event{position:absolute;box-sizing:border-box;overflow:hidden;min-height:5px;border:1px solid #ffffff70;border-left:4px solid var(--event-color);border-radius:6px;background:var(--event-color);color:#07111f;padding:3px 5px;text-align:left;font-size:12px;line-height:1.2;cursor:pointer;box-shadow:0 2px 7px #0004;font-family:inherit;max-width:100%;white-space:normal}.calendar-event strong,.calendar-event small{display:block;font-size:inherit;overflow-wrap:anywhere}.calendar-event:focus-visible{outline:3px solid white;z-index:4}.calendar-event.is-draft{border-style:dashed;opacity:.65}.calendar-now{position:absolute;left:0;right:0;height:2px;background:#ff546c;z-index:3;pointer-events:none}.calendar-now:before{content:'';position:absolute;left:0;top:-4px;width:10px;height:10px;border-radius:50%;background:#ff546c}.calendar-dialog{background:#112239;color:white;border:1px solid #56708e;border-radius:18px;padding:28px;max-width:calc(100vw - 32px);width:440px}.calendar-dialog::backdrop{background:#0009}.calendar-dialog [data-cal-close]{float:right;background:none;color:white;border:0;font-size:28px;cursor:pointer}.calendar-dialog [data-cal-note]{white-space:pre-wrap;overflow-wrap:anywhere}.calendar-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin-bottom:28px}.calendar-types article{padding:16px;border:1px solid #ffffff30;border-radius:12px}.calendar-types form{display:grid;gap:10px}.calendar-types input[type=color]{height:45px;min-width:80px}.calendar-types button{margin:4px 0}.admin-main,.admincontent{min-width:0}
@media(max-width:700px){.rink-calendar{padding:14px;margin-top:16px}.calendar-toolbar{gap:7px}.calendar-toolbar input{max-width:150px}.calendar-scroll{max-height:570px}.herobottom{flex-wrap:wrap;gap:14px}.herobottom .social-links{display:flex}.topbar .social-links{display:flex}.contact-map-frame{height:320px}.calendar-types{grid-template-columns:1fr}.calendar-event{font-size:13px}}
.topbar{height:auto;min-height:44px;padding-top:5px;padding-bottom:5px;gap:8px}.social-links{pointer-events:auto}.adminmain{min-width:0}.calendar-toolbar input[type=date]{color-scheme:dark}.calendar-types label{display:grid;gap:6px}.calendar-types input{max-width:100%}

/* Isolate scheduling controls from generic admin form spacing and buttons. */
.rink-calendar .calendar-toolbar{align-items:flex-end;gap:10px}
.rink-calendar .calendar-toolbar label{margin:0;display:grid;gap:7px;line-height:1.3}
.rink-calendar .calendar-toolbar input,.rink-calendar .calendar-toolbar select{margin:0;display:block;height:44px;min-height:44px;box-sizing:border-box;line-height:normal;width:auto}
.rink-calendar .calendar-toolbar button,.adminmain .rink-calendar .calendar-toolbar button:not(.button){margin:0;height:44px;min-height:44px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;line-height:1;background:#1e304b;border:1px solid #516582;border-radius:8px}
.adminmain .rink-calendar button.calendar-event:not(.button){background:var(--event-color);border:1px solid #ffffff70;border-left:4px solid var(--event-color);padding:3px 5px;line-height:1.2;border-radius:6px}
.adminmain .rink-calendar .calendar-dialog button[data-cal-close]:not(.button){background:none;border:0;padding:0;font-size:28px;color:white}
.rich-field{margin:20px 0}.rich-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:6px;background:var(--panel);padding:12px;border:1px solid #455a76;border-radius:12px 12px 0 0}.rich-toolbar label{margin:0;font-size:12px;display:grid;gap:4px}.adminmain .rich-toolbar select,.rich-toolbar input{margin:0;width:auto;max-width:170px;height:38px;padding:5px}.adminmain .rich-toolbar button:not(.button){font-size:12px;padding:8px;min-height:38px}.rich-editor{display:none;min-height:300px;max-height:700px;overflow:auto;padding:20px;border:1px solid #455a76;border-top:0;border-radius:0 0 12px 12px;background:var(--bg);color:var(--ink);line-height:1.6;overflow-wrap:anywhere}.rich-ready .rich-editor{display:block}.rich-ready .rich-fallback{display:none}.rich-fallback{width:100%;min-height:250px}.rich-editor:focus{outline:2px solid var(--blue);outline-offset:2px}.rich-editor p{color:inherit;min-height:1em}.rich-toolbar{display:none}.rich-ready .rich-toolbar{display:flex}.rich-editor h2{font-size:28px}.rich-editor h3{font-size:23px}.rich-editor li{margin:5px 0}.pricegrid article{display:flex;flex-direction:column;min-width:0}.pricegrid .shop-add{margin-top:auto;padding-top:16px}.pricegrid h2{font-size:30px}.shop-cart,.shop-checkout{margin-top:32px;padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:14px;scroll-margin-top:25px}.cart-row{display:grid;grid-template-columns:1fr 100px 130px;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-row small{display:block;color:var(--muted);margin-top:6px}.cart-row label{margin:0}.cart-row input{width:85px}.cart-total{font-size:25px;margin:25px 0}.shop-clear{display:inline-block;margin:10px}.button:disabled{opacity:.55;cursor:not-allowed}.shop-checkout{background:var(--bg)}.brand img{object-fit:contain;background:transparent}.articlebody{overflow-wrap:anywhere}.articlebody span{max-width:100%}.shop-add .button{width:100%;justify-content:center}@media(max-width:650px){.cart-row{grid-template-columns:1fr 80px;gap:12px}.cart-row>strong{grid-column:1/-1}.shop-cart,.shop-checkout{padding:16px}.rich-toolbar{gap:5px;padding:8px}.rich-editor{padding:12px}.rich-toolbar label{max-width:100%}}

#mainnav{flex-wrap:wrap;column-gap:clamp(10px,1.2vw,24px);row-gap:0}

/* Service visibility, purchase switches and optional promotion badge. */
.price-quick-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.price-quick-controls .price-quick-form{margin:0;display:inline-flex}
.adminmain .price-quick-form button.price-switch{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 12px;border:1px solid #6e829a;border-radius:8px;background:#24344b;color:#e0e8f2;font:inherit;font-size:14px;cursor:pointer}
.adminmain .price-quick-form button.price-switch.is-on{background:#123e50;border-color:#47b9ee;color:#a6e9ff}
.price-switch:focus-visible{outline:3px solid #ffffff;outline-offset:3px}
.pricegrid article.service-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.pricegrid article.service-highlight{border:2px solid var(--service-accent);box-shadow:inset 0 5px 0 var(--service-accent)}
.service-badge{display:inline-block;max-width:100%;overflow-wrap:anywhere;background:var(--service-accent);color:var(--service-ink);padding:7px 12px;border-radius:6px;font-weight:800;font-size:14px;line-height:1.4}
.service-card .shop-add,.service-card .shop-unavailable{margin-top:auto}
.service-card .shop-unavailable,.service-card .shop-unavailable:hover{background:#39475a;color:#bdc7d5;border:1px solid #617087;opacity:1;cursor:not-allowed;box-shadow:none;transform:none}
@media(max-width:720px){.price-quick-controls{width:100%}.adminlist .price-quick-controls{grid-column:1/-1}.price-quick-form{flex:1}.price-quick-form button{width:100%;justify-content:center}}

/* Desktop hero: preserve the upper edge of team photographs on wide screens. */
@media (min-width:981px){
  .hero .hero-media .heroimage{object-position:center top}
}

/* Orcas 14: compact cards and vertical mobile navigation. */
:root{--roster-columns:4;--roster-name-size:22px;--service-columns:4;--service-title-size:22px}
.roster-grid{grid-template-columns:repeat(var(--roster-columns),minmax(0,1fr));gap:20px;align-items:stretch}
.roster-card{position:relative;min-width:0}
.roster-photo{height:clamp(200px,21vw,270px);padding:12px 12px 0}
.roster-photo img{height:100%;max-height:none;width:100%;object-fit:contain;object-position:center top}
.roster-info{padding:16px;min-width:0}
.roster-group,.roster-info>h3,.roster-position,.roster-bio{min-width:0}
.roster-group{font-size:11px;line-height:1.4;letter-spacing:1px}
.roster-info h3{font-size:var(--roster-name-size);min-height:0;line-height:1.2;margin:9px 0 10px;white-space:nowrap;overflow-wrap:normal}
.roster-info h3 a{display:block;max-width:100%;white-space:nowrap}
.roster-position{min-height:0;font-size:13px;line-height:1.45;margin:0 0 12px}
.roster-position:empty{margin:0}
.roster-bio{width:auto;min-height:0;flex:initial;padding-top:12px;margin-top:8px;overflow-wrap:anywhere}
.roster-bio:empty{padding-top:0}
.roster-bio p{font-size:14px;line-height:1.55;margin-bottom:10px}
.roster-bio h2,.roster-bio h3{font-size:20px;white-space:normal}
.captain-row{gap:20px}
.captain-row .roster-card{width:calc((100% - (var(--roster-columns) - 1)*20px)/var(--roster-columns))}
.captain-label{font-size:10px;padding:8px;letter-spacing:.8px}
.pricegrid{grid-template-columns:repeat(var(--service-columns),minmax(0,1fr));gap:16px;align-items:stretch}
.pricegrid article.service-card{padding:20px;gap:10px}
.pricegrid .service-card h3{font-size:var(--service-title-size);line-height:1.2;margin:0 0 4px;overflow-wrap:anywhere}
.pricegrid .service-card .service-price{font-size:22px;line-height:1.25}
.pricegrid .service-card p{font-size:13px;line-height:1.6;margin:0 0 10px}
.pricegrid .service-card p:last-child{margin-bottom:0}
.pricegrid .service-card .button{font-size:13px;padding:12px 14px}
@supports(grid-template-rows:subgrid){
 .roster-grid>.roster-card{display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:0;padding-bottom:16px}
 .roster-grid>.roster-card>.roster-info{display:contents}
 .roster-grid .roster-group{margin:14px 16px 0}
 .roster-grid .roster-info h3{margin:9px 16px 10px}
 .roster-grid .roster-position{margin:0 16px 12px}
 .roster-grid .roster-position:empty{margin:0 16px}
 .roster-grid .roster-bio{margin:8px 16px 0}
}
@media(max-width:1000px){
 .roster-grid,.pricegrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .captain-row .roster-card{width:calc((100% - 20px)/2)}
}
@media(max-width:980px){
 .header{flex-wrap:wrap;gap:12px}
 .header>.button.compact{display:none}
 .mobile-toggle{display:block;margin-left:auto;background:transparent;color:var(--ink);border:1px solid #3e627a;border-radius:6px;min-height:44px;padding:9px 12px}
 .header #mainnav{display:none;order:3;flex-basis:100%;width:100%;margin:0;padding:6px 12px;background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:0;font-size:15px}
 .header #mainnav.open{display:flex;flex-direction:column;align-items:stretch}
 .header #mainnav>.navitem{display:grid;grid-template-columns:minmax(0,1fr) 44px;width:100%;padding:0;white-space:normal;border-bottom:1px solid var(--line)}
 .header #mainnav>.navitem:last-child{border-bottom:0}
 .header #mainnav>.navitem>a{display:flex;align-items:center;padding:12px 8px;min-height:48px;min-width:0}
 .header #mainnav .submenu-toggle{min-width:44px;min-height:44px;padding:8px;font-size:22px;align-self:center;border-radius:5px}
 .header #mainnav .submenu-toggle[aria-expanded=true]{transform:rotate(180deg)}
 .header #mainnav .dropdown{display:none;grid-column:1/-1;position:static;min-width:0;width:100%;margin:0 0 8px;padding:0 0 0 10px;box-shadow:none;background:var(--bg);border-left:2px solid var(--blue);border-radius:0 5px 5px 0;white-space:normal}
 .header #mainnav .submenu-open>.dropdown{display:block}
 .header #mainnav .dropdown a{display:flex;align-items:center;min-height:44px;padding:10px 14px;line-height:1.4}
}
@media(max-width:600px){
 .roster-grid,.pricegrid{grid-template-columns:minmax(0,1fr)}
 .captain-row .roster-card{width:100%}
 .roster-photo{height:min(88vw,320px)}
}
