.contact-page{--contact-panel:rgb(255 255 255/88%);--contact-panel-border:rgb(255 255 255/62%);--contact-field-bg:rgb(255 255 255/48%);--contact-text:#111111;--contact-muted:rgb(17 17 17/62%);--contact-line:rgb(17 17 17/18%);--contact-focus:#075d88;--contact-error:#9c1b2f;--contact-button:#111111;--contact-button-text:#ffffff;position:relative;height:100dvh;min-height:100svh;overflow:hidden;color:var(--contact-text);font-family:var(--font-vercetti),sans-serif}.contact-page[data-theme=dark]{--contact-panel:rgb(15 15 15/88%);--contact-panel-border:rgb(255 255 255/16%);--contact-field-bg:rgb(255 255 255/5%);--contact-text:#f5f5f1;--contact-muted:rgb(245 245 241/62%);--contact-line:rgb(255 255 255/18%);--contact-focus:#87d4fa;--contact-error:#ff9aaa;--contact-button:#f5f5f1;--contact-button-text:#111111}.contact-sky-layer{position:fixed;z-index:0;inset:0;overflow:clip}.contact-scroll-wrapper{height:100dvh!important;min-height:100svh!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.contact-content{position:relative;z-index:1;pointer-events:none}.contact-form-stage{display:flex;min-height:100svh;align-items:center;padding:max(clamp(2.75rem,7svh,5.5rem),env(safe-area-inset-top)) max(clamp(1rem,4vw,4.5rem),env(safe-area-inset-right)) max(clamp(2rem,6svh,5rem),env(safe-area-inset-bottom)) max(clamp(1rem,4vw,4.5rem),env(safe-area-inset-left))}@supports (min-height:100dvh){.contact-form-stage{min-height:100dvh}}.contact-experience{width:min(72rem,100%);margin:0 auto;pointer-events:auto}.contact-intro{display:grid;max-width:57rem;grid-template-columns:minmax(0,1fr) minmax(15rem,.48fr);column-gap:clamp(1.5rem,5vw,5.5rem);align-items:end;margin-bottom:clamp(1.35rem,3.2vw,2.75rem);color:#ffffff;text-shadow:0 1px 18px rgb(0 0 0/14%)}.contact-kicker{grid-column:1/-1;margin:0 0 clamp(.75rem,1.8vw,1.35rem);font-size:clamp(.68rem,.75vw,.8rem);letter-spacing:.24em;line-height:1}.contact-kicker__letter{display:inline-block}.contact-intro h2{margin:0;font-family:var(--font-soria),serif;font-size:clamp(2.35rem,5.1vw,5.75rem);font-weight:400;line-height:.92;letter-spacing:-.035em;text-wrap:balance}.contact-intro>p:last-child{margin:0 0 .25rem;color:rgb(255 255 255/82%);font-size:clamp(.86rem,1.1vw,1.05rem);line-height:1.5;text-wrap:pretty}.contact-form{position:relative;padding:clamp(1.25rem,3.3vw,3.25rem);border:1px solid var(--contact-panel-border);border-radius:clamp(.35rem,.8vw,.75rem);background:var(--contact-panel);box-shadow:0 1.75rem 5rem rgb(8 34 48/20%);color:var(--contact-text);-webkit-backdrop-filter:blur(24px) saturate(115%);backdrop-filter:blur(24px) saturate(115%)}.contact-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}.contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.15rem,2.2vw,2rem) clamp(1.1rem,2.6vw,2.6rem)}.contact-field{position:relative;min-width:0}.contact-field--full{grid-column:1/-1}.contact-field label{display:inline-block;margin-bottom:.6rem;color:var(--contact-text);font-size:clamp(.72rem,.8vw,.82rem);font-weight:600;letter-spacing:.075em;text-transform:uppercase}.contact-field label span{color:var(--contact-muted);font-size:.82em;font-weight:400}.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:0;border-bottom:1px solid var(--contact-line);border-radius:0;outline:none;background:transparent;color:var(--contact-text);font:inherit;font-size:1rem;line-height:1.35;transition:border-color .18s ease,background-color .18s ease;-webkit-appearance:none;appearance:none;-webkit-user-select:text;user-select:text}.contact-field input,.contact-field select{min-height:2.85rem;padding:.25rem 2rem .65rem 0}.contact-field textarea{min-height:clamp(7rem,15vh,10rem);padding:.65rem .75rem;border:1px solid var(--contact-line);border-radius:.35rem;background:var(--contact-field-bg);resize:vertical}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--contact-muted);opacity:.72}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--contact-focus)}.contact-field textarea:focus{background:color-mix(in srgb,var(--contact-field-bg) 82%,transparent)}.contact-field input[aria-invalid=true],.contact-field select[aria-invalid=true],.contact-field textarea[aria-invalid=true]{border-color:var(--contact-error)}.contact-select-wrap{position:relative}.contact-select-wrap:after{position:absolute;top:50%;right:.15rem;width:.55rem;height:.55rem;border-right:1px solid;border-bottom:1px solid;content:"";pointer-events:none;transform:translateY(-70%) rotate(45deg)}.contact-field__label{display:inline-block;margin-bottom:.6rem;color:var(--contact-text);font-size:clamp(.72rem,.8vw,.82rem);font-weight:600;letter-spacing:.075em;text-transform:uppercase}.contact-range{min-width:0}.contact-range__heading{display:flex;gap:.75rem;align-items:baseline;justify-content:space-between}.contact-range__output{color:var(--contact-text);font-size:clamp(.82rem,.95vw,.95rem);font-weight:500;line-height:1.3;text-align:right;white-space:nowrap}.contact-range__track{position:relative;isolation:isolate;height:2.2rem;margin:.35rem 0 0}.contact-range__fill,.contact-range__rail{position:absolute;top:50%;right:0;left:0;height:3px;border-radius:999px;transform:translateY(-50%)}.contact-range__rail{z-index:1;background:var(--contact-line)}.contact-range__fill{z-index:2;right:calc(100% - var(--range-end));left:var(--range-start);background:var(--contact-focus)}.contact-field .contact-range__input{position:absolute;inset:0;width:100%;height:2.2rem;min-height:0;padding:0;border:0;border-bottom:0;outline:none;background:transparent;pointer-events:none;touch-action:none;-webkit-appearance:none;appearance:none}.contact-field .contact-range__input::-webkit-slider-runnable-track{height:3px;border:0;background:transparent;box-shadow:none}.contact-field .contact-range__input::-moz-range-track{height:3px;border:0;background:transparent;box-shadow:none}.contact-field .contact-range__input::-moz-range-progress{height:3px;background:transparent}.contact-field .contact-range__input::-webkit-slider-thumb{position:relative;z-index:6;width:1.25rem;height:1.25rem;margin-top:calc((3px - 1.25rem) / 2);border:2px solid var(--contact-panel);border-radius:50%;background:var(--contact-focus);box-shadow:0 0 0 1px var(--contact-focus),0 .25rem .8rem rgb(8 34 48/22%);cursor:grab;pointer-events:auto;-webkit-appearance:none;appearance:none}.contact-field .contact-range__input::-moz-range-thumb{position:relative;z-index:6;width:1.25rem;height:1.25rem;border:2px solid var(--contact-panel);border-radius:50%;background:var(--contact-focus);box-shadow:0 0 0 1px var(--contact-focus),0 .25rem .8rem rgb(8 34 48/22%);cursor:grab;pointer-events:auto}.contact-field .contact-range__input:active::-webkit-slider-thumb{cursor:grabbing}.contact-field .contact-range__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--contact-panel),0 0 0 4px var(--contact-focus)}.contact-field .contact-range__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--contact-panel),0 0 0 4px var(--contact-focus)}.contact-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.45rem,1vw,.75rem)}.contact-services[data-invalid=true]{padding:.25rem;border:1px solid var(--contact-error);border-radius:.5rem}.contact-service-card{position:relative;display:grid;min-width:0;min-height:clamp(4.8rem,7vw,5.7rem);grid-template-columns:auto minmax(0,1fr);gap:.65rem;align-items:center;padding:clamp(.7rem,1.4vw,1rem);border:1px solid var(--contact-line);border-radius:.4rem;outline:1px solid transparent;background:color-mix(in srgb,var(--contact-field-bg) 72%,transparent);color:var(--contact-text);cursor:pointer;font:inherit;text-align:left;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.contact-service-card:hover{border-color:color-mix(in srgb,var(--contact-focus) 58%,var(--contact-line));background:color-mix(in srgb,var(--contact-field-bg) 88%,var(--contact-focus) 12%);transform:translateY(-2px)}.contact-service-card:focus-visible{outline:2px solid var(--contact-focus);outline-offset:2px}.contact-service-card[aria-pressed=true]{border-color:var(--contact-focus);outline-color:color-mix(in srgb,var(--contact-focus) 45%,transparent);background:color-mix(in srgb,var(--contact-field-bg) 78%,var(--contact-focus) 22%);box-shadow:0 .65rem 1.6rem rgb(8 34 48/12%)}.contact-service-card__icon{display:grid;width:2rem;height:2rem;border:1px solid var(--contact-line);border-radius:.3rem;color:var(--contact-text);font-size:.78rem;line-height:1;place-items:center}.contact-service-card[aria-pressed=true] .contact-service-card__icon{border-color:var(--contact-focus);background:var(--contact-focus);color:var(--contact-button-text)}.contact-service-card__label{overflow-wrap:anywhere;font-size:clamp(.75rem,.88vw,.88rem);font-weight:500;line-height:1.25}.contact-service-card__state{position:absolute;top:.35rem;right:.45rem;color:var(--contact-muted);font-size:.72rem}.contact-service-card[aria-pressed=true] .contact-service-card__state{color:var(--contact-focus)}.contact-field__error{margin:.45rem 0 0;color:var(--contact-error);font-size:.76rem;line-height:1.35}.contact-form__footer{display:flex;gap:1rem 1.5rem;align-items:center;margin-top:clamp(1.4rem,3vw,2.5rem)}.contact-form__footer button{display:inline-flex;min-width:min(100%,13rem);min-height:3.25rem;align-items:center;justify-content:space-between;gap:2rem;padding:.85rem 1.05rem .8rem 1.2rem;border:1px solid var(--contact-button);border-radius:.25rem;background:var(--contact-button);color:var(--contact-button-text);cursor:pointer;font:inherit;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:transform .18s ease,opacity .18s ease}.contact-form__footer button:hover:not(:disabled){transform:translateY(-2px)}.contact-form__footer button:focus-visible{outline:2px solid var(--contact-focus);outline-offset:3px}.contact-form__footer button:disabled{cursor:wait;opacity:.68}.contact-form__availability{max-width:25rem;margin:0;color:var(--contact-muted);font-size:.75rem;line-height:1.4}.contact-form__status{min-height:1.3rem;margin-top:.65rem;color:var(--contact-muted);font-size:.78rem;line-height:1.4}.contact-footer-stage{display:grid;min-height:clamp(18rem,46svh,32rem);place-items:center;pointer-events:none}.contact-experience[data-static=true] [data-contact-motion]{transform:none!important}@media (min-width:769px) and (max-width:1024px){.contact-services{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.contact-form-stage{align-items:flex-start;padding-top:max(3.5rem,env(safe-area-inset-top))}.contact-intro{display:block}.contact-intro h2{max-width:11ch}.contact-intro>p:last-child{max-width:34rem;margin-top:1rem}.contact-form__grid{grid-template-columns:1fr}.contact-field--full{grid-column:auto}.contact-services{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form__footer{align-items:flex-start;flex-direction:column}.contact-form__footer button{width:100%}}@media (max-width:430px){.contact-form-stage{padding-right:max(clamp(.75rem,3.5vw,1rem),env(safe-area-inset-right));padding-left:max(clamp(.75rem,3.5vw,1rem),env(safe-area-inset-left))}.contact-intro{margin-bottom:1.2rem}.contact-intro h2{font-size:clamp(2.2rem,12vw,3.35rem)}.contact-form{padding:clamp(1.05rem,5vw,1.4rem);-webkit-backdrop-filter:blur(18px) saturate(110%);backdrop-filter:blur(18px) saturate(110%)}.contact-form__grid{gap:1.1rem}.contact-field input,.contact-field select,.contact-field textarea{font-size:16px}.contact-field input,.contact-field select{min-height:2.65rem}.contact-range__heading{align-items:flex-start}.contact-range,.contact-services{margin-right:.55rem}.contact-field .contact-range__input,.contact-range__track{height:2.75rem}.contact-field .contact-range__input{min-height:0}.contact-field .contact-range__input::-webkit-slider-thumb{width:1.55rem;height:1.55rem;margin-top:calc((3px - 1.55rem) / 2)}.contact-field .contact-range__input::-moz-range-thumb{width:1.55rem;height:1.55rem}.contact-service-card{min-height:4.8rem;gap:.5rem;padding:.65rem}.contact-service-card__icon{width:1.75rem;height:1.75rem}.contact-service-card__label{font-size:.75rem}.contact-field textarea{min-height:8.5rem}}@media (prefers-reduced-motion:reduce){.contact-page *,.contact-page :after,.contact-page :before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}