.public-page,.onboarding-shell{font-family:var(--ca-font-body);color:var(--ca-ink)}.public-page button,.onboarding-shell button{font:inherit}.public-page a,.onboarding-shell a{color:var(--ca-brand)}:root{--ca-ink:#102442;--ca-muted:#4a5f7a;--ca-brand:#2169b1;--ca-brand-dark:#174b83;--ca-brand-strong:#174b83;--ca-primary:#2563eb;--ca-line:#e0e9f2;--ca-line-strong:#c9d6e4;--ca-bg:#f5f7fa;--ca-surface:#fff;--ca-brand-soft:#e8f1fb;--ca-success:#065f46;--ca-success-soft:#dff5ed;--ca-success-text:#065f46;--ca-warning:#9a3412;--ca-warning-soft:#fff1e6;--ca-warning-text:#9a3412;--ca-neutral:#3b4b61;--ca-neutral-soft:#eef1f5;--ca-danger:#991b1b;--ca-danger-soft:#fde8e8;--ca-danger-text:#991b1b;--ca-focus:#2169b1;--ca-alert-dot:#c2410c;--ca-font-heading:"Plus Jakarta Sans", sans-serif;--ca-font-body:Inter, sans-serif;--ca-text-xs:12px;--ca-text-sm:13px;--ca-text-md:14px;--ca-text-body:15px;--ca-text-lg:16px;--ca-text-xl:18px;--ca-text-2xl:20px;--ca-text-3xl:24px;--ca-text-4xl:30px;--ca-text-5xl:36px;--ca-text-display:44px;--ca-radius-sm:10px;--ca-radius-md:12px;--ca-radius-lg:14px;--ca-radius-xl:16px;--ca-radius-2xl:20px;--ca-radius-pill:999px;--ca-menu-shadow:0 12px 34px #1024421f;--ca-on-brand:#fff;--ca-shadow:0 14px 34px #1024421f;--ca-shadow-sm:0 8px 20px #10244214;--ca-breakpoint-tablet:640px;--ca-breakpoint-desktop:1024px;--ca-breakpoint-wide:1280px}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/civic-font-1.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/civic-font-1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#172b4d;background:#f5f7fa;font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.page-shell{max-width:960px;margin:0 auto;padding:48px 24px}.service-header{margin-bottom:32px}.eyebrow{color:#526581;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:700}.card{background:#fff;border:1px solid #d9e2ec;border-radius:12px;padding:28px;box-shadow:0 4px 18px #172b4d12}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:24px 0;display:grid}label{gap:8px;font-weight:600;display:grid}input,select,button{font:inherit;border:1px solid #829ab1;border-radius:6px;min-height:44px;padding:8px 12px}button{color:#fff;cursor:pointer;background:#005ea8;border-color:#005ea8;font-weight:700}button:disabled{cursor:not-allowed;background:#829ab1;border-color:#829ab1}.success{color:#176b3a;background:#e3fcec;border-radius:6px;padding:12px}.error{color:#9b2c2c;background:#fff5f5;border-radius:6px;padding:12px}.service-count{color:#005ea8;background:#e8f1fb;border-radius:999px;padding:8px 12px;font-size:.85rem;font-weight:700}.module-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:24px;display:grid}.module-card-public{background:#f8fafc;border:1px solid #d9e2ec;border-radius:10px;align-items:flex-start;gap:14px;padding:18px;display:flex}.module-card-public h3,.module-card-public p{margin:0 0 8px}.module-card-public small{color:#526581}.module-icon{color:#fff;background:#005ea8;border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:1.3rem;display:flex}.service-card form{gap:14px;display:grid}.module-notice{border-left:4px solid #005ea8}.resource-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:16px 0;display:grid}.resource-choice{color:#172b4d;text-align:left;background:#f8fafc;border:1px solid #d9e2ec;gap:5px;min-height:74px;display:grid}.resource-choice span{color:#526581;font-size:.85rem}.resource-choice.selected{background:#e8f1fb;border-color:#005ea8;box-shadow:0 0 0 2px #005ea833}.selected-resource{border-left:3px solid #005ea8;padding-left:12px}.submission-list{gap:10px;margin-top:12px;display:grid}.submission-card{background:#fbfdff;border:1px solid #dce8f2;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.submission-card>div{gap:4px;min-width:0;display:grid}.submission-card small{color:#526581}.submission-status{border-radius:999px;flex:none;padding:6px 9px;font-size:.78rem;font-weight:700}.submission-submitted,.submission-received{color:#005ea8;background:#e8f1fb}.submission-in_review,.submission-needs_integration{color:#765600;background:#fff4d6}.submission-approved{color:#167044;background:#e5f8ed}.submission-rejected,.submission-closed{color:#9b2c2c;background:#fbe9e9}.onboarding-shell{background:linear-gradient(160deg,#f5f9fd 0%,#eef4fa 100%);min-height:100vh;padding:20px 18px 32px}.onboarding-top{color:#172b4d;align-items:center;gap:9px;max-width:520px;margin:0 auto 22px;font-weight:800;display:flex}.brand-mark{color:#fff;background:#005ea8;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.76rem;display:flex}.text-button{color:#526581;background:0 0;border:0;min-height:auto;margin-left:auto;padding:5px;font-size:.9rem}.progress-track{background:#d9e2ec;border-radius:99px;max-width:520px;height:5px;margin:0 auto 32px;overflow:hidden}.progress-track span{border-radius:inherit;background:#005ea8;height:100%;transition:width .25s;display:block}.onboarding-card{background:#fff;border:1px solid #d9e2ec;border-radius:18px;max-width:520px;min-height:590px;margin:0 auto;padding:32px 24px 24px;box-shadow:0 12px 35px #172b4d12}.onboarding-illustration{color:#005ea8;background:#e8f1fb;border-radius:22px;justify-content:center;align-items:center;width:112px;height:112px;margin:4px auto 32px;font-size:3rem;display:flex}.onboarding-card h1{margin:10px 0 14px;font-size:clamp(1.8rem,7vw,2.6rem);line-height:1.08}.lead{color:#526581;font-size:1.08rem;line-height:1.55}.step-label{color:#005ea8;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.muted{color:#526581;line-height:1.5}.benefit-list{gap:18px;margin:30px 0;display:grid}.benefit-list>div{align-items:flex-start;gap:14px;display:flex}.benefit-list>div>span{color:#005ea8;background:#e8f1fb;border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;display:flex}.benefit-list p{margin:0}.benefit-list strong{margin-bottom:4px;display:block}.benefit-list small{color:#526581;line-height:1.45;display:block}.onboarding-form{gap:15px;margin-top:28px;display:grid}.onboarding-form input{min-height:48px}.consent-row{align-items:flex-start;gap:12px;margin:24px 0;font-weight:500;line-height:1.45;display:flex}.consent-row input{flex:0 0 20px;height:20px;margin-top:1px}.onboarding-actions{margin-top:auto;padding-top:32px}.primary-action{justify-content:space-between;align-items:center;width:100%;min-height:52px;display:flex}.primary-action span{font-size:1.3rem}.back-action{color:#526581;background:0 0;border:0;min-height:auto;margin:14px auto 0;display:block}.onboarding-footer{color:#526581;text-align:center;max-width:520px;margin:20px auto 0;font-size:.78rem}@media (width>=700px){.onboarding-shell{padding-top:42px}.onboarding-card{padding:42px 48px 32px}}.landing-shell{color:#14294d;background:#f7f9fc;min-height:100vh;overflow:hidden}.landing-nav{justify-content:space-between;align-items:center;gap:28px;max-width:1180px;margin:0 auto;padding:22px 26px;display:flex}.brand-lockup{white-space:nowrap;align-items:center;gap:10px;display:flex}.landing-nav-links{gap:28px;margin-left:auto;display:flex}.landing-nav-links a{color:#526581;font-size:.9rem;text-decoration:none}.nav-cta{background:#14294d;border-color:#14294d;min-height:40px;padding:7px 16px}.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:42px;max-width:1180px;min-height:620px;margin:0 auto;padding:82px 26px 90px;display:grid}.hero-copy{align-self:center;max-width:610px}.hero-copy h1{letter-spacing:-.065em;margin:18px 0 25px;font-size:clamp(2.7rem,6vw,5.3rem);line-height:.98}.hero-copy h1 em{color:#2364b3;font-style:normal}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.hero-actions .primary-action{width:auto}.secondary-action{color:#14294d;background:0 0;border-color:#9fb3c8}.hero-note{color:#7b8ba0;margin-top:18px;font-size:.8rem}.hero-visual{justify-content:center;align-items:center;display:flex;position:relative}.orb{border-radius:50%;position:absolute}.orb-one{background:#dceafa;width:390px;height:390px;top:8%;right:6%}.orb-two{background:#d9f0eb;width:170px;height:170px;bottom:8%;left:2%}.phone-card{background:#fff;border:1px solid #d9e2ec;border-radius:28px;width:100%;max-width:300px;padding:24px;position:relative;transform:rotate(3deg);box-shadow:0 24px 60px #14294d20}.phone-top{color:#8090a4;justify-content:space-between;font-size:.72rem;display:flex}.phone-overline{color:#2364b3;letter-spacing:.08em;margin:40px 0 8px;font-size:.65rem;font-weight:800}.phone-card h3{margin:0;font-size:1.55rem}.phone-muted{color:#7b8ba0;font-size:.82rem}.phone-service{background:#f5f8fc;border-radius:12px;align-items:center;gap:10px;margin-top:12px;padding:12px;display:flex}.phone-service>span:nth-child(2){flex:1;gap:3px;display:grid}.phone-service small{color:#8090a4;font-size:.7rem}.phone-service b{color:#2364b3}.phone-icon{color:#fff;background:#2364b3;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.phone-icon.green{background:#328c76}.phone-status{color:#328c76;margin-top:22px;font-size:.72rem}.phone-status span{background:#43b28e;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.landing-intro,.landing-modules{max-width:1180px;margin:0 auto;padding:110px 26px}.landing-intro{border-top:1px solid #e0e7ef}.landing-intro h2,.landing-modules h2,.landing-banner h2{letter-spacing:-.05em;margin:16px 0 50px;font-size:clamp(2rem,4vw,3.8rem);line-height:1.04}.landing-intro h2 span{color:#7b8ba0}.principles{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.principles article{border-top:1px solid #b7c5d5;padding-top:18px}.principles strong{color:#2364b3;font-size:.78rem}.principles h3{margin:26px 0 10px;font-size:1.25rem}.principles p,.section-aside{color:#526581;line-height:1.55}.landing-modules{color:#fff;background:#14294d;max-width:none;padding-left:max(26px,50vw - 564px);padding-right:max(26px,50vw - 564px)}.landing-modules .eyebrow{color:#9fc6f0}.section-heading{justify-content:space-between;align-items:end;gap:48px;display:flex}.section-aside{color:#a9b9cb;max-width:330px}.landing-module-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.landing-module{border:1px solid #38506f;border-radius:14px;flex-direction:column;min-height:250px;padding:24px;display:flex}.landing-module-number{color:#7daee4;font-size:.78rem}.landing-module p{color:#b3c1d0;line-height:1.45}.module-link{color:#9fc6f0;margin-top:18px;font-size:.8rem;text-decoration:none}.module-link:hover,.module-link:focus{color:#fff;text-decoration:underline}.module-link b{margin-left:5px;font-size:1.05rem}.landing-banner{background:#d9f0eb;justify-content:space-between;align-items:center;gap:30px;padding:92px max(26px,50vw - 564px);display:flex}.landing-banner h2{margin-bottom:0}.light-action{color:#fff;background:#14294d;border-color:#14294d;text-decoration:none;display:inline-flex}.landing-footer{color:#526581;justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:28px 26px;font-size:.82rem;display:flex}.landing-footer .text-button{color:#2364b3}.landing-footer-links{align-items:center;gap:14px;display:flex}@media (width<=760px){.landing-nav{padding:18px}.landing-nav-links{display:none}.landing-nav .nav-cta{font-size:.78rem}.landing-hero{min-height:auto;padding:54px 22px 74px;display:block}.hero-copy h1{font-size:3.2rem}.hero-visual{margin:60px 0 10px}.orb-one{width:290px;height:290px;right:0}.phone-card{max-width:278px}.landing-intro,.landing-modules{padding:74px 22px}.principles,.landing-module-grid{grid-template-columns:1fr}.principles{gap:34px}.section-heading{align-items:start;display:block}.section-aside{margin-top:-26px}.landing-module{min-height:205px}.landing-banner{align-items:start;padding:70px 22px;display:block}.landing-banner .light-action{margin-top:10px}.landing-footer{flex-direction:column;align-items:start;gap:14px;padding:26px 22px}}@media (width<=560px){.portal-shell{padding:22px 14px 106px}.portal-header{margin-bottom:24px}.welcome-card{min-height:210px;padding:24px}.welcome-mark{width:100px;height:100px;margin-right:0;font-size:4rem}.portal-stats article{padding:14px 12px}.portal-stats strong{font-size:1.35rem}.portal-stats span{font-size:.68rem}.quick-actions{grid-template-columns:1fr}.portal-section,.portal-card{padding:18px}}.module-landing{color:#14294d;background:radial-gradient(circle at 88% 0,#e8f4ff 0,#0000 30rem),#f7f9fc;min-height:100vh}.module-landing-nav{justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:22px 26px;display:flex}.module-back{color:#526581;font-size:.9rem;text-decoration:none}.module-back:hover{color:#2364b3;text-decoration:underline}.module-hero{grid-template-columns:minmax(0,1.1fr) minmax(300px,.8fr);gap:60px;max-width:1180px;margin:0 auto;padding:90px 26px 110px;display:grid}.module-hero>div:first-child{align-self:center;max-width:680px}.module-hero h1{letter-spacing:-.065em;margin:18px 0 24px;font-size:clamp(2.5rem,5vw,5rem);line-height:.99}.module-lead{color:#526581;max-width:610px;margin-bottom:30px;font-size:1.15rem;line-height:1.65}.module-hero .primary-action{max-width:280px}.module-hero-card{color:#fff;background:linear-gradient(145deg,#14294d,#2364b3);border-radius:24px;align-self:center;min-height:300px;padding:30px;position:relative;overflow:hidden;box-shadow:0 26px 70px #10244233}.module-hero-card:after{content:"";border:1px solid #fff3;border-radius:50%;width:240px;height:240px;position:absolute;top:-70px;right:-80px}.module-card-icon{background:#ffffff26;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:70px;font-size:1.6rem;display:flex}.module-hero-card .eyebrow{color:#a9d0f2}.module-hero-card h2{letter-spacing:-.04em;z-index:1;margin:10px 0;font-size:1.7rem;position:relative}.module-hero-card p:not(.eyebrow){color:#d1dfed;z-index:1;line-height:1.5;position:relative}.module-card-line{background:#7fc8b1;width:72px;height:4px;position:absolute;bottom:26px;left:30px}.module-explain{background:#fff;border-top:1px solid #e0e7ef;grid-template-columns:.8fr 1.2fr;gap:70px;margin:0 auto;padding:100px max(26px,50vw - 564px);display:grid}.module-explain h2{letter-spacing:-.055em;margin:16px 0 0;font-size:clamp(2rem,4vw,3.4rem);line-height:1.04}.module-points{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.module-points article{border-top:2px solid #b8c9d8;padding-top:16px}.module-points span{color:#2364b3;font-size:.75rem;font-weight:800}.module-points strong{margin-top:24px;font-size:1.05rem;line-height:1.35;display:block}.module-points p{color:#526581;font-size:.86rem;line-height:1.5}.module-bottom-cta{background:linear-gradient(120deg,#dff5ed,#d8edf6);justify-content:space-between;align-items:center;gap:30px;padding:82px max(26px,50vw - 564px);display:flex}.module-bottom-cta h2{letter-spacing:-.05em;max-width:680px;margin:14px 0 0;font-size:clamp(1.9rem,3.5vw,3.2rem);line-height:1.05}.module-bottom-cta .light-action{border:0;flex:none}@media (width<=760px){.module-landing-nav{padding:18px 22px}.module-back{font-size:.78rem}.module-hero{padding:58px 22px 72px;display:block}.module-hero h1{font-size:clamp(2.55rem,12vw,4rem)}.module-hero-card{min-height:260px;margin-top:46px}.module-explain{padding:72px 22px;display:block}.module-points{grid-template-columns:1fr;gap:28px;margin-top:42px}.module-points strong{margin-top:14px}.module-bottom-cta{align-items:flex-start;padding:68px 22px;display:block}.module-bottom-cta .light-action{margin-top:24px}}.citizen-shell{min-height:100vh;padding-bottom:140px}.citizen-shell-header{justify-content:space-between;align-items:center;gap:20px;width:min(1200px,100% - 80px);margin:0 auto;padding:22px 0 18px;display:flex}.citizen-shell-main{width:min(1120px,100%);margin:0 auto;padding:0 40px 40px}.citizen-shell-brand,.citizen-shell-actions,.citizen-shell-brand div{align-items:center;display:flex}.citizen-shell-brand{color:var(--ca-ink);gap:11px}.citizen-shell-brand div{flex-direction:column;align-items:flex-start;gap:2px}.citizen-shell-brand strong{font-family:var(--ca-font-heading);font-size:var(--ca-text-lg)}.citizen-shell-brand small{color:var(--ca-muted);font-size:var(--ca-text-xs)}.citizen-shell-actions{gap:10px}.shell-icon-button,.shell-avatar,.shell-name{min-width:44px;min-height:44px;color:var(--ca-ink);cursor:pointer;background:0 0;border:0}.shell-icon-button{place-items:center;display:grid;position:relative}.shell-alert-dot{background:var(--ca-alert-dot);border:2px solid var(--ca-bg);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.shell-avatar{border-radius:var(--ca-radius-pill);background:var(--ca-brand-soft);width:44px;height:44px;color:var(--ca-brand-dark);font-family:var(--ca-font-heading);place-items:center;padding:0;font-weight:700;display:grid;overflow:hidden}.shell-avatar img{object-fit:cover;width:100%;height:100%}.shell-name{min-width:auto;font:600 var(--ca-text-md) var(--ca-font-body);padding:0 4px}.shell-icon-button:hover,.shell-icon-button:focus-visible{background:var(--ca-brand-soft);color:var(--ca-brand-dark);box-shadow:none;transform:none}.shell-avatar:hover,.shell-avatar:focus-visible{background:var(--ca-brand);color:var(--ca-on-brand);box-shadow:var(--ca-shadow-sm);transform:translateY(-1px)}.shell-name{cursor:default;white-space:nowrap;align-items:center;display:inline-flex}.citizen-shell-bottom-nav{z-index:30;border:1px solid var(--ca-line);border-radius:var(--ca-radius-2xl);width:min(560px,100% - 24px);box-shadow:var(--ca-menu-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;grid-template-columns:repeat(5,1fr);gap:4px;padding:8px;display:grid;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.citizen-shell-bottom-nav button{border-radius:var(--ca-radius-md);min-height:56px;color:var(--ca-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.citizen-shell-bottom-nav button.active{background:var(--ca-brand-soft);color:var(--ca-brand-dark)}.citizen-shell-bottom-nav small{font-size:var(--ca-text-xs);font-weight:600}.shell-nav-icon{line-height:1;position:relative}.shell-nav-icon b{border-radius:var(--ca-radius-pill);background:var(--ca-alert-dot);color:#fff;min-width:15px;padding:1px 4px;font-size:9px;position:absolute;top:-7px;right:-10px}.citizen-shell-bottom-nav button:hover,.citizen-shell-bottom-nav button:focus-visible,.citizen-shell-bottom-nav button.active:hover,.citizen-shell-bottom-nav button.active:focus-visible{background:var(--ca-brand-soft);color:var(--ca-brand-dark);box-shadow:none;transform:none}@media (width<=1023px){.citizen-shell-header{width:calc(100% - 64px)}.citizen-shell-main{padding-left:32px;padding-right:32px}.citizen-shell{padding-bottom:120px}}@media (width<=640px){.citizen-shell-header{width:calc(100% - 40px);padding-top:16px}.citizen-shell-main{padding-left:20px;padding-right:20px}.shell-name{display:none}.citizen-shell-bottom-nav{bottom:calc(16px + env(safe-area-inset-bottom))}}body{color:var(--ca-ink);background:radial-gradient(circle at 80% -8%,#e7f3ff 0,#0000 30rem),#f3f7fb}button{background:linear-gradient(135deg, var(--ca-brand), #2d82c9);border:0;border-radius:12px;transition:all .2s;box-shadow:0 7px 15px #2169b124}button:hover{background:linear-gradient(135deg, var(--ca-brand-dark), var(--ca-brand));transform:translateY(-1px);box-shadow:0 10px 20px #2169b138}input,select,textarea{border-color:#d2dfeb;border-radius:12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#4e93c9;box-shadow:0 0 0 4px #4e93c921}.landing-shell{background:radial-gradient(circle at 86% 5%,#e8f5ff 0,#0000 32rem),#f7f9fc}.landing-nav{z-index:2;position:relative}.landing-nav .brand-mark,.onboarding-top .brand-mark{background:linear-gradient(145deg,#2d82ce,#174b83);box-shadow:0 7px 15px #2169b133}.landing-nav-links a{border-bottom:1px solid #0000;transition:all .2s}.landing-nav-links a:hover{color:var(--ca-brand);border-color:#9bc4e4}.landing-hero{position:relative}.landing-hero:before{content:"";pointer-events:none;border:1px solid #d7e8f6;border-radius:50%;width:18rem;height:18rem;position:absolute;top:5rem;left:-9rem;box-shadow:0 0 0 2rem #d7e8f633,0 0 0 4rem #d7e8f622}.phone-card{box-shadow:0 28px 70px #1024422e}.landing-module{background:linear-gradient(145deg,#ffffff0a,#ffffff03);transition:all .25s}.landing-module:hover{background:#ffffff12;border-color:#6e9fca;transform:translateY(-4px)}.landing-banner{background:linear-gradient(120deg,#dff5ed,#d8edf6)}.portal-shell{background:radial-gradient(circle at 88% 0,#e8f4ff 0,#0000 28rem),#f3f7fb}.portal-header{align-items:center}.profile-chip{background:linear-gradient(145deg,#2d82ce,#174b83);box-shadow:0 8px 18px #2169b133}.welcome-card{background:radial-gradient(circle at 80% 18%,#51b1ae40,#0000 12rem),linear-gradient(125deg,#102b55,#1d538c);box-shadow:0 18px 42px #10244229}.welcome-mark{background:linear-gradient(145deg,#2d82ce,#174b83);box-shadow:0 0 0 16px #ffffff0d}.portal-stats article,.portal-section,.portal-card{border-color:var(--ca-line);box-shadow:var(--ca-shadow)}.portal-stats article{transition:all .2s}.portal-stats article:hover{transform:translateY(-2px);box-shadow:0 16px 34px #1024421c}.quick-actions button,.portal-module-list button,.more-list button,.resource-choice,.dog-row,.submission-card{border-color:var(--ca-line);border-radius:14px;transition:all .2s}.quick-actions button:hover,.portal-module-list button:hover,.more-list button:hover,.resource-choice:hover{background:#f1f8fd;border-color:#a5c9e5;transform:translateY(-2px)}.service-card{border-color:var(--ca-line);box-shadow:var(--ca-shadow)}@media (width<=760px){.landing-hero:before{display:none}.hero-copy h1{font-size:clamp(2.75rem,13vw,4rem)}.landing-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f9fcd1}.welcome-card{border-radius:18px}}.stitch-booking-experience{background:#faf8ff;border:1px solid #edf0f8;border-radius:24px;padding:28px;box-shadow:0 18px 46px #232d540f}.stitch-booking-top{border-bottom:1px solid #e7ebf3;justify-content:space-between;align-items:flex-start;padding-bottom:22px;display:flex}.stitch-booking-top h1,.stitch-booking-step h2,.stitch-resource-card h3,.stitch-confirm-card h3{letter-spacing:-.035em;font-family:Plus Jakarta Sans,sans-serif}.stitch-booking-top h1{margin:12px 0 6px;font-size:clamp(2rem,4vw,3rem)}.stitch-booking-top p:not(.eyebrow),.stitch-step-heading p,.stitch-resource-content p{color:#52617d;margin:0;line-height:1.5}.stitch-progress-card{background:#f2f3ff;border-radius:16px;margin:22px 0;padding:16px}.stitch-progress-card>div:first-child{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.stitch-progress-card b{color:#2563eb;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.stitch-progress-card b span{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-right:7px;display:inline-flex}.stitch-progress-card small{color:#52617d}.stitch-progress-bars{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.stitch-progress-bars i{background:#dae2fd;border-radius:999px;height:7px}.stitch-progress-bars i.active{background:#2563eb}.stitch-step-heading{align-items:flex-start;gap:12px;margin:22px 0 18px;display:flex}.stitch-step-heading h2{margin:0 0 5px;font-size:1.45rem}.stitch-step-heading .step-number{flex:0 0 30px}.stitch-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stitch-resource-card{color:#17233d;text-align:left;background:#fff;border:1px solid #e1e8f2;border-radius:18px;padding:0;transition:all .2s;display:block;overflow:hidden}.stitch-resource-card:hover,.stitch-resource-card:focus-visible{border-color:#2563eb;transform:translateY(-2px);box-shadow:0 10px 24px #2563eb21}.stitch-resource-image{background:linear-gradient(135deg,#dceaff,#eef6ff);height:180px;position:relative;overflow:hidden}.stitch-resource-image img{object-fit:cover;width:100%;height:100%}.stitch-resource-image>span{color:#2563eb;justify-content:center;align-items:center;height:100%;font-size:3rem;display:flex}.stitch-resource-image em{color:#2563eb;background:#fff;border-radius:999px;padding:6px 9px;font-size:.72rem;font-style:normal;font-weight:800;position:absolute;bottom:12px;left:12px}.stitch-resource-content{gap:9px;padding:16px;display:grid}.stitch-resource-content h3{margin:0 0 4px;font-size:1.12rem}.resource-availability{color:#008a60;font-size:.75rem;font-weight:800}.stitch-resource-content small{color:#52617d}.stitch-resource-meta{flex-wrap:wrap;gap:8px;display:flex}.stitch-resource-meta span{color:#52617d;background:#f2f5fa;border-radius:8px;padding:6px 8px;font-size:.75rem}.stitch-resource-content>strong{color:#2563eb;font-size:.86rem}.stitch-resource-content>strong b{float:right;font-size:1.15rem}.stitch-selected-resource{background:#edf4ff;border:1px solid #bfd7ff;border-radius:16px;align-items:center;gap:12px;padding:13px;display:flex}.stitch-selected-icon{background:#dbe8ff;border-radius:12px;flex:0 0 46px;justify-content:center;align-items:center;height:46px;display:flex}.stitch-selected-resource>div:nth-child(2){gap:4px;min-width:0;display:grid}.stitch-selected-resource small{color:#52617d}.stitch-selected-resource button{color:#2563eb;background:0 0;border:0;margin-left:auto;font-weight:800}.stitch-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0;display:grid}.stitch-dog-choice{gap:7px;max-width:420px;display:grid}.stitch-confirm-card{background:#fff;border:1px solid #dfe9f4;border-radius:18px;gap:8px;padding:20px;display:grid}.stitch-confirm-card>span{color:#2563eb;letter-spacing:.08em;font-size:.72rem;font-weight:800}.stitch-confirm-card h3{margin:4px 0;font-size:1.35rem}.stitch-confirm-card p{color:#52617d;margin:0}.stitch-confirm-card small{color:#52617d;margin-top:8px}.stitch-confirm-button{width:100%;min-height:52px;margin-top:18px}@media (width<=760px){.stitch-booking-experience{border-radius:22px;padding:16px 14px}.stitch-booking-top{display:block}.stitch-booking-top h1{font-size:2.05rem}.stitch-booking-top .verified-badge{margin-top:14px;display:inline-flex}.stitch-resource-grid{grid-template-columns:1fr}.stitch-resource-image{height:166px}.stitch-date-grid{grid-template-columns:1fr}.stitch-progress-card>div:first-child{flex-direction:column;align-items:flex-start;gap:7px}}.portal-shell:has(.stitch-booking-experience){max-width:1440px;margin:0 auto;padding:24px 80px 132px}.portal-shell:has(.stitch-booking-experience)>.portal-header{z-index:12;background:#faf8ffe6;border-bottom:1px solid #edf0f8;justify-content:flex-start;align-items:center;margin:-24px -28px 22px;padding:12px 28px;display:flex;position:sticky;top:0}.portal-shell:has(.stitch-booking-experience)>.portal-header .eyebrow{margin:0;font-size:0}.portal-shell:has(.stitch-booking-experience)>.portal-header .eyebrow:before{color:#0f2038;content:"CivicArea";letter-spacing:-.02em;text-transform:none;font-family:Plus Jakarta Sans,sans-serif;font-size:1.05rem;font-weight:800}.portal-shell:has(.stitch-booking-experience)>.portal-header h1{display:none}.portal-shell:has(.stitch-booking-experience)>.portal-header p:not(.eyebrow){display:none}.portal-shell:has(.stitch-booking-experience)>.portal-header .profile-chip{margin-left:auto}.portal-shell:has(.stitch-booking-experience)>.portal-header:after{color:#2563eb;content:"⌖ Comune di Messina  ⌄";background:#e0edff;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;position:absolute;top:11px;right:84px}.portal-shell:has(.stitch-booking-experience)>.portal-card:has(.stitch-booking-experience){box-shadow:none;background:0 0;border:0;width:100%;max-width:100%;padding:0}.portal-shell:has(.stitch-booking-experience)>.portal-card:last-of-type{margin-bottom:132px}@media (width<=760px){.portal-shell:has(.stitch-booking-experience){padding:0 14px 122px}.portal-shell:has(.stitch-booking-experience)>.portal-header{margin:0 -14px 14px;padding:12px 14px}.portal-shell:has(.stitch-booking-experience)>.portal-header:after{padding:7px 9px;font-size:.72rem}.portal-shell:has(.stitch-booking-experience)>.portal-card:last-of-type{margin-bottom:30px}}button,a,input,select,textarea{transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #388bca57}.brand-mark{color:#0000;border:0;font-size:0;overflow:hidden;background:#173461 url(/civicarea-mark.svg) 50%/cover no-repeat!important}.landing-nav .brand-mark,.onboarding-top .brand-mark{box-shadow:0 7px 15px #1734612e}.nav-cta:hover,.hero-actions .primary-action:hover,.light-action:hover{color:#fff;background:linear-gradient(135deg,#174b83,#2169b1);transform:translateY(-1px);box-shadow:0 10px 22px #1024422e}.secondary-action:hover{color:var(--ca-brand-dark);background:#eef7fd;border-color:#78add2;transform:translateY(-1px);box-shadow:0 7px 16px #2169b11a}.module-link:hover,.module-link:focus-visible{color:#fff;text-underline-offset:4px;text-decoration:underline}.quick-actions button:hover,.quick-actions button:focus-visible,.portal-module-list button:hover,.portal-module-list button:focus-visible,.more-list button:hover,.more-list button:focus-visible{color:var(--ca-brand-dark);background:#f1f8fd;border-color:#a9cbe4;transform:translateY(-1px);box-shadow:0 9px 19px #2169b11a}.resource-choice:hover,.resource-choice:focus-visible{color:var(--ca-ink);background:#f1f8fd;border-color:#8ebddd;transform:none;box-shadow:0 0 0 3px #4e93c91a}.resource-choice.selected:hover,.resource-choice.selected:focus-visible{border-color:var(--ca-brand);background:#eaf5fd;box-shadow:0 0 0 3px #2169b126}.link-button:hover,.link-button:focus-visible,.text-button:hover,.text-button:focus-visible{color:var(--ca-brand-dark);text-underline-offset:3px;background:#eef7fd;text-decoration:underline}@media (hover:none){button:hover,a:hover,.quick-actions button:hover,.portal-module-list button:hover,.more-list button:hover{transform:none}}.service-card{background:linear-gradient(145deg,#f8fbff,#fff);border:1px solid #d9e2ec;border-radius:14px;padding:22px}.service-card h3{letter-spacing:-.03em;margin:8px 0;font-size:clamp(1.35rem,3vw,2rem)}.service-card h4{color:#2364b3;letter-spacing:.07em;text-transform:uppercase;margin:26px 0 10px;font-size:.78rem}.service-card>p:not(.eyebrow),.service-card form>p{color:#526581;line-height:1.55}.service-card form{margin-top:20px}.service-card form button,.service-card>button:not(.resource-choice){margin-top:6px}.service-card input,.service-card select,.portal-card input,.portal-card select,.portal-card textarea{color:#172b4d;background:#fff;border-color:#c5d2e0;border-radius:10px;outline:none;min-height:48px;transition:border-color .18s,box-shadow .18s}.password-field>span{display:block;position:relative}.password-field input{width:100%;padding-right:52px}.password-toggle{color:#526581;background:0 0;border:0;justify-content:center;align-items:center;width:40px;height:40px;min-height:40px;padding:0;font-size:1.1rem;display:inline-flex;position:absolute;top:4px;right:5px}.password-toggle:hover,.password-toggle:focus-visible{color:#2364b3;background:#eef7fd;transform:none}.password-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:22px;height:22px}.password-toggle .eye-slash{stroke-width:2px}.onboarding-form .consent-row{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;margin:5px 0;font-size:.98rem;line-height:1.4;display:grid}.onboarding-form .consent-row input{width:20px;height:20px;min-height:20px;margin:2px 0 0}.portal-card form .consent-row{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;margin:12px 0 18px;font-size:.98rem;line-height:1.4;display:grid}.portal-card form .consent-row input{width:20px;height:20px;min-height:20px;margin:2px 0 0}.service-card textarea,.portal-card textarea{resize:vertical;min-height:110px;padding:12px}.service-card input:focus,.service-card select:focus,.portal-card input:focus,.portal-card select:focus,.portal-card textarea:focus{border-color:#2364b3;box-shadow:0 0 0 3px #2364b326}.booking-history,.message-list{gap:10px;display:grid}.booking-history article,.message-list article,.simple-row{background:#f8fafc;border:1px solid #e0e7ef;border-radius:12px;gap:6px;padding:15px;display:grid}.booking-history-card{appearance:none;color:inherit;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e0e7ef;border-radius:12px;gap:6px;width:100%;padding:15px;display:grid}.booking-history-card:hover,.booking-history-card:focus-visible{border-color:#287dc1;outline:none;transform:translateY(-1px);box-shadow:0 8px 20px #17346114}.booking-history-card b{color:#176ab0;margin-top:5px;font-size:.82rem}.booking-detail-backdrop{z-index:30;background:#10284d73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.booking-detail-backdrop>div{width:100%;max-width:560px;max-height:min(760px,100vh - 40px);overflow:auto}.booking-detail{background:#fff;border:1px solid #cfe0f1;border-radius:16px;gap:16px;padding:18px;display:grid;box-shadow:0 20px 60px #071a3c40}.booking-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.booking-detail-head h3{margin:2px 0 0}.booking-close{color:#526581;cursor:pointer;background:#edf3f8;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;font-size:1.4rem;line-height:1;display:inline-flex}.booking-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-detail-grid span{background:#f8fafc;border-radius:10px;gap:4px;padding:11px;display:grid}.booking-detail-grid small{color:#71829a;font-size:.74rem}.booking-detail-grid strong{color:#172b4d;font-size:.88rem}.booking-access-card{background:#edf8f4;border:1px solid #bfe4d4;border-radius:12px;gap:6px;padding:14px;display:grid}.booking-access-card code{color:#176d5b;letter-spacing:.08em;text-align:center;word-break:break-all;background:#fff;border:1px dashed #328c76;border-radius:8px;padding:10px;font-size:1.2rem;font-weight:800}.booking-access-card span,.booking-access-card small,.booking-detail-note{color:#526581;font-size:.83rem;line-height:1.4}.booking-detail-actions{flex-wrap:wrap;gap:10px;display:flex}.danger-action{color:#a52b3b;cursor:pointer;background:#fff1f2;border:1px solid #f2b8c0;border-radius:9px;padding:11px 14px;font-weight:750}.dog-booking-select{background:#edf8f4;border:1px solid #cceadd;border-radius:12px;gap:8px;margin:16px 0;padding:14px;display:grid}.dog-booking-select select{max-width:100%}.dog-list{gap:8px;margin:14px 0 20px;display:grid}.dog-row{background:#f8fafc;border:1px solid #e0e7ef;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.dog-avatar{background:#fff2df;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.dog-photo{object-fit:cover}.dog-row div{gap:3px;min-width:0;display:grid}.dog-row small{color:#526581;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dog-row .link-button{margin-left:auto}.dog-row .danger-link{color:#a52b3b;margin-left:0}.dog-edit-form{background:#fff;border-top:1px solid #dbe6ef;gap:12px;width:100%;margin-top:6px;padding-top:14px;display:grid}.dog-edit-form h3{margin:0}.dog-edit-actions{flex-wrap:wrap;gap:10px;display:flex}.dog-form{border-top:1px solid #e0e7ef;gap:12px;margin-top:18px;padding-top:18px;display:grid}.dog-form h3{margin:0 0 2px}.profile-photo-row{align-items:center;gap:14px;margin:4px 0 18px;display:flex}.profile-photo{object-fit:cover;border-radius:50%;width:72px;height:72px}.profile-placeholder{color:#fff;background:#2364b3;justify-content:center;align-items:center;font-size:1.7rem;font-weight:800;display:flex}.profile-logout{color:#9b2c2c;background:#fff4f4;border:1px solid #f0caca;width:100%;margin-top:18px}.profile-logout:hover,.profile-logout:focus-visible{color:#742020;background:#ffeaea}.photo-upload{gap:5px;display:grid}.photo-preview{object-fit:cover;border-radius:12px;width:90px;height:90px}.booking-history span,.booking-history small,.message-list small,.simple-row span,.simple-row small{color:#526581;font-size:.84rem}.booking-history small{color:#328c76;text-transform:capitalize;font-weight:800}.message-list article{cursor:pointer;position:relative}.message-list article.unread{border-left:4px solid #2364b3}.message-list article>span{color:#2364b3;background:#e8f1fb;border-radius:999px;padding:4px 8px;font-size:.7rem;font-weight:800;position:absolute;top:12px;right:12px}.message-list article p{color:#526581;margin:4px 0 0;line-height:1.45}.portal-card>h3{margin:28px 0 12px;font-size:1.15rem}.portal-card form{gap:14px;display:grid}.portal-card form button{justify-self:start}.portal-card .success,.portal-card .error,.service-card .success,.service-card .error{border-radius:10px;margin:16px 0 0}.portal-shell button{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.reago-credit{color:#6a7d92;justify-content:center;align-items:center;gap:7px;max-width:1260px;margin:0 auto 10px;padding:0 14px;line-height:1;display:flex}.reago-credit>span:last-child{gap:4px;display:inline-flex}.reago-credit strong{color:#2369a8;font-weight:800}.reago-mark{color:#fff;background:linear-gradient(145deg,#2d82ce,#174b83);border-radius:50%;flex:0 0 19px;justify-content:center;align-items:center;width:19px;height:19px;font-size:.58rem;font-weight:800;display:inline-flex}.resource-choice .area-sponsor{color:#2364b3;font-size:.72rem;font-weight:750}.area-detail{background:#f6faff;border:1px solid #dce8f2;border-radius:14px;grid-template-columns:minmax(0,1.4fr) minmax(190px,.8fr);gap:18px;margin:18px 0;padding:18px;display:grid}.area-detail h4{color:#172b4d;letter-spacing:-.02em;margin:5px 0 8px;font-size:1.2rem}.area-detail p:not(.eyebrow){color:#526581;line-height:1.45}.amenities{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.amenities span{color:#246d6a;background:#e3f4ef;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:750}.sponsor-card{color:#fff;background:linear-gradient(145deg,#1f4d69,#328c76);border-radius:12px;align-content:center;gap:7px;padding:16px;display:grid}.sponsor-card small{color:#cce8e1;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.sponsor-card strong{font-size:1.15rem}.sponsor-card span{color:#d8f0e9;font-size:.8rem;line-height:1.4}@media (width<=560px){.area-detail{grid-template-columns:1fr;padding:14px}.sponsor-card{min-height:115px}}.booking-intro{background:#edf8f4;border-left:4px solid #328c76;border-radius:9px;gap:5px;margin:18px 0 8px;padding:14px 16px;display:grid}.booking-intro span{color:#526581;font-size:.88rem;line-height:1.45}.area-detail-main{min-width:0}.area-hero{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.area-type,.area-state{letter-spacing:.06em;border-radius:999px;padding:6px 9px;font-size:.68rem;font-weight:800}.area-type{color:#2364b3;background:#e8f1fb}.area-state{color:#24705d;letter-spacing:0;background:#e3f4ef}.area-address{font-size:.9rem;font-weight:700;color:#2364b3!important}.area-facts{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.area-facts span{color:#526581;text-align:center;background:#fff;border:1px solid #dce8f2;border-radius:9px;gap:3px;padding:10px;font-size:.7rem;display:grid}.area-facts strong{color:#172b4d;font-size:.95rem}.area-detail-side{align-content:start;gap:12px;display:grid}.policy-card{background:#fff;border:1px solid #dce8f2;border-radius:12px;gap:8px;padding:14px;display:grid}.policy-card span{color:#526581;font-size:.77rem;line-height:1.35}.area-rules{border-top:1px solid #dce8f2;grid-column:1/-1;padding-top:15px}.area-rules ul{color:#526581;gap:6px;margin:10px 0 0;padding-left:20px;line-height:1.4;display:grid}.booking-step,.booking-summary{align-items:flex-start;gap:12px;margin:22px 0 12px;display:flex}.booking-step small,.booking-summary small{color:#7b8ba0;margin-top:3px;font-size:.75rem;display:block}.step-number{color:#fff;background:#2364b3;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:800;display:flex}.booking-summary{background:#f2f7fd;border:1px solid #cfe0f1;border-radius:12px;padding:14px}.booking-summary p{color:#172b4d;margin:7px 0 3px;font-weight:750}.booking-summary span:not(.step-number){color:#526581;font-size:.84rem}@media (width<=560px){.area-facts{gap:5px}.area-facts span{padding:8px 4px}.area-hero{flex-direction:column;align-items:flex-start;gap:8px}}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.resource-choice,.portal-module-list button,.quick-actions button{touch-action:manipulation}@media (width>=561px) and (width<=1024px){.portal-shell{padding-left:28px;padding-right:28px}.welcome-card{min-height:210px}.area-detail{grid-template-columns:1fr}.area-detail-side{grid-template-columns:repeat(2,1fr)}.landing-hero{padding-top:64px}.phone-card{max-width:270px}}@media (width<=560px){.booking-detail-backdrop{align-items:flex-end;padding:10px}.booking-detail-backdrop>div{max-height:calc(100vh - 20px)}.booking-detail{border-radius:18px 18px 10px 10px;padding:16px}}.onboarding-shell{color:var(--ca-ink);background:radial-gradient(circle at 12% 0,#e4f3ff 0,#0000 28rem),linear-gradient(#f7faff,#edf6fc);padding:28px 18px 38px}.onboarding-top{color:var(--ca-ink);max-width:620px;margin-bottom:30px}.onboarding-top .brand-mark{background:linear-gradient(145deg,#2d82ce,#174b83);border-radius:10px;box-shadow:0 7px 15px #2169b12e}.onboarding-card{border-color:#dce9f4;border-radius:22px;max-width:620px;min-height:580px;padding:38px 34px 30px;box-shadow:0 22px 55px #1024421c}.onboarding-card h1{color:var(--ca-ink);letter-spacing:-.06em;font-size:clamp(2.15rem,5vw,3.45rem)}.onboarding-illustration{color:var(--ca-brand);background:linear-gradient(145deg,#e1f0ff,#dcf6ed);border-radius:28px;box-shadow:inset 0 0 0 1px #cfe5f5}.progress-track{background:#dce9f4;height:6px}.progress-track span{background:linear-gradient(90deg,#2b76c4,#43b991)}.step-label,.onboarding-card .eyebrow{color:var(--ca-brand)}.onboarding-card input{background:#fbfdff;border-color:#cbddea}.onboarding-card input:focus{border-color:#2b76c4;box-shadow:0 0 0 4px #2b76c421}.access-choice{min-height:500px}.access-choice .onboarding-actions{gap:12px;display:grid}.access-choice .secondary-action{color:var(--ca-ink);background:#f7fbff;border:1px solid #cbddea;min-height:52px}.onboarding-footer{color:#71829a}.module-landing{background:radial-gradient(circle at 90% 2%,#e2f2ff 0,#0000 28rem),#f7faff}.module-landing-nav{max-width:1260px;padding:18px 34px}.module-landing-nav .brand-lockup{color:var(--ca-ink);text-decoration:none}.module-back{background:#fff;border:1px solid #dce9f4;border-radius:999px;padding:8px 13px}.module-hero{max-width:1260px;padding:86px 34px 104px}.module-hero h1{color:var(--ca-ink);font-size:clamp(3rem,6vw,5.8rem)}.module-lead{max-width:570px}.module-hero-card{background:linear-gradient(145deg,#12345f,#2879bf);border-radius:28px;box-shadow:0 28px 65px #1024422e}.module-card-icon{background:#ffffff2e;border-radius:15px}.module-explain{border-color:#dce9f4;padding-left:max(34px,50vw - 596px);padding-right:max(34px,50vw - 596px)}.module-points article{border-top-color:#8fc2df}.module-bottom-cta{background:linear-gradient(115deg,#dff8f0,#d6eff9)}.portal-shell{background:radial-gradient(circle at 88% 0,#e3f3ff 0,#0000 30rem),#f4f8fc;padding-left:max(24px,50vw - 630px);padding-right:max(24px,50vw - 630px)}.portal-header h1{color:var(--ca-ink)}.portal-header .eyebrow{color:var(--ca-brand)}.profile-chip{background:linear-gradient(145deg,#2d82ce,#174b83)}.welcome-card{background:linear-gradient(125deg,#102b55,#1d609a);border-radius:24px;min-height:250px}.welcome-card h2{font-size:clamp(2.2rem,5vw,4rem)}.welcome-mark{background:linear-gradient(145deg,#2f82c8,#2470ad)}.portal-stats article,.portal-section,.portal-card{border-color:#dce9f4;border-radius:18px;box-shadow:0 14px 34px #10244212}.portal-section h2,.portal-card h2{color:var(--ca-ink);letter-spacing:-.035em}.quick-actions button{background:#fbfdff;border-color:#dce9f4}.quick-actions button>span{background:#2b76c4}.portal-module-list button,.more-list button{background:#fbfdff;border-color:#dce9f4}.service-card{background:linear-gradient(145deg,#fbfdff,#fff);border-color:#dce9f4;border-radius:18px;padding:26px;box-shadow:0 14px 34px #10244212}.service-card .eyebrow{color:var(--ca-brand)}.booking-intro{background:#e8f8f1;border-left-color:#43b991}.area-detail{background:#f4f9fd;border-color:#dce9f4;border-radius:18px}.resource-choice{background:#fbfdff;border-color:#dce9f4}.resource-choice.selected{background:#eaf5fd;border-color:#2b76c4}.booking-summary{background:#eef6fd;border-color:#cfe2f2}.booking-access-card{background:#e8f8f1;border-color:#bfe4d4}.booking-detail{border-color:#dce9f4;border-radius:20px}.dog-booking-select{background:#e8f8f1;border-color:#cceadd}@media (width<=760px){.module-landing-nav{padding:16px 20px}.module-hero{padding:58px 20px 76px}.module-explain{padding-left:20px;padding-right:20px}.onboarding-card{padding:30px 22px 24px}.portal-shell{padding-left:14px;padding-right:14px}.service-card{padding:20px 16px}}.landing-shell{color:#102b52;background:#f7faff}.landing-nav{max-width:1260px;padding:18px 34px}.landing-nav .brand-lockup{color:#102b52;text-decoration:none}.landing-nav-links a{color:#34496a;font-size:.78rem}.landing-hero{background:linear-gradient(#f7faff 0%,#eef7ff 100%);grid-template-columns:minmax(0,1fr) minmax(450px,.9fr);max-width:none;min-height:570px;padding:65px max(34px,50vw - 630px) 55px}.hero-copy{max-width:620px}.hero-copy h1{color:#102b52;margin:14px 0 20px;font-size:clamp(3.5rem,6.2vw,6rem);line-height:.94}.hero-copy h1 em{color:#2b76c4}.hero-lead{color:#526581;max-width:515px;font-size:1rem;line-height:1.55}.hero-actions{gap:14px;margin-top:27px}.hero-choice{color:#102b52;text-align:left;background:#fff;border:1px solid #dfeaf5;border-radius:14px;justify-content:flex-start;align-items:center;gap:11px;width:235px;min-height:74px;padding:12px 14px;display:flex;box-shadow:0 10px 28px #1b477517}.hero-choice:hover{color:#102b52;background:#fff;border-color:#93bfe3}.hero-choice>span:nth-child(2){flex:1;gap:3px;display:grid}.hero-choice small{color:#71829a;font-size:.67rem;font-weight:500;line-height:1.2}.hero-choice>b{color:#2b76c4}.choice-icon{color:#fff;background:#2f7dc6;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;height:34px;display:flex}.municipality-choice .choice-icon{background:#43b991}.hero-visual{min-height:420px}.hero-visual .orb-one{background:#d5eaff;width:390px;height:390px;top:4%;right:6%}.park-scene{background:linear-gradient(160deg,#bce7f2 0%,#e7f7f5 52%,#93d7b5 53%,#d5eed3 100%);border-radius:50% 50% 16% 16%;width:390px;height:310px;position:absolute;bottom:18px;right:-10px;overflow:hidden;transform:rotate(-4deg)}.park-sky{background:linear-gradient(#a9daf1,#e3f5f8);position:absolute;inset:0 0 44%}.park-ground{background:linear-gradient(175deg,#7dc78b,#bfe5ad);width:120%;height:57%;position:absolute;bottom:0;left:-7%;transform:rotate(-7deg)}.park-building{z-index:1;background:#d7b680;border-radius:45% 45% 0 0;width:98px;height:90px;position:absolute;bottom:52%;left:43%}.park-building:after{content:"";border-bottom:80px solid #aa8b6b;border-left:45px solid #0000;border-right:45px solid #0000;position:absolute;top:-54px;left:4px}.park-tree{z-index:2;background:#3b9d69;border-radius:50%;width:105px;height:90px;position:absolute}.park-tree:after{content:"";background:#8b6b43;width:12px;height:56px;position:absolute;bottom:-39px;left:45px}.tree-one{top:26%;left:12%}.tree-two{top:22%;right:9%;transform:scale(.82)}.phone-card{z-index:4;max-width:230px;padding:19px;transform:rotate(5deg)}.phone-card:before{content:"";pointer-events:none;border:4px solid #1e2b42;border-radius:28px;position:absolute;inset:-8px}.phone-overline{margin-top:25px}.phone-card h3{font-size:1.23rem}.phone-service{padding:9px}.phone-service strong{font-size:.75rem}.phone-service small{font-size:.59rem}.landing-process{padding:66px max(34px,50vw - 630px) 48px}.process-heading{margin-bottom:25px}.process-heading h2{letter-spacing:-.055em;margin:10px 0 3px;font-size:clamp(2.4rem,4vw,3.4rem)}.process-heading>p:not(.eyebrow){color:#637694;margin:0}.process-grid{grid-template-columns:1fr 22px 1fr 22px 1fr 22px 1fr;align-items:start;gap:12px;display:grid}.process-grid article{min-width:0}.process-grid article>strong{margin:9px 0 12px;font-size:.78rem;line-height:1.25;display:block}.process-grid>i{color:#6d8eb4;align-self:center;padding-top:45px;font-size:1.25rem;font-style:normal}.process-number{color:#fff;background:#2e7cc6;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:800;display:inline-flex}.process-card{background:#fff;border:1px solid #dfeaf5;border-radius:12px;min-height:130px;padding:14px;box-shadow:0 9px 22px #1b477512}.process-card span,.process-card small{color:#637694;font-size:.64rem;line-height:1.35;display:block}.process-card b{font-size:.74rem;display:block}.map-card{background:linear-gradient(135deg,#f8f2e7,#bdebcf);position:relative}.map-card:before{content:"";border:1px dashed #75b5a6;border-radius:50%;width:118px;height:72px;position:absolute;top:28px;left:42px;transform:rotate(35deg)}.map-card b{color:#fff;background:#2ebd87;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin:10px auto 0;font-size:1.3rem;display:flex}.park-card{background:linear-gradient(145deg,#e7f4e6,#d3ebca);gap:10px;display:grid}.park-card b{color:#299d72;font-size:.63rem}.park-card small{background:#fff9;border-radius:7px;padding:7px 5px}.calendar-card{gap:10px;display:grid}.calendar-card>div{grid-template-columns:repeat(4,1fr);gap:3px;display:grid}.calendar-card>div b{color:#7c8aa1;text-align:center;background:#f0f5fa;border-radius:6px;padding:5px 2px;font-size:.55rem}.calendar-card>div em{color:#203d66;font-size:.8rem;font-style:normal}.calendar-card>div .selected-day{color:#fff;background:#2d7bc5}.calendar-card>div .selected-day em{color:#fff}.calendar-card>small{text-align:center;background:#eef5fb;border-radius:6px;padding:7px}.calendar-card>small strong{color:#2174ba}.access-card{text-align:center;background:#e8f8f1;gap:8px;display:grid}.access-card b{color:#204975;font-size:2.8rem;line-height:1}.access-card small{color:#2364b3;letter-spacing:.12em;background:#fff;border-radius:6px;padding:5px;font-weight:800}.benefit-strip{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;display:grid}.benefit-strip article{background:#fff;border:1px solid #dfeaf5;border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.benefit-strip article>b{color:#2b76c4;background:#e1effc;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;height:34px;display:flex}.benefit-strip span{gap:4px;display:grid}.benefit-strip small{color:#71829a;font-size:.66rem;line-height:1.3}.municipality-process{background:#eef7ff}.municipality-process .process-number{background:#2d7bc5}.checklist-card,.rules-card,.metrics-card{gap:10px;display:grid}.checklist-card b{color:#216eb7}.rules-card div{color:#5d7595;background:#f0f6fb;border-radius:5px;padding:6px;font-size:.59rem}.published-card{text-align:center;background:#e8f8ee;align-items:center;gap:7px;display:grid}.published-card>b{color:#fff;background:#35b887;border-radius:50%;justify-self:center;width:38px;height:38px;padding:7px;font-size:1.4rem}.published-card strong{color:#23855d}.published-card small{color:#2d7bc5;font-weight:800}.metrics-card>span{justify-content:space-between;align-items:center;display:flex}.metrics-card>span small{display:inline}.metrics-card>b{color:#193e6c;font-size:1.1rem}.metrics-card>b:nth-of-type(2){color:#2b9f7b}.metrics-card>b small{color:#71829a;font-size:.55rem;font-weight:500;display:block}.municipality-note{color:#637694;text-align:center;margin:26px 0 0;font-size:.78rem}.landing-modules{padding-top:72px;padding-bottom:72px}.landing-modules .section-heading{margin-bottom:30px}.landing-modules h2{margin-bottom:0}.landing-module-grid{grid-template-columns:repeat(4,1fr);gap:12px}.landing-module{min-height:205px;padding:18px}.module-icon-large{color:#bde0ff;background:#1f5a99;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.15rem;display:flex}.landing-module h3{margin-top:24px;font-size:.9rem}.landing-module p{font-size:.7rem}.module-link{font-size:.68rem}.landing-banner{background:linear-gradient(115deg,#dff8f0,#d6eff9);padding-top:68px;padding-bottom:68px}.landing-banner h2{margin-bottom:0;font-size:clamp(2.1rem,4vw,3.45rem)}.banner-actions{justify-items:start;gap:10px;display:grid}.banner-actions p{color:#5d7595;margin:0;font-size:.8rem;line-height:1.35}.banner-actions .light-action{padding:10px 14px;font-size:.8rem}.banner-link{box-shadow:none;color:#216eb7;background:0 0;min-height:auto;padding:2px;font-size:.76rem}.banner-link:hover{box-shadow:none;color:#143e6c;background:0 0;transform:none}.landing-footer{max-width:1260px;padding:24px 34px}.landing-footer a{color:#526581;font-size:.72rem;text-decoration:none}.landing-footer a:hover{color:#2364b3;text-decoration:underline}.platform-overview{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:56px;max-width:1260px;margin:0 auto;padding:84px 34px;display:grid}.platform-overview-heading{max-width:520px}.platform-overview-heading h2{color:#173461;letter-spacing:-.055em;margin:14px 0 18px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.03}.platform-overview-heading>p:last-child{color:#607590;max-width:440px;line-height:1.6}.platform-overview-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.platform-overview-grid article{border-top:2px solid #b8c9d8;padding-top:16px}.platform-overview-grid span{color:#2369b1;font-size:.76rem;font-weight:800}.platform-overview-grid strong{color:#173461;margin-top:22px;line-height:1.3;display:block}.platform-overview-grid p{color:#607590;font-size:.84rem;line-height:1.5}@media (width<=900px){.landing-hero{grid-template-columns:1fr}.hero-visual{margin-top:10px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid>i{display:none}.landing-module-grid{grid-template-columns:repeat(2,1fr)}.landing-footer-links{flex-wrap:wrap}}@media (width<=620px){.landing-nav{padding:16px 18px}.landing-nav-links{display:none}.landing-hero{padding:52px 20px 34px}.hero-copy h1{font-size:clamp(3rem,15vw,4.3rem)}.hero-actions{grid-template-columns:1fr;display:grid}.hero-choice{width:100%}.hero-visual{min-height:340px}.park-scene{width:300px;height:245px;right:-65px}.phone-card{max-width:205px}.landing-process{padding:56px 20px 38px}.process-grid,.benefit-strip{grid-template-columns:1fr}.process-grid article>strong{font-size:.9rem}.process-card{min-height:118px}.benefit-strip{gap:8px}.platform-overview{padding:58px 20px;display:block}.platform-overview-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.platform-overview-grid strong{margin-top:12px}.landing-module-grid{grid-template-columns:1fr}.landing-module{min-height:175px}.section-heading{margin-bottom:24px}.landing-banner{gap:24px;padding:58px 20px;display:grid}.landing-footer{flex-direction:column;align-items:flex-start;padding:24px 20px}.landing-footer-links{gap:10px 16px}}.landing-shell{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.landing-shell h1,.landing-shell h2,.landing-shell h3,.landing-shell h4,.landing-nav,.landing-badge{font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.landing-nav .brand-lockup{padding-right:8px;position:relative}.landing-nav .brand-lockup small{color:#71829a;letter-spacing:.1em;text-transform:uppercase;margin-top:-3px;margin-left:42px;font-size:.52rem;font-weight:700;display:block}.nav-link-action{box-shadow:none;color:#34496a;background:0 0;border:0;min-height:38px;padding:7px 10px;font-size:.78rem}.nav-link-action:hover{box-shadow:none;color:#173461;background:#eef5fb;transform:none}.landing-profile-mark{color:#2364b3;background:#e0edff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;margin-left:3px;font-size:.8rem;display:inline-flex}.landing-badge{color:#2364b3;letter-spacing:.04em;text-transform:uppercase;background:#e0edff;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:.65rem;font-weight:700;display:inline-flex}.landing-badge>span{background:#2364b3;border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite civicarea-pulse}.landing-badge b{color:#91a8c2}.landing-trust{color:#607590;flex-wrap:wrap;align-items:center;gap:9px;margin-top:18px;font-size:.68rem;font-weight:700;display:flex}.landing-trust span:first-child,.landing-trust span:nth-of-type(2){color:#299d72}.landing-trust i{color:#c1d0df;font-style:normal}@keyframes civicarea-pulse{0%,to{box-shadow:0 0 #2364b338}50%{box-shadow:0 0 0 5px #2364b300}}@media (width<=900px){.landing-nav-actions .nav-link-action{display:none}}@media (width<=620px){.landing-nav .brand-lockup small,.landing-profile-mark{display:none}.landing-nav-actions{margin-left:auto}.landing-badge{max-width:100%;font-size:.57rem}.landing-trust{gap:6px;font-size:.62rem}.landing-trust i{display:none}}.mobile-menu-button,.mobile-landing-drawer{display:none}@media (width<=900px){.landing-shell{background:#f8fafc;max-width:448px;min-height:100vh;margin:0 auto;overflow-x:hidden}.landing-nav{z-index:50;background:#fffffff2;border-bottom:1px solid #e2e8f0;align-items:center;padding:12px 16px;position:sticky;top:0;box-shadow:0 1px 8px #0f172a0a}.landing-nav .brand-lockup{gap:8px}.landing-nav .brand-mark{width:32px;height:32px}.landing-nav .brand-lockup strong{font-size:1rem}.landing-nav .nav-cta{border-radius:8px;min-height:36px;padding:7px 10px;font-size:.72rem}.mobile-menu-button{box-shadow:none;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;min-height:36px;padding:0;font-size:1.2rem;display:inline-flex}.mobile-menu-button:hover,.mobile-menu-button:focus-visible{box-shadow:none;color:#0f172a;background:#f1f5f9;transform:none}.mobile-landing-drawer{background:#fff;border-top:1px solid #f1f5f9;gap:0;padding:10px 20px 14px;display:grid;position:absolute;top:100%;left:0;right:0;box-shadow:0 16px 28px #0f172a1f}.mobile-landing-drawer a{color:#0f172a;border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:center;padding:11px 0;font-size:.82rem;font-weight:700;text-decoration:none;display:flex}.mobile-landing-drawer a span{color:#2563eb}.mobile-landing-drawer button{box-shadow:none;color:#0f172a;background:#fff;border:1px solid #e2e8f0;min-height:40px;margin-top:10px;font-size:.76rem}.landing-hero{margin:0;padding:24px 16px 32px;display:block}.hero-copy h1{margin:12px 0 10px;font-size:clamp(2.15rem,10vw,2.8rem);line-height:1.12}.hero-lead{margin-bottom:18px;font-size:.83rem;line-height:1.55}.landing-badge{letter-spacing:.025em;padding:7px 9px;font-size:.54rem}.hero-actions{gap:10px;margin-top:0}.hero-choice{border-radius:12px;width:100%;min-height:66px;padding:11px 12px}.hero-choice strong{font-size:.78rem}.hero-choice small{font-size:.64rem}.landing-trust{border-bottom:1px solid #e2e8f0;gap:5px;margin-top:15px;padding-bottom:14px;font-size:.58rem}.hero-visual{min-height:390px;margin:22px -1px 0}.hero-visual .orb-one{width:280px;height:280px;top:18px;right:-35px}.hero-visual .orb-two{width:130px;height:130px;bottom:16px;left:-25px}.park-scene{width:278px;height:220px;bottom:18px;right:-46px}.phone-card{color:#fff;z-index:4;background:#0b1528;border:4px solid #0f172a;border-radius:26px;max-width:232px;padding:16px;transform:rotate(0);box-shadow:0 25px 50px -12px #0f172a59}.phone-card:before{display:none}.phone-card h3{color:#fff;font-size:1rem}.phone-muted,.phone-top{color:#cbd5e1}.phone-overline{margin-top:18px}.phone-service{background:#ffffff0f;border:1px solid #ffffff0f;margin-top:8px;padding:9px}.phone-service strong{color:#fff;font-size:.68rem}.phone-service small{color:#94a3b8;font-size:.55rem}.phone-status{color:#a7f3d0;margin-top:13px;font-size:.62rem}.landing-process,.platform-overview,.landing-modules{padding-left:16px;padding-right:16px}.landing-process{border-top:1px solid #e2e8f0;padding-top:32px;padding-bottom:36px}.process-heading{margin-bottom:18px}.process-heading h2,.platform-overview-heading h2{font-size:1.55rem;line-height:1.18}.process-heading>p:not(.eyebrow),.platform-overview-heading>p:last-child{font-size:.76rem;line-height:1.5}.process-grid{grid-template-columns:1fr;gap:12px}.process-grid>i{display:none}.process-grid article>strong{font-size:.78rem}.process-card{min-height:110px}.benefit-strip{gap:8px;margin-top:18px}.benefit-strip article{padding:12px}.benefit-strip small{font-size:.64rem}.platform-overview{padding-top:32px;padding-bottom:38px;display:block}.platform-overview-grid{grid-template-columns:1fr;gap:12px;margin-top:22px}.platform-overview-grid article{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px;box-shadow:0 4px 20px -2px #0f172a0d}.platform-overview-grid strong{margin-top:8px;font-size:.88rem}.platform-overview-grid p{margin-bottom:0;font-size:.73rem}.landing-modules{border-radius:24px;margin:16px;padding:28px 16px 30px}.landing-modules .section-heading{margin-bottom:18px}.landing-modules h2{font-size:1.55rem;line-height:1.2}.landing-modules .section-aside{margin-top:8px;font-size:.74rem}.landing-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.landing-module{min-height:178px;padding:13px}.landing-module h3{margin-top:14px;font-size:.72rem}.landing-module p{font-size:.62rem;line-height:1.35}.module-link{margin-top:10px;font-size:.6rem}.landing-banner{gap:18px;padding:34px 16px}.landing-banner h2{font-size:1.65rem;line-height:1.18}.banner-actions p{font-size:.72rem}.landing-footer{padding:22px 16px}.landing-footer-links{gap:8px 12px}.landing-footer-links a{font-size:.66rem}}.phone-card{background:#0b192c;border:0;border-radius:34px;padding:12px;box-shadow:0 25px 50px -12px #0f172a40}.phone-card:before{display:none}.phone-screen{color:#0f172a;background:#fff;border-radius:27px;flex-direction:column;gap:4px;padding:18px;display:flex}.phone-screen .phone-top,.phone-screen .phone-muted{color:#64748b}.phone-screen h3{color:#0f172a}.phone-screen .phone-service{background:#f2f3ff}.phone-screen .phone-service strong{color:#0f172a}.phone-screen .phone-status{color:#047857}.phone-pass{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:14px;align-items:start;gap:3px;margin-top:10px;padding:12px;display:grid}.phone-pass small{color:#dbeafe;font-size:.58rem;font-weight:700}.phone-pass strong{font-size:.67rem}.phone-pass b{font-size:.8rem}.landing-banner{background:#e7f4fb;padding-top:82px;padding-bottom:82px;display:block}.landing-banner-card{background:#fff;border-radius:24px;justify-content:space-between;align-items:center;gap:40px;max-width:1260px;margin:0 auto;padding:48px 60px;display:flex}.landing-banner-card h2{margin-bottom:0}.landing-banner-card .banner-actions{min-width:285px}.landing-footer{color:#d9e2f1;background:#0b192c;grid-template-columns:1.5fr repeat(4,1fr);align-items:start;gap:34px;max-width:none;margin:0;padding:64px max(34px,50vw - 630px) 30px;display:grid}.footer-brand-column{gap:14px;display:grid}.footer-brand-column .brand-lockup{color:#fff}.footer-brand-column .brand-lockup strong span{color:#34d399}.footer-brand-column p{color:#b9c7d9;max-width:280px;margin:0;font-size:.78rem;line-height:1.55}.footer-brand-column small{color:#34d399;background:#16304e;border-radius:999px;width:fit-content;padding:7px 11px;font-size:.66rem}.footer-link-column{align-content:start;gap:10px;display:grid}.footer-link-column strong{color:#fff;margin-bottom:3px;font-size:.85rem}.footer-link-column a,.footer-link-column span{color:#b9c7d9;font-size:.72rem;text-decoration:none}.footer-link-column a:hover{color:#fff}.footer-bottom{color:#9cafc5;border-top:1px solid #ffffff1f;grid-column:1/-1;justify-content:space-between;padding-top:20px;font-size:.7rem;display:flex}@media (width<=900px){.landing-footer{grid-template-columns:repeat(2,1fr)}.footer-brand-column{grid-column:1/-1}.landing-banner-card{border-radius:20px;flex-direction:column;align-items:flex-start;padding:34px 28px}.landing-banner-card .banner-actions{min-width:0}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}@media (width<=620px){.landing-banner{padding:24px 16px}.landing-banner-card{gap:20px;padding:26px 18px}.landing-footer{grid-template-columns:repeat(2,1fr);gap:24px;padding:42px 18px 24px}.footer-brand-column{grid-column:1/-1}.footer-link-column a,.footer-link-column span{font-size:.66rem}.footer-bottom{font-size:.62rem}.phone-card{background:#0b1528;border:4px solid #0f172a;padding:9px}.phone-screen{border-radius:20px;padding:13px}}.landing-nav .brand-lockup small,.module-landing-nav .brand-lockup small{color:#7b8ba0;letter-spacing:.1em;text-transform:uppercase;margin-left:8px;font-size:.58rem;font-weight:800}.module-nav-actions{align-items:center;gap:24px;display:flex}.module-nav-actions .nav-cta{min-height:40px}.module-landing-nav .brand-lockup{text-decoration:none}.module-landing-nav .module-back{white-space:nowrap}@media (width<=620px){.landing-nav .brand-lockup small,.module-landing-nav .brand-lockup small{display:none}.module-landing-nav{gap:12px;padding:16px 18px}.module-nav-actions{gap:10px}.module-nav-actions .nav-cta{padding:7px 10px;font-size:.72rem}.module-landing-nav .module-back{font-size:.7rem}}.booking-history-card:hover,.booking-history-card:focus,.booking-history-card:focus-visible,.booking-history-card:active{color:var(--ca-ink);background:#eef7fd;border-color:#9fc5e2;box-shadow:0 10px 24px #2169b11f}.booking-history-card:hover b,.booking-history-card:focus b,.booking-history-card:focus-visible b,.booking-history-card:active b{color:var(--ca-brand-dark)}.demo-page{color:#0f2038;background:radial-gradient(circle at 88% 0,#dceeff 0,#0000 32rem),#f7faff;min-height:100vh}.demo-nav{justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:24px 48px;display:flex}.demo-nav .brand-lockup{grid-template-rows:auto auto;grid-template-columns:40px auto;column-gap:12px;text-decoration:none;display:grid}.demo-nav .brand-mark{grid-row:1/span 2}.demo-nav .brand-lockup strong{color:#0f172a;grid-column:2;font-family:Plus Jakarta Sans,sans-serif}.demo-nav .brand-lockup small{color:#7b8ba0;letter-spacing:.1em;text-transform:uppercase;grid-column:2;font-size:.58rem;font-weight:800}.demo-layout{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:start;gap:70px;max-width:1240px;margin:0 auto;padding:80px 48px 110px;display:grid}.demo-intro{padding-top:50px}.demo-intro h1{letter-spacing:-.06em;margin:18px 0 24px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(2.8rem,5vw,4.5rem);line-height:1.02}.demo-intro>p:not(.eyebrow){color:#475569;max-width:500px;font-size:1.1rem;line-height:1.6}.demo-benefits{gap:14px;margin-top:34px;display:grid}.demo-benefits span{color:#246d6a;font-size:.9rem;font-weight:700}.demo-form{background:#fff;border:1px solid #dce9f4;border-radius:24px;gap:15px;padding:36px;display:grid;box-shadow:0 22px 55px #1024421c}.demo-form h2{margin:0 0 8px;font-family:Plus Jakarta Sans,sans-serif}.demo-form .form-grid{margin:0}.demo-form textarea{font:inherit;resize:vertical;border:1px solid #829ab1;border-radius:6px;padding:12px}.demo-form .primary-action{margin-top:8px}.demo-form .success{margin:0}@media (width<=800px){.demo-nav{padding:18px 22px}.demo-layout{padding:40px 22px 70px;display:block}.demo-intro{padding-top:0}.demo-intro h1{font-size:2.8rem}.demo-form{margin-top:36px;padding:24px 18px}.demo-form .form-grid{grid-template-columns:1fr}}:root{font-family:Inter,system-ui,sans-serif}.landing-shell{padding-top:80px}.landing-nav{z-index:50;background:#faf8ffeb;width:100%;max-width:none;height:80px;padding:0 max(24px,50vw - 620px);position:fixed;top:0;left:0;right:0;box-shadow:0 1px 8px #0000000a}.landing-nav .brand-lockup strong,.module-landing-nav .brand-lockup strong{color:#0f172a;letter-spacing:-.02em;font-family:Plus Jakarta Sans,sans-serif;font-weight:700}.landing-nav>.brand-lockup,.module-landing-nav>.brand-lockup{grid-template-rows:auto auto;grid-template-columns:40px auto;gap:0 12px;display:grid}.landing-nav>.brand-lockup .brand-mark,.module-landing-nav>.brand-lockup .brand-mark{grid-row:1/span 2}.landing-nav>.brand-lockup strong,.module-landing-nav>.brand-lockup strong{grid-area:1/2}.landing-nav>.brand-lockup small,.module-landing-nav>.brand-lockup small{grid-area:2/2;margin-left:0}.landing-nav-links{gap:24px}.landing-nav-links a{color:#434655;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:600}.landing-nav-actions{align-items:center;gap:8px;display:flex}.nav-link-action{color:#0f172a;background:0 0;border:0;min-height:40px;padding:10px 16px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px}.landing-nav .nav-cta{color:#fff;background:#2563eb;border-color:#2563eb;border-radius:8px;min-height:40px;padding:10px 20px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;text-decoration:none}.landing-profile-mark{color:#fff;background:#004ac6;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-left:8px;font-size:0;display:inline-flex;position:relative}.landing-nav .landing-profile-mark{display:none}.landing-profile-mark:before{content:"";background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;top:7px}.landing-profile-mark:after{content:"";background:#fff;border-radius:9px 9px 4px 4px;width:15px;height:8px;position:absolute;bottom:6px}.landing-hero{gap:56px;max-width:1240px;padding:56px 48px 80px}.hero-copy h1{letter-spacing:-.03em;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(3rem,4.4vw,3.5rem);font-weight:800;line-height:1.14}.hero-copy h1 em{text-underline-offset:8px;-webkit-text-decoration:underline #34d39966;text-decoration:underline #34d39966;text-decoration-thickness:4px}.hero-lead{color:#475569;font-family:Inter,sans-serif;font-size:18px;line-height:28px}.hero-choice{border-radius:12px;box-shadow:0 1px 3px #0f172a14}.phone-card{max-width:340px}.phone-screen h3,.landing-process h2,.platform-overview h2,.landing-modules h2,.landing-banner h2,.module-landing h1,.module-explain h2,.module-bottom-cta h2{font-family:Plus Jakarta Sans,sans-serif}@media (width<=760px){.landing-shell{padding-top:68px}.landing-nav{height:68px;padding:0 18px}.landing-nav-actions .nav-link-action,.landing-nav-actions .landing-profile-mark{display:none}.landing-nav .nav-cta{padding:8px 12px;font-size:12px}.landing-hero{padding:44px 22px 64px}.hero-copy h1{font-size:clamp(2.35rem,12vw,3.2rem);line-height:1.08}}html{text-rendering:optimizelegibility;scroll-padding-bottom:calc(112px + env(safe-area-inset-bottom));font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.45}.landing-shell,.onboarding-shell,.portal-shell,.module-landing{font-size:.98rem}.landing-shell h1,.landing-shell h2,.landing-shell h3,.onboarding-card h1,.portal-header h1,.portal-section h2,.portal-card h2,.portal-card h3,.module-landing h1,.module-landing h2{letter-spacing:-.035em;font-weight:750;line-height:1.08}.portal-header h1{font-size:clamp(2rem,5vw,3.2rem)}.portal-header p:not(.eyebrow){max-width:48rem;font-size:1rem;line-height:1.5}.eyebrow,.step-label,label{line-height:1.35}button,input,select,textarea{font-family:inherit}.onboarding-form input,.onboarding-form select,.portal-card input,.portal-card select,.portal-card textarea{font-size:1rem;line-height:1.35}.onboarding-form input::placeholder,.portal-card input::placeholder,.portal-card textarea::placeholder{color:#71829a;opacity:1}.primary-action,.onboarding-actions button,.portal-card>button,.service-card button{font-weight:750}.portal-section,.portal-card{box-shadow:0 10px 28px #14294d0f}.quick-actions button,.portal-module-list button,.booking-history-card{transition:transform .18s,border-color .18s,box-shadow .18s,background-color .18s}.quick-actions button:hover,.quick-actions button:focus-visible,.portal-module-list button:hover,.portal-module-list button:focus-visible,.booking-history-card:hover{border-color:#b7cce0;box-shadow:0 8px 18px #2364b31a}@media (width<=560px){.portal-shell{font-size:.95rem}.portal-header h1{font-size:clamp(1.85rem,9vw,2.45rem)}.portal-section,.portal-card{border-radius:18px}.portal-section h2,.portal-card h2{font-size:1.45rem}.onboarding-card{padding-left:20px;padding-right:20px}}.portal-module-list{grid-template-columns:repeat(2,minmax(0,1fr))}.citizen-service-card{text-align:left;width:100%;min-height:92px;color:var(--ca-ink);background:var(--ca-surface);border:1px solid var(--ca-line);grid-template-columns:32px minmax(0,1fr) auto;align-content:center;align-items:center;gap:4px 12px;padding:16px 18px;display:grid;position:relative}.citizen-service-card:hover,.citizen-service-card:focus-visible{color:var(--ca-ink);background:var(--ca-brand-soft)}.citizen-service-card strong{padding-right:22px;line-height:1.25}.citizen-service-card small{color:var(--ca-muted);max-width:34ch;font-size:.78rem;line-height:1.35}.citizen-service-card .citizen-service-icon{background:var(--ca-brand-soft);border-radius:var(--ca-radius-md);color:var(--ca-primary);grid-row:span 2;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.citizen-service-card b{position:absolute;top:14px;right:14px}@media (width<=560px){.portal-module-list{grid-template-columns:1fr}.citizen-service-card{min-height:76px;padding:13px 14px}.citizen-service-card small{font-size:.75rem}}.citizen-shell-main{max-width:1120px;margin-inline:auto;padding-inline:40px}.citizen-shell-main>.portal-page{width:100%}.citizen-service-card{grid-template-columns:40px minmax(0,1fr) 24px;align-items:start}.citizen-service-card .citizen-service-icon{grid-row:span 2}.citizen-service-card small{grid-column:2;width:100%;min-width:0;max-width:none;padding-right:8px;display:block}.citizen-service-card b{color:var(--ca-brand);font-size:var(--ca-text-xl);grid-area:1/3/span 2;align-self:center;position:static}.profile-service-link{border:1px solid var(--ca-line);border-radius:var(--ca-radius-lg);background:var(--ca-surface);box-shadow:var(--ca-shadow);justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;padding:18px 20px;display:flex}.profile-service-link div{gap:4px;display:grid}.profile-service-link small{color:var(--ca-muted)}@media (width<=640px){.profile-service-link{flex-direction:column;align-items:stretch}.profile-service-link button{width:100%}}.module-notice{background:var(--ca-surface);border:1px solid var(--ca-line);border-left:4px solid var(--ca-primary);border-radius:var(--ca-radius-md);gap:4px;margin:18px 0;padding:14px 16px;display:grid}.module-notice strong{color:var(--ca-ink)}.module-notice span{color:var(--ca-muted)}.submission-card{padding:0;display:block;overflow:hidden}.submission-summary{background:var(--ca-surface);color:var(--ca-ink);text-align:left;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;padding:16px 18px;display:grid}.submission-summary:hover,.submission-summary:focus-visible{background:var(--ca-surface);color:var(--ca-ink);transform:none}.submission-summary-copy{gap:4px;min-width:0;display:grid}.submission-summary-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.submission-details-link{color:var(--ca-primary);font-size:var(--ca-text-sm);white-space:nowrap;font-weight:700}@media (width<=560px){.submission-summary{grid-template-columns:minmax(0,1fr) auto}.submission-details-link{grid-area:1/2}}.stitch-home-complete,.stitch-home-section{width:100%}.messages-page>.portal-card,.messages-page .stitch-inner-card{width:100%;max-width:none}.danger-link{background:var(--ca-surface);border:1px solid var(--ca-danger);color:var(--ca-danger);border-radius:var(--ca-radius-sm);padding:8px 12px}.danger-link:hover,.danger-link:focus-visible{background:var(--ca-danger-soft);color:var(--ca-danger)}@media (width>=641px) and (width<=1023px){.citizen-shell-main{padding-inline:32px}.stitch-home-stats,.stitch-next-access-grid,.stitch-dog-list,.stitch-request-status,.portal-module-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.citizen-shell-main{padding-inline:20px}}.service-card{max-width:860px;margin:0 auto}.service-card>h3{margin-bottom:8px;font-size:clamp(1.7rem,4vw,2.35rem)}.service-card>h4{border-top:1px solid var(--ca-line);align-items:center;gap:10px;margin:28px 0 12px;padding-top:24px;display:flex}.service-card>h4:before{background:var(--ca-brand);color:#fff;content:"1";border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-size:.8rem;display:inline-flex}.booking-intro{box-shadow:none;margin:20px 0 18px}.booking-intro strong{color:#1f6e5d;font-size:1rem}.booking-intro span{color:#466477}.resource-list{gap:12px;margin:0}.resource-choice{align-content:center;min-height:92px;padding:16px;position:relative}.resource-choice strong{padding-right:20px;font-size:1rem}.resource-choice small{color:#347a70;font-weight:700}.resource-choice.selected:after{color:var(--ca-brand);content:"✓";font-size:1.1rem;font-weight:800;position:absolute;top:14px;right:14px}.area-detail{margin:16px 0 8px}.booking-step{border-top:1px solid var(--ca-line);margin:26px 0 12px;padding-top:22px}.booking-step .step-number{font-size:0}.booking-step .step-number:after{content:"2";font-size:.8rem}.booking-step strong{font-size:1rem;display:block}.booking-step small{color:var(--ca-muted)}.service-card>.form-grid{border:1px solid var(--ca-line);background:#f8fbfe;border-radius:14px;margin:0;padding:14px}.service-card>.form-grid label{color:var(--ca-ink)}.service-card>button:not(.resource-choice){width:100%;min-height:52px;margin-top:18px}.booking-summary{border-left:4px solid var(--ca-brand);margin:18px 0 0}.booking-summary .step-number{font-size:0}.booking-summary .step-number:after{content:"3";font-size:.8rem}.booking-summary strong{font-size:1rem}.booking-summary p{margin-top:6px}.booking-summary span:not(.step-number){line-height:1.45;display:block}.service-card>.success,.service-card>.error{margin-top:12px}@media (width<=560px){.service-card>h4{margin-top:24px;padding-top:20px}.resource-choice{min-height:84px}.area-detail{margin-top:14px}.dog-booking-select{margin:14px 0 0}.service-card>.form-grid{gap:12px;padding:12px}}.portal-shell,.portal-card,.portal-card form,.portal-card label{min-width:0;max-width:100%}.portal-card input,.portal-card select,.portal-card textarea{width:100%;min-width:0;max-width:100%}.profile-photo-row{flex-wrap:wrap;align-items:flex-start;min-width:0}.profile-photo{aspect-ratio:1;object-fit:cover;flex:0 0 72px;width:72px;height:72px;overflow:hidden}.photo-upload{flex:190px;min-width:0}.photo-upload input[type=file],.dog-edit-form input[type=file],.dog-form input[type=file]{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;padding:8px;font-size:.78rem;display:block;overflow:hidden}.photo-preview{aspect-ratio:1;object-fit:cover;width:90px;height:90px;display:block}@media (width<=560px){.portal-card{overflow:hidden}.portal-card form{grid-template-columns:minmax(0,1fr)}.profile-photo-row{flex-direction:column;gap:10px}.profile-photo{flex-basis:76px;width:76px;height:76px}.photo-upload{width:100%}.photo-upload input[type=file],.dog-edit-form input[type=file],.dog-form input[type=file]{width:100%;max-width:100%}}.stitch-citizen-home{background:#faf8ff;padding:24px 0 120px}.citizen-topbar{justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto 28px;display:flex}.citizen-municipality{color:#2563eb;background:#dbe8ff;border:0;border-radius:999px;align-items:center;gap:10px;min-height:48px;padding:8px 18px;display:flex}.citizen-municipality span{font-size:1rem}.citizen-municipality b{margin-left:8px}.citizen-top-actions{align-items:center;gap:12px;display:flex}.citizen-top-actions>button{color:#475569;background:0 0;border:0;min-height:44px;padding:8px}.citizen-avatar{border-radius:50%;width:46px;height:46px;font-weight:800;color:#fff!important;background:#004ac6!important}.citizen-home-heading{max-width:1240px;margin:0 auto 26px;position:relative}.citizen-tenant-badge{color:#2563eb;background:#e0edff;border-radius:999px;padding:10px 16px;font-weight:800;display:inline-flex}.citizen-identity-badge{color:#047857;float:right;margin-top:10px;font-weight:700}.citizen-home-heading h1{letter-spacing:-.05em;margin:22px 0 12px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(2.3rem,5vw,3.7rem);line-height:1.05}.citizen-home-heading p{color:#475569;max-width:780px;font-size:1.1rem;line-height:1.5}.citizen-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1240px;margin:18px auto 28px;display:grid}.citizen-mini-stats article{background:#fff;border-radius:20px;gap:5px;padding:20px;display:grid;box-shadow:0 3px 12px #0f172a0f}.citizen-mini-stats strong{font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem}.citizen-mini-stats span{color:#475569}.citizen-active-pass{background:#fff;border-radius:24px;max-width:1240px;margin:0 auto 28px;padding:26px 30px;box-shadow:0 12px 28px #0f172a1a}.pass-head{color:#2563eb;letter-spacing:.04em;justify-content:space-between;align-items:center;display:flex}.pass-head b{color:#047857;background:#ecfdf5;border-radius:999px;padding:8px 14px}.citizen-active-pass h2{margin:22px 0 8px;font-family:Plus Jakarta Sans,sans-serif;font-size:2rem}.citizen-active-pass p{color:#475569;font-size:1rem}.pass-pin{background:#f8fafc;border-radius:16px;align-items:center;gap:18px;margin:18px 0;padding:16px 22px;display:flex}.pass-pin small{color:#475569}.pass-pin strong{letter-spacing:.1em;font-family:Plus Jakarta Sans,sans-serif;font-size:1.7rem}.citizen-active-pass button{color:#2563eb;background:0 0;border:0;padding:0;font-size:1rem}.citizen-quick-section,.citizen-modules-section,.citizen-urp{max-width:1240px;margin:0 auto 30px}.citizen-section-title{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.citizen-section-title h2{margin:0;font-family:Plus Jakarta Sans,sans-serif;font-size:2rem}.citizen-section-title span{color:#475569}.citizen-section-title>b{color:#047857;background:#ecfdf5;border-radius:999px;padding:9px 14px}.citizen-quick-actions{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.citizen-quick-actions button{color:#0f2038;text-align:left;background:#fff;border:0;border-radius:20px;gap:10px;min-height:150px;padding:22px;display:grid;box-shadow:0 4px 12px #0f172a0f}.citizen-quick-actions button span{color:#2563eb;background:#dbe8ff;border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.citizen-quick-actions button.featured{color:#fff;background:#2563eb}.citizen-quick-actions button.featured span{color:#fff;background:#ffffff2e}.citizen-quick-actions strong{font-family:Plus Jakarta Sans,sans-serif;font-size:1.1rem}.citizen-module-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.citizen-module-cards article{background:#fff;border-radius:22px;padding:24px;position:relative;box-shadow:0 4px 15px #0f172a0f}.citizen-module-icon{color:#2563eb;background:#e0edff;border-radius:14px;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:16px;font-size:1.6rem;display:flex}.citizen-module-cards h3{margin:0 0 8px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.35rem}.citizen-module-cards small{color:#00a878;letter-spacing:.04em;font-weight:800}.citizen-module-cards p{color:#475569;min-height:72px;line-height:1.5}.citizen-module-cards button{color:#fff;float:right;background:#2563eb;border:0;border-radius:10px;min-height:44px;padding:10px 16px}.citizen-urp{background:#e7f4fb;border-radius:22px;padding:26px}.citizen-urp strong{font-family:Plus Jakarta Sans,sans-serif;font-size:1.2rem}.citizen-urp p{color:#475569}.citizen-urp button{color:#2563eb;background:#fff;border:0}.citizen-topbar>button:hover,.citizen-topbar>button:focus-visible{color:#174b83;background:#eef4ff;transform:none}.citizen-municipality:hover,.citizen-municipality:focus-visible{color:#174b83;background:#cfe1ff;transform:none}.citizen-quick-actions button:not(.featured):hover,.citizen-quick-actions button:not(.featured):focus-visible{color:#0f2038;background:#f3f7ff;transform:translateY(-2px);box-shadow:0 12px 26px #2563eb24}.citizen-quick-actions button.featured:hover,.citizen-quick-actions button.featured:focus-visible{color:#fff;background:#1d4ed8;transform:translateY(-2px);box-shadow:0 12px 26px #2563eb40}.citizen-module-cards article button:hover,.citizen-module-cards article button:focus-visible{color:#fff;background:#1d4ed8;transform:translateY(-1px);box-shadow:0 8px 18px #2563eb33}.citizen-urp button:hover,.citizen-urp button:focus-visible{color:#174b83;background:#edf4ff;transform:none}.stitch-home-complete{background:#faf8ff;padding-top:20px}.stitch-home-brand{color:#0f2038;align-items:center;gap:9px;margin-right:auto;display:flex}.stitch-home-brand .brand-mark{width:32px;height:32px}.stitch-home-welcome{justify-content:space-between;align-items:flex-end;max-width:1240px;margin:24px auto;display:flex}.stitch-home-welcome h1{letter-spacing:-.055em;margin:10px 0;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(2.4rem,5vw,4rem)}.stitch-home-welcome h1 span{font-size:.7em}.stitch-home-welcome>div>p:not(.eyebrow){color:#52617d;font-size:1.05rem}.stitch-home-stats{grid-template-columns:repeat(3,1fr);gap:16px;max-width:1240px;margin:0 auto 24px;display:grid}.stitch-home-stats article{background:#fff;border:1px solid #edf0f8;border-radius:18px;gap:4px;padding:18px 20px;display:grid}.stitch-home-stats strong{color:#0f2038;font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem}.stitch-home-stats span{color:#283044;font-weight:700}.stitch-home-stats small{color:#71829a}.stitch-next-access,.stitch-home-section,.stitch-home-urp{max-width:1240px;margin:0 auto 26px}.stitch-next-access{color:#fff;background:linear-gradient(120deg,#102b55,#1d538c);border-radius:22px;padding:24px 28px}.stitch-section-kicker{color:#b9dcff;letter-spacing:.08em;font-size:.73rem;font-weight:800}.stitch-section-kicker b{color:#047857;float:right;letter-spacing:0;background:#d9f5e9;border-radius:999px;padding:6px 10px}.stitch-next-access-grid{grid-template-columns:1fr 260px;align-items:center;gap:24px;margin-top:20px;display:grid}.stitch-next-access h2{margin:0 0 6px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem}.stitch-next-access p{color:#d2e1f1}.stitch-next-access button{color:#fff;background:0 0;border:0;padding:0;font-weight:800}.stitch-pin-panel{background:#ffffff1f;border:1px solid #ffffff2e;border-radius:16px;gap:6px;padding:16px;display:grid}.stitch-pin-panel small{color:#b9dcff;font-size:.68rem}.stitch-pin-panel strong{letter-spacing:.12em;font-size:1.55rem}.stitch-pin-panel span{color:#d2e1f1;font-size:.75rem}.stitch-home-section-head{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.stitch-home-section-head h2{margin:4px 0;font-family:Plus Jakarta Sans,sans-serif;font-size:1.65rem}.stitch-home-section-head p:not(.eyebrow){color:#52617d;margin:0}.stitch-home-section-head button{flex:none}.stitch-map-card,.stitch-request-status{background:#fff;border:1px solid #edf0f8;border-radius:20px;overflow:hidden}.stitch-map-art{background:#e7f3f3;height:250px;position:relative;overflow:hidden}.map-road{background:#fff;border:10px solid #d2e5e4;border-radius:50%;width:32%;height:180%;display:block;position:absolute;transform:rotate(22deg)}.map-road-one{top:-40%;left:25%}.map-road-two{top:-30%;left:62%;transform:rotate(-35deg)}.map-pin{color:#fff;z-index:2;background:#2563eb;border:4px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;box-shadow:0 5px 13px #14294d30}.map-pin small{color:#17233d;white-space:nowrap;background:#fff;border-radius:6px;padding:5px 7px;font-size:.68rem;position:absolute;left:24px}.map-pin-two{background:#10b981;top:35%;left:58%}.map-pin-main{top:48%;left:34%}.map-pin-three{background:#8b5cf6;top:62%;left:73%}.stitch-map-legend{flex-wrap:wrap;align-items:center;gap:18px;padding:14px 18px;display:flex}.stitch-map-legend span{color:#52617d;font-size:.8rem}.stitch-map-legend i{border-radius:50%;width:9px;height:9px;margin-right:5px;display:inline-block}.legend-blue{background:#2563eb}.legend-green{background:#10b981}.stitch-map-legend button{color:#2563eb;background:0 0;border:0;margin-left:auto;font-weight:800}.stitch-request-status{grid-template-columns:210px 1fr;padding:20px;display:grid}.stitch-status-summary{background:#edf4ff;border-radius:14px;align-content:center;gap:5px;padding:18px;display:grid}.stitch-status-summary strong{font-size:2.3rem}.stitch-status-summary span{font-weight:800}.stitch-status-summary small{color:#52617d;line-height:1.35}.stitch-status-list{gap:8px;padding-left:18px;display:grid}.stitch-status-list button{color:#17233d;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0f8;align-items:center;gap:10px;padding:10px 4px;display:flex}.stitch-status-list button div{gap:3px;min-width:0;display:grid}.stitch-status-list button small{color:#52617d;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-dot{color:#10b981}.stitch-status-list button b{color:#2563eb;margin-left:auto}.stitch-dog-list{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stitch-dog-list article{background:#fff;border:1px solid #edf0f8;border-radius:16px;align-items:center;gap:12px;padding:14px;display:flex}.stitch-dog-photo{background:#fff2df;border-radius:50%;flex:0 0 48px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.stitch-dog-photo img{object-fit:cover;width:100%;height:100%}.stitch-dog-list article div:nth-child(2){gap:4px;display:grid}.stitch-dog-list article span{color:#52617d;font-size:.82rem}.stitch-dog-list article b{color:#2563eb;margin-left:auto}.stitch-empty-dogs{background:#fff;border:1px dashed #bfd7ff;border-radius:16px;align-items:center;gap:12px;padding:18px;display:flex}.stitch-empty-dogs>span{font-size:2rem}.stitch-empty-dogs div{gap:4px;display:grid}.stitch-empty-dogs small{color:#52617d}.stitch-empty-dogs button,.stitch-home-notices button{color:#fff;background:#2563eb;border:0;border-radius:10px;margin-left:auto;padding:10px 14px;font-weight:800}.stitch-home-notices{background:#e7f4fb;border-radius:20px;justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto 26px;padding:22px 26px;display:flex}.stitch-home-notices h2{margin:5px 0;font-family:Plus Jakarta Sans,sans-serif}.stitch-home-notices p:not(.eyebrow){color:#52617d;margin:0}.stitch-home-urp{justify-content:space-between;align-items:center;display:flex}@media (width<=760px){.stitch-home-complete{padding:14px 16px 110px}.stitch-home-brand strong{display:none}.stitch-home-welcome{align-items:flex-start;display:block}.stitch-home-welcome h1{font-size:2.5rem}.stitch-home-welcome .citizen-identity-badge{float:none;margin-top:10px;display:inline-block}.stitch-home-stats{gap:8px}.stitch-home-stats article{padding:13px 11px}.stitch-home-stats strong{font-size:1.35rem}.stitch-home-stats span{font-size:.78rem}.stitch-home-stats small{display:none}.stitch-next-access{padding:20px}.stitch-next-access-grid{grid-template-columns:1fr}.stitch-pin-panel{max-width:280px}.stitch-home-section-head{flex-direction:column;align-items:flex-start;gap:10px}.stitch-map-art{height:210px}.stitch-request-status{grid-template-columns:1fr}.stitch-status-list{padding-top:12px;padding-left:0}.stitch-dog-list{grid-template-columns:1fr}.stitch-home-notices,.stitch-home-urp{flex-direction:column;align-items:flex-start;gap:16px}.stitch-home-notices button,.stitch-home-urp button{margin-left:0}.stitch-citizen-home{padding:18px 0 110px}.citizen-topbar{margin-bottom:24px}.citizen-municipality{min-height:44px;padding:7px 14px}.citizen-municipality span{font-size:.82rem}.citizen-home-heading h1{font-size:2.55rem}.citizen-home-heading p{font-size:1rem}.citizen-identity-badge{font-size:.78rem}.citizen-mini-stats{gap:12px}.citizen-mini-stats article{padding:16px}.citizen-active-pass{padding:20px}.citizen-active-pass h2{font-size:1.55rem}.pass-pin{flex-direction:column;align-items:flex-start;gap:5px}.pass-pin strong{font-size:1.45rem}.citizen-section-title h2{font-size:1.55rem}.citizen-section-title span{font-size:.82rem}.citizen-quick-actions{gap:10px}.citizen-quick-actions button{min-height:140px;padding:14px}.citizen-quick-actions strong{font-size:.9rem}.citizen-module-cards{grid-template-columns:1fr}.citizen-module-cards article{padding:20px}}.portal-shell:not(.stitch-citizen-home){color:#172b4d;background:#faf8ff;padding-top:28px}.portal-shell:not(.stitch-citizen-home) .portal-header{background:0 0;align-items:center;margin-bottom:26px}.portal-shell:not(.stitch-citizen-home) .portal-header .eyebrow{color:#2563eb;letter-spacing:.04em;background:#dbe8ff;border-radius:999px;padding:9px 14px;font-weight:800;display:inline-flex}.portal-shell:not(.stitch-citizen-home) .portal-header h1{margin-top:18px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(2.1rem,5vw,3.2rem)}.portal-shell:not(.stitch-citizen-home) .portal-header p:not(.eyebrow){color:#475569;font-size:1.05rem}.portal-shell:not(.stitch-citizen-home) .portal-card{border:0;border-radius:24px;margin-top:18px;padding:28px;box-shadow:0 10px 28px #14294d12}.portal-shell:not(.stitch-citizen-home) .portal-card>h2{font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.55rem,4vw,2.25rem)}.portal-shell:not(.stitch-citizen-home) .booking-history-card,.portal-shell:not(.stitch-citizen-home) .message-list article,.portal-shell:not(.stitch-citizen-home) .simple-row{background:#fff;border:1px solid #dfe9f4;border-radius:18px;padding:20px}.portal-shell:not(.stitch-citizen-home) .booking-history-card strong,.portal-shell:not(.stitch-citizen-home) .message-list strong{font-family:Plus Jakarta Sans,sans-serif;font-size:1.05rem}.portal-shell:not(.stitch-citizen-home) .booking-history-card b{color:#2563eb;font-weight:800}.portal-shell:not(.stitch-citizen-home) .service-card{border:1px solid #dfe9f4;border-radius:22px;box-shadow:0 8px 24px #14294d0f}.portal-shell:not(.stitch-citizen-home) .profile-chip{background:#004ac6;width:46px;height:46px}@media (width<=760px){.portal-shell:not(.stitch-citizen-home){padding:18px 14px 110px}.portal-shell:not(.stitch-citizen-home) .portal-header{margin-bottom:20px}.portal-shell:not(.stitch-citizen-home) .portal-header h1{margin-top:14px;font-size:2.35rem}.portal-shell:not(.stitch-citizen-home) .portal-card{border-radius:20px;padding:20px 16px}.portal-shell:not(.stitch-citizen-home) .booking-history-card{padding:16px}}.stitch-inner-card{max-width:1240px}.stitch-page-title{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.stitch-page-title h2{margin:14px 0 8px;font-family:Plus Jakarta Sans,sans-serif}.stitch-page-title span:not(.stitch-step-badge):not(.verified-badge){color:#52617d;max-width:700px;line-height:1.5;display:block}.stitch-step-badge,.verified-badge{color:#047857;white-space:nowrap;background:#e5f8ef;border-radius:999px;padding:10px 14px;font-size:.76rem;font-weight:800}.stitch-filter-row{border-bottom:1px solid #e6edf5;gap:8px;margin:0 0 22px;padding-bottom:12px;display:flex;overflow-x:auto}.stitch-filter-row button{color:#52617d;white-space:nowrap;background:0 0;border:0;border-radius:999px;min-height:40px;padding:8px 14px}.stitch-filter-row button.active{color:#2563eb;background:#e4edff;font-weight:800}.stitch-filter-row b{margin-left:4px}.stitch-message-list{gap:14px;display:grid}.stitch-message-card{cursor:pointer;background:#fff;border:1px solid #e2e8f1;border-radius:18px;align-items:flex-start;gap:15px;padding:18px;display:flex}.stitch-message-card.unread{border-left:4px solid #2563eb}.stitch-message-card h3{margin:7px 0;font-family:Plus Jakarta Sans,sans-serif;font-size:1.06rem}.stitch-message-card p,.stitch-message-card small{color:#52617d;line-height:1.5}.stitch-message-card button{color:#2563eb;background:0 0;border:0;padding:0;font-weight:800}.message-card-icon{color:#2563eb;background:#dbe8ff;border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;height:44px;font-size:1.2rem;display:flex}.stitch-notification-settings{background:#e7f4fb;border-radius:18px;justify-content:space-between;align-items:center;margin-top:24px;padding:18px;display:flex}.stitch-notification-settings span{color:#52617d;margin-top:5px;display:block}.reports-page h3{margin:26px 0 14px;font-family:Plus Jakarta Sans,sans-serif}.report-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-category-grid button{text-align:left;background:#fff;border:1px solid #dfe9f4;border-radius:16px;gap:6px;min-height:116px;padding:16px;display:grid}.report-category-grid button.selected{background:#edf4ff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb22}.report-category-grid button>span{color:#2563eb;background:#e2edff;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.report-category-grid small{color:#52617d}.report-form-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.primary-action{color:#fff;background:#2563eb;border:0;border-radius:11px;min-height:46px;padding:10px 18px;font-weight:800}.profile-page .verified-badge{margin-top:8px}.citizen-profile-hero{background:#f4f7ff;border-radius:20px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:22px;padding:20px;display:grid}.citizen-profile-hero .profile-avatar{color:#fff;object-fit:cover;background:#2563eb;border-radius:50%;flex:0 0 72px;justify-content:center;align-items:center;width:72px;height:72px;font-size:2rem;display:flex}.citizen-profile-hero h3{margin:0 0 5px;font-family:Plus Jakarta Sans,sans-serif}.citizen-profile-hero p,.citizen-profile-hero small{color:#52617d;margin:4px 0;display:block}.citizen-profile-hero .photo-upload-control{justify-self:end}.citizen-profile-hero .photo-upload-control>label{width:auto;min-height:44px;font-size:15px}.profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.profile-form-grid .consent-row,.profile-form-grid>button{grid-column:1/-1}.stitch-booking-heading{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.stitch-booking-heading h2{margin:14px 0 8px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.8rem,4vw,2.7rem)}.stitch-booking-heading p:not(.eyebrow){color:#52617d;max-width:700px;margin:0;line-height:1.5}.booking-category-tabs{gap:10px;margin-bottom:16px;padding-bottom:5px;display:flex;overflow-x:auto}.booking-category-tabs button{color:#52617d;white-space:nowrap;background:#fff;border:1px solid #dfe9f4;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:9px 15px;display:flex}.booking-category-tabs button span{font-size:1.05rem}.booking-category-tabs button.active{color:#fff;background:#2563eb;border-color:#2563eb;font-weight:800}.resource-thumb,.resource-thumb-placeholder{object-fit:cover;border-radius:13px;flex:0 0 76px;width:76px;height:76px}.resource-thumb-placeholder{color:#2563eb;background:#e5efff;justify-content:center;align-items:center;font-size:1.7rem;display:flex}.resource-choice-copy{gap:5px;min-width:0;display:grid}.resource-choice-copy>span{color:#52617d;font-size:.86rem}.resource-selected-mark{color:#2563eb;align-self:flex-start;margin-left:auto}.area-photo-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:-2px 0 18px;display:grid}.area-photo-gallery img{aspect-ratio:16/9;object-fit:cover;border-radius:16px;width:100%;height:100%;display:block}.reports-page .report-category-grid button{color:#17233d;justify-self:stretch;width:100%}.reports-page .report-category-grid button strong{color:#17233d;font-size:1rem;line-height:1.2}.reports-page .report-category-grid button small{color:#52617d;font-size:.86rem;line-height:1.35}.reports-page .report-category-grid button.selected{color:#2563eb;background:#dbeafe}.reports-page .report-category-grid button.selected strong{color:#2563eb}.reports-page .report-category-grid button.selected small{color:#415574}.reports-page .report-category-grid button>span{flex:0 0 32px}.stitch-booking-heading{border-bottom:1px solid #e7ebf3;align-items:flex-start;padding-bottom:22px}.stitch-booking-heading h2{letter-spacing:-.045em;font-size:clamp(2rem,4vw,3rem)}@media (width<=760px){.stitch-booking-heading h2{font-size:2.05rem}.stitch-booking-heading{display:block}.stitch-booking-heading .verified-badge{margin-top:14px;display:inline-flex}.area-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.stitch-page-title{display:block}.stitch-page-title .stitch-step-badge,.stitch-page-title .verified-badge{margin-top:14px;display:inline-flex}.report-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-category-grid button{min-height:104px;padding:12px}.citizen-profile-hero{grid-template-columns:64px minmax(0,1fr);align-items:start}.citizen-profile-hero .photo-upload-control{grid-column:1/-1;justify-self:start}.profile-form-grid{grid-template-columns:1fr}.profile-form-grid .consent-row,.profile-form-grid>button{grid-column:auto}}.stitch-resource-card:hover,.stitch-resource-card:focus-visible{color:#17233d!important;background:#fff!important;border-color:#9fc2ee!important;transform:translateY(-2px)!important;box-shadow:0 12px 28px #2563eb1f!important}.stitch-resource-card:hover .stitch-resource-content h3,.stitch-resource-card:focus-visible .stitch-resource-content h3{color:#17233d!important}.stitch-resource-card:hover .stitch-resource-content>strong,.stitch-resource-card:focus-visible .stitch-resource-content>strong{color:#2563eb!important}.stitch-resource-card:hover .stitch-resource-image em,.stitch-resource-card:focus-visible .stitch-resource-image em{color:#2563eb!important;background:#fff!important}.stitch-home-complete button:hover,.stitch-home-complete button:focus-visible{transform:translateY(-1px)}.stitch-booking-experience:has(.stitch-booking-thankyou) .stitch-confirm-step{display:none}.stitch-booking-thankyou{text-align:center;background:linear-gradient(145deg,#f5fbf8 0%,#fff 58%);border:1px solid #cdeee1;border-radius:24px;max-width:760px;margin:24px auto 0;padding:clamp(28px,5vw,54px);box-shadow:0 18px 42px #196e4e1a}.thankyou-check{color:#fff;background:#18a879;border:8px solid #d8f5e9;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin:0 auto 18px;font-size:2rem;font-weight:900;display:flex}.stitch-booking-thankyou h2{color:#17233d;letter-spacing:-.04em;margin:8px 0 10px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.8rem,4vw,2.7rem)}.thankyou-lead{color:#52617d;max-width:540px;margin:0 auto 22px;line-height:1.55}.thankyou-summary{text-align:left;background:#fff;border:1px solid #dfe9f4;border-radius:16px;gap:7px;max-width:540px;margin:0 auto 16px;padding:17px 20px;display:grid}.thankyou-summary strong{color:#17233d;font-family:Plus Jakarta Sans,sans-serif;font-size:1.1rem}.thankyou-summary span{color:#52617d}.thankyou-pin{color:#fff;background:#172f57;border-radius:18px;gap:8px;max-width:540px;margin:0 auto 16px;padding:22px;display:grid}.thankyou-pin small{color:#b9d4f5;letter-spacing:.1em;font-size:.72rem;font-weight:800}.thankyou-pin strong{color:#fff;letter-spacing:.14em;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(2rem,8vw,3.2rem);line-height:1.1}.thankyou-pin span{color:#d9e7f7;line-height:1.4}.thankyou-pin em{color:#b9d4f5;font-size:.82rem;font-style:normal}.thankyou-no-pin{text-align:left;background:#fff8e8;border:1px solid #f2d899;border-radius:16px;gap:6px;max-width:540px;margin:0 auto 16px;padding:16px 20px;display:grid}.thankyou-no-pin strong{color:#77520c}.thankyou-no-pin span{color:#765f2b;line-height:1.4}.thankyou-reference{color:#52617d;margin:16px 0 22px;font-size:.88rem}.thankyou-reference strong{color:#17233d}.thankyou-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.thankyou-actions button{margin:0}@media (width<=760px){.stitch-booking-thankyou{border-radius:20px;margin-top:16px;padding:28px 18px}.thankyou-actions{display:grid}.thankyou-actions button{width:100%}}@media (width>=621px) and (width<=900px){.mobile-menu-button{min-width:44px;min-height:44px;display:inline-flex}.mobile-landing-drawer{display:grid}}.portal-shell:has(.stitch-booking-experience)>.portal-header{z-index:4;background:#f6f8fb}@media (width>=621px) and (width<=900px){.landing-nav{position:relative}.landing-nav-links,.landing-nav-actions .nav-link-action{display:none}.mobile-menu-button{min-width:44px;min-height:44px;display:inline-flex}.mobile-landing-drawer{display:grid}}.citizen-home-page,.citizen-services-page,.citizen-service-page{width:100%;color:var(--ca-ink)}.citizen-home-welcome{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.citizen-home-welcome h1{letter-spacing:-.05em;margin:.35rem 0;font-size:clamp(2rem,4vw,3.25rem)}.citizen-home-welcome>div>p:not(.eyebrow){color:var(--ca-muted);font-size:var(--ca-text-lg)}.citizen-home-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:28px;display:grid}.citizen-home-featured,.citizen-home-side{align-content:start;gap:24px;display:grid}.citizen-home-services,.citizen-home-notices,.citizen-empty-card,.citizen-feature-card{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-xl);box-shadow:var(--ca-shadow-sm);padding:22px}.citizen-section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.citizen-section-heading h2{font-size:var(--ca-text-3xl);letter-spacing:-.04em;margin:4px 0}.citizen-feature-card{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.citizen-feature-card-dark{background:var(--ca-brand-dark);color:var(--ca-on-brand);border-color:var(--ca-brand-dark)}.citizen-feature-card-dark p,.citizen-feature-card-dark span{color:#d9e9fa}.citizen-feature-card h3{font-size:var(--ca-text-xl);margin:10px 0 4px}.citizen-feature-card p{color:var(--ca-muted);margin:0}.citizen-feature-card-light>div{flex:1}.citizen-empty-card{align-items:center;gap:16px;display:flex}.citizen-empty-card h3{margin:0 0 4px}.citizen-empty-card p{color:var(--ca-muted);margin:0}.citizen-empty-card .primary-action{margin-left:auto}.citizen-mini-services{gap:8px;display:grid}.citizen-mini-services button,.citizen-notice{border:1px solid var(--ca-line);border-radius:var(--ca-radius-md);background:var(--ca-surface);width:100%;min-height:48px;color:var(--ca-ink);text-align:left;align-items:center;gap:12px;padding:12px 14px;display:flex}.citizen-mini-services button span,.citizen-notice span{flex:1}.citizen-mini-services button:hover,.citizen-mini-services button:focus-visible,.citizen-notice:hover,.citizen-notice:focus-visible{background:var(--ca-brand-soft);border-color:var(--ca-brand);color:var(--ca-ink)}.citizen-notice small{color:var(--ca-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;display:block;overflow:hidden}.citizen-notice{border:0;border-bottom:1px solid var(--ca-line);border-radius:0}.citizen-search{gap:8px;margin:22px 0;display:grid}.citizen-search span{font-weight:700}.citizen-search input{border:1px solid var(--ca-line-strong);border-radius:var(--ca-radius-md);width:100%;font:inherit;color:var(--ca-ink);background:var(--ca-surface);padding:14px 16px}.citizen-filter-pills{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.citizen-filter-pills button{border:1px solid var(--ca-line-strong);border-radius:var(--ca-radius-pill);background:var(--ca-surface);min-height:44px;color:var(--ca-muted);padding:10px 16px}.citizen-filter-pills button[aria-pressed=true]{background:var(--ca-brand);border-color:var(--ca-brand);color:var(--ca-on-brand)}.citizen-service-group{margin:28px 0}.citizen-service-group h2{font-size:var(--ca-text-2xl);margin-bottom:14px}.citizen-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.citizen-service-card-v2{border:1px solid var(--ca-line);border-radius:var(--ca-radius-xl);background:var(--ca-surface);box-shadow:var(--ca-shadow-sm);grid-template-columns:auto 1fr;gap:12px;padding:20px;display:grid}.citizen-service-card-v2:hover{border-color:var(--ca-brand);box-shadow:var(--ca-shadow);transform:translateY(-2px)}.citizen-service-card-icon{border-radius:var(--ca-radius-md);background:var(--ca-brand-soft);width:44px;height:44px;color:var(--ca-brand);place-items:center;display:grid}.citizen-service-card-v2 h3{margin:2px 0 6px}.citizen-service-card-v2 p{color:var(--ca-muted);margin:0;line-height:1.45}.citizen-service-theme{font-size:var(--ca-text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.citizen-service-card-v2>button{color:var(--ca-brand);background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:8px 0;font-weight:800}.citizen-services-note{border-radius:var(--ca-radius-md);background:var(--ca-brand-soft);color:var(--ca-muted);align-items:center;gap:10px;margin-top:32px;padding:16px;display:flex}.citizen-back-link{color:var(--ca-brand);background:0 0;border:0;align-items:center;gap:8px;margin-bottom:18px;padding:8px 0;font-weight:800;display:inline-flex}.citizen-service-layout{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:28px;display:grid}.citizen-service-hero{border:1px solid var(--ca-line);border-radius:var(--ca-radius-xl);background:var(--ca-surface);margin-bottom:20px;padding:24px}.citizen-service-hero-icon{border-radius:var(--ca-radius-lg);background:var(--ca-brand-soft);width:56px;height:56px;color:var(--ca-brand);place-items:center;margin-bottom:16px;display:grid}.citizen-service-hero h1{margin:4px 0 8px;font-size:clamp(2rem,4vw,3rem)}.citizen-service-hero>p:not(.eyebrow){color:var(--ca-muted);font-size:var(--ca-text-lg);max-width:60ch}.citizen-service-sidebar{align-content:start;gap:16px;display:grid}.citizen-service-sidebar section{border:1px solid var(--ca-line);border-radius:var(--ca-radius-xl);background:var(--ca-surface);box-shadow:var(--ca-shadow-sm);padding:20px}.citizen-service-sidebar h2{font-size:var(--ca-text-xl);margin:0 0 12px}.citizen-service-sidebar section>button:not(.link-button){border:0;border-bottom:1px solid var(--ca-line);text-align:left;width:100%;color:var(--ca-ink);background:0 0;align-items:center;gap:8px;padding:12px 0;display:flex}.citizen-service-sidebar section>button span{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.citizen-service-sidebar section>button small{color:var(--ca-muted)}@media (width<=1023px){.citizen-home-grid{grid-template-columns:minmax(0,1fr);width:100%}.citizen-home-grid>*,.citizen-home-featured,.citizen-home-side,.citizen-home-services,.citizen-home-notices,.citizen-feature-card{width:100%}.citizen-service-layout{grid-template-columns:1fr}.citizen-service-grid,.citizen-home-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=639px){.citizen-home-welcome{display:block}.citizen-home-welcome .citizen-identity-badge{margin-top:12px;display:inline-flex}.citizen-home-grid,.citizen-home-side{grid-template-columns:1fr}.citizen-feature-card,.citizen-empty-card{display:grid}.citizen-empty-card .primary-action{justify-self:start;margin-left:0}.citizen-service-grid{grid-template-columns:1fr}.citizen-section-heading{flex-direction:column;align-items:flex-start}.citizen-service-card-v2{padding:16px}}.citizen-shell,.citizen-shell-main{overflow-x:clip}html,body{overflow-x:hidden}.stitch-booking-experience,.stitch-booking-step,.stitch-resource-grid,.stitch-resource-card{min-width:0;max-width:100%}.stitch-booking-experience{overflow:hidden}.citizen-feature-card-dark .link-button,.citizen-feature-card-dark p{color:var(--ca-on-brand)}.citizen-pin-box{border-radius:var(--ca-radius-md);background:#ffffff1f;border:1px solid #ffffff59;gap:6px;margin-top:12px;padding:12px;display:grid}.citizen-pin-box small{color:var(--ca-on-brand)}.citizen-pin-box strong{color:var(--ca-on-brand);letter-spacing:.12em}.citizen-pin-box .secondary-action{background:var(--ca-on-brand);color:var(--ca-brand-dark);border-color:var(--ca-on-brand)}.link-button{box-shadow:none;color:var(--ca-brand);background:0 0;border:0;min-height:44px;padding:8px 0;text-decoration:none}.stitch-filter-row button:hover,.stitch-filter-row button:focus-visible,.stitch-filter-row button.active:hover,.stitch-filter-row button.active:focus-visible{background:var(--ca-brand-dark);border-color:var(--ca-brand-dark);color:var(--ca-on-brand);text-decoration:none;transform:none}.citizen-feature-card-dark .link-button{color:var(--ca-on-brand)}.section-action{background:var(--ca-brand);border:1px solid var(--ca-brand);border-radius:var(--ca-radius-md);color:var(--ca-on-brand);white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;text-decoration:none;display:inline-flex}.section-action:hover,.section-action:focus-visible{background:var(--ca-brand-dark);border-color:var(--ca-brand-dark);color:var(--ca-on-brand);text-decoration:none;transform:none}.on-dark-action{border-radius:var(--ca-radius-md);color:var(--ca-on-brand);background:0 0;border:1px solid #ffffff7a;align-items:center;gap:8px;min-height:44px;margin-top:16px;padding:10px 14px;text-decoration:none;display:inline-flex}.on-dark-action:hover,.on-dark-action:focus-visible{color:var(--ca-on-brand);background:#ffffff29;border-color:#ffffffb8;text-decoration:none;transform:none}.citizen-feature-card-dark .secondary-action:hover,.citizen-feature-card-dark .secondary-action:focus-visible{background:var(--ca-brand-soft);border-color:var(--ca-brand-soft);color:var(--ca-brand-dark);text-decoration:none;transform:none}.link-button:hover,.link-button:focus-visible{color:inherit;background:0 0;text-decoration:none;transform:none}.primary-action:hover,.primary-action:focus-visible{background:var(--ca-brand-dark);border-color:var(--ca-brand-dark);color:var(--ca-on-brand);text-decoration:none;transform:none}.secondary-action:hover,.secondary-action:focus-visible{background:var(--ca-brand-soft);border-color:var(--ca-brand);color:var(--ca-brand-dark);text-decoration:none;transform:none}.citizen-feature-card-dark{gap:28px}.citizen-feature-card-dark>div:first-child{min-width:0}.citizen-feature-card-dark p{margin-top:8px}.citizen-service-sidebar section>button:not(.link-button):not(.section-action){gap:12px;min-width:0}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) small{line-height:1.4;display:block}.citizen-back-link .back-arrow{transform:rotate(180deg)}.booking-history-card b{margin-top:16px}@media (width<=639px){.citizen-feature-card{width:100%}.citizen-feature-card-dark{gap:18px}.citizen-service-sidebar{min-width:0}}.profile-service-link button,.dog-form>button,.dog-edit-actions button[type=submit]{background:var(--ca-brand);border:1px solid var(--ca-brand);color:var(--ca-on-brand)}.profile-service-link button:hover,.profile-service-link button:focus-visible,.dog-form>button:hover,.dog-form>button:focus-visible,.dog-edit-actions button[type=submit]:hover,.dog-edit-actions button[type=submit]:focus-visible{background:var(--ca-brand-dark);border-color:var(--ca-brand-dark);color:var(--ca-on-brand);text-decoration:none;transform:none}.service-card form>button,.submission-summary{background:var(--ca-brand);border:1px solid var(--ca-brand);color:var(--ca-on-brand)}.service-card form>button:hover,.service-card form>button:focus-visible,.submission-summary:hover,.submission-summary:focus-visible{background:var(--ca-brand-dark);border-color:var(--ca-brand-dark);color:var(--ca-on-brand);text-decoration:none;transform:none}.stitch-booking-experience,.stitch-booking-step,.stitch-resource-grid,.stitch-resource-card,.stitch-progress-card{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.stitch-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stitch-progress-bars{width:100%;min-width:0}.stitch-resource-content small,.stitch-resource-meta span{align-items:center;gap:6px;min-width:0;display:flex}.stitch-resource-content>strong{justify-content:space-between;align-items:center;gap:8px;display:flex}.resource-availability{color:var(--ca-brand-dark)}.citizen-feature-card-dark p,.citizen-feature-card-dark>div>span{color:var(--ca-on-brand)}.booking-detail-backdrop{z-index:1000}.booking-detail-backdrop>div{max-height:min(760px,100vh - 40px);padding-bottom:env(safe-area-inset-bottom);overflow:auto}.booking-detail{max-height:100%;overflow:auto}.citizen-service-sidebar,.citizen-service-sidebar section>button:not(.link-button):not(.section-action){min-width:0}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) span{min-width:180px}@media (width<=1023px){.stitch-booking-experience{padding:16px 14px}.stitch-resource-grid,.citizen-service-layout,.citizen-service-sidebar{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.stitch-booking-experience{padding:14px 10px}.stitch-progress-card{margin-inline:0;padding:14px}.booking-detail-backdrop{padding:10px 10px calc(10px + env(safe-area-inset-bottom));z-index:1000;align-items:flex-end}.booking-detail-backdrop>div,.booking-detail{max-height:calc(100dvh - 20px - env(safe-area-inset-bottom))}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) span{min-width:0}}.booking-category-tabs{scrollbar-width:thin;flex-wrap:nowrap;gap:8px;max-width:100%;padding-bottom:6px;display:flex;overflow-x:auto}.booking-category-tabs>button{flex:none}.stitch-filter-row{scrollbar-width:thin;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.stitch-filter-row>button{flex:none}.citizen-page-header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.citizen-page-header h1{margin:4px 0}.citizen-page-header p:not(.eyebrow){color:var(--ca-muted);margin:0}.citizen-message-filters,.activity-filters{flex-wrap:wrap;gap:8px;margin:0 0 24px;display:flex}.citizen-message-filters button,.activity-filters button{background:var(--ca-surface);border:1px solid var(--ca-line);color:var(--ca-muted);border-radius:999px;min-height:44px;padding:8px 14px}.citizen-message-filters button[aria-pressed=true],.activity-filters button[aria-pressed=true]{background:var(--ca-brand-soft);border-color:var(--ca-brand);color:var(--ca-brand-dark);font-weight:800}.citizen-messages-layout{grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:24px;display:grid}.citizen-messages-page{max-width:760px}.citizen-messages-layout:not(:has(.citizen-message-detail)){grid-template-columns:minmax(0,1fr)}.citizen-message-list{align-content:start;gap:10px;display:grid}.citizen-message-row{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-md);color:var(--ca-ink);text-align:left;align-items:flex-start;gap:12px;width:100%;min-width:0;padding:16px;display:flex;position:relative}.citizen-message-row:hover,.citizen-message-row:focus-visible{background:var(--ca-brand-soft);border-color:var(--ca-brand);outline:2px solid var(--ca-brand);outline-offset:2px}.citizen-message-origin{border-radius:50%;flex:0 0 38px;justify-content:center;align-items:center;height:38px;display:flex}.citizen-message-origin.municipality{background:var(--ca-brand-soft);color:var(--ca-brand-dark)}.citizen-message-origin.service{background:var(--ca-success-soft);color:var(--ca-success)}.citizen-message-row-copy{gap:4px;min-width:0;display:grid}.citizen-message-row-copy strong,.citizen-message-row-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.citizen-message-row-copy small{color:var(--ca-muted)}.citizen-message-unread{background:var(--ca-brand);border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-top:7px;margin-left:auto}.citizen-message-detail{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-md);min-width:0;padding:24px}.citizen-message-detail h2{margin:8px 0}.citizen-message-detail>p:not(.eyebrow){white-space:pre-wrap;line-height:1.6}.citizen-message-back{color:var(--ca-brand-dark);background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:4px 0;display:inline-flex}.activity-group{margin:0 0 28px}.activity-group h2{border-bottom:1px solid var(--ca-line);letter-spacing:.08em;align-items:center;gap:8px;margin:0 0 10px;padding-bottom:10px;font-size:.9rem;display:flex}.activity-todo h2{border-bottom-color:var(--ca-warning);color:var(--ca-brand-dark)}.activity-table{gap:8px;display:grid}.activity-row{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-md);grid-template-columns:34px minmax(0,1fr) 150px auto;align-items:center;gap:14px;min-width:0;padding:16px;display:grid}.activity-row>div{gap:4px;min-width:0;display:grid}.activity-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-row small{color:var(--ca-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-type{color:var(--ca-brand-dark);justify-content:center;align-items:center;display:flex}.activity-status{color:var(--ca-success);font-weight:800}.activity-row button{color:var(--ca-brand-dark);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;min-height:44px;font-weight:800;display:inline-flex}.activity-older{margin:0 auto;display:block}@media (width<=1023px){.citizen-messages-layout{grid-template-columns:1fr}.citizen-message-detail{order:-1}}@media (width<=640px){.citizen-page-header{flex-direction:column;align-items:flex-start}.citizen-message-filters,.activity-filters{flex-wrap:wrap;padding-bottom:4px;overflow:visible}.citizen-message-filters button,.activity-filters button{flex:none}.activity-row{grid-template-columns:30px minmax(0,1fr);align-items:start}.activity-row .activity-status,.activity-row button{grid-column:2}}.citizen-shell-bottom-nav{box-sizing:border-box;grid-template-columns:repeat(5,minmax(0,1fr));min-width:0}.citizen-shell-bottom-nav button{box-sizing:border-box;min-width:0;padding-left:2px;padding-right:2px}.citizen-shell-bottom-nav small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.citizen-service-layout,.citizen-service-layout>main{min-width:0}@media (width<=1024px){.citizen-service-layout{grid-template-columns:minmax(0,1fr)}}.booking-detail-backdrop>div{box-sizing:border-box;min-width:0;max-width:100%}.booking-detail{box-sizing:border-box;width:100%;min-width:0}.booking-detail-actions{min-width:0}@media (width>=1024px){.citizen-message-back{display:none}}.citizen-message-back .back-arrow{transform:rotate(180deg)}@media (width>=1024px){.booking-detail-backdrop>div{max-width:560px}}.profile-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:24px;display:grid}.profile-side-menu{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-lg);gap:6px;padding:16px;display:grid;position:sticky;top:24px}.profile-side-menu strong{color:var(--ca-ink);padding:8px 10px 14px}.profile-side-menu button{border-radius:var(--ca-radius-md);color:var(--ca-ink);text-align:left;background:0 0;border:0;min-height:44px;padding:10px}.profile-side-menu button:hover,.profile-side-menu button:focus-visible{background:var(--ca-brand-soft);color:var(--ca-brand-dark)}.profile-content{gap:16px;min-width:0;display:grid}.profile-accordion{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:var(--ca-radius-lg);overflow:hidden}.profile-section-toggle{color:var(--ca-ink);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:56px;padding:14px 18px;font-size:1.05rem;font-weight:800;display:flex}.profile-section-toggle:hover,.profile-section-toggle:focus-visible{background:var(--ca-brand-soft);color:var(--ca-brand-dark)}.profile-section-content{border-top:1px solid var(--ca-line);padding:18px}.profile-form-actions{flex-wrap:wrap;grid-column:1/-1;gap:12px;display:flex}.profile-form-actions button{min-height:44px}.profile-form-actions .primary-action{width:auto}.profile-side-menu .profile-logout{color:var(--ca-danger);margin-top:12px}.photo-upload-button{cursor:pointer}.photo-upload-button input,.file-trigger input{display:none}.file-trigger{background:var(--ca-brand-soft);border:1px solid var(--ca-line);border-radius:var(--ca-radius-md);color:var(--ca-brand-dark);align-items:center;min-height:44px;padding:8px 12px;font-weight:700;display:inline-flex}.danger-action{color:var(--ca-danger)}.dog-row .danger-action{margin-left:0}.selected-file-name{color:var(--ca-muted);overflow-wrap:anywhere;margin-top:6px;display:block}.photo-upload-control{gap:6px;min-width:0;display:inline-grid}.photo-upload-control>label{border:1px solid var(--ca-line);cursor:pointer;font-size:var(--ca-text-sm);align-items:center;width:fit-content;min-height:44px;padding:10px 14px;display:inline-flex}.photo-upload-input{display:none!important}.dog-form label>.muted,.dog-edit-form label>.muted{white-space:nowrap}.profile-mobile-logout{background:var(--ca-surface);border:1px solid var(--ca-warning);border-radius:var(--ca-radius-md);color:var(--ca-warning);width:100%;min-height:48px;padding:12px 16px;font-weight:800;display:none}.add-dog-button{margin-top:14px}.profile-side-menu button[aria-current=true]{background:var(--ca-brand-soft);color:var(--ca-brand-dark);font-weight:800}@media (width<=760px){.profile-layout{display:block}.profile-side-menu{display:none}.profile-content{margin-top:16px}.profile-section-content{padding:16px}.profile-mobile-logout{display:block}}@media (width>=761px){.profile-content>.profile-page{border-radius:var(--ca-radius-lg)}}.tenant-crest{object-fit:contain;border-radius:8px;width:34px;height:34px}.tenant-footer{width:100%;max-width:1200px;color:var(--ca-muted);text-align:center;margin:24px auto 96px;padding:16px 20px;font-size:13px}.tenant-footer a{color:var(--ca-brand)}.municipal-access{background:var(--ca-bg);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.municipal-access-card{background:var(--ca-surface);border:1px solid var(--ca-line);width:min(100%,520px);box-shadow:var(--ca-shadow);text-align:center;border-radius:24px;padding:40px}.municipal-crest{object-fit:contain;width:88px;height:88px;margin:0 auto 20px}.municipal-access-card .hero-actions{justify-content:center;margin-top:24px}@media (width<=600px){.municipal-access-card{padding:28px 20px}}.citizen-home-grid,.citizen-home-side,.citizen-home-grid>*,.citizen-home-featured,.citizen-home-services,.citizen-home-notices,.citizen-feature-card>*,.citizen-notice span,.citizen-service-sidebar,.citizen-service-sidebar section>button{min-width:0}.citizen-notice strong,.citizen-notice small{text-overflow:ellipsis;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.citizen-notice small{margin-top:3px}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) span{text-overflow:ellipsis;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) small{white-space:nowrap;flex:none;margin-top:4px;display:block}.citizen-service-sidebar section>button:not(.link-button):not(.section-action)>svg{flex:none;margin-left:auto}.activity-row{grid-template-columns:34px minmax(0,1fr) auto auto}.activity-row strong,.citizen-message-row-copy strong,.citizen-message-row-copy span{text-overflow:ellipsis;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=639px){.citizen-home-grid,.citizen-home-side{grid-template-columns:minmax(0,1fr)}}.citizen-feature-card-light .link-button{margin-left:auto}@media (width<=639px){.citizen-feature-card-light .link-button{margin-left:0}}.citizen-service-sidebar section>button:not(.link-button):not(.section-action){grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;display:grid}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) span{grid-area:1/1;width:100%;min-width:0;line-height:1.35}.citizen-service-sidebar section>button:not(.link-button):not(.section-action) small{white-space:normal;grid-area:2/1;line-height:1.35}.citizen-service-sidebar section>button:not(.link-button):not(.section-action)>svg{grid-area:1/2/span 2;margin-left:0}form label>.muted,label>.muted{white-space:nowrap;display:inline}.activity-row small{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.35;overflow:visible}.citizen-feature-card-light{align-items:flex-start}@media (width<=639px){.citizen-feature-card-light{grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.citizen-feature-card-light .link-button{grid-column:2;justify-self:start;margin:16px 0 0}}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero-note,.phone-muted,.phone-service small,.phone-top,.portal-stats span,.quick-actions small,.landing-footer,.landing-intro h2 span{color:#526581}.phone-status,.area-state{color:#24705d}
