:root{--gold:#e8b64c;--rose:#dc8f63;--pink:#ef3f75;--green:#2c9b71;--purple:#65459a;--orange:#e96b35;--ink:#182f49;--brick:#873e35;--paper:#fff1cf;--white:#fffaf0;--body:'Manrope',sans-serif;--display:'Baloo 2',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");mix-blend-mode:multiply}
a{color:inherit;text-decoration:none}
.mobile-nav{display:none}
button{font:inherit}
::selection{background:var(--pink);color:white}
.skip-link{position:absolute;left:1rem;top:0;z-index:100;padding:.75rem 1rem;background:white;color:var(--ink);border-radius:0 0 10px 10px;transform:translateY(-140%)}.skip-link:focus{transform:none}
:focus-visible{outline:3px solid white;outline-offset:4px;box-shadow:0 0 0 6px var(--ink)}
.site-header{height:100px;position:absolute;top:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4.5vw;color:var(--ink);border-bottom:1px solid rgba(24,47,73,.25)}
.brand{display:flex;align-items:center;gap:11px;width:max-content;font-family:var(--display);line-height:.77;font-size:16px;font-weight:500;letter-spacing:-.02em}.brand svg{width:42px;height:42px;fill:var(--pink);stroke:var(--ink);stroke-width:1.8;overflow:visible}.brand b{font-size:19px}
.site-header nav{display:flex;gap:2.4rem;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.site-header nav a{position:relative;padding:16px 0}.site-header nav a::after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:10px;background:var(--ink);transition:right .3s}.site-header nav a:hover::after{right:0}
.sun-dial{justify-self:end;display:flex;align-items:center;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.sun-dial b{display:grid;place-items:center;width:54px;height:54px;border:1px solid var(--ink);border-radius:50%;font-family:var(--display);font-size:17px;letter-spacing:0}
.hero{height:max(730px,100svh);min-height:680px;position:relative;overflow:hidden;background:linear-gradient(180deg,#e2a853 0%,#e8b65a 38%,#dc8f70 79%,#9a4e52 100%)}
.hero::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(235,107,96,.2) 44%,rgba(85,38,60,.17));pointer-events:none}
.sun{position:absolute;width:min(41vw,580px);aspect-ratio:1;left:50%;top:13%;translate:-50% 0;border-radius:50%;background:rgba(255,235,153,.42);box-shadow:0 0 90px rgba(255,225,120,.55)}
.cloud{position:absolute;height:20px;background:rgba(255,245,218,.17);border-radius:50%;filter:blur(7px)}.cloud-one{width:40vw;left:-5vw;top:31%;transform:rotate(-3deg)}.cloud-two{width:34vw;right:-2vw;top:45%;transform:rotate(5deg)}
.hero-copy{position:absolute;top:24%;left:9vw;z-index:2}.eyebrow{margin:0 0 18px;font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.hero h1,.duel-intro h2,.craft-section h2,.anatomy-section h2,.stalls-section h2,.etiquette-section h2,.finale h2,.guide-hero h1,.guide-content h2{font-family:var(--display);margin:0;letter-spacing:-.055em;line-height:.79}.hero h1{font-size:clamp(100px,14.8vw,245px);font-weight:700}.hero h1 span{display:block;font-size:.38em;letter-spacing:-.035em;margin-left:5px;margin-bottom:.05em}.hero h1 em,.duel-intro h2 em,.craft-section h2 em,.anatomy-section h2 em,.stalls-section h2 em,.etiquette-section h2 em,.finale h2 em{font-style:normal;color:var(--pink);text-shadow:3px 3px 0 rgba(255,245,215,.6)}
.hero .dek{position:absolute;left:47vw;top:71%;width:280px;margin:0;font-size:14px;line-height:1.6;font-weight:600}.wind-note{position:absolute;right:7vw;top:25%;display:grid;grid-template-columns:auto auto;align-items:baseline;gap:4px;border-left:1px solid var(--ink);padding-left:14px}.wind-note span{grid-column:1/-1;font-size:10px;font-weight:800;letter-spacing:.15em}.wind-note b{font:700 42px/1 var(--display)}.wind-note small{font-size:8px;font-weight:800}
.hero-kite{position:absolute;width:92px;height:112px;transform:rotate(8deg);z-index:2;filter:drop-shadow(0 10px 8px rgba(73,29,49,.22))}.hero-kite::before{content:"";position:absolute;inset:0;clip-path:polygon(50% 0,100% 42%,50% 100%,0 42%);background:linear-gradient(135deg,rgba(255,255,255,.3) 0 49%,transparent 50%),var(--pink)}.hero-kite::after{content:"";position:absolute;left:50%;top:2%;width:1px;height:98%;background:var(--ink);opacity:.55}.hero-kite i{position:absolute;width:90px;height:1px;top:41%;background:var(--ink);opacity:.55;transform:rotate(8deg)}.kite-pink{right:22vw;top:37%}.kite-green{width:54px;height:67px;left:34vw;top:17%;transform:rotate(-14deg)}.kite-green::before{background:linear-gradient(135deg,rgba(255,255,255,.25) 0 49%,transparent 50%),var(--green)}
.roofline{position:absolute;left:0;right:0;bottom:0;height:24%;z-index:3}.roof{position:absolute;bottom:0;background:var(--brick);border-top:5px solid #592e33;box-shadow:inset 0 15px rgba(244,159,99,.15)}.roof::after{content:"";position:absolute;inset:20px 5% 0;background-image:linear-gradient(90deg,transparent 96%,rgba(255,220,160,.08) 96%),linear-gradient(0deg,transparent 92%,rgba(255,220,160,.08) 92%);background-size:47px 31px}.r1{height:52%;width:23%;left:0}.r2{height:78%;width:24%;left:20%;clip-path:polygon(0 20%,37% 20%,37% 0,75% 0,75% 20%,100% 20%,100% 100%,0 100%)}.r3{height:45%;width:25%;left:42%}.r4{height:69%;width:25%;left:64%;clip-path:polygon(0 16%,45% 16%,45% 0,73% 0,73% 16%,100% 16%,100% 100%,0 100%)}.r5{height:50%;width:16%;right:0}.people{position:absolute;bottom:48%;width:13px;height:37px;background:#482d35;border-radius:8px 8px 2px 2px}.people::before{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#482d35;top:-8px;left:1px}.p1{left:14%;bottom:53%}.p2{left:54%;bottom:46%}.p3{right:12%;bottom:51%}
.scroll-cue{position:absolute;z-index:5;right:4vw;bottom:30%;font-size:9px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;display:flex;align-items:center;gap:14px;transform:rotate(90deg);transform-origin:right}.scroll-cue i{width:75px;height:1px;background:var(--ink);position:relative}.scroll-cue i::after{content:"";position:absolute;width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;right:0;top:-2px;transform:rotate(-45deg)}
[data-reveal]{animation:reveal-in .8s both cubic-bezier(.16,1,.3,1)}.site-header{animation-delay:.1s}.hero-copy .eyebrow{animation-delay:.25s}.hero h1{animation-delay:.4s}.hero .dek{animation-delay:.65s}.wind-note{animation-delay:.8s}@keyframes reveal-in{from{opacity:0;transform:translateY(20px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
.duel-section{position:relative;background:#f5d184;padding:120px 5vw 0}.duel-intro{max-width:1200px;margin:0 auto 55px;display:grid;grid-template-columns:1.1fr .9fr;align-items:end}.duel-intro h2{font-size:clamp(65px,8vw,128px);font-weight:650}.duel-intro>p{max-width:420px;margin:0 0 10px;font-size:15px;line-height:1.7}.duel-intro strong{color:#9e264d}
.duel-stage{height:min(720px,72vw);min-height:570px;max-width:1360px;margin:auto;position:relative;overflow:hidden;touch-action:none;user-select:none;background:linear-gradient(#efba58 0%,#e79768 54%,#b65c63 100%);border:1px solid rgba(24,47,73,.5);box-shadow:18px 22px 0 rgba(135,62,53,.25);cursor:crosshair}.duel-stage::before{content:"";position:absolute;width:42%;aspect-ratio:1;border-radius:50%;background:rgba(255,238,162,.35);left:29%;top:5%;box-shadow:0 0 60px rgba(255,229,133,.33)}.duel-skywash{position:absolute;inset:0;background:repeating-linear-gradient(171deg,transparent 0 48px,rgba(255,250,229,.035) 49px 50px)}
.duel-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.kite-string{fill:none;stroke:#fff9df;stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px rgba(255,255,255,.5))}.rival-string{stroke:#eff9e1;opacity:.9}.svg-kite{transform-origin:center}.kite-paper{fill:var(--pink)}.player-kite .kite-panel{fill:#ff925e}.rival-kite .kite-paper{fill:var(--green)}.rival-kite .kite-panel{fill:#c9d745}.kite-grain{fill:url(#paperGrain)}.spine,.tail{fill:none;stroke:var(--ink);stroke-width:2;vector-effect:non-scaling-stroke}.tail{stroke:#fff5dc;stroke-width:1.5}
.status-board{position:absolute;left:22px;top:20px;z-index:2;display:grid;grid-template-columns:100px minmax(140px,260px) 100px;align-items:center;background:rgba(24,47,73,.9);color:white;border-radius:4px;min-height:48px;font-size:9px;font-weight:800;letter-spacing:.15em}.status-board>*{padding:12px}.status-board b{text-align:center;border-inline:1px solid rgba(255,255,255,.2);font:600 15px/1 var(--display);letter-spacing:.02em;color:#ffda7d}.status-board span:last-child{text-align:right}
.cut-meter{position:absolute;right:24px;top:26px;z-index:3;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.13em;display:flex;align-items:center;gap:10px}.cut-meter>i{display:block;width:110px;height:8px;border:1px solid var(--ink);padding:2px}.cut-meter>i>b{display:block;width:0;height:100%;background:var(--pink);transition:width .15s}
.control-hint{position:absolute;left:28px;bottom:105px;z-index:3;display:flex;gap:12px;align-items:flex-start;color:#fff9df}.control-hint b{font:700 19px/1 var(--display);letter-spacing:.08em}.control-hint span{font-size:9px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;border-left:1px solid;padding-left:12px}
.fly-control{position:absolute;z-index:5;right:30px;bottom:35px;width:116px;height:116px;border:0;border-radius:50%;background:var(--pink);color:white;box-shadow:0 8px 0 #a82e55,0 15px 30px rgba(84,28,48,.3);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .15s,box-shadow .15s}.fly-control b{font:700 23px/1 var(--display);letter-spacing:.05em}.fly-control small{font-size:8px;text-transform:uppercase;letter-spacing:.14em}.fly-control:active,.fly-control.is-pulling{transform:translateY(6px) scale(.96);box-shadow:0 2px 0 #a82e55,0 8px 15px rgba(84,28,48,.25)}.control-ring{position:absolute;inset:8px;border:1px dashed rgba(255,255,255,.7);border-radius:50%;animation:spin 12s linear infinite}@keyframes spin{to{rotate:360deg}}
.duel-roof{height:88px;position:absolute;left:0;right:0;bottom:0;background:#753b3e;border-top:8px solid #512d35}.duel-roof span{position:absolute;left:7%;bottom:0;width:20%;height:135px;background:#6b383d;clip-path:polygon(0 27%,27% 27%,27% 0,72% 0,72% 27%,100% 27%,100% 100%,0 100%)}.duel-roof i{position:relative;display:inline-block;margin-left:11%;top:-23px;width:12px;height:30px;background:#472d36;border-radius:8px}.duel-roof i::before{content:"";position:absolute;top:-8px;width:11px;height:11px;border-radius:50%;background:inherit}
.reset-duel{position:absolute;left:50%;top:55%;z-index:8;translate:-50% -50%;border:2px solid var(--ink);padding:14px 22px;background:var(--paper);color:var(--ink);font-weight:800;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.cheer-ticker{max-width:1360px;margin:auto;background:var(--ink);color:#fff3ce;overflow:hidden;white-space:nowrap;border-top:1px solid #fff3ce}.cheer-ticker div{display:flex;width:max-content;animation:ticker 23s linear infinite}.cheer-ticker span{padding:16px 50px;font:600 16px var(--display);letter-spacing:.05em}.cheer-ticker span::after{content:"◆";color:var(--pink);margin-left:50px;font-size:10px}@keyframes ticker{to{transform:translateX(-50%)}}
.craft-section{position:relative;min-height:1000px;padding:150px max(6vw,40px);background:#214d46;color:#f9ecc7;display:grid;grid-template-columns:1.05fr .9fr 1.1fr;gap:5vw;overflow:hidden}.craft-section::before{content:"";position:absolute;width:600px;height:600px;border:1px solid rgba(255,241,207,.13);border-radius:50%;left:24%;top:19%}.craft-title-block{position:relative;z-index:2}.craft-section h2{font-size:clamp(70px,8.5vw,140px);font-weight:650}.craft-section h2 em{color:#f6c94f;text-shadow:3px 3px 0 #163b35}.craft-title-block>p:last-child{max-width:360px;font-size:15px;line-height:1.7;margin:30px 0}.spool-visual{align-self:center;position:relative;z-index:2}.spool-visual svg{width:100%;overflow:visible}.spool-visual .loose-thread{fill:none;stroke:#f7e8c7;stroke-width:2;stroke-dasharray:5 5}.spool path{fill:#e0653e;stroke:#102f2b;stroke-width:4}.spool .wound{fill:none;stroke:#f7ddac;stroke-width:8}.spool circle{fill:#f6c94f}.spool-label{position:absolute;left:50%;top:49%;translate:-50% -50%;color:#143d37;text-align:center;font-size:10px;font-weight:800;letter-spacing:.15em}.spool-label b{font-size:13px}.recipe{list-style:none;margin:0;padding:0;position:relative;z-index:2}.recipe li{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:25px 0;border-bottom:1px solid rgba(255,241,207,.28)}.recipe li>span{font:600 22px var(--display);color:#f6c94f}.recipe b{font:600 24px var(--display)}.recipe p{margin:6px 0 0;font-size:12px;line-height:1.65;color:#e3dec2}.craft-note{position:absolute;left:7vw;bottom:80px;width:330px;border-left:3px solid #f6c94f;padding-left:18px}.craft-note b{font-size:9px;letter-spacing:.18em}.craft-note p{font:500 18px/1.5 var(--display);margin:8px 0}
.anatomy-section{padding:140px 7vw;background:#f9edc8;display:grid;grid-template-columns:.8fr 1.25fr .65fr;gap:2vw;align-items:center}.anatomy-heading h2{font-size:clamp(58px,6.8vw,105px);font-weight:600}.anatomy-heading h2 em{color:var(--purple);text-shadow:none}.anatomy-figure{position:relative}.anatomy-figure svg{width:100%;max-height:760px;overflow:visible}.anatomy-paper{fill:#e9577d;stroke:var(--ink);stroke-width:3}.anatomy-half{fill:#f0793d;opacity:.85}.anatomy-bamboo,.anatomy-tail{fill:none;stroke:var(--ink);stroke-width:4}.anatomy-tail{stroke-width:2}.diagram-labels path{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:3 4}.diagram-labels text{font:700 12px var(--body);letter-spacing:.08em;fill:var(--ink)}.balance-stamp{position:absolute;right:4%;bottom:6%;display:grid;place-items:center;text-align:center;width:100px;height:100px;border:2px solid var(--purple);border-radius:50%;color:var(--purple);font-size:8px;font-weight:800;letter-spacing:.12em;rotate:-9deg}.balance-stamp b{font:700 24px var(--display)}.anatomy-notes article{padding:28px 0;border-top:1px solid rgba(24,47,73,.3)}.anatomy-notes article>span{font:700 12px var(--display);color:var(--pink)}.anatomy-notes h3{font:600 23px/1.1 var(--display);margin:5px 0}.anatomy-notes p{font-size:11px;line-height:1.65;margin:0}
.stalls-section{background:#d95e3c;padding:130px 0 0;color:#fff4d4}.stalls-heading{padding:0 7vw 75px;display:grid;grid-template-columns:.5fr 1.2fr .55fr;align-items:end}.stalls-heading .eyebrow{align-self:start}.stalls-heading h2{font-size:clamp(70px,9vw,145px);font-weight:650}.stalls-heading h2 em{color:#ffe168;text-shadow:3px 3px 0 #8b3436}.stalls-heading>p:last-child{font-size:13px;line-height:1.6;max-width:260px}.stall-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,244,212,.5)}.stall{min-height:570px;padding:30px 2.2vw 40px;border-right:1px solid rgba(255,244,212,.45);transition:flex .4s,filter .4s}.stall:last-child{border:0}.stall-no{font-size:8px;font-weight:800;letter-spacing:.18em}.stall svg{display:block;width:80%;height:160px;margin:35px auto 20px;fill:none;stroke:#fff2c5;stroke-width:3}.stall h3{font:600 clamp(29px,3vw,46px)/.95 var(--display);margin:25px 0}.stall p{min-height:75px;font-size:11px;line-height:1.65;max-width:250px}.stall>b{display:inline-block;margin-top:30px;font-size:9px;letter-spacing:.12em}.stall-pink{background:#c63e66}.stall-green{background:#257662}.stall-purple{background:#5b458a}.stall:hover{filter:brightness(1.09)}
.etiquette-section{background:#f5d687;padding:140px 7vw}.rules-title{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;margin-bottom:90px}.big-number{font:700 clamp(180px,25vw,390px)/.55 var(--display);color:transparent;-webkit-text-stroke:2px var(--brick);opacity:.55}.rules-title h2{font-size:clamp(72px,9vw,140px);font-weight:650}.rules-title h2 em{color:var(--brick);text-shadow:none}.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.rules-grid article{padding:35px;min-height:230px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.rules-grid article>b{font:700 15px var(--display);color:var(--pink)}.rules-grid h3{font:600 27px var(--display);margin:25px 0 8px}.rules-grid p{font-size:12px;line-height:1.65;margin:0;max-width:280px}.etiquette-section blockquote{margin:90px auto 0;max-width:900px;text-align:center;font:500 clamp(30px,4vw,56px)/1.15 var(--display)}.etiquette-section cite{display:block;margin-top:20px;font:700 9px var(--body);letter-spacing:.13em;text-transform:uppercase}
.finale{min-height:760px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#c9635c,#573c68 78%,#243853);color:#fff2d1;overflow:hidden}.finale::after{content:"";position:absolute;bottom:0;left:0;right:0;height:100px;background:#322b3b;clip-path:polygon(0 45%,8% 38%,8% 15%,12% 15%,12% 35%,19% 30%,27% 47%,34% 28%,43% 39%,48% 20%,53% 20%,53% 46%,66% 31%,74% 48%,83% 27%,92% 42%,100% 31%,100% 100%,0 100%)}.finale>p{font-size:9px;text-transform:uppercase;letter-spacing:.2em;font-weight:800}.finale h2{font-size:clamp(80px,12vw,185px);font-weight:650;position:relative;z-index:2}.finale h2 em{color:#ffd45f;text-shadow:4px 4px 0 #7e3b63}.finale>a{margin-top:45px;border-bottom:1px solid;padding:14px 0;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;position:relative;z-index:3}.finale>a span{font-size:20px;margin-left:18px}.address{position:absolute;left:5vw;bottom:110px;text-align:left;font-size:9px;line-height:1.7;letter-spacing:.13em;text-transform:uppercase}.finale-kites i{position:absolute;width:30px;height:38px;background:var(--pink);clip-path:polygon(50% 0,100% 44%,50% 100%,0 44%)}.finale-kites i:nth-child(1){left:12%;top:18%;rotate:-15deg}.finale-kites i:nth-child(2){left:27%;top:35%;background:#facd4c;scale:.6}.finale-kites i:nth-child(3){right:11%;top:22%;background:#2c9b71;scale:1.5}.finale-kites i:nth-child(4){right:28%;top:12%;background:#f0793d;scale:.7}.finale-kites i:nth-child(5){right:19%;top:54%;background:#8e65bb;scale:.45}
footer{min-height:90px;background:#182f49;color:#fff0c9;display:flex;align-items:center;justify-content:space-between;padding:25px 5vw;font-size:9px;text-transform:uppercase;letter-spacing:.11em}footer nav{display:flex;gap:30px}footer a{min-height:44px;display:flex;align-items:center;padding:12px 0;border-bottom:1px solid transparent}footer a:hover{border-color:#fff0c9}
.falling-kite{position:fixed;z-index:50;left:50%;top:-140px;width:85px;height:110px;pointer-events:none;display:none;filter:drop-shadow(0 10px 9px rgba(21,34,51,.25))}.falling-kite i{display:block;width:100%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,.3) 0 49%,transparent 50%),var(--green);clip-path:polygon(50% 0,100% 43%,50% 100%,0 43%);border:1px solid var(--ink)}.falling-kite.is-falling{display:block}.cut-flash{position:fixed;inset:0;z-index:45;display:none;place-items:center;align-content:center;background:rgba(235,64,110,.92);color:#fff8dd;text-align:center;pointer-events:none}.cut-flash.show{display:grid;animation:cut-flash 1.4s both}.cut-flash span{font:700 clamp(70px,17vw,250px)/.7 var(--display)}.cut-flash b{font:700 clamp(40px,9vw,125px)/1 var(--display);letter-spacing:.04em}.cut-flash small{margin-top:20px;font-weight:800;letter-spacing:.3em}@keyframes cut-flash{0%{clip-path:circle(0 at 50% 50%)}18%,64%{clip-path:circle(100% at 50% 50%)}100%{clip-path:circle(0 at 88% 10%)}}

/* Guide */
.guide-body{background:#f6d383}.guide-body::after{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(130deg,transparent 60%,rgba(220,84,104,.12));z-index:-1}.guide-header{position:relative;background:transparent}.guide-main{padding-top:100px}.guide-hero{min-height:520px;padding:90px 8vw;display:flex;flex-direction:column;justify-content:center;position:relative;border-bottom:1px solid var(--ink);overflow:hidden}.guide-hero::after{content:"";position:absolute;width:270px;height:330px;background:var(--pink);clip-path:polygon(50% 0,100% 43%,50% 100%,0 43%);right:11vw;top:90px;rotate:9deg;box-shadow:inset 2px 0 white}.guide-hero .eyebrow,.guide-hero h1,.guide-hero p{position:relative;z-index:2}.guide-hero h1{font-size:clamp(75px,12vw,180px);font-weight:650}.guide-hero h1 em{font-style:normal;color:var(--purple)}.guide-hero>p:last-child{max-width:530px;line-height:1.7;font-weight:600}.guide-content{max-width:1120px;margin:auto;padding:100px 5vw 130px;display:grid;grid-template-columns:240px 1fr;gap:8vw}.guide-toc{position:sticky;top:40px;align-self:start;border-top:3px solid var(--ink);padding-top:15px}.guide-toc b{font:600 23px var(--display)}.guide-toc a{display:block;padding:10px 0;border-bottom:1px solid rgba(24,47,73,.3);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.guide-prose section{margin-bottom:70px}.guide-content h2{font-size:46px;font-weight:650;margin-bottom:20px}.guide-content h3{font:600 25px var(--display);margin:28px 0 5px}.guide-content p,.guide-content li{font-size:14px;line-height:1.75}.guide-content code{background:#234e47;color:#fff3cf;padding:2px 5px;border-radius:3px;font:500 12px monospace}.tokens{display:grid;grid-template-columns:repeat(4,1fr);margin:30px 0}.token{min-height:120px;padding:15px;display:flex;align-items:flex-end;font:700 9px var(--body);letter-spacing:.08em}.token.gold{background:#e8b64c}.token.pink{background:#ef3f75;color:white}.token.green{background:#2c9b71;color:white}.token.ink{background:#182f49;color:white}.prompt-card{padding:30px;background:#182f49;color:#fff2d0;border-left:8px solid var(--pink);font-size:13px;line-height:1.75}

@media (max-width:900px){
  .site-header{height:84px;padding:0 24px;grid-template-columns:1fr auto}.site-header nav{display:none}.sun-dial span{display:none}.sun-dial b{width:45px;height:45px;font-size:14px}
  .hero-copy{top:25%;left:6vw}.hero h1{font-size:clamp(85px,18vw,150px)}.hero .dek{left:54vw;top:68%}.wind-note{right:5vw}.kite-pink{right:12vw}.hero-roof{height:20%}
  .duel-section{padding:90px 24px 0}.duel-stage{margin-inline:-24px;width:calc(100% + 48px);height:660px;box-shadow:none;border-inline:0}.duel-intro{grid-template-columns:1fr;gap:28px}.duel-intro>p{justify-self:end}.cut-meter{top:82px}.status-board{right:20px;grid-template-columns:90px 1fr 90px}.craft-section{padding:110px 7vw;grid-template-columns:1fr 1fr;min-height:1100px}.recipe{grid-column:2;grid-row:1/3}.spool-visual{width:85%;margin-top:-50px}.craft-note{bottom:55px}.anatomy-section{grid-template-columns:1fr 1.2fr}.anatomy-notes{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.stalls-heading{grid-template-columns:1fr 1fr}.stalls-heading .eyebrow{grid-column:1/-1}.stall-strip{grid-template-columns:repeat(2,1fr)}.stall{min-height:510px}.rules-grid{grid-template-columns:repeat(2,1fr)}.guide-content{grid-template-columns:180px 1fr;gap:5vw}
}
@media (max-width:560px){
  .hero{min-height:720px;height:100svh}.hero-copy{top:22%;left:22px}.hero h1{font-size:25vw;line-height:.82}.hero h1 span{font-size:.4em}.hero .dek{left:23px;top:58%;width:230px;font-size:12px}.wind-note{right:20px;top:66%}.wind-note b{font-size:32px}.kite-pink{right:24px;top:35%;width:58px;height:72px}.kite-green{left:auto;right:30%;top:15%}.sun{width:80vw;top:22%}.hero-roof{height:16%}.r2{left:12%;width:36%}.r3{left:46%;width:33%}.r4{left:74%;width:30%}.r1,.r5{display:none}.scroll-cue{display:none}
  .duel-section{padding-top:80px}.duel-intro{margin-bottom:38px}.duel-intro h2{font-size:18vw}.duel-intro>p{font-size:13px}.duel-stage{height:610px;min-height:610px}.status-board{left:12px;right:12px;top:12px;grid-template-columns:70px 1fr 70px}.status-board>*{padding:10px 7px}.status-board b{font-size:13px}.status-board span{font-size:7px}.cut-meter{top:68px;right:14px}.cut-meter>i{width:80px}.control-hint{left:16px;bottom:96px}.fly-control{width:92px;height:92px;right:18px;bottom:28px}.fly-control b{font-size:19px}.duel-roof span{width:35%}.cheer-ticker{margin-inline:-24px}.cheer-ticker span{padding:14px 30px}
  .craft-section{padding:85px 23px 120px;display:block;min-height:0}.craft-section h2{font-size:21vw}.spool-visual{width:80%;margin:40px auto}.recipe li{grid-template-columns:42px 1fr}.craft-note{position:relative;left:auto;bottom:auto;width:auto;margin-top:45px}.craft-section::before{width:330px;height:330px;left:30%;top:18%}
  .anatomy-section{padding:90px 22px;display:block}.anatomy-heading h2{font-size:16vw}.anatomy-figure{margin:40px -10px}.diagram-labels text{font-size:14px}.anatomy-notes{display:block}.anatomy-notes article{padding:24px 0}.balance-stamp{width:80px;height:80px}
  .stalls-section{padding-top:85px}.stalls-heading{padding:0 22px 55px;display:block}.stalls-heading h2{font-size:21vw;margin:20px 0}.stall-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.stall{min-width:84vw;min-height:540px;padding:25px;scroll-snap-align:start}.stall svg{max-width:240px}.stall h3{font-size:42px}.stall p{font-size:12px}.stall>b{margin-top:15px}
  .etiquette-section{padding:90px 22px}.rules-title{display:block;margin-bottom:55px}.big-number{display:block;font-size:55vw;line-height:.7;margin-bottom:25px}.rules-title h2{font-size:20vw}.rules-grid{grid-template-columns:1fr}.rules-grid article{min-height:190px;padding:28px}.etiquette-section blockquote{margin-top:70px;font-size:30px}
  .finale{min-height:680px;padding-inline:20px}.finale h2{font-size:22vw}.address{left:22px;bottom:80px}.finale-kites i:nth-child(3){right:5%}
  footer{flex-direction:column;align-items:flex-start;gap:12px;padding:30px 22px}footer nav{flex-wrap:wrap;gap:8px 20px}footer a{padding:9px 0}
  .guide-main{padding-top:84px}.guide-hero{min-height:540px;padding:70px 22px}.guide-hero::after{width:155px;height:200px;right:-30px;top:50px;opacity:.65}.guide-hero h1{font-size:22vw}.guide-content{display:block;padding:70px 22px 100px}.guide-toc{position:relative;top:auto;margin-bottom:70px}.guide-content h2{font-size:39px}.tokens{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.control-ring{animation:none}.cheer-ticker div{animation:none}.falling-kite{display:none!important}}

/* Pass 1: tightened composition and stronger interaction affordances */
.anatomy-section{padding-top:125px;padding-bottom:105px}
.kite-pink{top:29%}
.anatomy-figure svg{max-height:720px}
.balance-stamp{right:-5%;bottom:25%;background:rgba(249,237,200,.88)}
.stalls-section{padding-top:105px}
.stalls-heading{position:relative;min-height:315px;padding-bottom:60px;overflow:hidden}
.stalls-heading::after{content:"";position:absolute;left:2%;right:2%;top:35px;height:54px;background:linear-gradient(165deg,transparent 49%,rgba(255,241,197,.48) 49.5%,rgba(255,241,197,.48) 50%,transparent 50.5%),linear-gradient(135deg,transparent 44%,#f6c94f 45% 55%,transparent 56%) 12% 12px/54px 38px repeat-x;opacity:.7;pointer-events:none}
.stalls-heading>*{position:relative;z-index:2}
.stall,.stall svg,.stall h3{transition:transform .45s cubic-bezier(.16,1,.3,1),filter .35s}
.stall:hover{filter:brightness(1.06)}
.stall:hover svg{transform:translateY(-10px) rotate(-3deg) scale(1.04)}
.stall:hover h3{transform:translateX(7px)}
.guide-content{position:relative}
.guide-content::before{content:"";position:absolute;left:calc(240px + 10vw);top:72px;bottom:110px;width:1px;background:linear-gradient(var(--pink),rgba(24,47,73,.15) 30%,var(--green) 70%,var(--purple))}
.guide-toc a{min-height:44px;padding-block:13px}
.guide-prose section{margin-bottom:76px;padding-bottom:30px;position:relative}
.guide-prose section::after{content:"";position:absolute;left:0;bottom:0;width:75px;height:5px;background:var(--pink)}
.guide-prose section:nth-child(2)::after{background:var(--green)}
.guide-prose section:nth-child(3)::after{background:var(--orange)}
.guide-prose section:nth-child(4)::after{background:var(--purple)}
.guide-prose section:last-child::after{display:none}

@media (max-width:900px){
  .hero .dek{left:51vw;top:205px}
  .guide-content::before{left:calc(180px + 8vw)}
}
@media (max-width:560px){
  .hero-copy{top:23%;left:22px;right:18px}
  .hero h1{font-size:92px;line-height:.78}
  .hero h1 span{font-size:.39em}
  .hero .dek{position:relative;left:auto;top:auto;width:225px;font-size:11px;line-height:1.55;margin:24px 0 0}
  .kite-pink{top:37%}
  .anatomy-section{padding-top:82px;padding-bottom:65px}
  .anatomy-figure{margin-top:35px;margin-bottom:20px}
  .anatomy-notes article{padding-block:20px}
  .balance-stamp{width:76px;height:76px;right:0;bottom:17%}
  .stalls-section{padding-top:70px}
  .stalls-heading{min-height:0;padding-bottom:48px}
  .stalls-heading::after{top:0;opacity:.35}
  footer nav{gap:0 20px}
  footer a{min-height:44px;padding-block:12px}
  .guide-hero::after{width:120px;height:158px;right:-46px;top:118px;opacity:.38}
  .guide-hero h1{font-size:21vw}
  .guide-content::before{display:none}
}

/* Pass 2 — a denser sky, a truthful duel, and an editorial field guide */
body{font-size:17px;background:#f8e8b8}
body::after{content:"";position:fixed;inset:0;z-index:19;pointer-events:none;background:radial-gradient(circle at 72% 12%,rgba(255,248,205,.08),transparent 27%),linear-gradient(115deg,rgba(255,255,255,.025),transparent 40%,rgba(70,26,45,.025));mix-blend-mode:soft-light}
.site-header{height:92px;background:linear-gradient(180deg,rgba(236,178,72,.2),transparent);backdrop-filter:blur(2px)}
.site-header nav a{min-height:44px;display:flex;align-items:center}
.hero{height:max(780px,100svh);background:radial-gradient(circle at 49% 38%,rgba(255,234,152,.25) 0 21%,transparent 45%),linear-gradient(168deg,#d99c3e 0%,#efc260 34%,#d9826b 73%,#84434f 100%)}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(112,48,47,.08) 1px,transparent 1px),linear-gradient(rgba(255,234,181,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(transparent 8%,#000 52%,transparent 88%);pointer-events:none}
.sun{width:min(44vw,630px);top:12%;background:rgba(255,233,148,.28);box-shadow:0 0 0 1px rgba(255,240,188,.22),0 0 110px rgba(255,220,100,.4)}
.sun-halo{position:absolute;left:50%;top:36%;width:min(66vw,950px);aspect-ratio:1;translate:-50% -50%;pointer-events:none;opacity:.44}
.sun-halo i{position:absolute;inset:15%;border:1px solid rgba(255,239,181,.22);border-radius:50%}.sun-halo i:nth-child(2){inset:7%}.sun-halo i:nth-child(3){inset:0;border-style:dashed;opacity:.42}
.hero-lines{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible}.hero-lines path{fill:none;stroke:rgba(255,250,222,.72);stroke-width:1.1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.hero-copy{top:22%;left:8.5vw}.hero h1{font-size:clamp(112px,15.5vw,250px);line-height:.75}.hero h1 span{font-size:.31em;letter-spacing:-.045em}.hero h1 em{color:#f23372;text-shadow:5px 5px 0 rgba(255,233,180,.76)}
.hero .dek{left:50vw;top:62%;width:325px;font-size:15px;line-height:1.7;padding-left:20px;border-left:2px solid rgba(24,47,73,.75)}
.flight-ledger{position:absolute;z-index:4;right:7vw;bottom:27%;width:215px;padding:14px 0;border-block:1px solid rgba(24,47,73,.55);display:grid;grid-template-columns:1fr auto;gap:5px 10px;font-size:9px;text-transform:uppercase;letter-spacing:.13em}.flight-ledger>span,.flight-ledger>small{grid-column:1/-1}.flight-ledger>b{font:600 15px/1 var(--display);letter-spacing:0;text-transform:none}.flight-ledger>i{font-size:8px;align-self:center}.flight-ledger>small{line-height:1.5;margin-top:6px}
.kite-pink{top:27%;right:20vw;animation:kite-breathe 5.4s ease-in-out infinite}.kite-green{animation:kite-breathe 4.7s .45s ease-in-out infinite reverse}
@keyframes kite-breathe{0%,100%{translate:0 0;rotate:0deg}45%{translate:12px -20px;rotate:3deg}70%{translate:-5px -9px;rotate:-2deg}}
.roof{animation:roof-rise 1.05s .15s both cubic-bezier(.16,1,.3,1)}.r2{animation-delay:.22s}.r3{animation-delay:.3s}.r4{animation-delay:.38s}.r5{animation-delay:.45s}@keyframes roof-rise{from{translate:0 100%}to{translate:0 0}}
.hero-kite::before{animation:paper-unfold 1.1s .6s both cubic-bezier(.16,1,.3,1);transform-origin:50% 50%}@keyframes paper-unfold{from{clip-path:polygon(50% 0,50% 42%,50% 100%,50% 42%)}to{clip-path:polygon(50% 0,100% 42%,50% 100%,0 42%)}}

.duel-section{padding-top:130px;background:linear-gradient(180deg,#f6d384 0%,#efbd67 100%)}
.duel-intro{grid-template-columns:1.18fr .82fr}.duel-intro>p{font-size:16px;line-height:1.75;padding:22px 0 2px 26px;border-left:2px solid var(--pink)}
.duel-stage{height:min(760px,70vw);min-height:620px;background:radial-gradient(circle at 51% 36%,rgba(255,236,157,.53) 0 20%,transparent 21%),linear-gradient(153deg,#edb450 0%,#ec8d65 60%,#9d4f61 100%);border:8px solid #173149;box-shadow:18px 22px 0 rgba(135,62,53,.32),0 24px 60px rgba(82,40,45,.18);touch-action:pan-y}
.duel-stage::after{content:"";position:absolute;inset:78px 0 90px;pointer-events:none;background:linear-gradient(90deg,transparent 49.9%,rgba(255,247,213,.08) 50%,transparent 50.1%)}
.kite-string{stroke-width:2.35;filter:drop-shadow(0 0 3px rgba(255,255,255,.72))}.svg-kite{will-change:transform}.kite-paper,.kite-panel{stroke:rgba(24,47,73,.62);stroke-width:1.4;vector-effect:non-scaling-stroke}
.status-board{left:16px;top:14px;border-radius:0;min-height:52px;background:#173149;box-shadow:5px 5px 0 rgba(239,63,117,.65)}
.status-board b{color:#ffd45d}.cut-meter{right:19px;top:28px}.cut-meter>i{height:10px;background:rgba(255,245,216,.25)}
.duel-telemetry{position:absolute;z-index:3;left:20px;top:84px;color:#fff5d3;display:flex;gap:14px;align-items:center;font-size:8px;font-weight:800;letter-spacing:.14em}.duel-telemetry b{font:600 15px var(--display);color:#ffd458}.duel-telemetry i{font-style:normal;border:1px solid rgba(255,245,211,.45);padding:5px 7px}
.crossing-callout{position:absolute;z-index:6;left:50%;top:42%;width:140px;height:140px;translate:-50% -50%;display:grid;place-items:center;align-content:center;color:#fff8d8;text-align:center;opacity:0;scale:.6;pointer-events:none;transition:opacity .2s,scale .35s cubic-bezier(.16,1,.3,1)}.crossing-callout::before,.crossing-callout::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,250,220,.8);border-radius:50%;animation:cross-pulse 1.1s infinite}.crossing-callout::after{inset:18px;border-style:dashed;animation-direction:reverse}.crossing-callout span{position:absolute;width:190px;height:1px;background:#fff7d8;rotate:-24deg}.crossing-callout b{font:700 25px/1 var(--display);letter-spacing:.08em}.crossing-callout small{font-size:7px;text-transform:uppercase;letter-spacing:.15em}.crossing-callout.is-live{opacity:1;scale:1}@keyframes cross-pulse{50%{scale:1.12;opacity:.35}}
.control-hint{bottom:112px}.fly-control{width:124px;height:124px;right:34px;bottom:34px;touch-action:none}.fly-control b{font-size:25px}
.paper-burst{position:absolute;inset:0;z-index:7;pointer-events:none}.paper-burst i{position:absolute;left:50%;top:45%;width:12px;height:30px;background:var(--c,#ffda59);animation:shard-out 1.6s both cubic-bezier(.12,.7,.2,1);animation-delay:var(--delay,0s)}@keyframes shard-out{0%{opacity:1;transform:translate(-50%,-50%) rotate(0)}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r))}}
.cheer-ticker div{animation-duration:32s}.cheer-ticker span{font-size:17px}
.falling-kite{width:104px;height:132px}.falling-kite i{box-shadow:inset 26px 0 rgba(201,215,69,.62)}.falling-kite span{position:absolute;left:50%;top:90%;width:1px;height:180px;background:linear-gradient(#fff8dc,transparent);transform-origin:top;rotate:8deg}
.duel-won .cheer-ticker{background:#ed2f70;color:#fff}.duel-won .duel-stage{box-shadow:18px 22px 0 rgba(239,47,112,.34),0 24px 70px rgba(82,40,45,.25)}

.craft-section{background:radial-gradient(circle at 42% 48%,rgba(247,211,102,.08) 0 18%,transparent 18.5%),linear-gradient(135deg,#173f3a,#24564c 58%,#163832);grid-template-columns:1fr .86fr 1.14fr}.craft-section::after{content:"BENCH 04 / 900 M / WINTER CURE";position:absolute;right:-105px;bottom:190px;rotate:90deg;color:rgba(249,236,199,.38);font-size:9px;font-weight:800;letter-spacing:.3em}.craft-title-block>p:last-child{font-size:16px}.recipe p{font-size:13px;line-height:1.72}.recipe li{transition:transform .35s,background .35s;padding-inline:12px}.recipe li:hover{transform:translateX(-8px);background:rgba(255,244,208,.055)}
.anatomy-section{background:radial-gradient(circle at 62% 42%,rgba(230,182,76,.18),transparent 31%),#fbefcb}.anatomy-notes p{font-size:13px;line-height:1.72}.anatomy-notes h3{font-size:25px}.anatomy-paper{filter:drop-shadow(18px 18px 0 rgba(101,69,154,.12))}
.stall-rail-note{min-height:58px;padding:0 3vw;display:flex;align-items:center;gap:24px;border-top:1px solid rgba(255,244,212,.5);background:#9a3d3e;color:#fff3ce;font-size:8px;text-transform:uppercase;letter-spacing:.17em}.stall-rail-note b{font:600 17px var(--display);letter-spacing:0;text-transform:none}.stall-rail-note i{font-style:normal;margin-left:auto}.stall-strip{grid-template-columns:1.15fr .92fr 1.18fr .75fr}.stall p{font-size:13px;line-height:1.72}.stall h3{letter-spacing:-.035em}.stall svg{stroke-width:2.4}.stall:nth-child(even){padding-top:54px}
.rules-grid{grid-template-columns:repeat(6,1fr)}.rules-grid article{grid-column:span 2;min-height:245px}.rules-grid article:nth-child(4),.rules-grid article:nth-child(5),.rules-grid article:nth-child(6){grid-column:span 2}.rules-grid article:last-child{grid-column:2/span 4;min-height:190px;background:rgba(239,63,117,.08);display:grid;grid-template-columns:55px .7fr 1.3fr;align-items:center;gap:20px}.rules-grid article:last-child h3{margin:0}.rules-grid article:last-child p{font-size:14px;max-width:440px}.rules-grid p{font-size:13px;line-height:1.72}
.finale{min-height:820px;align-items:flex-start;text-align:left;padding:110px 8vw 145px;background:radial-gradient(circle at 72% 24%,rgba(255,207,79,.16),transparent 16%),linear-gradient(145deg,#c55f5c 0%,#72445f 54%,#273853 100%)}.finale>p{margin-left:22vw}.finale h2{align-self:center;font-size:clamp(94px,12.5vw,190px);line-height:.72;text-align:left}.finale h2 span{font-size:.62em;margin-left:-15vw}.finale>a{align-self:center;margin-left:12vw}.finale-signal{position:absolute;right:8vw;top:90px;border-left:1px solid rgba(255,242,209,.65);padding-left:16px;display:grid;color:#fff2d1}.finale-signal span,.finale-signal small{font-size:8px;letter-spacing:.16em}.finale-signal b{font:600 42px/1 var(--display);color:#ffd45d}.finale blockquote{position:absolute;right:7vw;bottom:105px;margin:0;text-align:right;font:500 17px/1.45 var(--display);color:#ffebbd}.address{font-size:10px}.address b{color:#ffd45d}

.guide-body{background:#f7d37e}.guide-body::after{z-index:0}.guide-main,.guide-header,footer{position:relative;z-index:1}.guide-hero{min-height:650px;padding-top:105px;background:radial-gradient(circle at 70% 40%,rgba(255,239,172,.5),transparent 32%),linear-gradient(115deg,#efbd59,#f8d98f 66%,#e99b7d)}.guide-hero::after{width:245px;height:320px;right:13vw;top:150px;background:linear-gradient(145deg,#ff5a80,#e82d71);box-shadow:18px 20px 0 rgba(101,69,154,.25);transform-origin:center;animation:kite-breathe 5.5s ease-in-out infinite}.guide-hero>p:last-of-type{font-size:16px}.guide-flight-mark{position:absolute;right:7vw;bottom:54px;width:230px;height:70px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr auto;align-content:center;font-size:8px;letter-spacing:.18em}.guide-flight-mark i{position:absolute;width:120px;height:1px;background:var(--ink);left:-80px;top:20px;rotate:-28deg}.guide-flight-mark b{font:600 25px var(--display)}.guide-flight-mark small{grid-column:1/-1}
.guide-content{max-width:none;margin:0;padding:0;grid-template-columns:minmax(260px,31vw) minmax(0,1fr);gap:0;background:linear-gradient(90deg,#19453f 0 31vw,#f6d17c 31vw 100%)}.guide-content::before{display:none}.guide-toc{top:0;padding:105px 4vw 80px 7vw;border:0;color:#fff0c9}.guide-toc::before{content:"FIELD / NOTES";display:block;margin-bottom:38px;color:#f6c94f;font-size:8px;font-weight:800;letter-spacing:.24em}.guide-toc b{font-size:32px}.guide-toc a{border-color:rgba(255,241,203,.27);font-size:10px}.guide-toc a:hover{color:#f8cc50;padding-left:8px}.guide-prose{padding:105px min(10vw,145px) 120px 6vw;max-width:1050px}.guide-prose section{margin-bottom:92px;padding-bottom:40px}.guide-content h2{font-size:clamp(45px,4.6vw,66px)}.guide-content p{font-size:15px;line-height:1.8}.function-score{margin:30px 0;padding:22px;background:#173f3a;color:#fff0cc;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px}.function-score span{font:600 18px var(--display)}.function-score span b{display:block;color:#f6c94f;font:800 8px var(--body);letter-spacing:.16em}.function-score i{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#f7c957}.tokens{box-shadow:12px 14px 0 rgba(101,69,154,.12)}.prompt-card{font-size:14px;padding:36px;box-shadow:12px 14px 0 rgba(239,63,117,.18)}

@media (max-width:900px){
  .hero .dek{left:52vw;top:54%;width:285px}.flight-ledger{right:5vw;bottom:25%}.kite-pink{right:11vw;top:28%}
  .duel-stage{border-inline:0;border-width:7px 0}.duel-telemetry{top:124px}.craft-section{grid-template-columns:1fr 1fr}.stall-strip{grid-template-columns:1fr 1fr}.stall:nth-child(even){padding-top:30px}.rules-grid{grid-template-columns:1fr 1fr}.rules-grid article,.rules-grid article:nth-child(4),.rules-grid article:nth-child(5),.rules-grid article:nth-child(6){grid-column:auto}.rules-grid article:last-child{grid-column:1/-1}.finale h2 span{margin-left:-7vw}.finale blockquote{font-size:15px}
  .guide-content{grid-template-columns:220px minmax(0,1fr);background:linear-gradient(90deg,#19453f 0 220px,#f6d17c 220px)}.guide-toc{padding-inline:30px 22px}.guide-prose{padding-right:5vw}.function-score{grid-template-columns:1fr}.function-score i{display:none}
}

@media (max-width:560px){
  body{font-size:16px}.site-header{height:84px}.hero{min-height:760px}.hero-copy{top:21%;left:22px}.hero h1{font-size:96px}.hero h1 em{text-shadow:3px 3px 0 rgba(255,233,180,.76)}.hero .eyebrow{max-width:255px;line-height:1.5}.hero .dek{width:250px;font-size:13px;line-height:1.7;padding-left:0;border:0;margin-top:20px}.sun{width:88vw;top:20%}.sun-halo{width:135vw;top:38%}.wind-note{top:68%}.flight-ledger{display:none}.kite-pink{top:39%;right:18px}.hero-lines path{stroke-width:.75}.hero-roof{height:17%}
  .duel-section{padding-top:84px}.duel-intro>p{font-size:14px;padding:14px 0 0 16px}.duel-stage{height:640px;min-height:640px;background:radial-gradient(circle at 51% 37%,rgba(255,236,157,.5) 0 20%,transparent 21%),linear-gradient(153deg,#edb450,#e77c65 62%,#864a61)}.status-board{box-shadow:3px 3px 0 rgba(239,63,117,.65)}.duel-telemetry{left:14px;top:112px;gap:9px}.duel-telemetry span{display:none}.crossing-callout{width:112px;height:112px}.crossing-callout span{width:145px}.crossing-callout b{font-size:21px}.control-hint span{font-size:8px}.fly-control{width:98px;height:98px;right:16px}.cheer-ticker span{font-size:15px}.falling-kite{width:78px;height:100px}
  .craft-section::after{display:none}.craft-title-block>p:last-child,.recipe p{font-size:14px}.recipe li{padding-inline:0}.recipe li:hover{transform:none}.anatomy-notes p{font-size:14px}.anatomy-figure svg{width:120%;margin-left:-10%}.diagram-labels text{display:none}.balance-stamp{right:3%;bottom:12%}
  .stall-rail-note{padding:0 22px;gap:10px}.stall-rail-note span{display:none}.stall-rail-note b{font-size:15px}.stall-rail-note i{font-size:7px}.stall{min-width:88vw}.stall p{font-size:14px;min-height:92px}.stall:nth-child(even){padding-top:25px}
  .rules-grid article:last-child{display:block;min-height:220px}.rules-grid article:last-child h3{margin:22px 0 8px}.rules-grid p,.rules-grid article:last-child p{font-size:14px}.etiquette-section blockquote{line-height:1.25}
  .finale{min-height:740px;padding:100px 22px 135px;align-items:flex-start}.finale>p{margin-left:0;max-width:230px;line-height:1.5}.finale h2{font-size:23vw;align-self:flex-start;margin-top:38px;line-height:.78}.finale h2 span{margin-left:0}.finale>a{align-self:flex-start;margin:50px 0 0}.finale-signal{right:22px;top:62px}.finale blockquote{right:22px;bottom:105px;font-size:13px}.address{bottom:155px;max-width:190px;font-size:8px}.finale-kites i:nth-child(3){top:38%}
  .guide-hero{min-height:600px;padding-top:82px}.guide-hero>p:last-of-type{font-size:15px;line-height:1.7}.guide-flight-mark{display:none}.guide-content{display:block;background:#f6d17c}.guide-toc{position:relative;padding:55px 22px 65px;background:#19453f}.guide-toc b{font-size:30px}.guide-prose{padding:75px 22px 95px}.guide-prose section{margin-bottom:75px}.guide-content h2{font-size:41px}.guide-content p{font-size:15px;line-height:1.78}.function-score{grid-template-columns:1fr 1fr 1fr;padding:18px 12px;gap:8px}.function-score span{font-size:14px}.tokens{box-shadow:7px 8px 0 rgba(101,69,154,.14)}.prompt-card{padding:26px;font-size:13px}.guide-hero::after{right:-58px;top:145px}
}

/* Pass 2 final responsive corrections */
.hero .dek{top:205px}
.paper-burst i{left:var(--burst-x,50%);top:var(--burst-y,45%)}
.finale h2{font-size:clamp(88px,10.5vw,152px)}
.finale h2 span{margin-left:0}

@media (max-width:900px){
  .site-header{overflow:visible}
  .site-header nav{display:none!important}
  .mobile-nav{display:flex;position:absolute;z-index:30;left:0;right:0;top:84px;height:44px;justify-content:center;gap:0;background:rgba(247,205,111,.96);color:var(--ink);border-bottom:1px solid rgba(24,47,73,.28);backdrop-filter:blur(8px);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}
  .mobile-nav a{min-width:92px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0 12px}
  .hero .dek{left:48vw;top:190px;width:285px}
  .kite-pink{right:11vw;top:18%}
}

@media (max-width:560px){
  .mobile-nav a{min-width:0;flex:1}
  .hero-copy{top:23%}
  .hero .dek{position:relative;left:auto;top:auto;width:255px;font-size:13px;line-height:1.7;padding-left:0;border:0;margin-top:20px}
  .kite-pink{top:29%;right:18px}
  .guide-hero{min-height:560px;padding-top:118px;justify-content:flex-start}
  .guide-hero::after{right:-65px;top:165px}
}

/* Pass 3 — material light, optical type and tactile navigation */
html{scrollbar-color:var(--pink) #f3d17b;scrollbar-width:thin}
body{font-kerning:normal;text-rendering:optimizeLegibility}
html{font-optical-sizing:auto}
body,p,blockquote{font-feature-settings:"kern" 1,"liga" 1}
p,blockquote{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
.sun-dial b,.wind-note b,.flight-ledger,.duel-telemetry,.stall-no,.finale-signal,.big-number{font-variant-numeric:tabular-nums lining-nums}
a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
*::-webkit-scrollbar{width:11px;height:11px}
*::-webkit-scrollbar-track{background:#f3d17b}
*::-webkit-scrollbar-thumb{background:var(--pink);border:3px solid #f3d17b;border-radius:99px}
.stall-strip::-webkit-scrollbar-track{background:#7f3437}
.stall-strip::-webkit-scrollbar-thumb{background:#ffe168;border-color:#7f3437}
.stalls-section{background:#b94a34}
.stall-pink{background:#b7375d}
.control-hint{padding:10px 12px;background:rgba(24,47,73,.84);box-shadow:4px 4px 0 rgba(239,63,117,.42)}
.duel-telemetry{padding:7px 9px;background:rgba(24,47,73,.82);border-left:2px solid #ffd458}
.anatomy-section{position:relative;overflow:hidden;transition:background-color .8s cubic-bezier(.16,1,.3,1)}
.anatomy-section::before{content:"";position:absolute;z-index:0;left:42%;top:52%;width:min(58vw,820px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,#fff7b8 0 26%,rgba(255,219,80,.42) 27% 48%,transparent 69%);opacity:0;scale:.72;transition:opacity .7s,scale 1.1s cubic-bezier(.16,1,.3,1);pointer-events:none}
.anatomy-section>*{position:relative;z-index:1}
.anatomy-heading{align-self:center}
.paper-light{min-height:64px;margin-top:34px;padding:9px 18px 9px 10px;display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;border:1px solid var(--ink);border-radius:0;background:rgba(255,241,207,.46);color:var(--ink);text-align:left;cursor:pointer;box-shadow:7px 7px 0 rgba(101,69,154,.18);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .35s}
.paper-light>span{grid-row:1/3;width:42px;height:42px;border-radius:50%;background:var(--gold);border:1px solid var(--ink);box-shadow:inset 0 0 0 8px rgba(255,245,198,.38);transition:background .5s,box-shadow .5s,transform .5s}
.paper-light b{align-self:end;font:650 18px/1 var(--display);letter-spacing:-.015em}
.paper-light small{align-self:start;margin-top:4px;font-size:8px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.paper-light[aria-pressed="true"]{background:var(--ink);color:#fff2cb;box-shadow:7px 7px 0 var(--pink)}
.paper-light[aria-pressed="true"]>span{background:#fff4ad;box-shadow:0 0 0 8px rgba(255,222,65,.18),0 0 28px #ffd74d;transform:scale(.86)}
.anatomy-figure{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .8s}
.anatomy-paper,.anatomy-half,.anatomy-bamboo{transition:fill .7s,opacity .7s,stroke .7s}
.anatomy-light{fill:url(#fibreGrain);opacity:0;mix-blend-mode:screen;transition:opacity .8s;pointer-events:none}
.anatomy-notes article{transition:transform .55s cubic-bezier(.16,1,.3,1),background-color .55s,padding .55s}
.anatomy-section.is-backlit{background-color:#eac45c}
.anatomy-section.is-backlit::before{opacity:1;scale:1;animation:backlight-breathe 4.8s ease-in-out infinite}
.anatomy-section.is-backlit .anatomy-figure{transform:rotate(-1.2deg) scale(1.025);filter:drop-shadow(0 24px 32px rgba(104,57,38,.2))}
.anatomy-section.is-backlit .anatomy-paper{fill:#d93f66;opacity:.62}
.anatomy-section.is-backlit .anatomy-half{fill:#f69a45;opacity:.48}
.anatomy-section.is-backlit .anatomy-light{opacity:.94}
.anatomy-section.is-backlit .anatomy-bamboo{stroke:#4b3840;stroke-width:5}
.anatomy-section.is-backlit .anatomy-notes article:nth-child(2){transform:translateX(-10px);background:rgba(255,246,187,.58);padding-inline:16px}
@keyframes backlight-breathe{50%{filter:brightness(1.08);transform:scale(1.035)}}
@media (hover:hover){
  .brand,.site-header nav a,.sun-dial,.mobile-nav a,.finale>a,footer a,.guide-toc a{transition:color .3s,background-color .3s,transform .35s cubic-bezier(.16,1,.3,1),border-color .3s}
  .brand:hover svg{transform:rotate(-8deg) translateY(-2px);filter:drop-shadow(4px 5px 0 rgba(239,63,117,.22))}
  .brand svg{transition:transform .45s cubic-bezier(.16,1,.3,1),filter .35s}
  .sun-dial:hover b{background:var(--ink);color:#ffe17a;transform:rotate(8deg)}
  .sun-dial b{transition:transform .4s cubic-bezier(.16,1,.3,1),background .3s,color .3s}
  .mobile-nav a:hover{background:var(--pink);color:white}
  .paper-light:hover{transform:translate(-3px,-3px);box-shadow:10px 10px 0 rgba(101,69,154,.2)}
  .finale>a:hover{color:#ffd45d;transform:translateX(8px)}
  .reset-duel:hover{background:var(--pink);color:white;transform:translateY(-3px)}
  footer a:hover{transform:translateY(-2px)}
}
@media (max-width:560px){
  .paper-light{width:100%;margin-top:26px;min-height:62px}
  .anatomy-section::before{left:50%;top:47%;width:125vw}
  .anatomy-section.is-backlit .anatomy-notes article:nth-child(2){transform:none;padding-inline:12px}
  .control-hint{padding:8px 9px}
}
@media (min-width:561px) and (max-width:900px){
  .guide-hero::after{right:-38px;top:190px;opacity:.72}
  .guide-hero>p:last-of-type{max-width:420px}
}
