@font-face{font-family:'PT Sans';src:url("../fonts/PTSans-Regular.woff") format("woff");font-weight:400;font-display:swap}@font-face{font-family:'PT Sans';src:url("../fonts/PTSans-Bold.woff") format("woff");font-weight:700;font-display:swap}:root{--ink:#111411;--paper:#f3f3ef;--muted:#747a72;--rule:#cdcfca;--dark:#121512;--lime:#c8ff35;--sans:'PT Sans',Arial,sans-serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.skip-link{position:fixed;z-index:100;top:-50px;left:20px;padding:10px 14px;background:var(--lime);font:700 12px var(--mono)}.skip-link:focus{top:20px}.page-shell{width:calc(100% - 40px);max-width:1180px;margin:auto}.site-header{position:absolute;z-index:5;top:0;left:0;right:0;width:calc(100% - 40px);max-width:1180px;height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;color:#f7f8f3}.wordmark{display:flex;align-items:center;gap:10px;font:700 17px/1 var(--mono);letter-spacing:-.08em}.accent{color:var(--lime)}.wordmark-mark{position:relative;display:inline-block;width:22px;height:18px}.wordmark-mark i{position:absolute;display:block;width:5px;height:5px;border:1px solid var(--lime);border-radius:50%}.wordmark-mark i:after{content:'';position:absolute;top:1px;left:3px;width:10px;height:1px;background:var(--lime);transform-origin:left}.wordmark-mark i:nth-child(1){top:1px;left:0}.wordmark-mark i:nth-child(1):after{transform:rotate(27deg)}.wordmark-mark i:nth-child(2){top:8px;left:12px}.wordmark-mark i:nth-child(2):after{transform:rotate(142deg)}.wordmark-mark i:nth-child(3){bottom:0;left:3px}.wordmark-mark i:nth-child(3):after{transform:rotate(-28deg)}.site-nav{display:flex;align-items:center;gap:25px;font:600 12px var(--mono)}.site-nav>a{position:relative;opacity:.82;transition:opacity .2s}.site-nav>a:not(.nav-join):after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--lime);transition:width .2s}.site-nav>a:hover{opacity:1}.site-nav>a:hover:after{width:100%}.site-nav .nav-join{color:var(--lime);opacity:1}.hero{position:relative;min-height:680px;overflow:hidden;background:var(--dark);color:#f8f9f3;isolation:isolate}.hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg, rgba(18,21,18,0.92), rgba(18,21,18,0.78) 45%, rgba(18,21,18,0.25))}.hero-grid{position:absolute;z-index:-3;inset:0;background-image:linear-gradient(rgba(255,255,255,0.07) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,0.07) 1px, transparent 1px);background-size:44px 44px;mask-image:linear-gradient(#000, transparent 95%)}.hero-graph{position:absolute;z-index:-2;width:88vw;max-width:920px;height:auto;right:-120px;top:88px;opacity:.85}.graph-lines path{stroke:#c9cdc4;stroke-width:1.2;opacity:.48}.graph-nodes circle{fill:var(--dark);stroke:#e8ebe1;stroke-width:2}.graph-nodes circle:nth-child(3n){fill:var(--lime);stroke:var(--lime);animation:pulse 4s ease-in-out infinite}.graph-nodes circle:nth-child(4n){animation-delay:1.5s}.hero-content{padding-top:177px}.eyebrow,.section-kicker{margin:0;text-transform:uppercase;letter-spacing:.1em;font:700 11px var(--mono)}.eyebrow{color:#c8cdc4}.status-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(200,255,53,0.12)}.hero h1{max-width:720px;margin:22px 0 21px;font:700 clamp(56px, 8.7vw, 122px)/0.88 var(--mono);letter-spacing:-.1em}.hero h1 em{color:var(--lime);font-style:normal}.hero-copy{max-width:430px;margin:0;color:#d3d6cf;font-size:19px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:30px;margin-top:42px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:0 19px;border:1px solid transparent;font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.04em;transition:transform .2s,background .2s}.button:hover{transform:translate(-3px, -3px)}.button-primary{background:var(--lime);color:var(--ink);box-shadow:4px 4px #677c25}.button-primary:hover{background:#d5ff65}.text-link{border-bottom:1px solid #aeb4a9;padding-bottom:3px;color:#f7f8f3;font:700 12px var(--mono)}.text-link:hover{border-color:var(--lime);color:var(--lime)}.hero-coordinates{position:absolute;right:20px;bottom:22px;color:#8b9288;font:10px var(--mono);letter-spacing:.04em}.section{padding:112px 0}.section-kicker{color:#62685f}.section-kicker span{display:inline-block;width:42px;color:#a6aca2}.intro{display:grid;grid-template-columns:170px 1fr;gap:45px 30px}.intro-copy{max-width:750px}.intro h2,.meeting-title h2,.competition h2,.archive h2,.people h2,.join h2{margin:0;letter-spacing:-.07em;font:700 clamp(36px, 5vw, 66px)/0.98 var(--mono)}.intro-copy p{max-width:630px;margin:26px 0 0;color:#4d534b;font-size:20px;line-height:1.55}.principles{grid-column:2;display:grid;grid-template-columns:repeat(3, 1fr);border-top:1px solid var(--rule)}.principles article{padding:23px 25px 0 0}.principles article+article{padding-left:24px;border-left:1px solid var(--rule)}.principle-index,.person-role{color:#6e756c;font:10px var(--mono);letter-spacing:.08em}.principles h3{margin:25px 0 8px;font:700 17px var(--mono);letter-spacing:-.06em}.principles p{margin:0;color:#676c65;font-size:14px}.meetings{position:relative;overflow:hidden;background:var(--dark);color:#eff2eb}.meetings:before{content:'';position:absolute;inset:0;opacity:.2;background-image:radial-gradient(var(--lime) 1px, transparent 1.5px);background-size:30px 30px;mask-image:linear-gradient(90deg, transparent, #000 55%, transparent)}.meetings .page-shell{position:relative}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.meetings .section-kicker{color:#bdc3b7}.meetings .section-kicker span{color:var(--lime)}.section-note{max-width:260px;margin:0;color:#9ba199;font-size:13px}.meeting-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px, 10vw, 150px);margin-top:54px}.meeting-title h2{font-size:clamp(34px, 4vw, 54px)}.meeting-title p{max-width:330px;margin:23px 0 0;color:#aab0a7}.meeting-list{border-top:1px solid #495046}.meeting-card{display:grid;grid-template-columns:90px 1fr 95px;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid #495046;transition:padding .2s,background .2s}.meeting-card:hover{padding-left:13px;background:rgba(200,255,53,0.04)}.meeting-day{color:var(--lime);font:700 18px var(--mono)}.meeting-day span{display:block;margin-top:4px;color:#899088;font-size:10px}.meeting-card h3{margin:0 0 4px;font:700 18px var(--mono);letter-spacing:-.06em}.meeting-card p{margin:0;color:#a5aba2;font-size:14px}.meeting-time{color:#eef0ea;text-align:right;font:700 14px/1.25 var(--mono)}.meeting-time span{color:#989f95;font-size:10px}.location-note{margin:19px 0 0;color:#adb2aa;font-size:13px}.pin{color:var(--lime);font:18px var(--mono)}.competition-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px, 10vw, 150px);margin-top:46px}.competition-grid>div p{max-width:400px;margin:24px 0 0;color:#5f655d;font-size:17px}.roadmap{margin:0;padding:0;list-style:none;border-top:1px solid var(--rule)}.roadmap li{display:grid;grid-template-columns:80px 1fr;gap:15px;padding:19px 0;border-bottom:1px solid var(--rule)}.roadmap span{padding-top:4px;color:#788077;font:10px var(--mono)}.roadmap strong{font:700 18px var(--mono);letter-spacing:-.06em}.roadmap p{margin:4px 0 0;color:#666c64;font-size:14px}.archive{background:#e7e8e3}.archive-heading h2{max-width:700px;margin-top:20px;font-size:clamp(35px, 4.4vw, 58px)}.archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:52px 0 24px}.search-field{display:flex;align-items:center;gap:10px;width:min(100%, 380px);padding:0 12px;border-bottom:1px solid #8f968d;color:#555c53;font:24px var(--mono)}.search-field input{width:100%;min-width:0;border:0;padding:11px 0;background:transparent;color:var(--ink);font:13px var(--mono)}.search-field input::placeholder{color:#7b817a}.filter-group{display:flex;flex-wrap:wrap;gap:5px}.filter{padding:8px 10px;border:1px solid transparent;background:transparent;color:#656b63;cursor:pointer;font:700 11px var(--mono);text-transform:uppercase}.filter:hover,.filter.active{border-color:#949a92;background:#f4f5f1;color:var(--ink)}.filter.active{box-shadow:2px 2px var(--lime)}.resource-grid{display:grid;grid-template-columns:repeat(4, 1fr);border-top:1px solid #aeb3ac;border-left:1px solid #aeb3ac}.resource-card{display:flex;flex-direction:column;min-width:0;padding:16px;background:#eff0eb;border-right:1px solid #aeb3ac;border-bottom:1px solid #aeb3ac;transition:background .2s,transform .2s}.resource-card:hover{position:relative;z-index:1;background:#fafbf7;transform:translate(-3px, -3px);box-shadow:4px 4px var(--lime)}.resource-card[hidden]{display:none}.resource-topline{display:flex;justify-content:space-between;gap:10px;color:#6e756c;font:10px var(--mono);text-transform:uppercase}.resource-preview{position:relative;height:96px;margin:18px 0;overflow:hidden;border:1px solid #c3c7c0;background:linear-gradient(90deg, rgba(17,20,17,0.035) 1px, transparent 1px),linear-gradient(rgba(17,20,17,0.035) 1px, transparent 1px);background-size:12px 12px}.preview-line{position:absolute;display:block;height:1px;background:#7e867c}.preview-line.one{top:56%;left:8%;width:76%;transform:rotate(-18deg)}.preview-line.two{top:47%;left:34%;width:55%;transform:rotate(25deg)}.preview-node{position:absolute;z-index:1;display:block;width:9px;height:9px;border:2px solid #5c645b;border-radius:50%;background:#eff0eb}.preview-node.n1{top:62%;left:8%}.preview-node.n2{top:43%;left:53%;border-color:var(--lime);background:var(--lime)}.preview-node.n3{top:63%;right:15%}.preview-edge{position:absolute;display:block;width:1px;background:#7e867c}.preview-edge.e1{top:12%;left:52%;height:33%}.preview-edge.e2{top:22%;right:15%;height:37%}.resource-card h3{margin:0;font:700 17px var(--mono);letter-spacing:-.07em}.resource-card>p{min-height:63px;margin:9px 0 15px;color:#636960;font-size:13px;line-height:1.4}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.tags span{padding:3px 5px;border:1px solid #c3c7c0;color:#687067;font:9px var(--mono)}.resource-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px;padding-top:12px;border-top:1px solid #c3c7c0}.resource-links a{color:#394336;font:700 10px var(--mono)}.resource-links a:hover{color:#000;text-decoration:underline}.archive-empty{margin:32px 0 0;color:#666c64}.archive-footnote{margin:24px 0 0;color:#747a71;font-size:12px}.archive-footnote code{color:#343c32;font-family:var(--mono)}.people-header{display:flex;justify-content:space-between;gap:35px;margin-top:30px}.people-header p{max-width:330px;margin:5px 0 0;color:#626860}.people-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:16px;margin-top:45px}.person-card{display:flex;align-items:center;gap:18px;padding:17px;border:1px solid var(--rule)}.avatar{display:grid;flex:none;width:61px;height:61px;place-items:center;background:var(--dark);color:var(--lime);font:700 14px var(--mono)}.avatar.muted{color:#a3a9a1}.person-card h3{margin:3px 0;font:700 18px var(--mono);letter-spacing:-.07em}.person-card a{color:#5e675c;font:12px var(--mono)}.person-card a:hover{color:var(--ink);text-decoration:underline}.join{position:relative;min-height:465px;overflow:hidden;background:var(--dark);color:#f5f7f0}.join-content{position:relative;z-index:1;padding-top:96px}.join h2{max-width:760px;margin:18px 0;font-size:clamp(46px, 6vw, 82px)}.join-content>p:not(.eyebrow){max-width:430px;margin:0 0 28px;color:#bfc4bb;font-size:17px}.join-graph{position:absolute;top:0;right:0;width:48%;height:100%;opacity:.45;background-image:linear-gradient(rgba(200,255,53,0.26) 1px, transparent 1px),linear-gradient(90deg, rgba(200,255,53,0.26) 1px, transparent 1px);background-size:55px 55px}.join-graph:before,.join-graph:after{content:'';position:absolute;width:150%;height:1px;background:var(--lime)}.join-graph:before{top:31%;left:-32%;transform:rotate(28deg)}.join-graph:after{top:65%;left:-34%;transform:rotate(-27deg)}.join-graph span,.join-graph i{position:absolute;display:block;width:12px;height:12px;border:2px solid var(--lime);border-radius:50%;background:var(--dark)}.join-graph span:nth-child(1){top:26%;left:22%}.join-graph span:nth-child(2){top:64%;left:57%}.join-graph span:nth-child(3){top:35%;right:9%}.join-graph span:nth-child(4){bottom:12%;left:12%}.join-graph i{width:6px;height:6px;border:0;background:var(--lime)}.join-graph i:nth-of-type(1){top:11%;left:53%}.join-graph i:nth-of-type(2){top:79%;left:42%}.join-graph i:nth-of-type(3){top:51%;right:25%}.join-graph i:nth-of-type(4){right:4%;bottom:13%}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:87px;color:#6f766e}.site-footer .wordmark{color:var(--ink)}.site-footer p,.site-footer>a:last-child{margin:0;font:11px var(--mono)}.site-footer>a:last-child:hover{color:var(--ink);text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap}@keyframes pulse{0%,100%{filter:drop-shadow(0 0 transparent)}45%{filter:drop-shadow(0 0 6px var(--lime))}}@media (max-width: 780px){.site-header{height:70px}.site-nav{gap:14px;font-size:10px}.site-nav a:nth-child(-n+2){display:none}.hero{min-height:620px}.hero-content{padding-top:155px}.hero-graph{top:120px;right:-475px;width:830px;opacity:.5}.hero:after{background:linear-gradient(90deg, rgba(18,21,18,0.96), rgba(18,21,18,0.72))}.intro{display:block}.intro .section-kicker{margin-bottom:35px}.principles{grid-template-columns:1fr;margin-top:48px}.principles article,.principles article+article{padding:20px 0;border-bottom:1px solid var(--rule);border-left:0}.meeting-layout,.competition-grid{grid-template-columns:1fr;gap:42px}.meeting-card{grid-template-columns:66px 1fr 72px}.archive-toolbar,.people-header{flex-direction:column;align-items:flex-start}.archive-toolbar{margin-top:38px}.resource-grid{grid-template-columns:repeat(2, 1fr)}.resource-card>p{min-height:auto}.join{min-height:440px}.join-graph{width:72%;opacity:.34}.site-footer{flex-wrap:wrap;padding:24px 0}.site-footer p{order:3;width:100%}}@media (max-width: 480px){.page-shell,.site-header{width:calc(100% - 32px);max-width:1180px}.wordmark{font-size:15px}.hero h1{font-size:52px}.hero-copy{font-size:17px}.hero-actions{gap:23px}.section{padding:76px 0}.section-heading{display:block}.section-note{margin-top:20px}.meeting-card{grid-template-columns:55px 1fr}.meeting-time{grid-column:2;text-align:left}.resource-grid,.people-grid{grid-template-columns:1fr}.join-content{padding-top:76px}.site-footer>a:last-child{margin-left:auto}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.graph-nodes circle{animation:none}*,*:before,*:after{transition-duration:0.01ms !important}}:root{--ink:#101010;--paper:#f5f5f2;--dark:#0b0b0b;--lime:#b8f532;--rule:#d1d1cb}.hero{background:#0b0b0b url("../../uvic_cpc_banner.png") 10% center/cover no-repeat}.hero:after{background:linear-gradient(90deg, rgba(11,11,11,0.97), rgba(11,11,11,0.85) 46%, rgba(11,11,11,0.38))}.hero-graph{opacity:.34}.header-brand{gap:8px}.header-logo{width:48px;height:48px;border:1px solid #3b3b39;border-radius:7px;background:#0b0b0b;object-fit:cover}.people-header{display:grid;grid-template-columns:minmax(0, 1fr) minmax(190px, 330px) 116px;align-items:center}.club-logo{display:block;width:116px;height:116px;border:1px solid var(--rule);border-radius:10px;background:#0b0b0b;object-fit:cover}@media (max-width: 780px){.people-header{display:flex}.club-logo{width:104px;height:104px}.header-logo{width:39px;height:39px}}@media (max-width: 480px){.hero{background-position:50% center}.club-logo{width:92px;height:92px}.header-brand{font-size:13px}}.note-body{min-height:100vh;background:var(--paper)}.note-site-header{display:flex;align-items:center;justify-content:space-between;min-height:82px;border-bottom:1px solid var(--rule)}.note-site-header .wordmark{color:var(--ink)}.note-nav{color:var(--ink)}.note-nav .nav-join{color:#547700}.note-main{min-height:calc(100vh - 163px);padding:58px 0 88px;background:linear-gradient(90deg, rgba(17,17,17,0.035) 1px, transparent 1px),linear-gradient(rgba(17,17,17,0.035) 1px, transparent 1px);background-size:42px 42px}.note-shell{max-width:820px}.note-back{display:inline-flex;gap:9px;align-items:center;margin-bottom:45px;border-bottom:1px solid var(--ink);padding-bottom:3px;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.06em}.note-back:hover{color:#547700;border-color:#547700}.note-shell>.eyebrow{margin-bottom:18px;color:#5f665e}.note-shell article{padding:clamp(28px, 6vw, 70px);border:1px solid #c5c7c1;background:#fbfbf8;box-shadow:8px 8px 0 rgba(17,17,17,0.08)}.note-shell article header{margin-bottom:38px;padding-bottom:27px;border-bottom:1px solid var(--rule)}.note-shell article h1{max-width:700px;margin:0;color:var(--ink);font:700 clamp(33px, 5vw, 58px)/1 var(--mono);letter-spacing:-.08em}.note-shell article h1 a:hover{color:#547700}.note-shell article header time{display:block;margin-top:16px;color:#6f756d;font:11px var(--mono);letter-spacing:.06em;text-transform:uppercase}.note-shell article p,.note-shell article li{color:#3f463e;font-size:17px;line-height:1.7}.note-shell article p{margin:0 0 1.25em}.note-shell article a{color:#2f5711;text-decoration:underline;text-decoration-color:#9bc95c;text-underline-offset:4px}.note-shell article a:hover{color:#101010;text-decoration-color:#101010}.note-shell article h2,.note-shell article h3{margin:1.8em 0 .65em;color:#161916;font-family:var(--mono);letter-spacing:-.05em}.note-shell article h2{font-size:25px}.note-shell article h3{font-size:19px}.note-shell article ul,.note-shell article ol{padding-left:1.3em}.note-shell article li{padding-left:.25em;margin:.6em 0}.note-shell article blockquote{margin:1.5em 0;padding:12px 20px;border-left:3px solid var(--lime);background:#f0f2e8}.note-shell article pre{margin:1.5em 0;padding:18px;overflow:auto;background:#121412;color:#edf0e8}.note-shell article code{font-family:var(--mono)}.note-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:81px;border-top:1px solid var(--rule);color:#6a7168;font:11px var(--mono)}.note-footer p{margin:0}.note-footer a{color:var(--ink)}.note-footer a:hover{text-decoration:underline}@media (max-width: 600px){.note-site-header{min-height:70px}.note-nav a:first-child{display:none}.note-main{padding-top:36px}.note-back{margin-bottom:34px}.note-shell article{padding:27px 22px}.note-shell article p,.note-shell article li{font-size:16px}.note-footer{padding:20px 0;min-height:90px}}.session-index{padding-top:98px}.session-index-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:28px 0 48px}.session-index-heading h2{margin:0;font:700 clamp(36px, 5vw, 64px)/0.98 var(--mono);letter-spacing:-.08em}.session-index-heading p{max-width:285px;margin:0;color:#666c64;font-size:14px}.session-list{border-top:1px solid var(--rule)}.session-row{display:grid;grid-template-columns:130px 1fr 24px;gap:20px;align-items:center;padding:17px 8px;border-bottom:1px solid var(--rule);transition:background .18s ease,padding .18s ease}.session-row time{color:#737a71;font:11px var(--mono)}.session-row span{font:700 16px var(--mono);letter-spacing:-.05em}.session-row i{color:#6f756c;font:16px var(--mono);font-style:normal;text-align:right}.session-row:hover{padding-left:16px;background:#e7eadf}.session-row:hover i{color:#3c6700}@media (max-width: 600px){.session-index{padding-top:72px}.session-index-heading{display:block;margin-bottom:32px}.session-index-heading p{margin-top:18px}.session-row{grid-template-columns:1fr 20px;gap:4px;padding:15px 4px}.session-row time{grid-column:1;font-size:10px}.session-row span{grid-column:1;grid-row:2;font-size:14px}.session-row i{grid-column:2;grid-row:1 / span 2}}.resource-card-collapsed{display:none !important}.resource-toggle{display:block;margin:28px auto 0;padding:12px 18px;border:1px solid #898f85;background:transparent;color:var(--ink);cursor:pointer;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.04em}.resource-toggle:hover{background:var(--lime);border-color:var(--lime)}.archive-footnote{display:none}.footer-brand{gap:9px}.footer-logo{width:39px;height:39px;border:1px solid #c3c7c0;border-radius:6px;background:#0b0b0b;object-fit:cover}
