@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/EBGaramond-400-italic.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/EBGaramond-400-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/EBGaramond-500-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IM Fell English';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/IMFellEnglish-400-italic.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IM Fell English';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/IMFellEnglish-400-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IM Fell English SC';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/IMFellEnglishSC-400-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
:root{--paper:#eddccb;--paper2:#e2c8b3;--ink:#2a1c1c;--ink2:#5c4444;--ink3:#967b78;--red:#a83b2a;--brass:#c9a058;--verdigris:#3d6d64;
  --head:'IM Fell English',Baskerville,'Hoefler Text',Georgia,serif;--sc:'IM Fell English SC','IM Fell English',Baskerville,Georgia,serif;--body:'EB Garamond',Baskerville,'Hoefler Text',Georgia,serif}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--paper);overflow-x:hidden}
body{position:relative;min-height:100vh;overflow-x:hidden;color:var(--ink);font:17px/1.55 var(--body);-webkit-font-smoothing:antialiased;background-color:var(--paper);
  background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012' numOctaves='3' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.35 0 0 0 0 0.15 0 0 0 0.13 -0.02'/%3E%3C/filter%3E%3Crect width='600' height='600' filter='url(%23f)'/%3E%3C/svg%3E"),
  url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' seed='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.36 0 0 0 0 0.24 0 0 0 0.2 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23g)'/%3E%3C/svg%3E")}
body::before{content:"";position:fixed;inset:10px;border:1px solid var(--ink);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 3.7px var(--ink3);pointer-events:none;z-index:5}
body::after{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 50% 45%,rgba(59,42,20,0) 58%,rgba(59,42,20,.15) 100%);pointer-events:none;z-index:4}
a{color:var(--red)}a:hover{color:var(--ink)}
.wrap{max-width:1100px;margin:0 auto;padding:0 28px}
.sc{font-family:var(--sc);letter-spacing:.12em;text-transform:lowercase}
.it{font-family:var(--head);font-style:italic;color:var(--ink2)}
.runhead{display:flex;justify-content:space-between;align-items:baseline;padding:26px 0 12px;font-size:13px}
.runhead a{text-decoration:none;color:inherit}.runhead nav{display:flex;gap:28px;font-family:var(--head);font-style:italic;font-size:14px;color:var(--ink2)}
.rule2{height:5px;border-top:.9px solid var(--ink);border-bottom:.5px solid var(--ink)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,480px);gap:40px;align-items:center;padding:56px 0 40px}
.hero .text{display:flex;flex-direction:column;gap:22px;min-width:0}
h1{font-family:var(--head);font-weight:400;font-size:min(64px,calc((100vw - 460px) / 9));letter-spacing:.16em;line-height:1;display:flex;align-items:center;gap:14px;color:var(--ink);white-space:nowrap}
h1 svg{flex-shrink:0;width:.5em;height:.5em}
.tagline{font-family:var(--head);font-style:italic;font-size:clamp(22px,2.6vw,30px);line-height:1.2;color:var(--ink2)}
.lead{font-size:19px;line-height:1.55;max-width:560px;text-wrap:pretty}.lead em{font-style:normal;color:var(--red)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 26px;border:1px solid var(--ink);color:var(--ink);text-decoration:none;font-family:var(--sc);font-size:15px;letter-spacing:.12em;text-transform:lowercase;white-space:nowrap;background:transparent;box-shadow:inset 0 0 0 2px var(--paper),inset 0 0 0 2.8px var(--ink3);transition:background .15s}
.btn:hover{background:var(--paper2);color:var(--ink)}
.btn.primary{background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 2px var(--ink),inset 0 0 0 2.8px var(--paper2)}.btn.primary:hover{background:#41302f;color:var(--paper)}
.meta{font-family:var(--head);font-style:italic;font-size:13.5px;line-height:1.5;color:var(--ink2)}
.wheel{position:relative;width:100%;max-width:480px;aspect-ratio:1;justify-self:end}
.wheel svg{display:block;width:100%;height:100%;overflow:visible}
.wheel .cap{position:absolute;left:50%;top:76%;transform:translateX(-50%);background:var(--paper);padding:2px 10px;border-top:.6px solid var(--ink);border-bottom:.6px solid var(--ink);font-family:var(--head);font-size:14px;white-space:nowrap;color:var(--ink)}
.shot{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px 0 8px}
.shot .frame{border:1px solid var(--ink);box-shadow:0 30px 60px rgba(40,20,10,.25);width:100%;max-width:1040px;background:#0e1220}
.shot img{display:block;width:100%;height:auto}
.shot figcaption{font-family:var(--head);font-style:italic;font-size:15px;color:var(--ink2)}
h2{display:flex;align-items:center;gap:16px;padding:48px 0 22px;font-family:var(--sc);font-weight:400;font-size:15px;letter-spacing:.12em;text-transform:lowercase;color:var(--red)}
h2::after{content:"";flex-grow:1;height:.6px;background:var(--ink3)}
.clips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 40px}
.clip{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:.4px dotted var(--ink3)}
.play{flex-shrink:0;width:38px;height:38px;border:0;background:none;padding:0;cursor:pointer;color:var(--ink)}
.play svg{display:block;width:38px;height:38px}.play .pause{display:none}.playing .play .tri{display:none}.playing .play .pause{display:block}
.clip .body{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.clip .t{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.clip .len{font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink2)}
.clip .d{font-family:var(--head);font-style:italic;font-size:14.5px;line-height:1.4;color:var(--ink2)}
.tape{position:relative;height:12px;cursor:pointer}.tape svg{display:block;width:100%;height:12px}
.tape .marker{position:absolute;top:3.5px;left:0;width:0;height:0;border-top:2.5px solid transparent;border-bottom:2.5px solid transparent;border-left:4.5px solid var(--red);margin-left:-1px}
.js .clip audio{display:none}.clip audio{width:100%;margin-top:4px}
.clipnote{font-size:14px;color:var(--ink2);margin-top:18px}
.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 48px}
.feature h3{display:flex;gap:10px;align-items:baseline;margin-bottom:8px;font-family:var(--sc);font-weight:400;font-size:15px;letter-spacing:.12em;text-transform:lowercase;color:var(--ink)}
.feature h3 i{font-family:var(--head);font-style:italic;font-size:14px;letter-spacing:0;text-transform:none;color:var(--ink2)}
.feature p{font-size:15.5px;line-height:1.55;text-wrap:pretty}.feature b{font-weight:500}
footer{margin-top:64px;padding:26px 0 40px;border-top:.9px solid var(--ink);text-align:center;font-family:var(--head);font-style:italic;font-size:14px;line-height:1.7;color:var(--ink2)}
footer a{color:var(--ink2)}footer .sc{font-style:normal;color:var(--ink)}
.doc{max-width:720px;margin:0 auto;padding:40px 28px 60px}.doc h1{font-size:clamp(28px,4vw,40px);margin-bottom:6px}.doc h2{padding:34px 0 10px}.doc p{margin-bottom:12px;text-wrap:pretty}.doc code{font-family:var(--body);font-style:italic}
@media(max-width:900px){.hero{grid-template-columns:1fr;justify-items:center;text-align:center;padding-top:36px}.hero .text{align-items:center;width:100%}.hero .text>*{max-width:100%}.lead{width:100%}h1{font-size:clamp(34px,9.2vw,64px)!important}h1{justify-content:center}.lead{text-align:left}h1{font-size:clamp(34px,9.2vw,64px)}.wheel{width:min(320px,82vw);justify-self:center;order:-1}.wheel .cap{font-size:12px}.clips,.features{grid-template-columns:1fr}.runhead nav{gap:16px}}
@media(max-width:520px){.wrap{padding:0 18px}body::before{inset:8px}.cta{flex-direction:column;width:100%}.btn{width:100%}.runhead{flex-direction:column;gap:8px;align-items:center}}

/* ---- night ink ---- */
html[data-theme="night"]{--paper:#0e1220;--paper2:#171c2e;--ink:#e6dcc4;--ink2:#cfaa67;--ink3:#4e5670;--red:#d97a58;--brass:#cfaa67;--verdigris:#7fb0a4}
html[data-theme="night"] body{background-image:none}
html[data-theme="night"] body::after{background:radial-gradient(ellipse at 50% 45%,rgba(0,0,0,0) 58%,rgba(0,0,0,.35) 100%)}
html[data-theme="night"] .btn.primary{background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 2px var(--ink),inset 0 0 0 2.8px var(--paper2)}
html[data-theme="night"] .btn.primary:hover{background:#d3c8ad}
html[data-theme="night"] .shot .frame{box-shadow:0 30px 60px rgba(0,0,0,.6)}
.themeswitch{font-family:var(--sc);font-size:12px;letter-spacing:.14em;text-transform:lowercase;color:var(--ink);background:transparent;border:1px solid var(--ink);padding:3px 12px;cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--paper),inset 0 0 0 2.2px var(--ink3)}
.themeswitch:hover{background:var(--paper2)}
/* ---- the gallery: orrery, iPhone, loops ---- */
.gallery{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:30px 28px;align-items:start;padding:10px 0 12px}
.gallery figure{margin:0}
.gallery img{display:block;width:100%;height:auto;border:1px solid var(--ink);box-shadow:0 18px 40px rgba(40,20,10,.18)}
.gallery .tall img{max-width:280px;margin:0 auto}
.gallery figcaption{font-family:var(--head);font-style:italic;font-size:14.5px;color:var(--ink2);margin-top:12px;line-height:1.45;text-wrap:pretty}
.gallery .tall figcaption{text-align:center}
.gallery figcaption .sc{display:block;font-style:normal;font-size:13px;letter-spacing:.12em;text-transform:lowercase;color:var(--ink);margin-bottom:3px}
html[data-theme="night"] .gallery img{box-shadow:0 18px 40px rgba(0,0,0,.55)}
.listen .note{font-size:15.5px;line-height:1.5;color:var(--ink2);margin-bottom:6px;max-width:760px;text-wrap:pretty}
.listen .sub{padding:26px 0 4px}
.tape svg,.play{color:var(--ink)}
/* ---- expandable features and the deeper sections ---- */
details.feature,details.deep{border-bottom:.4px dotted var(--ink3);padding:10px 0}
details summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
details summary::-webkit-details-marker{display:none}
details summary::before{content:"+";font-family:var(--head);font-size:18px;line-height:1;color:var(--red);width:14px;flex-shrink:0}
details[open] summary::before{content:"\2212"}
details summary i{font-family:var(--head);font-style:italic;font-size:14px;color:var(--ink2)}
details summary .sc{font-family:var(--sc);font-size:15px;letter-spacing:.12em;text-transform:lowercase;color:var(--ink)}
details summary em{font-family:var(--head);font-style:italic;font-size:14.5px;color:var(--ink2)}
details p{font-size:15.5px;line-height:1.55;text-wrap:pretty;padding:10px 0 4px 26px;max-width:820px}
.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
/* ---- the tour film ---- */
.film{padding:12px 0 10px 26px}
.film video{display:block;width:100%;height:auto;border:1px solid var(--ink);background:var(--paper2)}
.filmcap{font-family:var(--head);font-style:italic;font-size:14px;color:var(--ink2);margin-top:8px}
/* ---- the tour steps ---- */
.stepnote{padding-left:26px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 20px;padding:12px 0 8px 26px}
.step img{display:block;width:100%;height:auto;border:1px solid var(--ink);margin-bottom:8px}
.stepbody{display:flex;flex-direction:column;gap:4px}
.stepbody .t{display:flex;justify-content:space-between;align-items:center;gap:10px}
.stepbody .t .sc{font-size:13px}
.stepbody .play{width:30px;height:30px}.stepbody .play svg{width:30px;height:30px}
.stepbody .d{font-family:var(--head);font-style:italic;font-size:13.5px;line-height:1.4;color:var(--ink2)}
.js .step audio{display:none}
@media(max-width:900px){.gallery{grid-template-columns:1fr}.features{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:0}details p,.stepnote,.film{padding-left:0}}
@media(max-width:520px){.steps{grid-template-columns:1fr}.runhead nav{flex-wrap:wrap;justify-content:center}}

/* ---- mobile beta ---- */
.beta-panel{margin-top:4px;padding:18px 20px 20px;border:1px solid var(--ink3);background:rgba(226,200,179,.2);box-shadow:inset 0 0 0 2px var(--paper),inset 0 0 0 2.8px rgba(150,123,120,.35)}
.beta-kicker{font-family:var(--sc);font-size:12px;letter-spacing:.14em;text-transform:lowercase;color:var(--red);margin-bottom:5px}
.beta-panel h2{display:block;padding:0;margin:0 0 6px;font-family:var(--head);font-size:clamp(22px,2.3vw,29px);font-style:italic;letter-spacing:0;text-transform:none;color:var(--ink);line-height:1.08}
.beta-panel h2::after{display:none}
.beta-panel>p:not(.beta-kicker){max-width:44rem;margin-bottom:14px;color:var(--ink2);font-size:16px;line-height:1.4}
.beta-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;align-items:center}
.beta-form input[type=email]{height:42px;min-width:0;padding:0 12px;border:1px solid var(--ink3);border-radius:0;background:var(--paper);color:var(--ink);font:16px var(--body)}
.beta-form input[type=email]::placeholder{color:var(--ink2);opacity:.75}
.beta-form fieldset{grid-column:1 / -1;display:flex;gap:16px;border:0;padding:0;color:var(--ink2);font-family:var(--head);font-size:14px;font-style:italic}
.beta-form legend{float:left;margin-right:12px;color:var(--ink);font-style:normal}
.beta-form fieldset label{display:inline-flex;align-items:center;gap:5px}
.beta-form input[type=checkbox]{accent-color:var(--red)}
.beta-form .btn{height:42px;padding:0 18px;font-size:13px}
.beta-status{grid-column:1 / -1;min-height:1.3em;margin:0!important;color:var(--red)!important;font-family:var(--head);font-style:italic;font-size:14px!important}
.beta-privacy{grid-column:1 / -1;min-height:0;margin:0!important;color:var(--ink2)!important;font-size:12px!important;line-height:1.3!important}
.beta-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html[data-theme="night"] .beta-panel{background:rgba(23,28,46,.72)}
@media(max-width:520px){.beta-panel{padding:16px 14px}.beta-form{grid-template-columns:1fr}}
