footer{isolation:isolate;background:linear-gradient(180deg,var(--navy) 0%,#03192e 100%);color:#fff;padding:44px 0 96px;position:relative;overflow:hidden}footer:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#020c1880 0%,#020c184d 55%,#020c1814 100%);position:absolute;inset:0}footer .container{max-width:1080px;position:relative}.ft-grid{grid-template-columns:1fr 1fr;gap:24px 20px;display:grid}.ft-col{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.ft-col h3{color:var(--gold);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:13px;font-weight:700}.ft-col a{min-height:40px;font-family:var(--font-head);color:#ffffffd1;align-items:center;font-size:15px;font-weight:500;line-height:1.35;display:flex}.ft-col a:hover{color:var(--gold-2)}.ft-brand{grid-area:1/1/auto/-1;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.ft-brand .brand-logo{height:56px}.ft-social{gap:4px;margin:12px 0 0 -11px;display:flex}.ft-social a{color:#ffffff8c;place-items:center;width:44px;height:44px;display:grid}.ft-social a:hover{color:var(--gold)}.ft-social svg{width:24px;height:24px}.ft-copy{border-radius:var(--radius);color:#ffffffc7;background:#ffffff0f;border:1px solid #ffffff1a;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:28px 0 0;padding:16px 18px;font-size:13px;font-weight:600;line-height:1.5;display:flex}.ft-copy a:hover{color:var(--gold-2)}@media (min-width:621px){footer{padding:56px 0 18px}.ft-grid{grid-template-columns:repeat(4,1fr);gap:32px 24px}.ft-col h3{margin-bottom:14px}.ft-col a{min-height:0;margin-bottom:12px}.ft-social{gap:18px;margin:16px 0 0}.ft-social a{width:26px;height:26px}.ft-copy{font-size:.8rem;line-height:inherit;gap:10px 14px;margin-top:44px;padding:18px 20px}.ft-copy span+span{border-left:1px solid #fff3;padding-left:14px}}@media (min-width:901px){.ft-grid{grid-template-columns:1.3fr repeat(4,1fr)}.ft-brand{grid-area:1/1;justify-content:flex-start;margin-bottom:0}}footer .container>.ft-copy:first-child{margin-top:0}
.site-header{z-index:100;color:#fff;pointer-events:none;padding-top:12px;position:fixed;top:0;left:0;right:0}.site-header>.container.nav{width:min(1540px,100% - 40px)}.nav{pointer-events:auto;-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);background:#062d579e;border:1px solid #ffffff24;border-radius:999px;justify-content:space-between;align-items:center;gap:6px;height:60px;padding:0 4px 0 8px;display:flex;position:relative;box-shadow:0 10px 30px #0000002e}.nav .brand-logo{height:36px}.menu-btn{color:#fff;cursor:pointer;background:linear-gradient(#ffffff2e,#ffffff0d);border:1px solid #ffffff57;border-radius:999px;flex:none;width:44px;height:44px;padding:0;transition:transform .28s cubic-bezier(.2,.7,.2,1),background .2s,border-color .2s;display:block;box-shadow:inset 0 1px #ffffff47,0 8px 18px -8px #00000080}.menu-btn:hover{border-color:#fff9;transform:translateY(-1px)}.menu-btn:active{transform:scale(.96)}.menu-btn:focus-visible{outline:3px solid var(--gold-2);outline-offset:3px}.menu-btn span{border-radius:var(--radius);background:#fff;width:24px;height:2px;margin:6px auto;display:block}.nav-actions{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.nav-contractors{color:#fff;min-height:36px;font:700 13px/1 var(--font-head);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:0 2px;display:none;position:relative}.nav-contractors:after{content:"";background:var(--gold);transform-origin:0;border-radius:2px;height:2px;transition:transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:6px;left:4px;right:4px;transform:scaleX(0)}.nav-contractors:hover{color:var(--gold)}.nav-contractors:hover:after{transform:scaleX(1)}.nc-short{display:none}.nav-cta{text-transform:uppercase;letter-spacing:.02em;min-height:36px;font-size:13px;font-family:var(--font-head);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:7px 9px;font-weight:700;display:none}.nav-cta-full{display:none}.nav-cta-compact{display:inline}.nav-call{border-radius:999px;width:40px;min-height:40px;padding:0;display:inline-flex}.nav-call span{display:none}.nav-theme{color:#fff;cursor:pointer;background:linear-gradient(#fff3,#ffffff0d);border:1px solid #fff6;border-radius:999px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;min-height:40px;padding:0;transition:transform .28s cubic-bezier(.2,.7,.2,1),background .2s,border-color .2s;display:inline-flex;box-shadow:inset 0 1px #ffffff4d,inset 0 -2px #00000024,0 8px 18px -8px #00000080}.nav-theme:active{transform:scale(.94)}.nav-theme svg{width:16px;height:16px}.nav-theme:hover{background:linear-gradient(#ffffff47,#ffffff1a);border-color:#ffffffb3;transform:translateY(-2px)}.nav-theme:focus-visible{outline:3px solid var(--gold-2);outline-offset:3px}.navlinks{font-family:var(--font-head);font-size:16px;font-weight:700;line-height:27px;display:none}.navlinks a{opacity:.9}.navlinks a:hover{color:var(--gold)}.navlinks>a,.nav-trigger{text-transform:uppercase;letter-spacing:.03em}.navlinks.mobile-open{overscroll-behavior:contain;-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);--navy:#fff;--muted:#ffffffad;--line:#ffffff29;--wash:#ffffff14;--gold-ink:var(--gold-2);background:#081426f5;border:1px solid #ffffff24;border-radius:24px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 100px);padding:8px 20px 20px;display:flex;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 30px #0006}.navlinks.mobile-open>a,.nav-trigger{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:100%;min-height:62px;padding:16px 0;font-size:20px;display:flex}.navlinks.mobile-open>a:last-child{border-bottom:0}.navlinks.mobile-open .nav-trigger .nav-caret{width:20px;height:20px}@media (min-width:621px){.site-header{padding-top:16px}.nav{gap:20px;height:64px;padding:0 10px 0 22px}.menu-btn{width:44px;height:44px}.nav .brand-logo{height:40px}.nav-actions{gap:8px}.nav-contractors,.nav-cta{display:inline-flex}.nav-contractors{min-height:44px;padding:0 4px;font-size:13px}.nav-call{width:44px;min-height:44px;display:inline-flex}.nav-theme{flex-basis:44px;width:44px;min-height:44px}.navlinks.mobile-open{max-height:calc(100dvh - 110px);padding:8px 24px 20px}}@media (min-width:901px){.nav-contractors{font-size:15px}.nav-cta{letter-spacing:.03em;min-height:44px;padding:9px 18px;font-size:15px}.nav-cta-full{display:inline}.nav-cta-compact{display:none}}@media (max-width:360px){.site-header>.container.nav{width:calc(100% - 40px)}.nav{gap:4px;padding:0 4px 0 8px}.nav .brand-logo{height:30px}.menu-btn{width:40px;height:40px}.nav-call{width:36px;min-height:36px}.nav-theme{flex-basis:36px;width:36px;min-height:36px}.nav-contractors{font-size:12px}.nav-cta{padding:7px 8px;font-size:12px}}@media (min-width:1366px){.site-header>.container.nav{width:min(1540px,100% - 48px)}.menu-btn{display:none}.nav-actions{gap:4px}.nav-contractors{font-size:14px}.nav-cta{padding:9px 12px;font-size:14px}.nc-full{display:none}.nc-short{display:inline}.nav-cta-full{display:none}.nav-cta-compact{display:inline}.nav-call{width:40px;min-height:40px}.nav-theme{flex-basis:40px;width:40px;min-height:40px}.navlinks,.navlinks.mobile-open{border-radius:var(--radius);max-height:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex-direction:row;align-items:center;gap:clamp(10px,1vw,18px);margin:0 auto;padding:0;display:flex;position:static;overflow:visible}.navlinks.mobile-open>a,.nav-trigger{border:0;justify-content:normal;width:auto;min-height:0;padding:0;display:inline-flex}.navlinks>a,.navlinks .nav-trigger{white-space:nowrap;letter-spacing:.02em;font-size:14px}.nav-actions{margin-left:0}.nav-contractors-menu{display:none}}@media (min-width:1500px){.nc-full{display:inline}.nc-short{display:none}.nav-cta-full{display:inline}.nav-cta-compact{display:none}}@media (max-width:1365px){.navlinks.mobile-open+.nav-actions .nav-contractors,.navlinks.mobile-open+.nav-actions .nav-cta{display:none}}.nav-item{position:static}.nav-trigger{color:inherit;font:inherit;opacity:.9;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0;gap:5px}.navlinks.mobile-open .nav-trigger{font-size:20px}.nav-trigger:hover,.nav-item.open .nav-trigger{color:var(--gold);opacity:1}.nav-caret{width:15px;height:15px;transition:transform .2s}.nav-item.open>.nav-trigger .nav-caret{transform:rotate(180deg)}.mega a{opacity:1}.mega a:hover{color:inherit}.mega{color:var(--navy);display:none}.nav-item.open>.mega{display:block}.mega-inner{padding:6px 0 14px}.mega-tab{border-radius:var(--radius-sm);width:100%;min-height:54px;color:var(--navy);font:600 18px/1.3 var(--font-head);text-align:left;cursor:pointer;background:0 0;border:0;border-left:4px solid #0000;justify-content:space-between;align-items:center;gap:10px;margin:0 0 4px;padding:13px 14px;transition:background .15s,border-color .15s;display:flex}.mega-tab:hover{background:var(--wash)}.mega-tab .nav-caret{opacity:.8}.mega-group.active .mega-tab{background:var(--wash);border-left-color:var(--gold)}.mega-group.active .mega-tab .nav-caret{color:var(--gold-ink);transform:rotate(180deg)}.mega-list{padding:4px 0 10px 14px;display:none}.mega-group.active .mega-list{display:block}.mega-all{min-height:44px;font:600 14px/1 var(--font-head);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:8px;margin:2px 0 2px 12px;padding:6px 0;display:inline-flex;color:var(--gold-ink)!important}.mega-all svg{width:15px;height:15px;transition:transform .15s}.mega-all:hover svg{transform:translate(3px)}.mega-list ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.mega-list li a{border-radius:var(--radius-sm);flex-direction:column;justify-content:center;min-height:50px;padding:10px 12px;transition:background .15s;display:flex}.mega-list li a:hover{background:var(--wash)}.mega-list li span{font:500 17px/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy);display:block}.mega-list li small{font:400 14px/1.4 var(--font-body);color:var(--muted);margin-top:2px;display:block}.mega-promo{background:var(--surface-navy);color:#fff;border-radius:var(--radius);align-self:start;padding:24px;display:none}.mega-promo b{font:600 20px/1.2 var(--font-head);letter-spacing:-.02em;margin-bottom:8px;display:block}.mega-promo p{color:#d5e1eb;margin:0 0 18px;font-size:15px;line-height:1.6}.mega-promo .btn{border-radius:999px;width:100%;min-height:46px;font-size:16px}.mega-card{border-radius:var(--radius);background:var(--wash);border:1px solid var(--line);flex-direction:column;gap:8px;margin-bottom:8px;padding:16px;transition:border-color .15s,box-shadow .15s;display:flex}.mega-card b{font:600 19px/1.2 var(--font-head);letter-spacing:-.02em;color:var(--navy)}.mega-card span{color:var(--muted);font-size:15px;line-height:1.6}.mega-card em{font:600 14px/1 var(--font-head);color:var(--gold-ink);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-style:normal;display:inline-flex}.mega-card em svg,.mega-card-head svg{width:15px;height:15px}.mega-card-head{align-items:center;gap:10px;display:flex}.mega-card-head svg{color:var(--gold-ink);transition:transform .15s}.mega-card-head:hover svg{transform:translate(3px)}.mega-card-list ul{grid-template-columns:1fr 1fr;gap:0 18px;margin:4px 0 0;padding:0;list-style:none;display:grid}.mega-card-list li a{min-height:46px;font:500 17px/1.3 var(--font-head);color:var(--navy);align-items:center;padding:8px 0;display:flex}.mega-card-list li a:hover{color:var(--gold-ink)}@media (min-width:1366px){.mega{color:#fff;-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);--navy:#fff;--muted:#ffffffad;--line:#ffffff29;--wash:#ffffff14;--gold-ink:var(--gold-2);opacity:0;visibility:hidden;background:#081426f0;border:1px solid #ffffff24;border-radius:24px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;display:block;position:absolute;top:calc(100% + 10px);left:0;right:0;transform:translateY(-6px);box-shadow:0 30px 60px #00000059}.mega:before{content:"";height:12px;position:absolute;top:-12px;left:0;right:0}.nav-item.open>.mega{opacity:1;visibility:visible;transition:opacity .18s,transform .18s;transform:none}.mega-inner{gap:28px;margin:0 auto;padding:30px 32px 34px;display:grid}.mega-res .mega-inner{grid-template-columns:1fr}.mega-types{grid-template-columns:250px 1fr;grid-auto-rows:min-content;column-gap:34px;display:grid}.mega-group{display:contents}.mega-tab{min-height:0;color:var(--navy);background:0 0;grid-column:1;margin:0 0 6px;padding:14px 16px;font-size:18px}.mega-tab:hover{background:var(--wash)}.mega-tab .nav-caret{opacity:.5;transform:rotate(-90deg)}.mega-group.active .mega-tab{background:var(--wash)}.mega-group.active .mega-tab .nav-caret{opacity:1;color:var(--gold-ink);transform:rotate(-90deg)}.mega-list{border-left:1px solid var(--line);grid-area:1/2/span 5;padding:0 0 0 34px}.mega-all{min-height:0;margin:6px 0 16px;padding:0;font-size:14px;color:var(--gold-ink)!important}.mega-list ul{grid-template-columns:1fr 1fr;gap:4px 24px}.mega-list li a{flex-direction:row;justify-content:normal;min-height:0;padding:10px 12px;display:block}.mega-list li a:hover{background:var(--wash)}.mega-list li span{color:var(--navy);font-size:17px}.mega-list li small{color:var(--muted);font-size:13px}.mega-services .mega-inner{grid-template-columns:1fr;max-width:540px}.mega-com .mega-inner{grid-template-columns:1.4fr 1fr .9fr}.mega-card-single ul{grid-template-columns:1fr}.mega-about .mega-inner{grid-template-columns:1.2fr 1fr}.mega-areas .mega-inner{grid-template-columns:1fr 1fr .8fr}.mega-card{background:var(--wash);border-color:var(--line);margin:0;padding:24px}a.mega-card:hover{border-color:var(--gold);box-shadow:0 10px 24px #0000004d}.mega-promo{background:#d4b57224;border:1px solid #d4b57266}.mega-card b{color:var(--navy);font-size:20px}.mega-card span{color:var(--muted);font-size:15px}.mega-card em{color:var(--gold-ink)}.mega-card-list ul{gap:2px 18px}.mega-card-list li a{min-height:0;color:var(--navy);align-items:normal;padding:7px 0;font-size:16px;display:block}}@media (min-width:1300px){.mega-res .mega-inner{grid-template-columns:1fr 280px}.mega-promo{display:block}}.mega-link{border-radius:var(--radius-sm);border:1px solid var(--line);min-height:56px;color:var(--navy);justify-content:space-between;align-items:center;gap:12px;margin:10px 0 4px;padding:12px 14px;transition:background .15s,border-color .15s;display:flex}.mega-link:hover{background:var(--wash)}.mega-link b{font:600 18px/1.3 var(--font-head);letter-spacing:-.01em;display:block}.mega-link small{font:400 14px/1.4 var(--font-body);color:var(--muted);margin-top:2px;display:block}.mega-link svg{width:16px;height:16px;color:var(--gold-ink);flex:0 0 16px;transition:transform .15s}.mega-link:hover svg{transform:translate(3px)}@media (min-width:1366px){.mega-link{border:0;border-top:1px solid var(--line);min-height:0;color:var(--navy);border-radius:0 0 10px 10px;grid-column:1;margin:8px 0 0;padding:14px 16px}.mega-link:hover{background:var(--wash)}.mega-link b{font-size:18px}.mega-link small{color:var(--muted);font-size:13px}.mega-link svg{color:var(--gold-ink)}}.mega-col{flex-direction:column;display:flex}@media (min-width:1366px){.mega-col{gap:16px}}.menu-urgent{border-radius:var(--radius-sm);background:var(--plum);vertical-align:middle;width:8px;height:8px;margin-right:9px;display:inline-block;position:relative;top:-1px;box-shadow:0 0 0 3px #6b254538}.site-header .mega *{font-weight:700}
.cw{z-index:90;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:12px 44px 14px 16px;animation:.4s .5s both cwIn;position:fixed;top:84px;left:12px;right:12px;box-shadow:0 14px 36px #062d5738}.cw p{margin:0}.cw-eyebrow{color:var(--gold-ink);font:700 11px/1.4 var(--font-head);letter-spacing:.1em;text-transform:uppercase}.cw-line{margin-top:4px;font-size:14px;line-height:1.45}.cw-addr{margin-top:4px;font-size:13px;line-height:1.45}.cw-addr a{color:var(--navy);text-underline-offset:2px;font-weight:700;text-decoration:underline}.cw-actions{gap:8px;margin:10px -28px 0 0;display:flex}.cw-actions .btn{white-space:nowrap;flex:auto;gap:7px;min-width:0;min-height:42px;padding:8px 12px;font-size:14px;line-height:1.2}.cw-actions .btn-plum svg{width:16px;height:16px}.cw-x{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.cw-x:hover{background:var(--wash);color:var(--ink)}.cw-x:focus-visible{outline-offset:2px;outline:3px solid #d4b57299}.cw-x svg{width:13px;height:13px}@keyframes cwIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cw{animation:none}}@media (max-width:620px){.cw-line,.cw-addr{display:none}.cw-eyebrow{padding-top:2px}}@media (min-width:621px){.cw{width:440px;left:auto;right:72px}}
.cookie{bottom:16px;left:12px;right:86px;bottom:calc(16px + var(--bar-h,0px) + env(safe-area-inset-bottom));z-index:1160;background:var(--paper);border-radius:var(--radius);border:1px solid #e3e6ea;align-items:center;gap:12px;padding:10px 10px 10px 16px;animation:.35s both cookieIn;display:flex;position:fixed;box-shadow:0 14px 36px #062d572e}.cookie p{color:var(--ink);flex:1;margin:0;font-size:13px;line-height:1.45}.cookie a{color:var(--navy);text-underline-offset:2px;margin:-6px 0;padding:6px 0;font-weight:700;text-decoration:underline;display:inline-block}.cookie-ok{background:var(--surface-navy);color:#fff;min-height:44px;font:700 13px/1 var(--font-btn);cursor:pointer;border:0;border-radius:999px;flex:none;padding:8px 18px}.cookie-ok:hover{background:var(--surface-navy-2)}.cookie-ok:focus-visible{outline-offset:2px;outline:3px solid #d4b57299}@keyframes cookieIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cookie{animation:none}}@media (min-width:621px){.cookie{left:24px;right:auto;bottom:calc(24px + var(--bar-h,0px));width:360px}}
.mab{z-index:1100;padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px)saturate(160%);backdrop-filter:blur(14px)saturate(160%);background:#03192ef0;border-top:1px solid #ffffff1f;gap:10px;transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(115%)}.mab.show{transform:none}.mab .btn{white-space:nowrap;flex:1 1 0;min-height:48px;padding:10px 14px;font-size:16px;line-height:24px}.mab .btn-plum{flex:0 0 38%}.mab .btn-plum svg{width:18px;height:18px}body.menu-open .mab,body.promo-open .mab{display:none}@media (min-width:901px){.mab{display:none}}@media (prefers-reduced-motion:reduce){.mab{transition:none}}
.rv-toast{bottom:16px;left:12px;bottom:calc(16px + var(--bar-h,0px) + env(safe-area-inset-bottom));z-index:1150;color:#202124;opacity:0;visibility:hidden;background:#fff;border:1px solid #e3e6ea;border-radius:18px;width:max-content;max-width:calc(100% - 100px);transition:opacity .3s,transform .3s,visibility 0s linear .3s;position:fixed;transform:translateY(12px);box-shadow:0 10px 28px #062d572e}.rv-toast.show{opacity:1;visibility:visible;transition:opacity .3s,transform .3s;transform:none}.rv-open{text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border:0;border-radius:18px;align-items:center;gap:10px;padding:8px 34px 8px 10px;display:flex}.rv-open:focus-visible{outline-offset:2px;outline:3px solid #d4b57299}.rv-avatar{color:#fff;width:30px;height:30px;font:600 14px/1 var(--font-head);border-radius:999px;flex:0 0 30px;place-items:center;display:grid;position:relative;overflow:hidden}.rv-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.rv-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.rv-top{align-items:center;gap:6px;min-width:0;display:flex}.rv-name{font:600 14px/1.3 var(--font-head);color:#202124;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rv-stars{color:#fbbc04;font-family:var(--font-glyph);letter-spacing:1px;flex:none;font-size:11px;line-height:1}.rv-g{flex:0 0 13px;width:13px;height:13px;margin-left:2px}.rv-text{font:500 13px/1.4 var(--font-body);color:#3c4043;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rv-open:hover .rv-name{text-underline-offset:3px;text-decoration:underline}.rv-close{color:#80868b;background:0 0;border:0;border-radius:999px;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.rv-close:hover{color:#202124;background:#f1f3f4}.rv-close svg{width:12px;height:12px}@media (min-width:621px){.rv-toast{left:24px;bottom:calc(24px + var(--bar-h,0px));max-width:320px}}@media (prefers-reduced-motion:reduce){.rv-toast,.rv-toast.show{transition:none;transform:none}}
.promo-backdrop{z-index:1400;background:#031428b8;place-items:center;padding:16px;animation:.25s both promoFade;display:grid;position:fixed;inset:0}.promo{isolation:isolate;color:#fff;background:#0b1a2b url(/images/season-promo-storm-over-los-angeles.webp) 45% 0/auto 114% no-repeat;border:1px solid #fff;border-radius:24px;flex-direction:column;width:100%;max-width:460px;min-height:540px;padding:26px 22px 24px;animation:.3s both promoIn;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000080}.promo:before{content:"";z-index:-1;background:linear-gradient(#040e1acc 0%,#040e1a99 34%,#040e1a1f 58%,#040e1a6b 76%,#040e1adb 100%);position:absolute;inset:0}.promo:after{content:"";z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(120% 70% at 70% 0,#e1ecff80,#0000 70%);animation:6s ease-out -4.8s infinite promoFlash;position:absolute;inset:0}.promo-rain{z-index:-1;pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity 1.8s;position:absolute;inset:0}.promo-rain.is-on{opacity:1}.promo-eyebrow{color:var(--gold-2);font:600 12px/1.4 var(--font-head);letter-spacing:.14em;text-transform:uppercase;text-wrap:balance;margin:0 34px 10px 0}.promo-eyebrow:before{content:"";vertical-align:1px;background:#ff5b4f;border-radius:50%;width:8px;height:8px;margin-right:9px;animation:1.6s ease-out infinite promoPing;display:inline-block}.promo-title{color:#fff;font:800 42px/.96 var(--font-display);letter-spacing:.01em;text-transform:uppercase;text-wrap:balance;text-shadow:0 2px 18px #00000073;margin:0 24px 14px 0;animation:6s ease-out -4.8s infinite promoStrike}.promo-title.promo-title-exit{font-size:30px;font-weight:600;line-height:1.04}.promo-text{color:#ffffffe0;text-shadow:0 1px 10px #00000080;margin:0 0 22px;font-size:15px;font-weight:400;line-height:1.6}.promo-actions{flex-direction:column;align-items:stretch;gap:14px;margin-top:auto;display:flex}.promo-actions .btn{white-space:nowrap;min-height:52px;padding:10px 20px;font-size:17px}.promo-call,.promo-skip{align-self:center}.promo-call{white-space:nowrap;color:#fff;font:600 15px/1 var(--font-head);text-shadow:0 1px 8px #0009;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.promo-call svg{width:16px;height:16px;color:var(--gold-2)}.promo-call:hover{text-decoration:underline;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:4px}.promo-skip{color:#ffffffb8;font:500 14px/1 var(--font-head);cursor:pointer;background:0 0;border:0;padding:6px 2px}.promo-skip:hover{color:#fff;text-underline-offset:3px;text-decoration:underline}.promo-close{color:#ffffffd9;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;place-items:center;width:34px;height:34px;padding:0;transition:background .2s,color .2s;display:grid;position:absolute;top:12px;right:12px}.promo-close:hover{color:#fff;background:#fff3}.promo-close svg{width:13px;height:13px}.promo-close:focus-visible,.promo-skip:focus-visible,.promo-call:focus-visible{outline-offset:2px;outline:3px solid #d4b572b3}body.promo-open{overflow:hidden}body.promo-open .qa-teaser{visibility:hidden}@keyframes promoIn{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes promoFade{0%{opacity:0}to{opacity:1}}@keyframes promoPing{0%{box-shadow:0 0 #ff5b4fb3}to{box-shadow:0 0 0 10px #ff5b4f00}}@keyframes promoFlash{0%,88%,to{opacity:0}90%{opacity:.9}91.5%{opacity:.15}93%{opacity:1}97%{opacity:0}}@keyframes promoStrike{0%,88%,96%,to{text-shadow:0 2px 18px #00000073}90%{text-shadow:0 0 16px #ffffffd9,0 0 40px #bedcffa6}91.5%{text-shadow:0 2px 18px #00000073}93%{text-shadow:0 0 20px #fff,0 0 58px #bedcffcc}}@media (prefers-reduced-motion:reduce){.promo,.promo-backdrop,.promo:after,.promo-title,.promo-eyebrow:before{animation:none}}@media (min-width:621px){.promo{min-height:560px;padding:32px 34px 30px}.promo-title{font-size:52px}.promo-title.promo-title-exit{font-size:36px}.promo-text{font-size:16px}}@media (max-height:620px){.promo{min-height:0}}
.qa{bottom:16px;right:16px;bottom:calc(16px + var(--bar-h,0px) + env(safe-area-inset-bottom));z-index:1200;font-family:inherit;transition:bottom .35s cubic-bezier(.2,.7,.2,1);position:fixed}.qa-bubble{cursor:pointer;color:#fff;background:radial-gradient(120% 120% at 30% 18%,#9a3d6a 0%,#6b2545 48%,#4a1530 100%);border:1px solid #fff3;border-radius:50%;place-items:center;width:60px;height:60px;padding:0;transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s,opacity .2s,filter .2s;display:grid;position:relative;box-shadow:inset 0 1px #ffffff52,inset 0 -3px 6px #00000040,0 0 0 4px #ffffffeb,0 0 0 5px #6b254524,0 2px 4px #28081859,0 16px 32px -8px #6b254599}.qa-bubble:after{content:"";pointer-events:none;background:linear-gradient(115deg,#fff0 36%,#ffffff59 50%,#fff0 64%) 130% 0/250% 100% no-repeat;border-radius:50%;transition:background-position .8s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.qa-bubble:hover{filter:brightness(1.06);transform:translateY(-3px)scale(1.05);box-shadow:inset 0 1px #ffffff5c,inset 0 -3px 6px #00000040,0 0 0 4px #fff,0 0 0 5px #6b25452e,0 3px 6px #28081866,0 22px 40px -8px #6b2545b8}.qa-bubble:hover:after{background-position:-30% 0}.qa-bubble:active{transform:scale(.96)}.qa-bubble:focus-visible{outline:3px solid var(--plum);outline-offset:4px}.qa-bubble svg{grid-area:1/1;width:34px;height:34px;transition:transform .3s,opacity .2s}.qa-bubble .qa-ic-close{opacity:0;width:24px;height:24px;transform:rotate(-90deg)scale(.6)}.qa.open .qa-bubble .qa-ic-open{opacity:0;transform:rotate(90deg)scale(.6)}.qa.open .qa-bubble .qa-ic-close{opacity:1;transform:none}.qa.open .qa-bubble{opacity:0;pointer-events:none}.qa-bubble:before{content:"";border:2px solid var(--plum);pointer-events:none;border-radius:50%;animation:2.6s ease-out infinite qaPulse;position:absolute;inset:0}.qa.open .qa-bubble:before,.qa.seen .qa-bubble:before{opacity:0;animation:none}@keyframes qaPulse{0%{opacity:.8;transform:scale(1)}80%,to{opacity:0;transform:scale(1.55)}}.qa-dot{background:#e2483d;border:2.5px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:3px;right:3px}.qa.seen .qa-dot{display:none}.qa-teaser{background:var(--paper);width:max-content;max-width:200px;color:var(--navy);border-radius:var(--radius);font-family:var(--font-head);cursor:pointer;padding:11px 34px 11px 14px;font-size:.86rem;font-weight:700;line-height:1.35;animation:.35s both qaIn;position:absolute;bottom:10px;right:70px;box-shadow:0 10px 30px #062d572e}.qa-teaser button{color:#8a95a3;background:0 0;border:0;border-radius:999px;width:22px;height:22px;padding:0;font-size:1rem;line-height:1;position:absolute;top:6px;right:6px}.qa-teaser button:hover{background:var(--wash);color:var(--navy)}.qa.open .qa-teaser,.qa.seen .qa-teaser{display:none}.qa-panel{background:var(--paper);border-radius:var(--radius) var(--radius) 0 0;transform-origin:100% 100%;opacity:0;visibility:hidden;flex-direction:column;width:100%;height:min(88vh,100dvh);transition:opacity .22s,transform .22s,visibility 0s linear .22s;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(14px)scale(.96);box-shadow:0 24px 70px #062d574d,0 0 0 1px #062d570f}.qa.open .qa-panel{opacity:1;visibility:visible;transition:opacity .22s,transform .22s;transform:none}.qa-head{background:var(--surface-navy);color:#fff;align-items:center;gap:12px;padding:18px 18px 16px;display:flex;position:relative;overflow:hidden}.qa-head:after{content:"";border-radius:var(--radius-sm);pointer-events:none;background:radial-gradient(circle,#d4b57247,#0000 68%);width:170px;height:170px;position:absolute;top:-60px;right:-40px}.qa-avatar{border-radius:var(--radius-sm);background:var(--paper);flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid;position:relative}.qa-avatar img{width:32px;height:32px}.qa-avatar:after{content:"";border-radius:var(--radius-sm);border:2.5px solid var(--navy);background:#34c77b;width:12px;height:12px;position:absolute;bottom:-3px;right:-3px}.qa-title{flex:1;min-width:0}.qa-title b{font-family:var(--font-head);letter-spacing:-.01em;font-size:1.02rem;font-weight:600;display:block}.qa-title span{color:#c9d7e5;margin-top:2px;font-size:.76rem;display:block}.qa-new,.qa-x{z-index:1;color:#fff;background:#ffffff1a;border:0;border-radius:999px;place-items:center;width:40px;height:40px;padding:0;display:grid;position:relative}.qa-new:hover,.qa-x:hover{background:#fff3}.qa-new svg,.qa-x svg{width:16px;height:16px}.qa-log{background:var(--wash);scrollbar-width:thin;flex-direction:column;flex:1;gap:10px;padding:18px 16px 8px;display:flex;overflow-y:auto}.qa-msg{border-radius:var(--radius);overflow-wrap:anywhere;max-width:84%;padding:11px 14px;font-size:.9rem;line-height:1.5;animation:.25s both qaIn}.qa-msg.bot{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-bottom-left-radius:5px;align-self:flex-start}.qa-msg.me{background:var(--surface-navy);color:#fff;border-bottom-right-radius:5px;align-self:flex-end}.qa-msg a{color:var(--gold-ink);font-weight:800}.qa-msg.me a{color:var(--gold)}@keyframes qaIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.qa-typing{gap:4px;padding:14px 16px;display:inline-flex}.qa-typing i{border-radius:var(--radius-sm);background:#9fb0c2;width:7px;height:7px;animation:1.1s ease-in-out infinite qaDot}.qa-typing i:nth-child(2){animation-delay:.15s}.qa-typing i:nth-child(3){animation-delay:.3s}@keyframes qaDot{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.qa-chips{background:var(--wash);flex-wrap:wrap;gap:7px;padding:4px 16px 12px;display:flex}.qa-chips:empty{display:none}.qa-chip{border:1.5px solid var(--navy);background:var(--paper);min-height:36px;color:var(--navy);font-family:var(--font-head);border-radius:999px;padding:7px 13px;font-size:.8rem;font-weight:600;line-height:1.2;transition:all .15s}.qa-chip:hover{background:var(--surface-navy);color:#fff}.qa-form{border-top:1px solid var(--line);background:var(--paper);align-items:flex-end;gap:8px;padding:12px;display:flex}.qa-form textarea{resize:none;border-radius:var(--radius-sm);flex:1;min-height:44px;max-height:120px;padding:11px 14px;font-size:16px;line-height:1.4}.qa-send{background:var(--gold);width:44px;height:44px;color:var(--navy);border:0;border-radius:999px;flex:0 0 44px;place-items:center;padding:0;transition:all .15s;display:grid}.qa-send:hover:not(:disabled){background:var(--gold-2);transform:translateY(-1px)}.qa-send:disabled{opacity:.45;cursor:default}.qa-send svg{width:20px;height:20px}.qa-consent{background:var(--paper);color:var(--muted);margin:0;padding:0 14px 6px;font-size:.66rem;line-height:1.4}.qa-consent a{color:inherit;text-underline-offset:2px;text-decoration:underline}.qa-foot{padding:0 14px 12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:var(--paper);color:var(--muted);justify-content:space-between;gap:10px;font-size:.72rem;display:flex}.qa-foot a{color:var(--navy);white-space:nowrap;font-weight:800}@media (min-width:621px){.qa{right:24px;bottom:calc(24px + var(--bar-h,0px))}.qa-bubble{width:64px;height:64px}.qa.open .qa-bubble{opacity:1;pointer-events:auto}.qa-teaser{max-width:230px;right:78px}.qa-panel{border-radius:var(--radius);width:380px;height:min(600px,100vh - 130px);position:absolute;inset:auto 0 80px auto}.qa-new,.qa-x{width:34px;height:34px}.qa-chip{min-height:0}.qa-form textarea{font-size:.9rem}.qa-foot{padding-bottom:12px}}@media (prefers-reduced-motion:reduce){.qa-bubble:before,.qa-typing i{animation:none}.qa-panel,.qa-msg,.qa-teaser{transition:none;animation:none}}
