@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/font-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-8.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-10.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--blue:#020202;--ink:#111421;--paper:#e4e4e4;--muted:#c7cad5;--accent:#c5cbe4;--line:#66709b;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',sans-serif;--serif:'Playfair Display',Georgia,serif;color-scheme:dark;font-family:var(--sans);font-size:16px;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0;background:var(--blue);color:var(--paper);background-image:radial-gradient(#c5cbe416 .6px,transparent .6px);background-size:5px 5px}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}a,button{touch-action:manipulation}::selection{background:var(--accent);color:var(--ink)}h1,h2,h3,p{margin:0}.site-shell{max-width:1296px;padding:0 48px;margin:auto}.header{min-height:115px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-weight:700;letter-spacing:-1.7px;font-size:29px}.brand>span:not(.domain){color:var(--accent)}.domain{font-weight:400;color:var(--muted);font-size:18px;letter-spacing:-.5px}.header nav{display:flex;gap:30px;font-size:14px}.header nav a{padding:12px 0}.header nav a:hover,.text-link:hover{color:var(--accent)}.edition{font:12px var(--mono);color:var(--muted)}.hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:32px;align-items:stretch}.intro{background:var(--paper);color:var(--ink);padding:38px 40px 20px;border-radius:6px;box-shadow:0 5px 0 #11142180}.eyebrow{font:500 12px/1.5 var(--mono);letter-spacing:1.2px}.intro .eyebrow{display:flex;align-items:center;gap:9px}.small-star{color:#020202;font-size:22px;line-height:1}h1{font-size:clamp(44px,5.9vw,77px);line-height:1.05;font-weight:500;letter-spacing:-4px;margin:37px 0 25px}.serif{font-family:var(--serif);font-weight:500;letter-spacing:-3px}.intro-copy{font-size:17px;line-height:1.7;max-width:540px;color:#383e54}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:15px;font-weight:600;border-bottom:1px solid #e4e4e4;padding:0 0 6px;margin-top:31px}.intro-bottom{border-top:1px solid #b9bdc9;margin-top:38px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:12px var(--mono);letter-spacing:.5px}.intro-bottom>span:last-child{font-size:19px;letter-spacing:5px;white-space:nowrap}.intro-bottom i{font-style:normal;color:#020202}.identity-card{position:relative;min-height:442px;margin:10px 0;transform:rotate(3deg);border:7px solid var(--paper);border-radius:12px;box-shadow:7px 9px 0 #11142199;background:#293774;color:var(--paper);isolation:isolate;transition:transform .25s}.identity-card:hover{transform:rotate(0)}.identity-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111421e6,transparent 60%);z-index:-1;border-radius:4px}.identity-card summary{cursor:pointer;list-style:none;min-height:100%;display:flex;flex-direction:column;padding:15px;position:relative;z-index:2}.identity-card summary::-webkit-details-marker{display:none}.card-top{display:flex;justify-content:space-between;align-items:flex-start}.card-top>span:first-child{font:600 25px/1.1 var(--mono)}.card-top>span:first-child>span{font:23px var(--sans)}.card-label{font:12px var(--mono);letter-spacing:1.2px;writing-mode:vertical-rl}.big-number{font:600 121px/1 var(--mono);letter-spacing:-14px;margin:auto;transform:translateX(-6px);text-shadow:4px 5px 0 #11142199;padding:29px 0 6px}.card-caption{text-align:center;font:italic 22px var(--serif);margin:auto 0 22px}.card-bottom{display:flex;align-items:flex-end;justify-content:space-between}.card-bottom>span:first-child{font:12px/1.5 var(--mono);letter-spacing:.7px;max-width:145px}.card-bottom>span:last-child{font:600 23px/1.1 var(--mono);text-align:center;transform:rotate(180deg)}.card-story{position:absolute;inset:0;background:var(--paper);color:var(--ink);padding:58px 22px 24px;border-radius:3px;z-index:3;pointer-events:none;display:flex;flex-direction:column;justify-content:center}.card-story h2{font-size:31px;line-height:1.2;letter-spacing:-1px;margin:20px 0}.card-story p{font-size:16px;line-height:1.65}.story-note{font:12px/1.5 var(--mono);margin-top:28px;color:#383e54}.identity-card[open] summary{color:transparent}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.section-heading h2{font-size:26px;letter-spacing:-.8px;font-weight:500}.section-heading>.eyebrow{color:var(--muted);font-size:12px}.work-section{padding:63px 0 0}.roles{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.roles article{padding:25px 24px 27px;border-right:1px solid var(--line)}.roles article:first-child{padding-left:0}.roles article:last-child{border-right:0}.role-index{font:12px var(--mono);letter-spacing:.6px;color:var(--muted)}.roles h3{font-size:23px;font-weight:500;letter-spacing:-.5px;margin:13px 0 9px}.roles p{font-size:16px;line-height:1.6;color:var(--muted)}.interests-section{padding-top:57px}.interest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.interest{padding:22px 21px;border-radius:5px;min-height:259px;display:flex;flex-direction:column;border:1px solid var(--line);background:#171f43;box-shadow:0 4px 0 #11142155}.tile-top{display:flex;gap:10px;justify-content:space-between;align-items:center}.tile-top .eyebrow{font-size:12px;letter-spacing:.6px}.tile-top>span:last-child{font-size:24px}.interest h3{font-size:29px;line-height:1.13;font-weight:500;letter-spacing:-1px;margin:27px 0 14px}.interest p{font-size:16px;line-height:1.6;color:#e4e4e4}.interest .tile-footnote{margin-top:auto;padding-top:19px;font:12px/1.5 var(--mono);color:#c7cad5}.music{background:#e4e4e4;color:var(--ink);border-color:#e4e4e4}.music h3{font-size:37px;letter-spacing:-2px}.music h3 span{color:#020202}.music p{color:#111421}.music-link{font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #293774;padding-top:15px;margin-top:auto}.music-link:hover{text-decoration:underline}.united{background:#171f43;border-color:#66709b;color:#e4e4e4}.united p{color:#e4e4e4}.creative{background:#293774}.curiosity{display:grid;grid-template-columns:1fr 1fr;gap:85px;margin:64px 0;align-items:center;padding-top:40px;border-top:1px solid var(--line)}.curiosity-intro>.eyebrow{color:var(--muted);font-size:12px}.curiosity h2{font-size:47px;line-height:1.1;letter-spacing:-2px;font-weight:500;margin:18px 0}.curiosity .serif{letter-spacing:-1.5px}.curiosity-intro p{font-size:16px;line-height:1.75;color:var(--muted);max-width:460px}.question-card{padding:28px 30px;background:var(--paper);color:var(--ink);border-radius:5px;position:relative;box-shadow:5px 5px 0 #66709b;transform:rotate(-1deg)}.question-card>.eyebrow{font-size:12px;color:#383e54}.question-card>p{font-size:27px;letter-spacing:-.7px;line-height:1.3;margin:27px 0;min-height:106px;max-width:360px}.question-card button{background:var(--ink);color:var(--paper);border:0;border-radius:3px;font-size:14px;min-height:44px;padding:10px 16px;cursor:pointer;display:flex;gap:22px;align-items:center}.question-card button:hover{background:#020202}.question-count{position:absolute;bottom:40px;right:25px;font:12px var(--mono);color:#383e54}footer{border-top:1px solid var(--line);padding:29px 0 36px;display:flex;align-items:center;justify-content:space-between;gap:22px}footer .brand{font-size:24px}footer p{font-size:13px;color:var(--muted)}.footer-note{font:12px var(--mono);color:var(--muted);display:flex;gap:14px;align-items:center}.footer-note>span{font-size:22px;color:var(--accent)}.skip{position:absolute;left:12px;top:-100px;background:var(--paper);color:var(--ink);z-index:20;padding:15px}.skip:focus{top:12px}.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}
@media(min-width:1300px){.hero{grid-template-columns:minmax(0,1fr) 310px}.identity-card{margin:12px 10px}.intro{padding:42px 45px 22px}}
@media(max-width:1000px){.site-shell{padding:0 30px}.edition{display:none}.hero{grid-template-columns:minmax(0,1fr) 240px;gap:25px}.intro{padding:30px 28px 20px}h1{letter-spacing:-2.5px}.intro-copy{font-size:16px}.desktop-break{display:none}.intro-bottom{font-size:12px}.intro-bottom>span:last-child{display:none}.big-number{font-size:105px}.interest-grid{grid-template-columns:repeat(2,1fr)}.interest{min-height:240px}.interest h3{font-size:33px}.music h3{font-size:44px}.roles article{padding:24px 18px}.roles h3{font-size:20px}.curiosity{gap:35px}.question-count{position:static;display:block;margin-top:15px}.question-card>p{min-height:142px}}
@media(max-width:700px){.site-shell{padding:0 20px}.header{min-height:92px;gap:15px;flex-wrap:wrap;padding:22px 0}.header .brand{font-size:27px}.header nav{gap:18px;font-size:12px}.domain{display:none}.hero{grid-template-columns:1fr;gap:28px}.intro{padding:30px 25px 20px}h1{font-size:clamp(44px,9vw,68px);letter-spacing:-2.7px;margin:30px 0 23px}.intro .eyebrow{font-size:12px;letter-spacing:.7px}.intro-copy{font-size:16px}.intro-bottom{font-size:12px}.intro-bottom>span:last-child{display:block;font-size:15px}.identity-card{width:min(100% - 35px,300px);min-height:395px;margin:10px auto 5px}.identity-card summary{min-height:380px}.big-number{font-size:125px}.work-section{padding-top:45px}.section-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}.section-heading h2{font-size:25px}.section-heading>.eyebrow{font-size:12px;align-self:center}.roles{grid-template-columns:1fr}.roles article,.roles article:first-child{padding:23px 0;border-right:0;border-bottom:1px solid var(--line)}.roles article:last-child{border-bottom:0}.roles h3{font-size:23px}.interests-section{padding-top:43px}.interest-grid{gap:12px}.interest{padding:20px 17px;min-height:265px}.tile-top .eyebrow{font-size:12px;letter-spacing:.4px}.tile-top>span:last-child{font-size:19px}.interest h3{font-size:27px}.music h3{font-size:31px}.interest p{font-size:16px}.music-link{font-size:12px;line-height:1.6}.curiosity{grid-template-columns:1fr;gap:28px;margin:45px 0;padding-top:33px}.curiosity h2{font-size:42px}.question-card{margin:0 4px 0 0;padding:26px}.question-card>p{min-height:100px;font-size:27px}.question-count{position:absolute;right:25px;bottom:42px;margin:0}footer{flex-wrap:wrap;gap:16px}footer p{font-size:12px}.footer-note{width:100%;justify-content:space-between}}
@media(max-width:380px){.header nav{width:100%;justify-content:space-between;font-size:14px}.interest-grid{grid-template-columns:1fr}.interest{min-height:245px}.interest h3{font-size:34px}.question-count{position:static;margin-top:16px}.intro-bottom>span:last-child{display:none}.eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.identity-card{background-image:linear-gradient(#02020280,#02020280),url("assets/forest-spiral.jpg");background-blend-mode:color,luminosity;background-size:cover;background-position:75% center}.card-top,.card-bottom,.card-caption{text-shadow:0 1px 8px #111421}.company-link:hover{text-decoration:underline}

.social-links{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:20px;font-size:14px}.social-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#e4e4e4}.social-links a:hover{color:#020202}.intro .text-link{margin-top:15px}.intro .text-link:hover{color:#020202}.intro :focus-visible,.question-card :focus-visible{outline-color:#020202}.gaming{background:#66709b;color:#111421}.gaming p,.gaming .tile-footnote{color:#111421}.music p{color:#111421}.music-link{font-size:14px}.header nav{font-size:14px}

.spotify-section{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;margin-top:55px;padding:32px;border:1px solid var(--line);border-radius:5px;background:#171f43}.spotify-intro{align-self:center}.spotify-intro h2{font-size:40px;font-weight:500;letter-spacing:-1.5px;margin:18px 0}.spotify-intro .serif{letter-spacing:-1px}.spotify-intro>p{font-size:16px;line-height:1.7;color:var(--muted)}.spotify-intro .spotify-note{font:12px/1.7 var(--mono);margin-top:25px}.spotify-tracks{padding:0;margin:0;list-style:none;min-width:0}.spotify-tracks li+li{border-top:1px solid #66709b88}.spotify-tracks a{display:flex;gap:15px;align-items:center;padding:14px 0;min-height:76px}.spotify-tracks a:hover strong{text-decoration:underline;text-underline-offset:4px}.spotify-tracks img{object-fit:cover;flex-shrink:0;border-radius:3px}.track-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.track-copy strong{font-size:16px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}.track-copy>span{font-size:13px;line-height:1.5;color:var(--muted)}.track-arrow{margin-left:auto;padding-left:8px;flex-shrink:0}@media(max-width:700px){.spotify-section{grid-template-columns:1fr;gap:20px;padding:23px;margin-top:42px}.spotify-intro h2{font-size:36px}.spotify-intro .spotify-note{margin-top:15px}.track-copy strong{font-size:15px}.spotify-tracks a{gap:12px}}

body{background-image:radial-gradient(#e4e4e412 .6px,transparent .6px),linear-gradient(150deg,#020202 0%,#10152e 55%,#293774 100%);background-size:5px 5px,100% 100%;background-attachment:fixed}.identity-card{background-color:#293774;background-image:linear-gradient(#29377470,#29377470),url("assets/forest-spiral.jpg")}.gaming{background:#293774;color:#e4e4e4}.gaming p,.gaming .tile-footnote{color:#e4e4e4}.gaming .music-link{border-color:#66709b}.intro :focus-visible,.question-card :focus-visible{outline-color:#293774}.music-link{color:inherit}.games-section{margin-top:50px}.game-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;border:1px solid #66709b;border-radius:5px;overflow:hidden;background:#171f43}.game-shelf li{display:flex;flex-direction:column;min-width:0;font-size:17px;line-height:1.4;border-right:1px solid #66709b;border-bottom:1px solid #66709b}.game-shelf img{display:block;width:100%;height:auto;aspect-ratio:460/215;object-fit:cover}.game-shelf li>span{display:flex;align-items:center;flex:1;padding:18px 20px;min-height:64px}.game-shelf li:nth-child(4n){border-right:0}.game-shelf li:nth-last-child(-n+4){border-bottom:0}.preview-player{margin:25px 0 0;padding:17px;border:1px solid #66709b;border-radius:5px;background:#020202}.preview-player figcaption{display:flex;gap:12px;align-items:center}.preview-player img{flex-shrink:0;border-radius:3px}.preview-player figcaption>span{display:flex;flex-direction:column;gap:5px}.preview-player strong{font-size:15px;line-height:1.4;font-weight:500}.preview-player figcaption>span>span{font-size:12px;line-height:1.5;color:#c7cad5}.preview-player audio{display:block;width:100%;height:40px;margin:17px 0 12px}.preview-player p{font:12px/1.5 var(--mono);color:#c7cad5}.preview-player>a{display:inline-block;min-height:44px;padding-top:12px;font-size:14px;text-decoration:underline;text-underline-offset:4px}@media(max-width:700px){.game-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.game-shelf li{font-size:16px}.game-shelf li>span{padding:14px;min-height:64px}.game-shelf li:nth-child(2n){border-right:0}.game-shelf li:nth-last-child(-n+4){border-bottom:1px solid #66709b}.game-shelf li:nth-last-child(-n+2){border-bottom:0}.games-section{margin-top:40px}.preview-player{padding:13px}}

.family-opening{padding:24px 0 58px}.family-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:30px}.family-heading .eyebrow{color:var(--muted)}.family-heading h1{font-size:clamp(46px,6vw,76px);margin:18px 0 0;line-height:1.03;letter-spacing:-3px}.family-heading>p{max-width:290px;font-size:19px;line-height:1.7;color:var(--muted);padding-bottom:5px}.family-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;align-items:stretch}.family-gallery figure{margin:0;border:1px solid #66709b;border-radius:6px;background:#e4e4e4;overflow:hidden;min-width:0;box-shadow:0 5px 0 #02020280}.photo-window,.film-window{position:relative;overflow:hidden;aspect-ratio:4/5;background:#171f43}.photo-window img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:0;transform:translateY(-19.45%)}.family-dog img{width:150%;left:-25%;transform:translateY(-38%)}.family-split img{transform:translateY(-16.5%)}.film-window{background:#020202}.film-window iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.family-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:62px;padding:14px 15px;color:#111421;font-size:14px;line-height:1.5}.family-gallery figcaption>span:last-child{color:#293774}.family-gallery figcaption a{text-decoration:underline;text-underline-offset:4px;display:flex;align-items:center;justify-content:space-between;min-height:32px;width:100%;gap:10px}.family-gallery a:focus-visible{outline-color:#293774}.intro h2{font-size:clamp(44px,5.9vw,77px);line-height:1.05;font-weight:500;letter-spacing:-4px;margin:37px 0 25px}@media(max-width:1000px){.family-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.family-heading>p{font-size:17px;max-width:230px}.intro h2{letter-spacing:-2.5px}.film-window{aspect-ratio:4/5}}@media(max-width:700px){.family-opening{padding:14px 0 40px}.family-heading{display:block;margin-bottom:25px}.family-heading h1{font-size:clamp(44px,10vw,64px);letter-spacing:-2px}.family-heading>p{font-size:17px;max-width:340px;margin-top:22px}.family-gallery{gap:12px}.family-gallery figcaption{font-size:13px;min-height:68px;padding:12px}.intro h2{font-size:clamp(44px,9vw,68px);letter-spacing:-2.7px;margin:30px 0 23px}.header nav{flex-wrap:wrap;gap:8px 20px}.family-heading .serif{letter-spacing:-2px}}@media(max-width:380px){.family-gallery{grid-template-columns:1fr}.film-window{aspect-ratio:9/16}}
.family-plitvice img{width:125%;left:-12.5%;transform:translateY(-27.5%)}.family-split img{width:115%;left:-7.5%;transform:translateY(-21%)}

/* Each chapter has its own space; ordinary scrolling remains native. */
.scroll-chapter{position:relative;display:flex;align-items:center;min-height:86svh;padding:clamp(48px,8vh,100px) 0}
.scroll-chapter:first-child{min-height:calc(100svh - 115px);padding-top:24px}
.scroll-chapter>section{width:100%;margin:0;padding:0;opacity:var(--chapter-opacity,1);transform:translate3d(0,var(--chapter-y,0px),0) scale(var(--chapter-scale,1));transform-origin:50% 50%}
.scroll-chapter>.spotify-section{padding:32px}
.scroll-chapter .photo-window img{scale:var(--photo-scale,1)}
@media(max-width:700px){.scroll-chapter{min-height:72svh;padding:48px 0}.scroll-chapter:first-child{min-height:0;padding-top:14px;padding-bottom:32px}.scroll-chapter>.spotify-section{padding:23px}}
@media(prefers-reduced-motion:reduce){.scroll-chapter>section{opacity:1!important;transform:none!important}.scroll-chapter .photo-window img{scale:1!important}}
@media print{.scroll-chapter{min-height:0;padding:24px 0}.scroll-chapter>section{opacity:1!important;transform:none!important}.scroll-chapter .photo-window img{scale:1!important}}

/* Snap each chapter into place, with room for the persistent controls. */
:root{--header-height:115px;scroll-snap-type:y mandatory;scroll-padding-top:var(--header-height)}
.site-shell{position:relative;z-index:1}
.header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 1fr auto;min-height:100px;padding:15px 0;background:#080c1aeb;backdrop-filter:blur(18px);border-bottom:1px solid var(--line);gap:20px}
.header nav{justify-content:center;gap:18px}
.site-controls{display:grid;grid-template-columns:repeat(3,auto);gap:7px;align-items:center}
.site-controls button{min-height:44px;border:1px solid var(--line);border-radius:24px;background:#171f43;color:#e4e4e4;padding:8px 13px;font-size:14px;white-space:nowrap;cursor:pointer}
.site-controls button:hover{border-color:var(--accent)}
.site-controls button[aria-pressed="true"]{background:#293774;border-color:#a5b3fa}
.control-status{grid-column:1/-1;max-width:340px;text-align:center;font-size:12px;line-height:1.5;color:var(--muted)}
.scroll-chapter,.scroll-chapter:first-child{scroll-snap-align:start;scroll-snap-stop:always;min-height:calc(100svh - var(--header-height));padding:36px 0}
footer{scroll-snap-align:end;scroll-snap-stop:always}
.disco-lights{position:fixed;inset:-20%;z-index:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 20% 25%,#7253ed 0,transparent 40%),radial-gradient(ellipse at 85% 35%,#256ce2 0,transparent 42%),radial-gradient(ellipse at 55% 80%,#b142b4 0,transparent 38%);filter:blur(35px)}
.disco-on .disco-lights{opacity:.55;animation:disco-drift 8s ease-in-out infinite alternate}
@keyframes disco-drift{from{transform:translate(-4%,-3%) rotate(-8deg) scale(1);opacity:.35}to{transform:translate(4%,3%) rotate(8deg) scale(1.12);opacity:.65}}
:root[data-theme="light"]{color-scheme:light;--muted:#48506c;--line:#8792b2;--accent:#293774}
[data-theme="light"] body{color:#111421;background-color:#e4e4e4;background-image:radial-gradient(#29377420 .6px,transparent .6px),linear-gradient(150deg,#f4f5fa,#e4e4e4 55%,#c5cde8)}
[data-theme="light"] .header{background:#eef0f7ed}
[data-theme="light"] .site-controls button{background:#e4e8f5;color:#111421}
[data-theme="light"] .site-controls button[aria-pressed="true"]{background:#293774;color:#e4e4e4}
[data-theme="light"] .game-shelf,[data-theme="light"] .spotify-section{background:#d8def0;color:#111421}
[data-theme="light"] .preview-player{background:#f4f5fa}
[data-theme="light"] .preview-player p,[data-theme="light"] .preview-player figcaption>span>span{color:#48506c}
[data-theme="light"] .interest{color:#e4e4e4}
[data-theme="light"] .interest.music{color:#111421}
@media(max-width:1100px){.header{grid-template-columns:1fr auto;gap:8px 16px}.header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;padding-bottom:0;flex-wrap:wrap}.header nav a{padding:6px 0}.header .domain{display:none}}
@media(max-width:600px){.header{grid-template-columns:1fr;padding:12px 0;gap:8px}.header .brand{font-size:23px}.header nav{grid-row:3;gap:6px 16px;font-size:13px}.site-controls{grid-template-columns:repeat(3,1fr);gap:6px}.site-controls button{font-size:13px;padding:8px 9px}.control-status{max-width:none;font-size:12px}.scroll-chapter,.scroll-chapter:first-child{padding:28px 0}}
@media(prefers-reduced-motion:reduce){.disco-on .disco-lights{animation:none;opacity:.35}}
@media print{:root{scroll-snap-type:none}.header{position:static}.site-controls,.disco-lights{display:none}.scroll-chapter,.scroll-chapter:first-child{min-height:0}}

.anchor-jump .scroll-chapter{scroll-snap-stop:normal}

/* A single flowing world, with a quiet edge for navigation. */
:root{--display:'Barlow Condensed',var(--sans);--header-height:92px}
body{isolation:isolate}.site-shell{max-width:1400px;padding:0 72px 0 142px}
.header{display:flex;justify-content:space-between;min-height:92px;gap:24px;border:0;background:transparent!important;backdrop-filter:none;padding:16px 0}
.header:before{content:'';position:absolute;inset:0 -12px;z-index:-1;background:linear-gradient(#080c1aab,transparent);pointer-events:none}
[data-theme="light"] .header:before{background:linear-gradient(#e9ecf5b8,transparent)}
.site-controls{gap:4px}.site-controls button{border-color:transparent;background:#111a3690;backdrop-filter:blur(16px);border-radius:9px;font:13px var(--mono);padding:9px 13px}.site-controls button[aria-pressed="true"]{border-color:transparent;background:#394582b0}.control-status{font-size:11px;opacity:.75}
[data-theme="light"] .site-controls button{background:#f1f2f790}.brand{letter-spacing:-1.6px}.header .domain{display:inline}
.disco-lights{opacity:.55;animation:disco-drift 12s ease-in-out infinite alternate;filter:blur(42px)}
.disco-on .disco-lights{animation:disco-drift 12s ease-in-out infinite alternate;opacity:.55}
.section-nav{position:fixed;left:22px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:5px;z-index:35;font:12px/1.4 var(--mono)}
.section-nav a{display:flex;gap:10px;align-items:center;min-height:42px;opacity:.5;transition:opacity .25s,transform .25s}
.section-nav a>span:first-child{font-size:10px}.section-nav a>span:last-child{max-width:90px}.section-nav a[aria-current="location"],.section-nav a:hover{opacity:1;transform:translateX(5px)}
.section-nav a[aria-current="location"]:before{content:'';width:3px;height:22px;background:currentColor;position:absolute;left:-10px}
.section-heading{align-items:end;margin-bottom:28px}.section-heading h2,.spotify-intro h2{font:700 clamp(40px,5vw,68px)/.98 var(--display);letter-spacing:-.8px;text-transform:uppercase}.section-heading h2{margin-top:8px}.section-heading>.eyebrow{font-size:11px}.family-heading h1{font-size:clamp(64px,8vw,110px);font-weight:600;letter-spacing:-5px}.family-opening .eyebrow{letter-spacing:2px}.family-heading{margin-bottom:34px}.family-gallery figure{border-radius:12px;box-shadow:0 15px 45px #0002;border-color:#a5b3fa44}.family-gallery figcaption{background:#e4e4e4e8}
.intro{background:#e4e4e4e8;border-radius:16px;box-shadow:none}.roles article{padding-top:35px;padding-bottom:35px}.roles h3{font-size:30px}
.interest-grid{gap:14px}.interest{position:relative;isolation:isolate;overflow:hidden;background:#202d63!important;color:#fff!important;border:1px solid #b8c8ff40;border-radius:18px;box-shadow:none;min-height:300px;padding:25px 23px}
.interest:before,.interest:after{content:'';position:absolute;width:210px;height:210px;border-radius:50%;filter:blur(25px);z-index:-1;opacity:.55;animation:bubble-drift 10s ease-in-out infinite alternate}
.interest:before{left:-90px;top:-75px;background:#936bde}.interest:after{right:-75px;bottom:-110px;background:#40b4cf;animation-delay:-4s}.interest:nth-child(2):before{background:#8199e4;animation-delay:-3s}.interest:nth-child(2):after{background:#975acd}.interest:nth-child(3):before{background:#68adc2;animation-delay:-5s}.interest:nth-child(4):after{background:#9a79df;animation-delay:-7s}
@keyframes bubble-drift{from{transform:translate(0,0) scale(.85)}to{transform:translate(70px,70px) scale(1.25)}}
.interest h3{font:600 36px/1.02 var(--display);letter-spacing:0}.interest p,.interest.music p,.interest .tile-footnote,.interest.music h3 span{color:#f2f3fb}.interest .music-link{border-color:#c5cbe455;color:#fff;padding-top:16px}.united-crest{object-fit:contain;width:72px;height:72px;filter:grayscale(1) brightness(2.2) contrast(1.3);margin:-8px -8px -20px 0}.tile-top .eyebrow{font-size:10px;max-width:130px}
.game-shelf{gap:16px;border:0!important;background:none!important;overflow:visible}.game-shelf li{position:relative;display:block;border:0!important;padding:0!important;overflow:hidden;border-radius:12px;background:#151c37;box-shadow:0 12px 24px #0002;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.game-shelf li:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 20px 32px #0004}.game-shelf li:nth-child(even):hover{transform:translateY(-8px) rotate(1deg)}.game-shelf img{aspect-ratio:460/215;object-fit:contain;object-position:center;background:#11182e}.game-shelf li:hover img{transform:none}.game-shelf li>span{color:#f0f2ff;min-height:62px;padding:14px 16px;font-size:15px;background:#131a32;position:relative}.game-shelf{counter-reset:games}.game-shelf li>span:before{counter-increment:games;content:counter(games,decimal-leading-zero);font:10px var(--mono);color:#b4bfe8;margin-right:12px}
.spotify-section{background:#17214980;border:1px solid #a5b3fa40;border-radius:18px;backdrop-filter:blur(15px)}[data-theme="light"] .spotify-section{background:#edf0f980}
.party-scene{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;visibility:hidden;opacity:0;transition:opacity .5s}
.disco-on .party-scene{visibility:visible;opacity:1}

.logbook-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.logbook-intro>p:first-child{font:500 28px/1.2 var(--sans);margin-bottom:16px}.logbook-intro>p{font-size:16px;line-height:1.7;color:var(--muted)}.owner-signin{font:12px var(--mono);padding:12px 0;text-decoration:underline;text-underline-offset:5px}
#question-form{display:grid;gap:10px;margin-top:30px}#question-form label{font-size:14px}#question-form label span{color:var(--muted)}#question-form input,#question-form textarea,.answer-form textarea{width:100%;font:16px/1.5 var(--sans);color:inherit;background:#9aa7ee0d;border:1px solid var(--line);border-radius:8px;padding:12px;resize:vertical}#question-form input:focus,#question-form textarea:focus,.answer-form textarea:focus{outline:2px solid var(--accent);outline-offset:2px}#question-form button,.answer-form button,#more-entries{background:#e4e4e4;color:#111421;border:0;border-radius:8px;min-height:46px;font:500 14px var(--sans);padding:12px 18px;cursor:pointer}#question-form button{display:flex;justify-content:space-between;margin-top:5px}#question-form .form-note{font-size:12px;color:var(--muted);line-height:1.5}#question-status,#logbook-status{font-size:14px;line-height:1.6;color:var(--muted)}.honeypot{display:none}.logbook-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:24px}.logbook-toolbar button{background:none;color:inherit;border:0;min-height:44px;font:12px var(--mono);cursor:pointer}.log-entry{padding:24px 0;border-bottom:1px solid var(--line)}.entry-meta{font:11px/1.6 var(--mono);color:var(--muted);margin-bottom:12px}.entry-question{font-size:22px;line-height:1.4;overflow-wrap:anywhere}.entry-answer{margin-top:20px;padding-left:18px;border-left:2px solid var(--accent);font-size:16px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.entry-answer:before{content:'AARON';display:block;font:11px var(--mono);margin-bottom:8px;color:var(--muted)}.answer-form{display:grid;gap:10px;margin-top:20px}.answer-form label{font-size:13px}.answer-actions{display:flex;gap:10px}.answer-form .delete-entry{background:transparent;color:inherit;border:1px solid var(--line)}#more-entries{margin-top:22px}.logbook-pages{min-width:0}button:disabled{opacity:.55;cursor:wait}
@media(min-width:1600px){.section-nav{left:calc((100vw - 1400px)/2 + 20px)}}
@media(max-width:1100px){.site-shell{padding:0 30px 0 120px}.header{display:flex}.header .domain{display:none}.interest-grid{grid-template-columns:repeat(2,1fr)}.game-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.logbook-layout{gap:30px}.section-nav{left:15px;font-size:11px}.section-nav a>span:last-child{max-width:75px}}
@media(max-width:760px){.site-shell{padding:0 22px 70px}.header{gap:12px;min-height:94px;padding:12px 0}.header .brand{font-size:24px}.site-controls button{font-size:11px;padding:8px;min-height:40px}.control-status{font-size:10px;max-width:230px}.section-nav{left:12px;right:12px;bottom:12px;top:auto;transform:none;flex-direction:row;justify-content:space-around;gap:0;background:#141b32e8;color:#fff;backdrop-filter:blur(16px);padding:5px;border-radius:16px}.section-nav a{flex-direction:column;justify-content:center;gap:2px;min-height:44px;font-size:10px;transform:none!important}.section-nav a>span:first-child{font-size:9px}.section-nav a[aria-current="location"]:before{width:16px;height:2px;left:50%;top:-2px;transform:translateX(-50%)}.family-heading h1{letter-spacing:-3px}.logbook-layout{grid-template-columns:1fr;gap:35px}.section-heading h2{font-size:46px}.game-shelf{gap:12px}.game-shelf li>span{font-size:14px;padding:12px;min-height:64px}.game-shelf li>span:before{display:none}.interest{min-height:280px;padding:22px 18px}.interest h3{font-size:32px}.owner-signin{font-size:11px}.section-heading{flex-wrap:wrap}}
@media(max-width:420px){.header{flex-wrap:wrap;gap:8px}.header .brand{width:100%}.site-controls{width:100%;grid-template-columns:repeat(3,1fr)}.control-status{max-width:none}.interest-grid{grid-template-columns:1fr}.interest{min-height:260px}.section-nav a{font-size:9px}.united-crest{width:80px;height:80px}}
@media(prefers-reduced-motion:reduce){.disco-lights,.disco-on .disco-lights,.interest:before,.interest:after,.game-shelf li:hover,.game-shelf li:hover img{transform:none}}

.control-status,.section-nav,.section-nav a>span:first-child,.tile-top .eyebrow,.entry-meta,.entry-answer:before,.section-heading>.eyebrow,.owner-signin{font-size:12px}.site-controls button{font-size:14px}@media(max-width:760px){.section-nav{overflow-x:auto;justify-content:flex-start;gap:6px}.section-nav a{font-size:12px;min-width:70px;flex-shrink:0}.section-nav a>span:first-child{font-size:12px}.site-controls button{font-size:12px}.control-status{font-size:12px}.header{gap:8px}}

.header:before{inset:0 -22px -28px;background:linear-gradient(#0c132de8 0%,#10172cca 60%,transparent);backdrop-filter:blur(16px);mask-image:linear-gradient(#000 55%,transparent)}[data-theme="light"] .header:before{background:linear-gradient(#e6e9f4ed 0%,#e6e9f4cc 60%,transparent)}

.twenty-two-table{border:1px solid #95a6ef66;border-radius:22px;background:radial-gradient(ellipse at 50% 40%,#39478080,transparent 65%),#111a37e8;color:#eff2ff;padding:22px 28px;box-shadow:0 20px 65px #0002;overflow:hidden}
.table-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;font:12px var(--mono);color:#bdc6ec;letter-spacing:1px;padding-bottom:18px;border-bottom:1px solid #899bd733}.table-topline>span:last-child{font-size:20px;letter-spacing:7px;white-space:nowrap}.card-seat{padding:18px 0;min-height:175px}.seat-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.seat-heading>div:first-child{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.seat-name{font-size:21px;font-weight:600}.seat-note{font:12px/1.5 var(--mono);color:#b8c4e7}.hand-total{font:600 30px/1 var(--sans);white-space:nowrap}.hand-total small{font:12px var(--mono);color:#b8c4e7;margin-left:6px}.card-hand{list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0}.card-hand:empty{display:none}.playing-card{position:relative;width:68px;height:94px;flex-shrink:0;border-radius:7px;border:1px solid #fff7;background:#f0f0e9;color:#182343;box-shadow:0 4px 0 #0003;animation:card-arrives .3s ease-out}.playing-card.red-suit{color:#ae2948}.card-rank{position:absolute;left:7px;top:5px;font:700 17px/1 var(--sans)}.card-suit{position:absolute;inset:0;display:grid;place-items:center;font-size:39px}.lower-rank{left:auto;top:auto;right:7px;bottom:5px;transform:rotate(180deg)}.empty-hand{min-height:94px;display:flex;align-items:center;color:#b8c4e7;font-size:15px}.empty-hand[hidden]{display:none}.table-divider{display:flex;align-items:center;gap:16px;color:#b8c4e7;font:12px var(--mono)}.table-divider:before,.table-divider:after{content:'';height:1px;background:#899bd733;flex:1}.table-divider>span{border:1px solid #899bd766;border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.table-actions{text-align:center;border-top:1px solid #899bd733;padding-top:20px}.table-actions>p{font-size:17px;line-height:1.5;min-height:26px}.game-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px}.game-buttons button{border:1px solid #a7b4e6;border-radius:8px;min-height:46px;padding:12px 21px;font:600 14px var(--sans);background:#eff2ff;color:#111a37;cursor:pointer}.game-buttons #stand-hand{background:transparent;color:#eff2ff}.game-buttons button:disabled{opacity:.35;cursor:default}.game-buttons button[hidden]{display:none}.game-buttons button:not(:disabled):hover{box-shadow:0 0 0 3px #a8baff33}.round-tally{display:flex;justify-content:center;gap:24px;align-items:center;flex-wrap:wrap;margin-top:22px;font:12px var(--mono);color:#b8c4e7}.round-tally strong{color:#eff2ff;margin-left:6px}.tally-note{font-size:12px;opacity:.75}.twenty-two-rules{margin-top:16px;color:var(--muted);font-size:14px;line-height:1.7}.twenty-two-rules summary{cursor:pointer;padding:10px 0;width:fit-content}.twenty-two-rules p{max-width:850px;margin:10px 0}.twenty-two-table[data-result="win"]{border-color:#b0f2dc}.twenty-two-table[data-result="win"] #round-message{color:#b0f2dc}.twenty-two-table[data-result="loss"] #round-message{color:#ffc0d1}.twenty-two-table[data-result="draw"] #round-message{color:#e0d3ff}@keyframes card-arrives{from{opacity:0;transform:translateY(-14px) rotate(-4deg)}to{opacity:1;transform:none}}
@media(max-width:600px){.twenty-two-table{padding:18px 16px;border-radius:16px}.table-topline{font-size:12px;letter-spacing:0}.table-topline>span:last-child{font-size:16px;letter-spacing:2px}.seat-heading>div:first-child{gap:3px;flex-direction:column}.playing-card{width:53px;height:77px}.card-rank{font-size:14px}.card-suit{font-size:31px}.card-hand{gap:7px}.card-seat{min-height:158px}.table-actions>p{font-size:16px}.game-buttons button{padding:11px 15px}.round-tally{gap:14px}.tally-note{width:100%;text-align:center}.empty-hand{min-height:77px}.hand-total{font-size:27px}}
@media(prefers-reduced-motion:reduce){.playing-card{animation:none}}

/* A full-width veil lets the moving background flow around the header. */
.header:before{position:fixed;inset:0 0 auto;width:100%;height:calc(var(--header-height) + 55px);background:linear-gradient(#0c132de6,#10172c88 45%,transparent);mask-image:radial-gradient(ellipse at 50% 0%,#000 30%,transparent 76%);backdrop-filter:blur(12px)}
[data-theme="light"] .header:before{background:linear-gradient(#e6e9f4ed,#e6e9f477 45%,transparent)}
/* Two seats on one felt table, with cards dealt from the same deck. */
.twenty-two-table{position:relative;isolation:isolate;border:12px solid #181d35;border-radius:150px / 100px;padding:28px 50px 32px;background:radial-gradient(ellipse at 50% 48%,#324f74 0%,#1c3457 55%,#152943 100%);box-shadow:0 3px 0 #8292bf66,inset 0 0 0 2px #809acc55,inset 0 0 45px #050c2380,0 22px 65px #0004;overflow:visible}
.twenty-two-table:before{content:'';position:absolute;inset:16px;border:1px dashed #b6cafa30;border-radius:130px / 88px;pointer-events:none;z-index:-1}
.table-topline{justify-content:center;flex-wrap:wrap;gap:9px 20px;border:0;padding:0 0 12px;font-size:11px;text-align:center;letter-spacing:1.5px}.table-topline>span:last-child{font-size:15px;letter-spacing:5px;opacity:.7}
.card-seat{position:relative;padding:12px 0;min-height:192px;text-align:center}.seat-heading{justify-content:center;gap:16px;margin-bottom:18px}.seat-heading>div:first-child{flex-direction:column;align-items:center;gap:3px}.seat-name{font-size:22px}.seat-note{font-size:11px}.hand-total{border:1px solid #b9ccf34d;border-radius:50%;width:58px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:25px;background:#0c1a3422}.hand-total small{margin:3px 0 0;font-size:9px}.card-hand{justify-content:center;min-height:112px;gap:12px;padding:0 20px}.playing-card{width:78px;height:110px;box-shadow:0 5px 2px #0003,0 10px 18px #08112a30;animation:none;transform-style:preserve-3d}.card-rank{font-size:19px}.card-suit{font-size:44px}.empty-hand{justify-content:center;min-height:112px;font-size:14px}.table-divider{justify-content:center;margin:8px 0;min-height:52px}.table-divider:before,.table-divider:after{display:none}.table-divider>span{font:italic 40px var(--serif);color:#bfcee178;width:66px;height:66px;border:1px solid #bfcee12e;box-shadow:0 0 0 7px #bfcee106;transform:rotate(-12deg)}
.table-deck{position:absolute;right:9%;top:46%;width:65px;height:90px;transform:rotate(12deg);border:3px solid #c6d1ea;border-radius:7px;background:repeating-linear-gradient(45deg,#334574 0 3px,#27375f 3px 7px);box-shadow:3px 3px 0 #b7c3dd,5px 5px 0 #1b2948,7px 7px 0 #9caac9,10px 12px 18px #0005;display:grid;place-items:center;color:#e4e9f8;font:500 25px var(--mono);pointer-events:none}.table-deck span{border:1px solid #c6d1ea88;border-radius:50%;width:44px;height:44px;display:grid;place-items:center}.table-actions{border:0;padding-top:18px}.table-actions>p{min-height:50px;max-width:440px;margin:auto;font-size:16px}.round-tally{gap:18px;font-size:11px;margin-top:20px}.tally-note{width:100%;font-size:10px;letter-spacing:1px}.twenty-two-table[data-result="win"]{box-shadow:0 3px 0 #b0f2dc99,inset 0 0 0 2px #b0f2dc55,inset 0 0 45px #050c2380,0 22px 65px #0004}
@media(max-width:600px){.twenty-two-table{border-width:7px;border-radius:55px / 65px;padding:24px 12px}.twenty-two-table:before{inset:9px;border-radius:43px / 54px}.card-hand{gap:8px;padding:0;min-height:91px}.playing-card{width:61px;height:88px}.card-rank{font-size:16px}.card-suit{font-size:35px}.seat-heading{gap:12px}.card-seat{min-height:169px}.empty-hand{min-height:91px;font-size:12px}.table-divider{margin:4px 0}.table-deck{width:46px;height:65px;right:7%;top:46%;font-size:18px}.table-deck span{width:30px;height:30px}.table-topline{font-size:10px;letter-spacing:.5px}.table-topline>span:last-child{display:none}.round-tally{gap:14px}.table-actions>p{font-size:14px}.game-buttons button{padding:10px 13px}.hand-total{width:50px;height:50px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.playing-card{animation:none;transition:none}}

footer{flex-wrap:wrap}
/* Continuous background music. */
.site-controls{grid-template-columns:repeat(5,auto)}
.mix-shortcut{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 13px;border-radius:9px;background:#111a3690;font:14px var(--mono)}
[data-theme="light"] .mix-shortcut{background:#f1f2f790}
.taylor-mood,.continuous-mix{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.2fr;gap:40px;padding-top:28px;border-top:1px solid var(--line)}
.taylor-mood h3,.continuous-mix h3{font:600 36px/1.1 var(--display);margin:12px 0}
.taylor-mood p,.continuous-mix p{font-size:15px;line-height:1.6}
.mix-controls{display:grid;align-content:center;gap:14px}.mix-controls button{padding:15px 18px;border:1px solid #a5b3fa;border-radius:12px;background:#293774;color:#fff;font:14px var(--mono);cursor:pointer}.mix-controls button[aria-pressed="true"]{background:#465ba8}
.mix-controls label{display:flex;justify-content:space-between;font-size:14px}.mix-controls input{width:100%;accent-color:#a5b3fa}.mix-controls p{font:12px/1.6 var(--mono);color:var(--muted);margin:0}.mix-note{grid-column:1/-1;color:var(--muted);margin:0}#continuous-mix{scroll-margin-top:calc(var(--header-height) + 25px)}
@media(max-width:760px){.header{display:flex;flex-wrap:wrap}.header .brand{width:100%}.site-controls{width:100%;grid-template-columns:repeat(5,1fr)}.site-controls button,.mix-shortcut{font-size:12px;padding:8px 4px}.control-status{max-width:none}.taylor-mood,.continuous-mix{grid-template-columns:1fr;gap:20px}}
@media(max-width:420px){.site-controls{grid-template-columns:repeat(3,1fr)}.site-controls button,.mix-shortcut{font-size:12px;min-height:42px}}
audio[hidden]{display:none!important}
/* Translucent light curtains, with illumination travelling through the folds. */
#light-curtain{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 0 7px #91e5ff70)}
[data-theme="light"] #light-curtain{filter:none}
/* Keep a complete round comfortably within the viewport. */
#twenty-two{padding:18px 0;min-height:calc(100svh - var(--header-height))}
.twenty-two-section{width:min(100%,900px);margin:auto}
#twenty-two .section-heading{margin-bottom:14px}
#twenty-two .section-heading h2{font-size:clamp(32px,4vw,48px);margin-top:4px}
.twenty-two-table{border-width:8px;border-radius:95px / 65px;padding:16px 30px 18px}
.twenty-two-table:before{inset:9px;border-radius:78px / 52px}
.table-topline{padding-bottom:4px;gap:10px;font-size:10px}
.card-seat{min-height:0;padding:5px 0}
.seat-heading{margin-bottom:8px;gap:12px}.seat-name{font-size:19px}.seat-note{font-size:10px}
.hand-total{width:40px;height:40px;font-size:20px}.hand-total small{font-size:9px;margin:1px 0 0}
.card-hand,.empty-hand{min-height:78px;padding:0;gap:8px}.playing-card{width:55px;height:77px}.card-rank{font-size:15px;left:5px;top:5px}.lower-rank{left:auto;top:auto;right:5px;bottom:5px}.card-suit{font-size:32px}
.table-divider{min-height:12px;height:12px;margin:3px 0}.table-divider>span{font-size:22px;width:30px;height:30px;box-shadow:none;opacity:.65}
.table-deck{width:40px;height:56px;right:10%;top:42%;font-size:17px;border-width:2px}.table-deck span{width:27px;height:27px}
.table-actions{padding-top:8px}.table-actions>p{min-height:24px;font-size:14px;line-height:1.4}.game-buttons{margin-top:9px;gap:8px}.game-buttons button{min-height:40px;padding:9px 16px}
.round-tally{margin-top:12px;gap:8px 16px}.tally-note{font-size:9px}.twenty-two-rules{margin-top:4px}.twenty-two-rules summary{padding:7px 0}
@media(max-width:600px){#twenty-two{padding:12px 0 24px}.twenty-two-table{padding:12px 10px;border-width:6px;border-radius:45px / 50px}.twenty-two-table:before{border-radius:34px / 38px;inset:7px}.table-topline{font-size:9px;padding-bottom:3px}.card-hand,.empty-hand{min-height:68px;gap:5px}.playing-card{width:47px;height:67px}.card-rank{font-size:13px}.card-suit{font-size:28px}.seat-name{font-size:17px}.seat-note{font-size:9px}.seat-heading{gap:10px;margin-bottom:6px}.hand-total{width:35px;height:35px;font-size:18px}.table-divider{margin:2px 0}.table-deck{width:30px;height:43px;right:7%;top:42%;font-size:12px}.table-deck span{width:20px;height:20px}.table-actions>p{font-size:12px;min-height:34px;max-width:250px}.game-buttons button{font-size:13px;min-height:42px;padding:8px 12px}.round-tally{font-size:10px;margin-top:9px;gap:6px 12px}.tally-note{font-size:8px}.twenty-two-rules{font-size:13px}.empty-hand{font-size:12px}}

#twenty-two .seat-note,#twenty-two .table-topline,#twenty-two .round-tally,#twenty-two .tally-note{font-size:12px}#twenty-two .table-actions>p{font-size:14px}.mix-shortcut{white-space:nowrap}

/* Aurora at rest; brighter flowing sheets and laser beams in Disco. */
.party-scene,.disco-on .party-scene{visibility:visible;opacity:1}
#light-curtain{filter:drop-shadow(0 0 16px #3ef5b070);opacity:.65}
.disco-on #light-curtain{filter:drop-shadow(0 0 8px #befaff80);opacity:1}
.disco-on .disco-lights{opacity:.35}
[data-theme="light"] #light-curtain{filter:none;opacity:.65}

/* The mirror ball lowers into the existing curtain-and-laser scene. */
.disco-drop{position:absolute;top:-30px;left:50%;width:clamp(140px,17vw,245px);transform:translate(-50%,-115%);opacity:0;transition:transform 3.2s cubic-bezier(.18,.6,.22,1),opacity 1s;filter:drop-shadow(0 0 24px #bbc9ff60)}
.disco-on .disco-drop{transform:translate(-50%,0);opacity:1}
.disco-mirror{width:100%;height:auto;display:block;animation:mirror-sway 7s ease-in-out infinite alternate;transform-origin:50% 0}
.ball-glint{position:absolute;left:29%;top:38%;font-size:35px;color:#fff;text-shadow:0 0 18px #c5ffff;animation:ball-glimmer 4s ease-in-out infinite}
@keyframes mirror-sway{from{transform:rotate(-3deg)}to{transform:rotate(3deg)}}
@keyframes ball-glimmer{0%,100%{opacity:.3;transform:scale(.55)}50%{opacity:1;transform:scale(1.15)}}
@media(max-width:760px){.disco-drop{top:70px;width:145px;opacity:0}.disco-on .disco-drop{opacity:.8}}
@media(prefers-reduced-motion:reduce){.disco-drop{transition:none}.disco-mirror,.ball-glint{animation:none}}

/* Mobile is a continuous page, with controls in the document flow. */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
  :root{scroll-snap-type:none;scroll-padding-top:20px}
  .site-shell{padding:0 max(18px,env(safe-area-inset-left)) max(28px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-right))}
  .header{position:relative;top:auto;display:flex;flex-wrap:wrap;min-height:0;padding:22px 0 16px;gap:18px}
  .header:before{display:none}
  .header .brand{width:100%;font-size:28px}.header .domain{display:inline}
  .site-controls{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .site-controls button,.mix-shortcut{min-height:46px;font-size:14px;padding:10px 6px;white-space:normal}
  .control-status{max-width:none;font-size:12px;text-align:left;padding:4px 0}
  .section-nav{position:relative;inset:auto;transform:none;display:flex;flex-direction:row;justify-content:flex-start;gap:8px;overflow-x:auto;padding:8px 2px 12px;margin:0 0 12px;border-radius:0;background:none;color:inherit;backdrop-filter:none;scrollbar-width:thin}
  .section-nav a{position:relative;flex:none;min-width:90px;min-height:48px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;flex-direction:row;gap:8px;font-size:14px;opacity:.8;transform:none!important}
  .section-nav a>span:first-child{font-size:12px}.section-nav a>span:last-child{max-width:none;white-space:nowrap}
  .section-nav a[aria-current="location"]{opacity:1;background:#8193d026}.section-nav a[aria-current="location"]:before{display:none}
  .scroll-chapter,.scroll-chapter:first-child,#twenty-two{display:block;min-height:0;padding:36px 0;scroll-snap-align:none;scroll-snap-stop:normal;scroll-margin-top:20px}
  .scroll-chapter:first-child{padding-top:16px}
  .scroll-chapter>section{opacity:1;transform:none}.scroll-chapter .photo-window img{scale:1}
  .scroll-chapter>.spotify-section{padding:22px 18px}
  .section-heading{align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:24px}
  .section-heading h2,.spotify-intro h2{font-size:clamp(36px,8vw,54px);line-height:1.05;overflow-wrap:anywhere}
  .family-heading{display:block}.family-heading h1{font-size:64px;letter-spacing:-3px}.family-heading>p{max-width:100%;font-size:17px;margin-top:18px}
  .family-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .family-gallery figcaption{font-size:14px;padding:12px;min-height:64px}
  .hero{grid-template-columns:minmax(0,1fr);gap:28px}.intro{padding:28px 22px}.intro h2{font-size:clamp(38px,8vw,64px);letter-spacing:-2px}
  .intro-bottom{flex-wrap:wrap;line-height:1.6}.identity-card{width:min(280px,calc(100% - 24px));margin:12px auto;min-height:380px}.identity-card summary{min-height:365px}
  .roles{grid-template-columns:1fr}.roles article,.roles article:first-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.roles article:last-child{border-bottom:0}
  .interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.interest{min-height:270px;padding:22px 18px}.interest h3{font-size:34px}
  .game-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.game-shelf li:hover{transform:none}.game-shelf li>span{font-size:14px;padding:12px;min-height:62px}.game-shelf li>span:before{display:none}
  .spotify-section,.taylor-mood,.continuous-mix,.logbook-layout{grid-template-columns:minmax(0,1fr);gap:28px}
  .spotify-section>*{min-width:0}.preview-player{padding:14px;margin-top:20px}.preview-player figcaption>span{min-width:0;overflow-wrap:anywhere}
  .track-copy strong{font-size:16px}.track-copy>span{font-size:14px}.spotify-tracks a{gap:10px}.track-arrow{padding-left:0}
  #continuous-mix{scroll-margin-top:20px}.mix-controls input{min-height:44px}.mix-controls p,.mix-note{font-size:14px}
  #question-form .form-note{font-size:14px}.answer-actions{flex-wrap:wrap}.logbook-toolbar{gap:12px}
  .twenty-two-table{padding:18px 12px;border-radius:36px;border-width:6px}.twenty-two-table:before{border-radius:26px}.table-deck{display:none}
  .card-seat{padding:10px 0}.seat-heading{gap:10px}.card-hand{gap:5px;min-height:76px}.playing-card{width:48px;height:70px}.card-rank{font-size:14px}.card-suit{font-size:30px}
  .hand-total{width:44px;height:44px;font-size:22px}.hand-total small{font-size:12px}
  .game-buttons button{min-height:48px;flex:1;padding:10px 8px;font-size:14px}.table-actions>p{max-width:100%;font-size:16px!important;min-height:44px}.twenty-two-rules{font-size:14px}.twenty-two-rules summary{min-height:44px;padding:12px 0}
  footer{scroll-snap-align:none;flex-direction:column;align-items:flex-start;padding:28px 0;gap:18px}.footer-note{line-height:1.6}
  .social-links a,.owner-signin{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
  .privacy-page .site-shell{max-width:760px;margin:auto}.legal-nav{font-size:14px;flex-wrap:wrap}.legal-copy{overflow-wrap:anywhere}
  #wellbeing-dashboard input,#wellbeing-dashboard select{font-size:16px}#wellbeing-dashboard button{font-size:14px;min-height:48px;margin-bottom:8px}
}
@media(max-width:480px){
  .family-gallery,.interest-grid{grid-template-columns:minmax(0,1fr)}
  .family-gallery{gap:20px}.family-gallery figcaption{min-height:52px}.film-window{aspect-ratio:9/16}
  .interest{min-height:245px}.intro-bottom>span:last-child{display:none}
}
/* Canvas already paints the glow; avoid filtering a full-screen animated surface. */
#light-curtain,.disco-on #light-curtain{filter:none}
@media (max-width:900px),(hover:none) and (pointer:coarse){
  body{background-attachment:scroll}
  .disco-lights,.disco-on .disco-lights{animation:none;filter:none;inset:0;opacity:.35}
  .site-controls button,.spotify-section{backdrop-filter:none}
  .interest:before,.interest:after{animation:none;filter:none;opacity:.15}
  .disco-drop{filter:none}.disco-mirror{animation:none}
}
