@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&display=swap";:root{--blue:#2596d4;--blue-dark:#0b2545;--splash-blue:#0068dd;--green:#9be25b;--green-light:#b6f27a;--green-soft:#d9ffb5;--white:#fff;--text:#fff;--card-text:#1f2933;--muted:#eaf8ff;--shadow:0 22px 50px #0000002e;--radius:26px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text);background:var(--splash-blue);font-family:Poppins,Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1120px,92%);margin:auto}.header{z-index:100;background:var(--blue);position:sticky;top:0;box-shadow:0 10px 30px #00000029}.header-container{justify-content:space-between;align-items:center;height:78px;display:flex}.logo{color:var(--white);letter-spacing:.5px;font-size:1.45rem;font-weight:900}.logo span{color:var(--green-light)}.nav{color:var(--white);align-items:center;gap:24px;font-weight:800;display:flex}.nav a,.nav-dropdown>a{font-size:.95rem;font-weight:800}.nav a:hover{color:var(--green-light)}.header-actions{align-items:center;gap:12px;display:flex}.header-portals{align-items:center;gap:8px;display:flex}.header-portals a{min-height:40px;color:var(--white);white-space:nowrap;background:#ffffff24;border:1px solid #ffffff47;border-radius:999px;align-items:center;padding:9px 13px;font-size:.78rem;font-weight:900;display:inline-flex}.header-portals a:hover{background:var(--green-light);color:var(--blue-dark)}.account-menu{padding:18px 0;position:relative}.account-menu-button{background:var(--green-light);min-height:40px;color:var(--blue-dark);font:inherit;cursor:pointer;border:1px solid #ffffff47;border-radius:999px;padding:9px 16px;font-size:.82rem;font-weight:900}.account-menu-panel{background:var(--white);min-width:210px;color:var(--blue-dark);box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;border-radius:18px;padding:10px;transition:all .2s;position:absolute;top:62px;right:0;transform:translateY(10px)}.account-menu:hover .account-menu-panel,.account-menu:focus-within .account-menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.account-menu-panel a,.account-menu-panel button{width:100%;color:var(--blue-dark);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:11px 12px;font-size:.9rem;font-weight:800;display:block}.account-menu-panel a:hover,.account-menu-panel button:hover{background:#eef2f7}.nav-dropdown{cursor:pointer;align-items:center;padding:26px 0;display:flex;position:relative}.nav-services-link:after{content:" ▾";font-size:.8rem}.dropdown-menu{background:var(--white);min-width:320px;color:var(--blue-dark);box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;z-index:999;border-radius:22px;padding:12px;transition:all .25s;position:absolute;top:72px;left:50%;transform:translate(-50%)translateY(12px)}.dropdown-menu:before{content:"";border-left:10px solid #0000;border-right:10px solid #0000;border-bottom:10px solid var(--white);position:absolute;top:-10px;left:50%;transform:translate(-50%)}.dropdown-menu a{color:var(--blue-dark);border-radius:14px;padding:13px 15px;font-weight:800;display:block}.dropdown-menu a:hover{background:var(--green-light);color:var(--blue-dark);transform:translate(4px)}.nav-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.btn{cursor:pointer;border:none;border-radius:999px;padding:13px 22px;font-weight:800;transition:all .25s;display:inline-block}.btn-primary{background:var(--white);color:var(--blue-dark)}.btn-primary:hover{background:var(--green-light);color:var(--blue-dark);transform:translateY(-2px)}.white-surface-primary{color:var(--white);background:#18863a;box-shadow:0 10px 24px #18863a47}.white-surface-primary:hover,.white-surface-primary:focus-visible{color:var(--white);background:#116b2e;box-shadow:0 12px 28px #116b2e57}.btn-secondary{background:var(--blue);color:var(--white);box-shadow:0 10px 25px #2596d44d}.btn-secondary:hover{background:var(--blue-dark);color:var(--white);transform:translateY(-2px)}.booking-cta{background:var(--blue);color:var(--white)}.booking-cta:hover{background:var(--blue-dark);color:var(--white)}.reservation-section .reservation-actions .btn-primary,.pro-section .page-cta .btn-primary{background:var(--green);color:var(--blue-dark);box-shadow:0 10px 25px #0b254524}.reservation-section .reservation-actions .btn-primary:hover,.pro-section .page-cta .btn-primary:hover{background:var(--green-light);color:var(--blue-dark)}.hero-premium{background:linear-gradient(135deg,#9be25b 0%,#b6f27a 100%);padding:65px 0 35px}.hero-layout{grid-template-columns:1fr .85fr;align-items:center;gap:70px;display:grid}.hero-left{max-width:600px}.hero-badge{color:#2f7d1f;background:#fff;border-radius:999px;align-items:center;padding:11px 22px;font-size:.95rem;font-weight:900;display:inline-flex;box-shadow:0 12px 30px #0000001f}.hero-left h1{color:#08245c;letter-spacing:-1.8px;margin:26px 0 18px;font-size:clamp(2.7rem,5vw,4.4rem);font-weight:900;line-height:1.02}.hero-left h1 strong{color:#08245c}.hero-left p{color:#08245c;margin-bottom:24px;font-size:1.12rem;font-weight:800}.price-comparison{background:#fff;border-radius:24px;grid-template-columns:1fr 1px 1fr;width:100%;max-width:540px;margin-bottom:24px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #00000024}.price-comparison>div:not(.discount-line):not(.separator){text-align:center;padding:20px 22px 54px}.price-comparison span{color:#555;margin-bottom:6px;font-size:.85rem;font-weight:900;display:block}.separator{background:#e5e7eb;margin:18px 0 58px}.old-price{color:#4b5563;font-size:2rem;font-weight:900;display:inline-block;position:relative}.old-price:after{content:"";background:#e02424;border-radius:999px;height:5px;position:absolute;top:52%;left:-8px;right:-8px;transform:rotate(-8deg)}.new-price{color:#3d9c25;font-size:2.15rem;font-weight:900}.discount-line{color:#fff;text-align:center;background:#08245c;padding:10px 14px;font-size:.92rem;font-weight:900;position:absolute;bottom:0;left:0;right:0}.discount-line strong{color:#9be25b}.reserve-button{color:#fff;background:linear-gradient(135deg,#2596d4,#0071b8);border:5px solid #fff;border-radius:999px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;width:100%;max-width:540px;padding:17px 22px;font-size:1.35rem;font-weight:900;transition:all .25s;display:grid;box-shadow:0 22px 45px #00000038}.reserve-button:hover{transform:translateY(-4px);box-shadow:0 28px 55px #00000047}.reserve-button small{opacity:.95;font-size:.85rem;font-weight:700;display:block}.reserve-icon{font-size:2.1rem}.reserve-arrow{color:#0071b8;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:2.7rem;display:flex}.hero-right-clean{flex-direction:column;align-items:center;gap:28px;display:flex}.tax-badge{text-align:center;filter:drop-shadow(0 18px 26px #0003)}.tax-circle{color:#fff;background:linear-gradient(135deg,#0071b8,#005b96);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:280px;height:280px;display:flex;transform:rotate(-5deg)}.tax-circle strong{font-size:4.6rem;font-weight:900;line-height:.9}.tax-circle span{font-size:1.55rem;font-weight:900;line-height:1.05}.tax-label{color:#fff;background:#7cb342;border:4px solid #fff;margin-top:-34px;padding:8px 28px;font-size:2.2rem;font-weight:900;display:inline-block;transform:rotate(-4deg)}.tax-info{color:#111827;background:#fff;border-radius:22px;width:340px;padding:24px 28px;box-shadow:0 18px 38px #00000029}.tax-info strong{font-size:1.15rem;font-weight:900}.tax-info p{margin-top:10px;font-weight:700}.tax-info span{color:#2f8a26;font-weight:900}.why-bar{color:#fff;background:linear-gradient(135deg,#0071b8,#005b96);border:4px solid #fff;border-radius:28px;margin-top:42px;padding:30px;box-shadow:0 20px 45px #0000002e}.why-bar h3{text-align:center;margin-bottom:24px;font-size:1.65rem;font-weight:900}.why-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.why-item{align-items:flex-start;gap:15px;display:flex}.why-icon{background:linear-gradient(135deg,#9be25b,#75b92f);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;font-size:1.4rem;display:flex}.why-item strong{margin-bottom:4px;font-size:1.05rem;font-weight:900;display:block}.why-item p{color:#eaf8ff;font-size:.92rem;font-weight:500}.trust-bar{color:#08245c;background:#fff;border-radius:26px;justify-content:center;align-items:center;gap:34px;margin-top:22px;padding:22px 32px;display:flex;box-shadow:0 14px 35px #0000001a}.trust-bar strong{font-weight:900}.trust-item{align-items:center;gap:8px;font-weight:800;display:flex}.trust-item span:nth-child(2){color:#ffd400}.google{color:#4285f4;font-size:1.3rem;font-weight:900}.allo{color:#ef3b2d;font-size:1.3rem;font-weight:900}.section{background:var(--green);padding:85px 0}.section:nth-of-type(2n){background:linear-gradient(135deg, var(--green-light), var(--green))}.section-header{text-align:center;max-width:760px;margin:0 auto 48px}.section-header h2{color:var(--white);text-shadow:0 4px 18px #00000024;margin-bottom:14px;font-size:clamp(1.9rem,4vw,3rem);font-weight:900;line-height:1.15}.section-header p{color:var(--blue-dark);font-size:1.05rem;font-weight:700}.services-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.service-card,.benefit-card,.price-card,.testimonial-card,.step-card,.contact-form,details{background:var(--white);color:var(--card-text);border-radius:var(--radius);box-shadow:var(--shadow);border:none}.service-card{padding:30px;transition:all .25s}.service-card:hover{transform:translateY(-6px)}.service-icon{background:var(--blue);width:46px;height:46px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-weight:900;display:flex}.service-card h3{color:var(--blue-dark);margin-bottom:10px;font-size:1.2rem;font-weight:900}.service-card p{color:#334155;font-weight:500}.benefits{background:var(--green)}.benefits .section-header p{color:var(--blue-dark)}.benefits-grid{grid-template-columns:repeat(5,1fr);gap:18px;display:grid}.benefit-card{text-align:center;padding:26px 20px;transition:all .25s}.benefit-card:hover{transform:translateY(-5px)}.benefit-card span{background:var(--green);width:44px;height:44px;color:var(--blue-dark);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;font-weight:900;display:inline-flex}.benefit-card h3{color:var(--blue-dark);margin-bottom:8px;font-size:1.05rem;font-weight:900}.benefit-card p{color:#334155;font-size:.95rem}.pricing-grid,.testimonials-grid,.steps-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.price-card,.testimonial-card,.step-card{padding:30px}.price-card h3,.step-card h3{color:var(--blue-dark);font-weight:900}.price-card p,.step-card p{color:#334155}.price-card strong{color:var(--blue);margin:12px 0;font-size:1.8rem;font-weight:900;display:block}.base-price{color:#475569;background:#eef2f7;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:7px 13px;font-size:1.12rem;font-weight:900;display:inline-flex;position:relative;overflow:hidden}.base-price:after{content:"";background:#e024248c;border-radius:999px;height:2px;position:absolute;top:50%;left:12px;right:12px;transform:rotate(-5deg)}.base-price small{color:#64748b;text-transform:uppercase;letter-spacing:0;font-size:.72rem}.testimonial-card p{color:#334155;margin-bottom:18px;font-style:italic}.testimonial-card small{color:var(--blue);font-weight:900}.review-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.review-top strong{color:var(--blue-dark);font-weight:900}.review-top span{color:#f5c400;font-weight:900}.reviews-section{background:var(--green);padding-top:45px!important}.reviews-score{background:var(--white);width:fit-content;color:var(--blue-dark);box-shadow:var(--shadow);border-radius:24px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:-18px auto 34px;padding:18px 28px;display:flex}.reviews-score strong{color:var(--blue);font-size:1.7rem;font-weight:900}.reviews-score span,.reviews-score small{color:var(--blue-dark);font-weight:900}.reviews-score small{color:#334155}.reviews-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:35px;display:flex}.faq{background:var(--blue)}.faq .section-header p{color:var(--green-soft)}.faq-list{max-width:820px;margin:auto}details{margin-bottom:14px;padding:20px 24px}summary{cursor:pointer;color:var(--blue-dark);font-weight:900}details p{color:#334155;margin-top:12px}.contact-container{grid-template-columns:.9fr 1.1fr;gap:45px;display:grid}.contact h2{color:var(--white);margin-bottom:16px;font-size:2.5rem;font-weight:900}.contact p{color:var(--blue-dark);font-weight:700}.contact-info{margin-top:24px}.contact-info p{color:var(--blue-dark)}.contact-form{gap:16px;padding:34px;display:grid}.contact-submit{background:var(--green);color:var(--blue-dark)}.contact-success-card{align-content:center;min-height:260px}.contact-success-card strong{color:var(--blue-dark);font-size:1.35rem;font-weight:900}.contact-success-card p{margin:0}input,select,textarea{width:100%;font:inherit;color:var(--blue-dark);border:2px solid #d9dee7;border-radius:16px;padding:15px 16px}input:focus,select:focus,textarea:focus{outline:3px solid var(--green);border-color:var(--blue)}input[aria-invalid=true]{border-color:#e02424;outline:3px solid #e024242e}.field-error{color:#b91c1c;font-size:.82rem;font-weight:900;line-height:1.35}.field-helper{color:#64748b;font-size:.82rem;font-weight:800;line-height:1.35}.form-status{color:var(--blue);margin-top:6px;font-weight:800}.service-page{background:var(--green);min-height:80vh}.pro-section{background:var(--blue);color:var(--white)}.pro-section .section-header h2,.pro-section .section-header p{color:var(--white)}.pro-section .service-info-box{color:var(--white);background:#ffffff1f;border:2px solid #ffffff47}.pro-section .service-info-box li{color:var(--white)}.page-cta{text-align:center;margin-top:40px}.service-info-box{background:var(--white);max-width:820px;color:var(--blue-dark);border-radius:var(--radius);box-shadow:var(--shadow);margin:40px auto 0;padding:34px}.service-info-box h3{margin-bottom:18px;font-size:1.6rem;font-weight:900}.service-info-box ul{padding-left:20px}.service-info-box li{color:#334155;margin-bottom:12px;font-weight:600}.reservation-page{background:var(--green);min-height:80vh}.pro-quote-page{background:var(--blue);min-height:80vh}.reservation-section{background:linear-gradient(135deg, var(--green), var(--green-light))}.pro-quote-section{background:var(--blue)}.pro-quote-section .section-header h2,.pro-quote-section .section-header p{color:var(--white)}.pro-quote-card{max-width:1040px}.pro-quote-submit{background:var(--green);color:var(--blue-dark)}.pro-quote-submit:hover{background:var(--green-light)}.reservation-card{background:var(--white);max-width:980px;color:var(--blue-dark);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 auto;padding:34px}.reservation-progress{justify-content:center;gap:12px;margin-bottom:30px;display:flex}.progress-dot{width:38px;height:38px;color:var(--blue-dark);background:#e8eef5;border-radius:50%;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.progress-dot.active{background:var(--blue);color:var(--white)}.reservation-step h3{text-align:center;margin-bottom:22px;font-size:1.7rem;font-weight:900}.reservation-options{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.reservation-option{min-height:150px;color:var(--blue-dark);text-align:left;cursor:pointer;font:inherit;background:#f8fbff;border:3px solid #e4ebf2;border-radius:22px;padding:24px;transition:all .25s}.reservation-option:hover,.reservation-option.selected{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 16px 30px #2596d429}.reservation-option strong,.reservation-option span,.reservation-option small{display:block}.reservation-option strong{margin-bottom:10px;font-size:1.1rem;font-weight:900}.reservation-option span{color:#4b5563;margin-bottom:6px;font-weight:800}.reservation-option small{color:#2f8a26;font-size:.9rem;font-weight:900}.pro-option{display:block}.form-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.form-grid label{color:var(--blue-dark);gap:8px;font-weight:900;display:grid}.full-field{grid-column:1/-1}.helper-text{color:#4b5563;font-weight:700}.city-combobox{position:relative}.city-suggestions{z-index:50;background:var(--white);border:3px solid var(--blue);max-height:260px;box-shadow:var(--shadow);border-radius:20px;padding:10px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.city-suggestions button{width:100%;color:var(--blue-dark);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:14px;grid-template-columns:72px 1fr;align-items:center;gap:10px;padding:12px 14px;display:grid}.city-suggestions button:hover{background:var(--green-light)}.city-suggestions span{color:var(--blue);font-weight:900}.city-suggestions strong{color:var(--blue-dark);font-weight:900}.city-suggestions p{color:#334155;padding:12px 14px;font-weight:800}.estimate-strip,.estimate-box{color:var(--blue-dark);background:#eefbea;border-radius:22px;margin-top:28px;padding:22px}.estimate-strip span,.estimate-box span,.reservation-summary span{color:#4b5563;text-transform:uppercase;font-size:.82rem;font-weight:900;display:block}.estimate-strip strong,.estimate-box strong{color:#2f8a26;margin:4px 0;font-size:1.45rem;font-weight:900;display:block}.estimate-strip small,.estimate-box p,.reservation-summary p{color:#334155;font-weight:700;display:block}.reservation-summary{gap:14px;display:grid}.reservation-summary>div{background:#f8fbff;border:2px solid #e4ebf2;border-radius:18px;padding:18px}.reservation-summary strong{color:var(--blue-dark);margin-top:4px;font-size:1.05rem;font-weight:900;display:block}.reservation-actions{flex-wrap:wrap;justify-content:flex-end;gap:14px;margin-top:28px;display:flex}.reservation-status{color:var(--blue-dark);margin-top:22px}.reservation-edit-notice{color:var(--blue-dark);background:#f4fbff;border:1px solid #0068dd29;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;margin:22px 0 0;padding:14px 16px;display:flex}.reservation-edit-notice strong{font-weight:900}.reservation-edit-notice span{color:#4b5563;font-weight:800}.reservation-success-page{background:var(--green);min-height:80vh}.reservation-success-section{background:linear-gradient(135deg, var(--green), var(--green-light))}.success-card{border-radius:var(--radius);background:var(--white);max-width:760px;color:var(--blue-dark);box-shadow:var(--shadow);text-align:center;margin:0 auto;padding:44px}.success-icon{background:var(--green);width:76px;height:76px;color:var(--blue-dark);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:2.4rem;font-weight:900;display:flex}.success-card h1{color:var(--blue-dark);margin:18px 0 14px;font-size:clamp(2rem,4vw,3.1rem);font-weight:900;line-height:1.08}.success-card p{color:#334155;max-width:620px;margin:0 auto;font-size:1.05rem;font-weight:700}.success-next{text-align:left;background:#f8fbff;border:2px solid #e4ebf2;border-radius:22px;gap:8px;margin:28px auto 30px;padding:22px;display:grid}.success-next strong{color:var(--blue);font-weight:900}.success-next span{color:var(--blue-dark);font-weight:800}.success-home-link{background:var(--blue);color:var(--white)}.success-home-link:hover{background:var(--blue-dark);color:var(--white)}.portal-page{background:var(--green);min-height:100dvh;overflow:visible}.portal-app-shell{z-index:100;padding:calc(16px + env(safe-area-inset-top)) max(18px, calc((100vw - 1180px) / 2)) 16px;background:var(--blue);color:var(--white);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;display:grid;position:sticky;top:0;box-shadow:0 14px 30px #0418301f}.portal-app-brand{color:var(--white);font-size:1.25rem;font-weight:900}.portal-app-nav{scrollbar-width:none;align-items:center;gap:8px;display:flex;overflow-x:auto}.portal-app-nav::-webkit-scrollbar{display:none}.portal-app-nav a,.portal-app-signout{min-height:38px;color:var(--white);font:inherit;white-space:nowrap;cursor:pointer;background:#ffffff14;border:1px solid #ffffff42;border-radius:999px;padding:9px 14px;font-size:.82rem;font-weight:900}.portal-app-nav a.active,.portal-app-nav a:hover,.portal-app-signout:hover{background:var(--green-light);color:var(--blue-dark)}.portal-app-shell .portal-app-nav{display:none}@media (width>=769px){.portal-app-shell{grid-template-columns:auto minmax(0,1fr) max-content}.portal-app-shell .portal-app-nav{justify-content:center;display:flex}.portal-app-signout{justify-self:end;width:auto;min-width:0;min-height:34px;padding:7px 13px;font-size:.76rem}}.portal-bottom-nav{left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right));z-index:1200;width:auto;min-width:0;max-width:560px;padding:7px 7px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0071b8f5;border:2px solid #fffc;border-radius:22px 22px 0 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 56px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:4px;margin:0 auto;display:grid;position:fixed;bottom:0;box-shadow:0 18px 42px #04183038}.portal-bottom-nav a,.portal-bottom-action{min-width:0;max-width:100%;min-height:42px;color:var(--white);font:inherit;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:normal;cursor:pointer;background:0 0;border:0;border-radius:14px;place-items:center;padding:7px 3px;font-size:clamp(.62rem,2.7vw,.76rem);font-weight:900;line-height:1.05;display:grid}.portal-bottom-nav a.active,.portal-bottom-nav a:hover{background:#ffffff2e}.portal-bottom-nav:not(:has(.portal-bottom-action)){grid-template-columns:repeat(4,minmax(0,1fr))}.portal-bottom-action{border:4px solid var(--white);background:var(--green);width:56px;height:56px;min-height:56px;color:var(--blue-dark);border-radius:999px;margin:-24px auto 0;font-size:1.85rem;line-height:1;box-shadow:0 16px 30px #04183047}.portal-page:has(.portal-bottom-nav) .portal-section{min-height:100dvh;padding-bottom:calc(136px + env(safe-area-inset-bottom))}.portal-page-with-mobile-nav{--portal-mobile-bottom-nav-space:calc(136px + env(safe-area-inset-bottom))}.portal-page-with-mobile-nav .portal-section{min-height:100dvh}@media (width>=769px){.portal-bottom-nav{display:none}.portal-page:has(.portal-bottom-nav) .portal-section{padding-bottom:clamp(52px,6vw,88px)}}.portal-section{background:linear-gradient(135deg, var(--green), var(--green-light))}.portal-page:not(.portal-splash-page){animation:.34s both app-fade-in}.portal-splash-page{background:var(--splash-blue);min-height:100dvh;overflow:hidden}.portal-splash-screen{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 22px max(36px, env(safe-area-inset-bottom));background:var(--splash-blue);color:var(--white);text-align:center;opacity:1;flex-direction:column;justify-content:center;align-items:center;gap:clamp(24px,5vh,46px);transition:opacity .42s,transform .42s;animation:.38s both splash-enter;display:flex;position:relative}.portal-splash-screen:before,.portal-splash-screen:after{content:none;pointer-events:none;opacity:.2;position:absolute}.portal-splash-screen:before{background:#53b9ff5c;border-radius:50% 50% 0 0;height:19%;bottom:-6%;left:-18%;right:-18%;transform:rotate(6deg)}.portal-splash-screen:after{aspect-ratio:1;border:18px solid #5dbfff38;border-radius:52% 48% 0 0;width:min(42vw,420px);bottom:-4%;right:-10%}.portal-splash-screen.is-exiting{opacity:0;transform:scale(1.015)}.portal-splash-brand{z-index:1;justify-items:center;gap:clamp(8px,1.5vh,16px);width:min(84vw,560px);display:grid;position:relative}.portal-splash-brand img{aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 34px #00215c38);width:clamp(190px,42vw,360px)}.portal-splash-wordmark{color:#fff;text-shadow:0 8px 22px #00285a3d;flex-wrap:nowrap;justify-content:center;width:100%;font-size:clamp(2rem,9.2vw,4.4rem);font-weight:950;line-height:.95;display:flex}.portal-splash-wordmark strong{color:var(--white)}.portal-splash-brand p{color:#ffffffeb;margin:0;font-size:clamp(1rem,4vw,1.65rem);font-weight:700}.portal-splash-loader{z-index:1;background:conic-gradient(from 0deg, #fffffffa 0 82deg, #ffffffa3 82deg 142deg, #ffffff38 142deg 360deg);border-radius:999px;width:clamp(58px,13vw,82px);height:clamp(58px,13vw,82px);animation:.92s linear infinite splash-loader-spin;position:relative}.portal-splash-loader:after{content:"";border-radius:inherit;background:var(--splash-blue);position:absolute;inset:8px;box-shadow:inset 0 0 18px #ffffff1f}.portal-splash-status{z-index:1;color:#fffffff0;margin:0;font-size:clamp(1rem,4vw,1.55rem);font-weight:700;line-height:1.2;position:relative}@keyframes splash-loader-spin{to{transform:rotate(360deg)}}@keyframes splash-enter{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}.employee-portal-page,.employee-portal-section{background:var(--blue)}.employee-portal-section .section-header h2,.employee-portal-section .section-header p,.employee-portal-section .portal-intro h2,.employee-portal-section .portal-intro p{color:var(--white)}.portal-layout{grid-template-columns:.95fr 1.05fr;align-items:start;gap:36px;display:grid}.portal-loading{color:var(--white)}.portal-loading h2{color:var(--white);margin-top:18px;font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:1.12}.portal-intro h2{color:var(--white);margin:18px 0 14px;font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:1.12}.portal-intro p{color:var(--blue-dark);font-weight:800}.portal-access-list{color:var(--blue-dark);flex-wrap:wrap;gap:0;margin-top:22px;font-weight:900;display:flex}.portal-access-list span{border-left:2px solid #0f2d4438;padding:0 14px;line-height:1.1}.portal-access-list span:first-child{border-left:0;padding-left:0}.portal-note,.portal-card,.portal-panel{background:var(--white);color:var(--blue-dark);border-radius:var(--radius);box-shadow:var(--shadow)}.portal-note{margin-top:26px;padding:22px}.portal-note strong{color:var(--blue);margin-bottom:8px;font-weight:900;display:block}.portal-card{padding:30px}.portal-tabs{grid-template-columns:1fr;gap:10px;margin-bottom:20px;display:grid}.portal-tabs button,.employee-actions button{color:var(--blue-dark);font:inherit;cursor:pointer;background:#eef2f7;border:0;border-radius:999px;padding:12px 14px;font-weight:900}.portal-tabs button.active,.employee-actions button:hover{background:var(--green)}.portal-form{gap:14px;display:grid}.password-field{min-width:0;position:relative}.password-field input{padding-right:54px}.password-visibility-toggle{width:34px;height:34px;color:var(--blue);cursor:pointer;background:#eef6ff;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-visibility-toggle svg{width:18px;height:18px}.password-visibility-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.password-visibility-toggle:hover,.password-visibility-toggle:focus-visible{background:var(--green);color:var(--blue-dark);outline:none}.profile-panel{flex-direction:column;display:flex}.profile-summary{flex-direction:column;flex:1;gap:10px;display:flex}.profile-location-block{gap:6px;display:grid}.profile-location-list{gap:6px;margin:0;padding-left:18px;display:grid}.profile-location-list li{line-height:1.35}.profile-summary .btn{margin-top:auto}.profile-summary .btn,.profile-actions .btn{width:100%}.profile-actions{gap:10px;display:grid}.homeair-request-panel{gap:24px;display:grid}.tenant-departure-grid .homeair-request-panel{justify-self:center;width:min(100%,980px)}.homeair-request-confirmation-panel{align-content:start;gap:0}.homeair-request-confirmation-panel .homeair-confirmation{justify-self:center;width:min(100%,760px);margin-top:-4px}.homeair-panel-header{gap:8px;max-width:780px;display:grid}.homeair-panel-eyebrow{color:var(--blue);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:1000}.homeair-panel-header h3{color:var(--blue-dark);margin:0;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.05}.homeair-panel-header p{color:#40536f;margin:0;font-weight:780;line-height:1.55}.homeair-intro-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.homeair-intro-grid div{background:#f7fbff;border:1px solid #dce9f5;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;padding:14px;display:grid}.homeair-intro-grid strong{background:var(--green);width:30px;height:30px;color:var(--blue-dark);border-radius:50%;grid-row:span 2;place-items:center;font-weight:1000;display:grid}.homeair-intro-grid span{color:var(--blue-dark);font-size:.9rem;font-weight:1000}.homeair-intro-grid small{color:#607089;font-size:.78rem;font-weight:760;line-height:1.35}.homeair-request-form{grid-template-columns:minmax(0,1fr);gap:22px}.homeair-request-form label{color:var(--blue-dark);font-weight:900}.homeair-request-form .full-field{grid-column:1/-1}.homeair-form-section,.homeair-notes-field{background:#fbfdff;border:1px solid #dce9f5;border-radius:16px;gap:16px;padding:18px;display:grid}.homeair-section-heading{gap:4px;display:grid}.homeair-section-heading span{color:var(--blue);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:1000}.homeair-section-heading p{color:#62728a;margin:0;font-size:.9rem;font-weight:760}.homeair-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.homeair-options-disclosure{gap:14px;display:grid}.homeair-options-add-button{width:fit-content;min-height:48px;color:var(--blue-dark);font:inherit;cursor:pointer;background:#fff;border:2px solid #cfe0ee;border-radius:999px;justify-content:flex-start;align-items:center;gap:10px;padding:10px 16px 10px 12px;font-size:.92rem;font-weight:1000;display:inline-flex;box-shadow:0 12px 26px #00468214}.homeair-options-add-button:hover,.homeair-options-add-button:focus-visible{border-color:var(--blue);outline:none;box-shadow:0 16px 34px #299ed92e}.homeair-options-add-button small{color:#607089;font-size:.78rem;font-weight:900}.homeair-options-add-icon{background:var(--green);width:28px;height:28px;color:var(--blue-dark);border-radius:999px;place-items:center;font-size:1.35rem;font-weight:1000;line-height:1;display:grid}.homeair-options-panel{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe7f2;border-radius:18px;gap:16px;padding:18px;display:grid;box-shadow:inset 0 1px #ffffffd9}.homeair-options-panel-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.homeair-options-panel-header strong{color:var(--blue-dark);font-size:1rem;font-weight:1000}.homeair-options-panel-header span{color:#607089;font-size:.78rem;font-weight:900}.homeair-field-hint{color:#607089;margin-top:8px;font-size:.78rem;font-weight:760;line-height:1.4;display:block}.homeair-access-panel,.homeair-empty-state{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dce9f5}.homeair-empty-state{border-radius:16px;gap:8px;padding:18px;display:grid}.homeair-empty-state strong{color:var(--blue-dark);font-size:1rem;font-weight:1000}.homeair-empty-state p{color:#53647d;margin:0;font-weight:760;line-height:1.5}.homeair-confirmation{color:var(--blue-dark);background:linear-gradient(#f7fffb 0%,#fff 100%);border:1px solid #cdeee0;border-radius:20px;gap:18px;padding:20px;display:grid}.homeair-confirmation-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.homeair-confirmation-icon{background:#17a66a;border-radius:999px;place-items:center;width:58px;height:58px;animation:.45s ease-out both confirmation-pop;display:grid;position:relative;box-shadow:0 14px 30px #17a66a38}.homeair-confirmation-icon:after{content:"";border-left:4px solid var(--white);border-bottom:4px solid var(--white);transform-origin:50%;width:24px;height:13px;animation:.28s ease-out .25s both confirmation-check;transform:rotate(-45deg)scale(0)}.homeair-confirmation-header span{color:#17a66a;letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:900}.homeair-confirmation h3{color:var(--blue-dark);margin:3px 0 4px;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.12}.homeair-confirmation p{color:#334155;margin:0;font-weight:750;line-height:1.5}.homeair-status-pill{background:var(--green);min-height:34px;color:var(--blue-dark);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:.78rem;font-weight:1000;display:inline-flex}.homeair-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.homeair-summary-item{background:#edf7ff;border-radius:14px;gap:4px;padding:12px;display:grid}.homeair-summary-item span{color:#57708f;text-transform:uppercase;font-size:.72rem;font-weight:1000}.homeair-summary-item strong{color:var(--blue-dark);font-size:.9rem;font-weight:1000;line-height:1.35}.homeair-confirmation-footer{gap:4px;padding-top:2px;display:grid}.homeair-confirmation-footer p{color:#334155}.homeair-confirmation-footer small{color:#607089;font-weight:850}.homeair-confirmation-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.homeair-confirmation-actions .btn{text-align:center;width:100%}@keyframes confirmation-pop{0%{opacity:0;transform:scale(.76)}to{opacity:1;transform:scale(1)}}@keyframes confirmation-check{0%{transform:rotate(-45deg)scale(0)}to{transform:rotate(-45deg)scale(1)}}.portal-submit{background:var(--blue);color:var(--white)}.portal-status{margin:0}.portal-link-button{color:var(--blue);font:inherit;cursor:pointer;text-align:center;background:0 0;border:0;font-weight:900}.portal-link-button:hover{color:var(--blue-dark)}.portal-auth-help{color:#334155;margin:-4px 0 2px;font-size:.92rem;font-weight:700;line-height:1.45}.portal-dashboard-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.portal-dashboard-header>div{min-width:0}.portal-dashboard-header h2{max-width:100%;color:var(--white);overflow-wrap:anywhere;margin:16px 0 12px;font-size:clamp(1.75rem,5vw,3rem);font-weight:900;line-height:1.05}.portal-dashboard-header p{color:var(--blue-dark);margin:0;font-weight:800}.portal-dashboard-header .portal-submit:hover,.admin-create-submit:hover,.admin-create-submit:focus-visible{background:var(--blue);color:var(--white);transform:translateY(-1px);box-shadow:0 12px 26px #2596d447}.portal-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:-8px 0 22px;display:grid}.portal-feature-card{background:#ffffffeb;border:2px solid #ffffffb3;border-radius:18px;gap:6px;min-height:112px;padding:18px;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 14px 32px #0626501f}.portal-feature-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px #06265029}.portal-feature-card strong{color:var(--blue-dark);font-weight:900}.portal-feature-card span{color:#334155;font-size:.84rem;font-weight:800;line-height:1.3}.notification-permission-panel{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.notification-permission-panel h3{margin-bottom:6px}.notification-permission-panel p{margin:0}.notification-permission-panel small{color:#1d4ed8;margin-top:8px;font-weight:800;display:block}.notification-enabled-status{color:#14532d;text-align:center;background:#dcfce7;border-radius:999px;flex:none;min-width:184px;padding:12px 16px;font-size:.86rem;font-weight:900}.notification-disabled-status{color:#475569;background:#edf2f7}.notification-permission-panel .compact-btn{background:var(--green-light);min-width:220px;color:var(--blue-dark)}.notification-permission-panel .compact-btn:hover,.notification-permission-panel .compact-btn:focus-visible{background:var(--green);color:var(--blue-dark)}.compact-btn{width:auto;min-width:132px;padding-inline:18px}.employee-portal-section .portal-dashboard-header p{color:var(--green-soft)}.portal-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.portal-dashboard-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.calendar-page-grid{grid-template-columns:1fr;min-width:0;max-width:100%}.calendar-page-grid .portal-panel.large{grid-column:1/-1;min-width:0;max-width:100%}.portal-panel{padding:26px}.portal-panel.large{grid-column:span 2}.portal-panel h3{color:var(--blue-dark);margin-bottom:16px;font-size:1.25rem;font-weight:900}.route-loading{min-height:60vh;color:var(--blue-dark);place-items:center;padding:48px 24px;font-weight:900;display:grid}.portal-panel p,.portal-panel li{color:#334155;font-weight:700}.portal-list,.employee-request-list,.portal-task-list{gap:12px;display:grid}.portal-list article,.employee-request-list article{background:#f8fbff;border:2px solid #e4ebf2;border-radius:18px;justify-content:space-between;gap:16px;padding:16px;display:flex}.portal-list strong,.employee-request-list strong{color:var(--blue-dark);font-weight:900;display:block}.portal-list span,.employee-request-list span,.employee-request-list small{color:#334155;font-weight:700;display:block}.portal-list small{color:var(--blue);align-self:center;font-weight:900}.client-request-card{align-items:stretch}.client-request-summary{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;padding:0}.client-request-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.client-request-actions .btn{width:auto;min-height:42px;margin:0}.modal-client-actions{margin-top:18px}.admin-dashboard-grid{grid-template-columns:1fr;align-items:start}.admin-dashboard-grid .admin-side-column{display:none}.admin-contacts-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media (width>=901px){.history-page-grid{grid-template-columns:minmax(0,1fr);justify-content:stretch}.contacts-page-grid{grid-template-columns:minmax(0,920px);justify-content:center}.history-page-grid>.portal-panel.large,.contacts-page-grid>.portal-panel.large{grid-column:auto;width:100%}.admin-contacts-page-grid{grid-template-columns:minmax(420px,1.25fr) minmax(280px,.75fr);align-items:start;width:min(100%,1100px);margin-inline:auto}.admin-contacts-page-grid .portal-panel.large{grid-column:auto}.admin-contacts-page-grid .directory-panel{min-width:0}.admin-contacts-page-grid .admin-employees-panel{justify-self:stretch;max-width:430px}.admin-contacts-page-grid .admin-employee-list{grid-template-columns:1fr}.admin-contacts-page-grid .admin-employee-list article{padding:14px 16px}}.client-dashboard-grid>.homeair-request-panel,.client-dashboard-grid>.client-history-panel{display:none}.admin-side-column{align-self:start;gap:20px;display:grid}.admin-panel-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.admin-panel-title h3{margin-bottom:0}.admin-panel-title span{background:var(--green);min-height:32px;color:var(--blue-dark);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;font-size:.82rem;font-weight:900;display:inline-flex}.admin-reservation-card{align-items:stretch;transition:transform .2s,border-color .2s,box-shadow .2s}.admin-reservation-card:hover{border-color:#0071b83d;transform:translateY(-2px);box-shadow:0 14px 28px #06265017}.admin-reservation-main{min-width:0}.admin-reservation-main p{margin-top:8px;font-size:.9rem}.admin-reservation-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:10px;min-width:min(460px,100%);display:grid}.admin-reservation-actions label{color:var(--blue-dark);gap:6px;font-size:.78rem;font-weight:900;display:grid}.admin-reservation-actions select{min-height:40px;color:var(--blue-dark);appearance:none;cursor:pointer;background:linear-gradient(135deg,#fffffffa,#eef7fffa),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230071b8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 11px center no-repeat;border:2px solid #d7e5f2;border-radius:12px;padding:8px 34px 8px 12px;font-size:.86rem;font-weight:900;transition:border-color .2s,box-shadow .2s,transform .2s,background-color .2s}.admin-reservation-actions select:hover{border-color:var(--blue);transform:translateY(-1px);box-shadow:0 8px 18px #0071b81f}.admin-reservation-actions select:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 4px #b5ff4b57}.admin-save-button{background:var(--green);min-height:40px;color:var(--blue-dark);border:0;grid-column:1/-1;padding:10px 14px;font-size:.82rem;font-weight:900;transition:transform .2s,box-shadow .2s,opacity .2s}.admin-save-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 12px 24px #6fb9003d}.admin-save-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.clickable-card{cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.clickable-card:hover,.clickable-card:focus-visible{border-color:#0097d759;outline:none;transform:translateY(-1px);box-shadow:0 14px 30px #06265014}.employee-dashboard-grid{align-items:start}.employee-next-card{border:1px solid #d9e5f0;border-left:5px solid var(--blue);width:100%;min-height:168px;color:var(--blue-dark);text-align:left;font:inherit;background:linear-gradient(#fff 0%,#f8fbff 100%);border-radius:12px;gap:14px;padding:18px 20px;display:grid;box-shadow:0 10px 24px #06265014}.employee-next-card-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.employee-next-client{color:var(--blue-dark);overflow-wrap:anywhere;font-size:1.15rem;font-weight:900;line-height:1.2}.employee-next-card span{color:var(--blue);font-size:.9rem;font-weight:900}.employee-next-card p{color:#334155;margin:0;font-weight:800}.employee-next-service{min-width:0;color:var(--blue);text-transform:uppercase;overflow-wrap:anywhere;font-size:.78rem;font-weight:900;line-height:1.2}.employee-next-status{max-width:45%;color:var(--blue-dark);overflow-wrap:anywhere;background:#b5ff4b52;border-radius:999px;flex:none;padding:5px 9px;font-size:.72rem;font-weight:900;line-height:1.2}.employee-next-detail-row{border-top:1px solid #e5edf5;gap:3px;min-width:0;padding-top:12px;display:grid}.employee-next-detail-row>span{color:#64748b;text-transform:uppercase;font-size:.72rem;font-weight:900;line-height:1.2}.employee-next-detail-row>strong{color:#26364a;overflow-wrap:anywhere;font-size:.92rem;font-weight:800;line-height:1.35}.employee-history-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.employee-history-header h3{margin-bottom:6px}.employee-history-header p{color:#475569;margin:0;font-size:.92rem;line-height:1.45}.employee-history-month{min-width:160px;max-width:220px;color:var(--blue-dark);text-transform:uppercase;gap:6px;font-size:.76rem;font-weight:900;display:grid}.employee-history-month input{box-sizing:border-box;width:100%;min-height:42px;color:var(--blue-dark);font:inherit;text-transform:none;background:#f8fbff;border:2px solid #dbe7f3;border-radius:14px;padding:8px 10px}.employee-history-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.employee-history-stats>div{background:#f8fbff;border:2px solid #e4ebf2;border-radius:18px;min-width:0;padding:16px}.employee-history-stats span{color:#64748b;text-transform:uppercase;font-size:.76rem;font-weight:900;line-height:1.2;display:block}.employee-history-stats strong{color:var(--blue-dark);margin-top:4px;font-size:1.45rem;font-weight:900;line-height:1.1;display:block}.admin-create-panel{box-shadow:none}.admin-create-header{border-bottom:1px solid #e2e8f0;margin-bottom:18px;padding-bottom:16px}.admin-create-header span{color:var(--blue);text-transform:uppercase;margin-bottom:8px;padding-left:2px;font-size:.78rem;font-weight:900;line-height:1.25;display:inline-flex}.admin-create-header h3{color:var(--blue-dark);margin:0 0 8px;font-size:clamp(1.35rem,2vw,1.85rem)}.admin-create-header p{color:#475569;max-width:640px;margin:0;font-size:.92rem;font-weight:750;line-height:1.5}.admin-create-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-create-form .full-field{grid-column:1/-1}.admin-create-form .form-field{color:#0f2748;gap:8px;min-width:0;font-size:.82rem;font-weight:900;display:grid}.admin-create-form .form-field span{line-height:1.2}.field-hint{color:#496278;font-size:.78rem;font-weight:800;line-height:1.35}.admin-create-form input,.admin-create-form select,.admin-create-form textarea{color:#10233f;width:100%;min-height:48px;font:inherit;background:#fff;border:1.5px solid #d8e2ed;border-radius:12px;outline:none;padding:12px 14px;font-weight:750;transition:border-color .18s,box-shadow .18s,background .18s}.admin-create-form textarea{resize:vertical;min-height:116px;line-height:1.45}.admin-create-form input:focus,.admin-create-form select:focus,.admin-create-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #0097d724}.business-time-input{box-sizing:border-box;appearance:none;font-variant-numeric:tabular-nums;text-align:left;text-overflow:clip;width:100%;min-width:0;max-width:100%;overflow:visible}.client-picker-field,.client-combobox{position:relative}.client-combobox input{padding-right:52px}.client-combobox-toggle{width:36px;height:36px;color:var(--blue);cursor:pointer;background:#eef6ff;border:0;border-radius:50%;justify-content:center;align-items:center;transition:background .18s,color .18s,transform .18s;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.client-combobox-toggle:before{content:"";border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;transform:translateY(-2px)rotate(45deg)}.client-combobox-toggle:hover,.client-combobox-toggle:focus-visible{background:var(--green);color:var(--blue-dark);outline:none}.client-combobox-toggle[aria-expanded=true]:before{transform:translateY(2px)rotate(225deg)}.client-picker-menu{z-index:20;background:#fff;border:1px solid #d8e2ed;border-radius:14px;gap:4px;max-height:260px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 18px 42px #0f233f29}.client-picker-menu button{min-height:38px;color:var(--blue-dark);text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;border-radius:10px;padding:9px 10px;font-size:.86rem;font-weight:900}.client-picker-menu button:hover,.client-picker-menu button:focus-visible{color:var(--blue);background:#edf7ff;outline:none}.homair-options-field{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe7f2;border-radius:18px;padding:16px}.homair-options-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.homair-option-toggle{color:#10233f;width:100%;min-height:58px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:2px solid #d7e5f2;border-radius:16px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;font-weight:900;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:grid;box-shadow:0 10px 22px #002a4c0f}.homair-option-toggle:hover,.homair-option-toggle:focus-visible,.homair-option-toggle.active{border-color:var(--blue);background:#eef9ff;outline:none;transform:translateY(-1px);box-shadow:0 16px 30px #299ed924}.homair-option-toggle.active{border-color:var(--green);background:linear-gradient(#f4ffe8 0%,#ecfbff 100%)}.homair-option-indicator{background:#fff;border:2px solid #c8d9e8;border-radius:999px;place-items:center;width:22px;height:22px;display:grid}.homair-option-toggle.active .homair-option-indicator{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 5px #fff}.homair-option-label{overflow-wrap:anywhere;min-width:0;line-height:1.25}.recurrence-card{background:#f8fbff;border:1px solid #dbe7f2;border-radius:16px;gap:14px;padding:16px;display:grid}.recurrence-row{grid-template-columns:180px minmax(0,1fr);gap:14px;display:grid}.weekday-toggle-grid{flex-wrap:wrap;gap:8px;display:flex}.weekday-toggle{color:#214464;cursor:pointer;background:#fff;border:1.5px solid #d6e4f0;border-radius:999px;min-height:38px;padding:8px 12px;font-size:.78rem;font-weight:900;transition:transform .18s,background .18s,border-color .18s}.weekday-toggle.active{border-color:var(--blue);background:var(--blue);color:#fff;transform:translateY(-1px)}.weekday-toggle:hover{color:#214464;background:#fff;border-color:#a9cee9;transform:translateY(-1px)}.weekday-toggle.active:hover{border-color:var(--blue);background:var(--blue);color:#fff}.recurrence-preview{color:var(--blue-dark);background:#eaf8ff;border-radius:12px;margin:0;padding:10px 12px;font-size:.82rem;font-weight:900}.address-field{position:relative}.address-suggestions{z-index:12;background:#fff;border:1px solid #d8e2ed;border-radius:14px;max-height:240px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 18px 42px #0f233f24}.address-suggestions p,.address-suggestions button{color:#243b55;text-align:left;background:0 0;border:0;border-radius:10px;margin:0;padding:10px 12px;font-size:.86rem;font-weight:800}.address-suggestions button{cursor:pointer}.address-suggestions button:hover{color:var(--blue);background:#edf7ff}.reservation-address-suggestions button{gap:3px;line-height:1.25;display:grid}.reservation-address-suggestions .address-suggestion-main{color:#1f3654;font-size:.92rem;font-weight:900;display:block}.reservation-address-suggestions .address-suggestion-meta{color:#5f7286;font-size:.8rem;font-weight:800;display:block}.reservation-address-suggestions button:hover .address-suggestion-main,.reservation-address-suggestions button:hover .address-suggestion-meta{color:var(--blue)}.homair-lodging-field select{cursor:pointer}.homair-lodging-empty{color:#496278;background:#f8fbff;border:1.5px dashed #cfe0ee;border-radius:14px;min-height:48px;padding:13px 14px;font-size:.86rem;font-weight:900;line-height:1.35}.admin-create-submit{justify-self:end;width:min(280px,100%);min-height:50px}.danger-action-button{color:#b91c1c;background:#fff5f5;border-color:#fecaca;margin-top:16px}.admin-reservation-actions .client-request-archive-button,.client-request-detail-actions .client-request-archive-button{color:#b91c1c;background:#fff7f7;border:1px solid #fecaca;margin-top:0;box-shadow:0 8px 18px #b91c1c1f}.admin-reservation-actions .client-request-archive-button:hover,.admin-reservation-actions .client-request-archive-button:focus-visible,.client-request-detail-actions .client-request-archive-button:hover,.client-request-detail-actions .client-request-archive-button:focus-visible{color:#991b1b;background:#fee2e2;box-shadow:0 10px 22px #b91c1c29}.portal-action-modal{--modal-inline-padding:18px;width:min(920px,100vw - 24px);padding:18px}.portal-action-modal .portal-panel{background:0 0;border:0;padding:0}.admin-summary-panel{align-self:start;width:100%;min-width:0;padding:18px}.admin-summary-panel p{color:var(--blue);font-size:2rem;font-weight:900;line-height:1}.admin-summary-panel small{color:#334155;margin-top:8px;font-weight:800;display:block}.admin-employees-panel{align-self:start}.admin-employee-list{gap:10px;display:grid}.admin-employee-list article{background:#f8fbff;border:2px solid #e4ebf2;border-radius:14px;gap:3px;padding:12px;display:grid}.admin-employee-list strong{color:var(--blue-dark);font-weight:900}.admin-employee-list span{color:#334155;overflow-wrap:anywhere;font-size:.88rem;font-weight:700}.admin-employee-list small{color:#475569;overflow-wrap:anywhere;font-size:.82rem;font-weight:700;line-height:1.35}.admin-employee-list .employee-address{color:#64748b}.directory-panel,.communication-panel{align-self:start}.directory-search{color:var(--blue-dark);gap:8px;margin-bottom:12px;font-size:.78rem;font-weight:900;display:grid}.directory-search input{min-height:42px;color:var(--blue-dark);border:2px solid #d7e5f2;border-radius:12px;padding:10px 12px;font-weight:800}.directory-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.directory-filter-controls label{color:var(--blue-dark);gap:8px;font-size:.78rem;font-weight:900;display:grid}.directory-filter-controls select{width:100%;min-height:42px;color:var(--blue-dark);font:inherit;background:#f8fbff;border:2px solid #d7e5f2;border-radius:12px;padding:9px 12px;font-size:.86rem;font-weight:900}@media (width<=560px){.directory-filter-controls{grid-template-columns:1fr}}.directory-list{gap:10px;display:grid}.directory-list article,.directory-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#f8fbff;border:2px solid #e4ebf2;border-radius:14px;grid-template-columns:42px 1fr;align-items:center;gap:10px;padding:12px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid}.directory-row:hover{border-color:#0071b83d;transform:translateY(-1px);box-shadow:0 12px 24px #06265014}.portal-see-more{background:var(--blue);width:fit-content;min-height:40px;color:var(--white);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;margin-top:14px;padding:9px 16px;font-size:.82rem;font-weight:900;display:inline-flex}.list-pagination-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.list-pagination-actions .portal-see-more{margin-top:0}.secondary-see-more{color:var(--blue);background:#edf7ff}.calendar-filter-panel{gap:16px;display:grid}.calendar-filter-panel p{color:#334155;margin:4px 0 0;font-weight:700}.schedule-view-badge{width:fit-content;min-height:28px;color:var(--blue-dark);background:#e9f7ff;border:1px solid #b8ddf5;border-radius:999px;align-items:center;margin-top:8px;padding:5px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.schedule-readonly-note{color:#64748b;margin-top:8px;font-size:.78rem;font-weight:800;display:block}.calendar-filter-list{flex-wrap:wrap;gap:10px;display:flex}.calendar-filter-list label{min-height:42px;color:var(--blue-dark);cursor:pointer;background:#f8fbff;border:2px solid #d7e5f2;border-radius:999px;align-items:center;gap:12px;padding:9px 15px;font-size:.82rem;font-weight:900;line-height:1.2;display:inline-flex}.calendar-filter-list input{width:16px;height:16px;accent-color:var(--blue);flex:none}.calendar-filter-dropdown{width:min(430px,100%);max-width:100%;color:var(--blue-dark)}.calendar-filter-dropdown summary{background:var(--white);cursor:pointer;border:1px solid #c9dcec;border-radius:14px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:4px 14px;min-height:62px;padding:12px 12px 12px 16px;list-style:none;display:grid;box-shadow:0 10px 26px #0f172a14}.calendar-filter-dropdown summary::-webkit-details-marker{display:none}.calendar-filter-dropdown summary:after{content:"";border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);justify-self:center;width:9px;height:9px;transition:transform .2s;transform:rotate(45deg)}.calendar-filter-dropdown[open] summary:after{transform:rotate(225deg)}.calendar-filter-dropdown summary span,.calendar-filter-menu span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-filter-dropdown summary span{font-size:.95rem;font-weight:900}.calendar-filter-dropdown summary small{color:#64748b;grid-column:1;font-size:.74rem;font-weight:900}.calendar-filter-menu{background:var(--white);border:1px solid #c9dcec;border-radius:18px;gap:6px;max-height:280px;margin-top:10px;padding:10px;display:grid;overflow-y:auto;box-shadow:0 18px 40px #0f172a24}.calendar-filter-menu label{width:100%;min-height:50px;color:var(--blue-dark);cursor:pointer;box-sizing:border-box;border-radius:12px;grid-template-columns:24px minmax(0,1fr);align-items:center;column-gap:16px;padding:11px 12px;font-size:.84rem;font-weight:900;line-height:1.22;display:grid}.calendar-filter-menu label:hover{background:#edf7ff}.calendar-filter-menu input{width:18px;height:18px;accent-color:var(--blue);flex:none;justify-self:center;margin:0}.calendar-filter-menu span{max-width:100%;display:block}@media (width>=901px){.calendar-filter-panel{grid-template-columns:minmax(0,1fr) minmax(260px,360px) auto;align-items:center;gap:18px;position:relative}.calendar-filter-dropdown{justify-self:end;width:min(360px,100%);position:relative}.calendar-filter-dropdown[open]{z-index:45}.calendar-filter-menu{z-index:45;width:min(360px,100vw - 48px);max-height:260px;margin-top:0;position:absolute;top:calc(100% + 8px);right:0}.calendar-filter-panel .portal-link-button{white-space:nowrap;justify-self:start}}.directory-avatar{background:var(--blue);width:42px;height:42px;color:var(--white);text-transform:uppercase;border-radius:12px;place-items:center;font-weight:900;display:grid}.directory-list strong,.directory-list span,.directory-list small{overflow-wrap:anywhere;display:block}.directory-list strong{color:var(--blue-dark);font-weight:900}.directory-list span{color:var(--blue);font-size:.84rem;font-weight:900}.directory-list small{color:#334155;font-size:.78rem;font-weight:700}.communication-grid{gap:10px;display:grid}.communication-grid a{background:var(--green);color:var(--blue-dark);border-radius:14px;gap:4px;padding:14px;display:grid}.communication-grid strong{font-weight:900}.communication-grid span{overflow-wrap:anywhere;font-size:.86rem;font-weight:800}.employee-calendar-grid{align-items:start}.weekly-planning-panel,.employee-calendar-panel,.weekly-next-panel,.employee-next-panel{grid-column:1/-1}.weekly-planning-panel{min-width:0;max-width:100%;padding:22px;overflow:hidden}.portal-dashboard-grid:not(.calendar-page-grid)>.weekly-planning-panel,.employee-calendar-grid>.employee-calendar-panel{display:none}.employee-next-panel{order:-1}.employee-calendar-panel{position:relative}.employee-calendar-header{text-align:center;place-items:center;gap:12px;min-width:0;margin-bottom:14px;display:grid;position:relative}.employee-calendar-header>div{min-width:0}.employee-calendar-header h3{margin-bottom:4px}.employee-calendar-header span{color:var(--blue);font-weight:900}.employee-calendar-controls{background:#edf7ffc7;border:1px solid #0068dd1f;border-radius:14px;grid-template-columns:42px minmax(104px,auto) minmax(118px,auto) 42px;justify-content:center;align-items:center;gap:8px;width:fit-content;max-width:100%;margin-inline:auto;padding:4px;display:inline-grid;box-shadow:inset 0 1px #ffffffbf}.employee-calendar-controls button,.calendar-week-picker{background:var(--white);min-height:40px;color:var(--blue-dark);cursor:pointer;border:1px solid #0068dd29;border-radius:10px;place-items:center;padding:8px 10px;font-size:.78rem;font-weight:900;transition:background .2s,border-color .2s,box-shadow .2s,color .2s,transform .2s;display:inline-grid;position:relative;box-shadow:0 4px 12px #12385814}.employee-calendar-controls button:hover,.calendar-week-picker:hover{background:#f8fcff;border-color:#0068dd52;transform:translateY(-1px);box-shadow:0 8px 18px #0068dd29}.employee-calendar-controls button:focus-visible,.calendar-week-picker:focus-within{outline-offset:2px;outline:3px solid #0068dd38}.employee-calendar-controls button:active,.calendar-week-picker:active{transform:translateY(0);box-shadow:0 3px 8px #1238581a}.calendar-nav-button.icon-only{aspect-ratio:1;width:42px;padding:0}.calendar-nav-button.today-button{background:linear-gradient(#fff 0%,#f7fbff 100%);grid-template-columns:16px auto;justify-content:center;gap:8px}.calendar-week-picker{background:linear-gradient(#fff 0%,#f7fbff 100%);grid-template-columns:16px auto;justify-content:center;gap:8px;overflow:hidden}.calendar-week-picker input{opacity:0;pointer-events:none;border:0;width:100%;height:100%;position:absolute;inset:0}.calendar-quick-create-button{display:none}@media (width>=769px){.employee-calendar-header.has-quick-create{padding-inline:58px}.calendar-quick-create-button{background:linear-gradient(135deg, var(--green), var(--green-light));width:46px;height:46px;color:var(--blue-dark);cursor:pointer;border:1px solid #0068dd29;border-radius:999px;place-items:center;padding:0;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s;display:grid;position:absolute;top:0;right:0;box-shadow:0 14px 28px #12385824}.calendar-quick-create-button span{color:inherit;font-size:1.7rem;font-weight:1000;line-height:1;transform:translateY(-1px)}.calendar-quick-create-button:hover,.calendar-quick-create-button:focus-visible{background:linear-gradient(135deg, var(--green-light), var(--green));border-color:#0068dd47;transform:translateY(-2px);box-shadow:0 18px 34px #0068dd33}.calendar-quick-create-button:focus-visible{outline-offset:2px;outline:3px solid #0068dd38}}@media (width<=768px){.calendar-detail-backdrop.confirmation-email-backdrop{place-items:center}}.calendar-nav-icon{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.calendar-nav-today-icon{border:2px solid;border-radius:4px;width:15px;height:15px;position:relative}.calendar-nav-today-icon:before{content:"";border-top:2px solid;position:absolute;top:3px;left:2px;right:2px}.employee-week-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.employee-week-day{background:#f8fbff;border:2px solid #e4ebf2;border-radius:16px;grid-template-rows:auto 1fr;min-width:0;min-height:360px;display:grid;overflow:hidden}.employee-week-day.is-public-holiday{background:repeating-linear-gradient(135deg,#2a9ed80f 0 6px,#0000 6px 14px),#f8fbff;border-color:#2a9ed83d}.employee-week-day header{background:linear-gradient(135deg, var(--blue), #0071b8);gap:2px;padding:12px;display:grid;position:relative}.employee-week-day.is-public-holiday header{padding-right:44px}.employee-week-day header span,.employee-week-day header strong{color:var(--white);text-transform:capitalize}.employee-week-day header span{font-size:.76rem;font-weight:900}.employee-week-day header strong{font-size:.95rem;line-height:1.1}.calendar-public-holiday-marker{width:26px;height:18px;color:var(--blue-dark);letter-spacing:0;background:#90e64f42;border:1px solid #2a9ed84d;border-radius:999px;place-items:center;font-size:.58rem;font-weight:1000;line-height:1;display:inline-grid}.employee-week-day header .calendar-public-holiday-marker{position:absolute;top:10px;right:10px}.employee-week-events{align-content:start;gap:7px;padding:8px;display:grid}.employee-week-events>p{color:#64748b;font-size:.82rem;font-weight:800}.employee-calendar-empty-message{color:#64748b;margin:10px 0 0;font-size:.86rem;font-weight:800}.employee-week-event{border:0;border-left:4px solid var(--green);text-align:left;cursor:pointer;background:#fff;border-radius:12px;gap:4px;width:100%;padding:8px;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 8px 18px #06265014}.employee-week-event:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 12px 24px #0626501f}.employee-week-event:disabled{cursor:default}.employee-week-event strong,.employee-week-event span,.employee-week-event small,.employee-week-event p{overflow-wrap:normal;word-break:normal;min-width:0;overflow:hidden}.employee-week-event strong{color:var(--blue-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;font-weight:900;line-height:1.15;display:-webkit-box}.employee-week-event span,.employee-week-event p{color:#334155;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.68rem;font-weight:700;line-height:1.18;display:-webkit-box}.employee-week-event small{color:var(--blue);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.66rem;font-weight:900;line-height:1.18;display:-webkit-box}.employee-outlook-calendar{display:none}@media (width>=901px){.weekly-planning-panel .employee-week-calendar{display:none}.employee-outlook-calendar{--calendar-axis-label-space:18px;background:var(--white);contain:inline-size;overscroll-behavior-x:contain;border:2px solid #dfeaf4;border-radius:18px;width:100%;min-width:0;max-width:100%;max-height:min(760px,100vh - 260px);display:grid;overflow:auto;box-shadow:inset 0 1px #fffc}.employee-outlook-header{z-index:5;background:var(--white);border-bottom:2px solid #dfeaf4;grid-template-columns:72px repeat(7,minmax(132px,1fr));width:max(100%,1040px);min-width:0;display:grid;position:sticky;top:0}.employee-outlook-gutter,.employee-outlook-day-heading{min-width:0;color:var(--blue-dark);text-align:center;border-right:1px solid #e5edf6;padding:12px 10px;font-size:.78rem;font-weight:900}.employee-outlook-gutter{color:#64748b;background:#f8fbff;place-items:center;display:grid}.employee-outlook-day-heading{text-transform:capitalize;gap:2px;display:grid;position:relative}.employee-outlook-day-heading.is-public-holiday{background:repeating-linear-gradient(135deg,#2a9ed80f 0 6px,#0000 6px 14px),#f8fbff;padding-right:42px}.employee-outlook-day-heading .calendar-public-holiday-marker{position:absolute;top:8px;right:8px}.employee-outlook-day-heading span{color:var(--blue)}.employee-outlook-day-heading strong{color:var(--blue-dark);font-size:.92rem}.employee-outlook-body{width:max(100%,1040px);min-width:0;height:calc((var(--calendar-hours) * var(--calendar-hour-height)) + (var(--calendar-axis-label-space) * 2));grid-template-columns:72px repeat(7,minmax(132px,1fr));display:grid;position:relative}.employee-outlook-time-axis{background:#f8fbff;border-right:2px solid #dfeaf4;position:relative}.employee-outlook-time-axis span{top:calc(var(--calendar-axis-label-space) + var(--hour-top));color:#64748b;font-size:.72rem;font-weight:900;position:absolute;right:10px;transform:translateY(-50%)}.employee-outlook-day{background:linear-gradient(#fff 0%,#fbfdff 100%);border-right:1px solid #e5edf6;min-width:0;position:relative}.employee-outlook-day.is-public-holiday{background:repeating-linear-gradient(135deg,#2a9ed80d 0 6px,#0000 6px 16px),linear-gradient(#fff 0%,#fbfdff 100%)}.employee-outlook-day-grid{inset:var(--calendar-axis-label-space) 0 var(--calendar-axis-label-space) 0;grid-template-rows:repeat(var(--calendar-hours), var(--calendar-hour-height));pointer-events:none;display:grid;position:absolute}.employee-outlook-day-grid span{border-bottom:1px solid #edf3f9}.employee-outlook-event{top:calc(var(--calendar-axis-label-space) + var(--event-top));left:calc(8px + (((100% - 16px) / var(--event-column-count)) * var(--event-column-index)));width:calc(((100% - 16px) / var(--event-column-count)) - 6px);height:max(var(--event-height), 72px);border:0;border-left:4px solid var(--green);background:var(--white);color:var(--blue-dark);text-align:left;cursor:pointer;border-radius:12px;align-content:start;gap:3px;padding:8px 10px;transition:transform .2s,box-shadow .2s;display:grid;position:absolute;overflow:hidden;box-shadow:0 10px 22px #0626501a}.employee-outlook-event.compact{gap:2px;padding:7px 8px}.employee-outlook-event:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 14px 28px #06265024}.employee-outlook-event:disabled{cursor:default}.employee-outlook-event time,.employee-outlook-event strong,.employee-outlook-event span,.employee-outlook-event small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.employee-outlook-event time{color:var(--blue);font-size:.72rem;font-weight:900}.employee-outlook-event strong{color:var(--blue-dark);font-size:.78rem;font-weight:900}.employee-outlook-event span{color:#334155;font-size:.72rem;font-weight:800}.employee-outlook-event small{color:#64748b;font-size:.68rem;font-weight:800}.employee-outlook-event.compact time{font-size:.68rem}.employee-outlook-event.compact strong,.employee-outlook-event.compact span{font-size:.7rem}}.employee-calendar-list{gap:14px;display:grid}.employee-calendar-item{background:#f8fbff;border:2px solid #e4ebf2;border-radius:18px;grid-template-columns:68px 1fr auto;align-items:center;gap:16px;padding:16px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid}.employee-calendar-item:hover{border-color:#0071b83d;transform:translateY(-2px);box-shadow:0 14px 28px #06265017}.calendar-detail-backdrop{z-index:1300;background:#04183073;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.calendar-detail-modal{--modal-inline-padding:26px;background:var(--white);border-radius:22px;width:min(620px,100%);max-height:min(760px,100vh - 36px);padding:26px;scroll-padding-top:70px;scroll-padding-bottom:120px;position:relative;overflow:auto;box-shadow:0 28px 70px #0418303d}.calendar-detail-modal h3{color:var(--blue-dark);margin:12px 0 8px;font-size:1.55rem;font-weight:900}.calendar-detail-subtitle{color:#475569;margin:0 0 18px;font-size:.92rem;font-weight:850;line-height:1.45}.history-request-modal{--modal-inline-padding:32px;width:min(860px,100%);padding:32px}.history-request-modal-subtitle{color:#475569;margin:0;font-size:1rem;font-weight:850;line-height:1.5}.history-request-modal-header{border-bottom:1px solid #e2e8f0;gap:12px;padding-bottom:22px;display:grid}.history-request-modal-header .badge{justify-self:start}.history-request-modal-header h3{margin:2px 0 0;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.12}.history-request-status-card{background:#f0fce8;border:1px solid #9be25ba6;border-radius:14px;justify-self:start;gap:5px;min-width:min(100%,250px);margin-top:4px;padding:13px 16px;display:grid}.history-request-status-card span{color:#31546c;text-transform:uppercase;font-size:.76rem;font-weight:900}.history-request-status-card strong{color:var(--blue-dark);font-size:1.02rem;font-weight:950}.history-request-modal-content{gap:22px;padding-top:22px;display:grid}.history-request-details{border-top:0;gap:14px;margin-top:0;padding-top:0}.history-request-details h4{font-size:1.08rem}.history-request-details .submitted-request-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.history-request-details .submitted-request-grid div{border-color:#d9e6f2;border-radius:14px;align-content:start;min-height:82px;padding:14px 16px}.history-request-details .submitted-request-grid .submitted-request-field-wide{grid-column:1/-1;min-height:auto}.history-request-details .submitted-request-grid strong{white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-size:.96rem;line-height:1.42}.history-request-modal .client-request-photo-gallery{margin-top:0;padding-top:20px}.history-request-modal .client-request-photo-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.history-request-modal .client-request-photo-card{padding:12px}@media (width<=760px){.history-request-modal{padding:24px 18px}.history-request-modal-header{gap:10px;padding-bottom:18px}.history-request-status-card{width:100%}.history-request-modal-content{gap:18px;padding-top:18px}.history-request-details .submitted-request-grid,.history-request-modal .client-request-photo-grid{grid-template-columns:minmax(0,1fr)}.history-request-details .submitted-request-grid div{min-height:auto}}.calendar-detail-modal dl{gap:12px;display:grid}.calendar-detail-modal dl div{background:#f8fbff;border:2px solid #e4ebf2;border-radius:14px;gap:4px;padding:12px;display:grid}.calendar-detail-modal dt{color:var(--blue);text-transform:uppercase;font-size:.76rem;font-weight:900}.calendar-detail-modal dd{color:#334155;overflow-wrap:anywhere;margin:0;font-weight:800}.submitted-request-details{border-top:1px solid #e2e8f0;gap:10px;margin-top:16px;padding-top:14px;display:grid}.submitted-request-details h4{color:var(--blue-dark);margin:0;font-size:1rem;font-weight:900}.submitted-request-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.submitted-request-grid div{background:#f8fbff;border:1px solid #dbe7f3;border-radius:12px;gap:4px;min-width:0;padding:10px 12px;display:grid}.submitted-request-grid span{color:#64748b;text-transform:uppercase;font-size:.76rem;font-weight:900}.submitted-request-grid strong{color:var(--blue-dark);overflow-wrap:anywhere;font-size:.92rem;font-weight:900}.client-request-detail-panel{border-top:1px solid #e2e8f0;gap:14px;margin-top:18px;padding-top:18px;display:grid}.client-request-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.client-request-detail-actions .btn{width:auto}.reservation-photo-field{gap:10px;display:grid}.reservation-photo-preview-list{gap:8px;display:grid}.reservation-photo-preview-card{background:#f8fbff;border:1px solid #dbe7f3;border-radius:12px;grid-template-columns:44px minmax(0,1fr) 34px;align-items:center;gap:10px;padding:10px;display:grid}.reservation-photo-thumb{background:linear-gradient(135deg,#2596d429,#9be25b47),#eef6ff;border-radius:10px;width:44px;height:44px}.reservation-photo-name,.client-request-photo-name{color:var(--blue-dark);overflow-wrap:anywhere;font-size:.9rem;font-weight:900;line-height:1.25;display:block}.reservation-photo-meta{color:#64748b;font-weight:800}.reservation-photo-remove{color:#475569;cursor:pointer;background:#eef2f7;border:0;border-radius:10px;width:34px;height:34px;font-size:1.1rem;font-weight:900}.reservation-photo-remove:hover,.reservation-photo-remove:focus-visible{color:#b42318;background:#fee2e2}.client-request-photo-gallery{border-top:1px solid #e2e8f0;gap:12px;margin-top:16px;padding-top:14px;display:grid}.client-request-photo-gallery-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.client-request-photo-gallery h4{color:var(--blue-dark);margin:0;font-size:1rem;font-weight:900}.client-request-photo-gallery-header span{color:#64748b;text-transform:uppercase;font-size:.78rem;font-weight:900}.client-request-photo-gallery p{color:#64748b;margin:0;font-weight:800}.client-request-photo-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.client-request-photo-card{background:#f8fbff;border:1px solid #dbe7f3;border-radius:12px;gap:8px;min-width:0;padding:10px;display:grid}.client-request-photo-card a{border-radius:10px;display:block;overflow:hidden}.client-request-photo-thumb{aspect-ratio:4/3;object-fit:cover;background:linear-gradient(135deg,#2596d429,#9be25b47),#eef6ff;border-radius:10px;width:100%;display:block}.client-request-photo-thumb.placeholder{min-height:105px}.client-request-photo-card small{color:#64748b;font-weight:800}.reservation-email-panel{background:#f8fbff;border:1px solid #dbe7f3;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px;display:flex}.reservation-email-panel div{gap:5px;min-width:0;display:grid}.reservation-email-panel h4{color:var(--blue-dark);margin:0;font-weight:900}.reservation-email-panel p{color:#334155;margin:0;font-weight:800;line-height:1.4}.reservation-email-panel small{color:#64748b;font-weight:800}.reservation-email-panel .email-status-failed{color:#b42318}.confirmation-email-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle at top,#2596d42e,#0000 34%),#06265047;padding:24px}.confirmation-email-modal{background:linear-gradient(180deg, #f8fbfffa 0%, var(--white) 42%), var(--white);border:1px solid #dbe7f3f2;border-radius:24px;gap:22px;width:min(640px,100%);padding:38px;display:grid;box-shadow:0 24px 64px #0626502e}.confirmation-email-modal .calendar-detail-close{width:36px;height:36px;color:var(--blue-dark);box-shadow:none;background:#eef6ff;margin:0;font-size:1.2rem;position:absolute;top:18px;right:18px}.confirmation-email-modal .calendar-detail-close:hover,.confirmation-email-modal .calendar-detail-close:focus-visible{color:var(--blue-dark);background:#dbeafe;box-shadow:0 10px 22px #0626501a}.confirmation-email-header{align-items:center;gap:16px;padding-right:44px;display:flex}.confirmation-email-icon{background:linear-gradient(135deg,#18863a,#9be25b);border-radius:18px;flex:none;width:52px;height:52px;position:relative;box-shadow:0 14px 28px #18863a38}.confirmation-email-icon:after{content:"";border-right:4px solid var(--white);border-bottom:4px solid var(--white);width:14px;height:22px;position:absolute;top:14px;left:17px;transform:rotate(42deg)}.confirmation-email-modal h3{color:var(--blue-dark);margin:0;font-size:clamp(1.65rem,2.1vw,1.9rem);font-weight:900;line-height:1.14}.confirmation-email-message{color:#475569;max-width:100%;margin:0;font-size:1rem;font-weight:800;line-height:1.55}.confirmation-email-modal .portal-status{background:#f8fbff;border-radius:14px;margin:0;padding:12px 14px}.confirmation-email-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.confirmation-email-actions .btn{text-align:center;justify-content:center;align-items:center;width:100%;min-height:54px;padding:14px 20px;display:inline-flex}.confirmation-email-primary{box-shadow:0 14px 30px #18863a42}.confirmation-email-secondary{color:var(--blue-dark);box-shadow:none;background:#eef6ff}.confirmation-email-secondary:hover,.confirmation-email-secondary:focus-visible{color:var(--blue-dark);background:#dbeafe;box-shadow:0 12px 26px #0626501a}@media (width<=640px){.confirmation-email-backdrop{padding:calc(18px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom))}.confirmation-email-modal{border-radius:20px;gap:18px;width:min(100%,100vw - 24px);padding:30px 20px 22px}.confirmation-email-modal .calendar-detail-close{width:34px;height:34px;top:14px;right:14px}.confirmation-email-header{grid-template-columns:44px minmax(0,1fr);gap:13px;padding-right:34px;display:grid}.confirmation-email-icon{border-radius:15px;width:44px;height:44px}.confirmation-email-icon:after{top:12px;left:14px}.confirmation-email-message{font-size:.96rem}}.submitted-request-scroll{background:#f8fbff;border:1px solid #dbe7f3;border-radius:14px;max-height:260px;padding:12px;overflow:auto}.submitted-request-scroll dl{gap:8px;margin:0;display:grid}.submitted-request-scroll dl div{grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);gap:8px;display:grid}.client-portal-access-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.reservation-detail-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}.reservation-detail-overview div{background:#f4fbff;border-color:#0097d72e}.reservation-detail-overview-editable{margin:0}.reservation-detail-overview-editable .detail-row-wide{grid-column:1/-1}.reservation-detail-overview-editable dd{gap:8px;display:grid}.reservation-detail-overview-editable input,.reservation-detail-overview-editable select,.reservation-detail-overview-editable textarea{box-sizing:border-box;width:100%;min-width:0}.inline-date-time-grid{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,.8fr));gap:8px;display:grid}.modal-admin-status{margin-top:12px}.reservation-detail-section{border-top:1px solid #e2e8f0;gap:12px;margin:18px 0;padding-top:16px;display:grid}.reservation-detail-section h4{color:var(--blue-dark);margin:0;font-size:1rem;font-weight:900}.reservation-detail-list{grid-template-columns:1fr}.directory-edit-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.directory-edit-form label{min-width:0;color:var(--blue-dark);gap:7px;font-size:.78rem;font-weight:900;display:grid}.directory-edit-form input,.directory-edit-form select,.directory-edit-form textarea{background:var(--white);width:100%;min-width:0;color:var(--blue-dark);font:inherit;box-sizing:border-box;border:1px solid #c9dcec;border-radius:13px;padding:12px;font-size:.9rem}.directory-edit-form .address-field,.directory-edit-form .full-field{grid-column:1/-1}.directory-edit-section,.directory-readonly-section,.directory-homair-logements{border-top:1px solid #e2e8f0;gap:10px;margin-top:18px;padding-top:16px;display:grid}.directory-edit-section{border-top:0;margin-top:0;padding-top:0}.directory-edit-section h4,.directory-readonly-section h4,.directory-homair-logements h4{color:var(--blue-dark);margin:0;font-size:1rem;font-weight:900}.directory-edit-section p,.directory-homair-logements p{color:#64748b;margin:0;font-size:.86rem;font-weight:800;line-height:1.35}.directory-readonly-section dl,.directory-homair-logement-card dl{gap:8px;margin:0;display:grid}.directory-homair-logement-list{gap:10px;max-height:280px;padding-right:4px;display:grid;overflow:auto}.directory-homair-logement-card{background:#f8fbff;border:2px solid #e4ebf2;border-radius:14px;gap:10px;padding:12px;display:grid}.directory-homair-logement-card>div{gap:3px;display:grid}.directory-homair-logement-card strong{color:var(--blue-dark);font-size:.95rem;font-weight:950}.directory-homair-logement-card span{color:#475569;font-size:.82rem;font-weight:800;line-height:1.35}.directory-homair-logement-edit{border-top:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:10px;padding-top:10px;display:grid}.directory-homair-logement-edit label{min-width:0;color:var(--blue-dark);gap:6px;font-size:.76rem;font-weight:900;display:grid}.directory-homair-logement-edit input{background:var(--white);width:100%;min-width:0;color:var(--blue-dark);font:inherit;box-sizing:border-box;border:1px solid #c9dcec;border-radius:12px;padding:10px 11px;font-size:.86rem}.directory-homair-logement-edit small{grid-column:1/-1}@media (width<=768px){.directory-homair-logement-edit{grid-template-columns:1fr}}.admin-detail-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.admin-detail-form label{color:var(--blue-dark);gap:7px;font-size:.78rem;font-weight:900;display:grid}.admin-detail-form input,.admin-detail-form select,.admin-detail-form textarea{background:var(--white);width:100%;min-width:0;color:var(--blue-dark);font:inherit;box-sizing:border-box;border:1px solid #c9dcec;border-radius:13px;padding:12px;font-size:.9rem}.admin-detail-form textarea[readonly],.admin-detail-form input[readonly]{color:#334155;background:#f8fbff}.admin-detail-form .full-field,.admin-detail-actions{grid-column:1/-1}.admin-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-calendar-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.employee-detail-actions{justify-content:flex-end;margin-top:18px;display:flex}.admin-calendar-actions .btn,.employee-detail-actions .btn,.calendar-cancel-panel .admin-detail-actions .btn{text-align:center;justify-content:center;align-items:center;min-height:46px;margin:0;padding-inline:18px;display:inline-flex}.admin-calendar-actions .btn,.calendar-cancel-panel .admin-detail-actions .btn{width:100%}.employee-detail-actions .btn{width:min(100%,320px)}.admin-calendar-actions .danger-action-button,.calendar-cancel-panel .danger-action-button{margin-top:0}.calendar-admin-inline-edit-form{border-top:1px solid #e2e8f0;padding-top:18px}.calendar-cancel-panel{background:#fff7f7;border:1px solid #e024242e;border-radius:16px;gap:12px;margin-top:18px;padding:16px;display:grid}.calendar-cancel-panel h4{color:#9f1239;margin:0;font-size:1rem;font-weight:900}.calendar-cancel-panel label{color:var(--blue-dark);gap:7px;font-size:.78rem;font-weight:900;display:grid}.calendar-cancel-panel select,.calendar-cancel-panel textarea{background:var(--white);width:100%;min-width:0;color:var(--blue-dark);font:inherit;box-sizing:border-box;border:1px solid #f3b8c0;border-radius:13px;padding:12px;font-size:.9rem}.calendar-cancel-panel p{color:#7f1d1d;margin:0;font-weight:800}.modal-header-actions{z-index:40;justify-content:flex-end;align-items:center;gap:10px;width:fit-content;margin:0 0 14px auto;display:flex;position:sticky;top:0}.calendar-detail-edit{width:42px;height:42px;color:var(--blue-dark);cursor:pointer;background:#f8fbff;border:2px solid #dbeafe;border-radius:999px;place-items:center;padding:0;font-size:1.12rem;line-height:1;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;display:grid;box-shadow:0 10px 24px #0418301a}.calendar-detail-edit:hover,.calendar-detail-edit:focus-visible{background:#eef7ff;border-color:#0068dd47;transform:translateY(-1px);box-shadow:0 14px 28px #04183024}.calendar-detail-edit:focus-visible{outline-offset:2px;outline:3px solid #0068dd38}.calendar-detail-close{z-index:40;background:var(--blue);width:42px;height:42px;color:var(--white);cursor:pointer;border:0;border-radius:999px;place-items:center;margin:0 0 14px auto;padding:0;font-size:1.55rem;font-weight:900;line-height:1;transition:background .2s,box-shadow .2s,transform .2s;display:grid;position:sticky;top:0;box-shadow:0 12px 28px #0071b838}.modal-header-actions .calendar-detail-close,.modal-header-actions .calendar-detail-edit{flex:none;margin:0;position:static}.calendar-detail-close:hover,.calendar-detail-close:focus-visible{background:#0071b8;transform:translateY(-1px);box-shadow:0 16px 32px #0071b847}.calendar-detail-close:focus-visible{outline-offset:2px;outline:3px solid #0068dd38}.modal-close-icon{fill:none;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;display:block}.admin-modal-close-row{display:contents}@media (width>=769px){.calendar-detail-modal.admin-desktop-modal{padding-top:18px}.calendar-detail-modal.admin-desktop-modal .admin-modal-close-row{z-index:55;min-height:52px;margin:-18px calc(var(--modal-inline-padding) * -1) 14px;padding:12px var(--modal-inline-padding) 4px;background:linear-gradient(180deg, var(--white) 0%, var(--white) 78%, #fff0);pointer-events:none;justify-content:flex-end;align-items:center;display:flex;position:sticky;top:0}.calendar-detail-modal.admin-desktop-modal .admin-modal-close-row .modal-header-actions{pointer-events:auto;margin:0;position:static}.calendar-detail-modal.admin-desktop-modal .admin-modal-close-row .calendar-detail-edit,.calendar-detail-modal.admin-desktop-modal .admin-modal-close-row .calendar-detail-close{pointer-events:auto;flex:none;margin:0;position:static}}.employee-calendar-item time{background:linear-gradient(135deg, var(--blue), #0071b8);min-height:68px;color:var(--white);border-radius:16px;place-items:center;display:grid;box-shadow:0 10px 20px #0071b833}.employee-calendar-item time strong{color:var(--white);font-size:1.5rem;line-height:1}.employee-calendar-item time span{color:var(--green);text-transform:uppercase;font-size:.74rem;font-weight:900}.employee-calendar-item>div{min-width:0}.employee-calendar-item>div strong{color:var(--blue-dark);font-weight:900;display:block}.employee-calendar-item>div span,.employee-calendar-item>div small{color:#334155;overflow-wrap:anywhere;font-weight:700;display:block}.employee-calendar-item>small{color:var(--blue);white-space:nowrap;font-weight:900}.employee-next-panel{color:var(--blue-dark);background:#fff;border:1px solid #dce8f3;align-self:start;box-shadow:0 18px 42px #0626501a}.employee-next-panel h3,.employee-next-panel small{color:var(--blue-dark)}.employee-next-panel>h3{border-bottom:1px solid #e5edf5;margin-bottom:16px;padding-bottom:14px;display:block}.employee-next-panel>p{color:#64748b;font-weight:800}.employee-request-list article{align-items:center}.employee-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.employee-actions button{padding:9px 12px;font-size:.82rem}.portal-task-list{padding-left:18px}.footer{background:var(--blue);color:var(--white);padding:55px 0}.footer-container{grid-template-columns:1.5fr 1fr 1fr;gap:40px;display:grid}.footer h3{letter-spacing:.5px;margin-bottom:14px;font-size:1.4rem;font-weight:900}.footer h4{margin-bottom:14px;font-size:1.05rem;font-weight:900}.footer p,.footer a{color:var(--muted);margin-bottom:8px;font-size:.98rem;font-weight:500;line-height:1.7;display:block}.social-title{margin-top:22px}.social-links{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.social-links a{background:var(--white);color:var(--blue-dark);border-radius:999px;margin-bottom:0;padding:8px 14px;font-weight:900}.social-links a:hover{background:var(--green-light)}@media (width<=1000px){.hero-layout{grid-template-columns:1fr;gap:45px}.hero-left,.price-comparison,.reserve-button{max-width:100%}.why-grid{grid-template-columns:1fr}.trust-bar{flex-wrap:wrap}.benefits-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.services-grid,.pricing-grid,.testimonials-grid,.steps-grid{grid-template-columns:repeat(2,1fr)}.contact-container,.footer-container{grid-template-columns:1fr}.dropdown-menu{left:0;transform:translateY(12px)}.nav-dropdown:hover .dropdown-menu{transform:translateY(0)}}@media (width<=768px){.nav{display:none}.header-container{height:68px}.btn{padding:11px 16px;font-size:.9rem}}@media (width<=650px){.hero-premium{padding:45px 0 30px}.hero-left h1{font-size:2.5rem}.price-comparison{grid-template-columns:1fr}.separator{display:none}.price-comparison>div:not(.discount-line):not(.separator){padding-bottom:16px}.reserve-button{grid-template-columns:auto 1fr;font-size:1.05rem}.reserve-arrow{display:none}.tax-circle{width:230px;height:230px}.tax-circle strong{font-size:3.8rem}.tax-circle span{font-size:1.3rem}.tax-label{font-size:1.7rem}.tax-info{width:100%}.benefits-grid,.services-grid,.pricing-grid,.testimonials-grid,.steps-grid{grid-template-columns:1fr}.section{padding:60px 0}.contact h2{font-size:2rem}}@media (width<=768px){.header{position:relative}.header-container{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:10px;height:auto;padding:14px 0 12px;display:flex}.logo{white-space:nowrap;font-size:1.1rem;line-height:1}.header .header-cta{text-align:center;background:var(--white);width:100%;color:var(--blue-dark);display:block!important}.mobile-menu-btn{display:none!important}.nav{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:18px;width:100%;padding-bottom:2px;display:flex;overflow-x:auto;margin-left:0!important}.hero-premium{padding:22px 0 26px}.hero-layout{grid-template-columns:minmax(0,1fr) 128px;align-items:start;gap:14px;display:grid}.hero-left{min-width:0;max-width:none}.hero-badge{border-radius:999px;align-items:center;margin-bottom:16px;padding:9px 16px;font-size:.78rem;display:inline-flex}.hero-left h1{letter-spacing:-1.1px;max-width:100%;margin:0 0 14px;font-size:1.1rem;line-height:1.01}.hero-left h1 strong{font-weight:900}.hero-left p{max-width:100%;margin:0;font-size:.82rem;line-height:1.45}.hero-right-clean{justify-content:center;align-items:flex-start;padding-top:54px;display:flex}.tax-badge{text-align:center;filter:drop-shadow(0 14px 20px #00000026);transform:none}.tax-circle{width:122px;height:122px;transform:none}.tax-label{border-width:3px;margin-top:-10px;padding:4px 12px;font-size:.9rem;transform:rotate(-5deg)}.hero-bottom{flex-direction:column;gap:14px;margin-top:18px;display:flex}.price-comparison{border-radius:22px;grid-template-columns:1fr 1px 1fr;width:100%;max-width:100%;margin-bottom:0;display:grid;overflow:hidden}.price-comparison span{margin-bottom:6px;font-size:.68rem;line-height:1.1}.old-price:after{height:4px;left:-6px;right:-6px}.discount-line{padding:8px 10px;font-size:.68rem;line-height:1.25}.tax-info{border-radius:20px;order:2;width:100%;margin:0;padding:18px}.tax-info strong{margin-bottom:8px;font-size:.95rem;display:block}.reserve-button{border-width:4px;border-radius:999px;order:3;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;max-width:100%;margin-top:0;padding:13px 16px;font-size:.92rem;display:grid}.reserve-button small{margin-top:3px;font-size:.68rem;line-height:1.2;display:block}.reserve-arrow{flex-shrink:0;width:42px;height:42px;font-size:1.9rem}.why-bar h3{text-align:center;margin-bottom:18px;font-size:1rem}.why-item{grid-template-columns:46px 1fr;align-items:start;gap:14px;display:grid}.why-item strong{margin-bottom:4px;font-size:.9rem}.trust-bar{text-align:center;border-radius:22px;flex-direction:column;gap:10px;margin-top:16px;padding:18px 16px}.trust-bar strong{font-size:.9rem;line-height:1.35}.trust-item{flex-wrap:wrap;justify-content:center;gap:6px}.google,.allo{font-size:1rem}.trust-item span:nth-child(2),.trust-item small{font-size:.8rem}.services-grid,.pricing-grid,.steps-grid,.benefits-grid{grid-template-columns:1fr}.testimonials-grid{scroll-snap-type:x mandatory;gap:16px;padding-bottom:12px;display:flex;overflow-x:auto}.testimonials-grid::-webkit-scrollbar{display:none}.testimonial-card{scroll-snap-align:start;border-radius:22px;flex-direction:column;justify-content:space-between;min-width:82%;padding:22px;display:flex}.testimonial-card p{font-size:.88rem;line-height:1.45}.section{padding:42px 0}.section-header{margin:0 auto 28px}.section-header h2{font-size:1.95rem;line-height:1.08}.section-header p{font-size:.9rem}.reviews-section{padding-top:34px!important;padding-bottom:34px!important}.reviews-score{border-radius:20px;gap:6px 10px;width:100%;margin:-8px auto 24px;padding:16px}.reviews-score strong{font-size:1.35rem}.reviews-score span,.reviews-score small{font-size:.82rem}.reviews-actions{grid-template-columns:1fr;gap:14px;margin-top:20px;display:grid}.reviews-actions .btn{text-align:center;padding:12px 14px;font-size:.82rem}.contact-container{grid-template-columns:1fr;gap:24px}.contact h2{font-size:2rem}.contact-form,.reservation-card{padding:24px 18px}.reservation-options,.form-grid{grid-template-columns:1fr}.reservation-actions{justify-content:stretch}.reservation-actions .btn{text-align:center;width:100%}.reservation-edit-notice{text-align:left;gap:4px;display:grid}.reservation-section{padding-top:34px!important}.reservation-card{border-radius:22px}.reservation-progress{gap:8px;margin-bottom:22px}.progress-dot{width:32px;height:32px;font-size:.85rem}.reservation-step h3{margin-bottom:18px;font-size:1.35rem;line-height:1.18}.reservation-option{border-radius:18px;min-height:auto;padding:18px}.reservation-option strong{font-size:1rem}.reservation-option small,.reservation-option span{font-size:.84rem;line-height:1.35}.estimate-strip,.estimate-box{border-radius:18px;margin-top:20px;padding:18px}.estimate-strip strong,.estimate-box strong{font-size:1.12rem;line-height:1.25}.city-suggestions{border-radius:18px;max-height:220px;padding:8px}.city-suggestions button{grid-template-columns:64px 1fr;gap:8px;padding:11px 12px}.city-suggestions span,.city-suggestions strong{font-size:.86rem}.reservation-summary>div{border-radius:16px;padding:15px}.reservation-summary strong{font-size:.95rem;line-height:1.35}.success-card{border-radius:22px;padding:28px 18px}.success-icon{width:60px;height:60px;font-size:2rem}.success-card h1{font-size:1.85rem;line-height:1.12}.success-card p{font-size:.95rem;line-height:1.55}.success-next{border-radius:18px;gap:10px;padding:18px}.success-next span{font-size:.88rem;line-height:1.4}.success-home-link{text-align:center;width:100%}.footer{padding:34px 0}.footer h3{font-size:1.2rem}.footer h4{font-size:.95rem}.footer p,.footer a{font-size:.82rem;line-height:1.55}.social-links{gap:8px}.social-links a{padding:7px 12px;font-size:.78rem}.header-cta{text-align:center!important;background:var(--white)!important;width:100%!important;color:var(--blue-dark)!important;order:3!important;display:block!important}.header-container{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;height:auto!important;min-height:78px!important;padding:14px 16px 12px!important;display:flex!important}.logo{font-size:1.25rem!important;line-height:1!important}.nav{white-space:nowrap!important;scrollbar-width:none!important;gap:22px!important;width:100%!important;padding-bottom:4px!important;display:flex!important;overflow-x:auto!important}.nav::-webkit-scrollbar{display:none!important}.nav a,.nav-dropdown>a{white-space:nowrap!important;flex:none!important;font-size:.78rem!important;font-weight:800!important}.nav-dropdown{flex:none!important;padding:0!important}.dropdown-menu{display:none!important}.hero-premium{background:linear-gradient(135deg,#9be25b 0%,#b6f27a 100%)!important;padding:34px 0 30px!important}.hero-layout{grid-template-columns:minmax(0,1fr) 135px!important;align-items:start!important;gap:16px 14px!important;width:min(92%,640px)!important;margin:0 auto!important;padding:0!important;display:grid!important}.hero-left,.hero-right-clean{display:contents!important}.hero-badge{white-space:nowrap!important;border-radius:999px!important;grid-area:1/1/auto/2!important;width:fit-content!important;margin:0 0 2px!important;padding:9px 16px!important;font-size:.72rem!important;font-weight:900!important}.hero-left h1{letter-spacing:-.8px!important;color:#08245c!important;grid-area:2/1/auto/2!important;max-width:100%!important;margin:0!important;font-size:1.85rem!important;line-height:1.08!important}.hero-left p{color:#08245c!important;grid-area:3/1/auto/2!important;max-width:100%!important;margin:0!important;font-size:.88rem!important;font-weight:800!important;line-height:1.5!important}.tax-badge{text-align:center!important;filter:drop-shadow(0 14px 22px #0000002e)!important;grid-area:2/2/4/3!important;place-self:center!important;position:relative!important;transform:none!important}.tax-circle{border-radius:50%!important;width:130px!important;height:130px!important}.tax-circle strong{font-size:2.45rem!important;line-height:.9!important}.tax-circle span{font-size:.82rem!important;line-height:1!important}.tax-label{white-space:nowrap!important;border:3px solid #fff!important;padding:5px 13px!important;font-size:.92rem!important;position:absolute!important;bottom:-17px!important;left:50%!important;transform:translate(-50%)rotate(-6deg)!important}.price-comparison{border-radius:22px!important;grid-area:4/1/auto/-1!important;grid-template-columns:1fr 1px 1fr!important;width:100%!important;max-width:100%!important;min-height:114px!important;margin:18px 0 0!important;display:grid!important;overflow:hidden!important}.price-comparison>div:not(.discount-line):not(.separator){text-align:center!important;padding:14px 8px 48px!important}.price-comparison span{margin-bottom:6px!important;font-size:.66rem!important;line-height:1.1!important;display:block!important}.separator{margin:18px 0 54px!important;display:block!important}.old-price{font-size:1.2rem!important}.new-price{font-size:1.28rem!important}.discount-line{justify-content:center!important;align-items:center!important;min-height:32px!important;padding:8px!important;font-size:.7rem!important;line-height:1.35!important;display:flex!important}.tax-info{border-radius:20px!important;grid-area:5/1/auto/-1!important;width:100%!important;max-width:100%!important;margin:8px 0 0!important;padding:18px 20px!important}.tax-info strong{font-size:1rem!important;line-height:1.3!important;display:block!important}.tax-info p{margin-top:8px!important;font-size:.86rem!important;line-height:1.45!important}.reserve-button{border:4px solid #fff!important;border-radius:999px!important;grid-area:6/1/auto/-1!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:100%!important;min-height:78px!important;margin:0!important;padding:14px 16px!important;font-size:1rem!important;display:grid!important}.reserve-icon{font-size:1.6rem!important}.reserve-button small{font-size:.72rem!important;line-height:1.25!important}.reserve-arrow{width:44px!important;height:44px!important;font-size:2rem!important}.why-bar{border-radius:24px!important;margin-top:24px!important;padding:24px 20px!important}.why-bar h3{text-align:center!important;margin-bottom:22px!important;font-size:1.15rem!important;line-height:1.25!important}.why-grid{grid-template-columns:1fr!important;gap:18px!important;display:grid!important}.why-item{text-align:left!important;grid-template-columns:48px 1fr!important;align-items:start!important;gap:14px!important;display:grid!important}.why-icon{width:48px!important;height:48px!important;font-size:1.2rem!important}.why-item strong{font-size:.9rem!important}.why-item p{font-size:.8rem!important;line-height:1.4!important}.reserve-button{border:4px solid #fff!important;border-radius:999px!important;grid-template-columns:44px 1fr 44px!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:100%!important;padding:14px 16px!important;display:grid!important}.reserve-icon{justify-content:center!important;align-items:center!important;font-size:1.6rem!important;display:flex!important}.reserve-button>span:nth-child(2){flex-direction:column!important;justify-content:center!important;min-width:0!important;display:flex!important}.reserve-button small{font-size:.72rem!important;line-height:1.25!important;display:block!important}.reserve-arrow{color:#0071b8!important;background:#fff!important;border-radius:50%!important;flex-shrink:0!important;justify-content:center!important;justify-self:end!important;align-items:center!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;font-size:2rem!important;font-weight:900!important;line-height:1!important;display:flex!important}.footer-container{grid-template-columns:1fr 1fr!important;align-items:start!important;gap:26px 24px!important;display:grid!important}.footer-container>div:first-child{grid-area:1/1}.footer-container>div:nth-child(2){grid-area:1/2}.footer-container>div:nth-child(3){grid-area:2/1/auto/-1;grid-template-columns:1fr 1fr!important;align-items:start!important;gap:0 24px!important;display:grid!important}.footer-container>div:nth-child(3) h4:first-child,.footer-container>div:nth-child(3) p{grid-column:1!important}.social-title,.social-links{grid-column:2!important}.social-title{grid-row:1!important;margin-top:0!important}.social-links{flex-wrap:wrap!important;grid-row:2!important;align-content:flex-start!important;gap:8px!important;display:flex!important}.header-container{grid-template-columns:1fr auto!important;align-items:center!important;gap:12px 16px!important;display:grid!important}.logo{grid-area:1/1!important}.header-actions{grid-area:1/2!important;justify-self:end!important;width:auto!important}.account-menu{padding:0!important}.account-menu-button{white-space:nowrap!important;min-height:38px!important;padding:9px 16px!important;font-size:.78rem!important}.account-menu-panel{top:46px!important;right:0!important}.header-portals{width:auto!important;display:flex!important}.header-portals a{min-height:38px!important;padding:9px 14px!important;font-size:.74rem!important}.nav{grid-area:2/1/auto/-1!important}html,body{max-width:100%;overflow-x:hidden}.container{width:min(100% - 32px,1180px)}.section-header{text-align:left}.section-header h2{max-width:100%}.services-grid,.pricing-grid,.benefits-grid,.steps-grid,.contact-container,.reservation-options,.form-grid,.homeair-request-form,.portal-layout,.portal-dashboard-grid,.portal-feature-grid{grid-template-columns:1fr!important}.small-grid{max-width:none}.service-card,.benefit-card,.step-card,.price-card,.portal-card,.portal-panel,.reservation-card,.pro-quote-card,.contact-form{min-width:0}.full-field,.homeair-request-form .full-field,.portal-panel.large{grid-column:1/-1!important}.reservation-option,.pro-option{width:100%;min-height:auto}.reservation-actions,.reviews-actions,.page-cta{grid-template-columns:1fr;gap:12px;display:grid}.reservation-actions .btn,.reviews-actions .btn,.page-cta .btn,.contact-submit,.portal-submit{text-align:center;justify-content:center;width:100%}.reservation-summary{grid-template-columns:1fr}.city-suggestions{width:100%;left:0;right:0}.portal-list article,.employee-request-list article{align-items:start}.client-request-card{gap:14px;display:grid}.client-request-summary{width:100%}.client-request-actions{grid-template-columns:1fr;justify-content:stretch;width:100%;display:grid}.client-request-actions .btn{text-align:center;justify-content:center;width:100%}.client-request-detail-actions{grid-template-columns:1fr;width:100%;display:grid}.client-request-detail-actions .btn{text-align:center;justify-content:center;width:100%}.reservation-email-panel,.confirmation-email-actions{grid-template-columns:1fr;display:grid}.reservation-email-panel .btn,.confirmation-email-actions .btn{text-align:center;justify-content:center;width:100%}.admin-reservation-card,.admin-reservation-actions,.employee-calendar-item{grid-template-columns:1fr;min-width:0;display:grid}.employee-calendar-header{gap:12px;display:grid}.employee-calendar-controls{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr) 44px;justify-content:stretch;width:100%;display:grid}.employee-calendar-controls button,.calendar-week-picker{width:100%}.employee-week-calendar{grid-template-columns:1fr;gap:10px}.employee-week-day{min-height:auto}.weekly-planning-panel{padding:16px}.employee-week-day header{grid-template-columns:auto 1fr;align-items:center;gap:10px}.employee-week-events{padding:10px}.employee-week-event{padding:12px}.employee-week-event strong{-webkit-line-clamp:1;font-size:.92rem}.employee-week-event span,.employee-week-event p{-webkit-line-clamp:2;font-size:.82rem}.employee-week-event small{-webkit-line-clamp:2;font-size:.78rem}.employee-calendar-item time{width:72px}.employee-calendar-item>small{white-space:normal}.admin-summary-panel{width:fit-content;min-width:150px}.portal-list span,.portal-list small,.employee-request-list span,.employee-request-list small,.profile-summary p,.contact-info p,.footer p,.footer a{overflow-wrap:anywhere}.nav{max-width:100%}}@media (width<=420px){.container{width:min(100% - 24px,1180px)}.hero-layout{grid-template-columns:1fr!important}.tax-badge{grid-area:auto/1/auto/-1!important;justify-self:start!important}.price-comparison{grid-template-columns:1fr!important}.price-comparison .separator{display:none!important}.discount-line{grid-column:1/-1!important;position:static!important}.reserve-button{grid-template-columns:40px 1fr 40px!important;padding-inline:12px!important}.trust-item{gap:4px;grid-template-columns:1fr!important}}.mobile-sticky-cta{display:none}@media (width<=768px){body{padding-bottom:78px}.mobile-sticky-cta{z-index:1000;background:linear-gradient(135deg, var(--blue), #0071b8);min-height:56px;color:var(--white);border:4px solid var(--white);text-align:center;border-radius:999px;justify-content:center;align-items:center;font-size:1rem;font-weight:900;display:flex;position:fixed;bottom:14px;left:16px;right:16px;box-shadow:0 18px 34px #0000003d}.header{position:sticky!important;top:0!important}.header-container{grid-template-columns:1fr!important;align-items:center!important;gap:12px!important;min-height:auto!important;padding:12px 16px 10px!important;display:grid!important}.logo{grid-column:1!important;font-size:1.2rem!important}.header-cta,.header .header-cta{display:none!important}.header-actions{grid-column:1/-1!important;width:100%!important;display:block!important}.header-portals{grid-template-columns:1fr!important;gap:10px!important;width:100%!important;display:grid!important}.header-portals a{justify-content:center!important;min-height:38px!important;padding:9px 10px!important;font-size:.76rem!important}.nav{grid-column:1/-1!important;gap:16px!important;padding:2px 0 4px!important}.nav a,.nav-dropdown>a{font-size:.76rem!important}.hero-layout{grid-template-columns:minmax(0,1fr) 112px!important;row-gap:12px!important}.hero-badge{padding:8px 12px!important;font-size:.66rem!important}.tax-circle strong{font-size:2rem!important}.tax-circle span{font-size:.72rem!important}.tax-label{font-size:.78rem!important;bottom:-13px!important}.tax-info{display:none!important}.price-comparison{min-height:104px!important;margin-top:12px!important}.reserve-button{min-height:68px!important;font-size:.92rem!important}.why-bar{padding:18px 16px!important}.trust-bar{gap:8px!important;padding:16px!important}.trust-item{grid-template-columns:1fr auto auto;width:100%;display:grid!important}.service-card,.benefit-card,.price-card{border-radius:20px;padding:22px}.service-card h3,.benefit-card h3,.price-card h3{font-size:1rem;line-height:1.25}.price-card strong{margin:8px 0;font-size:1.6rem}.base-price{margin-top:8px;font-size:1rem}.reviews-score{text-align:left;justify-content:flex-start;align-items:center}.reviews-score strong{min-width:54px}.testimonial-card{min-width:88%!important}.reviews-actions{grid-template-columns:1fr!important}.reservation-card,.pro-quote-card{border-radius:20px!important;padding:22px 16px!important}.form-grid label{font-size:.9rem}input,select,textarea{border-radius:14px;padding:14px;font-size:.92rem}.reservation-actions{z-index:20;padding-top:8px;position:sticky;bottom:12px}.reservation-actions .btn{border:3px solid var(--white);min-height:52px}.footer{padding-bottom:96px!important}.footer-container{grid-template-columns:1fr!important;gap:22px!important}.footer-container>div,.footer-container>div:first-child,.footer-container>div:nth-child(2),.footer-container>div:nth-child(3){grid-area:auto/1/auto/-1!important}.footer-container>div:nth-child(3){display:block!important}.social-title,.social-links{grid-area:auto!important}.portal-layout,.portal-dashboard-grid{grid-template-columns:1fr!important}.portal-intro h2,.portal-dashboard-header h2{font-size:clamp(1.35rem,7vw,1.8rem);line-height:1.08}.portal-access-list{gap:8px 0}.portal-access-list span{padding:0 10px}.portal-card,.portal-panel,.portal-note{border-radius:20px;padding:20px}.portal-tabs{grid-template-columns:1fr}.portal-dashboard-header{gap:18px;display:grid}.portal-dashboard-header h2{overflow-wrap:anywhere;margin-bottom:10px}.portal-dashboard-header .btn{text-align:center;width:100%}.portal-bottom-nav{left:max(5px, env(safe-area-inset-left));right:max(5px, env(safe-area-inset-right));width:auto;max-width:480px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 50px minmax(0,1fr) minmax(0,1fr);gap:2px;bottom:0}.portal-bottom-nav a,.portal-bottom-action{border-radius:12px;min-height:40px;font-size:.66rem;line-height:1}.portal-bottom-action{width:50px;height:50px;min-height:50px;margin-top:-22px;font-size:1.65rem}.notification-permission-panel{flex-direction:column;align-items:stretch}.notification-permission-panel .btn,.notification-enabled-status{width:100%}.homeair-confirmation{padding:18px}.homeair-intro-grid,.homeair-form-grid,.homeair-summary-grid,.homeair-confirmation-header{grid-template-columns:minmax(0,1fr)}.homeair-form-section,.homeair-options-panel,.homeair-notes-field,.homeair-empty-state{padding:14px}.homeair-options-add-button{justify-content:flex-start;width:100%}.homair-options-grid{grid-template-columns:minmax(0,1fr)}.homair-option-toggle{min-height:54px;padding:12px}.homeair-status-pill{justify-self:start}.homeair-confirmation-actions,.admin-detail-form,.admin-detail-actions,.admin-calendar-actions,.reservation-detail-overview,.inline-date-time-grid{grid-template-columns:1fr}.portal-panel.large{grid-column:auto}.portal-list article,.employee-request-list article{gap:12px;display:grid}.employee-actions{justify-content:stretch}.employee-actions button{flex:100px}.header .header-container{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px 12px!important;padding:12px 16px 10px!important;display:grid!important}.header .logo{text-overflow:ellipsis!important;white-space:nowrap!important;grid-area:1/1!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}.header .header-actions{grid-area:1/2!important;justify-self:end!important;width:auto!important;min-width:max-content!important;display:flex!important}.header .account-menu,.header .header-portals{justify-content:flex-end!important;width:auto!important;display:flex!important}.header .account-menu-button,.header .header-portals a{white-space:nowrap!important;max-width:128px!important;min-height:38px!important;padding:9px 13px!important;font-size:.72rem!important;line-height:1!important}.header .nav{grid-area:2/1/auto/-1!important;min-width:0!important}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}body{touch-action:pan-y}input,select,textarea{font-size:16px!important}.container{width:min(100% - 32px,640px)!important;max-width:calc(100vw - 32px)!important}.header .header-container{grid-template-columns:minmax(0,1fr) auto!important;gap:8px 12px!important}.header .header-actions{min-width:0!important}.header .header-portals a,.header .account-menu-button{text-align:center!important;white-space:normal!important;overflow-wrap:normal!important;border:1px solid #ffffff8c!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;width:auto!important;min-width:0!important;max-width:min(176px,46vw)!important;min-height:40px!important;padding:10px 14px!important;line-height:1.05!important;display:inline-flex!important}.hero-premium{padding-top:28px!important}.hero-layout{grid-template-columns:minmax(0,1fr) clamp(96px,30vw,126px)!important;align-items:start!important;gap:16px 12px!important;width:min(100% - 32px,640px)!important;max-width:calc(100vw - 32px)!important;display:grid!important}.hero-left,.hero-right-clean{display:contents!important}.hero-badge{white-space:nowrap!important;grid-area:1/1/auto/2!important;width:fit-content!important;max-width:100%!important;margin:0 0 2px!important;padding:8px 14px!important;font-size:clamp(.62rem,2.4vw,.72rem)!important}.hero-left h1{letter-spacing:0!important;grid-area:2/1/auto/2!important;max-width:100%!important;margin:0!important;font-size:clamp(1.5rem,7vw,1.86rem)!important;line-height:1.08!important}.hero-left p{grid-area:3/1/auto/2!important;max-width:100%!important;margin:0!important;font-size:clamp(.78rem,3.3vw,.88rem)!important;line-height:1.42!important}.tax-badge{grid-area:2/2/4/3!important;place-self:center!important;position:relative!important;transform:none!important}.tax-circle{width:clamp(96px,29vw,124px)!important;height:clamp(96px,29vw,124px)!important}.tax-circle strong{font-size:clamp(1.95rem,8vw,2.48rem)!important;line-height:.9!important}.tax-circle span{font-size:clamp(.66rem,2.8vw,.8rem)!important;line-height:1!important}.tax-label{width:max-content!important;padding:4px 11px!important;font-size:clamp(.72rem,3vw,.88rem)!important;bottom:-14px!important;left:50%!important;transform:translate(-50%)rotate(-6deg)!important}.price-comparison{border-radius:22px!important;grid-area:4/1/auto/-1!important;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr)!important;width:100%!important;max-width:100%!important;min-height:112px!important;margin:18px 0 0!important;display:grid!important;overflow:hidden!important}.price-comparison>div:not(.discount-line):not(.separator){text-align:center!important;min-width:0!important;padding:14px 6px 46px!important}.price-comparison .separator{width:1px!important;margin:16px 0 52px!important;display:block!important}.price-comparison span{margin-bottom:6px!important;font-size:clamp(.6rem,2.4vw,.68rem)!important;line-height:1.12!important}.old-price{font-size:clamp(1.02rem,4.6vw,1.22rem)!important}.new-price{font-size:clamp(1.1rem,5vw,1.32rem)!important}.discount-line{text-align:center!important;min-height:32px!important;padding:7px 8px!important;font-size:clamp(.61rem,2.7vw,.72rem)!important;line-height:1.25!important;position:absolute!important;bottom:0!important;left:0!important;right:0!important}.reserve-button{border-width:4px!important;border-radius:999px!important;grid-area:5/1/auto/-1!important;grid-template-columns:42px minmax(0,1fr) 44px!important;align-items:center!important;gap:10px!important;width:100%!important;max-width:100%!important;min-height:72px!important;padding:12px!important;display:grid!important;overflow:hidden!important}.reserve-button>span:nth-child(2){text-align:left!important;white-space:normal!important;min-width:0!important;font-size:clamp(.86rem,3.7vw,1rem)!important;line-height:1.08!important;display:block!important}.reserve-button small{margin-top:4px!important;font-size:clamp(.65rem,2.8vw,.76rem)!important;line-height:1.15!important;display:block!important}.reserve-icon,.reserve-arrow{place-items:center!important;width:42px!important;min-width:42px!important;height:42px!important;display:grid!important}.hero-left h1{font-size:clamp(1.32rem,6.2vw,1.64rem)!important;line-height:1.09!important}.hero-left p{font-size:clamp(.72rem,3vw,.8rem)!important;line-height:1.4!important}.portal-app-shell{padding:calc(12px + env(safe-area-inset-top)) 16px 12px;min-height:calc(64px + env(safe-area-inset-top));grid-template-columns:minmax(0,1fr) auto;gap:10px 12px}.portal-app-brand{align-self:end;font-size:1.08rem}.portal-app-nav{grid-area:2/1/auto/-1;width:100%}.portal-app-nav a,.portal-app-signout{min-height:36px;padding:8px 12px;font-size:.74rem}.portal-app-signout{place-self:end}.calendar-detail-backdrop{padding:calc(20px + env(safe-area-inset-top)) 8px calc(20px + env(safe-area-inset-bottom));overscroll-behavior:contain;place-items:start center;overflow:hidden auto}.portal-action-modal{width:min(100%,100vw - 16px);max-height:calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:22px 12px calc(24px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(56px + env(safe-area-inset-bottom));border-radius:20px}.portal-action-modal .admin-create-header{padding-right:54px}.admin-create-header{margin-bottom:14px}.admin-create-form{padding-bottom:calc(24px + env(safe-area-inset-bottom));grid-template-columns:1fr;gap:13px}.recurrence-row{grid-template-columns:1fr}.weekday-toggle-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.weekday-toggle{width:100%;padding-inline:8px}.admin-create-submit{justify-self:stretch;width:100%}.address-suggestions{max-height:190px}html,body,#root,.portal-page,.portal-section,.portal-dashboard-grid,.portal-panel,.portal-card,.portal-form,.homeair-request-form,.homeair-form-grid,.homeair-intro-grid,.homeair-summary-grid,.admin-create-form,.profile-form,.contact-form,.reservation-card,.pro-quote-card{box-sizing:border-box;max-width:100%;overflow-x:hidden}html,body,#root,.portal-page,.portal-section{width:100%}.portal-section{padding-left:0;padding-right:0}.container,.portal-dashboard-grid,.portal-feature-grid,.tenant-departure-grid,.admin-dashboard-grid,.admin-contacts-grid,.calendar-page-grid,.client-dashboard-grid,.portal-panel,.portal-card,.portal-action-modal,.calendar-detail-modal{box-sizing:border-box;min-width:0;max-width:100%}.portal-dashboard-grid,.portal-feature-grid,.tenant-departure-grid,.admin-dashboard-grid,.admin-contacts-grid,.calendar-page-grid,.client-dashboard-grid,.portal-form,.homeair-request-form,.admin-create-form,.profile-form,.form-grid,.recurrence-row{width:100%;grid-template-columns:minmax(0,1fr)!important}.portal-action-modal,.calendar-detail-modal{max-height:calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom));overflow:hidden auto;width:calc(100% - 16px)!important;max-width:calc(100dvw - 16px)!important;padding-bottom:calc(32px + env(safe-area-inset-bottom))!important}.calendar-detail-close{flex:none;width:44px;height:44px;margin:0 0 12px auto;top:0}.portal-action-modal .portal-form,.portal-action-modal .admin-create-form,.portal-action-modal .homeair-request-form{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.portal-panel,.portal-card,.portal-note,.admin-create-panel,.homeair-request-panel{width:100%;min-width:0}.portal-form,.portal-form label,.admin-create-form .form-field,.homeair-request-form label,.profile-form label,.form-grid label,.recurrence-card,.address-field{box-sizing:border-box;min-width:0;max-width:100%}input,select,textarea,.admin-create-form input,.admin-create-form select,.admin-create-form textarea,.portal-form input,.portal-form select,.portal-form textarea{box-sizing:border-box;text-overflow:ellipsis;display:block;overflow:hidden;width:100%!important;min-width:0!important;max-width:100%!important}.admin-create-form .business-time-input,.admin-detail-form .business-time-input,.reservation-detail-overview-editable .business-time-input{white-space:nowrap;font-size:16px;line-height:1.25;text-overflow:clip!important;width:100%!important;min-width:0!important;max-width:100%!important;padding-inline:12px!important;overflow:visible!important}textarea,.portal-form textarea,.admin-create-form textarea{white-space:pre-wrap;overflow-wrap:anywhere;overflow:hidden auto}select,input::placeholder,textarea::placeholder{text-overflow:ellipsis;max-width:100%}.admin-create-header,.admin-create-header h3,.admin-create-header p,.portal-panel h3,.portal-panel p,.portal-status,.recurrence-preview,.form-status,.form-field span,.weekday-toggle,.address-suggestions p,.address-suggestions button{overflow-wrap:anywhere;word-break:normal;max-width:100%}.admin-reservation-actions,.admin-reservation-actions label,.admin-reservation-actions select,.employee-calendar-controls,.employee-calendar-controls button,.weekly-planning-panel,.employee-week-day,.employee-week-event{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:100%!important}.weekday-toggle-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important}.address-suggestions{width:100%;max-width:100%;left:0;right:0;overflow:hidden auto}.employee-calendar-controls{border-radius:12px;gap:5px;padding:3px;grid-template-columns:38px minmax(70px,.9fr) minmax(84px,1fr) 38px!important;width:min(100%,340px)!important}.employee-calendar-controls button,.calendar-week-picker{letter-spacing:0;border-radius:9px;min-height:38px;padding:6px 7px;font-size:.68rem;line-height:1;box-shadow:0 3px 9px #12385814}.employee-history-header{text-align:left;justify-items:stretch;gap:14px;margin-bottom:16px;display:grid}.employee-history-header>div{min-width:0}.employee-history-month{text-align:center;justify-self:center;width:min(100%,280px);min-width:0;max-width:280px}.employee-history-month input{text-align:center;appearance:none;width:100%;min-width:0;max-width:100%}.employee-history-stats{grid-template-columns:1fr}.calendar-nav-button.icon-only{min-height:38px;width:38px!important}.calendar-nav-icon{width:17px;height:17px}.calendar-week-picker,.calendar-nav-button.today-button{grid-template-columns:minmax(0,auto);gap:0}.calendar-week-picker .calendar-nav-today-icon,.calendar-nav-button.today-button .calendar-nav-today-icon{display:none}.calendar-week-picker span,.calendar-nav-button.today-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.admin-create-submit,.portal-action-modal .portal-submit{z-index:1;margin-bottom:env(safe-area-inset-bottom);position:relative}.portal-page-with-mobile-nav{padding-bottom:var(--portal-mobile-bottom-nav-space);scroll-padding-bottom:var(--portal-mobile-bottom-nav-space)}.portal-page-with-mobile-nav .portal-section{padding-bottom:var(--portal-mobile-bottom-nav-space)!important}}
