:root{--rose:#F2726B;--peach:#FF9A76;--gold:#FFC48A;--ink:#14102A;--violet:#2A1E4D;--cream:#FAF6F2;--body:#5D566E;--ease:cubic-bezier(.19,1,.22,1)}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
::selection{background:var(--rose);color:#fff}
:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
h1,h2{letter-spacing:-.012em}
.myas-section h1,.myas-section h2{text-wrap:balance}
.myas-section p{text-wrap:pretty}

/* ---------- scroll progress ---------- */
.myas-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:10000;background:linear-gradient(90deg,var(--rose),var(--gold));transition:width .12s linear;pointer-events:none}

/* ---------- header: transparent over hero, frosted on scroll ---------- */
.xpro-theme-builder-header{position:fixed!important;top:0;left:0;right:0;z-index:9990;background:transparent;transition:background .5s var(--ease),box-shadow .5s var(--ease),backdrop-filter .5s var(--ease)}
.myas-glasshead{background:transparent!important}
.myas-headrow>.e-con-inner{transition:padding .45s var(--ease)}
body.myas-scrolled .xpro-theme-builder-header{background:rgba(250,246,242,.86);backdrop-filter:blur(22px) saturate(170%);-webkit-backdrop-filter:blur(22px) saturate(170%);box-shadow:0 10px 34px rgba(20,16,42,.10)}
body.myas-scrolled .myas-headrow>.e-con-inner{padding-top:12px!important;padding-bottom:12px!important}
body.myas-scrolled .myas-wordmark .elementor-heading-title,body.myas-scrolled .myas-wordmark a{color:var(--ink)!important}
body.myas-scrolled .myas-menu .xpro-elementor-nav-link{color:var(--ink)!important}
body.myas-scrolled .myas-menu .xpro-elementor-nav-link:hover,body.myas-scrolled .myas-menu .current-menu-item>.xpro-elementor-nav-link{color:var(--rose)!important}
body.myas-scrolled .myas-headphone .xpro-infolist-title,body.myas-scrolled .myas-headphone a{color:var(--ink)!important}
.myas-wordmark .elementor-heading-title,.myas-wordmark a{transition:color .4s var(--ease)}

/* menu underline */
.myas-menu .xpro-elementor-horizontal-navbar-nav>.nav-item>.xpro-elementor-nav-link{position:relative}
.myas-menu .xpro-elementor-horizontal-navbar-nav>.nav-item>.xpro-elementor-nav-link::after{content:"";position:absolute;left:16px;right:16px;bottom:4px;height:2px;border-radius:2px;background:var(--rose);transform:scaleX(0);transform-origin:left center;transition:transform .45s var(--ease)}
.myas-menu .xpro-elementor-horizontal-navbar-nav>.nav-item>.xpro-elementor-nav-link:hover::after,.myas-menu .xpro-elementor-horizontal-navbar-nav>.current-menu-item>.xpro-elementor-nav-link::after{transform:scaleX(1)}

/* ---------- mobile / tablet: floating glass pill ---------- */
@media (max-width:1024px){
 .xpro-theme-builder-header{top:12px;left:12px;right:12px;border-radius:26px;background:rgba(255,255,255,.70)!important;backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);border:1px solid rgba(255,255,255,.55);box-shadow:0 18px 44px rgba(20,16,42,.20)}
 body.myas-scrolled .xpro-theme-builder-header{background:rgba(255,255,255,.88)!important;box-shadow:0 14px 34px rgba(20,16,42,.16)}
 .myas-headrow>.e-con-inner{flex-wrap:nowrap!important;gap:10px!important;padding-top:9px!important;padding-bottom:9px!important}
 .myas-headrow>.e-con-inner>.e-con{flex:0 0 auto!important;width:auto!important}
 .myas-brand{flex:1 1 auto!important;min-width:0}
 .myas-wordmark .elementor-heading-title,.myas-wordmark a{color:var(--ink)!important;white-space:nowrap;font-size:17px!important;line-height:1.1}
 .myas-headbtn .xpro-elementor-button{padding:11px 16px!important;font-size:12.5px!important}
}
@media (max-width:420px){
 .myas-wordmark .elementor-heading-title,.myas-wordmark a{font-size:15px!important}
 .myas-headbtn .xpro-elementor-button{padding:10px 13px!important;font-size:11.5px!important}
 .xpro-theme-builder-header{left:9px;right:9px;border-radius:22px}
}

/* premium hamburger */
.xpro-elementor-horizontal-menu-toggler{position:relative;width:44px;height:44px;border-radius:14px;background:rgba(20,16,42,.07);display:flex!important;align-items:center;justify-content:center;transition:background .35s var(--ease),transform .25s var(--ease)}
.xpro-elementor-horizontal-menu-toggler:hover{background:rgba(242,114,107,.14)}
.xpro-elementor-horizontal-menu-toggler:active{transform:scale(.94)}
.xpro-elementor-horizontal-menu-toggler i,.xpro-elementor-horizontal-menu-toggler svg{display:none!important}
.xpro-elementor-horizontal-menu-toggler::before,.xpro-elementor-horizontal-menu-toggler::after{content:"";position:absolute;left:13px;right:13px;height:2px;border-radius:2px;background:var(--ink);transition:transform .4s var(--ease),opacity .3s var(--ease)}
.xpro-elementor-horizontal-menu-toggler::before{top:15px;box-shadow:0 6px 0 var(--ink)}
.xpro-elementor-horizontal-menu-toggler::after{bottom:15px}
.xpro-elementor-horizontal-menu-toggler.is-open::before{transform:translateY(6px) rotate(45deg);box-shadow:none}
.xpro-elementor-horizontal-menu-toggler.is-open::after{transform:translateY(-7px) rotate(-45deg)}

/* off-canvas panel */
.xpro-elementor-horizontal-navbar{transition:transform .55s var(--ease),opacity .4s var(--ease)!important;backdrop-filter:blur(26px) saturate(160%);-webkit-backdrop-filter:blur(26px) saturate(160%);border-radius:26px 0 0 26px}
.xpro-elementor-horizontal-menu-overlay{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
@media (max-width:1024px){
 .xpro-elementor-horizontal-navbar-nav>.nav-item>.xpro-elementor-nav-link{font-size:19px!important;padding:15px 4px!important;font-family:'Playfair Display',serif}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item{animation:myasSlideIn .55s var(--ease) both}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item:nth-child(1){animation-delay:.10s}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item:nth-child(2){animation-delay:.16s}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item:nth-child(3){animation-delay:.22s}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item:nth-child(4){animation-delay:.28s}
 body.myas-menu-open .xpro-elementor-horizontal-navbar-nav>.nav-item:nth-child(5){animation-delay:.34s}
}
@keyframes myasSlideIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}

/* ---------- reveal on scroll (only when JS is running) ---------- */
.myas-js .myas-reveal{opacity:0;transform:translateY(34px);transition:opacity 1.05s var(--ease),transform 1.05s var(--ease)}
.myas-js .myas-reveal.is-in{opacity:1;transform:none}
.myas-js .myas-section .myas-stagger>.e-con,.myas-js .myas-section .myas-stagger>.elementor-widget{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.myas-section.is-in .myas-stagger>.e-con,.myas-section.is-in .myas-stagger>.elementor-widget,.myas-hero .myas-stagger>.e-con,.myas-hero .myas-stagger>.elementor-widget{opacity:1;transform:none}
.myas-stagger>*:nth-child(1){transition-delay:.04s}
.myas-stagger>*:nth-child(2){transition-delay:.12s}
.myas-stagger>*:nth-child(3){transition-delay:.20s}
.myas-stagger>*:nth-child(4){transition-delay:.28s}
.myas-stagger>*:nth-child(5){transition-delay:.36s}
.myas-stagger>*:nth-child(6){transition-delay:.44s}
.myas-stagger>*:nth-child(7){transition-delay:.52s}
.myas-stagger>*:nth-child(8){transition-delay:.60s}

/* ---------- hero ---------- */
.myas-hero{background-size:cover!important;background-position:center center!important}
.myas-hero.myas-ken{animation:myasKen 28s ease-in-out infinite alternate}
@keyframes myasKen{from{background-size:106%}to{background-size:118%}}
.myas-hero h1{text-shadow:0 2px 30px rgba(20,16,42,.35)}

/* ---------- cards + imagery ---------- */
.myas-card{transition:transform .6s var(--ease),box-shadow .6s var(--ease)!important;will-change:transform}
.myas-card:hover{transform:translateY(-10px);box-shadow:0 36px 74px rgba(20,16,42,.20)!important}
.myas-photo{background-size:cover!important;background-position:center center!important;transition:background-size 1.3s var(--ease),filter .7s var(--ease)!important}
.myas-card:hover .myas-photo,.myas-photo:hover{background-size:119%!important}

/* ---------- buttons ---------- */
.elementor-button,.xpro-elementor-button{transition:transform .38s var(--ease),box-shadow .38s var(--ease),background-color .38s var(--ease),color .38s var(--ease),border-color .38s var(--ease)!important}
.elementor-button:hover,.xpro-elementor-button:hover{transform:translateY(-3px)}
.elementor-button:hover{box-shadow:0 16px 34px rgba(242,114,107,.30)}
.elementor-button .elementor-button-icon,.xpro-elementor-button i{transition:transform .38s var(--ease)}
.elementor-button:hover .elementor-button-icon,.xpro-elementor-button:hover i{transform:translateX(5px)}

/* ---------- pills / tags ---------- */
.myas-section .elementor-widget-heading .elementor-heading-title{transition:color .35s var(--ease),background-color .35s var(--ease),border-color .35s var(--ease)}

/* ---------- icon boxes ---------- */
.elementor-widget-icon-box .elementor-icon{transition:transform .5s var(--ease),color .4s var(--ease)}
.elementor-widget-icon-box:hover .elementor-icon{transform:translateY(-4px) scale(1.08)}

/* ---------- accordion ---------- */
.elementor-accordion .elementor-accordion-item{border:1px solid #EFE9E4!important;border-radius:20px!important;overflow:hidden;margin-bottom:12px;background:#fff;box-shadow:0 8px 26px rgba(20,16,42,.05);transition:box-shadow .4s var(--ease),transform .4s var(--ease)}
.elementor-accordion .elementor-accordion-item:hover{box-shadow:0 16px 38px rgba(20,16,42,.09)}
.elementor-accordion .elementor-tab-title{padding:23px 26px!important;transition:background .35s var(--ease)}
.elementor-accordion .elementor-tab-title:hover{background:#FDF3EF}
.elementor-accordion .elementor-tab-content{border-top:0!important;padding:0 26px 26px!important}
.elementor-accordion .elementor-accordion-icon{transition:transform .4s var(--ease)}

/* ---------- gallery ---------- */
.elementor-image-gallery .gallery-icon{overflow:hidden;border-radius:20px;display:block}
.elementor-image-gallery .gallery-item img{border-radius:20px!important;transition:transform .9s var(--ease),filter .7s var(--ease)!important;border:0!important;display:block}
.elementor-image-gallery .gallery-item:hover img{transform:scale(1.07)}

/* ---------- counters ---------- */
.elementor-counter .elementor-counter-number-wrapper{line-height:1}

/* ---------- forms (WPForms) ---------- */
.wpforms-container .wpforms-field-label{font-family:'Karla',sans-serif!important;font-size:11px!important;letter-spacing:.16em;text-transform:uppercase;color:#8A839C!important;font-weight:600!important;margin-bottom:8px!important}
.wpforms-container input[type=text],.wpforms-container input[type=email],.wpforms-container input[type=tel],.wpforms-container input[type=date],.wpforms-container select,.wpforms-container textarea{border:1px solid #E6DFD9!important;border-radius:12px!important;padding:14px 16px!important;font-family:'Karla',sans-serif!important;font-size:15px!important;color:var(--ink)!important;background:#fff!important;box-shadow:none!important;transition:border-color .3s var(--ease),box-shadow .3s var(--ease)!important}
.wpforms-container input:focus,.wpforms-container select:focus,.wpforms-container textarea:focus{border-color:var(--rose)!important;box-shadow:0 0 0 4px rgba(242,114,107,.12)!important;outline:none!important}
.wpforms-container button[type=submit]{background:linear-gradient(135deg,var(--rose),var(--peach))!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:15px 34px!important;font-family:'Karla',sans-serif!important;font-size:15px!important;font-weight:600!important;transition:transform .35s var(--ease),box-shadow .35s var(--ease)!important}
.wpforms-container button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(242,114,107,.34)!important;background:var(--ink)!important}

/* ---------- floating WhatsApp ---------- */
.myas-wa{position:fixed;right:20px;bottom:22px;z-index:9980;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff!important;box-shadow:0 14px 32px rgba(37,211,102,.42);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.myas-wa:hover{transform:scale(1.09) translateY(-3px);color:#fff!important;box-shadow:0 20px 40px rgba(37,211,102,.5)}
.myas-wa svg{width:29px;height:29px;fill:currentColor}
.myas-wa::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(37,211,102,.55);animation:myasPulse 2.6s var(--ease) infinite}
@keyframes myasPulse{0%{transform:scale(1);opacity:.8}70%{transform:scale(1.5);opacity:0}100%{opacity:0}}
@media (max-width:600px){.myas-wa{right:14px;bottom:16px;width:50px;height:50px}.myas-wa svg{width:26px;height:26px}}

/* ---------- footer polish ---------- */
.xpro-theme-builder-footer .xpro-infolist-title{transition:color .3s var(--ease)}

/* ---------- header alignment fixes ---------- */
.myas-headrow>.e-con-inner{flex-wrap:nowrap!important;align-items:center!important}
.myas-headbtn .xpro-elementor-button,.myas-headbtn .xpro-elementor-button span{white-space:nowrap!important}
.myas-headphone .xpro-infolist-wrapper,.myas-headphone ul,.myas-headphone li{flex-wrap:nowrap!important;align-items:center!important;margin:0!important}
.myas-headphone .xpro-infolist-title,.myas-headphone a,.myas-headphone span{white-space:nowrap!important}
.myas-headphone .xpro-infolist-content,.myas-headphone .xpro-infolist-body,.myas-headphone .xpro-infolist-text{min-width:0!important;flex:0 0 auto!important}

@media (min-width:1025px){
 .myas-brand,.myas-headcta{flex:0 0 auto!important;width:auto!important}
 .myas-nav{flex:1 1 auto!important;width:auto!important}
 /* the off-canvas panel styling must not leak onto the desktop bar */
 .myas-menu .xpro-elementor-horizontal-navbar{background:transparent!important;background-color:transparent!important;box-shadow:none!important;border-radius:0!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:0!important;position:static!important;transform:none!important;width:auto!important}
 .myas-menu .xpro-elementor-horizontal-navbar-nav{flex-wrap:nowrap!important;justify-content:center!important}
 .myas-menu .xpro-elementor-nav-link,.myas-menu .menu-item{white-space:nowrap!important}
 .myas-menu .xpro-elementor-horizontal-menu-close{display:none!important}
}

/* tighten the bar where five items plus a phone number would crowd it */
@media (min-width:1025px) and (max-width:1400px){
 .myas-menu .xpro-elementor-nav-link{font-size:14px!important;padding:10px 11px!important}
 .myas-wordmark .elementor-heading-title,.myas-wordmark a{font-size:23px!important}
}
@media (min-width:1025px) and (max-width:1260px){
 .myas-headphone{display:none!important}
}

@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
 .myas-reveal,.myas-section .myas-stagger>*{opacity:1!important;transform:none!important}
}
