@charset "UTF-8";
/* Staff rehearsals are visibly distinct from actual event reservations. */
.modebar.testing-mode{background:#8a3400;color:#fff;font-weight:800;font-size:13px}
.testing-banner{display:flex;justify-content:center;align-items:center;gap:8px 22px;flex-wrap:wrap;padding:16px 6%;background:#ffdfaa;color:#6a2800;border-bottom:2px solid #b84b00;text-align:center;line-height:1.5}
.testing-banner strong{font-size:17px;letter-spacing:-.02em}.testing-banner span{font-size:13px}
.testing-badge{display:block;width:fit-content;max-width:100%;margin:8px 0 14px;padding:7px 12px;border:1px solid #b84b00;border-radius:4px;background:#ffdfaa;color:#6a2800;font-size:12px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}
.testing-badge.archived{background:#eee8dd;border-color:#716960;color:#514b44}
.shop-pass>.testing-badge{margin:14px}.testing-panel{border-top:5px solid #b84b00!important;margin-top:24px}.testing-panel h2{font-size:27px;margin:7px 0 14px}.testing-panel h3{font-size:20px}.testing-panel>.notice{margin:24px 0}.testing-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;list-style-position:inside;counter-reset:test-step;margin:24px 0}.testing-steps li{display:block;border:1px solid var(--line);padding:17px 14px;background:var(--cream);counter-increment:test-step}.testing-steps li::before{content:counter(test-step,decimal-leading-zero);display:block;color:#8a3400;font-weight:800;font-size:23px;margin-bottom:6px}.testing-steps b{display:block;font-size:15px;line-height:1.5;margin-bottom:7px}.testing-steps span{display:block;font-size:12px;line-height:1.7}.testing-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.testing-counts div{border:1px solid var(--line);padding:12px}.testing-counts dt{font-size:12px}.testing-counts dd{margin:5px 0 0;font-weight:800;font-size:21px}.testing-run-id{overflow-wrap:anywhere;word-break:break-all}.testing-active-run{padding:20px;background:var(--cream)}.testing-history summary{cursor:pointer;font-size:16px;font-weight:800;padding:12px 0}.testing-history-run{padding:20px 0;border-top:1px solid var(--line)}.testing-history-run h3{margin:0}.testing-panel .admin-bar{flex-wrap:wrap}.testing-history-run .admin-bar{align-items:flex-start}#testing-start-form .button,#testing-commit-form .button{margin-top:18px}
@media(max-width:950px){.testing-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.testing-banner{display:block;padding:13px 5%;text-align:left}.testing-banner strong{display:block;font-size:15px}.testing-banner span{display:block;margin-top:5px;font-size:12px}.testing-steps{grid-template-columns:1fr}.testing-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.testing-counts dd{font-size:19px}.testing-active-run{padding:15px}.testing-panel h2{font-size:24px}.testing-history-run .admin-bar{display:block}.testing-history-run button{margin-top:12px}}
@font-face{font-family:'Pretendard Variable';font-style:normal;font-weight:45 920;font-display:swap;src:url('/assets/fonts/pretendard/PretendardSite.woff2?v=acf2c97de5d1') format('woff2');unicode-range:U+20,U+21,U+22,U+23,U+24,U+25,U+26,U+27,U+28,U+29,U+2A,U+2B,U+2C,U+2D,U+2E,U+2F,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3A,U+3B,U+3C,U+3D,U+3E,U+3F,U+40,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4A,U+4B,U+4C,U+4D,U+4E,U+4F,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5A,U+5B,U+5C,U+5D,U+5E,U+5F,U+60,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6A,U+6B,U+6C,U+6D,U+6E,U+6F,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7A,U+7B,U+7C,U+7D,U+7E,U+A0,U+A1,U+A2,U+A3,U+A4,U+A5,U+A6,U+A7,U+A8,U+A9,U+AA,U+AB,U+AC,U+AD,U+AE,U+AF,U+B0,U+B1,U+B2,U+B3,U+B4,U+B5,U+B6,U+B7,U+B8,U+B9,U+BA,U+BB,U+BC,U+BD,U+BE,U+BF,U+C0,U+C1,U+C2,U+C3,U+C4,U+C5,U+C6,U+C7,U+C8,U+C9,U+CA,U+CB,U+CC,U+CD,U+CE,U+CF,U+D0,U+D1,U+D2,U+D3,U+D4,U+D5,U+D6,U+D7,U+D8,U+D9,U+DA,U+DB,U+DC,U+DD,U+DE,U+DF,U+E0,U+E1,U+E2,U+E3,U+E4,U+E5,U+E6,U+E7,U+E8,U+E9,U+EA,U+EB,U+EC,U+ED,U+EE,U+EF,U+F0,U+F1,U+F2,U+F3,U+F4,U+F5,U+F6,U+F7,U+F8,U+F9,U+FA,U+FB,U+FC,U+FD,U+FE,U+FF,U+2013,U+2014,U+2018,U+2019,U+2022,U+2026,U+2190,U+2192,U+2193,U+2197,U+2713,U+3008,U+3009,U+300C,U+300D,U+AC00,U+AC01,U+AC04,U+AC08,U+AC10,U+AC11,U+AC12,U+AC15,U+AC19,U+AC1C,U+AC1D,U+AC70,U+AC74,U+AC77,U+AC78,U+AC80,U+AC81,U+AC83,U+AC8C,U+ACA0,U+ACA8,U+ACA9,U+ACAC,U+ACB0,U+ACBC,U+ACBD,U+ACC4,U+ACE0,U+ACE1,U+ACE7,U+ACE8,U+ACF3,U+ACF5,U+ACFC,U+AD00,U+AD11,U+AD1C,U+AD50,U+AD6C,U+AD6D,U+AD74,U+AD81,U+AD8C,U+ADC0,U+ADDC,U+ADF8,U+ADFC,U+AE00,U+AE08,U+AE09,U+AE30,U+AE34,U+AE38,U+AE40,U+AE41,U+AE4C,U+AE50,U+AE68,U+AEBC,U+AED8,U+AF2D,U+AF41,U+AFB8,U+AFBC,U+B00C,U+B014,U+B05D,U+B084,U+B098,U+B09C,U+B0A0,U+B0A8,U+B0A9,U+B0AC,U+B0AE,U+B0B4,U+B0C5,U+B0C9,U+B0D0,U+B108,U+B110,U+B113,U+B118,U+B123,U+B124,U+B128,U+B137,U+B141,U+B144,U+B150,U+B178,U+B193,U+B204,U+B20C,U+B258,U+B274,U+B290,U+B294,U+B298,U+B2A5,U+B2A6,U+B2C8,U+B2C9,U+B2CC,U+B2D8,U+B2D9,U+B2DD,U+B2E4,U+B2E8,U+B2EB,U+B2EC,U+B2F4,U+B2F5,U+B2F9,U+B2FF,U+B300,U+B354,U+B358,U+B370,U+B3C4,U+B3C5,U+B3CC,U+B3D5,U+B3D9,U+B3FC,U+B410,U+B418,U+B41C,U+B420,U+B429,U+B450,U+B458,U+B4A4,U+B4DC,U+B4E0,U+B4E3,U+B4E4,U+B4EC,U+B4EF,U+B4F1,U+B514,U+B530,U+B545,U+B54C,U+B5A4,U+B5BB,U+B5BC,U+B610,U+B69D,U+B77C,U+B77D,U+B780,U+B78C,U+B790,U+B798,U+B79C,U+B7A8,U+B7A9,U+B7AB,U+B7C9,U+B7EC,U+B7F0,U+B7FD,U+B807,U+B808,U+B824,U+B825,U+B828,U+B839,U+B840,U+B85C,U+B85D,U+B864,U+B86D,U+B8CC,U+B8E8,U+B8F9,U+B958,U+B974,U+B978,U+B97C,U+B984,U+B985,U+B9AC,U+B9B0,U+B9B4,U+B9BC,U+B9BD,U+B9C1,U+B9C8,U+B9C9,U+B9CC,U+B9CE,U+B9D0,U+B9DB,U+B9DD,U+B9DE,U+B9E1,U+B9E4,U+B9F5,U+B9F9,U+BA38,U+BA39,U+BA3C,U+BA48,U+BA54,U+BA70,U+BA74,U+BA85,U+BA87,U+BAA8,U+BAA9,U+BAB8,U+BABB,U+BB34,U+BB38,U+BB3C,U+BBA4,U+BBC0,U+BBF8,U+BBFC,U+BC00,U+BC0D,U+BC0F,U+BC14,U+BC15,U+BC18,U+BC1B,U+BC1C,U+BC24,U+BC29,U+BC30,U+BC31,U+BC34,U+BC84,U+BC88,U+BC8C,U+BC95,U+BC97,U+BCBD,U+BCC0,U+BCC4,U+BCCD,U+BCD1,U+BCF4,U+BCF5,U+BCF8,U+BCFC,U+BD05,U+BD09,U+BD10,U+BD80,U+BD81,U+BD84,U+BD88,U+BD89,U+BD95,U+BD99,U+BDF0,U+BE0C,U+BE14,U+BE44,U+BE48,U+BE4C,U+BE5B,U+BE60,U+BE68,U+C0AC,U+C0AD,U+C0B0,U+C0B4,U+C0C1,U+C0C8,U+C0C9,U+C0DD,U+C11C,U+C11D,U+C120,U+C124,U+C12F,U+C131,U+C138,U+C140,U+C158,U+C15C,U+C18C,U+C18D,U+C190,U+C1A1,U+C1C4,U+C1FC,U+C218,U+C219,U+C21C,U+C220,U+C228,U+C22B,U+C250,U+C26C,U+C27C,U+C27D,U+C2A4,U+C2B5,U+C2B9,U+C2DC,U+C2DD,U+C2E0,U+C2E4,U+C2EC,U+C2F1,U+C2F6,U+C313,U+C368,U+C4F0,U+C529,U+C544,U+C545,U+C548,U+C54A,U+C54C,U+C554,U+C555,U+C557,U+C558,U+C559,U+C55E,U+C560,U+C561,U+C571,U+C57C,U+C57D,U+C591,U+C5B4,U+C5B5,U+C5B8,U+C5BD,U+C5C5,U+C5C6,U+C5C8,U+C5D0,U+C5EC,U+C5ED,U+C5F0,U+C5F4,U+C601,U+C606,U+C608,U+C61B,U+C624,U+C625,U+C628,U+C62C,U+C62E,U+C635,U+C640,U+C644,U+C654,U+C678,U+C67C,U+C694,U+C6A9,U+C6B0,U+C6B4,U+C6B8,U+C6C0,U+C6C1,U+C6C3,U+C6CC,U+C6D0,U+C6D4,U+C6EC,U+C6F0,U+C6F9,U+C704,U+C720,U+C721,U+C73C,U+C740,U+C744,U+C74C,U+C751,U+C758,U+C774,U+C775,U+C778,U+C77C,U+C77D,U+C784,U+C785,U+C787,U+C788,U+C790,U+C791,U+C794,U+C798,U+C7A0,U+C7A5,U+C7AC,U+C7C1,U+C800,U+C801,U+C804,U+C808,U+C810,U+C811,U+C815,U+C81C,U+C838,U+C870,U+C871,U+C874,U+C885,U+C88B,U+C88C,U+C8E0,U+C8FC,U+C900,U+C904,U+C90D,U+C911,U+C988,U+C989,U+C990,U+C99D,U+C9C0,U+C9C1,U+C9C4,U+C9C8,U+C9D1,U+C9DC,U+C9F8,U+CABD,U+CBE4,U+CC0C,U+CC0D,U+CC28,U+CC29,U+CC2E,U+CC38,U+CC3D,U+CC3E,U+CC44,U+CC45,U+CC59,U+CC98,U+CC9C,U+CCA0,U+CCAB,U+CCAD,U+CCB4,U+CCD0,U+CCE4,U+CD08,U+CD1D,U+CD2C,U+CD5C,U+CD94,U+CD95,U+CD98,U+CD9C,U+CDA4,U+CDA9,U+CDB0,U+CDE8,U+CE20,U+CE21,U+CE35,U+CE58,U+CE5C,U+CE60,U+CE68,U+CE6D,U+CE74,U+CE78,U+CE94,U+CEE4,U+CEEC,U+CF13,U+CF1C,U+CF54,U+CF58,U+CF5C,U+CF8C,U+CFE0,U+D06C,U+D070,U+D074,U+D07C,U+D07D,U+D0A4,U+D0B7,U+D0C0,U+D0C8,U+D0D0,U+D0D5,U+D0DC,U+D0DD,U+D0E0,U+D130,U+D138,U+D14C,U+D150,U+D15C,U+D1A0,U+D1A1,U+D1B5,U+D1F4,U+D241,U+D29C,U+D2B8,U+D2B9,U+D2BC,U+D2C0,U+D2F0,U+D300,U+D305,U+D30C,U+D310,U+D31D,U+D328,U+D37C,U+D398,U+D3B4,U+D3B8,U+D3BC,U+D3C9,U+D3D0,U+D3EC,U+D3F0,U+D45C,U+D478,U+D480,U+D488,U+D48D,U+D504,U+D508,U+D50C,U+D53C,U+D544,U+D558,U+D559,U+D55C,U+D560,U+D568,U+D569,U+D56D,U+D574,U+D578,U+D588,U+D589,U+D5A5,U+D5C8,U+D5D8,U+D5E4,U+D600,U+D604,U+D611,U+D614,U+D615,U+D61C,U+D638,U+D648,U+D654,U+D655,U+D658,U+D65C,U+D669,U+D68C,U+D68D,U+D6A1,U+D6A8,U+D6C4,U+D734,U+D750,U+D765,U+D76C,U+D770,U+D788,U+D78C,U+D798,U+D7A3}
:root{--orange:#ed5700;--cream:#fff1d6;--paper:#fff9eb;--navy:#1e2a6c;--line:#1e2a6c30;--ink:#19235c;--muted:#68665e;--yellow:#fee500;font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2;letter-spacing:-.055em}h2{font-size:clamp(28px,4vw,46px)}h3{font-size:23px}.modebar{min-height:32px;background:var(--navy);color:var(--cream);font-size:12px;text-align:center;padding:6px 20px;letter-spacing:.015em}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--navy)}.wordmark{font-size:19px;font-weight:1000;line-height:.95;letter-spacing:-.8px}.wordmark span{color:var(--orange)}nav{display:flex;gap:32px;font-weight:700;font-size:14px}nav a:hover{color:var(--orange)}.nav-ticket{border-bottom:1px solid}.hero{display:grid;grid-template-columns:1.2fr .8fr;min-height:650px;border-bottom:1px solid var(--navy)}.hero-copy{padding:58px 8% 45px;position:relative;overflow:hidden}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:22px;height:2px;background:currentColor}.display{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(76px,8.7vw,140px);font-weight:900;line-height:.89;letter-spacing:-.055em;margin:32px 0 24px;color:var(--orange)}.display span{display:block;color:var(--navy)}.hero-copy h2{font-size:clamp(22px,2.7vw,36px);margin-bottom:20px;line-height:1.38}.hero-copy .desc{font-size:16px;max-width:470px}.hero-art{background:var(--orange);padding:24px;display:flex;align-items:center;justify-content:center;position:relative;border-left:1px solid var(--navy);overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:contain;max-height:660px}.date-stamp{display:flex;gap:28px;margin-top:35px;font-size:13px}.date-stamp b{font-size:18px;display:block}.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;border:1px solid var(--navy);padding:16px 26px;font-weight:800;border-radius:3px;background:var(--navy);color:var(--cream);min-height:54px;line-height:1.4}.button:hover{background:#303f89}.button.orange{background:var(--orange);border-color:var(--orange);color:white}.button.light{background:transparent;color:var(--navy)}.button.kakao{background:var(--yellow);border-color:var(--yellow);color:#221c16}.button.small{font-size:13px;padding:10px 16px;min-height:42px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.ticker{overflow:hidden;background:var(--orange);color:var(--cream);padding:15px 5%;font-weight:800;letter-spacing:.1em;white-space:nowrap;font-size:14px}.section{padding:70px 6%;max-width:1500px;margin:auto}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.section-head p{max-width:440px}.step-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--navy);border-bottom:1px solid var(--navy)}.step-item{padding:30px 28px 34px;border-right:1px solid var(--navy)}.step-item:first-child{padding-left:0}.step-item:last-child{border:0}.step-no{font-family:Impact,sans-serif;font-size:65px;color:var(--orange);line-height:1.2}.step-item p{margin-bottom:0}.route-symbol{font-size:38px;letter-spacing:12px;margin:16px 0}.plus{background:var(--navy);color:var(--cream);display:grid;grid-template-columns:1fr 1.1fr;gap:45px}.plus h2{font-family:Impact,sans-serif;letter-spacing:-.02em;font-size:60px;color:var(--orange)}.plus .amount{font-size:42px;font-weight:900;letter-spacing:-.06em}.plus .amount small{font-size:16px;font-weight:400}.plus .fine{color:#e2d6bc}.program-row{display:grid;grid-template-columns:90px minmax(0,1.2fr) minmax(0,1fr) 160px;align-items:start;gap:24px;border-top:1px solid var(--navy);padding:26px 0}.program-row:last-child{border-bottom:1px solid var(--navy)}.program-row h3{margin:0 0 7px;line-height:1.45}.program-row>p{margin:0;line-height:1.6;word-break:keep-all}.program-row>.tag{justify-self:start}.program-num{font:48px Impact,sans-serif;color:var(--orange)}.tag{font-size:12px;border:1px solid currentColor;border-radius:30px;padding:5px 11px;display:inline-block;white-space:nowrap}.fine{font-size:12px;color:var(--muted);line-height:1.65}.notice{background:#f8d9aa;padding:15px 20px;border-left:3px solid var(--orange);font-size:13px;line-height:1.65}.notice.error{background:#ffe7de;color:#962805}.page-title{padding:44px 6% 28px;border-bottom:1px solid var(--navy)}.page-title h1{font-size:clamp(34px,5vw,60px);margin:10px 0}.page-title p{max-width:670px;margin-bottom:0}.booking{display:grid;grid-template-columns:1fr 330px;gap:60px;padding-top:40px}.booking-flow{min-width:0}.form-section{border-bottom:1px solid var(--line);padding:28px 0}.form-section:first-child{padding-top:0}.form-heading{display:flex;gap:13px;align-items:center;margin-bottom:18px}.form-heading b{width:29px;height:29px;background:var(--navy);color:var(--cream);display:grid;place-items:center;border-radius:50%;font-size:13px}.form-heading h2{font-size:24px;margin:0}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.choice{position:relative;border:1px solid var(--navy);background:transparent;color:var(--navy);text-align:left;padding:22px;cursor:pointer;border-radius:4px}.choice.selected,.choice[aria-pressed=true]{background:var(--navy);color:var(--cream);box-shadow:4px 4px 0 var(--orange)}.choice .day{font-family:Impact,sans-serif;font-size:38px;line-height:1}.choice .day small{font-family:inherit;font-size:20px}.choice .remaining{display:block;font-size:12px;margin-top:14px}.choice .day-name{font-size:13px;display:block;margin-top:7px}label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}select,input[type=text],input[type=password],input[type=number],input[type=datetime-local],input[type=url]{width:100%;padding:14px;background:var(--paper);border:1px solid var(--navy);border-radius:3px;color:var(--navy);min-height:50px}select{cursor:pointer}.quiz{margin:24px 0 10px}.quiz legend{font-weight:700;font-size:15px;padding:0 0 10px}.quiz fieldset{border:0;padding:0;margin:0 0 22px}.quiz-options{display:flex;gap:9px;flex-wrap:wrap}.quiz-options label{font-size:13px;border:1px solid var(--line);border-radius:30px;padding:10px 14px;cursor:pointer;font-weight:500;background:var(--paper)}.quiz-options label:has(input:checked){background:var(--orange);border-color:var(--orange);color:white}.quiz-options input{accent-color:var(--navy);margin:0 5px 0 0}.recommend{padding:24px;background:var(--navy);color:var(--cream);margin-top:20px;position:relative;overflow:hidden;border-radius:4px}.recommend:after{content:'↗';position:absolute;right:20px;top:28px;font-size:70px;opacity:.2}.recommend .tag{color:#ffd2a5;margin-bottom:15px}.recommend h3{font-size:29px;max-width:85%;margin-bottom:12px}.summary{border:1px solid var(--navy);padding:26px;align-self:start;position:sticky;top:20px;background:var(--paper);box-shadow:7px 7px 0 var(--orange)}.summary h3{font-size:25px}.summary dl{font-size:14px}.summary dt{color:var(--muted);margin-top:21px;font-size:12px}.summary dd{margin:4px 0;font-weight:800}.summary .button{width:100%}.dotted{border-top:1px dashed var(--navy);margin:24px 0}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:13px}.check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--navy)}.check a{text-decoration:underline}.full{width:100%}.loading{padding:80px 6%;text-align:center}.ticket-wrap{max-width:780px;margin:50px auto;padding:0 20px}.ticket{border:1px solid var(--navy);background:var(--paper);box-shadow:10px 10px 0 var(--orange)}.ticket-head{padding:28px;background:var(--orange);color:var(--cream);display:flex;justify-content:space-between;gap:20px}.ticket-head h2{font-size:35px;margin:8px 0 0}.ticket-body{padding:30px}.ticket-code{font-family:monospace;font-size:27px;font-weight:800;letter-spacing:.07em;border:2px dashed var(--navy);padding:20px;text-align:center}.ticket-shop{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.ticket-shop h3{margin:6px 0;font-size:22px}.ticket-shop .tag{align-self:center}.admin-bar{display:flex;gap:10px;align-items:center;justify-content:space-between}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.stat{border-top:3px solid var(--orange);padding:20px;background:var(--paper)}.stat strong{display:block;font-size:38px}.admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.panel{border:1px solid var(--navy);padding:25px;margin-bottom:24px;background:var(--paper)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:16px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line)}th{background:var(--cream);white-space:nowrap}td.code{font-family:monospace}td .button{white-space:nowrap}.empty{padding:65px 20px;text-align:center}.empty .big{font-size:65px;color:var(--orange)}.text-page{max-width:850px;line-height:1.9}.text-page h2{font-size:26px;margin-top:35px}.badge-demo{display:inline-block;background:var(--navy);color:var(--cream);padding:4px 10px;font-size:11px;letter-spacing:.05em}.login-box{max-width:480px;margin:50px auto;padding:35px;border:1px solid var(--navy);background:var(--paper)}footer{border-top:1px solid var(--navy);padding:35px 6%;font-size:11px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer div{display:flex;gap:22px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;padding:14px 25px;box-shadow:0 8px 35px #0003;border-radius:4px;z-index:99;display:none;max-width:90vw;font-size:14px}#toast.visible{display:block}dialog{border:1px solid var(--navy);background:var(--paper);color:var(--navy);padding:36px;max-width:550px;width:90%;box-shadow:9px 9px var(--orange)}dialog::backdrop{background:#17215b99}.dialog-close{position:absolute;top:8px;right:14px;border:0;background:none;color:var(--navy);font-size:28px}dialog h2{font-size:28px}dialog p{font-size:14px}.tiny-link{background:none;border:0;color:var(--navy);text-decoration:underline;font-size:12px;padding:5px 0}.step-trail{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;padding-top:15px;color:var(--muted)}.step-trail b{color:var(--orange)}
@media(min-width:1600px){.hero-copy{padding-left:12%}.hero-art img{max-height:740px}}@media(max-width:950px){.hero{grid-template-columns:1.1fr .9fr;min-height:540px}.hero-copy{padding:40px 8%}.display{font-size:80px}.hero-art{padding:12px}.booking{gap:30px;grid-template-columns:1fr 290px}.section{padding:50px 5%}.program-row{grid-template-columns:60px 1fr 1fr;gap:16px}.program-row>.tag{grid-column:2/-1;justify-self:start}.admin-grid{grid-template-columns:1fr}}@media(max-width:680px){header{height:83px;padding:0 5%}.wordmark{font-size:14px}nav{gap:15px;font-size:11px}nav a:nth-child(2){display:none}.modebar{font-size:10px;padding:6px 12px}.hero{display:flex;flex-direction:column}.hero-copy{padding:38px 6%}.display{font-size:96px;margin-top:27px}.hero-copy h2{font-size:28px}.hero-copy .desc{font-size:14px}.hero-art{height:430px;border-left:0;border-top:1px solid var(--navy);padding:18px}.hero-art img{object-fit:contain}.date-stamp{gap:23px;margin-top:25px}.ticker{font-size:11px}.section-head{display:block;margin-bottom:24px}.section-head h2{margin-bottom:14px}.section-head p{font-size:14px}.step-strip{grid-template-columns:1fr}.step-item,.step-item:first-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--navy);display:grid;grid-template-columns:65px 1fr;gap:14px}.step-no{font-size:48px}.step-item h3{font-size:21px}.step-item p{font-size:14px}.route-symbol{display:none}.plus{grid-template-columns:1fr;gap:10px}.plus h2{font-size:52px}.plus .amount{font-size:35px}.program-row{grid-template-columns:42px 1fr;gap:12px;padding:22px 0}.program-row p,.program-row>.tag{grid-column:2}.program-row h3{font-size:21px}.program-num{font-size:35px}.booking{grid-template-columns:1fr;gap:25px}.summary{position:static;box-shadow:5px 5px 0 var(--orange)}.choice{padding:18px}.choice .day{font-size:32px}.page-title{padding:30px 5% 25px}.page-title h1{font-size:38px}.page-title p{font-size:14px}.form-heading h2{font-size:22px}.quiz-options{gap:7px}.quiz-options label{font-size:12px;padding:10px}.ticket-head{padding:23px}.ticket-head h2{font-size:28px}.ticket-body{padding:22px}.ticket-code{font-size:22px}.ticket-shop h3{font-size:19px}.admin-stats{grid-template-columns:1fr 1fr}.admin-stats .stat{padding:15px}.stat strong{font-size:30px}.field-grid{grid-template-columns:1fr}.panel{padding:20px}.actions .button{flex:1}.section.text-page{font-size:14px}footer{display:grid;gap:14px}.button{padding:15px 21px}.fine{font-size:11px}}

.ticket-code{overflow-wrap:anywhere;font-size:19px}.qr-display{width:220px;max-width:100%;margin:16px auto;background:white;padding:8px}.qr-display svg{display:block;width:100%;height:auto}
@media(max-width:680px){.ticket-code{font-size:15px;letter-spacing:.025em}.qr-display{width:200px}}

.auth-steps{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;margin-bottom:28px;color:var(--muted)}.auth-steps b{color:var(--orange)}.summary #book{margin-top:18px}.map-link{display:inline-block;margin:18px 0 3px;font-weight:800;font-size:13px;text-decoration:underline;text-underline-offset:4px}.map-address{margin:5px 0 0;overflow-wrap:anywhere}.discovery-card{display:flex;gap:28px;background:var(--navy);color:var(--cream);padding:32px;margin-top:30px;border-radius:4px}.discovery-card h2{font-size:33px;margin:16px 0}.discovery-card p{font-size:14px;max-width:420px}.discovery-mark{color:var(--orange);font-size:80px;line-height:1.1}.discovery-card .tag{color:#ffd6b2;white-space:normal}.wallet-wrap{max-width:980px;margin:50px auto;padding:0 28px}.wallet-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:28px 0}.wallet-heading h1{font-size:clamp(32px,5vw,54px);margin:0 0 16px}.visit-count{text-align:center;flex-shrink:0}.visit-count b{font-family:Impact,sans-serif;display:block;font-size:64px;line-height:1.2;color:var(--orange)}.visit-count small{font-size:30px;color:var(--navy)}.visit-count span{font-size:12px}.wallet-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.shop-card{border:1px solid var(--navy);padding:26px;background:var(--paper);box-shadow:5px 5px 0 var(--orange)}.shop-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px}.shop-card h2{font-size:27px;margin:28px 0 14px;word-break:keep-all;overflow-wrap:anywhere}.shop-card>p{font-size:13px}.shop-card .map-link{margin-top:22px}.shop-card.used{box-shadow:5px 5px 0 #5c8173}.shop-card.used .tag{color:#276652}.sync-status{margin:20px 0;min-height:18px}.pass-wrap{max-width:510px;margin:26px auto 45px;padding:0 20px}.shop-pass{border:1px solid var(--navy);box-shadow:6px 6px 0 var(--orange);margin-top:16px;background:var(--paper)}.pass-brand{padding:18px 22px;background:var(--orange);color:var(--cream);font-family:Impact,sans-serif;font-size:26px;line-height:1.2;letter-spacing:-.03em}.pass-brand span{display:block;font-family:'Malgun Gothic',sans-serif;font-size:11px;letter-spacing:0;margin-top:5px}.pass-content{text-align:center;padding:24px}.pass-date{font-size:13px;font-weight:bold;margin-bottom:16px}.pass-content h1{font-size:30px;margin:0 0 12px;word-break:keep-all;overflow-wrap:anywhere}.pass-content>p{font-size:13px}.pass-status{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;background:#fbe5bf;font-size:17px;margin:24px 0 12px;border-radius:4px}.waiting-dot{width:10px;height:10px;border-radius:50%;background:var(--orange)}.pass-content .qr-display{width:230px;margin:10px auto}.pass-instruction{font-weight:bold;font-size:13px!important;line-height:1.7}.manual-code{font-size:12px;margin-top:20px}.manual-code summary{cursor:pointer;text-decoration:underline}.manual-code .ticket-code{font-size:15px;padding:12px}.pass-map{margin-top:28px}.pass-map .map-address{text-align:center}.shop-pass.used{box-shadow:6px 6px 0 #5c8173}.shop-pass.used .pass-brand{background:#276652}.used .pass-status{background:#e2f0e6;color:#276652}.check-circle{display:grid;place-items:center;background:#276652;border-radius:50%;color:white;width:40px;height:40px;font-size:25px;flex-shrink:0}.shop-pass.used .pass-status{flex-direction:column;background:transparent;padding:20px 0;font-size:30px;gap:14px}.shop-pass.used .check-circle{width:90px;height:90px;font-size:60px}.pass-confirmed{line-height:1.9}.staff-box{max-width:510px}.staff-box h2{overflow-wrap:anywhere;word-break:keep-all}.staff-box .notice{margin-bottom:24px}.staff-ticket{margin-top:24px;border-top:2px dashed var(--line);text-align:center}.staff-ticket h3{font-size:25px;margin-top:20px}.staff-ticket p{font-size:14px}.staff-ticket .button{font-size:14px}.staff-ticket .pass-status{font-size:16px}
@media(max-width:680px){.login-box{margin:30px 20px;padding:25px}.wallet-wrap{padding:0 20px;margin:30px auto}.wallet-heading{margin:22px 0}.wallet-heading p{font-size:13px}.wallet-grid{grid-template-columns:1fr;gap:22px}.shop-card{padding:22px}.shop-card h2{margin-top:23px;font-size:27px}.discovery-card{gap:16px;padding:25px 22px}.discovery-mark{font-size:52px}.discovery-card h2{font-size:28px}.discovery-card .eyebrow{font-size:10px;letter-spacing:.09em}.discovery-card .eyebrow:before{display:none}.pass-wrap{padding:0 18px;margin-top:18px}.pass-content{padding:22px 18px}.pass-content h1{font-size:28px}.pass-brand{font-size:24px}.pass-content .qr-display{width:220px;padding:0}.pass-status{margin-top:19px}.pass-content .sync-status{font-size:10px;margin-bottom:0}.pass-content .qr-display svg{min-width:0}.hero .button{gap:15px;font-size:14px}.visit-count b{font-size:55px}}

:root{font-family:'Pretendard Variable',Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;line-height:1.65;letter-spacing:-.015em}body{font-weight:450;-webkit-font-smoothing:antialiased}h1,h2,h3{font-weight:760;letter-spacing:-.045em;word-break:keep-all;overflow-wrap:anywhere}p{word-break:keep-all;overflow-wrap:anywhere}.button{font-weight:700;letter-spacing:-.01em;border-radius:5px}.wordmark{display:block;width:240px;line-height:1;letter-spacing:0;flex-shrink:0}.poster-wordmark{display:block;width:100%;height:auto;mix-blend-mode:multiply}.wordmark .brand-caption{display:block;margin-top:5px;color:var(--navy);font-family:'Pretendard Variable',sans-serif;font-size:9px;font-weight:650;letter-spacing:.14em}.coffee-wordmark{display:block;width:265px;max-width:80%;height:auto;mix-blend-mode:multiply}.hero-copy{padding-top:42px}.hero-copy .display{margin-top:30px}.page-title .eyebrow,.wallet-wrap>.eyebrow,.discover-page>.eyebrow{font-family:'Pretendard Variable',sans-serif;font-size:12px;letter-spacing:.025em;font-weight:700}.page-title h1{font-size:clamp(32px,4vw,48px);margin:15px 0 14px}.page-title p{color:#525778;line-height:1.7}.choice .day{font-family:'Pretendard Variable',sans-serif;font-size:35px;font-weight:800;letter-spacing:-.04em}.choice .day small{font-size:16px;font-weight:650;margin-left:4px;letter-spacing:.02em}.pass-brand{font-family:'Pretendard Variable',sans-serif;font-weight:850;font-size:23px;letter-spacing:-.04em}.pass-brand span{font-family:inherit;font-weight:500}.availability-status:empty,.sync-status:empty{display:none}.map-return-note{font-size:11px;color:#77766c;margin:7px 0 0}.map-link{font-size:14px;margin-top:17px}.map-address{font-size:12px;line-height:1.6}.summary h3{font-weight:760}.summary dt{font-size:13px}.summary dd{font-weight:650;line-height:1.55}.summary .fine{font-size:12px}.discovery-card{position:relative;overflow:hidden}.discovery-card p{line-height:1.8}.discovery-mark{font-family:Georgia,serif}.mini-cards{display:flex;height:87px;justify-content:center;align-items:center;gap:9px;margin:20px 0 26px}.mini-cards span{display:grid;place-items:center;border:1px solid #fff1d65c;width:65px;height:81px;border-radius:7px;font-size:10px;font-weight:750;letter-spacing:.05em;background:#26357e;transform:rotate(-12deg)}.mini-cards span:nth-child(2){transform:translateY(-3px);background:var(--orange);font-size:37px;border-color:var(--orange);z-index:1}.mini-cards span:nth-child(3){transform:rotate(12deg)}.reward-intro{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#f6e8c9;border-bottom:1px solid var(--line)}.reward-intro h2{font-size:34px;line-height:1.35;margin:18px 0}.reward-intro p{margin-bottom:0}.reward-intro .button{flex-shrink:0}.mission-banner{display:flex;align-items:center;gap:20px;padding:25px;border:1px solid var(--navy);margin-top:28px;background:#f7e4bc;border-radius:4px}.mission-banner b{font-size:21px;font-weight:750}.mission-banner p{font-size:14px;margin:6px 0 0}.mission-banner>span:last-child{margin-left:auto;font-size:25px}.mission-number{font-size:35px;color:var(--orange);font-weight:800}.ticket-keep{border-top:1px solid var(--line);margin-top:35px;padding:25px 0}.ticket-keep h3{font-size:22px;margin-bottom:10px}.ticket-keep p{font-size:14px;line-height:1.8}.ticket-keep .fine{font-size:12px;margin-top:14px}.pass-illustration{color:var(--orange);padding:15px 0 18px}.pass-illustration svg{width:110px;height:100px}.pin-shop-name{font-size:22px!important;font-weight:750;margin:8px 0 16px}.pin-input{width:100%;font-family:'Pretendard Variable',sans-serif!important;font-size:32px!important;font-weight:800;letter-spacing:18px;text-align:center;padding:15px!important;min-height:72px!important}.pin-message{font-size:13px!important;line-height:1.65;min-height:22px;margin:12px 0 20px}.photo-attest{padding:16px;background:var(--cream);margin:20px 0}.demo-pin-hint{margin:18px 0 0;border-top:1px solid var(--line);padding-top:12px}.copy-link{font-size:14px}.discover-page{max-width:540px;margin:0 auto;padding:42px 32px 55px;text-align:center}.discover-page>.eyebrow{justify-content:center}.discover-page>.eyebrow:before{display:none}.discover-page h1{font-size:39px;margin:20px 0 12px}.discover-page>p{font-size:15px;color:#525778}.reveal-stage{position:relative;perspective:1000px;margin:37px auto 28px;width:270px;height:335px}.reveal-card{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.18,.72,.24,1)}.card-face{position:absolute;inset:0;backface-visibility:hidden;border:1px solid var(--navy);border-radius:15px;padding:28px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:7px 7px 0 #ed57002a}.card-front{background:var(--navy);color:var(--cream);transform:rotate(-5deg)}.card-front>span:first-child,.card-back>span:first-child{font-size:10px;letter-spacing:.12em;font-weight:700}.card-front svg{height:80px;width:100px;margin:18px auto;color:#ffc58b}.card-front strong{font-size:28px;line-height:1.35;font-weight:750;letter-spacing:-.03em}.card-star{font-family:Georgia,serif;font-size:38px;line-height:1;color:var(--orange);margin-top:15px}.card-back{background:var(--orange);color:var(--cream);transform:rotateY(180deg)}.card-back .card-star{color:var(--cream);font-size:50px;margin:25px 0 10px}.card-back h2{font-size:29px;line-height:1.3;margin:10px 0 20px}.card-back p{font-size:13px;line-height:1.8;margin:0}.is-revealed .reveal-card{transform:rotateY(180deg)}.orbit-word{position:absolute;font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--orange);writing-mode:vertical-rl;top:30px}.orbit-one{left:-27px}.orbit-two{right:-27px;top:auto;bottom:30px}.skip-reveal{display:block;margin-top:18px}#reveal-caption h2{font-size:25px;margin:5px 0 10px}#reveal-caption p{font-size:14px;margin-bottom:25px}.reward-page{max-width:680px;padding:32px 25px 50px;margin:auto}.reward-page>.eyebrow{margin-top:30px;letter-spacing:.08em}.reward-page h1{font-size:35px;line-height:1.3;margin:16px 0}.reward-page>p{font-size:15px;line-height:1.8}.reward-emblem{width:130px;height:130px;display:grid;place-items:center;border-radius:50%;background:var(--orange);color:var(--cream);margin:26px auto 32px;font-size:65px}.reward-emblem svg{width:75px;height:75px}.reward-emblem.complete{background:#276652}.mission-list{border-top:1px solid var(--navy)}.mission-row{display:flex;align-items:center;gap:16px;padding:23px 0;border-bottom:1px solid var(--line)}.mission-row>div{flex:1;min-width:0}.mission-check{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;border:1px solid var(--line);font-size:17px;font-weight:700;flex-shrink:0}.mission-check.done{background:#276652;color:white;border-color:#276652;font-size:23px}.mission-check.ready{border-color:var(--orange);color:var(--orange);background:#ffe4bc}.mission-row h2{font-size:21px;line-height:1.4;margin:0 0 6px}.mission-row p{font-size:12px;line-height:1.7;margin:0;color:#666b74}.photo-mission .tiny-link{font-size:13px;margin-top:10px;font-weight:650}.booth-ready{background:var(--paper);border:1px solid var(--navy);padding:27px;margin-top:30px;border-radius:5px}.booth-ready h2{font-size:25px;line-height:1.35;margin-bottom:12px}.booth-ready p{font-size:14px;line-height:1.8}.booth-ready .fine{font-size:12px;margin:16px 0 0}.reward-complete{text-align:center;padding:30px 20px;background:#e2f0e6;color:#276652;border-radius:5px;margin-top:28px}.reward-complete strong{font-size:25px}.reward-complete p{font-size:14px;margin:12px 0 0}
@media(max-width:680px){header{height:82px;gap:14px}.wordmark{width:165px}.wordmark .brand-caption{font-size:7px;letter-spacing:.08em;margin-top:4px}nav{gap:13px;font-size:12px;font-weight:650}.coffee-wordmark{width:230px;max-width:86%}.hero-copy{padding-top:30px}.display{font-size:83px;line-height:.94}.hero-copy h2{font-size:27px;line-height:1.45}.hero-copy .desc{font-size:15px;line-height:1.8}.page-title .eyebrow,.wallet-wrap>.eyebrow{font-size:10px}.page-title h1{font-size:32px;line-height:1.3}.page-title p{font-size:15px}.choice{padding:17px 13px}.choice .day{font-size:32px}.choice .day small{font-size:14px;margin-left:0}.form-heading h2{font-size:23px}.booking{padding-top:23px}.booking .fine{font-size:12px}.discovery-card{padding:25px;gap:15px}.discovery-mark{display:none}.discovery-card>div{width:100%}.discovery-card h2{font-size:29px;line-height:1.35}.mini-cards{justify-content:flex-start;padding-left:18px}.reward-intro{display:block}.reward-intro h2{font-size:27px}.reward-intro p{font-size:14px;line-height:1.8}.reward-intro .button{margin-top:25px}.wallet-heading h1{font-size:34px}.wallet-wrap{padding:0 20px}.shop-card h2{font-size:28px;line-height:1.25}.shop-card .map-return-note{font-size:11px}.mission-banner{gap:13px;padding:21px 17px}.mission-banner b{font-size:18px;line-height:1.4;display:block}.mission-banner p{font-size:13px}.mission-number{font-size:29px}.ticket-keep h3{font-size:22px}.ticket-keep p{font-size:13px}.ticket-keep .actions .button{flex:auto}.pass-brand{font-size:23px}.pass-content h1{font-size:30px}.pass-content .fine{font-size:12px}.pass-content .pass-instruction{font-size:14px!important}.pass-map .map-return-note{text-align:center}.discover-page{padding:30px 25px 45px}.discover-page>.eyebrow{font-size:10px}.discover-page h1{font-size:34px}.reveal-stage{width:245px;height:305px;margin:34px auto 29px}.card-front strong{font-size:26px}.card-back h2{font-size:27px}.reward-page{padding:25px 20px 45px}.reward-page h1{font-size:31px}.mission-row{gap:13px}.mission-row h2{font-size:20px}.booth-ready{padding:23px 20px}.booth-ready h2{font-size:24px}.booth-ready .button{font-size:14px;padding:15px}.pin-input{font-size:30px!important}dialog{padding:32px 24px}dialog h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.reveal-card{transition:none}.card-front{transform:none}}
.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{min-width:0}.choice-grid+.fine{margin-top:16px}

.channel-access{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.channel-link{display:inline-block;font-size:13px;font-weight:700;line-height:1.7}
.channel-access .fine{margin:7px 0 0;line-height:1.7}

/* Festival navigation and the participant-facing 2026 programme. */
:root{font-family:'Pretendard Variable',Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-optical-sizing:auto}h1,h2,h3,p{overflow-wrap:break-word}p{line-height:1.75}.skip-link{position:fixed;top:-80px;left:16px;background:var(--navy);color:white;padding:12px 20px;z-index:999}.skip-link:focus{top:10px}#app:focus{outline:none}header{height:auto;min-height:105px;gap:32px;padding:21px 5%}.wordmark{width:260px;max-width:40%}.wordmark img{display:block;width:100%;height:auto}.wordmark .brand-caption{font-size:9px;margin-top:8px;letter-spacing:.12em;color:var(--navy);text-align:center}nav{align-items:center;gap:25px;font-size:13px;white-space:nowrap}nav a{padding:10px 0}nav a[aria-current=page]{color:var(--orange)}.nav-instagram{font-size:12px;color:var(--muted)}.nav-ticket{border:1px solid var(--navy);border-radius:4px;padding:9px 14px}.button{min-height:48px}.fine{line-height:1.7}.section-head.aligned{display:grid;grid-template-columns:1.1fr .9fr;align-items:start;gap:7%;margin-bottom:38px}.section-head.aligned h2{margin:0;font-size:clamp(30px,3.4vw,48px);line-height:1.27;letter-spacing:-.045em;text-wrap:balance}.section-head.aligned>p{margin:3px 0 0;max-width:510px;font-size:16px;line-height:1.85}.section-head.aligned .eyebrow{margin-bottom:18px}.section-head.aligned>.tiny-link{justify-self:end;align-self:end}.festival-hero{display:grid;grid-template-columns:1fr .8fr;min-height:680px;border-bottom:1px solid var(--navy)}.festival-copy{padding:65px 11% 50px}.festival-copy h1{font-size:clamp(42px,5.2vw,77px);line-height:1.13;margin:30px 0 25px;letter-spacing:-.055em}.festival-copy>p{font-size:17px;line-height:1.9}.festival-date{display:grid;gap:5px;margin:30px 0}.festival-date b{font-size:24px;font-weight:800;letter-spacing:-.03em}.festival-date b span{font-size:13px;font-weight:600}.festival-date>span{font-size:14px}.festival-copy .actions{flex-wrap:wrap;gap:18px}.festival-copy .actions .button{font-size:15px}.festival-poster{background:var(--orange);border-left:1px solid var(--navy);padding:24px;display:flex;align-items:center;justify-content:center}.festival-poster img{display:block;width:100%;height:auto;max-height:690px;object-fit:contain}.host-brand{display:flex;align-items:center;gap:17px;margin-top:38px}.host-brand img{height:68px;width:auto;object-fit:contain}.host-brand span{font-size:12px;line-height:1.7}.walk-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.walk-category{border:1px solid var(--navy);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.walk-category:hover{transform:translateY(-4px);box-shadow:5px 5px 0 var(--orange)}.category-poster{background:var(--paper);aspect-ratio:1/1;overflow:hidden;padding:16px;display:grid;place-items:center;border-bottom:1px solid var(--navy)}.category-poster img{height:100%;width:100%;object-fit:contain}.category-copy{padding:25px;display:flex;flex-direction:column;flex:1}.category-copy .eyebrow{font-size:11px;letter-spacing:.08em}.category-copy h3{font-size:24px;line-height:1.3;margin:18px 0 14px}.category-copy p{font-size:13px;line-height:1.8;margin-bottom:20px}.category-link{font-size:14px;font-weight:750;margin-top:auto;padding-top:15px;border-top:1px solid var(--line)}.program-hero{min-height:0}.program-hero .hero-copy{padding:50px 9%}.program-hero .coffee-wordmark{width:300px;max-width:100%;height:auto}.program-hero .display{font-family:'Pretendard Variable',sans-serif;font-size:clamp(50px,6vw,88px);line-height:.98;font-weight:900;letter-spacing:-.055em;margin:35px 0 25px}.program-hero .hero-art img{max-height:650px}.program-display{font-size:clamp(40px,5vw,66px);line-height:1.15;margin:32px 0 25px}.sound-program-intro{margin:25px 0 30px}.sound-program-intro h2{font-size:23px;margin:24px 0 10px}.sound-program-intro p{font-size:14px;line-height:1.8;margin:0}.sound-hero .hero-art{background:#1e2a6c}.brand-hero .hero-art{background:#ffb359}.step-strip{gap:28px}.step-item{display:block;padding:24px 0 0;border-top:2px solid var(--navy)}.step-no{font-family:inherit;font-weight:800;font-size:35px;line-height:1;margin-bottom:24px}.step-item h3{font-size:22px;line-height:1.4;margin:0 0 14px}.step-item p{font-size:14px;line-height:1.85;margin:0;max-width:340px}.route-symbol{display:none}.reward-feature{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;background:#f4ead7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reward-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.reward-feature-copy .eyebrow{font-size:10px;letter-spacing:.08em}.reward-feature h2{font-size:clamp(30px,3vw,43px);line-height:1.3;margin:20px 0}.reward-feature p{font-size:15px;line-height:1.9}.reward-requirements{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.reward-requirements span{border:1px solid var(--line);padding:5px 10px;font-size:11px;font-weight:650;border-radius:2px}.reward-feature .button{font-size:14px}.reward-mission-photo{display:block;width:100%;height:auto;max-height:280px;object-fit:contain;margin:25px 0 12px;background:#f6efe6}.reward-product-label{text-align:center;font-size:13px!important;margin:10px 0 28px;font-weight:700}.benefits-section{background:var(--paper)}.benefit-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.benefit-cards.single{grid-template-columns:1fr}.benefit-card{padding:30px;border:1px solid var(--navy);background:var(--cream)}.benefit-card.plus{display:block;grid-template-columns:none;background:var(--navy);color:var(--cream);gap:0}.benefit-card.plus .tag{color:var(--cream);border-color:#fff1d67d}.benefit-card .tag{font-size:12px;letter-spacing:0}.benefit-who{margin:25px 0 12px;font-size:13px}.benefit-card h3{font-size:clamp(25px,2.4vw,35px);line-height:1.3;margin:0 0 25px;letter-spacing:-.035em}.benefit-card h3 span{display:block;font-size:22px;line-height:1.5;margin:8px 0}.benefit-card h3 strong{display:block;font-weight:800;color:var(--orange)}.benefit-card.plus h3 strong{color:#ffb374}.benefit-card>p:last-child{font-size:13px;line-height:1.8;margin:0;max-width:540px}.benefits-more{margin-top:28px;min-height:56px;padding:17px 28px;font-size:17px;white-space:normal}.benefit-how{max-width:850px;margin:55px 0 30px}.benefit-how h2{font-size:30px;margin-bottom:28px}.benefit-how ol{padding-left:22px;display:grid;gap:20px}.benefit-how li{padding-left:12px}.benefit-how li b{font-size:19px}.benefit-how li p{font-size:14px;margin:6px 0 0}.benefit-how .notice{font-size:13px;line-height:1.8;margin-top:25px}.places-teaser{display:flex;justify-content:space-between;align-items:center;gap:30px}.places-teaser h2{font-size:34px;line-height:1.3;margin:20px 0}.places-teaser p{font-size:14px;margin-bottom:0}.places-teaser .button{flex-shrink:0}.discovery-card h2{font-size:31px;line-height:1.3;max-width:420px}.discovery-card .mini-cards{margin:26px 0}.discovery-card .tag{font-size:12px;line-height:1.7}.form-heading h2{font-size:27px;line-height:1.35}.summary h3{font-size:25px;line-height:1.3;max-width:280px}.summary p b{display:block;line-height:1.6}.summary .check{align-items:flex-start}.summary .check input{margin-top:4px}.map-pending{padding:10px 0}.map-pending .tiny-link{font-size:12px}.wallet-heading h1{text-wrap:balance}.program-row{align-items:start}.program-row p{margin-top:0}.program-row .tag{justify-self:start}.onsite-programs{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.onsite-programs article{border-top:2px solid var(--navy);padding:25px 0}.onsite-programs h3{margin:22px 0 16px}.onsite-programs p{font-size:14px;line-height:1.85}.place-mission-note{max-width:800px;padding:25px 30px;border:1px solid var(--navy);margin:0 0 38px;background:var(--paper)}.place-mission-note b{font-size:20px}.place-mission-note p{font-size:14px;margin:10px 0}.place-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.place-card{border:1px solid var(--navy);background:var(--paper);overflow:hidden}.place-visual{height:180px;background:var(--navy);color:var(--cream);position:relative;overflow:hidden;padding:25px;display:flex;justify-content:space-between;align-items:flex-start}.place-visual>span{font-size:55px;line-height:1;font-weight:800;letter-spacing:-.05em}.place-visual strong{font-size:10px;letter-spacing:.13em;writing-mode:vertical-rl;font-weight:650;z-index:1}.place-visual i{position:absolute;width:190px;height:190px;border:2px solid currentColor;border-radius:50%;right:20%;top:50px;opacity:.6}.place-visual i:before,.place-visual i:after{content:'';position:absolute;inset:20px;border:1px solid currentColor;border-radius:inherit}.place-visual i:after{inset:40px}.place-zip{background:#d55c24}.place-humanities{background:#d4b89a;color:var(--navy)}.place-humanities i{border-radius:0;transform:rotate(35deg);width:160px;height:160px}.place-greenway{background:#506e58}.place-greenway i{border-radius:80px 80px 0 0;transform:rotate(35deg);height:250px;width:100px;right:27%;top:30px}.place-dongmyeong{background:#f3b575;color:var(--navy)}.place-dongmyeong i{border-radius:5px;transform:rotate(-18deg)}.place-copy{padding:28px}.place-copy .eyebrow{font-size:12px;letter-spacing:0}.place-copy h2{font-size:27px;line-height:1.4;margin:20px 0 16px}.place-copy>p{font-size:14px;line-height:1.9}.place-copy .place-address{font-size:12px;border-top:1px solid var(--line);padding-top:18px;margin-bottom:0;color:var(--muted)}.place-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:10px}.place-actions .map-link{font-size:13px;margin:0}.place-actions .tiny-link{font-size:11px}.social-brand{width:130px;margin:0 auto 25px;height:auto}.program-reservation-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px}.program-reservation-card{border:1px solid var(--navy);padding:30px;background:var(--paper);display:flex;flex-direction:column}.program-reservation-card h3{font-size:28px;line-height:1.35;margin:25px 0 16px}.program-reservation-card>p{font-size:14px;line-height:1.8}.program-reservation-card dl{display:grid;grid-template-columns:110px 1fr;font-size:13px;border-top:1px solid var(--line);padding-top:20px;gap:12px;margin-top:auto}.program-reservation-card dd{margin:0;font-weight:700}.program-reservation-card .button{margin-top:16px}.tag.open-tag{color:#276652;border-color:#276652}.program-booking-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:6%;align-items:start}.program-side img{width:100%;height:auto}.program-booking-status{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}.program-booking-status p{font-size:13px;margin:12px 0 0}.session-choices{display:grid;gap:15px;margin-bottom:25px}.session-choice{display:flex;gap:15px;align-items:flex-start;border:1px solid var(--navy);padding:22px;background:var(--paper);cursor:pointer;border-radius:4px}.session-choice:has(input:checked){border:2px solid var(--orange);padding:21px;background:#ffe6c4}.session-choice input{margin-top:6px;accent-color:var(--orange);width:18px;height:18px;flex-shrink:0}.session-choice>span{display:grid;gap:7px}.session-choice b{font-size:18px}.session-choice span span{font-size:13px}.session-choice small{font-size:12px;color:var(--orange);font-weight:700}.session-choice.is-full{opacity:.5;cursor:not-allowed}.program-policy{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.program-policy h3{font-size:21px}.program-policy p{font-size:13px;line-height:1.8}.program-booking-layout .check{align-items:flex-start;font-size:13px;line-height:1.8;margin:25px 0}.program-booking-layout .check input{margin-top:4px}.program-unconfigured{padding:40px 10px}.program-unconfigured p{font-size:15px}.my-reservations{max-width:1120px}.my-coffee-reservation{display:grid;grid-template-columns:.75fr 1.25fr;gap:40px;align-items:center;padding:35px;border:1px solid var(--navy);margin-bottom:50px;background:var(--paper)}.my-coffee-reservation>img{width:100%;height:auto}.my-coffee-reservation h2{font-size:32px;margin:20px 0}.my-coffee-reservation p{font-size:14px;line-height:1.8}.program-ticket{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px;border:1px solid var(--navy);background:var(--paper);margin:0 0 22px}.program-ticket h3{margin:20px 0 15px;font-size:27px}.program-ticket p{font-size:14px;line-height:1.8}.program-ticket.cancelled{opacity:.65}.program-ticket-action{display:grid;text-align:center;gap:14px;min-width:150px}.ticket-reference{font-size:28px;letter-spacing:.05em;border:1px solid var(--line);padding:12px}.empty.compact{padding:35px 20px;border:1px dashed var(--line);margin-bottom:25px}.program-settings{margin-top:30px}.program-settings h2{font-size:28px}.program-settings>.check{margin:25px 0}.program-settings .field label{display:grid;gap:10px;font-size:13px}.program-settings .field input,.program-settings .field select{min-width:0;width:100%}.admin-session-row{border:1px solid var(--line);padding:22px;margin-bottom:20px}.admin-session-row .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-settings>.button[type=submit]{margin-top:10px}.program-onsite-controls{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.program-onsite-controls .button{margin-top:15px}.footer-brand{display:flex;align-items:center;gap:20px!important}.footer-brand>img{width:74px;height:auto}.footer-brand>div{display:block}.footer-brand b,.footer-brand span{display:block}.footer-brand span{margin-top:8px;font-size:11px}.footer-brand p{margin:8px 0 0;font-size:11px}.footer-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:18px!important}.organizer{border-top:1px solid var(--line);padding-top:25px;flex-basis:100%;display:flex;align-items:center;justify-content:center;gap:22px}.organizer span{font-size:11px;color:var(--muted)}.organizer img{height:104px;width:auto;mix-blend-mode:multiply}footer{align-items:center}
@media(max-width:1100px){header{gap:20px}.wordmark{width:230px}nav{gap:16px;font-size:12px}.nav-instagram{font-size:11px}.festival-copy{padding:50px 9%}.festival-copy h1{font-size:60px}.festival-copy .actions{display:grid;justify-items:start}.festival-copy .actions .button{font-size:14px}.category-copy{padding:22px}.category-copy h3{font-size:22px}.benefit-card{padding:25px}.benefit-card h3{font-size:28px}}
@media(max-width:800px){header{display:block;padding:19px 5% 0;min-height:116px}.wordmark{width:235px;max-width:none;margin:0 auto 15px}.wordmark .brand-caption{font-size:8px;margin-top:6px}nav{width:100%;justify-content:space-between;gap:12px;overflow-x:auto;font-size:12px;padding-bottom:12px}.nav-ticket{padding:7px 10px}.nav-instagram{font-size:10px}.festival-hero{grid-template-columns:1fr 1fr;min-height:0}.festival-copy{padding:35px 10%}.festival-copy h1{font-size:44px}.festival-copy .eyebrow{font-size:9px;letter-spacing:.07em}.festival-copy>p{font-size:14px}.festival-date b{font-size:20px}.festival-poster{padding:16px}.host-brand{margin-top:25px;gap:12px}.host-brand img{height:53px}.host-brand span{font-size:10px}.walk-categories{gap:15px}.category-copy{padding:18px}.category-copy h3{font-size:20px}.category-copy p{font-size:12px}.category-copy .eyebrow{font-size:9px;letter-spacing:.04em}.category-copy .eyebrow:before{display:none}.section-head.aligned{gap:6%}.section-head.aligned>p{font-size:14px}.step-strip{gap:20px}.step-item h3{font-size:19px}.step-item p{font-size:13px}.reward-feature{gap:5%}.reward-feature h2{font-size:30px}.reward-feature p{font-size:14px}.reward-requirements{gap:5px}.reward-requirements span{font-size:10px}.benefit-card h3{font-size:25px}.program-booking-layout{grid-template-columns:minmax(0,1fr) 230px;gap:25px}.place-grid{gap:20px}.place-copy{padding:24px}.place-copy h2{font-size:24px}.place-copy>p{font-size:13px}.footer-links{justify-content:flex-start}}
@media(max-width:600px){header{padding:17px 18px 0;min-height:112px}.wordmark{width:220px;margin-bottom:13px}.wordmark .brand-caption{font-size:7px}nav{gap:16px;justify-content:flex-start;padding-bottom:12px;font-size:12px;scrollbar-width:none}nav::-webkit-scrollbar{display:none}.nav-ticket{padding:6px 10px}.nav-instagram{font-size:11px}.modebar{font-size:10px;padding:6px 12px;min-height:29px}.section{padding:38px 22px}.festival-hero{display:flex;flex-direction:column}.festival-copy{padding:35px 24px}.festival-copy h1{font-size:51px;line-height:1.15;margin:26px 0 20px}.festival-copy .eyebrow{font-size:10px}.festival-copy>p{font-size:15px;line-height:1.8}.festival-date{margin:24px 0}.festival-date b{font-size:23px}.festival-date>span{font-size:13px}.festival-copy .actions{display:flex;flex-wrap:wrap;gap:18px}.festival-copy .actions .button{font-size:14px;width:100%;justify-content:space-between}.host-brand{margin-top:28px}.host-brand img{height:56px}.host-brand span{font-size:11px}.festival-poster{border-left:0;border-top:1px solid var(--navy);padding:22px}.festival-poster img{max-height:530px}.section-head.aligned{display:block;margin-bottom:28px}.section-head.aligned h2{font-size:31px;line-height:1.3}.section-head.aligned>p{margin-top:22px;font-size:14px;line-height:1.85}.section-head.aligned>.tiny-link{display:inline-block;margin-top:18px}.walk-categories{grid-template-columns:1fr;gap:22px}.walk-category{display:grid;grid-template-columns:40% 60%}.category-poster{aspect-ratio:auto;min-height:210px;padding:10px;border-bottom:0;border-right:1px solid var(--navy)}.category-copy{padding:22px 18px}.category-copy h3{font-size:23px;margin:15px 0 12px}.category-copy p{font-size:12px;line-height:1.7}.category-link{font-size:12px;margin-top:auto;padding-top:12px}.category-copy .eyebrow{font-size:9px}.program-hero{display:flex;flex-direction:column}.program-hero .hero-copy{padding:33px 24px 36px}.program-hero .coffee-wordmark{width:260px;max-width:90%}.program-hero .display{font-size:63px;line-height:.98;margin-top:28px}.program-hero .hero-copy h2{font-size:26px}.program-hero .hero-copy .desc{font-size:14px;line-height:1.9}.program-hero .button{font-size:14px;gap:12px;width:100%;justify-content:space-between}.program-hero .hero-art{border-left:0;border-top:1px solid var(--navy);padding:20px}.program-hero .hero-art img{max-height:480px}.date-stamp{gap:25px;margin-top:28px;font-size:11px}.date-stamp b{font-size:17px}.step-strip{grid-template-columns:1fr;gap:0}.step-item{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:25px 0;border-top:1px solid var(--navy)}.step-no{font-size:33px;margin:0}.step-item h3{font-size:21px;margin:0 0 12px}.step-item p{font-size:14px;line-height:1.85;max-width:none}.reward-feature{display:flex;flex-direction:column;gap:28px}.reward-photo{width:100%}.reward-feature-copy .eyebrow{font-size:9px}.reward-feature h2{font-size:31px;margin:20px 0}.reward-feature p{font-size:14px;line-height:1.9}.reward-requirements span{font-size:10px;padding:5px 8px}.reward-feature .button{width:100%;justify-content:space-between}.benefit-cards{grid-template-columns:1fr;gap:20px}.benefit-card{padding:27px 23px}.benefit-card h3{font-size:29px}.benefit-card .tag{font-size:11px}.benefit-card>p:last-child{font-size:13px}.benefit-how{margin-top:36px}.benefit-how h2{font-size:27px}.benefit-how li b{font-size:18px}.benefit-how li p{font-size:13px}.places-teaser{display:block}.places-teaser h2{font-size:29px}.places-teaser .button{margin-top:24px;width:100%;justify-content:space-between;font-size:13px}.page-title{padding:30px 22px 25px}.page-title h1{font-size:34px;line-height:1.25}.page-title p{font-size:14px;line-height:1.8}.form-heading h2{font-size:23px;line-height:1.4}.summary h3{font-size:26px;max-width:none}.discovery-card h2{font-size:29px;line-height:1.35}.discovery-card p{font-size:14px}.discovery-card .tag{font-size:11px}.wallet-heading h1{font-size:32px;line-height:1.2}.visit-count b{font-family:inherit;font-weight:800}.visit-count span{font-size:10px}.reward-mission-photo{margin-top:22px}.reward-product-label{font-size:12px!important}.program-display{font-size:45px}.sound-program-intro h2{font-size:22px!important}.program-reservation-cards{grid-template-columns:1fr;gap:20px}.program-reservation-card{padding:25px 22px}.program-reservation-card h3{font-size:27px}.program-reservation-card dl{grid-template-columns:95px 1fr;font-size:12px}.program-reservation-card .button{font-size:13px}.onsite-programs{grid-template-columns:1fr;gap:0}.onsite-programs article{padding:25px 0}.onsite-programs h3{font-size:25px}.place-mission-note{padding:23px 20px}.place-mission-note p{font-size:13px}.place-grid{grid-template-columns:1fr;gap:23px}.place-visual{height:165px}.place-copy{padding:25px 22px}.place-copy h2{font-size:27px}.place-copy>p{font-size:14px}.place-actions{gap:17px}.place-copy .eyebrow{font-size:11px}.program-booking-layout{display:flex;flex-direction:column;gap:30px}.program-booking-layout>div,.program-side{width:100%}.program-side{max-width:300px;margin:auto}.program-unconfigured{padding:30px 0}.session-choice{padding:20px 17px;gap:12px}.session-choice:has(input:checked){padding:19px 16px}.session-choice b{font-size:18px}.session-choice span span{font-size:12px}.my-coffee-reservation{grid-template-columns:1fr;gap:25px;padding:25px 22px;margin-bottom:35px}.my-coffee-reservation>img{max-width:270px}.my-coffee-reservation h2{font-size:29px}.my-coffee-reservation .button{width:100%;font-size:14px;justify-content:space-between}.program-ticket{display:block;padding:25px 22px}.program-ticket h3{font-size:26px}.program-ticket-action{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.ticket-reference{max-width:240px;width:100%;justify-self:center;font-size:31px}.program-settings{padding:24px 18px}.program-settings .admin-bar{display:block}.program-settings .admin-bar h2{font-size:26px}.program-settings .field-grid,.admin-session-row .field-grid{grid-template-columns:1fr}.admin-session-row{padding:20px 15px}.program-settings .button{font-size:13px}.program-settings input,.program-settings select{font-size:16px}.program-row{grid-template-columns:36px 1fr;column-gap:18px;row-gap:8px}.program-row h3{font-size:21px}.program-row>.tag{grid-column:2;justify-self:start}.program-num{font-family:inherit;font-weight:800;font-size:31px}.program-row p{font-size:13px;margin:0}.program-row .fine{font-size:12px}footer{padding:30px 22px;gap:26px}.footer-brand>img{width:62px}.footer-brand b{font-size:11px}.footer-brand span{font-size:10px}.footer-brand p{font-size:10px}.footer-links{gap:17px!important;font-size:11px}.organizer{padding-top:25px;width:100%;justify-content:center;gap:18px}.organizer img{height:93px}.organizer span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.walk-category{transition:none}.walk-category:hover{transform:none}}

header nav a:nth-child(2){display:inline-flex}.step-strip{border:0}.step-item{border-right:0;padding:24px 0 28px}.step-item:last-child{border-top:2px solid var(--navy)}
@media(max-width:600px){header nav{gap:12px;font-size:11px}.nav-instagram{font-size:10px}.step-item{padding:25px 0;border-top:1px solid var(--navy)}.step-item:last-child{border-top:1px solid var(--navy)}}

/* Place photos retain their original framing; cards without a photo retain their graphic header. */
.place-grid{align-items:start}.place-card{min-width:0}.place-figure{margin:0}.place-figure>img{display:block;width:100%;height:auto;max-width:100%;background:var(--cream)}.place-figure figcaption{padding:12px 18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere}.place-figure figcaption a{text-decoration:underline;text-underline-offset:3px}.place-figure figcaption a:hover{color:var(--navy)}
@media(max-width:600px){.place-figure figcaption{padding:11px 15px;font-size:10px;line-height:1.8}}

/* Festival identity and tap-to-select cafe picker. */
.wordmark .festival-wordmark{display:block;font-size:26px;font-weight:850;line-height:1.2;letter-spacing:-.055em;color:var(--navy);white-space:nowrap;text-align:center}
.wordmark .brand-caption{font-size:8px;letter-spacing:.11em;margin-top:7px}
.organizer img{mix-blend-mode:normal;object-fit:contain}
.shop-picker{position:relative}
.shop-trigger{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:52px;padding:14px 16px;border:1px solid var(--navy);border-radius:3px;background:var(--paper);color:var(--navy);text-align:left;font:inherit;cursor:pointer}
.shop-options{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);max-height:min(320px,45vh);overflow:auto;overscroll-behavior:contain;border:1px solid var(--navy);border-radius:3px;background:var(--paper);box-shadow:0 12px 28px #0002}
.shop-options[hidden]{display:none}
.shop-option{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 16px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--navy);font:inherit;text-align:left;cursor:pointer}
.shop-option.selected,.shop-option:hover,.shop-option:focus-visible{background:#fff0db}
.shop-option:disabled{opacity:.45;cursor:default}
@media(max-width:800px){.wordmark .festival-wordmark{font-size:25px}}
@media(max-width:600px){.wordmark .festival-wordmark{font-size:24px}.wordmark .brand-caption{font-size:7px}.shop-trigger,.shop-option{font-size:16px}}

.booking{overflow-anchor:none}

/* Brand stories and clear receipt guidance; no additional image downloads. */
.brand-invitation{font-size:13px;line-height:1.9;margin:24px 0 0;opacity:.85}.brand-stories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.brand-story{display:flex;flex-direction:column;border:1px solid var(--navy);padding:28px;background:var(--paper)}.brand-story-index{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:10px;letter-spacing:.1em}.brand-story-index>span:first-child{font-size:36px;font-weight:800;letter-spacing:-.05em}.brand-story h3{font-size:26px;line-height:1.3;margin:26px 0 18px;word-break:keep-all}.brand-story p{font-size:14px;line-height:1.85;margin:0 0 18px}.brand-story .brand-story-lead{font-weight:700}.brand-story-place{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-size:12px;line-height:1.7}.brand-hours{margin:22px 0 0}.brand-route{background:var(--cream)}.brand-side-programs{display:grid;grid-template-columns:1fr 1fr;gap:40px}.brand-side-programs article{border-top:2px solid var(--navy);padding-top:25px}.brand-side-programs h3{font-size:28px;margin:22px 0 18px}.brand-side-programs p{font-size:14px;line-height:1.85;max-width:520px}.brand-links{display:grid;gap:24px;flex-shrink:0}.brand-links .button{white-space:nowrap}.benefit-together{border-left:4px solid var(--orange);padding:22px 26px;margin-top:26px;background:var(--paper)}.benefit-together h2{font-size:24px;margin:0 0 12px}.benefit-together p{font-size:14px;line-height:1.9;max-width:880px;margin:0}.benefit-example{max-width:880px;padding-top:28px}.benefit-example p{font-size:14px;line-height:1.9}.onnuri-ready{padding:28px 30px;border:2px solid var(--navy);background:var(--navy);color:var(--cream);margin:0 0 32px}.onnuri-ready .tag{border-color:#fff1d67d;color:var(--cream)}.onnuri-ready h3{font-size:30px;line-height:1.35;margin:22px 0 16px}.onnuri-ready p{font-size:16px;line-height:1.8;margin:0;color:#ffb374;font-weight:700}.benefit-how li p{line-height:1.9}
@media(min-width:801px) and (max-width:1100px){header{gap:20px;padding-left:4%;padding-right:4%}header nav{gap:15px;font-size:12px}.brand-story{padding:22px}.brand-story h3{font-size:23px}.brand-story-index{font-size:9px}.brand-links .button{font-size:13px}}
@media(max-width:800px){.brand-stories{grid-template-columns:1fr;gap:20px}.brand-story h3{font-size:27px}.brand-story-index>span:first-child{font-size:32px}.brand-side-programs{gap:25px}.brand-links{margin-top:24px}.brand-links .button{margin-top:0}.brand-story p{max-width:650px}}
@media(max-width:600px){.brand-hero .program-display{font-size:39px}.brand-invitation{font-size:12px}.brand-story{padding:25px 22px}.brand-story h3{font-size:25px}.brand-story p{font-size:14px}.brand-side-programs{grid-template-columns:1fr;gap:32px}.brand-side-programs h3{font-size:25px}.benefit-together{padding:22px 20px}.benefit-together h2{font-size:22px;line-height:1.4}.benefit-together p,.benefit-example p{font-size:13px}.onnuri-ready{padding:25px 22px}.onnuri-ready h3{font-size:27px}.onnuri-ready p{font-size:15px}.brand-links .button{white-space:normal}.brand-links{gap:20px}}

/* Mobile poster rendering, cropped program cards and recoverable image loading. */
.festival-poster picture,.hero-art picture,.program-side picture{display:contents}
.walk-category .category-poster{position:relative;width:100%;aspect-ratio:1;min-height:0;padding:0;overflow:hidden;align-self:start}
.walk-category .category-poster img{position:absolute;top:0;left:0;width:100%;height:auto;max-height:none;object-fit:initial}
.copy-address{margin:0 0 14px;font-size:12px}.map-return-note{margin-top:10px}
.poster-unavailable{position:relative;min-height:220px}.poster-retry{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:12px;background:var(--cream);color:var(--navy);text-align:center}.poster-retry p{font-size:14px;line-height:1.7;margin:0}.poster-retry .button{font-size:13px;width:auto;padding:12px 16px}
@media(max-width:600px){.walk-category{grid-template-columns:40% 60%;align-items:start}.walk-category .category-poster{border-bottom:1px solid var(--navy)}.walk-category .category-copy{padding:18px 15px}.walk-category .category-copy h3{font-size:21px;margin:12px 0}.walk-category .category-copy p{font-size:12px}.walk-category .category-link{margin-top:10px}.category-poster .poster-retry{padding:10px;gap:8px}.category-poster .poster-retry p{font-size:11px}.category-poster .poster-retry .button{font-size:10px;padding:8px}}

@media(max-width:600px){.walk-category{padding:14px;grid-template-columns:38% 62%;align-items:center}.walk-category .category-poster{align-self:center;border:0}.walk-category .category-copy{padding:0 0 0 16px}}

/* Compact coffee identity and official Onnuri app identification. */
.program-hero .coffee-wordmark{width:180px;max-width:72%}
.my-coffee-reservation>img{width:180px;max-width:100%;justify-self:center}
.reward-desktop-break{display:block}
.onnuri-app-card{display:flex;align-items:center;gap:20px;margin-top:26px;padding:20px;background:var(--cream);color:var(--navy)}
.onnuri-app-card img{width:88px;height:88px;flex:none;border-radius:18px}
.onnuri-app-card strong{display:block;font-size:22px;line-height:1.4}
.onnuri-app-card span{display:block;font-size:12px;margin-top:5px}
.onnuri-app-card p{font-size:12px;color:var(--muted);font-weight:500;margin-top:8px;line-height:1.6}
.onnuri-downloads{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.onnuri-downloads .button{background:var(--cream);color:var(--navy);border-color:var(--cream);font-size:13px;padding:13px 17px}
@media(max-width:600px){.program-hero .coffee-wordmark{width:170px}.my-coffee-reservation>img{width:170px;justify-self:start}.reward-desktop-break{display:none}.onnuri-app-card{padding:12px;gap:12px;align-items:flex-start}.onnuri-app-card img{width:56px;height:56px;border-radius:12px}.onnuri-app-card strong{font-size:18px;white-space:nowrap}.onnuri-downloads{display:grid;grid-template-columns:1fr}.onnuri-downloads .button{width:100%;justify-content:center}}

.notification-field{margin:24px 0}.notification-field>label:first-child{display:block;font-weight:700;margin-bottom:10px}.notification-field input[type=tel]{display:block;width:100%;min-height:48px;padding:12px;border:1px solid currentColor;border-radius:0;background:#fff8e8;color:inherit;font:inherit;font-size:16px;box-sizing:border-box;margin-bottom:12px}

/* Deliberately contrasting official program colors. */
.coffee-hero .hero-art{background:#f5dfb8}
.sound-hero .hero-art{background:var(--orange)}
.benefit-card .benefit-stock{font-size:14px;font-weight:800;margin:-10px 0 20px;color:var(--orange)}
.benefit-card.plus .benefit-stock{color:inherit}
.benefit-card .receipt-sum{font-size:12px;font-weight:700;display:inline-block;padding:5px 9px;border:1px solid currentColor;margin:0 0 14px;line-height:1.6}

/* Native selection avoids custom focus/blur races in mobile WebViews. */
.shop-native-select{display:block;width:100%;max-width:100%;min-height:54px;padding:14px 12px;border:1px solid var(--navy);border-radius:3px;background:var(--paper);color:var(--navy);font:inherit;font-size:16px;line-height:1.5;appearance:auto;-webkit-appearance:menulist;touch-action:manipulation}

/* Sound tickets: program identity stays alongside the physical storage number. */
.artist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.artist-card{margin:0;min-width:0}.artist-card img{display:block;width:100%;height:auto;border-radius:16px}.artist-card figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 2px}.artist-card figcaption strong{font-size:24px}.artist-card figcaption span{font-size:13px}.program-ticket-action .ticket-reference{font-size:72px;line-height:1.1;letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ticket-number-label{display:block;margin-top:18px;font-size:16px;font-weight:700}.ticket-instructions{font-size:14px;line-height:1.7;margin:18px 0;word-break:keep-all}.sound-cancellation{margin-top:18px}.sound-cancellation .fine{margin:12px 0 0}.onsite-guide ol{padding-left:24px}.onsite-guide li{padding:10px 0}.onsite-guide p{font-size:14px;line-height:1.8;margin:8px 0 0}.booth-number strong{display:block;font-size:64px;line-height:1.2}.program-ticket h3{word-break:keep-all}.program-ticket-action{min-width:0}
@media(max-width:600px){.artist-grid{grid-template-columns:1fr;gap:32px}.artist-card{max-width:420px;margin:auto}.artist-card figcaption strong{font-size:22px}.program-ticket-action .ticket-reference{font-size:80px}.program-ticket{gap:24px}.onsite-guide{padding:20px}}

/* Local consolidated review: official poster wordmark and venue guidance. */


.location-card{padding:22px;background:var(--cream);border-left:3px solid var(--orange);margin:0 0 26px;line-height:1.8}
.location-card.compact{margin:20px 0 0;padding:16px;font-size:13px;max-width:470px}
.location-card p{margin:10px 0}.venue-guide{background:var(--cream)}.venue-inset{padding:34px;margin-top:28px}
.venue-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:25px 0}
.venue-points article{border-top:1px solid var(--navy);padding-top:24px}.venue-points h3{font-size:23px;line-height:1.5}.venue-points p{line-height:1.85}
.award-section{background:var(--navy);color:var(--cream)}.award-section .tag{color:var(--cream);border-color:var(--cream)}.award-details{border-top:1px solid #ffffff55;padding-top:26px;line-height:1.9}.brand-participants{border-top:1px solid var(--line)}
.section-head.aligned{align-items:start}.section-head.aligned>p{margin-top:0;line-height:1.9}.program-row p{margin:0;line-height:1.7}.program-row>div{align-self:start}
@media(max-width:600px){.venue-points{grid-template-columns:1fr}.venue-inset{padding:24px 20px}.venue-points h3{font-size:21px}}

.venue-layout img{display:block;width:100%;max-width:1200px;height:auto;border:1px solid var(--line);margin:25px 0}.venue-layout h2{margin-top:35px}

.booth-map{margin:24px 0}.booth-map img{display:block;width:100%;height:auto;border-radius:16px}.booth-map figcaption{font-size:13px;color:var(--muted);margin-top:8px}.venue-address{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:24px 0}.venue-address p{margin:0;line-height:1.7}.refund-map-heading{margin-top:48px}.location-card .venue-address .button{font-size:14px}.location-card .venue-address p{font-size:15px}@media(max-width:600px){.venue-address{align-items:flex-start;flex-direction:column;gap:12px}.booth-map{margin:20px -8px}.booth-map img{border-radius:10px}}

/* Consistent landmark frames, with source attribution below the card content. */
.place-grid{align-items:stretch}.place-card{display:flex;flex-direction:column}
.place-figure{flex:none;aspect-ratio:4/3;overflow:hidden}
.place-figure>img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}
.place-copy{flex:1}.place-credit{padding:14px 18px;border-top:1px solid var(--line);font-size:11px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.place-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.place-credit{padding:12px 22px;font-size:10px}}

/* Text wordmark stays crisp at every scale, without a poster-colored rectangle. */
.wordmark{flex-shrink:0;background:none}.wordmark .festival-wordmark-en{display:grid;gap:4px;text-align:left;background:none;line-height:1;letter-spacing:-.045em;font-size:19px;font-weight:850}
.wordmark .festival-wordmark-en>span:first-child{font-size:13px;letter-spacing:.18em;color:var(--orange)}
.wordmark .festival-wordmark-en>span:last-child{color:var(--navy)}
.wordmark .brand-caption{display:block;margin-top:9px;font-size:8px;letter-spacing:.14em;text-align:left;color:var(--navy)}
@media(max-width:600px){.wordmark .festival-wordmark-en{font-size:20px}.wordmark .festival-wordmark-en>span:first-child{font-size:12px}.wordmark .brand-caption{text-align:center}.wordmark .festival-wordmark-en{text-align:center}}

/* Address and directions stay together above each booth map. */
.venue-address{display:grid;grid-template-columns:1fr;align-items:start;gap:14px;padding:22px 24px;background:var(--paper);border:1px solid var(--line);border-radius:12px;margin:24px 0}.venue-address-name{display:grid;gap:5px}.venue-address-name b{font-size:19px}.venue-address-name span{font-size:15px}.venue-address-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.venue-address-actions .button{margin:0;min-height:48px}.venue-address-actions .tiny-link{padding:10px 0}.location-card .venue-address{padding:16px;margin:16px 0}.venue-guide>.tiny-link{display:inline-block;margin-top:12px}.concert-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;background:#efe1c9}.concert-story h2{font-size:clamp(32px,4.4vw,60px);line-height:1.3;margin:24px 0}.concert-story p{line-height:1.9;word-break:keep-all}.concert-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.concert-facts span{font-size:13px;padding:7px 12px;border:1px solid #b8a58a;border-radius:30px}.concert-mood{margin:0;min-width:0}.concert-mood img{display:block;width:100%;height:auto;max-height:540px;object-fit:cover;border-radius:120px 120px 12px 12px}.concert-mood figcaption{font-size:11px;line-height:1.6;margin-top:10px;color:var(--muted)}.concert-mood a{text-decoration:underline}.concert-how{border-top:1px solid var(--line)}.concert-how ol{list-style:none;counter-reset:concert;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:28px 0 0}.concert-how li{counter-increment:concert;border-top:1px solid var(--line);padding-top:20px}.concert-how li:before{content:'0' counter(concert);display:block;color:var(--orange);font-size:30px;font-weight:800;margin-bottom:12px}.concert-how b{font-size:20px}.concert-how p{line-height:1.8;word-break:keep-all}
@media(max-width:700px){.venue-address{padding:18px}.venue-address-actions{display:grid;grid-template-columns:1fr;width:100%;gap:2px}.venue-address-actions .button{width:100%;font-size:14px;justify-content:center}.venue-address-actions .tiny-link{text-align:left;justify-self:start}.concert-intro{grid-template-columns:1fr;gap:28px}.concert-story p br{display:none}.concert-how ol{grid-template-columns:1fr;gap:20px}.concert-mood img{max-height:420px}.concert-mood{max-width:480px;width:100%}}

.booking-detail-shortcut{padding:24px 5%;display:flex;gap:18px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line)}.booking-detail-shortcut p{font-size:14px;margin:0}.playlist-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.playlist-story-grid article{background:var(--cream);border:1px solid var(--line);border-radius:14px;overflow:hidden}.playlist-story-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.playlist-story-grid article>div{padding:26px}.playlist-story-grid h3{font-size:25px;line-height:1.5;margin:14px 0}.playlist-story-grid p{line-height:1.9;word-break:keep-all}#program-details{scroll-margin-top:20px}.venue-address-actions{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;align-items:start;gap:6px}.venue-address-actions .button{width:100%;justify-content:center}.venue-address-actions .tiny-link{justify-self:start}
@media(max-width:700px){.playlist-story-grid{grid-template-columns:1fr}.playlist-story-grid article>div{padding:22px}.playlist-story-grid h3{font-size:23px}.booking-detail-shortcut{display:grid;gap:10px;padding:22px}.booking-detail-shortcut .button{width:100%;justify-content:center}}

/* Separate sound experiences and public, individually addressable program guides. */
.sound-program-block{margin:36px 3%;border:1px solid var(--navy);border-radius:18px;overflow:hidden}
.sound-program-label{padding:32px 4%;display:grid;gap:12px;background:var(--orange);color:var(--navy);border-bottom:1px solid var(--navy)}
.sound-program-label>span{font-size:14px;font-weight:750;letter-spacing:.08em}.sound-program-label>strong{font-size:clamp(26px,3.2vw,42px);line-height:1.35;word-break:keep-all}.sound-program-label>p{font-size:16px;line-height:1.7;margin:0}
.silent-block>.sound-program-label{background:var(--navy);color:var(--cream)}.sound-program-block .section{padding:40px 4%}.sound-specific-action{padding:0 4% 36px}.sound-program-block .concert-how h2{font-size:28px}.sound-program-block .section-head h2{font-size:clamp(28px,3.4vw,44px)}
.sound-program-block .sound-artists{background:#efe1c9}.silent-block .concert-intro{border-bottom:1px solid var(--line)}
.reservation-manage{border:2px solid var(--navy);border-radius:12px;background:var(--cream);padding:24px;margin:26px 0;color:var(--navy);text-align:left}
.reservation-manage h2,.reservation-manage h3{font-size:22px;line-height:1.4;margin:0 0 12px}.reservation-manage p{font-size:15px;line-height:1.8;margin:12px 0;word-break:keep-all}.reservation-manage .manage-note{color:var(--muted)}
.reservation-manage .manage-button{font-size:17px;font-weight:750;min-height:54px;padding:14px 22px;border-width:2px;margin-top:6px;justify-content:center;width:100%}.reservation-manage .manage-deadline{font-size:14px;margin-bottom:0}.active-booking-manage{display:flex;margin-top:16px;min-height:52px;justify-content:center}
.guide-back{display:inline-block;font-size:15px;font-weight:650;padding:12px 0;text-decoration:underline;text-underline-offset:4px}.program-guide>.guide-back{margin-bottom:26px}.program-guide h1{font-size:clamp(32px,4.5vw,60px);line-height:1.28;word-break:keep-all;overflow-wrap:anywhere;max-width:1000px;margin:20px 0}.guide-lead{font-size:clamp(18px,2vw,24px);line-height:1.7;max-width:850px;word-break:keep-all}
.guide-facts{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;padding:24px 0;margin:30px 0;border-top:1px solid var(--navy);border-bottom:1px solid var(--navy)}.guide-facts>div{display:grid;gap:10px}.guide-facts span{font-size:13px;color:var(--muted)}.guide-facts strong{font-size:17px;line-height:1.6;word-break:keep-all}
.guide-body{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;margin:40px 0}.guide-body h2,.guide-participation h2{font-size:25px;margin:0 0 20px;line-height:1.4}.guide-body p,.guide-body li,.guide-participation p{font-size:17px;line-height:1.9;word-break:keep-all}.guide-body p{margin:0 0 20px}.guide-body aside{background:var(--cream);padding:28px;border-radius:12px}.guide-body ol{margin:0;padding-left:24px}.guide-body li{padding:0 0 14px 8px}.guide-body li:last-child{padding-bottom:0}.guide-participation{border-top:1px solid var(--line);padding-top:30px}.guide-participation p{max-width:850px}.guide-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:40px;padding-top:25px;border-top:1px solid var(--line)}
.program-guide-row{grid-template-columns:60px minmax(0,1fr) minmax(130px,.4fr) auto}.program-guide-row h3{margin:10px 0}.program-guide-row>div>p{font-size:15px;line-height:1.7;color:var(--muted)}.program-category-label{font-size:11px;letter-spacing:.1em;font-weight:700}.guide-row-link{min-height:48px;padding:12px 18px;font-size:14px;white-space:nowrap}
@media(max-width:800px){.guide-body{grid-template-columns:1fr;gap:24px}.program-guide-row{grid-template-columns:36px minmax(0,1fr)}.program-guide-row>p{grid-column:2}.program-guide-row>.guide-row-link{grid-column:2;justify-self:start}.guide-facts{grid-template-columns:1fr}}
@media(max-width:600px){.sound-program-block{margin:24px 12px;border-radius:12px}.sound-program-label{padding:24px 20px}.sound-program-block .section{padding:30px 20px}.sound-specific-action{padding:0 20px 28px}.sound-specific-action .button{display:flex;width:100%;justify-content:center;font-size:14px}.reservation-manage{padding:20px;margin:22px 0}.reservation-manage .manage-button{font-size:16px}.program-guide{padding:28px 20px}.guide-body p,.guide-body li,.guide-participation p{font-size:16px}.guide-body aside{padding:22px}.guide-bottom{align-items:stretch;flex-direction:column;gap:12px}.guide-bottom .button,.guide-participation .button{display:flex;justify-content:center;font-size:14px;width:100%}.program-guide-row{gap:16px}.program-guide-row h3{font-size:22px;line-height:1.4}}

/* October 20 editorial review: official palette, supplied plan images, booth 9. */
.program-detail-link{margin-top:20px;min-height:48px;align-self:flex-start}.award-section .program-detail-link{background:var(--cream);color:var(--navy);border-color:var(--cream)}.coffee-guide-action{padding:0 5% 30px}.sound-specific-action{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.sound-specific-action .program-detail-link{margin-top:0}.headphone-shortcut{font-size:14px;margin-top:14px;min-height:48px;justify-content:center}#headphone-guide{scroll-margin-top:24px;outline-offset:-4px}.concert-mood img{border-radius:16px;object-fit:contain;max-height:none}
.guide-gallery{display:grid;grid-template-columns:minmax(0,760px);gap:24px;margin:34px 0}.guide-gallery.has-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-gallery figure{margin:0;min-width:0}.guide-gallery img{display:block;width:100%;height:auto;border-radius:14px}.guide-gallery figcaption{display:grid;gap:7px;font-size:16px;line-height:1.6;margin-top:14px}.guide-gallery figcaption span{font-size:12px;color:var(--muted)}.guide-existing-image{margin:30px 0;max-width:480px}.guide-existing-image img{display:block;max-width:100%;height:auto;border-radius:12px}.guide-existing-image figcaption{font-size:12px;line-height:1.7;margin-top:10px}.guide-details{padding:30px 0;border-top:1px solid var(--line)}.guide-details>h2{font-size:28px;margin:0 0 24px}.guide-details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.guide-details article{padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--cream)}.guide-details h3{font-size:21px;line-height:1.5;margin:0 0 14px;word-break:keep-all}.guide-details p{font-size:16px;line-height:1.9;word-break:keep-all;margin:0}.guide-onsite{padding:24px;border-left:4px solid var(--orange);background:var(--cream);margin:24px 0}.guide-onsite h3{font-size:21px;margin:0 0 12px}.guide-onsite p{margin:0}
@media(max-width:700px){.guide-gallery.has-pair,.guide-details>div{grid-template-columns:1fr}.guide-details article{padding:20px}.guide-gallery{gap:28px}.headphone-shortcut{width:100%;font-size:13px}.sound-specific-action{align-items:stretch}.guide-onsite{padding:20px}}

/* Review refinement: supporting LAB cards and distinct LPC place/music labels. */
.guide-details-coffee-lab .guide-supporting{background:#f2dfc7;border-color:#dbc4a6}
.guide-details-lpc h3{display:grid;gap:12px}.guide-place-label{display:block;width:fit-content;max-width:100%;padding:7px 12px;background:var(--navy);color:var(--cream);border-radius:6px;font-size:14px;line-height:1.6}.guide-music-label{display:block;color:#994114;font-size:23px;line-height:1.5}
.program-guide>.sound-artists{padding:30px;border-radius:14px;background:#efe1c9;margin:36px 0}.program-guide>.venue-guide{padding:30px 0}.program-guide>.headphone-shortcut{margin-bottom:18px}
.marche-map-guide{padding:32px 0;border-top:1px solid var(--line)}.marche-map-guide h2{font-size:28px;line-height:1.4;word-break:keep-all}.marche-map-guide p{line-height:1.9;word-break:keep-all}.marche-map-guide figure{margin:24px 0}.marche-map-guide img{display:block;width:100%;height:auto;border-radius:12px}.marche-map-guide figcaption{font-size:13px;color:var(--muted);margin-top:10px}
@media(max-width:700px){.program-guide>.sound-artists{padding:24px 18px}.guide-music-label{font-size:21px}.marche-map-guide h2{font-size:25px}}

/* Customer QA: consistent card frames and explicit metadata/action rows. */
.artist-image{aspect-ratio:3/4;width:100%;display:grid;place-items:start center;overflow:hidden;border-radius:16px}
.artist-image img{width:100%;height:100%;object-fit:contain;object-position:top center;border-radius:0}
.artist-card figcaption{min-height:64px;flex-wrap:wrap;row-gap:5px}.artist-card figcaption strong{line-height:1.4}.artist-card figcaption span{line-height:1.6}
.brand-side-programs{align-items:stretch}.brand-side-programs article{display:flex;flex-direction:column;min-width:0}.brand-side-programs article>.tag{align-self:flex-start;font-size:12px;max-width:100%;white-space:normal}.brand-side-programs article>p{flex:1;margin:0 0 22px}.brand-side-programs article>.fine{display:block;margin:0 0 20px;line-height:1.8}
.program-card-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.program-card-actions .button{margin:0;min-height:52px;font-size:15px;justify-content:center;white-space:normal}
.section-head.aligned{align-items:end}.section-head.aligned>p{margin:0}
@media(max-width:700px){.program-card-actions{display:grid;grid-template-columns:1fr}.program-card-actions .button{width:100%}.brand-side-programs article>p{flex:none}.section-head.aligned{align-items:start}.artist-card figcaption strong{font-size:22px}}

/* Whole-program hub: one selected subpage, with a shared banner navigation. */
.program-hub{padding-top:20px}
nav.program-view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;padding:0;margin:0 0 44px;overflow:visible;white-space:normal}
.program-view-banner{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;padding:28px 58px 28px 28px;border:1px solid var(--navy);text-decoration:none;background:var(--cream);color:var(--navy)}
.program-view-banner.selected{background:var(--navy);color:var(--cream)}
.program-view-banner .view-kicker{font-size:11px;letter-spacing:.13em;font-weight:700}
.program-view-banner strong{font-size:30px;line-height:1.3;letter-spacing:-.04em}
.program-view-banner>span:last-of-type{font-size:14px;line-height:1.6;word-break:keep-all}
.program-view-banner b{position:absolute;right:25px;top:30px;font-size:28px;color:var(--orange)}
.program-view-banner:focus-visible,.schedule-dates a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.program-view-banner:hover{box-shadow:inset 0 -4px var(--orange)}
nav.schedule-dates{display:flex;gap:12px;justify-content:flex-start;padding:0;margin-bottom:38px;overflow:visible}
.schedule-dates a{display:flex;gap:12px;align-items:baseline;border:1px solid var(--navy);padding:15px 24px;font-size:25px;font-weight:800;text-decoration:none}
.schedule-dates a span{font-size:14px;font-weight:500}
.schedule-dates a[aria-current]{background:var(--orange);color:var(--cream);border-color:var(--orange)}
.schedule-heading h2{font-size:32px;line-height:1.4;margin:15px 0}.schedule-heading>p{font-size:15px;line-height:1.8;margin-bottom:30px}
.schedule-events{list-style:none;margin:0;padding:0;border-top:2px solid var(--navy)}
.schedule-event{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;border-bottom:1px solid var(--line);padding:28px 0}
.schedule-time{font-size:25px;font-weight:800;font-variant-numeric:tabular-nums}.schedule-time span{display:block;font-size:16px;font-weight:500;margin-top:5px}
.schedule-event h3{font-size:23px;line-height:1.4;margin:0 0 8px;word-break:keep-all}.schedule-event p{font-size:15px;line-height:1.7;margin:0 0 10px}.schedule-place{font-size:13px;color:var(--muted)}
.schedule-ongoing{margin-top:50px}.schedule-ongoing h2{font-size:27px;line-height:1.4}.schedule-ongoing ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0;margin:24px 0}
.schedule-ongoing li{padding:22px;background:#1e2a6c09;border:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.schedule-ongoing li strong{font-size:18px;line-height:1.5}.schedule-ongoing li>span{color:var(--orange);font-weight:700}.schedule-ongoing p{font-size:13px;margin:0;line-height:1.5}
.schedule-note{margin-top:36px;padding:24px;border-left:3px solid var(--orange)}.schedule-note h3{font-size:21px;margin:0 0 15px}.schedule-note p{font-size:14px;line-height:1.8;margin:8px 0}
@media(min-width:801px) and (max-width:1250px){header{flex-wrap:wrap;justify-content:center}header nav{justify-content:center;gap:18px;flex-wrap:wrap}}
@media(max-width:600px){nav.program-view-switch{gap:10px;margin-bottom:30px}.program-view-banner{padding:20px 14px;gap:9px}.program-view-banner strong{font-size:22px}.program-view-banner .view-kicker{font-size:9px;letter-spacing:.07em}.program-view-banner>span:last-of-type{font-size:12px}.program-view-banner b{position:static;font-size:24px;align-self:flex-end;line-height:1}.program-hub{padding-top:12px}.schedule-dates a{padding:13px 17px;font-size:23px;gap:9px}.schedule-dates a span{font-size:12px}.schedule-heading h2{font-size:26px}.schedule-event{grid-template-columns:76px minmax(0,1fr);gap:17px;padding:23px 0}.schedule-time{font-size:22px}.schedule-time span{font-size:13px}.schedule-event h3{font-size:19px}.schedule-event p{font-size:13px}.schedule-place{font-size:12px;line-height:1.7;display:block}.schedule-ongoing ul{grid-template-columns:1fr}.schedule-ongoing h2{font-size:24px}.schedule-note{padding:18px}.schedule-note p{font-size:13px}}

.kogfe-poster{margin:0 auto 48px;max-width:640px}.kogfe-poster img{display:block;width:100%;height:auto}.kogfe-poster figcaption{font-size:12px;line-height:1.6;margin-top:12px;text-align:center}.footer-contact{display:flex;flex-basis:100%;justify-content:center;gap:18px;align-items:center;border-top:1px solid var(--line);padding:24px 0 0;font-size:14px;line-height:1.7}.footer-contact a{text-decoration:underline;text-underline-offset:4px}@media(max-width:600px){.footer-contact{flex-direction:column;align-items:flex-start;gap:8px;font-size:13px}.kogfe-poster{margin-bottom:32px}}

.staff-box{max-width:850px}.staff-dashboard{margin-bottom:30px;text-align:left}.staff-dashboard article{border-top:1px solid var(--line);padding:12px 0 20px}.staff-dashboard h4{font-size:19px;margin:16px 0}.staff-summary-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.staff-summary-counts span{display:block;font-size:12px;margin-bottom:10px}.staff-summary-counts strong{font-size:23px}.staff-dashboard summary{padding:14px 0;cursor:pointer}@media(max-width:600px){.staff-summary-counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.staff-dashboard .admin-bar{gap:14px}}

.reservation-manage .manage-deadline{margin:20px 0 8px;line-height:1.7}.manage-deadline strong{font-size:16px}.manage-deadline span{font-size:12px;color:var(--muted)}

.booking-experience{padding:24px 26px;margin:0 0 32px;border-left:4px solid var(--orange);background:var(--cream);color:var(--navy)}.booking-experience h3{font-size:21px;line-height:1.5;margin:0 0 12px;word-break:keep-all}.booking-experience p{font-size:15px;line-height:1.85;margin:0;word-break:keep-all;overflow-wrap:anywhere}.booking-experience p+p{margin-top:12px}@media(max-width:600px){.booking-experience{padding:20px 18px;margin-bottom:26px}.booking-experience h3{font-size:19px}.booking-experience p{font-size:14px}}

/* Timetable artwork 20261021 */
nav.program-view-switch>a.program-view-banner,nav.schedule-dates>a{display:flex}
.schedule-artwork{display:block;margin:24px auto 0;max-width:1600px}
.schedule-artwork img{display:block;width:100%;height:auto}
.schedule-text-details{margin-top:24px;border-top:1px solid var(--navy);padding-top:18px}
.schedule-text-details>summary{cursor:pointer;font-weight:750;padding:12px 0}
.schedule-broadcast{padding:20px;background:var(--cream);line-height:1.8}
.schedule-lpc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;list-style:none}
.schedule-lpc li{background:#e9eaf2;padding:20px}
.schedule-lpc span{display:block;font-size:13px;color:#67665f;font-weight:500;margin-bottom:8px}
.schedule-lpc strong{font-size:16px;color:var(--navy)}
.schedule-revision{margin-top:18px;color:var(--muted)}
@media(max-width:720px){.schedule-lpc{grid-template-columns:1fr}.schedule-artwork{margin-top:16px}.timetable-panel{min-width:0}}

@media(max-width:600px){.benefits-more{width:100%;font-size:16px;padding:16px 18px}}

/* Poster-derived original organizer marks, transparent on the existing cream. */
.festival-partners{flex-basis:100%;width:100%;border-top:1px solid var(--line);padding:34px 0 4px;margin-top:4px;display:grid;gap:28px}
.partner-row{display:grid;grid-template-columns:48px 1fr;gap:20px;align-items:center}
.partner-row h2{font-family:inherit;font-size:13px;letter-spacing:.08em;line-height:1.4;margin:0;font-weight:750}
.partner-row ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:26px 32px;flex-wrap:wrap}
.partner-row li{display:flex;align-items:center;min-height:38px}
.partner-row img{display:block;width:180px;height:auto;max-width:100%;object-fit:contain}
.partner-row .partner-donggu img{width:225px}.partner-row .partner-gwangjizu img{width:250px}.partner-row .partner-merchants img{width:205px}
@media(max-width:600px){.festival-partners{padding:28px 0 8px;gap:30px}.partner-row{display:block}.partner-row h2{font-size:12px;margin:0 0 16px}.partner-row ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.partner-row li{min-width:0;min-height:32px}.partner-row img,.partner-row .partner-donggu img{width:100%}.partner-row:nth-child(2) ul{grid-template-columns:1fr;gap:20px}.partner-row .partner-gwangjizu img{width:250px}.partner-row .partner-merchants img{width:205px}}

.award-tasting-notice{border:1px solid currentColor;border-left-width:4px;padding:24px 28px;margin:28px 0;line-height:1.85}.award-tasting-notice h3{font-size:20px;line-height:1.4;margin:0 0 18px}.award-tasting-notice p{font-size:15px;max-width:78ch;margin:10px 0}.award-tasting-notice p:last-child{margin-bottom:0}@media(max-width:600px){.award-tasting-notice{padding:21px 18px;margin:24px 0}.award-tasting-notice h3{font-size:18px}.award-tasting-notice p{font-size:14px;line-height:1.85}}

.participating-brands{margin:36px 0;border-top:1px solid currentColor;padding-top:28px}.participating-brands-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:24px}.participating-brands-heading h2{font-family:inherit;font-size:25px;line-height:1.4;margin:0}.participating-brands-heading span{font-size:12px;white-space:nowrap;opacity:.8}.participating-brands ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:26px}.participating-brands li{font-size:14px;line-height:1.7;padding:12px 0;border-bottom:1px solid #8885;overflow-wrap:anywhere;word-break:keep-all}.coffee-brands-section{padding-top:0;padding-bottom:0}.coffee-brands-section .participating-brands{margin:0 0 24px}.award-details .participating-brands li{border-color:#ffffff33}@media(max-width:600px){.participating-brands{margin:28px 0;padding-top:23px}.participating-brands-heading h2{font-size:21px}.participating-brands ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.participating-brands li{font-size:13px;padding:11px 0}}

/* Native AI vector paths. Cooperation preserves all six source marks. */
.partner-row .partner-naver img{width:128px}.partner-row .partner-donggu-culture img{width:158px}.partner-row .partner-community img{width:138px}.partner-row .partner-crew img{width:170px}.partner-row .partner-acc-foundation img,.partner-row .partner-acc img{width:210px}
@media(max-width:600px){.partner-row:nth-child(3) ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}.partner-row:nth-child(3) li{min-height:48px}.partner-row:nth-child(3) img{max-width:100%;height:auto}.partner-row .partner-naver img{width:120px}.partner-row .partner-community img{width:130px}}

/* Naver supplied banner and accessible HTML copy. */
.naver-local-growth{margin:40px 0;background:var(--cream);border:1px solid var(--navy);overflow:hidden}
.naver-local-growth>img{display:block;width:100%;height:auto}
.naver-local-growth-copy{padding:32px 36px 36px;color:var(--navy)}
.naver-local-growth-copy h2{font-family:inherit;font-size:27px;line-height:1.4;margin:0 0 20px;word-break:keep-all}
.naver-local-growth-copy p{font-size:16px;line-height:1.85;margin:0 0 18px;word-break:keep-all;overflow-wrap:anywhere}
.naver-local-growth-link{margin-top:6px;min-height:48px;background:#03c75a;color:#092a16;border-color:#092a16}
.naver-local-growth-link:hover{background:#092a16;color:#fff}
.naver-local-growth-section{padding-bottom:0}.naver-local-growth-section .naver-local-growth{margin:0}
@media(min-width:901px){.naver-local-growth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;background:#06f430}.naver-local-growth-copy{background:var(--cream);align-self:stretch;padding:32px}.naver-local-growth>img{align-self:center}}
@media(max-width:600px){.naver-local-growth{margin:30px 0}.naver-local-growth-copy{padding:24px 20px 26px}.naver-local-growth-copy h2{font-size:23px;margin-bottom:16px}.naver-local-growth-copy p{font-size:15px;line-height:1.8}.naver-local-growth-copy p br{display:none}.naver-local-growth-link{display:flex;width:100%;justify-content:center;font-size:16px}}

/* Refund eligibility and booth opening hours, confirmed 2026-10-22. */
.benefit-card .benefit-description{font-size:13px;line-height:1.8;margin:0;max-width:540px}.benefit-card .benefit-description strong{display:inline-block;margin-bottom:6px;font-size:15px;line-height:1.7}.benefit-card>p.benefit-hours{font-size:12px;line-height:1.7;margin:20px 0 0;padding-top:12px;border-top:1px solid currentColor;max-width:none}

/* Shared silent concert arrival guide: booking, reservation and program information. */
.concert-admission{border:1px solid var(--navy);border-top:5px solid var(--orange);background:var(--paper);padding:30px;margin:24px 0;text-align:left;min-width:0}.concert-admission h2,.concert-admission h4{font-size:28px;line-height:1.35;letter-spacing:-.035em;margin:16px 0 22px}.concert-admission .eyebrow{font-size:10px;letter-spacing:.1em}.concert-arrival-times{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.concert-arrival-times>span{display:flex;flex-direction:column;gap:6px;padding:16px 12px;background:var(--navy);color:var(--cream);font-size:13px}.concert-arrival-times b{font-size:25px;line-height:1.2}.concert-admission dl{margin:0}.concert-admission dl>div{padding:18px 0;border-top:1px solid var(--line)}.concert-admission dt{font-size:16px;font-weight:800;margin-bottom:9px}.concert-admission dd{margin:0;font-size:14px;line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}.concert-admission dd a{text-decoration:underline;text-underline-offset:3px}.concert-admission dd strong{font-weight:800}.concert-admission .concert-id-notice{font-size:13px;line-height:1.85;background:#fff0d3;padding:16px;border-left:3px solid var(--orange);margin:8px 0 0}.concert-admission.compact{padding:24px}.concert-admission.compact h4{font-size:24px}.concert-entry-section{padding-top:0;padding-bottom:0}.concert-entry-section>.concert-admission{margin:0}.program-ticket:has(.concert-admission){align-items:flex-start}.program-ticket:has(.concert-admission)>div:first-child{flex:1;min-width:0}
@media(max-width:600px){.concert-admission,.concert-admission.compact{padding:22px 18px;margin:20px 0}.concert-admission h2,.concert-admission.compact h4{font-size:25px}.concert-arrival-times{gap:8px}.concert-arrival-times b{font-size:22px}.concert-arrival-times>span{font-size:12px;padding:15px 10px}.concert-admission .eyebrow{font-size:8px;letter-spacing:.08em}.concert-admission dd{font-size:13px}}

.one-shop-instagram{background:var(--navy);color:var(--cream);padding:32px;margin:28px 0;display:flex;align-items:center;justify-content:space-between;gap:32px}.one-shop-instagram h2{font-size:28px;line-height:1.4;margin:18px 0 12px}.one-shop-instagram p{font-size:14px;line-height:1.85;margin:0}.one-shop-instagram .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.06em}.one-shop-instagram .button{background:var(--cream);color:var(--navy);flex-shrink:0;font-size:13px}@media(max-width:800px){.one-shop-instagram{display:block;padding:26px}.one-shop-instagram .button{margin-top:24px;white-space:normal;text-align:center;line-height:1.7}.one-shop-instagram h2{font-size:25px}}

.playlist-arrival .concert-arrival-times b{font-size:23px}.playlist-arrival-schedule{margin:16px 0 22px}.playlist-arrival-schedule h3{font-size:16px;margin:0 0 12px}.playlist-arrival-schedule table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px}.playlist-arrival-schedule th,.playlist-arrival-schedule td{padding:12px 8px;border-bottom:1px solid var(--line);text-align:left;word-break:keep-all}.playlist-arrival-schedule thead th{font-size:12px;background:#fff0d3}@media(max-width:600px){.playlist-arrival .concert-arrival-times b{font-size:18px}.playlist-arrival-schedule table{font-size:12px}.playlist-arrival-schedule th,.playlist-arrival-schedule td{padding:10px 5px}.playlist-arrival-schedule thead th{font-size:11px}}

.playlist-arrival .concert-arrival-times{grid-template-columns:repeat(3,minmax(0,1fr))}.playlist-arrival .concert-arrival-times b{font-size:20px;word-break:keep-all}@media(max-width:600px){.playlist-arrival .concert-arrival-times{grid-template-columns:1fr}.playlist-arrival .concert-arrival-times>span{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.playlist-arrival .concert-arrival-times b{font-size:18px}.playlist-arrival-schedule th,.playlist-arrival-schedule td{padding:10px 3px;font-size:11px}}

/* Playlist participation update */
.concert-admission .playlist-format-notice{margin:8px 0 24px}.playlist-notice-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-bottom:12px}.playlist-notice-heading>strong{font-size:19px;line-height:1.45;font-weight:800}.playlist-notice-heading time{font-size:12px;white-space:nowrap}.playlist-format-notice>p{margin:8px 0 0}
