@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#12101b;--surface:#211d2c;--line:#3a3449;--cream:#f7f0e4;--lime:#caff6b;--pink:#f65caa;--muted:#b8b0c5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:18px max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);position:relative;z-index:2;background:#16121f}.brand{display:flex;align-items:center;gap:12px;font:900 20px/.85 'Barlow Condensed',sans-serif;letter-spacing:1px}.brandmark{display:grid;place-items:center;width:50px;height:50px;border:3px solid var(--lime);border-radius:50%;color:var(--lime);font-size:24px;transform:rotate(-10deg)}nav{display:flex;flex-wrap:wrap;gap:20px}nav a{font-size:13px;font-weight:700}nav a:hover,.link:hover{color:var(--lime)}main{min-height:70vh}.hero{position:relative;overflow:hidden;min-height:620px;display:flex;flex-direction:column;justify-content:center;padding:90px max(24px,calc((100vw - 1180px)/2));background:radial-gradient(ellipse at 90% 45%,#44204b 0%,transparent 55%),linear-gradient(135deg,#21142d,#10101a)}.hero h1{font:900 clamp(64px,10vw,145px)/.82 'Barlow Condensed',sans-serif;letter-spacing:-2px;max-width:900px;margin:22px 0}.hero h1 em{color:var(--lime);font-style:normal}.hero>p:not(.eyebrow){font-size:19px;max-width:550px;color:#ded6e7}.eyebrow{font-size:12px;font-weight:800;letter-spacing:3px;color:var(--pink);text-transform:uppercase}.orbit{position:absolute;right:8%;top:20%;font-size:220px;color:#cbfa7020;pointer-events:none}.section{max-width:1180px;margin:0 auto;padding:80px 24px}.section.narrow{max-width:720px}h1,h2,h3{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;line-height:1.02}h1{font-size:clamp(54px,8vw,105px);margin:15px 0 30px}h2{font-size:clamp(40px,5vw,65px);margin:12px 0 25px}h3{font-size:30px;margin:10px 0 16px}.section>p{max-width:720px;color:var(--muted)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-block;border:2px solid var(--lime);background:var(--lime);color:#15141c;padding:13px 22px;font-weight:800;font-size:14px;cursor:pointer;border-radius:4px}.btn.outline{background:transparent;color:var(--lime)}.btn:hover{filter:brightness(.9)}.tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:30px 0}.tile,.card{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:22px}.tile{min-height:120px}.tile b{display:block;color:var(--lime);font-family:'Barlow Condensed';font-size:24px;line-height:1}.tile small{display:block;color:var(--muted);margin-top:12px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:30px}.card p{color:var(--muted)}.link{font-weight:800;color:var(--lime)}.price{font:800 33px 'Barlow Condensed';color:var(--lime)}.pill{font-size:12px;border:1px solid var(--line);padding:7px 10px;border-radius:40px;color:var(--muted)}.form{display:grid;gap:17px;max-width:540px;margin-top:28px}.form label{display:grid;gap:7px;font-weight:700}.form input,.form textarea,.form select{width:100%;padding:12px;background:#292436;border:1px solid #665b73;color:white;border-radius:5px;font:inherit}.form textarea{min-height:160px}.form button{justify-self:start}.membercard{width:min(100%,460px);min-height:260px;background:linear-gradient(130deg,#3e234d,#181728);border:2px solid var(--lime);border-radius:18px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;margin:30px 0;box-shadow:0 15px 35px #0006}.membercard h2{font-size:50px;color:var(--lime);margin:0}.membercard small{letter-spacing:2px}.notice{background:#304122;border-left:4px solid var(--lime);padding:14px 22px}footer{padding:40px max(24px,calc((100vw - 1180px)/2));border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;color:var(--muted)}footer b{color:var(--lime)}@media(max-width:800px){header{align-items:flex-start;flex-direction:column}nav{gap:12px}.hero{min-height:530px}.orbit{display:none}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{padding:15px;min-height:100px}.tile b{font-size:21px}.section{padding:55px 20px}}

/* RRR artwork integration — additive; preserves existing layout and typography. */
.hero {
  background-image: linear-gradient(90deg, rgba(18,16,27,.94) 0%, rgba(18,16,27,.83) 47%, rgba(18,16,27,.24) 100%), url('/assets/rrr-rink-hero.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.hero > * { position: relative; z-index: 1; }
/* Decorative icon is unnecessary when real artwork is visible. */
.hero .orbit { display: none; }

/* Rink directory art is decorative and does not misrepresent a specific rink. */
.rink-result::before {
  content: "";
  display: block;
  height: 115px;
  border-radius: 8px;
  background: #211d2c url('/assets/rrr-rink-art.webp') center / cover no-repeat;
}
@media (max-width: 800px) {
  .hero { background-image: linear-gradient(90deg, rgba(18,16,27,.94), rgba(18,16,27,.62)), url('/assets/rrr-rink-hero.webp'); }
}

/* RRR text-free hero image — safe additive override. */
.hero { background-image: linear-gradient(90deg,rgba(16,12,24,.94) 0%,rgba(16,12,24,.83) 42%,rgba(16,12,24,.36) 76%,rgba(16,12,24,.18) 100%),url('/assets/rrr-hero-clean-20261019.webp'); background-position:center center; background-size:cover; background-repeat:no-repeat; }
.hero .orbit { display:none; }
@media(max-width:800px){.hero{background-image:linear-gradient(90deg,rgba(16,12,24,.90),rgba(16,12,24,.53)),url('/assets/rrr-hero-clean-20261019.webp');background-position:56% center;}}

/* Ten Trials: readable cards; scoped to the expanded trial descriptions. */
.tiles:has(> .tile p) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.tiles:has(> .tile p) .tile { min-height: 0; padding: 25px; }
.tiles:has(> .tile p) .tile b { font-size: 26px; line-height: 1.08; }
.tiles:has(> .tile p) .tile small { margin-top: 8px; }
.tiles:has(> .tile p) .tile p { margin: 18px 0 0; line-height: 1.65; overflow-wrap: anywhere; }
@media (max-width: 800px) {
  .tiles:has(> .tile p) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .tiles:has(> .tile p) { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .tiles:has(> .tile p) .tile { padding: 21px; }
}

/* Ten Trials original neon line-art icons; accessible decorative images. */
.tiles:has(> .tile .trial-icon) .tile .trial-icon { display:block; width:68px; height:84px; object-fit:contain; margin:0 0 10px; filter:drop-shadow(0 0 7px rgba(225,90,255,.16)); }
@media(max-width:560px){.tiles:has(> .tile .trial-icon) .tile .trial-icon{width:58px;height:72px;}}

/* RRR Rink Rats membership page, release 04 — scoped to avoid touching other pages */
.rrr-patrons{padding-top:0}.rrr-patrons .patron-hero{margin:0 -24px;padding:82px max(24px,calc((100vw - 1140px)/2)) 76px;background:radial-gradient(ellipse at 86% 12%,rgba(221,51,160,.23),transparent 48%),radial-gradient(ellipse at 8% 100%,rgba(0,224,226,.13),transparent 55%),#16131f;border-bottom:1px solid #50405d}.rrr-patrons .patron-hero h1{max-width:850px;font-size:clamp(52px,7vw,100px);line-height:.91;margin:18px 0 26px}.rrr-patrons .patron-hero h1 em{font-style:normal;color:#d7fa69;text-shadow:0 0 32px rgba(215,250,105,.15)}.rrr-patrons .patron-lead{max-width:760px;font-size:clamp(18px,2vw,23px);line-height:1.55}.rrr-patrons .patron-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0}.rrr-patrons .patron-text-link{color:#8ef4ef;font-weight:700}.rrr-patrons .patron-fine{font-size:13px;color:#bfb6c9}.rrr-patrons .patron-head{padding-top:72px;max-width:760px}.rrr-patrons .patron-head h2,.rrr-patrons .patron-faq h2{font-size:clamp(35px,5vw,58px);line-height:1}.rrr-patrons .patron-tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:34px 0 84px}.rrr-patrons .patron-tier{position:relative;display:flex;flex-direction:column;gap:12px;padding:28px 22px;background:linear-gradient(165deg,#282036,#191723);border:1px solid #5a4769;border-radius:16px;min-width:0}.rrr-patrons .patron-tier-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.rrr-patrons .patron-level{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#a7d9e1}.rrr-patrons .patron-glyph{font-size:24px;color:#f07fc4}.rrr-patrons .patron-tier h3{font-size:clamp(25px,2.6vw,38px);line-height:1.03;margin:4px 0}.rrr-patrons .patron-price{font-size:49px;line-height:1;font-weight:900;color:#d7fa69}.rrr-patrons .patron-price span{font-size:13px;color:#d8d1dd;font-weight:500;margin-left:5px}.rrr-patrons .patron-billing{font-size:12px;color:#c5a8d0;margin:0}.rrr-patrons .patron-tier>p:not(.patron-billing){font-size:14px;line-height:1.55}.rrr-patrons .patron-tier ul{padding:16px 0 0 18px;margin:0 0 16px;border-top:1px solid #51435b;flex:1}.rrr-patrons .patron-tier li{margin-bottom:12px;font-size:13px;line-height:1.45}.rrr-patrons .patron-tier li::marker{color:#d7fa69}.rrr-patrons .patron-status{display:block;text-align:center;padding:12px 9px;border-radius:6px;border:1px solid #70627a;color:#e1d6e7;font-size:12px;font-weight:800}.rrr-patrons .patron-featured{border:2px solid #d7fa69;box-shadow:0 0 35px rgba(215,250,105,.09);background:linear-gradient(160deg,#343044,#1b1927)}.rrr-patrons .patron-featured-label{position:absolute;top:-14px;left:17px;background:#d7fa69;color:#16131f;border-radius:4px;padding:6px 10px;font-size:10px;font-weight:900;letter-spacing:.8px}.rrr-patrons .patron-split{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:center;padding:50px 0 85px;border-top:1px solid #57455d}.rrr-patrons .patron-split h2,.rrr-patrons .patron-end h2{font-size:clamp(32px,4vw,55px);line-height:1}.rrr-patrons .patron-split p{line-height:1.75}.rrr-patrons .patron-score-card{padding:30px;background:linear-gradient(145deg,#392544,#171723);border:2px solid #e27bd0;border-radius:14px;box-shadow:0 15px 45px #0006}.rrr-patrons .patron-score-card span,.rrr-patrons .patron-score-card small{display:block;color:#d7d1e0;letter-spacing:1px;font-size:11px}.rrr-patrons .patron-score-card strong{display:block;font-size:130px;line-height:1;color:#d7fa69}.rrr-patrons .patron-score-card p{font-size:27px;font-weight:900;margin:0 0 20px}.rrr-patrons .patron-faq{max-width:880px;margin:0 auto;padding:55px 0 85px}.rrr-patrons .patron-faq details{border-bottom:1px solid #564761;padding:18px 0}.rrr-patrons .patron-faq summary{cursor:pointer;font-weight:800;font-size:18px}.rrr-patrons .patron-faq details p{line-height:1.65;color:#d6ccdf}.rrr-patrons .patron-end{text-align:center;padding:65px 20px;background:radial-gradient(ellipse at center,rgba(205,69,156,.15),transparent 72%),#191523;border:1px solid #5e456d;border-radius:15px}.rrr-patrons .patron-end .btn{display:inline-block;margin-top:18px}
@media(max-width:1050px){.rrr-patrons .patron-tiers{grid-template-columns:repeat(2,minmax(0,1fr))}.rrr-patrons .patron-tier h3{font-size:35px}}
@media(max-width:640px){.rrr-patrons .patron-hero{margin:0 -20px;padding:64px 20px}.rrr-patrons .patron-tiers{grid-template-columns:1fr;gap:22px}.rrr-patrons .patron-split{grid-template-columns:1fr}.rrr-patrons .patron-hero h1{font-size:55px}.rrr-patrons .patron-price{font-size:48px}.rrr-patrons .patron-head{padding-top:50px}}

/* RRR member badge release 2026-10-19 */
.rrr-patrons .patron-mascot{display:flex;align-items:center;justify-content:center;margin:12px auto 8px;min-height:156px}.rrr-patrons .patron-mascot img{width:min(154px,100%);height:auto;filter:drop-shadow(0 0 14px #dd58c044)}
.rrr-patrons .patron-tier:nth-child(2) .patron-mascot img{filter:drop-shadow(0 0 14px #9dff4655)}.rrr-patrons .patron-tier:nth-child(3) .patron-mascot img{filter:drop-shadow(0 0 14px #d568ff66)}.rrr-patrons .patron-tier:nth-child(4) .patron-mascot img{filter:drop-shadow(0 0 14px #ffd44e55)}
.rrr-member-id{padding:22px!important;border-radius:20px!important;background:radial-gradient(circle at 10% 15%,#432c58 0%,#151523 66%)!important;border:2px solid #a95eff!important;max-width:640px;box-shadow:0 12px 36px #0008}.rrr-id-head{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #ffffff35;padding-bottom:10px}.rrr-id-head small,.rrr-id-head span{font-size:10px;letter-spacing:1.1px;color:#ddd5ed}.rrr-id-main{display:flex;gap:20px;align-items:center;padding-top:14px}.rrr-id-main img{width:136px;height:136px;object-fit:contain;flex-shrink:0}.rrr-id-main h2{margin:0 0 8px;font-size:clamp(24px,4vw,42px);line-height:1.05}.rrr-id-main p{margin:0 0 6px}.rrr-id-main small{letter-spacing:1.2px}.rrr-member-rink-rat{border-color:#ff4abf!important}.rrr-member-extra-lap{border-color:#9dff46!important}.rrr-member-all-skate{border-color:#d568ff!important}.rrr-member-jam-circle{border-color:#ffd44e!important}.rrr-member-club{border-color:#626273!important}
@media(max-width:480px){.rrr-id-main{gap:10px}.rrr-id-main img{width:96px;height:96px}.rrr-id-head span{display:none}}

/* Approved mascots: independent canvases, never crop or cover */
.patron-mascot{display:flex;align-items:center;justify-content:center;min-height:205px;overflow:visible}
.patron-mascot img{display:block;width:min(100%,240px);height:185px;object-fit:contain;object-position:center;border-radius:14px}
.rrr-member-id img[src*="/assets/members/"]{object-fit:contain;max-width:100%;height:auto}
.rrr-support-now{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:24px;margin:24px 0;border:1px solid #a5fa41;border-radius:18px;background:linear-gradient(110deg,#18221b,#171222)}
.rrr-support-now>div{flex:1 1 350px}.rrr-support-now form{flex:0 1 auto}.rrr-support-now h2{margin:.2em 0}.rrr-support-now p{max-width:680px}

/* Free membership registration */
.rrr-opt-in{display:flex;align-items:flex-start;gap:.65rem;font-size:.92rem;line-height:1.5}.rrr-opt-in input{margin-top:.35rem;flex:none}.patron-tiers{align-items:stretch}

/* Compact navigation and legal pages */
header nav[aria-label="Main navigation"]{align-items:center;gap:clamp(10px,1.5vw,22px)}
header nav .nav-join{padding:9px 13px;border-radius:4px;background:var(--lime);color:#15141c;white-space:nowrap}
footer .footer-links{display:flex;flex-wrap:wrap;gap:12px 22px;width:100%;margin:10px 0}
footer .footer-links a{font-size:14px}footer .footer-links a:hover{color:var(--lime)}
.legal-page h2{font-size:clamp(25px,3vw,34px);margin:30px 0 10px}.legal-page p{line-height:1.75;max-width:100%}
.form .email-opt-in{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:500}.form .email-opt-in input{width:auto;margin-top:6px;accent-color:var(--lime)}
