/* Final header layer: loaded after style.css so legacy theme rules cannot override it. */
.site-header{position:sticky;top:0;z-index:100;isolation:isolate;border:0;background:transparent;box-shadow:0 10px 34px rgba(33,43,83,.1);backdrop-filter:none}
.site-header:before,.site-header:after{display:none}
.header-brand-bar{position:relative;overflow:hidden;background:linear-gradient(100deg,#213d7a 0%,#293f7b 55%,#4f356f 100%);color:#fff}
.header-brand-bar:after{content:"";position:absolute;right:8%;top:-28px;width:110px;height:110px;border:18px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}
.header-brand-bar-inner{height:34px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.header-brand-bar-inner>span:first-child,.header-brand-bar-inner>a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.header-brand-bar-inner i{color:#ff9fbd}.header-brand-bar-inner a:hover{color:#ffb7cd}
.header-brand-message{display:flex;align-items:center;justify-content:center;gap:10px;color:#dce5f8}.header-brand-message i{display:block;width:4px;height:4px;border-radius:50%;background:#f58bad;box-shadow:0 0 0 4px rgba(245,139,173,.1)}
.header-main{position:relative;background:rgba(255,252,253,.97);border-bottom:1px solid rgba(233,205,215,.65);backdrop-filter:blur(18px) saturate(145%)}
.header-main:after{content:"";position:absolute;left:50%;bottom:-1px;width:min(1160px,82%);height:2px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#f2a1ba 28%,#ef709d 50%,#8fa2cf 72%,transparent);opacity:.55}
.site-header .header-row{min-height:84px;display:grid;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;gap:28px}
.site-header .site-branding{grid-column:1;grid-row:1;justify-content:flex-start}.site-header .site-branding:before,.site-header .site-branding:after{display:none}.site-header .site-branding .custom-logo{max-width:166px;max-height:64px}
.site-header .site-nav{position:static;grid-column:2;grid-row:1;justify-self:center;display:block;padding:0;border:0;background:none;box-shadow:none;overflow:visible}
.site-header .site-nav>ul{display:flex;align-items:center;justify-content:center;gap:3px;padding:0;margin:0;list-style:none}
.site-header .site-nav>ul>li>a{position:relative;display:flex;align-items:center;min-height:44px;padding:10px 13px;border-radius:11px;color:#25314c;font-size:13px;font-weight:780;transition:color .2s ease,background .2s ease}.site-header .site-nav>ul>li>a:after{display:none}.site-header .site-nav>ul>li>a:hover,.site-header .site-nav>ul>.current-menu-item>a,.site-header .site-nav>ul>.current-menu-ancestor>a{color:#d34d7d;background:#fff0f5;transform:none}
.site-header .site-nav .menu-item-has-children{position:relative}.site-header .site-nav .menu-item-has-children>a{padding-right:29px}.site-header .site-nav .menu-item-has-children>a:before{content:"\f078";position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#dc5c89;font-family:"Font Awesome 7 Free";font-size:8px;font-weight:900}
.site-header .site-nav .sub-menu{position:absolute;z-index:120;top:calc(100% + 15px);left:50%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px;row-gap:2px;width:min(570px,calc(100vw - 40px));max-height:calc(100vh - 150px);overflow:auto;padding:15px;margin:0;border:1px solid rgba(37,61,120,.09);border-radius:20px;background:rgba(255,255,255,.99);box-shadow:0 24px 55px rgba(31,45,88,.2);opacity:0;visibility:hidden;transform:translate(-50%,9px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease}
.site-header .site-nav .sub-menu:before{content:"";position:absolute;left:50%;top:-7px;width:13px;height:13px;border-left:1px solid rgba(37,61,120,.08);border-top:1px solid rgba(37,61,120,.08);background:#fff;transform:translateX(-50%) rotate(45deg)}
.site-header .site-nav .menu-item-has-children:hover>.sub-menu,.site-header .site-nav .menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.site-header .site-nav .sub-menu li{width:auto}.site-header .site-nav .sub-menu a{position:relative;display:flex;align-items:center;min-height:43px;padding:9px 11px 9px 35px;border-radius:11px;color:#34405b;font-size:12px;font-weight:700;line-height:1.25}.site-header .site-nav .sub-menu a:before{content:"";position:absolute;left:13px;width:9px;height:9px;border:2px solid #ef82a7;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(239,130,167,.1)}.site-header .site-nav .sub-menu a:hover{color:#c94273;background:linear-gradient(90deg,#fff0f5,#fff8fb);transform:none}.site-header .site-nav .sub-menu a:hover:before{background:#ef82a7}
.site-header .header-actions{grid-column:3;grid-row:1;display:flex;justify-content:flex-end;align-items:center;gap:14px;white-space:nowrap}.site-header .header-actions .phone,.site-header .header-actions .phone:hover{display:flex;padding:0;border:0;background:transparent;box-shadow:none;color:#25314c;font-size:12px;font-weight:800;transform:none}.site-header .header-actions .phone i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff0f5;color:#dd5787}.site-header .header-actions .phone:hover span{color:#d34d7d}.site-header .header-actions .hd-btn{display:inline-flex;padding:9px 10px 9px 15px;font-size:12px}
.site-header .mobile-toggle{display:none;width:44px;height:44px;padding:0;border:1px solid #f1d8e1;border-radius:13px;background:#fff7fa;cursor:pointer}.site-header .mobile-toggle-lines{display:grid;gap:6px;justify-items:end}.site-header .mobile-toggle-lines i{display:block;width:20px;height:2px;border-radius:2px;background:#263e79}.site-header .mobile-toggle-lines i:last-child{width:14px}
@media(max-width:1080px){.site-header .header-row{grid-template-columns:155px minmax(0,1fr) auto;gap:15px}.site-header .site-branding .custom-logo{max-width:145px}.site-header .site-nav>ul>li>a{padding:9px;font-size:12px}.site-header .site-nav .menu-item-has-children>a{padding-right:25px}.site-header .header-actions .phone span{display:none}}
@media(max-width:900px){.header-brand-message{display:none}.site-header .header-row{min-height:74px;grid-template-columns:1fr auto;gap:12px}.site-header .site-branding{grid-column:1;grid-row:1}.site-header .site-branding .custom-logo{max-width:142px;max-height:56px}.site-header .header-actions{grid-column:2;grid-row:1}.site-header .header-actions .phone{display:none}.site-header .mobile-toggle{display:grid;place-items:center}.site-header .site-nav{position:absolute;top:100%;left:0;right:0;display:none;max-height:calc(100vh - 108px);overflow:auto;padding:12px 20px 22px;background:rgba(255,252,253,.995);border-top:1px solid #f4dce5;box-shadow:0 22px 40px rgba(31,45,88,.14)}.site-header .site-nav.open{display:block}.site-header .site-nav>ul{display:grid;gap:2px}.site-header .site-nav>ul>li>a{min-height:46px;padding:11px 8px;border-radius:9px;font-size:14px}.site-header .site-nav .sub-menu{position:static;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-height:none;overflow:visible;padding:4px 0 8px 12px;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none!important}.site-header .site-nav .sub-menu:before{display:none}.site-header .site-nav .sub-menu a{padding:8px 8px 8px 28px;color:#68718a}.site-header .site-nav .sub-menu a:before{left:9px;width:7px;height:7px}.header-main:after{width:100%}}
@media(max-width:600px){.header-brand-bar-inner{height:29px;font-size:9px}.header-brand-bar-inner>a{display:none}.site-header .header-actions .hd-btn{display:none}.site-header .site-nav{max-height:calc(100vh - 103px);padding-left:14px;padding-right:14px}.site-header .site-nav .sub-menu{grid-template-columns:1fr}.site-header .site-branding .custom-logo{max-width:130px}.site-header .header-row{min-height:68px}}

/* Desktop service menu: compact editorial panel, not a card grid. */
@media(min-width:901px){
  .site-header .site-nav .menu-item-has-children:after{content:"";position:absolute;z-index:121;left:50%;top:calc(100% + 2px);width:58px;height:49px;opacity:0;visibility:hidden;transform:translateX(-50%) scale(.7);transform-origin:top center;clip-path:polygon(48% 0,100% 100%,12% 100%);background:linear-gradient(145deg,#203a76 0%,#293e78 68%,#3d376f 100%);filter:drop-shadow(5px 5px 0 rgba(241,124,164,.14));transition:opacity .18s ease,visibility .18s ease,transform .22s cubic-bezier(.2,.75,.25,1)}
  .site-header .site-nav .menu-item-has-children:hover:after,.site-header .site-nav .menu-item-has-children:focus-within:after{opacity:1;visibility:visible;transform:translateX(-50%) scale(1)}
  .site-header .site-nav .sub-menu{top:calc(100% + 36px);grid-template-columns:repeat(3,minmax(0,1fr));width:min(800px,calc(100vw - 44px));padding:17px 20px 21px;column-gap:24px;row-gap:0;border:1px solid rgba(255,255,255,.1);border-radius:13px 34px 13px 34px;background:linear-gradient(135deg,#203a76 0%,#293e78 58%,#4b326b 100%);box-shadow:12px 14px 0 rgba(241,124,164,.18),0 28px 58px rgba(17,29,66,.28)}
  .site-header .site-nav .sub-menu:before{position:static;display:block;grid-column:1/-1;width:auto;height:auto;margin:0 0 11px;padding:3px 0 17px;border:0;border-bottom:1px solid rgba(255,255,255,.14);border-radius:0;background:transparent;transform:none;content:"Make It a Moment";color:#ffabc6;font-family:inherit;font-size:32px;font-weight:900;line-height:1;letter-spacing:-.05em;text-transform:none;text-shadow:0 7px 22px rgba(14,23,58,.34)}
  .site-header .site-nav .sub-menu li{width:100%!important;min-width:0;border-bottom:1px solid rgba(255,255,255,.075)}
  .site-header .site-nav .sub-menu li:nth-last-child(-n+3){border-bottom:0}
  .site-header .site-nav .sub-menu a{width:100%;min-width:0;min-height:43px;padding:9px 34px 9px 0;border-radius:0;color:#f5f7ff;font-size:12px;font-weight:720;line-height:1.25;transition:color .2s ease,transform .2s ease}
  .site-header .site-nav .sub-menu a:before{display:none}
  .site-header .site-nav .sub-menu a:after{content:"\f061";position:absolute;left:auto;right:3px;top:50%;bottom:auto;display:grid;place-items:center;width:24px;height:24px;border:1px solid rgba(255,171,198,.22);border-radius:50%;background:rgba(255,255,255,.055);color:#ff9fbd;font-family:"Font Awesome 7 Free";font-size:8px;font-weight:900;opacity:0;transform:translate(-4px,-50%);transition:opacity .2s ease,transform .2s ease,background .2s ease}
  .site-header .site-nav .sub-menu a:hover{color:#ffabc6;background:transparent;transform:translateX(4px)}
  .site-header .site-nav .sub-menu a:hover:after{opacity:1;transform:translate(0,-50%);background:rgba(239,124,165,.14)}
}

/* WordPress menu state must not look like a hover state. */
.site-header .site-nav>ul>.current-menu-item>a,
.site-header .site-nav>ul>.current-menu-ancestor>a,
.site-header .site-nav>ul>.current_page_item>a,
.site-header .site-nav>ul>.current_page_ancestor>a{color:#25314c;background:transparent;transform:none}
.site-header .site-nav>ul>.current-menu-item>a:hover,
.site-header .site-nav>ul>.current-menu-ancestor>a:hover,
.site-header .site-nav>ul>.current_page_item>a:hover,
.site-header .site-nav>ul>.current_page_ancestor>a:hover{color:#d34d7d;background:#fff0f5}

/* Full-screen mobile navigation */
.mobile-menu-top,.mobile-menu-bottom{display:none}
@media(max-width:900px){
  body.hd-menu-open{overflow:hidden;overscroll-behavior:none}
  body.hd-menu-open .site-header .header-main{backdrop-filter:none}
  .site-header .site-nav{position:fixed;z-index:200;inset:0;display:block;width:100%;height:100vh;height:100dvh;max-height:none;padding:0;overflow-x:hidden;overflow-y:auto;border:0;background:linear-gradient(145deg,#fff 0%,#fff8fb 58%,#f7f4ff 100%);box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(100%);transition:opacity .25s ease,visibility .25s ease,transform .38s cubic-bezier(.22,.72,.22,1)}
  .site-header .site-nav:before{content:"";position:fixed;z-index:-1;right:-75px;top:95px;width:190px;height:190px;border:27px solid rgba(241,124,164,.055);border-radius:50%;pointer-events:none}
  .site-header .site-nav:after{content:"";position:fixed;z-index:-1;left:-62px;bottom:58px;width:150px;height:150px;border:22px solid rgba(37,61,120,.04);border-radius:50%;pointer-events:none}
  .site-header .site-nav.open{display:block;opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
  .mobile-menu-top{position:sticky;z-index:4;top:0;display:flex;align-items:center;justify-content:space-between;min-height:108px;padding:calc(17px + env(safe-area-inset-top)) 78px 15px 22px;border-bottom:1px solid #f1d8e2;background:rgba(255,252,253,.94);backdrop-filter:blur(18px) saturate(145%)}
  .mobile-menu-logo{line-height:0}.mobile-menu-logo .custom-logo{width:auto;max-width:145px;max-height:67px}.mobile-menu-top>span{color:#d55080;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
  body.hd-menu-open .site-header .mobile-toggle{position:fixed;z-index:205;top:calc(24px + env(safe-area-inset-top));right:20px;display:grid;width:49px;height:49px;border:1px solid rgba(37,61,120,.13);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(37,61,120,.12)}
  body.hd-menu-open .site-header .mobile-toggle-lines i{background:#263e79}
  .site-header .site-nav>ul{display:grid;width:min(100%,600px);gap:0;margin:0 auto;padding:22px 22px 8px}
  .site-header .site-nav>ul>li{border-bottom:1px solid rgba(37,61,120,.1)}
  .site-header .site-nav>ul>li>a,.site-header .site-nav>ul>.current-menu-item>a,.site-header .site-nav>ul>.current-menu-ancestor>a{min-height:59px;padding:12px 4px;border-radius:0;background:transparent;color:#26314b;font-size:23px;font-weight:850;letter-spacing:-.025em}
  .site-header .site-nav>ul>li>a:hover{background:transparent;color:#d34d7d}
  .site-header .site-nav .menu-item-has-children>a{padding-right:42px}
  .site-header .site-nav .menu-item-has-children>a:before{right:8px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#fff0f5;color:#d84f80;transform:translateY(-50%) rotate(0);transition:transform .25s ease,background .25s ease}
  .site-header .site-nav .menu-item-has-children.services-open>a:before{background:#f17ca4;color:#fff;transform:translateY(-50%) rotate(180deg)}
  .site-header .site-nav .sub-menu{position:static;display:grid!important;grid-template-columns:1fr;width:100%;max-height:0!important;margin:0;padding:0 0 0 18px!important;overflow:hidden!important;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:0;visibility:visible;transform:none!important;transition:max-height .5s cubic-bezier(.2,.75,.2,1),opacity .25s ease,padding .35s ease}
  .site-header .site-nav .services-open>.sub-menu{max-height:1100px!important;padding:5px 0 16px 18px!important;opacity:1}
  .site-header .site-nav .sub-menu:before{display:none}.site-header .site-nav .sub-menu li{border:0}
  .site-header .site-nav .sub-menu a{min-height:40px;padding:7px 4px 7px 25px;border-radius:8px;color:#68718a;font-size:13px;font-weight:700;line-height:1.3}
  .site-header .site-nav .sub-menu a:before{left:4px;width:8px;height:8px;border-width:2px;box-shadow:0 0 0 3px rgba(239,130,167,.08)}
  .site-header .site-nav .sub-menu a:hover{padding-left:29px;background:#fff0f5;color:#c94273}
  .mobile-menu-bottom{display:grid;width:min(calc(100% - 44px),556px);gap:13px;margin:0 auto;padding:17px 0 calc(32px + env(safe-area-inset-bottom))}
  .site-header .site-nav .mobile-menu-phone{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:13px;padding:13px 15px;border:1px solid rgba(37,61,120,.09);border-radius:15px;background:#fff;color:#26314b;box-shadow:0 10px 27px rgba(37,61,120,.07);font-size:15px;font-weight:850}
  .mobile-menu-phone>i{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff0f5;color:#d94f80}.mobile-menu-phone small{display:block;margin-bottom:1px;color:#8b93a7;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
  .site-header .mobile-menu-quote{display:flex!important;min-height:56px;padding:9px 10px 9px 19px;border-radius:14px;font-size:14px}.mobile-menu-quote i{display:grid;place-items:center;width:36px;height:36px;margin-left:auto;border-radius:10px;background:#fff;color:#d94f80}
}

@media(max-width:900px){
  .site-header .site-nav .sub-menu{counter-reset:mobile-service}
  .site-header .site-nav .sub-menu li{counter-increment:mobile-service}
  .site-header .site-nav .sub-menu a{display:grid;grid-template-columns:31px minmax(0,1fr) 28px;align-items:center;gap:8px;min-height:48px;padding:6px 5px;border-radius:10px;color:#59657e;font-size:13px;font-weight:750;transition:color .2s ease,background .2s ease,transform .2s ease}
  .site-header .site-nav .sub-menu a:before{content:counter(mobile-service,decimal-leading-zero);position:static;display:block;width:auto;height:auto;border:0;border-radius:0;background:none;box-shadow:none;color:#e05a89;font-size:9px;font-weight:900;letter-spacing:.08em}
  .site-header .site-nav .sub-menu a:after{content:"\f061";position:static;display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(37,61,120,.09);border-radius:50%;background:rgba(255,255,255,.72);color:#d95886;font-family:"Font Awesome 7 Free";font-size:8px;font-weight:900;opacity:.72;transform:none;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}
  .site-header .site-nav .sub-menu a:hover{padding:6px 5px;background:rgba(255,255,255,.72);color:#263d78;transform:translateX(3px)}
  .site-header .site-nav .sub-menu a:hover:after{border-color:#f17ca4;background:#f17ca4;color:#fff;transform:translateX(2px)}
}
@media(min-width:520px) and (max-width:900px){.site-header .site-nav .sub-menu{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.site-header .site-nav .services-open>.sub-menu{max-height:620px!important}}
@media(max-width:420px){.mobile-menu-top>span{display:none}.site-header .site-nav>ul>li>a{font-size:21px}.site-header .site-nav>ul{padding-left:18px;padding-right:18px}.mobile-menu-bottom{width:calc(100% - 36px)}}
