.reg-page{position:relative;padding:42px max(40px,calc((100% - 1160px) / 2)) 100px;background-image:var(--g-lights-paper)}.reg-back{display:inline-flex;align-items:center;gap:10px;padding:6px 0 9px;font-size:13px;font-weight:700;letter-spacing:.01em;color:var(--ink);background:var(--ul) no-repeat 0 100% /32px 3px;transition:background-size .35s var(--ease-brush),color var(--t-hover)}.reg-back:focus-visible,.reg-back:hover{background-size:100% 3px;color:var(--plum)}.reg-back svg{transition:translate var(--t-icon)}.reg-back:hover svg{translate:-3px 0}.reg-intro{margin:36px 0 52px;max-width:900px}.reg-eyebrow,.reg-section-heading>span{display:flex;align-items:center;gap:10px;font:700 12px/1.5 var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--graphite)}.reg-eyebrow:before,.reg-section-heading>span:before{content:"";flex-shrink:0;width:22px;height:5px;border-radius:999px;background:var(--g-sun)}.reg-intro h1{margin:14px 0 18px;font:800 clamp(44px,5.2vw,74px) /1.02 var(--font-display);letter-spacing:-.03em;text-wrap:balance;overflow-wrap:anywhere}.reg-intro p{max-width:580px;font-size:16px;line-height:1.75;color:var(--graphite)}.reg-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:56px;align-items:start}.reg-aside{position:sticky;top:112px}.reg-steps{position:relative;display:grid;gap:24px;margin-bottom:32px}.reg-steps:before{content:"";position:absolute;left:19px;top:24px;bottom:24px;border-left:2px dotted var(--violet);opacity:.3}.reg-step{position:relative;display:flex;gap:14px;align-items:center;color:var(--graphite)}.reg-step>span{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--lilac);color:var(--graphite);font:800 13px/1 var(--font-display);letter-spacing:.02em;transition:background var(--t-hover),color var(--t-hover),box-shadow var(--t-hover)}.reg-step.current{color:var(--ink)}.reg-step.current>span{background:var(--g-sun);color:var(--ink);box-shadow:0 10px 24px -8px #ff8a3d99}.reg-step.done>span{background:var(--inkteal);color:#fff}.reg-step strong{display:block;font-size:15px;line-height:1.3}.reg-step small{font-size:12px}.reg-festival-card{position:relative;overflow:hidden;border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow-print)}.reg-festival-card img{display:block;width:100%;height:160px;object-fit:cover;transition:scale .7s cubic-bezier(.2,.75,.25,1)}@media (hover:hover){.reg-festival-card:hover img{scale:1.05}}.reg-festival-card>div{position:relative;padding:18px 20px 20px;background:var(--card)}.reg-festival-card span{display:block;font:700 12px/1.5 var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--graphite)}.reg-festival-card .reg-festival-name{margin:6px 0 12px;font:800 21px/1.15 var(--font-display);letter-spacing:-.02em;color:var(--ink)}.reg-festival-card p{display:flex;gap:8px;align-items:center;margin-top:6px;font-size:13px;color:var(--graphite)}.reg-festival-card p svg{color:var(--violet)}.reg-help{display:flex;gap:10px;margin-top:20px;padding:14px 16px;border-radius:var(--r-md);background:var(--lilac);font-size:13px;line-height:1.6;color:var(--graphite)}.reg-help svg{flex-shrink:0;margin-top:2px;color:var(--violet)}.reg-form,.reg-success{position:relative;min-width:0;border:0;border-top:4px solid transparent;border-radius:var(--r-xl);background:linear-gradient(var(--card),var(--card)) padding-box,var(--g-sun) top /100% 36px no-repeat border-box,var(--card);box-shadow:var(--shadow-print)}.reg-form{padding:40px 36px 36px}.reg-section-heading{margin-bottom:28px}.reg-section-heading h2{margin:10px 0 8px;font:800 clamp(28px,3vw,38px) /1.05 var(--font-display);letter-spacing:-.03em;text-wrap:balance}.reg-section-heading p{font-size:14px;line-height:1.7;color:var(--graphite)}.reg-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:20px}.reg-field{display:grid;gap:8px;align-content:start;min-width:0;font-size:13px;font-weight:600;color:var(--ink)}.reg-duration input,.reg-field input,.reg-field select,.reg-field textarea{width:100%;min-width:0;padding:12px 15px;border:2px solid var(--line);border-radius:var(--r-md);background-color:var(--card);color:var(--ink);font-size:15px;line-height:1.4;box-shadow:0 0 0 0 #7b4dff00;transition:border-color var(--t-hover),box-shadow var(--t-hover),background-color var(--t-hover)}.reg-field select{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f5c78' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:16px}.reg-duration input:hover,.reg-field input:hover,.reg-field select:hover,.reg-field textarea:hover{border-color:var(--dust)}.reg-duration input:focus,.reg-field input:focus,.reg-field select:focus,.reg-field textarea:focus{border-color:var(--violet);box-shadow:0 0 0 4px #7b4dff2b}.pub-site .reg-duration input:focus-visible,.pub-site .reg-field :is(input,select,textarea):focus-visible{outline:2px solid transparent;outline-offset:0}.reg-field input::placeholder,.reg-field textarea::placeholder{color:var(--graphite);opacity:1}.reg-field textarea{resize:vertical}.reg-wide{grid-column:1/-1}.reg-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:26px;border-top:2px solid var(--line)}.reg-primary,.reg-secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 24px;border:0;border-radius:999px;background:var(--g-sun);color:var(--ink);box-shadow:var(--glow-sun);font:700 14px/1.2 var(--font-sans);letter-spacing:0;text-decoration:none;text-align:center;transition:translate var(--t-hover) var(--ease-ink),box-shadow var(--t-hover) var(--ease-ink),background var(--t-hover),color var(--t-hover)}.reg-secondary{background:var(--card);box-shadow:var(--shadow-hard)}.reg-primary:hover:not(:disabled){translate:0 -3px;box-shadow:0 26px 60px -16px #ff8a3dcc}.reg-secondary:hover:not(:disabled){translate:0 -3px;box-shadow:var(--shadow-hard-lg);background:var(--lilac)}.reg-primary:active:not(:disabled),.reg-secondary:active:not(:disabled){translate:0 1px;box-shadow:var(--shadow-press);transition-duration:var(--t-press)}.reg-primary svg,.reg-secondary svg{transition:translate var(--t-icon)}.reg-primary:hover:not(:disabled) svg{translate:3px 0}.reg-secondary:hover:not(:disabled) svg{translate:-3px 0}.reg-note{font-size:12px;line-height:1.6;color:var(--graphite)}.reg-entry{margin-top:20px;padding:24px;border-radius:var(--r-lg);background:linear-gradient(165deg,var(--lilac),var(--card) 72%)}.reg-entry-title{display:flex;gap:12px;align-items:center}.reg-number,.reg-review-list>div>span:first-child{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--g-sun);color:var(--ink);box-shadow:0 8px 18px -8px #ff8a3d99;font:800 13px/1 var(--font-display)}.reg-entry-title h3{flex:1;font:800 18px/1.25 var(--font-display);letter-spacing:-.02em;word-break:break-word}.reg-icon{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:none;color:var(--graphite);transition:color var(--t-hover),background var(--t-hover)}.reg-icon:hover{color:var(--plum);background:var(--card)}.reg-check{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:14px;line-height:1.6;color:var(--ink)}.reg-check input{flex-shrink:0;width:18px;height:18px;margin-top:3px;accent-color:var(--violet)}.reg-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px 16px;border:2px solid var(--line);border-radius:var(--r-md);background:linear-gradient(165deg,var(--lilac),var(--card) 72%);color:var(--ink);text-align:center;cursor:pointer;overflow:hidden;transition:border-color var(--t-hover),box-shadow var(--t-hover)}.reg-upload:hover{border-color:var(--violet)}.reg-upload:has(input:focus-visible){border-color:var(--violet);box-shadow:0 0 0 4px #7b4dff2b}.reg-upload>svg{color:var(--violet)}.reg-upload strong{max-width:100%;font-size:14px;overflow-wrap:anywhere}.reg-upload span{font-size:12px;color:var(--graphite)}.reg-upload input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.reg-upload.has-file{border-color:var(--inkteal);background:linear-gradient(165deg,var(--sky),var(--card) 72%)}.reg-upload.has-file strong,.reg-upload.has-file>svg{color:var(--inkteal)}.reg-duration{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0 8px;font-size:13px;color:var(--graphite)}.reg-duration>span{display:flex;align-items:center;gap:8px;margin-right:auto;font-weight:600;color:var(--ink)}.reg-duration>span svg{color:var(--violet)}.reg-duration input{width:66px;margin-right:4px;padding:8px 6px;text-align:center;font-variant-numeric:tabular-nums}.reg-add{display:flex;gap:10px;align-items:center;justify-content:center;width:fit-content;min-height:52px;margin:22px auto 0;padding:14px 24px;border:0;border-radius:999px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-hard);font:700 14px/1.2 var(--font-sans);transition:translate var(--t-hover) var(--ease-ink),box-shadow var(--t-hover) var(--ease-ink),background var(--t-hover)}.reg-add:hover:not(:disabled){translate:0 -3px;box-shadow:var(--shadow-hard-lg);background:var(--lilac)}.reg-add:active:not(:disabled){translate:0 1px;box-shadow:var(--shadow-press);transition-duration:var(--t-press)}.reg-review{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;padding:22px 24px;border-radius:var(--r-lg);background:linear-gradient(165deg,var(--sky),var(--card) 72%)}.reg-review span{display:block;font-size:12px;color:var(--graphite)}.reg-review strong{font-size:14px;overflow-wrap:anywhere}.reg-review-list{margin-top:20px}.reg-review-list>div{display:flex;gap:14px;align-items:center;padding:14px 0;font-size:13px;border-bottom:2px solid var(--line)}.reg-review-list>div:last-child{border-bottom:0}.reg-review-list>div>div{flex:1}.reg-review-list strong{font-size:14px}.reg-review-list small{display:block;margin-top:4px;font-size:12px;color:var(--graphite)}.reg-review-list>div>span:last-child{font:800 14px/1 var(--font-display);font-variant-numeric:tabular-nums;color:var(--graphite)}.reg-hotel{padding-top:12px}.reg-hotel small{display:block;margin-top:3px;font-size:12px;color:var(--graphite)}.reg-consent{font-size:13px;line-height:1.7}.reg-consent a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--violet);text-decoration-thickness:2px;text-underline-offset:3px;transition:color var(--t-hover)}.reg-consent a:hover,.reg-error{color:var(--plum)}.reg-error{margin-bottom:22px;padding:14px 18px;border-radius:var(--r-md);background:#ffe4ec;font-size:14px;font-weight:600}.reg-empty,.reg-success{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:650px;margin:30px auto;padding:48px 28px 44px;text-align:center}.reg-burst{position:relative;display:inline-block;line-height:0}.reg-empty h2,.reg-success h2{font:800 clamp(40px,5vw,60px) /1 var(--font-display);letter-spacing:-.03em;text-wrap:balance}.reg-empty h2{font-size:clamp(28px,3vw,38px);line-height:1.05}.reg-empty p,.reg-success p{max-width:470px;font-size:15px;line-height:1.8;color:var(--graphite)}.reg-success strong{display:inline-block;margin:0 2px;padding:4px 12px;border-radius:999px;background:var(--g-sun);color:var(--ink);box-shadow:0 8px 20px -10px #ff8a3d99;font:800 15px/1.3 var(--font-display);letter-spacing:.05em;font-variant-numeric:tabular-nums}.reg-success .reg-primary{margin-top:6px}.reg-empty>svg{color:var(--violet)}.reg-empty a{font-size:14px;font-weight:700;color:var(--ink);background:var(--ul) no-repeat 0 100% /32px 3px;padding:6px 0 9px;transition:background-size .35s var(--ease-brush),color var(--t-hover)}.reg-empty a:hover{color:var(--plum);background-size:100% 3px}.reg-spin{animation:regspin 1s linear infinite}@keyframes regspin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:no-preference){.reg-step.current>span{animation:reg-pop .26s cubic-bezier(.2,.8,.3,1.1)}.reg-success{animation:reg-rise .45s var(--ease-ink) both}.reg-success .doodle .blob{animation:reg-blob .5s var(--ease-pop) .35s both}.reg-success .confetti>i{animation:confetti 1.6s cubic-bezier(.2,.6,.4,1) calc(var(--d, 0s) + .5s) forwards}}@keyframes reg-pop{0%{scale:1.3;opacity:0}}@keyframes reg-rise{0%{opacity:0;translate:0 20px}}@keyframes reg-blob{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (max-width:900px){.reg-layout{grid-template-columns:230px minmax(0,1fr);gap:28px}.reg-page{padding:26px 24px 70px}.reg-form{padding:34px 24px 26px}.reg-fields{gap:14px}.reg-entry{padding:18px}}@media (max-width:700px){.reg-page{padding:24px 18px 50px}.reg-intro{margin:26px 0 34px}.reg-intro h1{font-size:clamp(38px,10.5vw,52px)}.reg-layout{grid-template-columns:1fr;gap:22px}.reg-aside{position:static}.reg-festival-card,.reg-help{display:none}.reg-steps{grid-template-columns:repeat(3,1fr);gap:9px;margin:0}.reg-steps:before{display:none}.reg-step{flex-direction:column;gap:8px;text-align:center}.reg-step>span{width:36px;height:36px}.reg-step small{display:none}.reg-step strong{font-size:12px}.reg-entry,.reg-form,.reg-review,.reg-success{border-radius:22px}.reg-form{padding:28px 18px 22px}.reg-fields{grid-template-columns:1fr}.reg-wide{grid-column:auto}.reg-entry{padding:16px 14px}.reg-actions{flex-wrap:wrap}.reg-actions>.reg-note{display:none}.reg-actions>.reg-primary{margin-left:auto}.reg-review{grid-template-columns:1fr}.reg-upload{padding:20px 10px}.reg-empty,.reg-success{padding:40px 18px 36px}.reg-success h2{font-size:38px}}