:root{--navy:#061e45;--ink:#102943;--blue:#095cbd;--green:#008966;--gold:#f7be00;--paper:#fff;--wash:#f5f7f8;--mint:#edf6f1;--line:#dce3e9;--muted:#576778;--radius:5px;--max:1216px;--shadow:0 12px 32px rgba(6,30,69,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6;background:var(--paper);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}button:disabled{opacity:.6;cursor:default}img{max-width:100%;display:block}svg{display:block;flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(34px,4.5vw,62px)}h2{font-size:clamp(30px,3.4vw,43px)}h3{font-size:23px}h4{font-size:18px}p+p{margin-top:16px}p{color:var(--muted)}:focus-visible{outline:3px solid #c88f00;outline-offset:4px}::selection{background:#fce6a0;color:var(--navy)}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding-block:88px}.section-sm{padding-block:52px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;line-height:1.5;color:var(--green);display:flex;gap:10px;align-items:center;margin-bottom:18px}.eyebrow:before{content:"";width:20px;height:3px;background:currentColor;flex-shrink:0}.eyebrow.gold{color:var(--gold)}.muted{color:var(--muted)}.tiny{font-size:12px}.small{font-size:14px}.lead{font-size:19px;line-height:1.65}.strong{font-weight:700}.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}.skip-link{position:fixed;left:15px;top:-100px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:12px}.icon{width:21px;height:21px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}.icon.sm{width:17px;height:17px}.icon.lg{width:28px;height:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:13px 21px;border:1px solid transparent;border-radius:3px;font-weight:700;font-size:14px;line-height:1.3;min-height:46px;transition:background .15s,transform .15s;white-space:normal}.btn:hover{transform:translateY(-1px)}.btn.primary{color:#fff;background:var(--blue);border-color:var(--blue)}.btn.primary:hover{background:#084d9e}.btn.navy{color:#fff;background:var(--navy)}.btn.green{color:#fff;background:var(--green)}.btn.gold{background:var(--gold);color:var(--navy)}.btn.outline{background:#fff;color:var(--navy);border-color:#bac7d3}.btn.white{background:#fff;color:var(--navy)}.btn.ghost{border-color:#7890af;background:transparent;color:white}.btn.compact{padding:9px 15px;font-size:13px;min-height:38px}.text-link{font-size:14px;display:inline-flex;gap:10px;align-items:center;font-weight:700;color:var(--blue);padding-block:5px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.text-button{padding:0;border:0;background:none;text-align:left}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.badge{display:inline-flex;gap:6px;align-items:center;font-size:11px;font-weight:700;line-height:1.4;padding:5px 9px;border-radius:3px;background:#edf2f7;color:#425a72;letter-spacing:.025em}.badge.green{background:#e1f4eb;color:#066442}.badge.gold{background:#fff3c7;color:#725900}.badge.blue{background:#e7f0ff;color:#064997}.badge.red{background:#fcebea;color:#9b352e}.dot{height:6px;width:6px;border-radius:50%;background:currentColor}.rule{border:0;border-top:1px solid var(--line);margin-block:24px}.notice{display:flex;gap:12px;align-items:flex-start;background:#f1f5fa;border:1px solid #dce6f1;border-left:3px solid var(--blue);font-size:13px;padding:15px 18px;border-radius:3px;color:var(--muted);line-height:1.6}.notice.gold{background:#fffbeb;border-color:#f3e7b7;border-left-color:#daa400}.notice.green{background:var(--mint);border-color:#c6e7d5;border-left-color:var(--green)}.notice strong{color:var(--ink)}.empty{text-align:center;padding:50px 24px;background:var(--wash);border:1px dashed #c2cdd7;border-radius:5px}.empty .icon{margin:0 auto 15px;color:var(--green)}.empty h3{margin-bottom:10px}.empty p{max-width:520px;margin-inline:auto}.empty .actions{justify-content:center;margin-top:20px}
/* Identity and navigation. Uploaded image files are unmodified. */
.utility{background:var(--navy);color:#d7e1ef;font-size:11px;letter-spacing:.03em}.utility .wrap{min-height:33px;display:flex;justify-content:space-between;align-items:center;gap:12px}.utility .right{display:flex;gap:18px;align-items:center}.utility b{color:#fff;font-weight:500}.utility .demo-label{color:#f9ce40;display:flex;align-items:center;gap:6px}.site-nav{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.nav-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;gap:12px;align-items:center;flex-shrink:0}.brand-mark{width:43px;height:54px;overflow:hidden;position:relative;flex-shrink:0;background:white}.brand-mark img{max-width:none;width:90px;height:90px;position:absolute;top:-24px;left:-23px}.brand-type{line-height:1.03;display:flex;flex-direction:column;color:var(--navy)}.brand-type strong{font-size:25px;letter-spacing:.055em}.brand-type span{font-size:10px;font-weight:800;letter-spacing:.15em;margin-top:5px;text-transform:uppercase}.brand-type small{font-size:10px;font-weight:400;letter-spacing:.03em;margin-top:5px;color:var(--muted)}.nav-links{display:flex;align-items:center;gap:27px}.nav-links>a:not(.btn){font-size:13px;font-weight:700;position:relative;padding-block:14px;white-space:nowrap}.nav-links>a.active:not(.btn):after{content:"";position:absolute;bottom:3px;left:0;right:0;height:3px;background:var(--green)}.nav-links .nav-portal{padding-left:22px;border-left:1px solid var(--line);color:var(--blue);display:flex;gap:6px;align-items:center}.nav-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:3px;padding:10px}.prototype-footer{padding:10px 24px;text-align:center;background:#fff6d9;color:#695516;font-size:11px}
/* Public home */
.home-hero{position:relative;overflow:hidden;background:#f8fafb}.hero-image{width:100%;height:auto;aspect-ratio:2030/775;object-fit:cover}.hero-overlay{position:absolute;left:12.65%;top:24%;right:50%}.hero-overlay .eyebrow{font-size:10px;letter-spacing:.14em;color:#456172}.hero-buttons{position:absolute;left:12.65%;top:66%;display:flex;gap:15px;align-items:center}.hero-buttons .text-link{color:var(--navy)}.hero-mobile-copy{display:none}.province-bar{border-bottom:1px solid var(--line);background:#fff}.province-inner{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:28px}.province-label{display:flex;gap:13px;align-items:center;font-size:13px;font-weight:700}.province-label .icon{color:var(--green)}.districts{display:flex;gap:42px;align-items:center}.districts a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;display:flex;gap:12px;align-items:center}.districts a:hover{color:var(--blue)}.districts a+ a{border-left:1px solid var(--line);padding-left:42px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.intro-grid h2{max-width:520px}.intro-grid .lead{font-size:17px;max-width:540px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:32px}.section-head h2{max-width:650px}.section-head p{margin-top:14px;max-width:590px}.three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.program-card{border-top:3px solid var(--green);padding:32px 28px;background:var(--wash);position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:252px}.program-card:nth-child(2){border-color:var(--blue)}.program-card:nth-child(3){border-color:var(--gold)}.program-card .icon{color:var(--green);margin-bottom:27px}.program-card:nth-child(2) .icon{color:var(--blue)}.program-card:nth-child(3) .icon{color:#9a7300}.program-card .number{position:absolute;right:25px;top:20px;font-size:39px;letter-spacing:-.07em;font-weight:700;color:#dfe6ea}.program-card h3{font-size:24px;margin-bottom:12px}.program-card p{font-size:14px;line-height:1.7}.program-card .text-link{margin-top:20px}.wash{background:var(--wash)}.club-card{border:1px solid var(--line);background:white;border-radius:5px;overflow:hidden;transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column}.club-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.club-card-cover{height:138px;position:relative;overflow:hidden;padding:22px;background:var(--navy);color:white}.club-card-cover:before{content:"";position:absolute;right:-12%;top:-35%;width:68%;height:205%;transform:rotate(31deg);background:var(--blue)}.club-card-cover:after{content:"";position:absolute;right:15%;top:-37%;width:18%;height:210%;transform:rotate(31deg);background:var(--green);border-inline:5px solid #fff}.club-card-cover.matara:before{background:var(--green)}.club-card-cover.matara:after{background:var(--gold)}.club-card-cover.hambantota:before{background:#0879b5}.club-card-cover.hambantota:after{background:var(--gold)}.club-card-cover .district-name{position:absolute;bottom:18px;left:23px;font-size:27px;font-weight:700;letter-spacing:-.03em;z-index:2}.club-card-cover .badge{position:relative;z-index:2;background:white;color:var(--navy);font-size:9px;letter-spacing:.08em}.club-body{padding:25px;display:flex;flex-direction:column;flex-grow:1}.club-body h3{font-size:22px;line-height:1.2;margin-bottom:9px}.club-body p{font-size:13px;line-height:1.7}.club-body .club-focus{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px;margin-bottom:21px}.club-bottom{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px}.club-bottom strong{color:var(--blue)}.inline-note{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted);margin-top:22px}.my-feature{background:var(--navy);color:white;overflow:hidden}.my-feature .feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:92px;align-items:center}.my-feature h2{font-size:47px;max-width:450px}.my-feature p{color:#bfcde0;font-size:16px;max-width:420px;margin-top:21px}.feature-links{display:flex;flex-direction:column;gap:16px;margin-block:28px;font-size:14px;color:#e4ecf6}.feature-links span{display:flex;align-items:center;gap:12px}.feature-links .icon{color:#48c59d}.mini-dashboard{background:#f6f8fb;border:1px solid #ced9e4;border-radius:7px;box-shadow:0 18px 0 -9px #173765,0 32px 0 -18px #214574;color:var(--ink);transform:rotate(-1deg)}.mini-top{border-bottom:1px solid var(--line);background:#fff;padding:17px 23px;border-radius:7px 7px 0 0;display:flex;align-items:center;justify-content:space-between;font-size:12px}.mini-top strong{color:var(--blue)}.mini-body{padding:26px}.mini-greeting{font-size:23px;letter-spacing:-.03em;font-weight:700;margin-bottom:5px}.mini-body p{color:var(--muted);font-size:12px;margin:0}.mini-club{background:#fff;padding:17px;display:flex;gap:13px;align-items:center;border:1px solid var(--line);border-radius:4px;margin:22px 0}.initial{height:43px;width:43px;display:flex;align-items:center;justify-content:center;background:#e5f2ee;color:var(--green);font-size:18px;font-weight:800;flex-shrink:0;border-radius:5px}.mini-task{background:white;border:1px solid var(--line);padding:18px;margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px}.mini-task .icon{color:var(--green)}.mini-task strong{display:block;margin-bottom:3px}.mini-progress{height:5px;width:100%;background:#e6ecf2;margin-top:14px}.mini-progress span{display:block;height:5px;background:var(--green);width:35%}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.step{border-top:1px solid #c5d0da;padding-top:22px}.step-number{font-size:13px;letter-spacing:.13em;font-weight:700;color:var(--green);margin-bottom:16px}.step h3{margin-bottom:14px;font-size:22px}.step p{font-size:14px}.cta-band{background:var(--mint);border-top:1px solid #c6e3d4}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:45px}.cta-band h2{font-size:29px}.cta-band p{margin-top:8px;font-size:14px}.site-footer{padding-top:54px;background:#fff;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:50px;padding-bottom:44px}.footer-grid h4{font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:20px}.footer-grid a:not(.brand),.footer-grid button{display:block;font-size:13px;color:var(--muted);margin-bottom:11px}.footer-grid p{font-size:12px;max-width:260px;margin-top:20px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:20px;font-size:11px;color:var(--muted)}
/* Inner public pages */
.page-top{background:var(--wash);border-bottom:1px solid var(--line);padding-block:52px 47px}.page-top .eyebrow{margin-bottom:15px}.page-top h1{font-size:47px;max-width:850px}.page-top p{font-size:17px;max-width:680px;margin-top:16px}.breadcrumbs{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:27px;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--blue)}.filters{display:flex;gap:18px;align-items:end;margin-bottom:29px;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label,.field .label{font-size:12px;font-weight:700;line-height:1.5;color:var(--ink)}.field input,.field select,.field textarea{background:white;border:1px solid #bfcbd5;min-height:46px;padding:11px 13px;border-radius:4px;color:var(--ink);font-size:14px;width:100%}.field textarea{min-height:116px;resize:vertical;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.field .help{font-size:11px;color:var(--muted);line-height:1.5}.search-field{flex:1;min-width:210px}.select-field{min-width:220px}.search-wrap{position:relative}.search-wrap .icon{position:absolute;top:14px;left:14px;color:var(--muted)}.search-wrap input{padding-left:43px}.results-line{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:22px;gap:15px}.club-header{background:var(--navy);color:white;position:relative;overflow:hidden}.club-header:after{content:"";background:var(--green);width:260px;height:600px;position:absolute;right:3%;top:-210px;transform:rotate(32deg);border-inline:9px solid var(--navy);opacity:.55;pointer-events:none}.club-header .wrap{position:relative;z-index:1;padding-block:32px 46px}.club-header .breadcrumbs{color:#b8cce4;margin-bottom:35px}.club-head-row{display:flex;gap:24px;align-items:center}.school-crest{background:white;color:var(--green);width:99px;height:109px;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;border-bottom:6px solid var(--gold)}.school-crest .icon{width:34px;height:34px}.school-crest span{font-size:10px;font-weight:700;margin-top:9px;letter-spacing:.13em}.club-head-row h1{font-size:41px;margin-block:13px 10px}.club-head-row p{color:#b8cce4;font-size:14px}.club-head-actions{margin-left:auto;flex-shrink:0}.tab-bar{border-bottom:1px solid var(--line);background:white}.tabs{display:flex;gap:35px;overflow-x:auto;scrollbar-width:thin}.tab{padding:19px 0 16px;white-space:nowrap;color:var(--muted);font-size:13px;font-weight:700;background:none;border:none;border-bottom:3px solid transparent}.tab.active{border-color:var(--green);color:var(--navy)}.two-col{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:36px;align-items:start}.panel{border:1px solid var(--line);border-radius:5px;background:white;padding:27px}.panel h3{font-size:23px;margin-bottom:16px}.panel p{font-size:14px;line-height:1.8}.panel + .panel{margin-top:23px}.panel .panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.panel .panel-head h3{margin:0;font-size:19px}.meta-list{margin:0;padding:0}.meta-list div{padding:14px 0;border-bottom:1px solid var(--line)}.meta-list div:first-child{padding-top:0}.meta-list div:last-child{border-bottom:0;padding-bottom:0}.meta-list dt{font-size:11px;color:var(--muted);margin-bottom:3px}.meta-list dd{font-size:14px;font-weight:700;margin:0}.project-card{border:1px solid var(--line);background:white;border-radius:5px;padding:25px;display:flex;flex-direction:column;gap:15px}.project-card .project-icon{width:49px;height:49px;background:var(--mint);color:var(--green);display:flex;align-items:center;justify-content:center;border-radius:5px}.project-card h3{font-size:23px}.project-card p{font-size:13px;line-height:1.75;flex-grow:1}.project-card .text-link{margin-top:auto}.project-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.event-list{display:flex;flex-direction:column;gap:16px}.event-item{display:flex;align-items:center;gap:22px;padding:24px;background:white;border:1px solid var(--line);border-radius:5px}.date-tile{height:68px;width:68px;background:#eff4fb;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--blue);flex-shrink:0}.date-tile strong{font-size:18px;letter-spacing:-.02em}.date-tile span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:700}.event-item h3{font-size:21px;margin:7px 0}.event-item p{font-size:12px}.event-item .btn{margin-left:auto;flex-shrink:0}.resource-card{border:1px solid var(--line);border-radius:5px;background:white;display:flex;flex-direction:column}.resource-top{padding:24px;background:#eaf1fa;min-height:94px;display:flex;align-items:center;justify-content:space-between;color:var(--blue)}.resource-top.green{background:#e9f5ef;color:var(--green)}.resource-top.gold{background:#fff6d5;color:#816107}.resource-body{padding:25px;display:flex;flex-direction:column;gap:14px;flex-grow:1}.resource-body h3{font-size:23px}.resource-body p{font-size:13px;flex-grow:1}.resource-body .btn{align-self:flex-start}.story-feature{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:5px}.story-feature .story-art{position:relative;min-height:330px;overflow:hidden}.story-art img{height:100%;width:100%;object-fit:cover;object-position:90% center}.story-feature .story-copy{padding:46px}.story-copy h2{font-size:35px;margin:16px 0}.story-copy p{color:#c3d1e3;font-size:15px}.story-copy .text-link{color:#f9cd3c;margin-top:23px}.editorial{max-width:760px}.editorial h2{font-size:30px;margin-bottom:24px}.editorial h3{font-size:21px;margin-block:31px 13px}.editorial p{line-height:1.85;font-size:16px}.about-values{margin-top:40px}
/* Onboarding */
.join-options{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:1000px;margin:0 auto}.join-card{border:1px solid #ccd8e1;padding:34px;display:flex;flex-direction:column;gap:20px;border-radius:5px;background:#fff;position:relative}.join-card .choice-icon{width:60px;height:60px;background:var(--mint);color:var(--green);display:flex;align-items:center;justify-content:center;border-radius:5px}.join-card:nth-child(2) .choice-icon{background:#eaf2ff;color:var(--blue)}.join-card h2{font-size:31px}.join-card p{font-size:15px;flex-grow:1}.join-card .btn{align-self:flex-start}.form-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:66px;max-width:1050px;margin-inline:auto}.form-aside{background:var(--navy);padding:32px;color:white;border-radius:5px;align-self:start}.form-aside h3{font-size:26px;margin-bottom:19px}.form-aside p{color:#bed0e4;font-size:13px}.form-steps{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-direction:column;gap:22px;counter-reset:step}.form-steps li{display:flex;align-items:center;gap:12px;font-size:13px;color:#afc2d9;counter-increment:step}.form-steps li:before{content:counter(step);width:26px;height:26px;background:#18385e;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px}.form-steps li.active{color:#fff}.form-steps li.active:before{background:var(--gold);color:var(--navy);font-weight:800}.form-title{font-size:29px;margin-bottom:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.span-2{grid-column:1/-1}.form-stack{display:flex;flex-direction:column;gap:20px}.form-head{margin-bottom:26px}.check-row{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.6}.check-row input{width:17px;height:17px;flex-shrink:0;margin:3px 0 0;accent-color:var(--green)}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.form-error{background:#fcebea;border:1px solid #e8b2ae;color:#902c25;font-size:13px;padding:12px 15px;border-radius:4px}.review-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-block:24px}.review-details div{background:var(--wash);padding:15px}.review-details dt{font-size:11px;color:var(--muted);margin-bottom:4px}.review-details dd{margin:0;font-size:14px;font-weight:700;overflow-wrap:anywhere}.success-box{max-width:690px;margin-inline:auto;border:1px solid var(--line);padding:44px;border-top:4px solid var(--green);border-radius:4px;background:#fff}.success-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--mint);color:var(--green);border-radius:50%;margin-bottom:25px}.success-box h1{font-size:36px;margin-bottom:16px}.success-box .reference{background:var(--wash);font-family:monospace;font-size:16px;padding:14px 17px;margin-block:22px}.login-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.login-visual{background:var(--navy);padding:65px;position:relative;overflow:hidden;color:white}.login-visual:before{content:"";width:260px;height:560px;position:absolute;bottom:-280px;right:10%;background:var(--green);transform:rotate(30deg);border:6px solid white;opacity:.6}.login-visual h1{font-size:49px;max-width:390px;margin-top:32px}.login-visual p{color:#bdcce0;max-width:350px;margin-top:23px}.login-visual .brand{background:white;padding:8px 15px;border-radius:4px;align-self:start}.login-choices{padding:55px 65px;display:flex;flex-direction:column;gap:15px}.login-choices h2{font-size:32px;margin-bottom:1px}.login-choices>p{font-size:14px;margin-bottom:6px}.role-choice{display:flex;align-items:center;gap:16px;text-align:left;padding:20px 18px;border:1px solid var(--line);background:white;border-radius:4px;width:100%;color:var(--ink)}.role-choice:hover{border-color:var(--blue);background:#f6f9fe}.role-choice .role-icon{width:44px;height:44px;background:#edf3fb;display:flex;align-items:center;justify-content:center;color:var(--blue);border-radius:4px;flex-shrink:0}.role-choice strong{font-size:15px;display:block}.role-choice small{font-size:11px;color:var(--muted);display:block;margin-top:3px}.role-choice>.icon{margin-left:auto}.login-choices .notice{font-size:11px;margin-top:5px}
/* Member workspace */
.portal-header .nav-inner{height:79px}.portal-header .brand-type strong{font-size:22px}.portal-header .brand-type small{display:none}.portal-word{font-size:18px;font-weight:700;letter-spacing:-.035em;border-left:1px solid var(--line);padding-left:25px;margin-left:10px;color:var(--blue)}.portal-head-left{display:flex;align-items:center;gap:18px}.portal-tools{display:flex;align-items:center;gap:21px}.role-selector{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.role-selector select{border:1px solid var(--line);background:white;color:var(--ink);padding:8px 10px;border-radius:3px;font-size:12px;max-width:180px}.portal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 112px);background:#f5f7fa}.sidebar{border-right:1px solid var(--line);background:#fff;padding:28px 18px;display:flex;flex-direction:column}.sidebar-label{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#718394;margin:0 16px 17px;font-weight:700}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-nav a{padding:12px 14px;display:flex;align-items:center;gap:12px;border-radius:4px;font-size:13px;color:var(--muted);font-weight:500}.sidebar-nav a:hover{background:#f4f7fa}.sidebar-nav a.active{background:#eaf1fc;color:var(--blue);font-weight:700}.sidebar-nav .count{font-size:10px;margin-left:auto;padding:1px 6px;background:#d5e4fa;color:var(--blue);border-radius:3px}.sidebar-bottom{margin-top:40px;padding:19px 13px;background:var(--mint);border-radius:4px}.sidebar-bottom strong{font-size:12px;color:#155640}.sidebar-bottom p{font-size:11px;line-height:1.65;margin-block:6px 13px}.sidebar-bottom button{font-size:11px;color:var(--green);font-weight:700}.sidebar-identity{margin-top:auto;padding:35px 9px 4px;display:flex;gap:10px;align-items:center}.sidebar-identity .initial{height:34px;width:34px;background:var(--navy);color:white;font-size:13px}.sidebar-identity strong{font-size:11px;display:block}.sidebar-identity small{font-size:10px;color:var(--muted)}.portal-content{padding:39px 42px 60px;max-width:1440px;width:100%;margin-inline:auto}.portal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:29px}.portal-heading .eyebrow{font-size:9px;margin-bottom:11px}.portal-heading h1{font-size:35px;line-height:1.2;letter-spacing:-.04em}.portal-heading p{font-size:13px;margin-top:10px}.portal-heading .actions{margin-top:27px}.portal-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:25px;align-items:start}.welcome-card{background:var(--navy);color:white;padding:27px 30px;display:flex;align-items:center;gap:23px;border-radius:5px;position:relative;overflow:hidden;margin-bottom:23px}.welcome-card:after{content:"";position:absolute;width:90px;height:350px;right:95px;top:-120px;background:#164985;transform:rotate(33deg);border-right:15px solid var(--green);opacity:.6}.welcome-card>*{z-index:1}.welcome-card .initial{background:white;width:61px;height:66px;border-bottom:4px solid var(--gold);border-radius:4px;color:var(--green)}.welcome-card h2{font-size:23px;margin-top:7px}.welcome-card p{font-size:11px;color:#b8cce4;margin-top:6px}.welcome-card .badge{background:#184861;color:#acf0d6;font-size:9px}.welcome-card .text-link{margin-left:auto;flex-shrink:0;color:white;font-size:11px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:26px}.stat{padding:20px;background:#fff;border:1px solid var(--line);border-radius:4px;display:flex;align-items:center;gap:14px}.stat .stat-icon{background:#f0f5fc;width:38px;height:38px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--blue)}.stat strong{font-size:28px;line-height:1;letter-spacing:-.04em;display:block}.stat span{font-size:10px;color:var(--muted);display:block;margin-top:7px}.portal-content .panel{padding:23px}.task-row{display:flex;align-items:flex-start;gap:13px;padding:19px 0;border-top:1px solid var(--line)}.task-row:last-child{padding-bottom:0}.task-marker{width:32px;height:32px;background:#edf4fc;color:var(--blue);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.task-row h4{font-size:14px;line-height:1.4;letter-spacing:-.01em}.task-row p{font-size:11px;line-height:1.7;margin-top:5px}.task-row .text-link{font-size:11px;margin-top:8px}.task-row>.badge{margin-left:auto;flex-shrink:0;font-size:9px}.course-block{border:1px solid var(--line);border-radius:4px;padding:19px;margin-top:15px}.course-block h4{font-size:15px;line-height:1.4;letter-spacing:-.01em;margin-block:13px 8px}.course-block p{font-size:11px;line-height:1.7}.progress-row{display:flex;justify-content:space-between;font-size:10px;margin-block:17px 7px;color:var(--muted)}.progress-track{height:5px;background:#e5ebf1;border-radius:3px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--green);transition:width .3s}.course-block .btn{width:100%;margin-top:19px;font-size:11px;min-height:36px;padding:10px}.small-event{display:flex;gap:13px;align-items:center}.small-event .date-tile{width:51px;height:56px}.small-event h4{font-size:14px;line-height:1.4;letter-spacing:0}.small-event p{font-size:10px;margin-top:5px;line-height:1.5}.portal-content .notice{font-size:11px;margin-top:24px}.portal-content .three-grid{gap:20px}.portal-content .resource-body{padding:22px}.portal-content .resource-body h3{font-size:20px}.portal-content .resource-top{padding:20px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:5px;background:#fff}.data-table{border-collapse:collapse;width:100%;font-size:12px;min-width:540px}.data-table th{padding:14px 20px;background:#f9fbfc;text-align:left;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:18px 20px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table .name{display:flex;gap:11px;align-items:center}.data-table .initial{width:31px;height:34px;font-size:12px}.data-table strong{font-size:12px}.data-table small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.review-card{background:white;border:1px solid var(--line);border-radius:5px;padding:24px;margin-bottom:19px}.review-card h3{font-size:21px;margin:15px 0 9px}.review-card p{font-size:13px;line-height:1.8}.review-card .actions{margin-top:20px}.review-card .review-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted);gap:12px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.summary-number{font-size:42px;font-weight:800;color:var(--blue);letter-spacing:-.05em;margin-top:8px}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.quick-action{background:white;border:1px solid var(--line);border-radius:5px;padding:23px;display:flex;flex-direction:column;gap:16px;color:var(--ink)}.quick-action>.icon{color:var(--green)}.quick-action strong{font-size:14px}.quick-action p{font-size:11px;line-height:1.7}.quick-action .text-link{font-size:11px}.admin-log{font-size:11px;line-height:1.7;display:flex;flex-direction:column;gap:12px}.admin-log div{padding-bottom:12px;border-bottom:1px solid var(--line)}.admin-log div:last-child{border-bottom:0;padding-bottom:0}.admin-log span{display:block;color:var(--muted);font-size:10px;margin-top:3px}
/* Dialogs */
dialog{border:0;border-radius:8px;padding:0;max-width:min(660px,calc(100vw - 32px));width:660px;color:var(--ink);box-shadow:0 22px 95px #061e4555;max-height:90dvh}dialog::backdrop{background:#061e45a6}.modal-head{padding:25px 30px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:white}.modal-head h2{font-size:25px;line-height:1.2}.modal-head p{font-size:11px;margin-top:6px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);flex-shrink:0}.modal-body{padding:28px 30px}.modal-body p{font-size:14px;line-height:1.8}.modal-body h3{font-size:20px;margin-block:24px 12px}.modal-body .notice{margin-block:20px}.modal-body .actions{margin-top:25px}.modal-body .form-stack{gap:18px}.lesson-list{display:flex;flex-direction:column;gap:15px;margin:22px 0}.lesson-item{display:flex;gap:13px;align-items:flex-start;background:var(--wash);padding:15px;border-radius:4px}.lesson-item .icon{color:var(--green)}.lesson-item strong{font-size:13px;display:block;margin-bottom:4px}.lesson-item p{font-size:12px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;visibility:hidden;background:var(--navy);border:1px solid #304d76;color:white;box-shadow:var(--shadow);border-radius:5px;padding:15px 22px;font-size:13px;max-width:calc(100vw - 30px);width:max-content;z-index:1000;transition:.2s;pointer-events:none}.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(min-width:1600px){.home-hero{max-height:620px}.hero-image{height:620px;object-fit:cover;object-position:center}.hero-overlay{top:24%}.hero-buttons{top:67%}}
@media(max-width:1180px){.wrap{width:calc(100% - 64px)}.nav-links{gap:17px}.nav-links>a:not(.btn){font-size:12px}.brand-type strong{font-size:23px}.nav-links .btn{padding:12px 15px;font-size:12px}.nav-links .nav-portal{padding-left:13px}.intro-grid{gap:50px}.my-feature .feature-grid{gap:45px}.my-feature h2{font-size:40px}.hero-buttons .btn{font-size:12px;padding:11px 15px;min-height:41px}.hero-buttons .text-link{font-size:12px}.hero-overlay .eyebrow{font-size:9px}.portal-content{padding:32px 26px}.portal-layout{grid-template-columns:208px minmax(0,1fr)}.portal-grid{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr)}.stat{padding:17px 13px;gap:10px}.stat .stat-icon{width:30px;height:30px}.stat .icon{width:17px;height:17px}.stat span{font-size:9px}.welcome-card{padding:25px 22px;gap:17px}.welcome-card h2{font-size:22px}.welcome-card .text-link{font-size:10px}.portal-head-left{gap:10px}.portal-word{padding-left:16px;font-size:16px}.portal-tools{gap:14px}.login-visual,.login-choices{padding:48px 38px}.portal-content .three-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;left:0;right:0;top:100%;background:white;border-bottom:1px solid var(--line);padding:22px 32px;box-shadow:var(--shadow);align-items:stretch;gap:7px;flex-direction:column}.nav-links.open{display:flex}.nav-links>a:not(.btn){font-size:14px;padding:12px}.nav-links>a.active:not(.btn):after{display:none}.nav-links .nav-portal{border-left:0}.nav-links .btn{align-self:flex-start;margin-top:10px}.nav-inner{height:84px}.hero-overlay{top:22%}.hero-buttons{top:68%;gap:10px}.hero-buttons .btn{font-size:11px;padding:9px 12px;min-height:36px}.hero-buttons .text-link{font-size:11px}.hero-buttons .icon{width:16px;height:16px}.districts{gap:22px}.districts a+ a{padding-left:22px}.province-label{font-size:11px}.districts a{font-size:10px;gap:8px}.section{padding-block:62px}.three-grid{gap:18px}.club-body{padding:20px}.club-body h3{font-size:20px}.program-card{padding:28px 22px}.program-card h3{font-size:22px}.intro-grid{gap:32px}.intro-grid .lead{font-size:15px}.my-feature h2{font-size:37px}.my-feature .feature-grid{gap:34px}.mini-body{padding:21px}.mini-greeting{font-size:21px}.feature-links{font-size:12px}.my-feature p{font-size:14px}.footer-grid{gap:28px;grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{display:none}.two-col{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:23px}.club-head-row h1{font-size:33px}.club-head-actions{margin-left:0;margin-top:20px}.club-head-row{flex-wrap:wrap}.club-head-row>div:nth-child(2){flex:1;min-width:250px}.club-head-actions{width:100%}.club-head-actions .btn{margin-left:123px}.form-layout{grid-template-columns:230px minmax(0,1fr);gap:35px}.form-aside{padding:25px}.portal-layout{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:23px 11px}.sidebar-nav a{font-size:11px;padding:12px 10px;gap:9px}.sidebar-nav .icon{width:18px;height:18px}.sidebar-label{font-size:9px}.portal-content{padding:30px 23px}.portal-heading h1{font-size:29px}.portal-grid{grid-template-columns:1fr}.portal-grid>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-grid>aside .panel+.panel{margin-top:0}.portal-head-left .brand-type{display:none}.portal-tools .text-link{font-size:11px}.portal-word{font-size:18px}.quick-actions{grid-template-columns:1fr;gap:13px}.quick-action{padding:17px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:12px}.quick-action p{display:none}.welcome-card .text-link{display:none}.portal-content .notice{font-size:11px}.login-choices{padding:42px 30px}.login-visual h1{font-size:40px}.profile-grid{grid-template-columns:1fr}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.utility .wrap{min-height:32px;font-size:9px}.utility .right>span:not(.demo-label){display:none}.nav-inner{height:80px}.brand-type strong{font-size:22px}.brand-type span{font-size:8px}.brand-type small{font-size:9px}.brand{gap:8px}.brand-mark{width:40px}.section{padding-block:48px}.section-sm{padding-block:35px}.home-hero{display:flex;flex-direction:column}.hero-image{order:2;aspect-ratio:auto;height:280px;object-fit:cover;object-position:right center;width:100%}.hero-overlay{display:none}.hero-mobile-copy{display:block;padding:35px 24px 15px;order:0;background:white}.hero-mobile-copy .eyebrow{font-size:9px}.hero-mobile-copy .hero-visible-title{font-size:43px;line-height:1.07}.hero-mobile-copy .hero-visible-title span{color:var(--green)}.hero-mobile-copy p{font-size:14px;margin-top:18px;max-width:420px}.hero-buttons{position:static;order:1;background:white;padding:10px 24px 30px;gap:18px;flex-wrap:wrap}.hero-buttons .btn{font-size:12px;min-height:43px;padding:12px 16px}.hero-buttons .text-link{font-size:12px}.province-inner{flex-direction:column;gap:15px;padding-block:22px;align-items:flex-start;min-height:auto}.province-label{font-size:12px}.districts{width:100%;gap:15px;justify-content:space-between}.districts a{font-size:9px;gap:6px}.districts a+ a{padding-left:15px}.districts .icon{height:14px;width:14px}.intro-grid{grid-template-columns:1fr;gap:23px}.intro-grid h2{font-size:34px;max-width:480px}.intro-grid .lead{font-size:16px}.three-grid{grid-template-columns:1fr;gap:22px}.program-card{min-height:0;padding:25px}.program-card .icon{margin-bottom:22px}.program-card h3{font-size:25px}.program-card p{font-size:14px}.program-card .number{font-size:37px}.section-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:27px}.section-head h2{font-size:33px}.section-head .text-link{font-size:12px}.club-card-cover{height:130px}.club-body{padding:24px}.club-body h3{font-size:25px}.club-body p{font-size:14px}.club-body .club-focus{margin-top:20px}.my-feature .feature-grid{grid-template-columns:1fr;gap:39px}.my-feature h2{font-size:40px}.my-feature p{font-size:16px}.feature-links{font-size:14px}.mini-dashboard{transform:none;margin-bottom:14px}.step-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.step-number{margin-bottom:11px}.step h3{font-size:23px}.cta-band .wrap{flex-direction:column;align-items:flex-start;padding-block:37px;gap:20px}.cta-band h2{font-size:28px}.cta-band .actions{gap:10px}.cta-band .btn{font-size:12px;padding:12px 16px}.footer-grid{grid-template-columns:1fr 1fr;gap:29px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:block}.footer-bottom{flex-direction:column;gap:10px}.site-footer{padding-top:36px}.page-top{padding-block:30px}.page-top h1{font-size:37px}.page-top p{font-size:15px}.breadcrumbs{margin-bottom:23px;font-size:10px}.filters{gap:15px;align-items:stretch}.search-field,.select-field{min-width:100%}.results-line{font-size:11px}.two-col{grid-template-columns:1fr}.club-header .wrap{padding-block:23px 32px}.school-crest{width:69px;height:80px}.school-crest .icon{width:27px;height:27px}.school-crest span{font-size:8px}.club-head-row{gap:15px;align-items:flex-start}.club-head-row>div:nth-child(2){min-width:190px}.club-head-row h1{font-size:28px;line-height:1.2;margin-block:10px}.club-head-row p{font-size:12px}.club-head-actions .btn{margin-left:0;width:100%}.club-head-actions{margin-top:9px}.tabs{gap:26px}.tab{font-size:12px;padding-block:17px 14px}.panel{padding:23px}.panel h3{font-size:22px}.event-item{flex-wrap:wrap;padding:19px;gap:15px}.date-tile{width:53px;height:59px}.event-item>div:nth-child(2){flex:1;min-width:190px}.event-item h3{font-size:20px}.event-item .btn{margin-left:68px;font-size:11px;min-height:37px}.story-feature{grid-template-columns:1fr}.story-feature .story-art{min-height:220px;max-height:240px}.story-feature .story-copy{padding:28px}.story-copy h2{font-size:30px}.editorial p{font-size:15px}.join-options{grid-template-columns:1fr;gap:20px}.join-card{padding:28px}.join-card h2{font-size:30px}.form-layout{grid-template-columns:1fr;gap:27px}.form-aside{padding:23px}.form-aside h3{font-size:25px;margin-bottom:13px}.form-aside>p{display:none}.form-steps{flex-direction:row;gap:15px;margin:19px 0 0;flex-wrap:wrap}.form-steps li{font-size:11px;gap:7px}.form-steps li:before{width:22px;height:22px}.form-grid{grid-template-columns:1fr;gap:18px}.span-2{grid-column:auto}.form-title{font-size:27px}.form-bottom{gap:12px;flex-wrap:wrap}.form-bottom .btn{font-size:12px}.review-details{grid-template-columns:1fr;gap:13px}.success-box{padding:28px}.success-box h1{font-size:31px}.success-box p{font-size:14px}.success-box .actions{gap:10px}.success-box .btn{font-size:12px}.login-wrap{grid-template-columns:1fr;min-height:0}.login-visual{padding:34px 27px}.login-visual .brand{display:none}.login-visual h1{font-size:38px;margin-top:12px;max-width:320px}.login-visual p{margin-top:18px;font-size:14px}.login-choices{padding:33px 24px}.login-choices h2{font-size:29px}.role-choice{padding:18px 15px}.role-choice strong{font-size:14px}.role-choice small{font-size:11px}.portal-header .nav-inner{height:auto;min-height:79px;gap:9px;padding-block:12px;flex-wrap:wrap}.portal-header .wrap{width:calc(100% - 32px)}.portal-word{font-size:18px;border-left:none;padding-left:0;margin-left:0}.portal-head-left{gap:10px}.portal-header .brand-mark{display:none}.portal-tools{gap:13px}.role-selector>span{display:none}.role-selector select{font-size:11px;max-width:150px;padding:8px}.portal-tools>.text-link{font-size:10px;gap:4px}.portal-tools>.text-link .icon{width:14px;height:14px}.portal-layout{grid-template-columns:1fr}.sidebar{padding:0;border-right:none;border-bottom:1px solid var(--line);overflow:hidden}.sidebar-label,.sidebar-bottom,.sidebar-identity{display:none}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:10px 16px;gap:6px;scrollbar-width:thin}.sidebar-nav a{flex-shrink:0;padding:10px 12px;font-size:11px;gap:7px;min-height:39px}.sidebar-nav .icon{width:16px;height:16px}.sidebar-nav .count{font-size:9px}.portal-content{padding:27px 20px 43px}.portal-heading{gap:14px;margin-bottom:22px;flex-direction:column}.portal-heading h1{font-size:29px}.portal-heading p{font-size:12px}.portal-heading .actions{margin-top:3px}.portal-heading .btn{font-size:11px;padding:10px 14px;min-height:38px}.welcome-card{padding:22px 19px;gap:15px;margin-bottom:18px}.welcome-card .initial{width:45px;height:52px;font-size:18px}.welcome-card h2{font-size:19px;line-height:1.2}.welcome-card p{font-size:10px}.welcome-card .badge{font-size:8px}.welcome-card:after{right:40px}.stats{gap:9px;margin-bottom:20px}.stat{padding:17px 11px;display:block}.stat .stat-icon{display:none}.stat strong{font-size:25px}.stat span{line-height:1.45;font-size:9px;margin-top:8px}.portal-grid{gap:21px}.portal-grid>aside{grid-template-columns:1fr;gap:20px}.portal-content .panel{padding:21px}.portal-content .three-grid{grid-template-columns:1fr}.task-row{gap:11px}.task-row h4{font-size:13px}.task-row>.badge{font-size:8px;padding:4px 6px}.task-row p{font-size:10px}.task-marker{width:28px;height:28px}.task-marker .icon{width:17px;height:17px}.panel .panel-head h3{font-size:18px}.panel .panel-head .text-link{font-size:10px}.portal-content .notice{margin-top:20px;font-size:10px;padding:13px}.quick-action{grid-template-columns:25px 1fr;gap:13px}.quick-action .text-link{grid-column:2;font-size:11px;padding:0}.quick-action strong{font-size:13px}.modal-head{padding:22px}.modal-head h2{font-size:23px}.modal-body{padding:23px}.modal-body p{font-size:13px}.modal-body .btn{font-size:12px}.profile-grid{gap:18px}.portal-content .event-item>div:nth-child(2){min-width:170px}.portal-content .event-item .btn{margin-left:0}.review-card{padding:21px}.review-card h3{font-size:22px}.review-card .review-top{flex-wrap:wrap}.review-card .actions .btn{font-size:11px}.portal-content .data-table{font-size:11px}.toast{font-size:11px;bottom:15px;padding:13px 18px}.inline-note{font-size:10px;align-items:flex-start}.prototype-footer{font-size:10px;padding:10px 18px}}
@media(max-width:380px){.hero-mobile-copy .hero-visible-title{font-size:37px}.hero-image{height:250px}.utility .demo-label{font-size:8px}.utility .wrap{width:calc(100% - 26px)}.brand-type strong{font-size:20px}.province-inner{padding-block:18px}.districts{gap:8px}.districts a+ a{padding-left:9px}.districts a{font-size:8px}.role-selector select{max-width:133px;font-size:10px}.portal-tools>.text-link{font-size:9px}.portal-word{font-size:16px}.portal-heading h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover,.club-card:hover{transform:none}}
@media print{.utility,.site-nav,.sidebar,.site-footer,.prototype-footer,.actions,.filters,.btn,.toast{display:none!important}.portal-layout,.portal-grid,.two-col{display:block}.wrap,.portal-content{width:100%;padding:0}.section{padding-block:20px}.panel,.club-card{break-inside:avoid}.home-hero{break-inside:avoid}body{font-size:11px}}

.hero-visible-title{font-weight:700;letter-spacing:-.035em}

/* Ruhunu NextGen Tourism — public site. Base system from the supplied v2 design. */
:root { --max:1216px; --radius:4px; --soft-gold:#fff7dd; }
body { text-rendering:optimizeLegibility; }
a,button { touch-action:manipulation; }
.nav-inner { height:92px; }
.nav-links { gap:22px; }
.nav-links>a:not(.btn) { font-size:12px; }
.nav-links .btn { font-size:12px; padding:13px 17px; }
.utility .right>a { color:#e7edf7; font-size:10px; }
.utility .right>a:hover { text-decoration:underline; }
.utility .demo-label { color:#f4cf57; }
.section { padding-block:80px; }
.intro-grid .lead { font-size:17px; }
.programme-intro .intro-grid { align-items:start; }
.programme-intro .text-link { margin-top:20px; }
.source-inline { background:none; border:0; color:var(--muted); display:flex; gap:6px; align-items:center; font-size:11px; padding:0; margin-top:16px; }
.source-inline .icon { height:13px; width:13px; }
.source-inline:hover { text-decoration:underline; }
.hero-overlay { top:23%; }
.hero-buttons { top:68%; }
.hero-picture { display:contents; }
.entry-routes { border-bottom:1px solid var(--line); }
.entry-routes .wrap { display:grid; grid-template-columns:repeat(3,1fr); }
.entry-routes a { display:flex; align-items:center; gap:18px; padding:26px 24px; }
.entry-routes a:first-child { padding-left:0; }
.entry-routes a+a { border-left:1px solid var(--line); }
.entry-routes a:last-child { padding-right:0; }
.entry-routes a>svg:first-child { color:var(--green); height:27px; width:27px; }
.entry-routes a>svg:last-child { margin-left:auto; color:var(--blue); }
.entry-routes strong { display:block; font-size:15px; }
.entry-routes small { display:block; color:var(--muted); font-size:12px; margin-top:3px; }
.entry-routes a:hover strong { color:var(--blue); }
.activity-section { padding-top:68px; }
.activity-card { background:white; border:1px solid var(--line); border-radius:4px; overflow:hidden; display:flex; flex-direction:column; }
.activity-art { min-height:216px; position:relative; overflow:hidden; display:block; color:white; background:var(--navy); isolation:isolate; }
.activity-art::before,.activity-art::after { content:""; position:absolute; z-index:-1; pointer-events:none; }
.activity-art::before { width:300px; height:450px; right:-155px; top:-105px; background:var(--blue); transform:rotate(28deg); border-left:4px solid rgba(255,255,255,.86); }
.activity-art::after { width:110px; height:300px; right:70px; top:80px; background:var(--green); transform:rotate(31deg); border-left:4px solid rgba(255,255,255,.8); }
.art-index { position:absolute; left:23px; top:20px; font-size:10px; text-transform:uppercase; font-weight:700; letter-spacing:.12em; z-index:2; }
.art-symbol { position:absolute; top:64px; left:25px; color:white; }
.art-symbol>.icon { width:57px; height:57px; stroke-width:1.25; }
.art-word { position:absolute; bottom:24px; left:23px; font-size:29px; font-weight:800; line-height:1; letter-spacing:-.035em; }
.art-arrow { position:absolute; right:22px; bottom:23px; width:30px; height:30px; display:flex; align-items:center; justify-content:center; z-index:2; }
.activity-art.heritage { background-image:linear-gradient(90deg,rgba(6,30,69,.4),rgba(6,30,69,0)),url('/design/banner-mobile.jpg'); background-size:cover; background-position:center; }
.activity-art.heritage::before { width:120px; background:#061e45; opacity:.6; right:auto; left:-62px; }
.activity-art.heritage::after { display:none; }
.activity-art.heritage .art-word { font-size:27px; text-shadow:0 2px 20px #061e45; }
.activity-art.heritage .art-symbol { display:none; }
.activity-art.art { background:#f7be00; color:var(--navy); }
.activity-art.art .art-symbol { color:var(--navy); }
.activity-art.art::before { background:#0b664f; border:0; width:150px; height:330px; top:70px; right:14px; }
.activity-art.art::after { background:var(--blue); width:100px; height:330px; right:-24px; top:75px; }
.activity-art.environment { background:#08715b; }
.activity-art.environment::before { width:250px; height:250px; border:1px solid rgba(255,255,255,.3); border-radius:50%; top:-80px; right:-100px; background:none; box-shadow:0 0 0 25px rgba(255,255,255,.06),0 0 0 50px rgba(255,255,255,.06),0 0 0 75px rgba(255,255,255,.06); }
.activity-art.environment::after { background:#04453c; border-color:var(--gold); border-left-width:6px; height:300px; top:115px; right:-25px; width:310px; transform:rotate(63deg); }
.activity-art.speech { background:#095cbd; }
.activity-art.speech::before { background:var(--navy); }
.activity-art.speech::after { background:#f7be00; }
.activity-art.innovation { background:var(--navy); }
.activity-art.innovation .art-symbol { color:var(--gold); }
.activity-art.innovation::before { background:var(--gold); right:-190px; }
.activity-art.innovation::after { background:#008966; }
.activity-art.culture { background:#07519d; }
.activity-art.culture::before { background:#008966; }
.activity-art.culture::after { background:var(--navy); border-color:var(--gold); }
.activity-art.awards { background:var(--navy); }
.activity-art.awards .art-symbol { color:var(--gold); }
.activity-art.awards::before { background:var(--gold); width:180px; right:-142px; }
.activity-art.awards::after { border-color:var(--gold); background:#0b365f; right:-90px; }
.activity-body { padding:25px 25px 26px; display:flex; flex-direction:column; align-items:start; flex:1; }
.activity-category { text-transform:uppercase; font-size:9px; letter-spacing:.075em; color:var(--green); font-weight:700; line-height:1.65; }
.activity-body h3 { font-size:25px; line-height:1.15; margin:12px 0; letter-spacing:-.025em; }
.activity-body p { font-size:13px; line-height:1.8; margin-bottom:20px; }
.activity-body .text-link { font-size:12px; margin-top:auto; }
.activity-card:hover h3 { color:var(--blue); }
.activity-card:hover .art-arrow { transform:translate(2px,-2px); }
.programme-ribbon { padding-top:26px; margin-top:30px; border-top:1px solid var(--line); display:flex; align-items:center; gap:28px; }
.programme-ribbon>span { display:flex; align-items:center; gap:12px; font-size:14px; font-weight:700; flex-shrink:0; }
.programme-ribbon>span svg { color:var(--green); }
.programme-ribbon p { font-size:12px; }
.programme-ribbon .text-link { margin-left:auto; font-size:12px; flex-shrink:0; }
.network-feature { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.network-feature .lead { font-size:16px; margin:24px 0; max-width:470px; }
.district-chips { display:flex; gap:10px; flex-wrap:wrap; margin:24px 0 30px; }
.district-chips>span { display:flex; gap:6px; align-items:center; padding:6px 10px; background:var(--wash); color:var(--muted); font-size:11px; }
.district-chips svg { width:13px; height:13px; }
.network-feature .btn,.network-feature .text-link { font-size:12px; }
.micro-note { font-size:10px; margin-top:15px; }
.zone-board { border:1px solid var(--line); background:#fff; }
.zone-board-head { display:flex; gap:20px; justify-content:space-between; padding:29px; background:var(--mint); border-bottom:1px solid var(--line); }
.zone-board-head .eyebrow { font-size:9px; }
.zone-board-head h3 { font-size:25px; }
.zone-board-head>svg { color:var(--green); }
.zone-row { width:100%; display:flex; align-items:center; gap:17px; text-align:left; padding:20px 27px; border:0; border-bottom:1px solid var(--line); background:white; }
.zone-row:hover { background:var(--wash); }
.zone-index { color:var(--green); font-family:monospace; font-size:12px; }
.zone-row strong { font-size:14px; }
.zone-row small { display:block; font-size:11px; color:var(--muted); margin-top:4px; }
.zone-row>svg { margin-left:auto; color:var(--blue); }
.zone-board-foot { font-size:10px; color:var(--muted); padding:15px 27px; background:var(--wash); }
.my-feature .feature-grid { gap:100px; }
.my-feature h2 { font-size:clamp(38px,3.5vw,50px); }
.my-feature p { max-width:430px; }
.portal-preview-card { background:white; border-radius:6px; overflow:hidden; color:var(--ink); border:1px solid #d0dcec; box-shadow:15px 15px 0 #143761; }
.preview-top { display:flex; justify-content:space-between; align-items:center; padding:21px 25px; border-bottom:1px solid var(--line); }
.preview-top>strong { font-size:17px; letter-spacing:-.04em; }
.preview-top>strong>span { color:var(--green); }
.preview-top .badge { font-size:8px; }
.preview-body { padding:26px; background:#f7f9fc; }
.preview-greeting>span { color:var(--green); font-weight:700; letter-spacing:.12em; font-size:9px; }
.preview-greeting h3 { font-size:27px; margin:9px 0; }
.preview-greeting p { font-size:11px; color:var(--muted); margin:0; }
.preview-project { background:white; border:1px solid var(--line); padding:21px; margin-top:24px; display:flex; gap:15px; }
.preview-icon { background:var(--mint); color:var(--green); width:40px; height:40px; display:grid; place-items:center; flex-shrink:0; }
.preview-project h4 { font-size:16px; margin:7px 0 11px; }
.preview-project .badge { font-size:9px; }
.preview-bottom { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }
.preview-bottom>div { padding:18px; background:white; border:1px solid var(--line); }
.preview-bottom svg { color:var(--blue); margin-bottom:13px; }
.preview-bottom strong { font-size:12px; display:block; }
.preview-bottom span { font-size:10px; color:var(--muted); display:block; margin-top:5px; }
.preview-safe { display:flex; align-items:center; gap:8px; font-size:10px; color:var(--muted); margin-top:22px; }
.preview-safe svg { color:var(--green); }
.news-grid { display:grid; grid-template-columns:1.25fr 1fr; gap:44px; }
.news-feature { display:grid; grid-template-columns:.8fr 1fr; background:var(--wash); }
.news-art { background:var(--navy); color:var(--gold); display:flex; flex-direction:column; justify-content:space-between; padding:27px; min-height:290px; position:relative; overflow:hidden; }
.news-art::after { content:""; position:absolute; background:#0c3b71; width:100px; height:500px; right:-50px; top:50px; transform:rotate(30deg); }
.news-art .icon { width:57px; height:57px; stroke-width:1.2; }
.news-art span { font-size:26px; font-weight:800; line-height:1.15; letter-spacing:-.025em; position:relative; z-index:1; }
.news-feature-body { padding:26px; }
.news-feature-body .eyebrow { font-size:9px; }
.news-feature h3 { font-size:27px; margin:16px 0; }
.news-feature p { font-size:12px; }
.news-feature .text-link { font-size:12px; margin-top:20px; }
.news-list { display:flex; flex-direction:column; }
.news-list>button,.news-list>a { border:0; border-bottom:1px solid var(--line); text-align:left; background:none; padding:0 0 25px; display:block; }
.news-list>a { padding-top:25px; border-bottom:0; }
.news-list .eyebrow { font-size:9px; margin-bottom:12px; }
.news-list h3 { font-size:24px; margin-bottom:10px; }
.news-list p { font-size:12px; }
.news-list .text-link { font-size:12px; margin-top:12px; }
.cta-band { background:#edf6f1; }
.cta-band .eyebrow { font-size:9px; margin-bottom:12px; }
.cta-band h2 { font-size:30px; }
.footer-phone { font-size:17px!important; font-weight:700; color:var(--navy)!important; }
.footer-grid>div:first-child .text-link { font-size:11px; }
.footer-bottom .actions { gap:20px; }
.footer-grid p { margin:12px 0; }
.page-top h1 { max-width:950px; }
.page-top { background:#f5f8f9; border-bottom:1px solid var(--line); }
.activities-toolbar { display:flex; gap:20px; justify-content:space-between; align-items:center; margin-bottom:24px; }
.filter-pills { display:flex; flex-wrap:wrap; gap:8px; }
.filter-pills button { border:1px solid var(--line); background:white; color:var(--muted); padding:10px 17px; font-size:12px; border-radius:3px; }
.filter-pills button.selected { background:var(--navy); color:white; border-color:var(--navy); }
.results-summary { margin-bottom:20px; font-size:12px; }
#activities-results+.notice { margin-top:30px; }
.inline-link { text-decoration:underline; color:var(--blue); }
.detail-hero { background:var(--wash); border-bottom:1px solid var(--line); padding:32px 0 0; }
.detail-heading { display:grid; grid-template-columns:1.5fr 1fr; gap:80px; align-items:center; }
.detail-heading>div:first-child { padding:16px 0 46px; }
.detail-heading h1 { font-size:clamp(36px,4vw,57px); margin-bottom:23px; }
.detail-heading p { font-size:17px; max-width:620px; margin-bottom:23px; }
.detail-art { height:320px; align-self:end; }
.detail-art .art-symbol { left:35px; top:45px; }
.detail-art .art-symbol svg { width:95px; height:95px; }
.detail-art .art-word { font-size:44px; bottom:35px; left:35px; }
.detail-grid { display:grid; grid-template-columns:1.65fr 1fr; gap:80px; align-items:start; }
.detail-grid article h2 { font-size:35px; margin-bottom:24px; }
.detail-grid article>h3 { font-size:25px; margin:33px 0 18px; }
.detail-grid article>.lead { font-size:18px; }
.detail-grid article>p { font-size:15px; line-height:1.85; }
.detail-grid .notice { margin-top:28px; }
.detail-status h3 { font-size:25px; margin-bottom:16px; }
.detail-status p { font-size:13px; }
.detail-status .btn { display:flex; margin-top:23px; }
.detail-status>.text-link { margin-top:15px; font-size:12px; }
.source-block { margin-top:38px; padding-top:25px; border-top:1px solid var(--line); }
.source-block h4 { font-size:16px; }
.source-block p { font-size:12px; margin:12px 0; }
.source-links { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.source-links a { font-size:11px; display:inline-flex; align-items:center; gap:6px; color:var(--blue); padding:6px 9px; border:1px solid #d5e1ee; border-radius:3px; }
.source-links a:hover { background:#eef4fb; }
.source-links .icon { width:12px; height:12px; }
.source-modal-list article { padding:22px 0; border-bottom:1px solid var(--line); }
.source-modal-list article:last-child { border-bottom:0; }
.source-modal-list h3 { font-size:20px; margin:14px 0; }
.source-modal-list .badge { font-size:9px; }
.network-tabs { display:flex; gap:32px; border-bottom:1px solid var(--line); margin-bottom:32px; }
.network-tabs button { font-size:14px; font-weight:700; color:var(--muted); background:none; border:0; border-bottom:3px solid transparent; padding:0 0 17px; }
.network-tabs button.selected { color:var(--blue); border-bottom-color:var(--blue); }
.network-filters { display:grid; grid-template-columns:2fr 1fr 1fr; }
.network-filters .field { min-width:0; }
.outreach-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.outreach-card { border:1px solid var(--line); background:white; padding:26px; position:relative; }
.outreach-card .outreach-icon { display:flex; width:40px; height:40px; color:var(--green); align-items:center; margin-bottom:16px; }
.outreach-card .badge { font-size:9px; }
.outreach-card h3 { font-size:24px; margin:18px 0; }
.outreach-card p { font-size:12px; line-height:1.85; }
.outreach-meta { display:flex; gap:6px; align-items:center; font-size:11px; color:var(--muted); margin:23px 0 15px; }
.outreach-card .text-link { font-size:11px; }
#club-results>.notice { margin-top:25px; }
.directory-join { background:var(--mint); padding:27px 32px; margin-top:40px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.directory-join h3 { font-size:24px; }
.directory-join p { margin-top:8px; font-size:13px; }
.directory-empty { border:1px solid var(--line); padding:55px; display:flex; align-items:flex-start; gap:35px; background:var(--wash); }
.empty-emblem { width:65px; height:75px; display:grid; place-items:center; background:var(--mint); color:var(--green); flex-shrink:0; border-bottom:3px solid var(--gold); }
.directory-empty h2 { font-size:36px; }
.directory-empty p { max-width:680px; font-size:15px; margin:23px 0; }
.about-editorial { display:grid; grid-template-columns:1fr 1.1fr; gap:90px; align-items:start; }
.about-editorial h2 { font-size:38px; }
.about-editorial p { font-size:15px; }
.about-editorial .lead { font-size:19px; }
.pillars-v2 { margin-top:60px; }
.about-bottom { margin-top:45px; display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.about-bottom .panel { margin:0; }
.about-bottom h3 { margin-bottom:15px; }
.updates-lead { display:grid; grid-template-columns:1fr 1.2fr; gap:65px; align-items:center; margin-bottom:55px; }
.updates-lead .activity-art { min-height:320px; }
.updates-lead h2 { margin-bottom:22px; }
.updates-lead p { font-size:15px; }
.updates-lead .btn { margin-top:25px; }
.updates-list>article { display:grid; grid-template-columns:65px 1fr 200px; align-items:center; gap:32px; padding:35px 0; border-top:1px solid var(--line); }
.updates-list h3 { font-size:26px; margin-bottom:15px; }
.updates-list p { font-size:14px; }
.updates-list .eyebrow { font-size:9px; margin-bottom:12px; }
.update-marker { background:var(--mint); color:var(--green); height:65px; display:grid; place-items:center; align-self:start; }
.updates-list+.notice { margin-top:26px; }
.source-intro-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-bottom:60px; }
.source-intro-grid .panel { margin:0; }
.source-intro-grid h3 { font-size:24px; margin-bottom:20px; }
.source-intro-grid p { font-size:13px; }
.source-intro-grid .eyebrow { font-size:9px; }
.source-register article { display:grid; grid-template-columns:48px 1fr 90px; gap:25px; padding:26px 0; border-top:1px solid var(--line); }
.source-register h3 { font-size:21px; margin-bottom:12px; }
.source-register p { font-size:13px; margin-bottom:8px; }
.source-id { font-family:monospace; color:var(--green); font-size:12px; padding-top:3px; }
.source-register+.notice { margin-top:30px; }
.contact-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:85px; }
.large-contact { font-size:35px; line-height:1.4; font-weight:700; letter-spacing:-.03em; color:var(--blue); display:flex; gap:16px; align-items:center; margin:30px 0; }
.contact-details>div { padding:18px 0; border-top:1px solid var(--line); }
.contact-details dt { font-size:11px; color:var(--muted); margin-bottom:8px; }
.contact-details dd { margin:0; font-size:16px; }
.contact-details dd a { display:flex; align-items:center; gap:10px; }
.contact-grid aside .panel h3 { margin-bottom:17px; }
.contact-grid aside .panel .text-link { margin-top:20px; }
/* Member workspace */
.portal-content { background:#f5f7fa; }
.portal-heading h1 { font-size:33px; max-width:760px; }
.portal-heading p { max-width:750px; }
.member-welcome { display:grid; grid-template-columns:1.55fr 1fr; padding:32px 36px; background:var(--navy); color:#fff; gap:20px; margin-bottom:24px; position:relative; overflow:hidden; border-radius:5px; }
.member-welcome .badge { background:#163d61; color:#d0ecdf; font-size:9px; }
.member-welcome h2 { font-size:30px; margin-top:17px; }
.member-welcome p { color:#c0d1e5; font-size:12px; margin-top:12px; }
.member-welcome a { display:inline-flex; gap:9px; align-items:center; font-size:12px; margin-top:21px; color:var(--gold); font-weight:700; }
.member-welcome-art { display:flex; justify-content:flex-end; align-items:center; gap:25px; color:var(--gold); padding-right:12px; }
.member-welcome-art>.icon { width:85px; height:85px; stroke-width:.8; }
.member-welcome-art>span { font-size:26px; line-height:1.22; letter-spacing:-.025em; font-weight:800; }
.member-welcome::after { content:""; position:absolute; width:180px; height:350px; right:-140px; top:-100px; background:#0b3e71; border-left:4px solid var(--green); transform:rotate(28deg); }
.programme-note>h4 { font-size:21px; margin:19px 0 12px; }
.programme-note>p { font-size:12px; }
.programme-note>.text-link { font-size:11px; margin-top:16px; }
.member-resource>.eyebrow { font-size:9px; }
.member-resource>.icon { color:var(--green); margin-bottom:20px; }
.member-resource>h3 { font-size:23px; margin-bottom:15px; }
.member-resource p { font-size:12px; }
.member-resource>.text-link { font-size:11px; margin-top:20px; }
.portal-content .stat span { font-size:11px; }
.portal-content .task-row p { font-size:12px; }
.portal-content .task-row h4 { font-size:15px; }
.portal-content .task-row .text-link { font-size:12px; }
.sidebar-nav a { font-size:12px; }
.activity-planners .panel { margin:0; display:flex; flex-direction:column; align-items:flex-start; }
.activity-planners .eyebrow { font-size:8px; margin-top:22px; }
.activity-planners h3 { font-size:23px; }
.activity-planners p { font-size:12px; margin:15px 0 22px; }
.activity-planners .btn { margin-top:auto; }
.activity-planners .text-link { font-size:10px; margin-top:12px; }
.planner-symbol { padding:16px; background:var(--soft-gold); color:var(--navy); }
.planner-symbol.speech { background:#e8f0fb; color:var(--blue); }
.planner-symbol.innovation { background:var(--navy); color:var(--gold); }
.plans-panel { margin-top:28px; }
.portal-updates { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:24px; }
.portal-updates .panel { margin:0; }
.portal-updates h3 { font-size:23px; margin-bottom:18px; }
.portal-updates p { font-size:12px; }
.portal-updates .tiny { font-size:10px; margin-top:20px; }
.portal-updates .text-link { font-size:11px; margin-top:20px; }
.content-table td { padding-block:21px; }
.content-table .badge { font-size:10px; }
.content-table small { max-width:210px; }
.login-visual { background-image:linear-gradient(0deg,rgba(6,30,69,.93),rgba(6,30,69,.92)),url('/design/banner-mobile.jpg'); background-size:cover; background-position:center; }
.school-zone-help { font-size:11px; }
@media(min-width:1600px) { .home-hero { max-height:none; } .hero-image { height:auto; aspect-ratio:2011/768; object-fit:contain; } }
@media(max-width:1180px) {
 .nav-links { gap:16px; }.nav-links>a:not(.btn) { font-size:11px; }.nav-links .btn { font-size:11px; }
 .network-feature,.my-feature .feature-grid { gap:50px; }.programme-ribbon { flex-wrap:wrap; gap:16px; }.programme-ribbon .text-link { margin-left:0; }
 .outreach-grid { grid-template-columns:repeat(2,1fr); }.source-intro-grid { gap:16px; }.detail-grid { gap:45px; }.news-grid { gap:28px; }.news-feature { grid-template-columns:.7fr 1fr; }
 .news-art { padding:20px; }.news-art span { font-size:23px; }.news-feature-body { padding:21px; }.news-feature h3 { font-size:24px; }
 .portal-updates { grid-template-columns:1fr; }.member-welcome { padding:29px; }.member-welcome-art { gap:13px; }.member-welcome-art>.icon { width:57px; height:57px; }.member-welcome-art>span { font-size:22px; }
}
@media(max-width:960px) {
 .utility .right { gap:12px; }.nav-links>a:not(.btn) { font-size:14px; }.section { padding-block:60px; }
 .entry-routes a { gap:11px; padding:22px 18px; }.entry-routes strong { font-size:13px; }.entry-routes small { font-size:10px; }.entry-routes a>svg:first-child { width:22px; height:22px; }
 .network-feature { gap:32px; }.network-feature h2 { font-size:36px; }.network-feature .lead { font-size:14px; }.district-chips { gap:7px; }.district-chips>span { font-size:10px; }
 .activity-art { min-height:188px; }.activity-body { padding:21px; }.activity-body h3 { font-size:22px; }.activity-body p { font-size:12px; }.art-word { font-size:25px; }
 .my-feature .feature-grid { gap:36px; }.preview-body { padding:22px; }.preview-greeting h3 { font-size:23px; }.preview-project { padding:16px; }.preview-project h4 { font-size:13px; }
 .preview-top { padding:18px 22px; }.preview-top>strong { font-size:15px; }.preview-top .badge { font-size:7px; }.preview-bottom>div { padding:15px; }.preview-safe { font-size:9px; }
 .news-grid { grid-template-columns:1fr; }.news-feature { grid-template-columns:.6fr 1fr; }.news-art { min-height:250px; }.news-art span { font-size:32px; }.news-feature-body { padding:32px; }.news-feature h3 { font-size:30px; }.news-list { display:grid; grid-template-columns:1fr 1fr; gap:30px; }.news-list>a { padding:0; }.news-list>button { border:0; padding:0; }
 .detail-heading { gap:40px; }.detail-grid { gap:30px; }.detail-grid article h2 { font-size:29px; }.detail-status h3 { font-size:22px; }
 .activities-toolbar { align-items:flex-start; flex-direction:column; }.source-intro-grid { grid-template-columns:1fr; margin-bottom:40px; }.source-intro-grid h3 { font-size:23px; }
 .about-editorial { gap:36px; }.about-editorial h2 { font-size:32px; }.updates-lead { gap:35px; }.updates-list>article { grid-template-columns:50px 1fr; gap:22px; }.updates-list>article>.text-link { grid-column:2; }.update-marker { height:50px; }
 .contact-grid { gap:35px; }.large-contact { font-size:30px; }.member-welcome { grid-template-columns:1fr; }.member-welcome-art { display:none; }.member-welcome h2 { font-size:25px; }
 .portal-heading h1 { font-size:29px; }.activity-planners { grid-template-columns:1fr!important; }.activity-planners p { max-width:600px; }
}
@media(max-width:720px) {
 .utility .wrap>span { max-width:65%; font-size:8px; }.utility .right>a { display:none; }.utility .demo-label { font-size:8px; }.nav-inner { height:79px; }.section { padding-block:47px; }
 .hero-picture { display:contents; }.hero-image { height:auto; aspect-ratio:1.72; object-fit:cover; }.hero-buttons { gap:15px; }.hero-mobile-copy .hero-visible-title { font-size:48px; }
 .entry-routes .wrap { display:flex; flex-direction:column; }.entry-routes a,.entry-routes a:first-child,.entry-routes a:last-child { padding:18px 0; gap:17px; }.entry-routes a+a { border-left:0; border-top:1px solid var(--line); }.entry-routes strong { font-size:14px; }.entry-routes small { font-size:11px; }
 .programme-intro h2 { font-size:33px; }.intro-grid .lead { font-size:15px; }.programme-intro .text-link { font-size:12px; }
 .activity-art { min-height:210px; }.activity-body { padding:24px; }.activity-body h3 { font-size:26px; }.activity-body p { font-size:14px; }.activity-body .text-link { font-size:12px; }.art-word { font-size:31px; }.art-index { font-size:10px; }
 .programme-ribbon { gap:14px; }.programme-ribbon>span { font-size:13px; }.programme-ribbon p { font-size:12px; }
 .network-feature { grid-template-columns:1fr; gap:35px; }.network-feature h2 { font-size:36px; }.network-feature .lead { font-size:15px; }.zone-board-head { padding:25px; }.zone-board-head h3 { font-size:25px; }.zone-row { padding:19px 23px; }.zone-board-foot { font-size:9px; padding:15px 23px; }
 .my-feature .feature-grid { gap:36px; }.my-feature h2 { font-size:43px; }.my-feature p { font-size:15px; }.feature-links { font-size:12px; }.portal-preview-card { box-shadow:8px 8px 0 #143761; margin-right:8px; }.preview-top .badge { font-size:7px; }.preview-body { padding:20px; }.preview-greeting h3 { font-size:25px; }.preview-project h4 { font-size:15px; }.preview-bottom strong { font-size:11px; }.preview-bottom span { font-size:9px; }.preview-safe { align-items:flex-start; font-size:9px; }
 .news-feature { grid-template-columns:1fr; }.news-art { min-height:185px; flex-direction:row; align-items:center; padding:28px; }.news-art span { font-size:30px; }.news-feature-body { padding:25px; }.news-list { grid-template-columns:1fr; gap:0; }.news-list>button { padding:0 0 25px; border-bottom:1px solid var(--line); }.news-list>a { padding-top:25px; }.news-list h3 { font-size:25px; }.news-list p { font-size:13px; }
 .cta-band h2 { font-size:28px; }.footer-grid>div:last-child { display:block; }.footer-grid>div:last-child { grid-column:1/-1; }.footer-bottom .actions { font-size:10px; gap:12px; }
 .filter-pills { gap:7px; }.filter-pills button { font-size:11px; padding:10px 12px; }.activities-toolbar>.tiny { font-size:10px; }.page-top h1 { font-size:37px; }
 .detail-heading { grid-template-columns:1fr; gap:0; }.detail-heading h1 { font-size:39px; }.detail-heading p { font-size:15px; }.detail-heading>div:first-child { padding-bottom:30px; }.detail-art { height:220px; }.detail-art .art-symbol { top:40px; }.detail-art .art-symbol svg { width:65px; height:65px; }.detail-art .art-word { font-size:35px; }.detail-grid { grid-template-columns:1fr; gap:30px; }.detail-grid article>p,.detail-grid article>.lead { font-size:15px; }.detail-grid .notice { font-size:12px; }
 .network-tabs { overflow-x:auto; gap:24px; scrollbar-width:thin; }.network-tabs button { flex-shrink:0; font-size:12px; padding-bottom:15px; }.network-filters { grid-template-columns:1fr 1fr; gap:15px; }.network-filters .search-field { grid-column:1/-1; }.network-filters .select-field { min-width:0; }.network-filters label { font-size:12px; }.network-filters select { font-size:13px; padding:12px 10px; }
 .outreach-grid { grid-template-columns:1fr; gap:18px; }.outreach-card { padding:25px; }.outreach-card h3 { font-size:27px; }.outreach-card p { font-size:14px; }.outreach-card .outreach-icon { position:absolute; right:22px; top:20px; width:25px; }.outreach-card .text-link { font-size:12px; }
 .directory-join { padding:25px; flex-direction:column; align-items:flex-start; gap:22px; }.directory-join h3 { font-size:25px; }.directory-empty { flex-direction:column; padding:28px; gap:25px; }.directory-empty h2 { font-size:29px; }.directory-empty p { font-size:14px; }.directory-empty .eyebrow { font-size:9px; }.directory-empty .btn { font-size:12px; }
 .about-editorial { grid-template-columns:1fr; gap:26px; }.about-editorial h2 { font-size:32px; }.about-editorial .lead { font-size:17px; }.pillars-v2 { margin-top:35px; }.about-bottom { grid-template-columns:1fr; margin-top:30px; }.about-bottom p { font-size:14px; }
 .updates-lead { grid-template-columns:1fr; gap:30px; }.updates-lead .activity-art { min-height:225px; }.updates-lead h2 { font-size:33px; }.updates-list>article { grid-template-columns:1fr; gap:18px; padding:28px 0; }.updates-list>article>.text-link { grid-column:auto; }.update-marker { width:46px; height:46px; }.updates-list h3 { font-size:25px; }.updates-list p { font-size:14px; }
 .source-register article { grid-template-columns:30px 1fr; gap:15px; }.source-register article>.text-link { grid-column:2; }.source-register h3 { font-size:20px; }.source-register p { font-size:12px; }.source-register .tiny { font-size:10px; }
 .contact-grid { grid-template-columns:1fr; gap:30px; }.contact-main h2 { font-size:32px; }.large-contact { font-size:29px; }.contact-details dd { font-size:15px; }
 .portal-heading h1 { font-size:29px; }.member-welcome { padding:24px; }.member-welcome h2 { font-size:25px; }.member-welcome p { font-size:11px; }.member-welcome .badge { font-size:8px; }.member-welcome a { font-size:11px; }
 .portal-content .stat span { font-size:9px; }.portal-content .task-row p { font-size:11px; }.portal-content .task-row h4 { font-size:14px; }.portal-content .task-row .text-link { font-size:11px; }.sidebar-nav a { font-size:11px; }.portal-tools { gap:8px; }.portal-tools>.text-link { font-size:9px; }.role-selector select { font-size:10px; max-width:142px; }.portal-updates { gap:18px; }
 .activity-planners .eyebrow { font-size:9px; }.activity-planners p { font-size:13px; }.content-table .badge { font-size:9px; }
}
@media(max-width:380px){ .hero-mobile-copy .hero-visible-title { font-size:43px; }.preview-top { padding:17px; }.preview-top .badge { font-size:6px; }.portal-tools>.text-link { display:none; }.utility .wrap>span { font-size:7px; }.network-tabs button { font-size:11px; }.directory-empty { padding:24px; }.directory-empty h2 { font-size:27px; } }
@media(prefers-reduced-motion:reduce){.activity-card:hover .art-arrow{transform:none}}
/* Keep the decorative member banner behind, never over, its text. */
.member-welcome>div { position:relative; z-index:1; }
.member-welcome::after { z-index:0; }
/* Let wide administrative tables scroll within their panel on small screens. */
.portal-content { min-width:0; max-width:100%; }
.table-wrap { min-width:0; max-width:100%; }
@media(max-width:720px){ .portal-layout { grid-template-columns:minmax(0,1fr); } }
