:root{color-scheme:dark;--surface:#111;--surface-sunken:#111;--surface-overlay:#000;--ink:#e0e0e0;--ink-strong:#fff;--ink-muted:#ccc;--rule:#2c2c2c;--rule-strong:#6e6e6e;--accent:#f45744;--accent-ink:#111;--eyebrow-ink:var(--accent);--pending-surface:#fff4d6;--pending-ink:#3a2c00;--pending-rule:#b98900;--z-lightbox:200;--font-body:"Raleway", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Oswald", "Raleway", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "Segoe UI Mono", monospace;--font-display-script:"Vivaldi", "Apple Chancery", "Snell Roundhand", "Segoe Script", "Brush Script MT", cursive;--fs-display:clamp(3rem, 11vw, 7.8125rem);--fs-display-script:clamp(2.625rem, 13vw, 7.8125rem);--fs-title:clamp(2rem, 7.5vw, 5rem);--fs-subtitle:clamp(1.125rem, 3.2vw, 1.5rem);--fs-lead:clamp(1.0625rem, 1.6vw + .7rem, 1.375rem);--fs-body:1rem;--fs-small:.9375rem;--fs-eyebrow:clamp(.875rem, .4vw + .78rem, 1.125rem);--fs-nav:clamp(1.375rem, 5vw, 2rem);--fs-button:1.125rem;--track-display:-.03em;--track-title:-.05em;--track-eyebrow:.22em;--track-button:.1em;--track-body:0;--lh-display:.95;--lh-display-script:1.1;--lh-title:1.05;--lh-tight:1.2;--lh-body:1.65;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-section:clamp(3rem, 9vw, 7rem);--space-gutter:clamp(1rem, 4vw, 2rem);--transition:.3s ease-in-out;--entrance-duration:.8s;--entrance-ease:cubic-bezier(.22, .61, .36, 1);--entrance-step:.2s;--tap-min:44px;--tap-gap:.75rem;--measure:38rem;--shell-max:72rem;--z-totop:70;--z-header:60;--z-overlay:80;--z-skip:100}:root[data-theme=light]{color-scheme:light;--surface:#fff;--surface-sunken:#fff;--surface-overlay:#fff;--ink:#5f5f5f;--ink-strong:#111;--ink-muted:#5f5f5f;--rule:#a6a6a6;--rule-strong:#888;--accent:#f45744;--accent-ink:#111;--eyebrow-ink:var(--ink-muted)}@font-face{font-family:Raleway;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/raleway-latin-var.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:Oswald;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/oswald-latin-var.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:Vivaldi;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/vivaldi-latin.woff2)format("woff2");unicode-range:U+??}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-body);font-size:100%;line-height:var(--lh-body);scroll-behavior:smooth;scroll-padding-block-start:calc(var(--space-3) * 2 + var(--fs-subtitle) * var(--lh-tight) + var(--tap-gap) + var(--tap-min) + 1px + var(--space-2))}body{background:var(--surface);color:var(--ink);font-size:var(--fs-body);letter-spacing:var(--track-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100dvh;margin:0;display:flex}img,svg,video{max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink-strong);font-weight:700;line-height:var(--lh-title);letter-spacing:var(--track-title);margin:0 0 var(--space-3);overflow-wrap:break-word}h1{font-size:var(--fs-title)}h2,h3{font-size:var(--fs-subtitle)}p{margin:0 0 var(--space-3);max-width:var(--measure)}.lead{font-size:var(--fs-lead);color:var(--ink);max-width:var(--measure)}a{color:var(--ink-strong);text-underline-offset:.2em;transition:color var(--transition);text-decoration-thickness:1px}a:hover{color:var(--accent)}:root[data-theme=light] a:hover{color:var(--ink-strong);text-decoration-thickness:3px;text-decoration-color:var(--accent)}ul,ol{padding-inline-start:1.25em}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 7px var(--ink-strong)}.shell{width:100%;max-width:var(--shell-max);padding-inline:var(--space-gutter);margin-inline:auto}.flow>*+*{margin-block-start:var(--space-3)}section{margin-block-end:var(--space-section)}.section{padding-block:var(--space-section);margin-block-end:0}.section--sunken{background:var(--surface-sunken)}.section-head{margin-block-end:var(--space-4)}.section-head__eyebrow,.hero__eyebrow{font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);font-weight:700;line-height:var(--lh-tight);color:var(--eyebrow-ink);margin:0 0 var(--space-2)}.section-head__title{font-size:var(--fs-title);line-height:var(--lh-title);letter-spacing:var(--track-title);text-transform:uppercase;margin:0 0 var(--space-3)}.section-head__lead{font-size:var(--fs-lead);max-width:var(--measure);margin:0}main{flex:1 0 auto;padding-block-start:var(--space-4)}.skip-link{left:var(--space-2);top:var(--space-2);z-index:var(--z-skip);min-height:var(--tap-min);background:var(--accent);color:var(--accent-ink);padding:var(--space-2) var(--space-3);align-items:center;font-weight:700;text-decoration:none;display:inline-flex;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{border-block-end:1px solid var(--rule);padding-block:var(--space-3)}.header-bar{z-index:var(--z-header);justify-content:space-between;align-items:center;gap:var(--tap-gap);background:var(--surface);border-block-end:1px solid var(--rule);padding-block:var(--space-3);flex-wrap:wrap;display:flex;position:sticky;top:0}.header-top{justify-content:space-between;align-items:center;gap:var(--tap-gap);flex-wrap:wrap;display:flex}.header-actions{align-items:center;gap:var(--tap-gap);flex-wrap:wrap;display:flex}.brand{font-family:var(--font-display);font-size:var(--fs-subtitle);text-transform:uppercase;letter-spacing:var(--track-title);font-weight:700;line-height:var(--lh-tight);color:var(--ink-strong);margin:0}.brand a{color:inherit;text-decoration:none}.header-bar .brand a{min-height:var(--tap-min);align-items:center;display:inline-flex}.motto{margin:var(--space-1) 0 0;color:var(--ink-muted);font-style:italic}.motto-companion{color:var(--ink-muted);margin:0}.signed-in-strip{display:none}html[data-session=in] .signed-in-strip:not([hidden]){border-block:2px solid var(--accent);background:var(--surface);display:block}.signed-in-strip__inner{justify-content:space-between;align-items:center;gap:var(--tap-gap);min-height:var(--tap-min);padding-block:var(--space-2);flex-wrap:wrap;display:flex}.signed-in-strip__text{color:var(--ink);margin:0}.signed-in-strip__link{min-height:var(--tap-min);font-family:var(--font-display);color:var(--ink-strong);text-decoration-color:var(--accent);align-items:center;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.lang-toggle{align-items:center;gap:var(--tap-gap);display:flex}.lang-toggle a,.lang-toggle span{min-width:var(--tap-min);min-height:var(--tap-min);padding:0 var(--space-2);border:1px solid var(--rule-strong);color:var(--ink);font-family:var(--font-display);letter-spacing:.06em;transition:background var(--transition), color var(--transition), border-color var(--transition);justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.lang-toggle [aria-current=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.theme-toggle{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);min-width:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--rule-strong);color:var(--ink);font-family:var(--font-display);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:border-color var(--transition), color var(--transition);background:0 0;font-weight:700;display:inline-flex}.theme-toggle:hover{border-color:var(--accent)}.theme-toggle__icon{flex:none;width:1.1em;height:1.1em;display:inline-flex}.theme-toggle__option{align-items:center;gap:var(--space-2);display:inline-flex}.theme-toggle__option--light{display:inline-flex}.theme-toggle__option--dark,:root[data-theme=light] .theme-toggle__option--light{display:none}:root[data-theme=light] .theme-toggle__option--dark{display:inline-flex}.site-nav ul{gap:var(--tap-gap);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.site-nav a{min-height:var(--tap-min);padding:0 var(--space-2);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.site-nav a[aria-current=page]{color:var(--ink-strong);text-underline-offset:4px;text-decoration:underline 3px;text-decoration-color:var(--accent);font-weight:700}.menu-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);min-width:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--rule-strong);color:var(--ink);font-family:var(--font-display);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;font-weight:700;display:inline-flex}html:not([data-js]) .menu-button{display:none}.nav-overlay{z-index:var(--z-overlay);justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-gutter);background:var(--surface-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition), transform var(--transition), visibility 0s var(--transition);flex-direction:column;display:flex;position:fixed;inset:0;transform:translateY(-1rem)}.nav-overlay[data-open=true]{opacity:1;visibility:visible;transition:opacity var(--transition), transform var(--transition), visibility 0s;transform:none}.nav-overlay__list{align-items:center;gap:var(--tap-gap);flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.nav-overlay__link{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);font-family:var(--font-display);font-size:var(--fs-nav);font-weight:700;line-height:var(--lh-tight);text-transform:uppercase;text-align:center;color:var(--ink-strong);justify-content:center;align-items:center;text-decoration:none;display:flex}.nav-close{top:var(--space-3);right:var(--space-gutter);min-height:var(--tap-min);min-width:var(--tap-min);border:1px solid var(--rule-strong);color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex;position:absolute}html:not([data-js]) .nav-overlay{opacity:1;visibility:visible;background:0 0;padding:0;display:block;position:static;transform:none}html:not([data-js]) .nav-close{display:none}html:not([data-js]) .nav-overlay__list{flex-flow:wrap;justify-content:flex-start}.hero{padding-block:var(--space-section);position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(70% 55% at 15% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 70%), radial-gradient(60% 50% at 100% 100%, color-mix(in srgb, var(--ink-strong) 7%, transparent), transparent 70%);position:absolute;inset:0}.hero>*{position:relative}.hero__title{font-family:var(--font-display-script);font-size:var(--fs-display-script);font-synthesis:none;font-weight:400;line-height:var(--lh-display-script);letter-spacing:normal;text-transform:none;color:var(--ink-strong);margin:0 0 var(--space-3);overflow-wrap:break-word}.hero__lead{font-size:var(--fs-lead);max-width:var(--measure);margin:0 0 var(--space-4)}.hero__actions{gap:var(--tap-gap);flex-wrap:wrap;align-items:center;display:flex}.intro-verse__inner{max-width:var(--measure)}.intro-verse__line{font-size:var(--fs-lead);line-height:var(--lh-body);color:var(--ink-strong);margin:0 0 var(--space-3)}.intro-verse .motto{margin-block-start:var(--space-2)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);min-width:var(--tap-min);padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--fs-button);text-transform:uppercase;letter-spacing:var(--track-button);text-align:center;cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition);border:2px solid #0000;font-weight:700;text-decoration:none;display:inline-flex}.button--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.button--primary:hover{color:var(--ink-strong);border-color:var(--accent);background:0 0}.button--quiet{color:var(--ink-strong);border-color:var(--rule-strong);background:0 0}.button--quiet:hover{border-color:var(--accent);color:var(--ink-strong)}.cta{margin:0 0 var(--space-4);max-width:none}.contact-reveal{display:block}html:not([data-js]) .contact-reveal__trigger:not([href]){display:none}.contact-reveal__group{margin-block-start:var(--space-3)}.contact-reveal__group:not([hidden]){gap:var(--space-3);display:grid}.contact-reveal__row{gap:var(--space-1);max-width:var(--measure);margin:0;display:grid}.contact-reveal__label{font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-muted);font-weight:700}.contact-reveal__link{width:fit-content;max-width:100%;min-height:var(--tap-min);font-size:var(--fs-lead);color:var(--ink-strong);text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:.2em;overflow-wrap:anywhere;transition:text-decoration-color var(--transition);align-items:center;display:flex}.contact-reveal__link:hover{text-decoration-color:var(--accent)}.contact-reveal__nojs{margin:var(--space-3) 0 0;max-width:var(--measure);color:var(--ink-muted)}@media (prefers-reduced-motion:no-preference){.contact-reveal__group:not([hidden]){animation:.3s ease-in-out both contact-reveal-in}}@keyframes contact-reveal-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}.accordion{border-block-start:1px solid var(--rule)}.accordion__item{border-block-end:1px solid var(--rule)}.accordion__trigger{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-min);padding:var(--space-3) 0;color:var(--ink-strong);font-family:var(--font-display);font-size:var(--fs-subtitle);font-weight:700;line-height:var(--lh-tight);text-align:start;cursor:pointer;transition:color var(--transition);background:0 0;border:0;display:flex}.accordion__label{overflow-wrap:break-word}.accordion__icon{width:1em;height:1em;color:var(--accent);transition:transform var(--transition);flex:none}.accordion__trigger[aria-expanded=true] .accordion__icon{transform:rotate(180deg)}.accordion__panel{padding:0 0 var(--space-4);display:none}.accordion__trigger[aria-expanded=true]+.accordion__panel,html:not([data-js]) .accordion__panel{display:block}html:not([data-js]) .accordion__icon{display:none}html:not([data-js]) .accordion__trigger{cursor:default}.service{border-block-start:1px solid var(--rule);margin-block-end:var(--space-4);padding-block-start:var(--space-3)}.pending{max-width:var(--measure);background:var(--pending-surface);color:var(--pending-ink);border:2px dashed var(--pending-rule);padding:var(--space-2) var(--space-3);margin:0 0 var(--space-3);display:block}.pending-label{letter-spacing:.04em;font-weight:700}.pending-ref{font-family:var(--font-mono);font-size:var(--fs-small)}.site-footer{padding-block:var(--space-section);background:var(--surface-sunken);color:var(--ink-muted);font-size:var(--fs-small);margin-block-start:var(--space-section)}.site-footer a{min-height:var(--tap-min);color:var(--ink-strong);align-items:center;display:inline-flex}.site-footer__links{align-items:center;gap:var(--tap-gap);flex-wrap:wrap;display:flex}.site-footer a.site-footer__panel{color:var(--ink-muted);font-size:var(--fs-small,.875rem)}.to-top{right:var(--space-gutter);bottom:var(--space-gutter);z-index:var(--z-totop);min-width:var(--tap-min);min-height:var(--tap-min);background:var(--surface-sunken);border:1px solid var(--rule-strong);color:var(--ink-strong);opacity:0;visibility:hidden;transition:opacity var(--transition), transform var(--transition), visibility var(--transition);justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:fixed;transform:translateY(.5rem)}.to-top[data-visible=true]{opacity:1;visibility:visible;transform:none}.to-top:hover{border-color:var(--accent)}.reveal{opacity:1}html[data-reveal=play] .reveal{animation:reveal-rise var(--entrance-duration) var(--entrance-ease) both;animation-delay:calc(var(--reveal-step,0) * var(--entrance-step))}@keyframes reveal-rise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=40rem){html{scroll-padding-block-start:5rem}.nav-overlay__list{max-width:var(--measure)}.site-footer{justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;display:flex}}@media (width>=64rem){.hero{padding-block:calc(var(--space-section) * 1.25)}}html:not([data-js]) .theme-toggle{display:none}.accordion__head{font-size:inherit;font-weight:inherit;letter-spacing:inherit;margin:0}.accordion__head+.accordion__panel{display:block}.accordion__panel[hidden]{display:none}.nav-overlay__link[aria-current=page]{text-underline-offset:6px;text-decoration:underline 3px;text-decoration-color:var(--accent)}.button-list{gap:var(--tap-gap);margin:0 0 var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.button-list>li{flex:14rem;display:flex}.button-list .button{text-align:start;justify-content:flex-start;width:100%}@media (width>=40rem){.site-footer>.shell{justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;display:flex}}.section-head:before{content:"";background:var(--accent);width:3rem;height:3px;margin-block-end:var(--space-3);display:block}@media (prefers-reduced-motion:no-preference){html[data-io] .io{opacity:0;transition:opacity .5s var(--entrance-ease), transform .5s var(--entrance-ease);transition-delay:calc(var(--io-step,0) * 80ms);transform:translateY(.75rem)}html[data-io] .io[data-inview]{opacity:1;transform:none}}.service-index{margin:0 0 var(--space-4);border-block-start:1px solid var(--rule);padding:0;list-style:none}.service-index__link{isolation:isolate;align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:var(--space-3) var(--space-2);border-block-end:1px solid var(--rule);font-family:var(--font-display);font-size:var(--fs-subtitle);font-weight:700;line-height:var(--lh-tight);color:var(--ink-strong);transition:color var(--transition);text-decoration:none;display:flex;position:relative;overflow:hidden}.service-index__link:before{content:"";z-index:-1;background:var(--surface-sunken);transform-origin:0;transition:transform var(--transition);position:absolute;inset:0;transform:scaleX(0)}.service-index__link:hover:before,.service-index__link:focus-visible:before{transform:none}.service-index__ordinal{font-size:var(--fs-eyebrow);letter-spacing:var(--track-eyebrow);color:var(--eyebrow-ink);flex:none}.service-index__name{overflow-wrap:break-word}.service-index__arrow{width:1.1em;height:1.1em;color:var(--rule-strong);transition:transform var(--transition), color var(--transition);flex:none;margin-inline-start:auto}.service-index__link:hover,.service-index__link:focus-visible{border-block-end-color:var(--rule-strong)}.service-index__link:hover .service-index__arrow,.service-index__link:focus-visible .service-index__arrow{color:var(--accent);transform:translate(.25rem)}.button{isolation:isolate;position:relative;overflow:hidden}.button--primary{background:0 0}.button--primary:before{content:"";z-index:-1;background:var(--accent);transform-origin:100%;transition:transform var(--transition);position:absolute;inset:0}.button--primary:hover:before{transform:scaleX(0)}.button--quiet:before{content:"";z-index:-1;background:var(--surface-sunken);transform-origin:0;transition:transform var(--transition);position:absolute;inset:0;transform:scaleX(0)}.button--quiet:hover:before{transform:none}@media (prefers-reduced-motion:no-preference){html[data-js] .accordion__panel:not([hidden]){animation:accordion-panel-in .35s var(--entrance-ease) both}}@keyframes accordion-panel-in{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:none}}.hero__title{margin-inline-start:-.143em}.brand--mark{font-family:var(--font-display-script);font-size:calc(var(--fs-subtitle) * 1.4);font-synthesis:none;text-transform:none;letter-spacing:normal;font-weight:400;line-height:calc(var(--lh-tight) / 1.4);margin-inline-start:-.143em}.photos__grid{gap:var(--tap-gap);margin:0 0 var(--space-4);grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));padding:0;list-style:none;display:grid}.photos__item{gap:var(--space-2);margin:0;display:grid}.hero{isolation:isolate}.hero__media{z-index:0;will-change:transform;position:absolute;inset:-12% 0;overflow:hidden}.hero__media img{object-fit:cover;opacity:0;width:100%;height:100%;position:absolute;inset:0}.hero__media img[data-current]{opacity:1}.hero:before{z-index:1}.hero>.shell{z-index:2}.hero[data-hero-has-photo]:before{background:radial-gradient(70% 55% at 15% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), linear-gradient(to bottom, color-mix(in srgb, var(--surface) 90%, transparent), color-mix(in srgb, var(--surface) 84%, transparent))}.hero[data-hero-has-photo] .hero__eyebrow{color:var(--ink-strong)}.hero[data-hero-has-photo] .button--primary{box-shadow:0 0 0 2px var(--surface)}@media (width>=64rem){.hero[data-hero-has-photo]:before{background:radial-gradient(70% 55% at 15% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), linear-gradient(to right, var(--surface) 40%, color-mix(in srgb, var(--surface) 90%, transparent) 55%, color-mix(in srgb, var(--surface) 84%, transparent) 100%)}.hero__media{inset:-12% 0 -12% 40%}}@media (prefers-reduced-motion:no-preference){.hero__media img{transition:opacity 1.2s var(--entrance-ease)}}.hero__pause{right:var(--space-gutter);bottom:var(--space-3);z-index:3;min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--rule);background:color-mix(in srgb, var(--surface) 82%, transparent);color:var(--ink-strong);cursor:pointer;border-radius:4px;place-items:center;padding:0;display:grid;position:absolute}.hero__pause[hidden]{display:none}.hero__pause svg{width:1.25rem;height:1.25rem}.hero__pause[data-paused=true] svg rect:last-child{display:none}.lightbox:not([hidden]){z-index:var(--z-lightbox);align-items:center;gap:var(--space-2);padding:var(--space-3);background:#09090bf0;grid-template-rows:auto 1fr;grid-template-columns:auto 1fr auto;display:grid;position:fixed;inset:0}.lightbox__button[hidden]{display:none}.lightbox__bar{justify-content:space-between;align-items:center;gap:var(--space-3);grid-column:1/-1;display:flex}.lightbox__counter{color:#f4f4f5;margin:0;font-size:.875rem}.lightbox__image{object-fit:contain;grid-column:2;justify-self:center;max-width:100%;max-height:calc(100svh - 8rem)}.lightbox__button{min-width:var(--tap-min);min-height:var(--tap-min);color:#f4f4f5;cursor:pointer;background:#f4f4f514;border:1px solid #f4f4f547;border-radius:4px;place-items:center;padding:0;display:grid}.lightbox__button svg{width:1.5rem;height:1.5rem}.lightbox__button:hover{background:#f4f4f52e}.lightbox__nav--prev{grid-column:1}.lightbox__nav--next{grid-column:3}html[data-lightbox-open] body{overflow:hidden}.photos__open{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.photos__item img{aspect-ratio:4/3;object-fit:cover;background:var(--surface-sunken);border:1px solid var(--rule);width:100%;display:block}@media (prefers-reduced-motion:no-preference){.photos__item{animation:.3s ease-in-out both contact-reveal-in}}.photos__delete{justify-self:start}.photos__empty,.photos__nojs{color:var(--ink-muted);max-width:var(--measure)}.photos-manage{gap:var(--space-3);margin-block-start:var(--space-4);display:grid}.photos-manage__open,.photos-manage__logout{justify-self:start}.photos-manage__open[hidden]{display:none}.photos-manage__login:not([hidden]){gap:var(--space-3);max-width:var(--measure);display:grid}.photos-manage__field{gap:var(--space-1);font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-muted);font-weight:700;display:grid}.photos-manage__field input{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--fs-body);letter-spacing:var(--track-body);text-transform:none;color:var(--ink-strong);background:var(--surface);border:1px solid var(--rule-strong);font-weight:400}.photos-manage__error{padding:var(--space-2) var(--space-3);border-inline-start:3px solid var(--accent);color:var(--ink-strong);margin:0}.photos-manage__upload:not([hidden]){gap:var(--space-3);display:grid}.photos-manage__tips-heading{font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-muted);margin:0;font-weight:700}.photos-manage__tips{max-width:var(--measure);margin:0}.photos-manage__inputs{gap:var(--tap-gap);flex-wrap:wrap;display:flex}.photos-manage__status{gap:var(--space-1);max-width:var(--measure);font-size:var(--fs-small);color:var(--ink-muted);margin:0;padding:0;list-style:none;display:grid}[data-photos-thumbs-status][hidden]{display:none}.photos-manage__file{color:var(--ink);overflow-wrap:anywhere}.photos-manage__state{font-weight:700}.photos-group:not([hidden]){margin-block-start:var(--space-4);display:block}.photos-group__heading{font-family:var(--font-display);font-size:var(--fs-subtitle);font-weight:700;line-height:var(--lh-tight);color:var(--ink-strong);margin:0 0 var(--space-3)}.accordion__photos:not([hidden]){margin-block-start:var(--space-3);display:block}.photos-manage__service{max-width:var(--measure)}.photos-manage__field select{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--fs-body);letter-spacing:var(--track-body);text-transform:none;color:var(--ink-strong);background:var(--surface);border:1px solid var(--rule-strong);border-radius:0;width:100%;font-weight:400}.admin-band{background:var(--accent)}.admin-band__text{min-height:var(--tap-min);padding-block:var(--space-2);font-family:var(--font-display);font-size:var(--fs-subtitle);color:var(--accent-ink);align-items:center;margin:0;font-weight:700;display:flex}.nav-overlay__signout{cursor:pointer;background:0 0;border:none}html:not([data-js]) .nav-overlay__signout{display:none}.doc{max-width:var(--measure)}.doc h2{font-size:var(--fs-subtitle);margin-block-start:var(--space-5)}.doc h3{font-size:var(--fs-lead);margin-block-start:var(--space-4)}.doc ul,.doc ol{margin:0 0 var(--space-3)}.doc li{margin-block-end:var(--space-2)}.doc blockquote{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-inline-start:3px solid var(--accent);font-size:var(--fs-lead)}.doc strong{color:var(--ink-strong)}.panel{gap:var(--space-3);display:grid}.panel__locked{color:var(--ink-muted);max-width:var(--measure);margin:0}.panel__inside:not([hidden]){gap:var(--space-3);display:grid}.panel__logout{justify-self:start}.panel__photos{gap:var(--space-2);justify-items:start;display:grid}.panel__guide{color:var(--ink);text-decoration-color:var(--rule-strong)}.panel-card{gap:var(--space-2);padding:var(--space-4);border:2px solid var(--accent);color:var(--ink);transition:border-color var(--transition);text-decoration:none;display:grid}.panel-card--done{color:var(--ink-muted)}.panel-card__title{font-family:var(--font-display);font-size:var(--fs-subtitle);font-weight:700;line-height:var(--lh-tight);color:var(--ink-strong)}.panel-card--done .panel-card__title{color:var(--ink)}.panel-card__cta{font-family:var(--font-display);font-size:var(--fs-button);text-transform:uppercase;letter-spacing:var(--track-button);color:var(--ink-strong);font-weight:700}.panel-card--done .panel-card__cta{color:var(--ink-muted)}.panel-card:hover{border-color:var(--ink-strong)}.card-qr{margin:var(--space-3) 0}.card-qr img{width:min(100%,14.5rem);height:auto;padding:var(--space-2);background:#fff;border-radius:6px;display:block}.card-qr figcaption{margin-top:var(--space-2);flex-direction:column;gap:2px;display:flex}.card-qr__address{font-weight:700}.card-status{min-height:1.5em}.card-how li{margin-bottom:var(--space-2)}.panel__heading{margin:var(--space-3) 0 0}@media print{.header-bar,.nav-overlay,.site-footer,.to-top{display:none}.doc{max-width:none}}.qform{gap:var(--space-4);max-width:var(--measure);display:grid}.qform__note{color:var(--ink-muted);margin:0}.qform__status{font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-muted);margin:0;font-weight:700}.qform__status [data-q-state]{color:var(--ink-strong);margin-inline-start:var(--space-3)}.qform__section{gap:var(--space-4);margin-block-end:0;display:grid}.qform__section h2{margin:var(--space-3) 0 0}.qform__item{gap:var(--space-2);display:grid}.qform__item label{color:var(--ink-strong)}.qform__number{font-family:var(--font-display);letter-spacing:var(--track-eyebrow);color:var(--eyebrow-ink);margin-inline-end:var(--space-2);font-weight:700}.qform textarea{width:100%;min-height:calc(var(--tap-min) * 2);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-strong);background:var(--surface);border:1px solid var(--rule-strong);resize:vertical}.intake:not([hidden]){gap:var(--space-4);max-width:var(--measure);display:grid}.intake__field{gap:var(--space-2);display:grid}.intake__field label,.intake__group legend{color:var(--ink-strong);font-weight:700}.intake__optional{color:var(--ink-muted);font-weight:400}.intake__hint,.intake__note{color:var(--ink-muted);margin:0}.intake__field input,.intake__field select,.intake__field textarea{width:100%;min-height:var(--tap-min);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-strong);background:var(--surface);border:1px solid var(--rule-strong);border-radius:0}.intake__field textarea{min-height:calc(var(--tap-min) * 3);resize:vertical}.intake__group{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.intake__group legend{margin-block-end:var(--space-1);padding:0}.intake__choice{align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--rule);color:var(--ink-strong);cursor:pointer;display:flex}.intake__choice input{width:1.5rem;height:1.5rem;accent-color:var(--accent);flex:none;margin:0}.intake__choice:has(input:checked){border-color:var(--accent)}.intake__status{font-family:var(--font-display);font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-strong);margin:0;font-weight:700}.intake__card:not([hidden]){margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-inline-start:3px solid var(--accent);color:var(--ink-strong);max-width:var(--measure);display:block}.intake+h2{margin-block-start:var(--space-4)}.intake__done:not([hidden]){gap:var(--space-3);max-width:var(--measure);display:grid}.intake__done h2{margin:0}.inbox{gap:var(--space-4);display:grid}.inbox__status,.inbox__note{color:var(--ink-muted);max-width:var(--measure);margin:0}.inbox__group:not([hidden]){gap:var(--space-3);display:grid}.inbox__group h2{margin:0}.inbox__list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.inbox__item{gap:var(--space-2);padding:var(--space-4);border:2px solid var(--accent);max-width:var(--measure);display:grid}.inbox__item--done{border-color:var(--rule);color:var(--ink-muted)}.inbox__name{font-family:var(--font-display);font-size:var(--fs-subtitle);font-weight:700;line-height:var(--lh-tight);color:var(--ink-strong);margin:0}.inbox__item--done .inbox__name{color:var(--ink)}.inbox__meta{font-size:var(--fs-small);color:var(--ink-muted);margin:0}.inbox__details{white-space:pre-line;overflow-wrap:anywhere;margin:0}.inbox__actions{gap:var(--tap-gap);margin:var(--space-2) 0 0;flex-wrap:wrap;display:flex}.reviews{gap:var(--space-4);display:grid}.reviews__note,.reviews__status{margin:0}.reviews__list{gap:var(--space-4);margin:0;padding:0;list-style:none}.reviews__list:not([hidden]){display:grid}.reviews__item{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--rule);max-width:var(--measure);display:grid}.reviews__name{color:var(--ink-strong);margin:0;font-weight:700}.reviews__date{font-size:var(--fs-small);color:var(--ink-muted);margin:0}.reviews__text{white-space:pre-line;overflow-wrap:anywhere;margin:0}.stars{align-items:center;gap:.2rem;display:inline-flex}.stars__star{fill:none;width:clamp(1.25rem,4vw,1.5rem);height:clamp(1.25rem,4vw,1.5rem);stroke:var(--rule-strong);stroke-width:1.5px;flex:none}.stars__star--on{fill:var(--accent);stroke:var(--accent)}.reviews__photos{gap:var(--tap-gap);margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.reviews__photo-open{cursor:pointer;width:4.5rem;min-height:var(--tap-min);background:0 0;border:0;padding:0;display:block}.reviews__photo-open img{aspect-ratio:1;object-fit:cover;background:var(--surface-sunken);border:1px solid var(--rule);width:100%;display:block}.reviews__reply{gap:var(--space-1);margin:var(--space-2) 0 0;padding:var(--space-2) 0 0 var(--space-3);border-left:3px solid var(--accent);color:var(--ink-muted);display:grid}.reviews__reply-heading{font-family:var(--font-display);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--ink-strong);margin:0;font-weight:700}.reviews__reply-text{white-space:pre-line;overflow-wrap:anywhere;color:var(--ink);margin:0}.reviews__reply-date{font-size:var(--fs-small);margin:0}.review-state:not([hidden]){gap:var(--space-3);max-width:var(--measure);display:grid}.review-state:not([hidden]) h2{margin:0}.review-state__actions{gap:var(--tap-gap);flex-wrap:wrap;margin:0;display:flex}.review-form__error{padding:var(--space-2) var(--space-3);border-inline-start:3px solid var(--accent);color:var(--ink-strong);max-width:var(--measure);margin:0}.review-form__stars{gap:var(--space-1);display:flex}.review-form__star{width:var(--tap-min);height:var(--tap-min);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.review-form__star-icon{fill:none;width:1.75rem;height:1.75rem;stroke:var(--rule-strong);stroke-width:1.5px;transition:fill var(--transition), stroke var(--transition)}.review-form__star--on .review-form__star-icon{fill:var(--accent);stroke:var(--accent)}.review-form__rating-status{color:var(--ink-strong);margin:0;font-weight:700}.review-form__consent[hidden]{display:none}.review-form__photos{gap:var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.review-form__photo{width:5.5rem;height:5.5rem;position:relative}.review-form__photo img{object-fit:cover;border:1px solid var(--rule-strong);width:100%;height:100%;display:block}.review-form__photo-remove{width:var(--tap-min);height:var(--tap-min);border:1px solid var(--rule-strong);background:var(--surface);color:var(--ink-strong);font-size:var(--fs-body);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;position:absolute;top:-.5rem;right:-.5rem}.review-form__photos-field{gap:var(--space-3)}.review-form__photos-field input[type=file]{width:1px;min-height:0;padding:0}.review-state:focus-visible{box-shadow:none;outline:0}.admin-reviews{gap:var(--space-5);display:grid}.admin-reviews__invites,.admin-reviews__invite-list-wrap:not([hidden]){gap:var(--space-3);display:grid}.admin-reviews__list{gap:var(--space-4);display:grid}.admin-reviews__photos{gap:var(--space-2);margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.admin-reviews__photo{border:1px solid var(--rule-strong);cursor:pointer;background:0 0;width:4.5rem;height:4.5rem;padding:0;display:block}.admin-reviews__photo img{object-fit:cover;width:100%;height:100%;display:block}.admin-reviews__confirm:not([hidden]){align-items:center;gap:var(--space-3);margin:var(--space-2) 0 0;flex-wrap:wrap;display:flex}.admin-reviews__confirm p{color:var(--ink-strong);margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}html{scroll-behavior:auto}html[data-reveal=play] .reveal{opacity:1;animation:none;transform:none}}
