:root{--font-sans:"Elms Sans", ui-sans-serif, system-ui, sans-serif;--font-display:"Syne", var(--font-sans);--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:clamp(1.5rem, 3.5vw, 1.875rem);--text-3xl:clamp(1.75rem, 4vw, 2.25rem);--text-hero:clamp(2rem, 5vw, 2.75rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--reparo-ease:cubic-bezier(.33, 1, .68, 1);--radius-btn:10px;--radius-card:14px;--radius-card-lg:18px;--reparo-sky:#7dd3fc;--reparo-sky-bright:#bae6fd;--reparo-sky-deep:#38bdf8;--reparo-sky-ink:#0c4a6e;--reparo-sky-muted:#0369a1;--reparo-surface-mist:#f0f9ff;--reparo-hairline:#0ea5e938;--reparo-hairline-strong:#38bdf859;--shadow-xs:0 1px 2px #0e74900f;--shadow-sm:0 2px 10px #0e749014, 0 1px 2px #0ea5e90d;--shadow-md:0 4px 18px #0e74901a, 0 2px 4px #0ea5e90f;--shadow-lg:0 10px 32px #0e74901f, 0 2px 8px #0ea5e912;--shadow-modal:0 24px 48px #0e749024, 0 8px 20px #0ea5e91a;--ring-focus:0 0 0 2px #fff, 0 0 0 4px var(--reparo-sky-deep);--site-footer-h:0px;--site-footer-offset:env(safe-area-inset-bottom,0px);--page-bottom-safe:calc(env(safe-area-inset-bottom,0px) + 1rem);--sp-text:#0f172a;--sp-text-muted:#64748b;--sp-surface:#ffffffe0;--sp-surface-glass:#ffffffe0;--sp-border:#0ea5e938;--sp-border-strong:#38bdf859;--sp-accent-glow:#38bdf833;scroll-padding-bottom:var(--page-bottom-safe)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#38bdf8 #0a0a0a;margin:0;padding:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#38bdf8;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#7dd3fc}::-webkit-scrollbar-corner{background:#0a0a0a}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}html,body{height:100%;min-height:100%}html{overflow-x:hidden}body{font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;background-color:var(--reparo-surface-mist);background-image:radial-gradient(120% 85% at 100% -10%,#7dd3fc47 0%,#0000 52%),radial-gradient(80% 55% at -5% 105%,#f0f9fff2 0%,#0000 48%),linear-gradient(165deg,#f8fafc 0%,#f0f9ff 42%,#e8f4fc 100%);background-attachment:fixed;flex-direction:column;transition:background-color .45s,color .35s;display:flex;overflow:hidden auto}body:before{content:"";pointer-events:none;z-index:0;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}body>*{z-index:1;position:relative}.config-banner{z-index:200000;padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));color:#f0f9ff;font-size:var(--text-sm);text-align:center;box-shadow:var(--shadow-sm);background:linear-gradient(90deg,#0c4a6e 0%,#0369a1 100%);line-height:1.45;position:sticky;top:0}.config-banner code{background:#ffffff1f;border-radius:4px;padding:1px 6px;font-size:.85em}.site-shell{flex-direction:column;flex:1;width:100%;min-height:100dvh;display:flex}.site-shell-main{width:100%;min-height:100dvh;padding-bottom:var(--page-bottom-safe);box-sizing:border-box;flex-direction:column;flex:auto;display:flex}body:has(.page-container){height:auto;min-height:100%}:is(body:has(.page-container) .site-shell,body:has(.page-container) .site-shell-main){height:auto;min-height:100dvh}.site-shell-main:has(.page-container){padding-bottom:0;overflow:visible}.site-footer{z-index:200;text-align:center;min-height:var(--site-footer-h);padding:12px max(16px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-right));box-sizing:border-box;letter-spacing:.02em;color:#64748b;border-top:1px solid var(--reparo-hairline);-webkit-backdrop-filter:blur(12px);background:#ffffffeb;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0e74900f}body.z-black .site-footer{color:#94a3b8;background:#0f172aeb;border-top-color:#7dd3fc26;box-shadow:0 -4px 24px #0003}.site-footer__text{max-width:42rem;margin:0 auto;line-height:1.5}.wrapper{min-height:0;min-height:calc(100svh - var(--page-bottom-safe));min-height:calc(100dvh - var(--page-bottom-safe));flex-direction:column;flex:1;height:auto;display:flex;position:relative;overflow:hidden visible}body.z-black .footer{color:#999}#loader{background:var(--reparo-surface-mist);z-index:100000;width:100%;height:100dvh;transition:opacity .4s var(--reparo-ease);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:fixed;inset:0}#loader .loader-tagline{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-lg);letter-spacing:-.03em;color:#0f172a;text-align:center;max-width:280px;font-weight:700;line-height:1.25}body.z-black #loader .loader-tagline{color:#e2e8f0}#loader.fade-out{animation:loaderOut .45s var(--reparo-ease) forwards}@keyframes loaderOut{to{opacity:0;pointer-events:none;visibility:hidden}}.gear{width:80px;height:80px;animation:2s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}.map-container{width:100%;height:100%;position:absolute;inset:0}.map-container--no-key{padding:max(16px, env(safe-area-inset-top)) 16px 16px;text-align:center;font-size:var(--text-sm);color:#525252;background:var(--reparo-surface-mist,#f0f9ff);justify-content:center;align-items:center;line-height:1.5;display:flex}.map-container--no-key code{background:#0000000f;border-radius:4px;padding:2px 6px;font-size:.85em}body.z-black .map-container--no-key{color:#a3a3a3;background:#020617}body.z-black .map-container--no-key code{color:#e5e5e5;background:#ffffff14}.scrollable-section{z-index:2;pointer-events:none;flex-direction:column;align-items:center;padding:12px 0 20px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:visible}.scrollable-section>*{pointer-events:auto}.site-shell-main:has(.home.wrapper){height:calc(100dvh - var(--site-footer-offset));min-height:calc(100dvh - var(--site-footer-offset));max-height:calc(100dvh - var(--site-footer-offset));padding-bottom:0;overflow:hidden}.home.wrapper{flex:1;width:100%;height:100%;min-height:100%;position:relative;overflow:hidden}.home.wrapper .map-container{z-index:0;width:100%;height:100%;position:absolute;inset:0}.home-dock{z-index:2;padding:0 0 env(safe-area-inset-bottom);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.home-dock>*{pointer-events:auto}.services-panel{-webkit-backdrop-filter:blur(24px)saturate(1.15);width:100%;max-width:min(600px,100%);padding:10px 16px max(14px, env(safe-area-inset-bottom));background:#ffffffed;border:1px solid #0ea5e926;border-bottom:none;border-top-left-radius:20px;border-top-right-radius:20px;margin:0 auto;box-shadow:0 -8px 40px #0e74901f,0 -2px 8px #0000000a}body.z-black .services-panel{background:#020617f0;border-color:#7dd3fc2e;box-shadow:0 -8px 40px #0006,0 -2px 8px #0003}.services-panel__handle{background:#00000024;border-radius:2px;width:36px;height:4px;margin:0 auto 12px}body.z-black .services-panel__handle{background:#ffffff2e}.services-panel__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.services-panel__heading{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#0f172a;flex:1;min-width:0;margin:0;font-size:1rem;font-weight:700}body.z-black .services-panel__heading{color:#f1f5f9}.services-panel__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.services-panel__mic{width:36px;min-width:36px;height:36px;color:var(--reparo-sky-deep);cursor:pointer;transition:background .18s ease, transform .18s var(--reparo-ease);-webkit-tap-highlight-color:transparent;background:#0ea5e91a;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.services-panel__mic:hover{background:#0ea5e92e;transform:scale(1.06)}.services-panel__mic:active,.services-panel__mic.listening{color:var(--reparo-sky-deep);background:#38bdf840}.services-panel__mic.listening{animation:1.2s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 #38bdf859}50%{box-shadow:0 0 0 6px #38bdf800}}body.z-black .services-panel__mic{color:var(--reparo-sky-bright);background:#7dd3fc1f}body.z-black .services-panel__mic:hover{background:#7dd3fc38}.services-panel__emergency{color:#fff;letter-spacing:.02em;cursor:pointer;transition:transform .18s var(--reparo-ease), box-shadow .18s ease;white-space:nowrap;background:linear-gradient(135deg,#fbbf24 0%,#f97316 100%);border:none;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:700;display:inline-flex;box-shadow:0 2px 10px #fbbf2459}.services-panel__emergency:hover{transform:translateY(-1px);box-shadow:0 4px 16px #fbbf2473}.services-panel__emergency:active{transform:scale(.97)}.services-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.service-tile{cursor:pointer;color:inherit;transition:transform .18s var(--reparo-ease), background .18s ease;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:10px 2px 8px;font-family:inherit;display:flex}.service-tile:hover{background:#0ea5e912;transform:translateY(-2px)}.service-tile:active{background:#0ea5e91f;transform:scale(.94)}body.z-black .service-tile:hover{background:#7dd3fc1a}.service-tile__icon{background:#38bdf824;background:var(--tile-color,#38bdf8);border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}@supports (color:color-mix(in lab, red, red)){.service-tile__icon{background:color-mix(in srgb, var(--tile-color,#38bdf8) 16%, transparent)}}.service-tile__icon{color:var(--tile-color,#38bdf8);flex-shrink:0;transition:background .18s}body.z-black .service-tile__icon{background:#38bdf82e;background:var(--tile-color,#38bdf8)}@supports (color:color-mix(in lab, red, red)){body.z-black .service-tile__icon{background:color-mix(in srgb, var(--tile-color,#38bdf8) 22%, transparent)}}.service-tile:hover .service-tile__icon{background:#38bdf83d;background:var(--tile-color,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.service-tile:hover .service-tile__icon{background:color-mix(in srgb, var(--tile-color,#38bdf8) 26%, transparent)}}.service-tile__name{color:#334155;text-align:center;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.65rem;font-weight:600;line-height:1.2;overflow:hidden}body.z-black .service-tile__name{color:#cbd5e1}.service-tile--more .service-tile__icon{color:#475569;background:#64748b1f}body.z-black .service-tile--more .service-tile__icon{color:#94a3b8;background:#ffffff14}.all-services-backdrop{z-index:9000;-webkit-backdrop-filter:blur(4px);background:#00000080;align-items:flex-end;animation:.25s sheet-backdrop-in;display:flex;position:fixed;inset:0}@keyframes sheet-backdrop-in{0%{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:0 0}to{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080}}.all-services-sheet{width:100%;max-width:min(600px,100%);padding:16px 20px max(24px, env(safe-area-inset-bottom));animation:sheet-slide-in .3s var(--reparo-ease);-webkit-overflow-scrolling:touch;background:#fff;border-top-left-radius:24px;border-top-right-radius:24px;max-height:82dvh;margin:0 auto;overflow-y:auto;box-shadow:0 -12px 60px #0003}body.z-black .all-services-sheet{background:#0f172a;box-shadow:0 -12px 60px #00000080}@keyframes sheet-slide-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.all-services-sheet__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.all-services-sheet__title{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#0f172a;margin:0;font-size:1.1rem;font-weight:700}body.z-black .all-services-sheet__title{color:#f1f5f9}.all-services-sheet__close{color:#475569;cursor:pointer;background:#00000012;border:none;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .18s;display:flex}body.z-black .all-services-sheet__close{color:#94a3b8;background:#ffffff1a}.all-services-sheet__close:hover{background:#00000021}.all-services-grid{grid-template-columns:repeat(4,1fr);gap:6px 8px;display:grid}.all-services-grid .service-tile{border-radius:14px;padding:12px 4px 10px}.all-services-grid .service-tile__icon{border-radius:15px;width:48px;height:48px}.all-services-grid .service-tile__name{white-space:normal;text-align:center;font-size:.65rem;line-height:1.25}.map-no-key-inner{border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);max-width:min(340px,100% - 32px);box-shadow:var(--shadow-lg);background:#fffffff5;padding:20px 16px}body.z-black .map-no-key-inner{background:#0f172aeb;border-color:#7dd3fc38}.map-no-key-icon{color:var(--reparo-sky-deep);justify-content:center;margin-bottom:8px;display:flex}.map-no-key-title{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-lg);color:#0f172a;margin-bottom:6px;font-weight:700}body.z-black .map-no-key-title{color:#f8fafc}.map-no-key-text,.map-no-key-hint{font-size:var(--text-sm);color:#64748b;line-height:1.5}.map-no-key-text{margin-bottom:8px}body.z-black .map-no-key-text,body.z-black .map-no-key-hint{color:#94a3b8}@media (min-width:400px){.services-grid{grid-template-columns:repeat(6,1fr);gap:4px}.service-tile{padding:10px 2px 8px}.service-tile__icon{width:40px;height:40px}}@media (min-width:480px){.services-panel{padding:10px 20px max(16px, env(safe-area-inset-bottom))}.services-grid{gap:8px}.service-tile__icon{width:44px;height:44px}}@media (min-width:768px){.home-dock{padding-bottom:0}.services-panel{border-radius:20px 20px 0 0}.all-services-grid{grid-template-columns:repeat(5,1fr)}}@media (max-width:359px){.services-panel{padding:8px 12px max(12px, env(safe-area-inset-bottom))}.services-grid{gap:4px}.service-tile__icon{border-radius:11px;width:38px;height:38px}.service-tile__name{font-size:.58rem}.services-panel__emergency{padding:5px 9px;font-size:.72rem}}.services-panel__browse{color:#0369a1;cursor:pointer;background:#0ea5e90f;border:1px dashed #0ea5e973;border-radius:12px;width:100%;margin-top:10px;padding:10px 12px;font-size:.78rem;font-weight:600}body.z-black .services-panel__browse{color:#7dd3fc;border-color:#7dd3fc59}.signup-modal,.reparo-modal{width:100%;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);z-index:10002;animation:fadeInUp .4s var(--reparo-ease);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.hidden{display:none!important}.signup-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-card);padding:max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));z-index:1;width:calc(100% - 24px);max-width:400px;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-modal);color:#fff;background:#0c1420d1;border:1px solid #7dd3fc33;margin:12px;position:relative;overflow-y:auto}.signup-card-footer{text-align:center;font-size:var(--text-sm);color:#aaa;margin-top:14px}.signup-card-footer a{color:#e5e7eb;font-weight:600}.signup-card h2{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;margin-bottom:8px;font-size:1.5rem;font-weight:700}.signup-card p{color:#ccc;margin-bottom:24px;font-size:.9rem}.signup-card input{color:#fff;background:#ffffff1a;border:none;border-radius:8px;width:100%;margin-bottom:16px;padding:12px}.signup-card input:focus{background:#ffffff26;outline:none}.signup-card input::placeholder{color:#ccc}.signup-card small{color:#999;margin-bottom:16px;display:block}.signup-card button[type=submit]{color:#fff;border-radius:var(--radius-btn);cursor:pointer;width:100%;box-shadow:var(--shadow-sm);transition:transform .2s var(--reparo-ease), box-shadow .2s var(--reparo-ease), background .2s ease, border-color .2s ease;background:linear-gradient(165deg,#082f49 0%,#0c4a6e 100%);border:1px solid #7dd3fc59;margin-bottom:16px;padding:14px 16px;font-size:.95rem;font-weight:700}.signup-card button[type=submit]:hover{box-shadow:var(--shadow-md);background:linear-gradient(165deg,#0c4a6e 0%,#0369a1 100%);border-color:#bae6fd73;transform:translateY(-1px)}.signup-card button[type=submit]:active{box-shadow:var(--shadow-xs);transform:translateY(0)}.signup-card button[type=submit]:focus-visible{box-shadow:var(--shadow-md), var(--ring-focus);outline:none}.oauth{gap:10px;display:flex}.oauth button{border-radius:var(--radius-btn);cursor:pointer;transition:transform .2s var(--reparo-ease), box-shadow .2s var(--reparo-ease), background .2s ease, border-color .2s ease;border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 10px;font-weight:600;display:flex}.oauth .google{color:#000;box-shadow:var(--shadow-xs);background:#fff;border:1px solid #00000014}.oauth .google:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.oauth .apple{color:#fff;box-shadow:var(--shadow-xs);background:#0a0a0a;border:1px solid #ffffff24}.oauth .apple:hover{box-shadow:var(--shadow-sm);background:#141414;transform:translateY(-1px)}.oauth button:focus-visible{box-shadow:var(--shadow-sm), var(--ring-focus);outline:none}.close-modal{width:44px;height:44px;color:var(--reparo-sky-bright);cursor:pointer;transition:background .2s ease, transform .2s var(--reparo-ease), box-shadow .2s ease;background:#7dd3fc1f;border:1px solid #7dd3fc40;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;display:flex;position:absolute;top:12px;right:12px}.close-modal:hover{background:#7dd3fc38;transform:scale(1.05)}.close-modal:focus-visible{box-shadow:var(--ring-focus);outline:none}body.modal-open .fab,body.modal-open .radial-menu{display:none!important}.reparo-modal.hidden{display:none}.pac-container{z-index:100060!important}.reparo-modal-content{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border-radius:var(--radius-card);box-shadow:var(--shadow-modal);color:#fff;text-align:left;background:#0a121ee0;border:1px solid #7dd3fc38;width:90%;max-width:400px;padding:30px 25px;position:relative}.reparo-modal-content h2{font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.03em;align-items:center;gap:8px;margin-bottom:10px;font-size:1.35rem;font-weight:700;display:flex}.reparo-modal-content p{color:#d0d0d0;margin-bottom:18px;font-size:.95rem}.reparo-modal-content textarea{color:#fff;resize:none;background:#7dd3fc0f;border:none;border-radius:10px;outline:none;width:100%;height:90px;margin-bottom:20px;padding:12px 14px;font-size:.95rem}.reparo-modal-content textarea:focus{border:1px solid #7dd3fc73;box-shadow:0 0 0 1px #38bdf833,0 4px 16px #082f4973}.reparo-modal-content textarea:focus-visible{outline:none}.reparo-modal-content button:not(.modal-close){border-radius:var(--radius-btn);color:#fff;letter-spacing:.02em;cursor:pointer;width:100%;box-shadow:var(--shadow-sm);transition:transform .2s var(--reparo-ease), box-shadow .2s var(--reparo-ease), border-color .2s ease, background .2s ease;background:linear-gradient(165deg,#0c4a6e 0%,#0369a1 100%);border:1px solid #7dd3fc59;padding:14px 16px;font-size:.95rem;font-weight:600}.reparo-modal-content button:not(.modal-close):hover{box-shadow:var(--shadow-md);background:linear-gradient(165deg,#0369a1 0%,#0284c7 100%);border-color:#bae6fd80;transform:translateY(-1px)}.reparo-modal-content button:not(.modal-close):active{box-shadow:var(--shadow-xs);transform:translateY(0)}.reparo-modal-content button:not(.modal-close):focus-visible{box-shadow:var(--shadow-md), var(--ring-focus);outline:none}.modal-close{color:#bbb;cursor:pointer;width:36px;height:36px;transition:background .2s ease, color .2s ease, transform .2s var(--reparo-ease);background:#7dd3fc1a;border:1px solid #7dd3fc38;border-radius:10px;justify-content:center;align-items:center;font-size:22px;line-height:1;display:flex;position:absolute;top:12px;right:16px}.modal-close:hover{color:#fff;background:#7dd3fc33;transform:scale(1.04)}.modal-close:focus-visible{box-shadow:var(--ring-focus);outline:none}.reparo-toast{color:#fff;border-radius:var(--radius-btn);opacity:0;z-index:10003;background:#059669;border:1px solid #bae6fd59;padding:12px 22px;font-size:.9rem;font-weight:600;transition:opacity .4s,bottom .4s,box-shadow .3s;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #05966959,0 0 0 1px #7dd3fc26}.reparo-toast.show{opacity:1;bottom:50px}.emergency-btn{color:#000;border-radius:var(--radius-btn);box-shadow:var(--shadow-sm);cursor:pointer;z-index:10001;transition:transform .2s var(--reparo-ease), box-shadow .2s ease;background:#fff;border:1px solid #00000014;padding:12px 18px;font-weight:600;animation:2s infinite pulse;position:fixed;bottom:20px;left:20px}.emergency-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.search-bubble,.location-search-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:20px;outline:none;height:48px;padding:12px 24px;font-size:1rem;font-weight:500;box-shadow:0 0 12px #0003}.search-bubble{color:#000;cursor:pointer;z-index:10001;background:#fff;justify-content:center;align-items:center;gap:4px;min-width:320px;display:flex;position:absolute;top:20px;left:50%;transform:translate(-50%)}.search-bubble .cursor{color:var(--reparo-sky-deep);font-weight:700;animation:1s step-end infinite blink}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{50%{opacity:0}}.location-search-wrapper{z-index:10002;width:320px;transition:all .4s;position:fixed;top:20px;left:50%;transform:translate(-50%)}.location-search-bar{color:#000;background:#fff;width:100%}body.z-black .location-search-bar{color:#fff;background:#020617;border:1px solid #7dd3fc38}body.z-black .search-bubble{color:#fff;background:#020617}body.z-black .search-bubble .cursor{color:#fff}.location-search-wrapper.expanded{width:90vw;max-width:700px}.theme-switcher{color:#292929;border:1px solid var(--reparo-hairline);border-radius:var(--radius-btn);cursor:pointer;box-shadow:var(--shadow-sm);z-index:10001;transition:transform .2s var(--reparo-ease), box-shadow .2s ease;background:linear-gradient(#fff 0%,#f0f9ff 100%);padding:10px 14px;font-size:13px;font-weight:600;position:fixed;bottom:20px;right:20px}.theme-switcher:hover{border-color:var(--reparo-hairline-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.theme-switcher:focus-visible{box-shadow:var(--shadow-md), var(--ring-focus);outline:none}body.z-black{--sp-text:#f1f5f9;--sp-text-muted:#94a3b8;--sp-surface:#082f4973;--sp-surface-glass:#0c14268c;--sp-border:#7dd3fc24;--sp-border-strong:#7dd3fc52;--sp-accent-glow:#38bdf859;color:#fff;--shadow-xs:0 1px 3px #00000080, 0 0 0 1px #38bdf81f;--shadow-sm:0 4px 14px #00000073, 0 0 0 1px #7dd3fc24;--shadow-md:0 8px 24px #00000080, 0 0 0 1px #7dd3fc29;--shadow-lg:0 14px 40px #0000008c, 0 0 0 1px #7dd3fc2e;--shadow-modal:0 28px 56px #000000a6, 0 0 0 1px #7dd3fc33;--ring-focus:0 0 0 2px #020617, 0 0 0 4px var(--reparo-sky-deep);background-color:#020617;background-image:radial-gradient(120% 75% at 50% -20%,#38bdf81f 0%,#0000 52%),radial-gradient(70% 50% at 110% 95%,#0c4a6e38 0%,#0000 48%),linear-gradient(#020617 0%,#050a12 45%,#0c1220 100%);background-attachment:fixed}body.z-black:before{opacity:.055}body.z-black .services-strip-wrap{box-shadow:var(--shadow-lg);background:#020617eb;border:1px solid #7dd3fc33}body.z-black .service-card{color:#fff;background:#0f172ae6}body.z-black .service-card p{color:#bbb}body.z-black .service-card:hover{background:#1e3a5f73}body.z-black .service-card.selected{border-color:var(--reparo-sky-deep);box-shadow:var(--shadow-lg);background:#0c4a6e8c}body.z-black .service-proceed-btn{color:#e5e7eb;box-shadow:var(--shadow-xs);background:linear-gradient(#0c4a6e99 0%,#082f49d9 100%);border-color:#7dd3fc59}body.z-black .service-proceed-btn:hover{box-shadow:var(--shadow-sm);background:linear-gradient(#0369a18c 0%,#0c4a6ee6 100%);border-color:#bae6fd73}body.z-black .service-proceed-btn:focus-visible{box-shadow:var(--shadow-sm), var(--ring-focus)}body.z-black .footer{color:#aaa;background:#020617}body.z-black .emergency-btn{color:#fff;box-shadow:var(--shadow-sm);background:#082f49e6;border:1px solid #7dd3fc47}body.z-black .emergency-btn:hover{box-shadow:var(--shadow-md);border-color:#bae6fd66}body.z-black .theme-switcher{color:#e5e7eb;box-shadow:var(--shadow-sm);background:#082f49d9;border:1px solid #7dd3fc47}body.z-black .theme-switcher:hover{box-shadow:var(--shadow-md);background:#0c4a6e8c;border-color:#bae6fd59}body.z-black .fab{background:#000}body.z-black .fab-item{color:#fff;background:#111}.voice-tooltip-wrapper{z-index:50;position:absolute;left:50%}.voice-tooltip-wrapper--map-seam{z-index:10;pointer-events:auto;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.map-fab-stack{flex-direction:column;align-items:center;gap:12px;display:flex}.voice-map-fab{appearance:none;font:inherit;color:var(--reparo-sky-deep);border:1px solid var(--reparo-hairline);width:56px;min-width:56px;height:56px;min-height:56px;box-shadow:var(--shadow-md);cursor:pointer;transition:transform .25s var(--reparo-ease), box-shadow .25s var(--reparo-ease), border-color .2s ease;background:#fff;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.voice-tooltip-wrapper--map-seam .voice-map-fab:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)scale(1.02)}.voice-tooltip-wrapper--map-seam .voice-map-fab:active{transform:translateY(0)scale(1)}.voice-map-fab img{width:40px;height:40px}body.z-black .voice-map-fab{color:var(--reparo-sky-bright);box-shadow:var(--shadow-md);background:linear-gradient(160deg,#0c4a6e 0%,#082f49 100%);border-color:#7dd3fc59}body.z-black .voice-tooltip-wrapper--map-seam .voice-map-fab:hover{box-shadow:var(--shadow-lg);border-color:#bae6fd73;transform:translateY(-2px)scale(1.02)}.voice-tooltip{color:#fff;box-shadow:var(--shadow-md);white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;max-width:min(240px,90vw);transition:opacity .3s var(--reparo-ease);background:#082f49f2;border:1px solid #7dd3fc40;border-radius:8px;margin-bottom:10px;padding:8px 14px;font-size:12px;position:absolute;bottom:100%;left:50%;overflow:hidden;transform:translate(-50%)}.voice-tooltip-wrapper:hover .voice-tooltip{opacity:1}.voice-map-fab.listening{animation:1.5s infinite pulse;box-shadow:0 0 22px 3px #38bdf873}@keyframes pulse{0%,to{box-shadow:0 0 12px #38bdf833}50%{box-shadow:0 0 24px #7dd3fc59}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-container{box-sizing:border-box;width:100%;min-height:auto;padding-top:max(72px, calc(env(safe-area-inset-top) + 56px));padding-right:max(16px, env(safe-area-inset-right));padding-bottom:var(--page-bottom-safe);padding-left:max(16px, env(safe-area-inset-left));flex:none;max-width:560px;margin:0 auto}.page-container--wide{max-width:720px}@media (min-width:480px){.page-container{padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}.page-header{margin-bottom:var(--space-5);position:relative}.page-kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--reparo-sky-muted);margin-bottom:6px;font-weight:700}.page-title{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-3xl);letter-spacing:-.04em;color:#0f172a;margin-bottom:8px;font-weight:800;line-height:1.12}body.z-black .page-title{color:#f8fafc}.page-lede{font-size:var(--text-sm);color:#64748b;max-width:40ch;line-height:1.55}body.z-black .page-lede{color:#94a3b8}.page-container h1:not(.page-title){font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-2xl);letter-spacing:-.04em;color:#0f172a;margin-bottom:1rem;font-weight:800;line-height:1.15}body.z-black .page-container h1:not(.page-title){color:#f8fafc}.page-container p{color:#64748b;line-height:1.6}body.z-black .page-container p{color:#94a3b8}.page-panel{padding:var(--space-5);border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-sm);margin-top:var(--space-4);background:#ffffffe0}.page-panel .reparo-form,.page-panel .reparo-card-list{margin-top:0}body.z-black .page-panel{background:#082f4980;border-color:#7dd3fc33}.page-guest-card{margin-top:var(--space-6);padding:var(--space-8) var(--space-5);text-align:center;border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-md);background:#ffffffe0}body.z-black .page-guest-card{background:#082f498c;border-color:#7dd3fc33}.page-guest-icon{margin-bottom:var(--space-3);color:var(--reparo-sky-deep);justify-content:center;display:flex}body.z-black .page-guest-icon{color:var(--reparo-sky-bright)}.page-guest-actions{margin-top:var(--space-5);flex-direction:column;align-items:stretch;gap:10px;display:flex}@media (min-width:400px){.page-guest-actions{flex-flow:wrap;justify-content:center}}.page-empty{margin-top:var(--space-6);padding:var(--space-8) var(--space-5);text-align:center;border-radius:var(--radius-card);border:1px dashed var(--reparo-hairline-strong);background:#ffffff80}body.z-black .page-empty{background:#082f4959;border-color:#7dd3fc40}.page-empty-title{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-lg);color:#0f172a;margin-bottom:8px;font-weight:700}body.z-black .page-empty-title{color:#f1f5f9}.page-empty-text{font-size:var(--text-sm);color:#64748b;margin-bottom:var(--space-4);line-height:1.5}body.z-black .page-empty-text{color:#94a3b8}.page-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.page-stats{margin-bottom:var(--space-4);grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (min-width:420px){.page-stats{grid-template-columns:repeat(3,1fr)}}.page-stat{border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);box-shadow:var(--shadow-xs);text-align:center;background:#ffffffe0;padding:14px 12px}body.z-black .page-stat{background:#082f4973;border-color:#7dd3fc33}.page-stat-val{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#0f172a;font-size:1.45rem;font-weight:800;line-height:1.1}body.z-black .page-stat-val{color:#f1f5f9}.page-stat-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-top:4px;font-weight:700}.page-filters{margin-bottom:var(--space-4);flex-wrap:wrap;gap:8px;display:flex}.page-filter{border:1px solid var(--reparo-hairline);min-height:40px;font-size:var(--text-sm);color:#475569;cursor:pointer;transition:background .2s var(--reparo-ease), border-color .2s ease, color .2s ease;background:#ffffffd9;border-radius:999px;padding:0 14px;font-weight:600}.page-filter[aria-pressed=true]{border-color:var(--reparo-sky-deep);color:var(--reparo-sky-ink);background:linear-gradient(#e0f2fe 0%,#bae6fd 100%)}body.z-black .page-filter{color:#cbd5e1;background:#082f4980;border-color:#7dd3fc33}body.z-black .page-filter[aria-pressed=true]{color:#bae6fd;background:linear-gradient(#0c4a6ea6 0%,#0369a173 100%);border-color:#7dd3fc73}.page-stepper{margin-bottom:var(--space-5);gap:6px;display:flex}.page-stepper-seg{background:var(--reparo-hairline);height:4px;transition:background .3s var(--reparo-ease);border-radius:999px;flex:1}.page-stepper-seg--active,.page-stepper-seg--done{background:var(--reparo-sky-deep)}.page-stepper-label{font-size:var(--text-xs);color:#64748b;margin-bottom:var(--space-3);font-weight:600}body.z-black .page-stepper-label{color:#94a3b8}.page-prose{color:var(--sp-text-muted,#64748b);line-height:1.6}.page-prose p{color:inherit;margin:0}.page-prose strong{color:var(--sp-text,#0f172a);font-weight:700}.page-prose a{color:var(--reparo-sky-muted);text-underline-offset:3px;transition:color .2s var(--reparo-ease), text-decoration-color .2s ease;-webkit-text-decoration:underline #38bdf873;text-decoration:underline #38bdf873}.page-prose a:hover{color:var(--reparo-sky-ink);-webkit-text-decoration-color:var(--reparo-sky-deep);-webkit-text-decoration-color:var(--reparo-sky-deep);-webkit-text-decoration-color:var(--reparo-sky-deep);text-decoration-color:var(--reparo-sky-deep)}body.z-black .page-prose{color:var(--sp-text-muted,#94a3b8)}body.z-black .page-prose strong{color:var(--sp-text,#f1f5f9)}body.z-black .page-prose a{color:var(--reparo-sky-bright);text-decoration-color:#7dd3fc59}body.z-black .page-prose a:hover{color:#fff;-webkit-text-decoration-color:var(--reparo-sky-deep);-webkit-text-decoration-color:var(--reparo-sky-deep);-webkit-text-decoration-color:var(--reparo-sky-deep);text-decoration-color:var(--reparo-sky-deep)}.page-prose--compact{margin-top:var(--space-4)}.page-prose h2{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-lg);letter-spacing:-.02em;color:var(--sp-text,#0f172a);margin-top:var(--space-6);margin-bottom:var(--space-2);font-weight:700}body.z-black .page-prose h2{color:var(--sp-text,#f1f5f9)}.page-prose ol:not(.page-steps){margin:var(--space-4) 0;padding-left:1.25rem}.page-prose li:not(.page-steps>li){margin-bottom:var(--space-3);line-height:1.55}.page-steps{flex-direction:column;gap:12px;margin:24px 0 0;padding:0;list-style:none;display:flex}.page-step-card{border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);background:var(--sp-surface,#ffffffb8);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-xs);transition:transform .25s var(--reparo-ease), box-shadow .25s ease, border-color .25s ease;gap:16px;padding:18px;display:flex}.page-step-card:hover{box-shadow:var(--shadow-sm);border-color:var(--reparo-hairline-strong);transform:translateY(-2px)}body.z-black .page-step-card{background:var(--sp-surface,#082f4973);box-shadow:var(--shadow-xs), inset 0 1px 0 #7dd3fc0f;border-color:#7dd3fc33}body.z-black .page-step-card:hover{box-shadow:var(--shadow-sm), 0 0 24px #38bdf814;border-color:#7dd3fc59}.page-step-num{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.04em;color:var(--reparo-sky-deep);opacity:.85;flex-shrink:0;padding-top:2px;font-size:1.5rem;font-weight:800;line-height:1}body.z-black .page-step-num{color:var(--reparo-sky-bright);text-shadow:0 0 20px #38bdf859}.page-step-body{flex:1;min-width:0}.page-step-title{font-family:var(--font-display), var(--font-sans), sans-serif;font-size:var(--text-base);letter-spacing:-.02em;color:var(--sp-text,#0f172a);margin:0 0 6px;font-weight:700}body.z-black .page-step-title{color:var(--sp-text,#f1f5f9)}.page-step-body p{font-size:var(--text-sm);color:var(--sp-text-muted,#64748b);margin:0;line-height:1.55}body.z-black .page-step-body p{color:var(--sp-text-muted,#94a3b8)}.auth-divider{color:var(--sp-text-muted,#94a3b8);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:14px;margin:20px 0 4px;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:linear-gradient(90deg, transparent, var(--reparo-hairline-strong), transparent);flex:1;height:1px}body.z-black .auth-divider:before,body.z-black .auth-divider:after{background:linear-gradient(90deg,#0000,#7dd3fc47,#0000)}.auth-divider span{color:var(--sp-text-muted,#64748b);flex-shrink:0}body.z-black .auth-divider span{color:var(--sp-text-muted,#64748b)}.page-notif-list{margin-top:var(--space-4);flex-direction:column;gap:10px;display:flex}.page-notif-item{border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);box-shadow:var(--shadow-xs);color:inherit;transition:border-color .2s var(--reparo-ease), box-shadow .2s var(--reparo-ease);background:#ffffffeb;padding:14px 16px;text-decoration:none;display:block}.page-notif-item:hover{border-color:var(--reparo-hairline-strong);box-shadow:var(--shadow-sm)}body.z-black .page-notif-item{background:#082f4973;border-color:#7dd3fc33}.page-notif-title{font-size:var(--text-sm);color:#0f172a;margin-bottom:4px;font-weight:700;display:block}body.z-black .page-notif-title{color:#f1f5f9}.page-notif-body{font-size:var(--text-xs);color:#64748b;line-height:1.45}body.z-black .page-notif-body{color:#94a3b8}.page-notif-item--tip{border-style:dashed}.page-loading{margin-top:var(--space-4);flex-direction:column;gap:10px;display:flex}.page-loading-bar{border-radius:var(--radius-card);background:linear-gradient(90deg,#0ea5e914 0%,#0ea5e929 50%,#0ea5e914 100%) 0 0/200% 100%;height:52px;animation:1.2s ease-in-out infinite pageShimmer}.page-loading-bar--short{width:70%}@keyframes pageShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.page-footer-links{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--reparo-hairline);font-size:var(--text-sm);text-align:center;color:var(--sp-text-muted,#64748b);line-height:1.5}.page-footer-links a{color:var(--reparo-sky-muted);transition:color .2s var(--reparo-ease);font-weight:600;text-decoration:none}.page-footer-links a:hover{color:var(--reparo-sky-ink);text-underline-offset:3px;text-decoration:underline}body.z-black .page-footer-links{color:var(--sp-text-muted,#94a3b8);border-top-color:#7dd3fc26}body.z-black .page-footer-links a{color:var(--reparo-sky-bright)}body.z-black .page-footer-links a:hover{color:#fff}.page-not-found{padding-bottom:calc(var(--page-bottom-safe) + 2rem)}.page-404-code{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.06em;margin:0 0 var(--space-3);background:linear-gradient(165deg, var(--reparo-sky-deep) 0%, var(--reparo-sky-bright) 45%, var(--reparo-sky-muted) 100%);color:#0000;filter:drop-shadow(0 4px 24px #38bdf840);-webkit-user-select:none;user-select:none;-webkit-background-clip:text;background-clip:text;font-size:clamp(5rem,22vw,9rem);font-weight:800;line-height:.9}body.z-black .page-404-code{background:linear-gradient(165deg, #fff 0%, var(--reparo-sky-bright) 35%, var(--reparo-sky-deep) 70%, #38bdf866 100%);filter:drop-shadow(0 0 40px #38bdf873)drop-shadow(0 8px 32px #00000080);-webkit-background-clip:text;background-clip:text}.page-not-found-actions{margin-top:var(--space-5);flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.page-not-found-btn{min-width:140px;text-decoration:none}.page-center{text-align:center}.page-center .page-lede{margin-left:auto;margin-right:auto}.page-back{top:max(10px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));z-index:100050;border:1px solid var(--reparo-hairline);-webkit-backdrop-filter:blur(12px);color:#020617;cursor:pointer;min-width:44px;min-height:44px;box-shadow:var(--shadow-sm);transition:opacity .2s var(--reparo-ease), color .2s ease, transform .2s var(--reparo-ease), box-shadow .2s ease, border-color .2s ease;-webkit-tap-highlight-color:transparent;background:#ffffffe0;border-radius:999px;justify-content:center;align-items:center;gap:2px;margin:0;padding:8px 14px 8px 10px;font-family:inherit;font-size:.9rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex;position:fixed}.page-back-icon{flex-shrink:0;margin-left:-2px}.page-back-text{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}body.z-black .page-back{color:#e5e7eb;box-shadow:var(--shadow-sm);background:#0f172ad1;border-color:#7dd3fc47}.page-back:visited{color:#020617}body.z-black .page-back:visited{color:#e5e7eb}.page-back:hover{opacity:.92;border-color:var(--reparo-hairline-strong)}.page-container .page-back{text-decoration:none!important}.page-back:active{transform:scale(.98)}.page-back:focus-visible{box-shadow:var(--shadow-sm), var(--ring-focus);outline:none}body.z-black .page-back:focus-visible{box-shadow:var(--shadow-sm), 0 0 0 2px #7dd3fc73}.reparo-form{flex-direction:column;gap:14px;margin-top:8px;display:flex}.reparo-form label{color:#171717;flex-direction:column;gap:6px;font-size:.875rem;font-weight:600;display:flex}body.z-black .reparo-form label{color:#e5e7eb}.reparo-form input,.reparo-form textarea,.reparo-form select{border-radius:var(--radius-btn);border:1px solid var(--reparo-hairline);background:#fffffff2;width:100%;padding:12px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}body.z-black .reparo-form input,body.z-black .reparo-form textarea,body.z-black .reparo-form select{color:#e5e7eb;background:#0f172ad9;border-color:#7dd3fc38}.reparo-form input:focus-visible,.reparo-form textarea:focus-visible,.reparo-form select:focus-visible{border-color:var(--reparo-sky-deep);box-shadow:var(--ring-focus);outline:none}.reparo-form-error{color:#b91c1c;margin:-4px 0 0;font-size:.85rem}body.z-black .reparo-form-error{color:#fca5a5}.reparo-form-meta{font-size:var(--text-sm);margin:-4px 0 0}.reparo-link-btn{color:var(--reparo-sky-muted);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.reparo-link-btn:hover{color:var(--reparo-sky-deep)}body.z-black .reparo-link-btn{color:var(--reparo-sky-bright)}.reparo-btn-row{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.reparo-btn-primary{border-radius:var(--radius-btn);border:1px solid var(--reparo-hairline-strong);color:#171717;cursor:pointer;min-height:44px;transition:transform .2s var(--reparo-ease), box-shadow .2s ease, border-color .2s ease;background:linear-gradient(#fff 0%,#f0f9ff 100%);justify-content:center;align-items:center;padding:0 20px;font-size:.9rem;font-weight:600;display:inline-flex}.reparo-btn-primary:hover:not(:disabled){border-color:var(--reparo-sky-deep);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.reparo-btn-primary:disabled{opacity:.6;cursor:not-allowed}body.z-black .reparo-btn-primary{color:#e5e7eb;background:linear-gradient(#0c4a6e8c 0%,#082f49e6 100%);border-color:#7dd3fc59}.reparo-btn-ghost{border-radius:var(--radius-btn);border:1px solid var(--reparo-hairline);color:#171717;cursor:pointer;background:0 0;justify-content:center;align-items:center;min-height:44px;padding:0 16px;font-size:.9rem;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.reparo-btn-ghost:hover{border-color:var(--reparo-hairline-strong);background:#0ea5e914}body.z-black .reparo-btn-ghost{color:#e5e7eb;border-color:#7dd3fc40}.reparo-oauth-row{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.reparo-oauth-btn{border-radius:var(--radius-btn);border:1px solid var(--reparo-hairline);cursor:pointer;min-width:120px;min-height:44px;transition:transform .2s var(--reparo-ease), box-shadow .2s ease;background:#ffffffe6;flex:1;justify-content:center;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:inline-flex}.reparo-oauth-btn:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}body.z-black .reparo-oauth-btn{color:#e5e7eb;background:#0f172ae6;border-color:#7dd3fc38}.reparo-card-list{flex-direction:column;gap:12px;margin-top:20px;display:flex}.reparo-card{border-radius:var(--radius-card);border:1px solid var(--reparo-hairline);box-shadow:var(--shadow-xs);background:#ffffffeb;padding:16px 18px;transition:box-shadow .2s,border-color .2s}.reparo-card:hover{box-shadow:var(--shadow-sm);border-color:var(--reparo-hairline-strong)}body.z-black .reparo-card{background:#0f172ad9;border-color:#7dd3fc33}.reparo-card-meta{color:#737373;margin-top:6px;font-size:.8rem}body.z-black .reparo-card-meta{color:#a3a3a3}.reparo-step{color:#525252;align-items:center;gap:8px;margin-bottom:16px;font-size:.8rem;font-weight:600;display:flex}body.z-black .reparo-step{color:#a3a3a3}.reparo-step-dot{background:var(--reparo-hairline);border-radius:999px;width:8px;height:8px}.reparo-step-dot--active{background:var(--reparo-sky-deep);box-shadow:0 0 0 3px #38bdf840}.reparo-timeline{margin-top:24px;padding-left:0;list-style:none}.reparo-timeline li{border-left:2px solid var(--reparo-hairline);margin-left:6px;padding-bottom:18px;padding-left:28px;position:relative}.reparo-timeline li:last-child{border-left-color:#0000}.reparo-timeline li:before{content:"";background:var(--reparo-sky-deep);border:2px solid #fff;border-radius:999px;width:10px;height:10px;position:absolute;top:4px;left:-5px}body.z-black .reparo-timeline li:before{border-color:#020617}.reparo-timeline li.done:before{background:#22c55e}.reparo-timeline li.pending:before{background:#94a3b8}.page-container a{color:var(--reparo-sky-muted);text-underline-offset:3px;text-decoration:underline}.page-container a:hover{color:var(--reparo-sky-ink)}body.z-black .page-container a{color:var(--reparo-sky-bright)}body.z-black .page-container a:hover{color:#fff}.under-page{box-sizing:border-box;color:#fff;width:100%;min-height:0;font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;text-align:center;background:radial-gradient(100% 80% at 50% 0,#38bdf814 0%,#0000 50%),#000;flex:auto;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.under-page .content{flex-direction:column;align-items:center;max-width:300px;display:flex}.under-page .logo{opacity:0;width:120px;margin-bottom:20px;animation:1.5s ease-out forwards logoFade,12s linear 1.5s infinite logoSpin}@keyframes logoFade{0%{opacity:0;transform:scale(2)}to{opacity:1;transform:scale(1)}}@keyframes logoSpin{0%{transform:scale(1)rotate(0)}to{transform:scale(1)rotate(360deg)}}.under-page .headline{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.04em;margin-bottom:8px;font-size:clamp(1.5rem,4vw,1.85rem);font-weight:700}.under-page .tagline{color:#aaa;margin-bottom:24px;font-size:.9rem}.under-page .countdown{font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;gap:20px;display:flex}.under-page .time-box{flex-direction:column;align-items:center;display:flex}.under-page .time-box span{color:#ddd;font-size:2.2rem;font-weight:700}.under-page .time-box label{color:#888;margin-top:4px;font-size:.75rem}body:has(.page-container) .page-container{isolation:isolate;position:relative}body:has(.page-container) .page-header{position:relative}.page-header__accent{background:linear-gradient(90deg, var(--reparo-sky-deep) 0%, var(--reparo-sky-bright) 100%);width:44px;height:3px;box-shadow:0 0 14px var(--sp-accent-glow);opacity:0;transition:opacity .4s var(--reparo-ease), transform .4s var(--reparo-ease);border-radius:999px;position:absolute;top:-4px;left:0;transform:scaleX(.6)}body:has(.page-container) .page-header__accent{opacity:1;transform:scaleX(1)}body:has(.page-container):not(.z-black) .page-container:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(100% 100% at 50% 0,#38bdf81f 0%,#0ea5e90a 45%,#0000 70%);width:min(100%,480px);height:200px;position:absolute;top:-32px;left:50%;transform:translate(-50%)}:is(body:has(.page-container):not(.z-black) .page-panel,body:has(.page-container):not(.z-black) .page-guest-card,body:has(.page-container):not(.z-black) .page-stat,body:has(.page-container):not(.z-black) .page-notif-item,body:has(.page-container):not(.z-black) .reparo-card){background:var(--sp-surface-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--sp-border);box-shadow:var(--shadow-sm);transition:border-color .25s var(--reparo-ease), box-shadow .25s var(--reparo-ease), transform .25s var(--reparo-ease)}:is(body:has(.page-container):not(.z-black) .page-notif-item:hover,body:has(.page-container):not(.z-black) .reparo-card:hover){border-color:var(--sp-border-strong);box-shadow:var(--shadow-md)}body:has(.page-container):not(.z-black) .page-filter{background:var(--sp-surface-glass);border-color:var(--sp-border);color:var(--sp-text-muted)}body:has(.page-container):not(.z-black) .page-filter[aria-pressed=true]{border-color:var(--reparo-sky-deep);color:var(--reparo-sky-ink);box-shadow:var(--shadow-xs);background:linear-gradient(#e0f2fe 0%,#bae6fd 100%)}:is(body:has(.page-container):not(.z-black) .reparo-btn-primary,body:has(.page-container):not(.z-black) .page-btn){color:var(--reparo-sky-ink);border-color:var(--sp-border-strong);box-shadow:var(--shadow-sm);background:linear-gradient(#fff 0%,#e0f2fe 55%,#bae6fd 100%)}:is(body:has(.page-container):not(.z-black) .reparo-btn-primary:hover:not(:disabled),body:has(.page-container):not(.z-black) .page-btn:hover:not(:disabled)){box-shadow:var(--shadow-md);border-color:var(--reparo-sky-deep);transform:translateY(-1px)}:is(body:has(.page-container):not(.z-black) .page-back,body:has(.page-container):not(.z-black) .page-back--subpage){color:#020617;border-color:var(--sp-border);background:#ffffffeb}body:has(.page-container):not(.z-black) .page-back:visited{color:#020617}:is(body.z-black:has(.page-container),body.z-black:has(.under-page)){--sp-text:#f8fafc;--sp-text-muted:#94a3b8;--sp-surface:#080f1eb8;--sp-surface-glass:#0c14268c;--sp-border:#7dd3fc24;--sp-border-strong:#7dd3fc52;--sp-accent-glow:#38bdf859;color:var(--sp-text);background-color:#020617;background-image:radial-gradient(100% 70% at 50% 0,#0ea5e924 0%,#0000 58%),radial-gradient(80% 50% at 100% 20%,#38bdf814 0%,#0000 50%),radial-gradient(60% 40% at 0 80%,#0369a11a 0%,#0000 45%);background-attachment:fixed}body.z-black:has(.page-container):before{opacity:.06}body.z-black:has(.page-container) .page-container:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(100% 100% at 50% 0,#38bdf82e 0%,#0ea5e90f 40%,#0000 70%);width:min(100%,520px);height:260px;position:absolute;top:-40px;left:50%;transform:translate(-50%)}body.z-black:has(.page-container) .page-kicker{color:var(--reparo-sky-bright)}body.z-black:has(.page-container) .page-title{color:var(--sp-text)}body.z-black:has(.page-container) .page-container h1:not(.page-title){color:var(--sp-text)}body.z-black:has(.page-container) .page-lede{color:var(--sp-text-muted)}body.z-black:has(.page-container) .page-container p{color:var(--sp-text-muted)}:is(body.z-black:has(.page-container) .page-empty-title,body.z-black:has(.page-container) .page-notif-title){color:var(--sp-text)}:is(body.z-black:has(.page-container) .page-empty-text,body.z-black:has(.page-container) .page-notif-body,body.z-black:has(.page-container) .page-stepper-label,body.z-black:has(.page-container) .page-footer-links){color:var(--sp-text-muted)}body.z-black:has(.page-container) .page-prose h2{color:var(--sp-text)}body.z-black:has(.page-container) .page-stat-val{color:var(--sp-text)}body.z-black:has(.page-container) .page-stat-label{color:var(--sp-text-muted)}:is(body.z-black:has(.page-container) .page-panel,body.z-black:has(.page-container) .page-guest-card,body.z-black:has(.page-container) .page-stat,body.z-black:has(.page-container) .page-notif-item,body.z-black:has(.page-container) .reparo-card){background:var(--sp-surface-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--sp-border);transition:border-color .25s var(--reparo-ease), box-shadow .25s var(--reparo-ease), transform .25s var(--reparo-ease);box-shadow:0 2px 16px #00000040,inset 0 1px #ffffff0f}body.z-black:has(.page-container) .page-guest-card{box-shadow:0 4px 24px #0000004d,inset 0 1px #ffffff14}:is(body.z-black:has(.page-container) .page-notif-item:hover,body.z-black:has(.page-container) .reparo-card:hover){border-color:var(--sp-border-strong);box-shadow:0 4px 24px #00000059,0 0 24px #0ea5e914,inset 0 1px #ffffff14}body.z-black:has(.page-container) .page-empty{border-color:var(--sp-border);background:#0c142659;border-style:dashed}body.z-black:has(.page-container) .page-guest-icon{color:var(--reparo-sky-bright)}body.z-black:has(.page-container) .reparo-card-meta{color:var(--sp-text-muted)}body.z-black:has(.page-container) .page-filter{background:var(--sp-surface-glass);border-color:var(--sp-border);color:var(--sp-text-muted)}body.z-black:has(.page-container) .page-filter:hover{border-color:var(--sp-border-strong);color:var(--sp-text)}body.z-black:has(.page-container) .page-filter[aria-pressed=true]{border-color:var(--sp-border-strong);color:var(--reparo-sky-bright);background:linear-gradient(#0ea5e959 0%,#0369a140 100%);box-shadow:0 0 20px #0ea5e926}:is(body.z-black:has(.page-container) .reparo-btn-primary,body.z-black:has(.page-container) .page-btn){border-radius:var(--radius-btn);color:#fff;cursor:pointer;min-height:44px;transition:transform .2s var(--reparo-ease), box-shadow .25s var(--reparo-ease), border-color .2s ease;background:linear-gradient(#38bdf8 0%,#0284c7 55%,#0369a1 100%);border:1px solid #7dd3fc59;justify-content:center;align-items:center;padding:0 20px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 2px 16px #0ea5e94d}:is(body.z-black:has(.page-container) .reparo-btn-primary:hover:not(:disabled),body.z-black:has(.page-container) .page-btn:hover:not(:disabled)){box-shadow:0 4px 28px #0ea5e973, 0 0 36px var(--sp-accent-glow);border-color:#bae6fd8c;transform:translateY(-1px)}:is(body.z-black:has(.page-container) .reparo-btn-ghost,body.z-black:has(.page-container) .page-btn--ghost){border-color:var(--sp-border);color:var(--sp-text)}:is(body.z-black:has(.page-container) .reparo-btn-ghost:hover,body.z-black:has(.page-container) .page-btn--ghost:hover){border-color:var(--sp-border-strong);color:var(--reparo-sky-bright);background:#38bdf81a}body.z-black:has(.page-container) .reparo-oauth-btn{background:var(--sp-surface-glass);color:var(--sp-text);border-color:var(--sp-border)}body.z-black:has(.page-container) .reparo-form label{color:var(--sp-text)}:is(body.z-black:has(.page-container) .reparo-form input,body.z-black:has(.page-container) .reparo-form textarea,body.z-black:has(.page-container) .reparo-form select){color:var(--sp-text);border-color:var(--sp-border);background:#080f1ebf}body.z-black:has(.page-container) .reparo-form input::placeholder{color:#94a3b8a6}body.z-black:has(.page-container) .reparo-form textarea::placeholder{color:#94a3b8a6}body.z-black:has(.page-container) .reparo-form-error{color:#fca5a5}body.z-black:has(.page-container) .reparo-link-btn{color:var(--reparo-sky-bright)}:is(body.z-black:has(.page-container) .page-back,body.z-black:has(.page-container) .page-back--subpage){color:var(--sp-text);background:var(--sp-surface-glass);border-color:var(--sp-border);-webkit-backdrop-filter:blur(16px);box-shadow:0 2px 16px #00000059}body.z-black:has(.page-container) .page-back:visited{color:var(--sp-text)}body.z-black:has(.page-container) .page-back:hover{opacity:1;border-color:var(--sp-border-strong);box-shadow:0 4px 20px #0006,0 0 20px #0ea5e91a}body.z-black:has(.page-container) .page-container a{color:var(--reparo-sky-bright)}body.z-black:has(.page-container) .page-container a:hover{color:#fff}body.z-black:has(.page-container) .page-404-code{color:var(--reparo-sky-bright);text-shadow:0 0 40px var(--sp-accent-glow)}body.z-black:has(.page-container) .page-loading-bar{background:linear-gradient(90deg,#0ea5e90f 0%,#0ea5e933 50%,#0ea5e90f 100%) 0 0/200% 100%}body.z-black:has(.page-container) .reparo-step{color:var(--sp-text-muted)}body.z-black:has(.page-container) .reparo-timeline li:before{border-color:#020617}body.z-black:has(.under-page) .under-page{background:radial-gradient(100% 70% at 50% 0,#0ea5e924 0%,#0000 60%),radial-gradient(60% 40% at 100% 80%,#38bdf80f 0%,#0000 50%),#020617}.page-alert{border-radius:var(--radius-card);font-size:var(--text-sm);margin-bottom:var(--space-4);border:1px solid #0000;padding:12px 16px;font-weight:500;line-height:1.45}body:has(.page-container) .page-alert--error{color:#b91c1c;background:#ef44441a;border-color:#f8717159}body.z-black:has(.page-container) .page-alert--error{color:#fecaca;background:#ef44441f}.theme-switcher--subpage{bottom:max(20px, env(safe-area-inset-bottom));right:max(16px, env(safe-area-inset-right));align-items:center;gap:6px;display:inline-flex}.theme-switcher--subpage span{font-size:13px}.card-nav-container{top:max(8px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));z-index:9998;width:auto;position:fixed;transform:none}@media (min-width:640px){.card-nav-container{width:min(960px,100% - 32px);left:50%;right:auto;transform:translate(-50%)}}.card-nav{box-shadow:var(--shadow-lg);border:1px solid var(--reparo-hairline);-webkit-backdrop-filter:blur(20px)saturate(1.12);background:#fffffff0;border-radius:18px;overflow:hidden}.card-nav-top{border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:8px 14px;transition:border-color .25s;display:flex}.card-nav.open .card-nav-top{border-bottom-color:var(--reparo-hairline)}.hamburger-menu{cursor:pointer;color:#0f172a;width:44px;min-width:44px;height:44px;min-height:44px;transition:background .2s var(--reparo-ease), color .2s ease;border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:6px;display:flex}.hamburger-menu:hover{background:#0ea5e91a}.hamburger-menu:active{background:#7dd3fc33}.hamburger-line{background-color:currentColor;border-radius:1px;width:20px;height:2px;transition:transform .3s,opacity .3s}.hamburger-menu.open .hamburger-line:first-child{transform:translateY(4px)rotate(45deg)}.hamburger-menu.open .hamburger-line:last-child{transform:translateY(-4px)rotate(-45deg)}.card-nav-content{visibility:hidden;pointer-events:none;height:0;padding:0;position:absolute;overflow:hidden}.card-nav.open .card-nav-content{visibility:visible;pointer-events:auto;flex-direction:column;gap:14px;height:auto;padding:14px 14px 16px;display:flex;position:static}.card-nav-search{flex-direction:column;gap:8px;display:flex}.card-nav-search__head{letter-spacing:.08em;text-transform:uppercase;color:var(--reparo-sky-muted);align-items:center;gap:6px;padding:0 2px;font-size:.72rem;font-weight:700;display:flex}.card-nav-search__head svg{color:var(--reparo-sky-deep);flex-shrink:0}.nav-search-row{border:1px solid var(--reparo-hairline);background:linear-gradient(#f8fcff 0%,#f0f9ff 100%);border-radius:14px;align-items:center;min-height:48px;padding:4px 6px;display:flex;box-shadow:inset 0 1px #ffffffe6}.nav-search-input-wrap{flex:1;min-width:0}.nav-search-input-wrap gmp-place-autocomplete{--gmp-mat-color-surface:#f0f9ff;--gmp-mat-color-on-surface:#0f172a;--gmp-mat-color-primary:#0284c7;width:100%;display:block}.card-nav-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (min-width:900px){.card-nav-grid{grid-template-columns:repeat(3,1fr);gap:12px}}.nav-card{border:1px solid var(--reparo-hairline);box-shadow:var(--shadow-xs);transition:transform .2s var(--reparo-ease), box-shadow .2s ease, border-color .2s ease;background:linear-gradient(165deg,#fff 0%,#f8fcff 100%);border-radius:14px;flex-direction:column;gap:10px;padding:14px 14px 12px;display:flex;position:relative;overflow:hidden}.nav-card:before{content:"";background:var(--card-accent,var(--reparo-sky-deep));opacity:.9;height:3px;position:absolute;top:0;left:0;right:0}.nav-card--repairs{--card-accent:#38bdf8}.nav-card--help{--card-accent:#0ea5e9}.nav-card--account{--card-accent:#0284c7}.nav-card:hover{box-shadow:var(--shadow-md);border-color:var(--reparo-hairline-strong);transform:translateY(-2px)}.nav-card-label{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.02em;color:#0f172a;padding-top:2px;font-size:.92rem;font-weight:700}.nav-card-links{flex-direction:column;gap:4px;display:flex}.nav-card-link{color:#334155;min-height:36px;transition:background .18s ease, color .18s ease, transform .18s var(--reparo-ease);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin:0 -4px;padding:6px 10px;font-size:.84rem;font-weight:500;text-decoration:none;display:flex}.nav-card-link:hover{color:var(--reparo-sky-ink);background:#0ea5e91a;transform:translate(2px)}.nav-card-link-icon{color:var(--reparo-sky-deep);opacity:.55;transition:opacity .18s ease, transform .18s var(--reparo-ease);flex-shrink:0}.nav-card-link:hover .nav-card-link-icon{opacity:1;transform:translate(2px,-2px)}.card-nav-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:2px;display:grid}.card-nav-action-btn{border:1px solid var(--reparo-hairline);cursor:pointer;min-height:46px;transition:transform .2s var(--reparo-ease), box-shadow .2s ease, background .2s ease, border-color .2s ease;color:#0f172a;box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-family:inherit;font-size:.84rem;font-weight:600;display:inline-flex}.card-nav-action-btn:hover:not(.card-nav-emergency){border-color:var(--reparo-hairline-strong);box-shadow:var(--shadow-sm);background:#f0f9ff;transform:translateY(-1px)}.card-nav-action-btn:active{transform:translateY(0)}.card-nav-action-btn:focus-visible{box-shadow:var(--shadow-sm), var(--ring-focus);outline:none}.card-nav-emergency{color:#fff;background:linear-gradient(135deg,#fbbf24 0%,#f97316 100%);border:none;box-shadow:0 4px 16px #f9731659}.card-nav-emergency:hover{background:linear-gradient(135deg,#fcd34d 0%,#ea580c 100%);transform:translateY(-1px);box-shadow:0 6px 22px #f9731673}.card-nav-logo{background:var(--reparo-surface-mist);border:1px solid var(--reparo-hairline);width:40px;min-width:44px;height:40px;min-height:44px;box-shadow:var(--shadow-xs);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.card-nav-logo:hover{box-shadow:var(--shadow-md), 0 0 0 2px var(--reparo-sky);border-color:var(--reparo-sky-deep)}.card-nav-logo:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 25%,#ffffffa6 50%,#0000 75%);position:absolute;inset:0;transform:translate(-120%)}.card-nav-logo:hover:after{animation:.55s forwards logo-shine}@keyframes logo-shine{to{transform:translate(120%)}}.card-nav-logo img{object-fit:contain;width:30px;height:30px}body.z-black .card-nav{border-color:#7dd3fc38;background:#020617f5!important}body.z-black .card-nav-top,body.z-black .hamburger-menu{color:#e2e8f0}body.z-black .hamburger-menu:hover{background:#7dd3fc1f}body.z-black .card-nav-search__head{color:#94a3b8}body.z-black .nav-search-row{background:linear-gradient(#082f4999 0%,#020617cc 100%);border-color:#7dd3fc38}body.z-black .nav-search-input-wrap gmp-place-autocomplete{--gmp-mat-color-surface:#0f172a;--gmp-mat-color-on-surface:#f1f5f9;--gmp-mat-color-primary:#38bdf8}body.z-black .nav-card{background:linear-gradient(165deg,#0f172af2 0%,#082f498c 100%);border-color:#7dd3fc2e}body.z-black .nav-card-label{color:#f1f5f9}body.z-black .nav-card-link{color:#cbd5e1}body.z-black .nav-card-link:hover{color:#f8fafc;background:#7dd3fc1f}body.z-black .card-nav-logo{background:#082f49d9;box-shadow:0 0 0 1px #7dd3fc40}body.z-black .card-nav-action-btn:not(.card-nav-emergency){color:#e5e7eb;background:#082f49bf;border-color:#7dd3fc47}body.z-black .card-nav-action-btn:hover:not(.card-nav-emergency){background:#0c4a6ed9;border-color:#bae6fd66}@media (max-width:767px){.card-nav-content{max-height:calc(100dvh - 120px - env(safe-area-inset-top));-webkit-overflow-scrolling:touch;overflow-y:auto}.card-nav-actions{grid-template-columns:1fr}}@media (max-width:420px){.card-nav.open .card-nav-content{padding:12px 12px 14px}}:is(.site-shell:has(.gateway-intro) .site-footer,.site-shell:has(.gateway-boot) .site-footer,.site-shell:has(.gateway-intro) .config-banner,.site-shell:has(.gateway-boot) .config-banner){display:none}:is(.site-shell-main:has(.gateway-intro),.site-shell-main:has(.gateway-boot)){min-height:0;padding-bottom:0;overflow:visible}.gateway-boot{z-index:999;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gateway-boot__logo{object-fit:contain;border-radius:999px;width:72px;height:72px;animation:1s ease-in-out infinite alternate gateway-pulse}@keyframes gateway-pulse{0%{opacity:.4;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}.gateway-intro{background:#000;width:100%;transition:opacity .5s}.gateway-intro--exit{opacity:0;pointer-events:none}.gateway-hero{padding:max(28px, env(safe-area-inset-top)) 24px max(28px, env(safe-area-inset-bottom));background:radial-gradient(80% 55%,#0000 30%,#0000008c 100%),linear-gradient(#00000059 0%,#0000 28% 68%,#0000008c 100%);grid-template-rows:auto 1fr auto;place-items:center;display:grid;position:absolute;inset:0}.gateway-hero__eyebrow{text-transform:uppercase;letter-spacing:clamp(.14em,1.5vw,.32em);color:#ffffff80;text-align:center;grid-row:1;place-self:start center;margin:0;font-size:clamp(.55rem,2.2vw,.72rem);font-weight:700}.gateway-hero__centre{text-align:center;flex-direction:column;grid-row:2;justify-content:center;align-items:center;gap:clamp(14px,3.5vw,24px);width:100%;max-width:min(100%,100vw - 24px);margin-top:clamp(-12px,-2vw,-4px);padding:0 clamp(8px,3vw,16px);display:flex;overflow:visible}.gateway-hero__taglines{flex-direction:column;align-items:center;gap:clamp(10px,2.5vw,14px);width:100%;display:flex}.gateway-hero__wordmark{background:0 0;max-width:100%;margin:0;line-height:1}.gateway-hero__wordmark-inner{white-space:nowrap;font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.05em;transform:scale(calc(1 + var(--scroll-progress,0) * .06));transform-origin:50%;will-change:transform;filter:drop-shadow(0 0 48px #7dd3fc66)drop-shadow(0 8px 32px #000000a6);font-size:clamp(2rem,12vw,11rem);font-weight:800;line-height:.92;display:inline-block;position:relative}.gateway-hero__wordmark-base{color:#ffffffd1;-webkit-text-fill-color:#ffffffd1;display:block}.gateway-hero__wordmark-shine{font:inherit;letter-spacing:inherit;line-height:inherit;background:linear-gradient(105deg,#ffffff26 0% 38%,#fff 46%,#bae6fd 50%,#fff 54%,#ffffff26 62% 100%) 0 0/300%;background-position:calc(200% - var(--scroll-progress,0) * 300%) center;-webkit-text-fill-color:transparent;color:#0000;will-change:background-position;pointer-events:none;-webkit-background-clip:text;background-clip:text;display:block;position:absolute;inset:0}.gateway-hero__moat{max-width:26ch;font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.02em;text-align:center;color:#bae6fd;text-shadow:0 0 40px #38bdf859;opacity:calc(1 - var(--scroll-progress,0) * 3);justify-content:center;align-items:center;gap:clamp(10px,3vw,20px);margin:0;font-size:clamp(.9rem,3.4vw,1.35rem);font-style:italic;font-weight:600;line-height:1.25;display:flex}.gateway-hero__moat:before,.gateway-hero__moat:after{content:"";flex-shrink:0;width:clamp(20px,6vw,64px);height:1px;display:block}.gateway-hero__moat:before{background:linear-gradient(90deg,#0000,#7dd3fc8c)}.gateway-hero__moat:after{background:linear-gradient(90deg,#7dd3fc8c,#0000)}.gateway-hero__tagline{letter-spacing:.14em;text-transform:uppercase;color:#ffffff6b;max-width:30ch;opacity:calc(1 - var(--scroll-progress,0) * 3);margin:0;font-size:clamp(.58rem,2.1vw,.78rem);font-weight:600;line-height:1.45}.gateway-hero__scroll-cue{opacity:calc(1 - var(--scroll-progress,0) * 5);flex-direction:column;grid-row:3;place-self:end center;align-items:center;gap:8px;display:flex}.gateway-hero__scroll-label{text-transform:uppercase;letter-spacing:.3em;color:#ffffff61;font-size:.58rem;font-weight:700}.gateway-hero__scroll-line{transform-origin:top;background:linear-gradient(#ffffff80 0%,#0000 100%);width:1px;height:40px;animation:2s ease-in-out infinite gateway-line-drop;display:block}@keyframes gateway-line-drop{0%{opacity:0;transform:scaleY(0)}40%{opacity:1}to{opacity:0;transform:scaleY(1)}}.gateway-reveal{opacity:0;transition:opacity .85s var(--reparo-ease), transform .85s var(--reparo-ease)}.gateway-reveal--up{transform:translateY(40px)}.gateway-reveal--right{transform:translate(48px)translateY(12px)}.gateway-reveal--fade{transform:translateY(16px)}.gateway-reveal--blur{filter:blur(6px);transform:translateY(24px)}.gateway-reveal--scale{transform:translateY(28px)scale(.94)}.gateway-reveal.is-visible{opacity:1;filter:none;transform:none}.gateway-reveal--d1{transition-delay:50ms}.gateway-reveal--d2{transition-delay:.12s}.gateway-reveal--d3{transition-delay:.2s}.gateway-reveal--d4{transition-delay:.28s}.gateway-reveal--d5{transition-delay:.1s}.gateway-reveal--d6{transition-delay:80ms}.gateway-reveal--d7{transition-delay:.18s}.gateway-reveal--d8{transition-delay:60ms}.gateway-reveal--d9{transition-delay:.14s}.gateway-reveal--d10{transition-delay:.24s}.gateway-reveal--d11{transition-delay:80ms}.gateway-reveal--d12{transition-delay:.18s}.gateway-reveal--d13{transition-delay:60ms}.gateway-reveal--d14{transition-delay:.14s}.gateway-reveal--d15{transition-delay:.22s}.gateway-reveal--d16{transition-delay:.3s}.gateway-reveal--d17{transition-delay:.38s}@media (prefers-reduced-motion:reduce){.gateway-reveal{opacity:1;filter:none;transition:none;transform:none}}.gateway-vision{padding:clamp(72px, 14vw, 140px) max(20px, env(safe-area-inset-right)) clamp(88px, 16vw, 160px) max(20px, env(safe-area-inset-left));color:#f8fafc;background:#000;border-top:1px solid #ffffff0f}.gateway-vision__inner{flex-direction:column;gap:clamp(56px,10vw,96px);width:100%;max-width:68rem;margin:0 auto;display:flex}.gateway-vision__top{grid-template-columns:1fr;align-items:end;gap:clamp(40px,8vw,64px);display:grid}@media (min-width:768px){.gateway-vision__top{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:end;gap:clamp(32px,5vw,56px)}}.gateway-vision__hero{flex-direction:column;gap:clamp(20px,4vw,32px);display:flex}.gateway-vision__kicker{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.045em;flex-direction:column;margin:0;font-size:clamp(2.75rem,12vw,7rem);font-weight:800;line-height:.88;display:flex}.gateway-vision__kicker span{-webkit-text-fill-color:transparent;color:#0000;background:linear-gradient(135deg,#fff 0%,#bae6fd 55%,#38bdf8 100%);-webkit-background-clip:text;background-clip:text;display:block}.gateway-vision__kicker span:nth-child(2){padding-left:clamp(12px,4vw,48px)}.gateway-vision__kicker span:nth-child(3){padding-left:clamp(24px,8vw,96px)}.gateway-vision__headline{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.025em;color:#ffffffbf;max-width:22ch;margin:0;padding-left:clamp(2px,.5vw,4px);font-size:clamp(1.5rem,5.5vw,2.5rem);font-weight:600;line-height:1.2}.gateway-vision__headline em{color:#38bdf8;font-style:normal;font-weight:800}.gateway-vision__fee-wrap{flex-direction:column;align-self:stretch;align-items:flex-start;gap:clamp(14px,3vw,22px);width:100%;display:flex}@media (min-width:768px){.gateway-vision__fee-wrap{place-self:end;max-width:420px}}.gateway-vision__fee-card{cursor:default;-webkit-backdrop-filter:blur(20px)saturate(1.4);transition:border-color .45s var(--reparo-ease), box-shadow .45s var(--reparo-ease), transform .45s var(--reparo-ease);background:linear-gradient(135deg,#ffffff1a 0%,#ffffff08 45%,#0ea5e914 100%);border:1px solid #ffffff24;border-radius:28px;padding:clamp(40px,8vw,56px) clamp(32px,7vw,48px) clamp(76px,15vw,92px);display:block;position:relative;overflow:hidden;box-shadow:0 4px 24px #00000059,inset 0 1px #ffffff1f}.gateway-vision__fee-card-glow{opacity:.5;pointer-events:none;transition:opacity .45s var(--reparo-ease), transform .45s var(--reparo-ease);background:radial-gradient(circle at 30% 20%,#38bdf859 0%,#0000 55%);position:absolute;inset:-40%;transform:scale(1)}.gateway-vision__fee-card-shine{pointer-events:none;transition:transform .65s var(--reparo-ease);background:linear-gradient(105deg,#0000 35%,#ffffff2e 48%,#bae6fd59 50%,#ffffff2e 52%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)skew(-12deg)}.gateway-vision__fee-card-inner{z-index:1;justify-content:center;align-items:center;width:100%;display:flex;position:relative}@media (min-width:420px){.gateway-vision__fee-card-inner{justify-content:center}}.gateway-vision__fee-caption{flex-direction:column;gap:4px;margin:0;padding:0 clamp(4px,1vw,8px);display:flex}.gateway-vision__fee-tag{z-index:2;white-space:normal;text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#7dd3fc8c;pointer-events:none;background:#0ea5e914;border:1px solid #7dd3fc2e;border-radius:999px;justify-content:center;align-items:center;width:max-content;max-width:calc(100% - 32px);padding:6px 14px;font-size:clamp(.56rem,2.6vw,.62rem);font-weight:600;line-height:1.35;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}@media (max-width:420px){.gateway-vision__fee-tag{letter-spacing:.05em;max-width:calc(100% - 20px);padding:6px 10px}}.gateway-vision__fee-card:hover{border-color:#7dd3fc73;transform:translateY(-6px)scale(1.01);box-shadow:0 20px 48px #0ea5e933,0 8px 32px #0006,inset 0 1px #fff3}@media (hover:hover){.gateway-vision__fee-card:hover .gateway-vision__fee-card-glow{opacity:1;transform:scale(1.08)}.gateway-vision__fee-card:hover .gateway-vision__fee-card-shine{transform:translate(120%)skew(-12deg)}.gateway-vision__fee-card:hover .gateway-vision__fee-num{text-shadow:0 0 40px #7dd3fc99}.gateway-vision__fee-card:hover .gateway-vision__fee-label,.gateway-vision__fee-card:hover .gateway-vision__fee-sub{color:#ffffffe6}}.gateway-vision__fee-num{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.06em;color:#fff;transition:text-shadow .45s var(--reparo-ease);flex-shrink:0;font-size:clamp(3.75rem,15vw,8rem);font-weight:800;line-height:.85}.gateway-vision__fee-text{flex-direction:column;gap:2px;padding-bottom:.2em;display:flex}.gateway-vision__fee-label{letter-spacing:-.01em;color:#ffffffb3;transition:color .45s var(--reparo-ease);font-size:clamp(1rem,3vw,1.25rem);font-weight:600;line-height:1.2}.gateway-vision__fee-sub{letter-spacing:.01em;color:#ffffff61;transition:color .45s var(--reparo-ease);font-size:clamp(.78rem,2.5vw,.95rem);font-weight:500;line-height:1.15}.gateway-vision__duo{border-top:1px solid #ffffff14;grid-template-columns:1fr;gap:clamp(12px,2.5vw,20px);width:100%;padding-top:clamp(8px,2vw,16px);display:grid}@media (min-width:640px){.gateway-vision__duo{grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,24px)}}.gateway-vision__punch{min-height:clamp(140px,28vw,200px);font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#fff;transition:border-color .45s var(--reparo-ease), box-shadow .45s var(--reparo-ease), transform .45s var(--reparo-ease);border:1px solid #ffffff1f;border-radius:16px;margin:0;padding:clamp(20px,4vw,28px) clamp(20px,4vw,32px);font-size:clamp(1.2rem,4.5vw,1.85rem);font-weight:800;line-height:1.2;display:block;position:relative;overflow:hidden}.gateway-vision__punch-bg{transition:transform .55s var(--reparo-ease), opacity .45s var(--reparo-ease);pointer-events:none;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1)}.gateway-vision__punch-bg:after{content:"";background:linear-gradient(160deg,#000000b8 0%,#0000008c 45%,#000000c7 100%);position:absolute;inset:0}.gateway-vision__punch-content{z-index:1;flex-direction:column;justify-content:flex-end;gap:8px;height:100%;display:flex;position:relative}.gateway-vision__punch-label{letter-spacing:.14em;text-transform:uppercase;color:#ffffff8c;font-size:.65rem;font-weight:700}.gateway-vision__punch--customer{border-color:#ffffff24}.gateway-vision__punch--customer .gateway-vision__punch-bg:after{background:linear-gradient(160deg,#0f172abf 0%,#0f172a73 50%,#0f172ad1 100%)}.gateway-vision__punch--technician{border-color:#38bdf847}.gateway-vision__punch--technician .gateway-vision__punch-bg:after{background:linear-gradient(160deg,#082f49d1 0%,#0c4a6e80 50%,#082f49e0 100%)}.gateway-vision__punch--technician .gateway-vision__punch-label{color:#7dd3fcbf}@media (hover:hover){.gateway-vision__punch:hover{transform:translateY(-4px);box-shadow:0 16px 40px #00000059}.gateway-vision__punch--technician:hover{border-color:#38bdf873;box-shadow:0 16px 40px #0ea5e933}.gateway-vision__punch:hover .gateway-vision__punch-bg{transform:scale(1.06)}}.gateway-vision__manifesto{flex-direction:column;gap:clamp(28px,7vw,64px);width:100%;display:flex}.gateway-vision__manifesto-rules{border-top:1px solid #ffffff12;flex-direction:column;gap:0;display:flex}.gateway-vision__manifesto-rule{border-bottom:1px solid #ffffff12;align-items:baseline;gap:clamp(12px,3.5vw,32px);padding:clamp(14px,3.5vw,28px) 0;display:flex}.gateway-vision__manifesto-num{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:.12em;color:#7dd3fc80;flex-shrink:0;min-width:2.2ch;padding-top:.15em;font-size:clamp(.58rem,1.8vw,.75rem);font-weight:700}.gateway-vision__manifesto-line{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#ffffffb8;font-size:clamp(1rem,4.5vw,1.85rem);font-weight:700;line-height:1.2}.gateway-vision__manifesto-moat{align-items:center;gap:clamp(10px,3vw,32px);width:100%;display:flex}.gateway-vision__manifesto-moat-bar{background:linear-gradient(90deg,#0000,#38bdf873,#0000);flex:1;min-width:12px;height:1px}.gateway-vision__manifesto-moat-text{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.035em;text-align:center;color:#fff;text-shadow:0 0 60px #38bdf88c,0 0 20px #7dd3fc66;flex-shrink:0;max-width:16ch;margin:0;font-size:clamp(1.05rem,5vw,2.2rem);font-style:italic;font-weight:800;line-height:1.15}@media (max-width:480px){.gateway-vision__manifesto-moat-bar{display:none}.gateway-vision__manifesto-moat{justify-content:center}.gateway-vision__manifesto-moat-text{max-width:14ch;font-size:clamp(1rem,6vw,1.35rem)}.gateway-vision__manifesto-line{font-size:clamp(.92rem,5vw,1.15rem)}}.directory-stats--gateway{width:100%;padding-top:clamp(8px,2vw,16px)}.directory-stats__header{text-align:center;margin-bottom:clamp(28px,5vw,40px)}.directory-stats__kicker{letter-spacing:.18em;text-transform:uppercase;color:#7dd3fca6;margin:0 0 10px;font-size:.7rem;font-weight:700}.directory-stats__title{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#ffffffe0;margin:0;font-size:clamp(1.35rem,4.5vw,2rem);font-weight:700}.directory-stats__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2.5vw,18px);display:grid}@media (min-width:768px){.directory-stats__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,20px)}}.directory-stat--gateway{text-align:center;transition:border-color .35s var(--reparo-ease), box-shadow .35s var(--reparo-ease), transform .35s var(--reparo-ease);background:linear-gradient(160deg,#ffffff12 0%,#ffffff05 55%,#0ea5e90f 100%);border:1px solid #ffffff1a;border-radius:18px;padding:clamp(14px,3.5vw,28px) clamp(10px,2.5vw,22px);position:relative;overflow:hidden;box-shadow:0 12px 40px #00000040,inset 0 1px #ffffff14}.directory-stat--gateway:hover{border-color:#38bdf859;transform:translateY(-3px);box-shadow:0 18px 48px #0ea5e91f,inset 0 1px #ffffff1f}.directory-stat__value{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.04em;white-space:nowrap;-webkit-text-fill-color:transparent;color:#0000;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,#fff 0%,#7dd3fc 55%,#38bdf8 100%);-webkit-background-clip:text;background-clip:text;margin:0 0 6px;font-size:clamp(1.1rem,5.5vw,2.5rem);font-weight:800;line-height:1}.directory-stat__label{letter-spacing:-.01em;color:#ffffffe6;margin:0;font-size:clamp(.7rem,2.5vw,.9rem);font-weight:700;line-height:1.3}.directory-stat__sub{color:#ffffff61;margin:4px 0 0;font-size:clamp(.62rem,1.8vw,.72rem);font-weight:500}.directory-stats--compact{text-align:center;background:#0ea5e914;border:1px solid #0ea5e92e;border-radius:12px;margin:0 0 12px;padding:10px 14px}.directory-stats__compact-line{color:#0f172ab8;margin:0;font-size:.78rem;font-weight:500;line-height:1.4}.directory-stats__compact-line strong{color:#0284c7;font-variant-numeric:tabular-nums;font-weight:800}body.z-black .directory-stats--compact{background:#0ea5e91f;border-color:#38bdf838}body.z-black .directory-stats__compact-line{color:#e2e8f0c7}body.z-black .directory-stats__compact-line strong{color:#7dd3fc}.gateway-vision__close{text-align:center;border-top:1px solid #ffffff14;width:100%;padding-top:clamp(40px,8vw,64px)}.gateway-vision__built{letter-spacing:.22em;text-transform:uppercase;color:#ffffff59;margin:0 0 clamp(10px,2vw,16px);font-size:clamp(.75rem,2vw,.875rem);font-weight:600}.gateway-vision__brand{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.05em;color:#fff;margin:0;font-size:clamp(2.75rem,13vw,6.5rem);font-weight:800;line-height:.9}.gateway-cta{text-align:center;min-height:auto;padding:clamp(48px, 10vw, 80px) max(24px, env(safe-area-inset-right)) max(48px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));color:#f8fafc;background:radial-gradient(100% 70% at 50% 0,#0ea5e91f 0%,#0000 60%),#000;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.gateway-cta__logo-wrap{cursor:default;border-radius:999px;margin-bottom:8px;display:inline-block;position:relative;overflow:hidden}.gateway-cta__logo-wrap:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 25%,#ffffff8c 50%,#0000 75%);position:absolute;inset:0;transform:translate(-120%)}.gateway-cta__logo-wrap:hover:after{animation:.55s forwards logo-shine}.gateway-cta__logo{object-fit:contain;width:64px;height:64px;display:block}@keyframes gateway-logo-in{0%{opacity:0;transform:scale(.7)translateY(12px)}to{opacity:1;transform:none}}.gateway-cta__heading{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.04em;max-width:14ch;margin:0;font-size:clamp(1.5rem,7vw,2.75rem);font-weight:800;line-height:1.08}.gateway-cta__sub{color:#ffffff8c;max-width:32ch;margin:0;padding:0 4px;font-size:clamp(.82rem,3vw,1rem);line-height:1.55}.gateway-cta__actions{flex-direction:column;gap:10px;width:100%;max-width:320px;margin-top:8px;display:flex}.gateway-cta__btn{border-radius:var(--radius-btn);letter-spacing:.02em;cursor:pointer;width:100%;min-height:52px;transition:box-shadow .25s var(--reparo-ease), opacity .25s var(--reparo-ease), transform .25s var(--reparo-ease), border-color .25s var(--reparo-ease);border:none;justify-content:center;align-items:center;padding:0 28px;font-family:inherit;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.gateway-cta__btn--primary{color:#020617;background:#fff;box-shadow:0 4px 24px #fff3}.gateway-cta__btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #ffffff47}.gateway-cta__btn--ghost{color:#ffffffb3;background:0 0;border:1px solid #fff3}.gateway-cta__btn--ghost:hover{color:#fff;border-color:#ffffff73}.gateway-cta__skip{letter-spacing:.06em;text-transform:uppercase;color:#ffffff47;cursor:pointer;transition:color .25s var(--reparo-ease);background:0 0;border:none;margin-top:16px;padding:8px 16px;font-family:inherit;font-size:.78rem;font-weight:600}.gateway-cta__skip:hover{color:#fff9}@media (min-width:600px){.gateway-cta__actions{flex-flow:wrap;justify-content:center;max-width:none}.gateway-cta__btn{width:auto;min-width:160px}}@media (max-width:360px){.gateway-hero{padding:max(20px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom))}.gateway-hero__scroll-line{height:28px}.gateway-cta{gap:12px}.gateway-cta__logo{width:48px;height:48px}}
