@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/pacifico-400-latin.woff2)format("woff2")}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/baloo-2-600-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/baloo-2-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/baloo-2-700-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/baloo-2-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/baloo-2-800-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/baloo-2-800-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-400-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-600-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-700-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/be-vietnam-pro-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--font-display:"Baloo 2", ui-rounded, sans-serif;--font-body:"Be Vietnam Pro", system-ui, sans-serif;--font-script:"Pacifico", "Baloo 2", cursive;--type-micro:.625rem;--type-caption:.75rem;--type-ui:.875rem;--type-body:1rem;--type-subheading:1.25rem;--type-title:1.5rem;--type-section:clamp(2.25rem, 9vw, 3.5rem);--color-ink:oklch(22% .03 42);--color-ink-soft:oklch(38% .03 42);--color-paper:oklch(97% .018 22);--color-paper-strong:oklch(99% .008 22);--color-blush:oklch(94% .032 8);--color-teal:oklch(39% .09 183);--color-teal-bright:oklch(58% .11 183);--color-raspberry:oklch(56% .19 5);--color-raspberry-dark:oklch(43% .15 5);--color-marigold:oklch(85% .14 88);--color-mint:oklch(88% .075 165);--color-sky:oklch(79% .09 230);--color-grape:oklch(76% .1 310);--color-error:oklch(46% .18 25);--color-success:oklch(43% .11 155);--line:2px solid var(--color-ink);--line-quiet:1px solid oklch(22% .03 42/.32);--shadow-sm:.375rem .375rem 0 var(--color-ink);--shadow-lg:.625rem .625rem 0 var(--color-ink);--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--z-decoration:1;--z-content:2;--z-ornament:3;--z-ticket:4;--z-header:50;--z-modal-backdrop:80;--z-modal:90;--z-skip-link:100;--ease-out:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background-color:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body);font-kerning:normal;font-optical-sizing:auto;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);text-rendering:optimizelegibility;background-image:radial-gradient(circle,oklch(22% .03 42/.07) .045rem,#0000 .05rem);background-size:1.125rem 1.125rem;margin:0;line-height:1.65;overflow-x:hidden}button,input{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img{max-width:100%;height:auto;display:block}[hidden]{display:none!important}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{font-family:var(--font-display);overflow-wrap:anywhere;text-wrap:balance;line-height:1.02}h2{font-size:var(--type-section);letter-spacing:-.035em;font-weight:800}h3{font-size:var(--type-subheading);font-weight:800}:focus-visible{outline:3px solid var(--color-sky);outline-offset:3px;box-shadow:0 0 0 2px var(--color-ink)}.skip-link{z-index:var(--z-skip-link);top:var(--space-md);left:var(--space-md);border:var(--line);background:var(--color-paper-strong);padding:var(--space-sm) var(--space-md);font-weight:700;position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(100% - 2rem,72rem);margin-inline:auto}.section{padding-block:var(--space-3xl);border-top:var(--line)}.eyebrow{color:var(--color-raspberry-dark);font-size:var(--type-caption);letter-spacing:.12em;text-transform:uppercase;font-weight:700;line-height:1.3}.eyebrow span{color:var(--color-raspberry)}.section-heading{margin-bottom:var(--space-xl)}.section-heading h2{margin-top:var(--space-xs)}.site-header{z-index:var(--z-header);border-bottom:var(--line);backdrop-filter:blur(.75rem);background:oklch(97% .018 22/.94);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;min-height:4rem;display:flex}.techcoop-mark{object-fit:contain;width:100%;height:100%;display:block}.brand-mark{align-items:center;gap:var(--space-xs);min-height:2.75rem;color:var(--color-ink);text-decoration:none;display:inline-flex}.brand-mark__logo{background:var(--color-raspberry);flex:none;width:2.25rem;height:2.25rem;mask:url(/assets/brand/techcoop-mark.svg) 50%/contain no-repeat}.brand-mark__copy{gap:0;line-height:1;display:grid}.brand-mark__copy strong{font-size:var(--type-micro);letter-spacing:.12em}.brand-mark__copy span{font-size:var(--type-caption);letter-spacing:.06em;font-weight:700}.nav-menu{margin-left:auto;position:relative}.nav-menu summary{cursor:pointer;align-items:center;gap:var(--space-sm);border:var(--line);background:var(--color-paper-strong);min-height:2.75rem;padding-inline:var(--space-sm);font-size:var(--type-caption);text-transform:uppercase;font-weight:700;list-style:none;display:flex}.nav-menu summary::-webkit-details-marker{display:none}.nav-menu__icon{gap:var(--space-2xs);width:1.25rem;display:grid}.nav-menu__icon i{height:2px;transition:transform .2s var(--ease-out), opacity .15s ease;background:currentColor}.nav-menu[open] .nav-menu__icon i:first-child{transform:translateY(.325rem)rotate(45deg)}.nav-menu[open] .nav-menu__icon i:nth-child(2){opacity:0}.nav-menu[open] .nav-menu__icon i:last-child{transform:translateY(-.325rem)rotate(-45deg)}.nav-menu nav{top:calc(100% + var(--space-sm));border:var(--line);background:var(--color-paper-strong);min-width:min(15rem,100vw - 2rem);box-shadow:var(--shadow-sm);display:grid;position:absolute;right:0}.nav-menu nav a{border-bottom:var(--line-quiet);min-height:3rem;padding-inline:var(--space-md);font-size:var(--type-ui);align-items:center;font-weight:700;text-decoration:none;display:flex}.nav-menu nav a:last-child{border-bottom:0}.nav-menu nav .locale-switch{gap:var(--space-xs);color:var(--color-raspberry-dark)}.locale-switch__short{min-width:1.75rem;height:1.75rem;font-size:var(--type-micro);letter-spacing:.08em;border:1px solid;place-items:center;display:grid}.locale-switch__long{color:var(--color-ink)}.nav-menu nav .nav-menu__cta{background:var(--color-raspberry-dark);color:#fff}.hero{padding-top:var(--space-2xl);padding-bottom:var(--space-4xl);display:grid;position:relative;container:hero/inline-size}.hero__lights{top:var(--space-xs);pointer-events:none;width:100vw;height:auto;position:absolute;left:50%;transform:translate(-50%)}.hero__lights--desktop{width:min(100vw,90rem);display:none}.hero__cable,.hero__bulbs path{fill:none;stroke:oklch(22% .03 42/.44);stroke-linecap:round;stroke-width:2px;vector-effect:non-scaling-stroke}.hero__bulbs circle{fill:var(--color-marigold)}.hero__copy{z-index:var(--z-content);width:100%;min-width:0;max-width:42rem;padding-top:var(--space-md);animation:hero-in .65s var(--ease-out) both;position:relative}.hero h1{width:fit-content;margin-top:var(--space-sm);letter-spacing:-.035em;font-weight:400;line-height:1;display:grid}.hero-title__top{align-items:baseline;max-width:100%;display:inline-flex}.hero-title__top>span{max-width:100%;color:var(--color-teal);font-family:var(--font-script);transform-origin:0 100%;font-size:clamp(2rem,18vw,7rem);font-weight:400;line-height:.9;transform:rotate(-2deg)}.hero h1 small{margin-left:var(--space-xs);color:var(--color-ink);font-family:var(--font-display);font-size:clamp(2rem,8vw,4rem);font-weight:600;line-height:1;transform:translateY(-.04em)}.hero h1 strong{isolation:isolate;width:fit-content;max-width:100%;color:var(--color-raspberry);font-family:var(--font-script);margin-top:-.16em;padding-bottom:.2em;font-size:clamp(2rem,19vw,7.5rem);font-weight:400;line-height:.98;position:relative}.hero h1 strong:after{z-index:-1;content:"";opacity:.56;transform-origin:0;background:url(/assets/images/hero-underline.svg) 50%/100% 100% no-repeat;width:86%;height:.08em;position:absolute;bottom:.14em;left:2%;transform:rotate(-.4deg)}.hero__lead{max-width:48ch;margin-top:var(--space-md);color:var(--color-ink-soft);text-wrap:pretty}.button-row{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.button{cursor:pointer;justify-content:center;align-items:center;gap:var(--space-xs);border:var(--line);background:var(--color-paper-strong);max-width:100%;min-height:3rem;box-shadow:var(--shadow-sm);color:var(--color-ink);padding:var(--space-sm) var(--space-lg);font-size:var(--type-ui);border-radius:0;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .18s,color .18s,transform .12s,box-shadow .12s;display:inline-flex}.button--primary{background:var(--color-raspberry-dark);color:#fff}.button--quiet{box-shadow:none;background:0 0}.button-row .button{overflow-wrap:anywhere;max-width:100%}.button--small{min-height:2.75rem;padding:var(--space-xs) var(--space-sm);font-size:var(--type-caption)}.button:active{box-shadow:.125rem .125rem 0 var(--color-ink);transform:translate(.25rem,.25rem)}.button--quiet:active{box-shadow:none;transform:translateY(.125rem)}.button[disabled]{cursor:wait;opacity:.72}.button__loader{border:2px solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite spin;display:none}.lookup-submit.is-loading .button__loader{display:block}.hero__visual{min-height:25rem;display:none;position:relative}.hero__sun{background:var(--color-marigold);clip-path:polygon(16% 0,100% 0,100% 100%,29% 100%,24% 72%,29% 46%);position:absolute;inset:-4rem 0 -8rem 4rem}.polaroid{z-index:var(--z-content);top:3rem;right:var(--space-lg);border:var(--line);background:var(--color-paper-strong);width:min(20rem,84%);box-shadow:var(--shadow-lg);padding:var(--space-sm) var(--space-sm) var(--space-lg);animation:polaroid-in .7s var(--ease-out) .12s both;position:absolute;transform:rotate(3deg)}.polaroid img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.86)contrast(1.04);width:100%}.polaroid span{margin-top:var(--space-sm);font-family:var(--font-display);font-size:var(--type-ui);text-align:center;font-weight:700;display:block}.hero__arrow{z-index:var(--z-ornament);width:10rem;position:absolute;bottom:0;right:15rem;overflow:visible}.hero__arrow path{fill:none;stroke:var(--color-teal);stroke-dasharray:360;stroke-dashoffset:360px;stroke-linecap:round;stroke-linejoin:round;stroke-width:12px;animation:draw-arrow .65s var(--ease-out) .42s forwards}.journey-ticket{z-index:var(--z-ticket);min-width:0;margin-top:var(--space-lg);border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-lg);grid-template-columns:minmax(0,1fr);grid-template-areas:"stub""main";display:grid;position:relative}.journey-ticket__main{min-width:0;padding:var(--space-lg);grid-area:main}.ticket-kicker{justify-content:space-between;gap:var(--space-md);border-bottom:var(--line-quiet);padding-bottom:var(--space-sm);font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:700;display:flex}.ticket-kicker>span{overflow-wrap:anywhere;min-width:0}.route-line{align-items:start;gap:var(--space-sm);margin-top:var(--space-lg);font-family:var(--font-display);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);font-size:clamp(1.3rem,7vw,2rem);font-weight:800;line-height:1;display:grid}.route-line>span{color:var(--color-raspberry)}.route-line small{margin-top:var(--space-xs);font-family:var(--font-body);font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:600;line-height:1.3;display:block}.ticket-fields{gap:var(--space-md);margin-top:var(--space-lg);display:grid}.ticket-fields div{gap:var(--space-2xs);display:grid}.ticket-fields dt,.field-label{color:var(--color-ink-soft);font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.ticket-fields dd{font-family:var(--font-display);font-size:var(--type-body);font-weight:700}.journey-ticket__stub{min-width:0;min-height:calc(var(--space-4xl) + var(--space-3xl));border-bottom:2px dashed var(--color-paper);background:var(--color-teal);color:#fff;padding:var(--space-lg);grid-area:stub;align-content:center;display:grid;position:relative}.journey-ticket__stub>p,.allocation-ticket__stub>p{margin-bottom:var(--space-sm);font-size:var(--type-micro);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.journey-ticket__stub>p{margin-bottom:var(--space-md);font-size:var(--type-caption)}.countdown{gap:var(--space-xs);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.countdown span{display:grid}.countdown span+span{padding-left:var(--space-sm);border-left:1px solid oklch(97% .018 22/.34)}.countdown strong{color:var(--color-marigold);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:clamp(2rem,3vw,2.5rem);line-height:1}.countdown small{margin-top:var(--space-2xs);font-size:var(--type-micro);letter-spacing:.08em;text-transform:uppercase}.countdown__state{font-family:var(--font-display);font-size:var(--type-title);line-height:1.1}.schedule-section{background:oklch(94% .032 8/.82)}.schedule-tabs{margin-bottom:var(--space-xl);border:var(--line);box-shadow:var(--shadow-sm);grid-template-columns:repeat(3,1fr);display:grid}.schedule-tabs button{cursor:pointer;border:0;border-right:var(--line);background:var(--color-paper-strong);min-width:0;min-height:4.25rem;color:var(--color-ink);padding:var(--space-sm) var(--space-xs)}.schedule-tabs button:last-child{border-right:0}.schedule-tabs button[aria-selected=true]{background:var(--color-raspberry);color:#fff}.schedule-tabs strong,.schedule-tabs small{display:block}.schedule-tabs strong{font-family:var(--font-display);font-size:var(--type-ui)}.schedule-tabs small{margin-top:var(--space-2xs);font-size:var(--type-caption);letter-spacing:.04em;font-weight:600}.timeline{display:grid;position:relative}.timeline:before{background:var(--color-ink);content:"";width:2px;position:absolute;top:.75rem;bottom:.75rem;left:4.375rem}.timeline-item{gap:var(--space-lg);padding-block:var(--space-md);grid-template-columns:3.5rem minmax(0,1fr);display:grid;position:relative}.timeline-item:before{border:var(--line);background:var(--color-paper-strong);content:"";border-radius:50%;width:.625rem;height:.625rem;position:absolute;top:1.5rem;left:4rem}.timeline-item>p{padding-top:var(--space-2xs);color:var(--color-teal);font-size:var(--type-ui);font-weight:700}.timeline-item__content{min-width:0;padding-left:var(--space-sm)}.timeline-item__description{max-width:62ch;margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-body);display:block}.timeline-item--meal:before{background:var(--color-raspberry)}.timeline-item--meal>p,.timeline-item--meal h3{color:var(--color-raspberry-dark)}.timeline-item--split:before{background:var(--color-marigold)}.timeline-item__description a{color:var(--color-teal);text-underline-offset:.18em;font-weight:800;text-decoration-thickness:.08em}.schedule-linked-title{width:fit-content;max-width:100%}.schedule-title-link{align-items:baseline;gap:var(--space-2xs);max-width:100%;color:inherit;text-decoration:none;display:inline-flex;position:relative}.schedule-title-link:before{inset:calc(-1 * var(--space-sm)) calc(-1 * var(--space-2xs));content:"";position:absolute}.schedule-title-link__label{text-underline-offset:.18em;min-width:0;text-decoration:underline .08em}.schedule-title-link__icon{color:var(--color-teal);font-family:var(--font-body);font-size:var(--type-caption);flex:none;font-weight:800;line-height:1}.schedule-title-link:hover .schedule-title-link__label,.schedule-title-link:focus-visible .schedule-title-link__label{color:var(--color-teal);text-decoration-thickness:.12em}.timeline-item__venue{align-items:center;gap:var(--space-xs);max-width:62ch;color:var(--color-ink-soft);font-size:var(--type-ui);flex-wrap:wrap;display:flex}.location-map-link{cursor:pointer;min-height:2.75rem;color:var(--color-teal);font:inherit;text-align:inherit;text-underline-offset:.2em;transition:color .18s var(--ease-out), text-decoration-thickness .18s var(--ease-out);background:0 0;border:0;align-items:center;gap:.3em;padding:0;font-weight:800;line-height:1.25;text-decoration:underline .08em;display:inline-flex}.location-map-link:hover{color:var(--color-raspberry-dark);text-decoration-thickness:.12em}.timeline-branches{margin-top:var(--space-lg);border:var(--line);background:var(--color-paper-strong);grid-template-columns:minmax(0,1fr);display:grid}.timeline-branch{min-width:0}.timeline-branch+.timeline-branch{border-top:var(--line)}.timeline-branch__head{background:var(--color-marigold);padding:var(--space-md);align-items:center;display:flex}.timeline-branch:nth-child(2) .timeline-branch__head{background:var(--color-mint)}.timeline-branch__head h4{font-family:var(--font-display);font-size:var(--type-subheading);text-wrap:balance;margin:0;line-height:1.2}.timeline-branch__item{min-width:0;padding:var(--space-md)}.timeline-branch__item+.timeline-branch__item{border-top:var(--line-quiet)}.timeline-branch__item>p{color:var(--color-teal);font-size:var(--type-caption);text-transform:uppercase;font-weight:800}.timeline-branch__item>strong{margin-top:var(--space-2xs);font-family:var(--font-display);font-size:var(--type-subheading);overflow-wrap:anywhere;line-height:1.25;display:block}.timeline-branch__item>span{margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-ui);display:block}.timeline-branch__item--meal>p,.timeline-branch__item--meal>strong{color:var(--color-raspberry-dark)}.meal-menu{margin-top:var(--space-sm)}.meal-menu summary{cursor:pointer;align-items:center;gap:var(--space-xs);min-height:2.75rem;color:var(--color-teal);font-size:var(--type-ui);grid-template-columns:minmax(0,auto) 1.5rem;font-weight:800;list-style:none;display:inline-grid}.meal-menu summary::-webkit-details-marker{display:none}.meal-menu summary:focus-visible{outline:3px solid var(--color-sky);outline-offset:2px;box-shadow:none}.meal-menu__label,.meal-menu__icon{border-bottom:.08em solid;block-size:1.5rem;padding-bottom:.12em;line-height:1.25}.meal-menu__label{align-items:center;display:inline-flex}.meal-menu__icon{transform-origin:50%;width:1.5rem;transition:transform .18s var(--ease-out);place-items:center;display:grid}.meal-menu__icon>span{font-size:var(--type-subheading);line-height:1;display:inline-block}.meal-menu[open] .meal-menu__icon{transform:rotate(45deg)}.meal-menu:not([open])>ol{display:none}.meal-menu ol{gap:var(--space-xs);max-width:62ch;margin:var(--space-xs) 0 var(--space-sm);color:var(--color-ink-soft);padding-left:1.35rem;display:grid}.location-section{background:var(--color-paper)}.location-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.postcard{border:var(--line);background:var(--color-paper-strong);min-width:0;box-shadow:var(--shadow-lg);text-decoration:none}.postcard__image{border-bottom:var(--line);position:relative;overflow:hidden}.postcard__image:after{content:"";background:linear-gradient(#0000,oklch(22% .03 42/.8));position:absolute;inset:55% 0 0}.postcard__image img{aspect-ratio:16/10;object-fit:cover;width:100%;transition:transform .5s var(--ease-out)}.postcard__image>span{z-index:var(--z-decoration);right:var(--space-md);bottom:var(--space-sm);left:var(--space-md);color:#fff;font-family:var(--font-display);font-size:var(--type-subheading);font-weight:800;position:absolute}.postcard__caption{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);flex-wrap:wrap;display:flex}.postcard__caption p{max-width:28ch;font-size:var(--type-ui);text-transform:uppercase;font-weight:600}.place-ticket{border:var(--line);background:var(--color-paper-strong);min-width:0;box-shadow:var(--shadow-lg);align-self:center}.place-ticket__title{align-items:center;gap:var(--space-sm);padding:var(--space-lg);display:flex}.ticket-dot{border:var(--line);border-radius:50%;flex:none;width:.875rem;height:.875rem}.place-ticket dl{border-block:var(--line-quiet)}.place-ticket dl div{gap:var(--space-2xs);border-bottom:var(--line-quiet);padding:var(--space-sm) var(--space-lg);font-size:var(--type-ui);grid-template-columns:minmax(0,1fr);display:grid}.place-ticket dl div:last-child{border-bottom:0}.place-ticket dt{color:var(--color-ink-soft);text-transform:uppercase}.place-ticket dd{font-weight:700}.place-ticket__action{align-items:center;gap:var(--space-sm);padding:var(--space-lg);flex-wrap:wrap;display:flex}.place-ticket__action>span{color:var(--color-ink-soft);font-size:var(--type-caption);font-weight:600}.resort-guide{margin-top:var(--space-xl);border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-lg);display:grid}.resort-guide__amenities{min-width:0;padding:var(--space-lg)}.resort-guide__heading,.dress-code__heading{justify-content:space-between;align-items:start;gap:var(--space-md);flex-wrap:wrap;display:flex}.resort-guide__heading>span,.dress-code__heading>span{color:var(--color-ink-soft);font-size:var(--type-micro);letter-spacing:.1em;flex:none;font-weight:700}.resort-guide__amenities dl{margin-top:var(--space-md);border-top:var(--line);display:grid}.resort-guide__amenities dl div{gap:var(--space-2xs);border-bottom:var(--line-quiet);padding-block:var(--space-sm);font-size:var(--type-ui);grid-template-columns:minmax(0,1fr);display:grid}.resort-guide__amenities dt{color:var(--color-ink-soft)}.resort-guide__amenities dd{font-weight:700}.medical-note{border-top:2px dashed var(--color-paper);background:var(--color-teal);color:#fff;padding:var(--space-lg)}.medical-note .eyebrow{color:var(--color-marigold)}.medical-note h3{margin-top:var(--space-xs)}.medical-note>p:not(.eyebrow){margin-top:var(--space-sm);color:oklch(96% .02 180)}.medical-note address{gap:var(--space-2xs);margin-top:var(--space-lg);padding-top:var(--space-sm);font-size:var(--type-ui);border-top:1px solid oklch(100% 0 0/.35);font-style:normal;display:grid}.medical-note address strong{color:var(--color-marigold);font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase}body:has(.resort-map-dialog[open]){overflow:hidden}.resort-map-dialog{z-index:var(--z-modal);width:100%;max-width:none;height:100dvh;max-height:none;color:var(--color-ink);background:0 0;border:0;margin:0;padding:0}.resort-map-dialog::backdrop{z-index:var(--z-modal-backdrop);background:oklch(15% .025 42/.82)}.resort-map-viewer{background:var(--color-paper-strong);grid-template-rows:auto auto minmax(16rem,1fr);grid-template-columns:minmax(0,1fr);height:100%;min-height:0;display:grid}.resort-map-viewer>*{min-width:0}.resort-map-viewer__header{justify-content:space-between;align-items:start;gap:var(--space-md);border-bottom:var(--line);padding:var(--space-md);display:flex}.resort-map-viewer__header-copy{min-width:0}.resort-map-viewer__header h2{margin-top:var(--space-xs);font-size:clamp(1.75rem,8vw,2.75rem)}.resort-map-viewer__description{max-width:58ch;margin-top:var(--space-xs);color:var(--color-ink-soft);font-size:var(--type-ui)}.resort-map-viewer__pdf{align-items:center;gap:var(--space-2xs);min-height:2.75rem;margin-top:var(--space-xs);color:var(--color-teal);font-size:var(--type-ui);text-underline-offset:.18em;font-weight:800;text-decoration-thickness:.08em;display:inline-flex}.resort-map-viewer__close{cursor:pointer;border:var(--line);background:var(--color-marigold);width:3rem;height:3rem;color:var(--color-ink);flex:none;place-items:center;display:grid}.resort-map-viewer__close span{font-family:var(--font-display);font-size:2rem;font-weight:700;line-height:1;transform:translateY(-.05em)}.resort-map-tabs{border-bottom:var(--line);background:var(--color-paper);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.resort-map-tabs button{cursor:pointer;justify-content:center;align-items:center;gap:var(--space-xs) var(--space-sm);border:0;border-right:var(--line);min-width:0;min-height:3.5rem;color:var(--color-ink);overflow-wrap:anywhere;padding:var(--space-sm);background:0 0;flex-wrap:wrap;font-weight:700;display:flex}.resort-map-tabs button:last-child{border-right:0}.resort-map-tabs button[aria-selected=true]{background:var(--color-raspberry);color:#fff}.resort-map-tabs button>span{font-size:var(--type-micro);letter-spacing:.1em}.resort-map-viewer__canvas{background:var(--color-ink);min-height:0;position:relative;overflow:hidden}.resort-map-panel{width:100%;height:100%;min-height:0}.resort-map-stage{overscroll-behavior:contain;background:var(--color-paper);scrollbar-color:var(--color-raspberry) var(--color-paper);width:100%;height:100%;overflow:auto}.resort-map-surface{place-items:center;width:max-content;min-width:100%;min-height:100%;display:grid}.resort-map-surface img{user-select:none;max-width:none;height:auto;display:block}.resort-map-controls{z-index:var(--z-content);top:var(--space-sm);right:var(--space-sm);max-width:calc(100% - (2 * var(--space-sm)));border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:end;display:flex;position:absolute}.resort-map-controls button,.resort-map-controls output{border:0;border-right:var(--line);min-width:2.75rem;min-height:2.75rem;color:var(--color-ink);padding:var(--space-xs);background:0 0;place-items:center;font-weight:800;line-height:1;display:grid}.resort-map-controls button{cursor:pointer;font-size:var(--type-subheading)}.resort-map-controls button:last-child{border-right:0}.resort-map-controls output{font-size:var(--type-caption);font-variant-numeric:tabular-nums}.resort-map-controls button:disabled{cursor:default;color:var(--color-ink-soft);opacity:.46}.lookup-section{background:oklch(94% .04 310/.74)}.lookup-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.lookup-form-card{border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-lg);padding:var(--space-lg);container:lookup-form/inline-size}.lookup-form-fields{gap:var(--space-lg);display:grid}.form-field{gap:var(--space-sm);display:grid}.form-field label{max-width:28ch;font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase;text-wrap:balance;font-weight:700;line-height:1.35}.form-field input{border:var(--line);background:var(--color-paper);min-width:0;min-height:3.5rem;color:var(--color-ink);padding:var(--space-sm) var(--space-md);font-size:var(--type-body);border-radius:0;transition:background-color .18s,box-shadow .18s}.form-field input::placeholder{color:var(--color-ink-soft)}.form-field input[aria-invalid=true]{border-color:var(--color-error);background:oklch(95% .035 25)}.form-field>p{max-width:48ch;color:var(--color-ink-soft);font-size:var(--type-ui);text-wrap:pretty;align-self:start;line-height:1.55}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.lookup-submit{width:100%;margin-top:var(--space-lg)}.lookup-status{min-height:0;color:var(--color-ink-soft);font-size:var(--type-ui);font-weight:650;line-height:1.45}.lookup-status:empty{display:none}.lookup-status:not(:empty){gap:var(--space-sm);margin-top:var(--space-md);border:var(--line);background:var(--color-paper);padding:var(--space-sm) var(--space-md);text-wrap:pretty;grid-template-columns:1.5rem minmax(0,1fr);align-items:start;display:grid}.lookup-status:not(:empty):before{content:"!";width:1.5rem;height:1.5rem;font-family:var(--font-display);font-size:var(--type-caption);border:1px solid;border-radius:50%;place-items:center;font-weight:800;line-height:1;display:grid}.lookup-status[data-kind=error]{border-color:var(--color-error);color:var(--color-error);background:oklch(95% .035 25)}.lookup-status[data-kind=success]{border-color:var(--color-success);color:var(--color-success);background:oklch(95% .035 155)}.lookup-status[data-kind=success]:before{content:"✓"}.privacy-note{gap:var(--space-sm);margin-top:var(--space-lg);border-top:var(--line-quiet);padding-top:var(--space-md);color:var(--color-ink-soft);font-size:var(--type-ui);grid-template-columns:1.5rem minmax(0,1fr);align-items:start;line-height:1.55;display:grid}.privacy-note>span{border:1px solid;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-family:serif;font-weight:700;display:grid}.privacy-note p{text-wrap:pretty;max-width:68ch}.lookup-guide{border-top:var(--line);padding-top:var(--space-lg)}.lookup-guide__title{color:var(--color-teal);font-family:var(--font-display);font-size:var(--type-subheading);font-weight:800}.lookup-guide ol{gap:var(--space-md);margin:var(--space-md) 0 0;padding:0;list-style:none;display:grid}.lookup-guide li{gap:var(--space-sm);grid-template-columns:2rem 1fr;align-items:start;display:grid}.lookup-guide li>span{background:var(--color-raspberry);color:#fff;width:2rem;height:2rem;font-family:var(--font-display);border-radius:50%;place-items:center;font-weight:800;display:grid}.lookup-guide li p{display:grid}.lookup-guide li strong{font-size:var(--type-body)}.lookup-guide li small{margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-ui)}@container lookup-form (width>=32rem){.lookup-form-fields{column-gap:var(--space-lg);row-gap:var(--space-sm);grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) minmax(14rem,.52fr);align-items:stretch}.lookup-form-fields .form-field{grid-row:1/span 3;grid-template-rows:subgrid}.lookup-form-fields .form-field:first-child{grid-column:1}.lookup-form-fields .form-field--dob{grid-column:2}}.lookup-candidates{gap:var(--space-lg);margin-top:var(--space-2xl);border-top:var(--line);padding-top:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.lookup-candidates__head h3{margin-top:var(--space-xs);font-size:1.75rem}.lookup-candidates__head>p:last-child{margin-top:var(--space-sm);color:var(--color-ink-soft)}.candidate-list{gap:var(--space-sm);display:grid}.candidate-button{cursor:pointer;align-items:center;gap:var(--space-md);border:var(--line);background:var(--color-paper-strong);width:100%;min-height:4.5rem;box-shadow:var(--shadow-sm);color:var(--color-ink);padding:var(--space-md);text-align:left;grid-template-columns:1fr auto;transition:transform .12s,box-shadow .12s,background-color .18s;display:grid}.candidate-button strong,.candidate-button small{display:block}.candidate-button strong{font-family:var(--font-display);font-size:1.1rem}.candidate-button small{margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-ui)}.candidate-button>span:last-child{font-family:var(--font-display);font-size:var(--type-title)}.candidate-button:active{box-shadow:.125rem .125rem 0 var(--color-ink);transform:translate(.25rem,.25rem)}.allocation-ticket{min-width:0;margin-top:var(--space-2xl);border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-lg);grid-template-columns:minmax(0,1fr);grid-template-areas:"header""stub""body";display:grid}.allocation-ticket__header{min-width:0;padding:var(--space-lg) var(--space-lg) 0;grid-area:header}.allocation-ticket__body{min-width:0;padding:0 var(--space-lg) var(--space-lg);grid-area:body}.allocation-ticket__intro{gap:var(--space-md);margin-top:var(--space-lg);display:grid}.allocation-ticket__intro h3{margin-top:var(--space-2xs);font-size:clamp(1.75rem,7vw,2.5rem)}.ticket-company{color:var(--color-ink-soft);font-size:var(--type-ui)}.ticket-company strong{color:inherit;font-weight:600}.stamp{border:.1875rem double var(--color-raspberry);width:fit-content;color:var(--color-raspberry-dark);padding:var(--space-xs) var(--space-sm);font-family:var(--font-display);font-size:var(--type-caption);letter-spacing:.08em;align-self:center;font-weight:800;transform:rotate(-3deg)}.allocation-ticket__stub{gap:var(--space-md);border-block:2px dashed var(--color-paper);background:var(--color-teal);color:#fff;min-width:0;padding:var(--space-lg);grid-area:stub;display:grid}.allocation-ticket__stub>p{margin-bottom:0}.ticket-summary{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5rem),1fr));display:grid}.ticket-summary>div{align-content:start;gap:var(--space-2xs);min-width:0;display:grid}.ticket-summary dt{color:oklch(97% .018 22/.78);font-size:var(--type-micro);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.ticket-summary dd{gap:var(--space-2xs);min-width:0;display:grid}.ticket-summary strong{font-family:var(--font-display);overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.1}.ticket-summary small{color:oklch(97% .018 22/.84);font-size:var(--type-caption);overflow-wrap:anywhere;line-height:1.4}.allocation-list{gap:var(--space-md);margin-top:var(--space-xl);display:grid}.allocation{border-top:var(--line);padding-top:var(--space-md)}.allocation__head{justify-content:space-between;align-items:start;gap:var(--space-md);display:flex}.allocation__head h4{font-family:var(--font-display);font-size:var(--type-title);margin:0;line-height:1.1}.allocation__head span{border:1px solid var(--color-ink);padding:var(--space-2xs) var(--space-xs);font-size:var(--type-caption);text-transform:uppercase;font-weight:700}.allocation__meta{gap:var(--space-xs);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.allocation__meta span{background:var(--color-marigold);padding:var(--space-2xs) var(--space-xs);font-size:var(--type-caption);font-weight:700}.allocation__groups{gap:var(--space-md);margin-top:var(--space-md);grid-template-columns:minmax(0,1fr);display:grid}.allocation__groups>div{min-width:0}.allocation__groups p:first-child{color:var(--color-ink-soft);font-size:var(--type-caption);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.name-list{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.name-list span{background:var(--color-blush);padding:var(--space-2xs) var(--space-xs);font-size:var(--type-ui);border:1px solid oklch(22% .03 42/.42)}.allocation__groups .name-list .name-list__empty{color:var(--color-ink-soft);font-size:var(--type-ui);letter-spacing:0;text-transform:none;font-style:normal;font-weight:400}.transport-manifest{margin-top:var(--space-xl);border-top:var(--line)}.transport-manifest>header{padding-block:var(--space-md)}.transport-manifest>header h4{font-family:var(--font-display);font-size:var(--type-title);margin:0;line-height:1.1}.transport-manifest__list{border-bottom:0}.transport-manifest__empty{border-top:var(--line-quiet);padding-block:var(--space-md);color:var(--color-ink-soft);font-size:var(--type-ui);font-style:italic}.transport-assignment{gap:var(--space-lg);border-top:var(--line-quiet);min-width:0;padding-block:var(--space-lg);display:grid}.transport-assignment__journey{gap:var(--space-md);min-width:0;display:grid}.transport-assignment__head{justify-content:space-between;align-items:start;gap:var(--space-sm);flex-wrap:wrap;min-width:0;display:flex}.transport-assignment__identity{min-width:0}.transport-assignment__head h5{color:var(--color-teal);font-family:var(--font-display);font-size:var(--type-subheading);overflow-wrap:anywhere;margin:0;line-height:1.1}.transport-assignment__identity p{margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-caption);font-weight:650}.transport-assignment__meta{gap:var(--space-xs) var(--space-md);flex-wrap:wrap;min-width:0;display:flex}.transport-assignment__meta span{gap:var(--space-2xs);color:var(--color-ink);font-size:var(--type-ui);font-weight:650;display:grid}.transport-assignment__meta strong{font:inherit}.transport-assignment__meta small,.transport-assignment__journey>div:last-child>p{color:var(--color-ink-soft);font-size:var(--type-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.transport-contact{border-top:var(--line-quiet);min-width:0;padding-top:var(--space-md)}.transport-contact__label{color:var(--color-raspberry-dark);font-size:var(--type-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.transport-contact__directory+.transport-contact__label{margin-top:var(--space-md);border-top:var(--line-quiet);padding-top:var(--space-md)}.transport-contact__directory{margin-top:var(--space-xs);display:grid}.transport-contact__person{gap:var(--space-sm);border-top:var(--line-quiet);min-width:0;padding-block:var(--space-sm);grid-template-columns:minmax(5rem,.65fr) minmax(0,1.35fr);display:grid}.transport-contact__person:first-child{border-top:0}.transport-contact__person dt{color:var(--color-ink-soft);font-size:var(--type-caption);font-weight:700}.transport-contact__person dd{gap:var(--space-2xs);min-width:0;display:grid}.transport-contact__person strong{font-size:var(--type-ui);overflow-wrap:anywhere;line-height:1.4}.transport-contact__person a{width:fit-content;min-height:2.75rem;color:var(--color-teal);font-size:var(--type-ui);text-underline-offset:.3em;align-items:center;font-weight:750;text-decoration:underline 1px;display:inline-flex}.transport-contact__person a:hover{text-decoration-thickness:2px}.mud-bath-status{gap:var(--space-md);margin-top:var(--space-xl);border-top:var(--line);padding-top:var(--space-md);grid-template-columns:2.75rem minmax(0,1fr);display:grid}.mud-bath-status__mark{border:var(--line);background:var(--color-blush);width:2.75rem;height:2.75rem;font-family:var(--font-display);font-size:var(--type-title);align-self:start;place-items:center;font-weight:800;line-height:1;display:grid}.mud-bath-status.is-registered .mud-bath-status__mark{background:var(--color-mint)}.mud-bath-status.is-unavailable .mud-bath-status__mark{background:var(--color-paper);color:var(--color-ink-soft)}.mud-bath-status__content{min-width:0}.mud-bath-status__content h4{font-family:var(--font-display);font-size:var(--type-subheading);margin:0;line-height:1.1}.mud-bath-status__content>strong{margin-top:var(--space-2xs);color:var(--color-ink-soft);font-size:var(--type-ui);display:block}.mud-bath-status.is-registered .mud-bath-status__content>strong{color:var(--color-success)}.mud-bath-status__content>p{color:var(--color-ink-soft);font-size:var(--type-caption)}.ticket-actions{gap:var(--space-xs) var(--space-lg);margin-top:var(--space-xl);border-top:var(--line);padding-top:var(--space-md);flex-wrap:wrap;display:flex}.ticket-actions a,.ticket-actions button{cursor:pointer;min-height:2.75rem;color:var(--color-teal);padding:var(--space-xs) 0;font-size:var(--type-ui);text-align:left;text-underline-offset:.3em;background:0 0;border:0;align-items:center;font-weight:750;line-height:1.35;text-decoration:underline 1px;display:inline-flex}.ticket-actions a{color:var(--color-raspberry-dark)}.ticket-actions a:hover,.ticket-actions button:hover{text-decoration-thickness:2px}.ticket-fineprint{margin-top:var(--space-sm);color:var(--color-ink-soft);font-size:var(--type-ui)}.barcode{width:100%;height:1.5rem;margin-top:var(--space-xs);opacity:.8;background:repeating-linear-gradient(90deg,currentColor 0 2px,#0000 2px 5px,currentColor 5px 6px,#0000 6px 10px)}.prepare-section{background:oklch(85% .14 88/.22)}.checklist-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.checklist{border:var(--line);background:var(--color-paper-strong);min-width:0;box-shadow:var(--shadow-lg)}.checklist__head{justify-content:space-between;align-items:center;gap:var(--space-md);border-bottom:var(--line);padding:var(--space-md);display:flex}.checklist__head span{font-size:var(--type-caption);letter-spacing:.08em;font-weight:700}.checklist--teal .checklist__head{background:var(--color-teal);color:#fff}.checklist--yellow .checklist__head{background:var(--color-marigold)}.checklist ul{padding:var(--space-sm) var(--space-md);gap:0;margin:0;list-style:none;display:grid}.checklist li{gap:var(--space-sm);border-bottom:var(--line-quiet);min-width:0;padding-block:var(--space-sm);font-size:var(--type-body);overflow-wrap:anywhere;grid-template-columns:1.5rem minmax(0,1fr);display:grid}.checklist li:last-child{border-bottom:0}.checklist li>span{border:1px solid var(--color-ink);background:var(--color-mint);width:1.25rem;height:1.25rem;font-size:var(--type-caption);place-items:center;font-weight:700;display:grid}.checklist--yellow li>span{background:var(--color-marigold);border-radius:50%}.dress-code{margin-top:var(--space-xl);border:var(--line);background:var(--color-paper-strong);box-shadow:var(--shadow-lg);display:grid}.dress-code__night{min-width:0;padding:var(--space-lg)}.dress-code__night>p{max-width:48ch;margin-top:var(--space-sm);color:var(--color-ink-soft)}.dress-code__heading h3{margin-top:var(--space-xs)}.color-palette{gap:var(--space-sm);margin:var(--space-lg) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.color-palette li{align-content:start;justify-items:center;gap:var(--space-xs);width:4.75rem;display:grid}.color-palette li>span{background:var(--swatch);border:1px solid oklch(22% .03 42/.28);border-radius:50%;width:2.75rem;height:2.75rem}.color-palette strong{color:var(--color-ink-soft);font-size:var(--type-micro);text-align:center;text-wrap:balance;line-height:1.25}.faq-section{background:oklch(79% .09 230/.16)}.faq-board{border:var(--line);background:var(--color-teal);box-shadow:var(--shadow-lg);color:#fff}.faq-board__head{padding:var(--space-sm) var(--space-md);color:var(--color-marigold);font-size:var(--type-micro);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid oklch(100% 0 0/.35);justify-content:space-between;font-weight:700;display:flex}.faq-board details{border-bottom:1px solid oklch(100% 0 0/.3)}.faq-board details:last-child{border-bottom:0}.faq-board summary{cursor:pointer;align-items:center;gap:var(--space-md);min-height:3.5rem;padding:var(--space-sm) var(--space-md);font-size:var(--type-body);grid-template-columns:minmax(0,1fr) auto;font-weight:700;list-style:none;display:grid}.faq-board summary::-webkit-details-marker{display:none}.faq-board summary i{width:2rem;color:var(--color-marigold);font-family:var(--font-display);font-size:var(--type-subheading);text-align:center;transition:transform .2s var(--ease-out);font-style:normal}.faq-board details[open] summary i{transform:rotate(45deg)}.faq-board__question{gap:var(--space-2xs);overflow-wrap:anywhere;min-width:0;display:grid}.faq-board__question small{color:var(--color-marigold);font-size:var(--type-micro);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.faq-board details>p{max-width:70ch;padding:0 var(--space-md) var(--space-lg);color:oklch(96% .02 180);font-size:var(--type-body);overflow-wrap:anywhere;white-space:pre-line}.organizers-section{background:oklch(94% .032 8/.64)}.organizer-directory{gap:0;display:grid}.organizer-group{border-top:var(--line);min-width:0;padding-block:var(--space-sm) var(--space-lg)}.organizer-group__topic{min-width:0;padding-block:var(--space-xs)}.organizer-group__topic h3{color:var(--color-raspberry-dark);font-size:var(--type-ui);text-wrap:pretty;line-height:1.35}.organizer-group__people{min-width:0;margin:0;padding:0;list-style:none}.organizer-person{justify-content:space-between;align-items:center;gap:var(--space-lg);min-width:0;display:flex}.organizer-person+.organizer-person{border-top:var(--line-quiet)}.organizer-person__slack{align-items:center;gap:var(--space-xs);min-width:0;min-height:2.75rem;color:var(--color-ink);text-decoration:none;display:inline-flex}.organizer-person__slack strong{overflow-wrap:anywhere;font-family:var(--font-display);font-size:var(--type-body);line-height:1.3}.organizer-person__slack>span{color:var(--color-raspberry-dark);font-size:var(--type-caption);flex:none;font-weight:800}.organizer-person__phone{min-height:2.75rem;color:var(--color-teal);font-size:var(--type-ui);font-variant-numeric:tabular-nums;text-underline-offset:.2em;white-space:nowrap;flex:none;align-items:center;font-weight:800;text-decoration:underline .08em;display:inline-flex}.site-footer{border-top:var(--line);background:var(--color-ink);color:var(--color-paper);padding-block:var(--space-3xl) max(var(--space-2xl), env(safe-area-inset-bottom));text-align:center}.site-footer .eyebrow{color:var(--color-marigold)}.site-footer h2{max-width:15ch;margin:var(--space-sm) auto 0;font-size:clamp(2rem,9vw,3.5rem)}.footer-contacts{justify-content:center;gap:var(--space-sm);margin-top:var(--space-xl);flex-wrap:wrap;display:flex}.footer-contacts span,.footer-contacts a{max-width:100%;min-height:2.75rem;padding:var(--space-xs) var(--space-sm);font-size:var(--type-caption);overflow-wrap:anywhere;text-transform:uppercase;border:1px solid;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.site-footer__brand{align-items:center;gap:var(--space-sm);max-width:100%;margin-top:var(--space-xl);text-align:left;display:inline-flex}.site-footer__brand>.techcoop-mark{filter:brightness(0)invert();flex:none;width:2.25rem;height:2.25rem}.site-footer__brand p{line-height:1.1;display:grid}.site-footer__brand strong{font-family:var(--font-display);font-size:var(--type-body);letter-spacing:.08em}.site-footer__brand span{margin-top:var(--space-2xs);color:oklch(97% .018 22/.68);font-size:var(--type-micro);letter-spacing:.08em;font-weight:700}@keyframes hero-in{0%{opacity:0;filter:blur(.4rem);transform:translateY(1rem)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes polaroid-in{0%{filter:blur(.2rem);transform:translateY(1rem)rotate(1deg)}to{filter:blur();transform:translateY(0)rotate(3deg)}}@keyframes draw-arrow{to{stroke-dashoffset:0}}@keyframes spin{to{transform:rotate(360deg)}}@media (hover:hover){.button:hover{background:var(--color-ink);color:#fff;box-shadow:.5rem .5rem 0 var(--color-ink);transform:translate(-.125rem,-.125rem)}.button--primary:hover{background:var(--color-raspberry-dark)}.button--quiet:hover{background:var(--color-paper-strong);color:var(--color-ink);box-shadow:none;transform:none}.nav-menu nav a:hover{background:var(--color-marigold);color:var(--color-ink)}.postcard:hover img{transform:scale(1.025)}.candidate-button:hover{background:var(--color-marigold);box-shadow:.5rem .5rem 0 var(--color-ink);transform:translate(-.125rem,-.125rem)}.meal-menu summary:hover{color:var(--color-raspberry-dark)}.organizer-person__slack:hover strong{color:var(--color-raspberry-dark);text-underline-offset:.18em;text-decoration:underline .1em}.organizer-person__phone:hover{color:var(--color-raspberry-dark)}}@media (width<=20rem){.countdown{row-gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr))}.countdown span+span{border-left:0;padding-left:0}.countdown span:nth-child(2n){padding-left:var(--space-sm);border-left:1px solid oklch(97% .018 22/.34)}.timeline{padding-left:0}.timeline:before,.timeline-item:before{display:none}.timeline-item{gap:var(--space-2xs);grid-template-columns:minmax(0,1fr)}.timeline-item__content{padding-left:0}.organizer-person{padding-block:var(--space-xs);gap:0;display:grid}}@media (width>=48rem){.hero__lights--mobile{display:none}.hero__lights--desktop{display:block}.shell{width:min(100% - 4rem,72rem)}.section{padding-block:var(--space-4xl)}.section-heading{margin-bottom:var(--space-2xl)}.nav-menu>summary{display:none}.nav-menu nav{min-width:auto;box-shadow:none;background:0 0;border:0;align-items:center;display:flex;position:static}.nav-menu nav a{min-height:4rem;padding-inline:var(--space-sm);font-size:var(--type-caption);border:0}.nav-menu nav .locale-switch{min-width:2.75rem;padding-inline:var(--space-xs);justify-content:center}.locale-switch__short{border:0}.locale-switch__long{display:none}.nav-menu nav .nav-menu__cta{min-height:2.75rem;margin-left:var(--space-xs);border:var(--line);box-shadow:.25rem .25rem 0 var(--color-ink)}.hero__lead{margin-top:var(--space-md)}.journey-ticket{margin-top:var(--space-lg);grid-column:1/-1;grid-template-columns:minmax(0,1fr) 20rem;grid-template-areas:"main stub"}.journey-ticket__main{padding:var(--space-xl)}.journey-ticket__stub{border-bottom:0;border-left:2px dashed var(--color-paper);padding:var(--space-xl)}.countdown{gap:var(--space-sm)}.ticket-fields{grid-template-columns:repeat(3,1fr)}.schedule-tabs{width:min(100%,38rem)}.timeline{padding-left:var(--space-md)}.timeline:before{left:6.875rem}.timeline-item{gap:var(--space-xl);padding-block:var(--space-lg);grid-template-columns:5.5rem minmax(0,1fr)}.timeline-item:before{top:2rem;left:6.5rem}.timeline-branches{grid-template-rows:auto auto auto;grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-branch{grid-row:1/span 3;grid-template-rows:subgrid;display:grid}.timeline-branch:first-child{grid-column:1}.timeline-branch:nth-child(2){grid-column:2}.timeline-branch+.timeline-branch{border-top:0;border-left:2px dashed var(--color-ink)}.timeline-branch__item{padding:var(--space-lg)}.location-grid{gap:var(--space-2xl);grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)}.place-ticket dl div{gap:var(--space-md);grid-template-columns:minmax(0,1fr) minmax(7rem,.8fr)}.place-ticket dd{text-align:right}.resort-guide{margin-top:var(--space-2xl);grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)}.resort-guide__amenities,.medical-note{padding:var(--space-xl)}.resort-guide__amenities dl div{gap:var(--space-md);grid-template-columns:minmax(0,.8fr) minmax(8rem,1.2fr)}.resort-guide__amenities dd{text-align:right}.medical-note{border-top:0;border-left:2px dashed var(--color-paper)}.resort-map-dialog{border:var(--line);width:min(100% - 4rem,72rem);height:min(100dvh - 4rem,52rem);box-shadow:var(--shadow-lg);margin:auto}.resort-map-viewer__header{padding:var(--space-lg) var(--space-xl)}.resort-map-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.lookup-grid{gap:var(--space-3xl);grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);align-items:start}.lookup-guide{padding-top:var(--space-md);border-top:0}.lookup-candidates{gap:var(--space-2xl);grid-template-columns:minmax(16rem,.7fr) minmax(0,1.3fr)}.allocation-ticket{grid-template-columns:minmax(0,1fr) 17rem;grid-template-areas:"header stub""body stub"}.allocation-ticket__header{padding:var(--space-xl) var(--space-xl) 0}.allocation-ticket__body{padding:0 var(--space-xl) var(--space-xl)}.allocation-ticket__intro{grid-template-columns:1fr auto}.allocation-ticket__stub{border-block:0;border-left:2px dashed var(--color-paper);padding:var(--space-xl);grid-template-rows:auto auto 1fr;align-content:start}.allocation-ticket__stub .barcode{align-self:end}.ticket-summary{grid-template-columns:minmax(0,1fr);gap:0}.ticket-summary strong{font-size:var(--type-subheading)}.ticket-summary>div{padding-block:var(--space-md);border-top:1px solid oklch(97% .018 22/.34)}.ticket-summary>div:first-child{border-top:0;padding-top:0}.allocation__groups{grid-template-columns:repeat(2,minmax(0,1fr))}.transport-assignment{grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);align-items:start}.transport-contact{border-top:0;border-left:var(--line-quiet);padding-top:0;padding-left:var(--space-lg)}.checklist-grid{gap:var(--space-2xl);grid-template-columns:repeat(2,minmax(0,1fr))}.dress-code{margin-top:var(--space-2xl)}.dress-code__night{padding:var(--space-xl)}.organizer-directory{column-gap:var(--space-3xl);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=48rem) and (width<=63.999rem){.nav-menu nav .nav-menu__contact{display:none}}@media (width>=56.25rem){.hero{column-gap:var(--space-xl);padding-top:var(--space-3xl);grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr)}.hero__copy{padding-top:var(--space-md)}.hero__visual{display:block}}@media (width>=64rem){.nav-menu nav a{padding-inline:var(--space-md)}.nav-menu nav .locale-switch{padding-inline:var(--space-xs)}.journey-ticket__main{padding:var(--space-2xl)}.allocation-ticket__header{padding:var(--space-2xl) var(--space-2xl) 0}.allocation-ticket__body{padding:0 var(--space-2xl) var(--space-2xl)}.lookup-form-card{padding:var(--space-xl)}}@media (pointer:coarse){.button,.schedule-tabs button,.resort-map-tabs button,.resort-map-controls button,.resort-map-viewer__close,.faq-board summary,.candidate-button,.organizer-person__slack,.organizer-person__phone,.nav-menu summary,.nav-menu nav a,.ticket-actions a,.ticket-actions button,.transport-contact__person a{min-height:3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.site-header,.button-row,.lookup-form-card,.lookup-guide,.resort-map-dialog,.site-footer{display:none!important}body{background:#fff}.section{break-inside:avoid}.journey-ticket,.postcard,.place-ticket,.allocation-ticket,.checklist,.faq-board{box-shadow:none}}.design-system{padding-block:var(--space-3xl)}.design-system__hero{max-width:58rem;padding-block:var(--space-xl) var(--space-3xl)}.design-system__hero h1{margin-top:var(--space-sm);letter-spacing:-.04em;font-size:clamp(3.25rem,13vw,7rem);font-weight:800}.design-system__hero h1 span{color:var(--color-raspberry)}.design-system__hero>p:not(.eyebrow){max-width:62ch;margin-top:var(--space-lg);color:var(--color-ink-soft)}.design-system__hero .button{margin-top:var(--space-xl)}.design-system__section{border-top:var(--line);padding-block:var(--space-3xl)}.design-system__section>h2{margin-top:var(--space-xs);margin-bottom:var(--space-xl)}.swatch-grid{border:var(--line);box-shadow:var(--shadow-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.swatch{border-right:var(--line);border-bottom:var(--line);min-height:8rem;padding:var(--space-md);align-content:end;display:grid}.swatch:nth-child(2n){border-right:0}.swatch:nth-last-child(-n+2){border-bottom:0}.swatch strong{font-family:var(--font-display);font-size:1.25rem}.swatch code{font-size:.6875rem}.swatch--ink{background:var(--color-ink);color:#fff}.swatch--paper{background:var(--color-paper)}.swatch--teal{background:var(--color-teal);color:#fff}.swatch--raspberry{background:var(--color-raspberry);color:#fff}.swatch--marigold{background:var(--color-marigold)}.swatch--mint{background:var(--color-mint)}.swatch--sky{background:var(--color-sky)}.swatch--grape{background:var(--color-grape)}.type-specimens{gap:var(--space-lg);max-width:62rem;display:grid}.type-specimens__script{color:var(--color-teal);font-family:var(--font-script);font-size:clamp(2.75rem,10vw,5rem);line-height:1.1}.type-specimens__display{font-family:var(--font-display);font-size:clamp(2rem,7vw,3.5rem);font-weight:800;line-height:1.05}.type-specimens__body{max-width:65ch}.design-system__row{align-items:center;gap:var(--space-lg);flex-wrap:wrap;display:flex}.design-system__materials{gap:var(--space-2xl);display:grid}.design-system__rules{align-content:center;gap:var(--space-lg);display:grid}.design-system__rules span{background:var(--color-ink);height:.125rem;display:block}.design-system__rules span:nth-child(2){background:var(--color-raspberry);width:75%}.design-system__rules span:nth-child(3){background:var(--color-teal);width:45%}.design-system__rules p{max-width:48ch;color:var(--color-ink-soft)}@media (width>=48rem){.swatch-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.swatch:nth-child(2n){border-right:var(--line)}.swatch:nth-child(4n){border-right:0}.swatch:nth-last-child(-n+4){border-bottom:0}.design-system__materials{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}}
