@layer components{html.contact-light body{background:var(--bone)}.contact-main,.contact-foot{--accent:#0a0a0a;--fg:#0a0a0a;--muted:#56564f;--faint:#6a6a63;--line:#0a0a0a1f;--line-2:#0a0a0a3d;--black:var(--bone);color:var(--fg);background:var(--bone)}main.contact-main{background:var(--bone);overscroll-behavior:none;height:100svh;overflow:hidden}.contact-main .wrap{max-width:none;height:100%;padding-inline:clamp(12px,1.5vw,22px)}.contact-main .c-panel{--fg:#ededea;--muted:#8a8a86;--faint:#808079;--accent:#fafaf8;--line:#ededea24;--line-2:#ededea42;--black:#0a0a0a;height:100%;color:var(--fg);background:#0a0a0a}.contact-main .c-mark{display:inline-flex}.contact-main .c-mark svg{width:40px;height:40px}.contact-main .c-avail{color:var(--fg)}.contact-main .c-avail:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px}.contact-main .c-hello{color:var(--fg)}.contact-main .c-panel-foot{border-top:1px solid var(--line)}.contact-main .c-glyph{opacity:.85;pointer-events:none;z-index:1;width:185%;max-width:none;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}.contact-main .c-glyph svg{transform-origin:50%;width:100%;height:auto;animation:16s ease-in-out infinite c-glyph-float;display:block;overflow:visible}.contact-main .c-glyph svg circle,.contact-main .c-glyph svg path{fill:none;stroke:#b4b4b04d;stroke-width:1px}.contact-main .c-glyph .g-draw{stroke:#b4b4b08c;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}html.contact-reveal-all .contact-main .c-glyph .g-draw{animation:c-glyph-draw 2.2s var(--ease) .1s forwards}html.contact-reveal-all .contact-main .c-glyph .g-ring{animation-delay:.35s}@keyframes c-glyph-draw{to{stroke-dashoffset:0}}@keyframes c-glyph-float{0%,to{transform:rotate(-7deg)translate(0)}50%{transform:rotate(-9.5deg)translate(-10px,10px)}}.contact-main .coord .k{font-family:var(--mono);letter-spacing:.04em;color:var(--muted);margin-bottom:7px;font-size:11px}.contact-main .coord .v{font-family:var(--disp);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(15px,1.05vw,18px);font-weight:700}.contact-main .coord .v.live{align-items:center;gap:9px;display:inline-flex}.contact-main .coord .v.live:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.contact-main a.coord-link .v{transition:color var(--dur-2)}.contact-main a.coord-link:hover .v{color:var(--muted)}.contact-main .c-formwrap{overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;height:100%;overflow-y:auto}.contact-main .c-formwrap::-webkit-scrollbar{width:0;height:0;display:none}.contact-main .fieldset-label{color:var(--muted)}.contact-main .chip{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-full);border:1px solid var(--line);color:var(--fg);cursor:pointer;transition:background var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease);background:0 0;padding:12px 18px;font-size:12px;font-weight:400}.contact-main .chip:hover{border-color:var(--fg)}.contact-main .chip[aria-pressed=true]{background:var(--fg);color:var(--black);border-color:var(--fg)}.contact-main .field{border:1px solid var(--line);border-radius:var(--radius);transition:border-color var(--dur) var(--ease);padding:0 16px;position:relative}.contact-main .field.field-msg{grid-column:1/-1}.contact-main .field:focus-within{border-color:var(--accent)}.contact-main .field input,.contact-main .field textarea{width:100%;color:var(--fg);font-family:var(--disp);letter-spacing:-.01em;resize:none;background:0 0;border:0;outline:none;padding:16px 0 14px;font-size:clamp(16px,1.3vw,19px);font-weight:500;line-height:1.4}.contact-main .field textarea{min-height:104px}.contact-main .field input::placeholder,.contact-main .field textarea::placeholder{color:var(--faint);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:400}.contact-main .field.filled{border-color:var(--line-2)}.contact-main .field .underfill{display:none}.contact-main .field-note{color:var(--accent);margin:6px 0 0}.contact-main .cal-period-label{color:var(--muted)}.contact-main .field-note:empty{margin:0}.contact-main .guest-row{width:100%;max-width:420px;position:relative}.contact-main .guest-row input{padding-right:34px}.contact-main .guest-remove{width:26px;height:26px;color:var(--faint);cursor:pointer;transition:color var(--dur-2);background:0 0;border:0;justify-content:center;align-items:center;font-size:21px;line-height:1;display:inline-flex;position:absolute;bottom:9px;right:10px}.contact-main .guest-remove:hover{color:var(--fg)}.contact-main .guest-add{cursor:pointer;font-family:var(--mono);letter-spacing:.03em;color:var(--muted);transition:color var(--dur-2);background:0 0;border:0;align-items:center;gap:9px;padding:4px 0;font-size:13px;display:inline-flex}.contact-main .guest-add:hover{color:var(--fg)}.contact-main .guest-add .plus{border:1px solid var(--line);width:22px;height:22px;transition:border-color var(--dur-2), transform var(--dur-2);border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:inline-flex}.contact-main .guest-add:hover .plus{border-color:var(--fg);transform:rotate(90deg)}.contact-main .budget-label{color:var(--muted)}.contact-main .budget-label .cur{color:var(--faint)}.contact-main .budget-label .req{color:var(--accent)}.contact-main .field.invalid,.contact-main .chips.invalid .chip{border-color:var(--accent)}.contact-main .f-error{color:var(--accent);margin:12px 0 0}.contact-main .submit-error{margin:0}.contact-main .call-phone{max-width:340px;margin-bottom:24px;display:block}.contact-main .cal-hint{color:var(--faint)}.contact-main .cal-sub{color:var(--muted)}.contact-main .cal-days{scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none}.contact-main .cal-days::-webkit-scrollbar{display:none}.contact-main .cal-day{scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--radius);width:68px;color:var(--fg);cursor:pointer;transition:background var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease), transform var(--dur-2) var(--ease);background:0 0;flex-direction:column;flex:none;align-items:center;gap:3px;padding:12px 0 10px;display:flex}.contact-main .cal-day:hover{border-color:var(--fg)}.contact-main .cal-day .dow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);transition:color var(--dur-2);font-size:10px}.contact-main .cal-day .dnum{font-family:var(--disp);letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1}.contact-main .cal-day .mon{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);transition:color var(--dur-2);font-size:10px}.contact-main .cal-day[aria-pressed=true]{background:var(--fg);color:var(--black);border-color:var(--fg)}.contact-main .cal-day[aria-pressed=true] .dow,.contact-main .cal-day[aria-pressed=true] .mon{color:var(--black)}.contact-main .cal-slot{font-family:var(--mono);letter-spacing:.04em;border-radius:var(--radius-full);border:1px solid var(--line);color:var(--fg);cursor:pointer;transition:background var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease), transform var(--dur-2) var(--ease);background:0 0;padding:10px 17px;font-size:13px}.contact-main .cal-slot:hover{border-color:var(--fg)}.contact-main .cal-slot[aria-pressed=true]{background:var(--fg);color:var(--black);border-color:var(--fg)}.contact-main .cal-slot.taken{opacity:.3;cursor:not-allowed;text-decoration:line-through}.contact-main .cal-slot.taken:hover{border-color:var(--line)}.contact-main .send{cursor:pointer;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg);background:0 0;border:0;align-items:center;gap:16px;padding:0;font-size:14px;font-weight:500;display:inline-flex}.contact-main .send .lab{border-radius:var(--radius-full);border:1px solid var(--fg);align-items:center;padding:17px 30px;display:inline-flex;position:relative;overflow:hidden}.contact-main .send .lab .fill{background:var(--fg);transform-origin:0;transition:transform var(--dur-3) var(--ease);z-index:0;position:absolute;inset:0;transform:scaleX(1)}.contact-main .send .lab .t{z-index:1;color:var(--black);transition:color var(--dur-2) var(--ease);position:relative}.contact-main .send:hover .lab .fill{transform:scaleX(0)}.contact-main .send:hover .lab .t{color:var(--fg)}.contact-main .send .ico{border:1px solid var(--line-2);width:52px;height:52px;transition:border-color var(--dur-2) var(--ease), background var(--dur-2) var(--ease), transform var(--dur-2) var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.contact-main .send:hover .ico{border-color:var(--fg)}.contact-main .send:hover .ico .arrow{transform:translate(2px,-2px)}.contact-main .send .ico .arrow{transition:opacity var(--dur) var(--ease), transform var(--dur-2) var(--ease);font-size:17px}.contact-main .send .ico .spinner,.contact-main .send .ico .check{opacity:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.contact-main .send .ico .spinner{border:2px solid var(--line-2);border-top-color:var(--fg);border-radius:50%;width:20px;height:20px;margin:auto}.contact-main .send .ico .check{color:var(--black);font-size:18px;transform:scale(.4)}.contact-main .send:disabled{opacity:1;pointer-events:none}.contact-main .send.is-sending .ico .arrow,.contact-main .send.is-sending .ico{transform:none}.contact-main .send.is-sending .ico .arrow{opacity:0}.contact-main .send.is-sending .ico .spinner{opacity:1;animation:.7s linear infinite send-spin}.contact-main .send.is-sent .lab .fill{transform:scaleX(1)}.contact-main .send.is-sent .lab .t{color:var(--black)}.contact-main .send.is-sent .ico{background:var(--accent);border-color:var(--accent);animation:send-pop .55s var(--ease);transform:none}.contact-main .send.is-sent .ico .arrow{opacity:0;transform:scale(.4)}.contact-main .send.is-sent .ico .check{opacity:1;transition:opacity var(--dur) var(--dur) var(--ease), transform var(--dur-2) var(--dur) var(--back,var(--ease));transform:scale(1)}@keyframes send-spin{to{transform:rotate(360deg)}}@keyframes send-pop{0%{transform:scale(.6)}55%{transform:scale(1.12)}to{transform:scale(1)}}.contact-main .sent-msg{font-family:var(--mono);letter-spacing:.04em;color:var(--accent);align-items:center;gap:9px;max-width:36ch;font-size:12px;display:none}.contact-main .sent-msg.on{animation:sent-in .55s .15s var(--ease) both;display:inline-flex}@keyframes sent-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.contact-main .back-home{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line);border-radius:var(--radius-full);animation:sent-in .55s .25s var(--ease) both;transition:border-color var(--dur-2) var(--ease), background var(--dur-2) var(--ease), color var(--dur-2) var(--ease);align-items:center;gap:9px;padding:14px 24px;font-size:13px;text-decoration:none;display:inline-flex}.contact-main .back-home:hover{border-color:var(--fg);background:var(--fg);color:var(--black)}.contact-main .back-home .arrow{transition:transform var(--dur-2) var(--ease)}.contact-main .back-home:hover .arrow{transform:translate(2px,-2px)}.contact-foot{border-top:1px solid var(--line);background:var(--bone);padding:10px 0}.contact-foot .foot-bottom{border-top:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;padding-top:0;display:flex}.contact-foot .foot-bottom .c{font-family:var(--mono);color:var(--faint);font-size:11px}.contact-foot .lt{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:400}.contact-foot .navc{color:var(--fg);font-size:11px}@media (width<=920px){main.contact-main{height:auto;overflow:visible}.contact-main .wrap,.contact-main .c-panel{height:auto}.contact-main .c-formwrap{height:auto;overflow:visible}.contact-main .c-glyph{opacity:.06;width:48%}}@media (prefers-reduced-motion:reduce){.contact-main .coord .v.live:before,.contact-main .c-avail:before,.contact-main .send.is-sent .ico,.contact-main .sent-msg.on,.contact-main .back-home{animation:none}.contact-main .send.is-sending .ico .spinner{animation-duration:1.4s}.contact-main .c-glyph svg{animation:none}html.contact-reveal-all .contact-main .c-glyph .g-draw{stroke-dashoffset:0;animation:none}}.contact-main .reveal-line,.contact-main .reveal-line>span{display:block}html.contact-gsap .contact-main .c-hello,html.contact-gsap .contact-main [data-rise],html.contact-gsap .contact-main .chip{opacity:0}html.contact-reveal-all .contact-main .c-hello,html.contact-reveal-all .contact-main [data-rise]{opacity:1!important;transform:none!important}html.contact-reveal-all .contact-main .chip{opacity:1!important}.contact-main .c-proof{border-top:1px solid var(--line)}.contact-main .c-proof-q{color:var(--fg)}.contact-main .c-proof-cite{color:var(--muted)}.contact-main .c-proof-cite b{color:var(--fg);font-weight:400}.contact-main .c-proof-label{color:var(--faint)}.contact-main .c-proof-row span{font-family:var(--disp);letter-spacing:-.01em;color:var(--muted);font-size:13px;font-weight:600}.contact-main .reply-note{color:var(--muted)}.contact-main .reply-note:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px}.contact-main .chip.chip-soft{color:var(--muted)}}
