:root{
--qa-press:100ms;--qa-micro:80ms;--qa-quick:150ms;--qa-fast:250ms;--qa-medium:350ms;--qa-slow:400ms;--qa-very-slow:500ms;
--qa-ease:cubic-bezier(.22,1,.36,1);--qa-ease-out:ease-out;
--qa-press-scale:.985
}
/* --- qart header state --- */
.xpro-theme-builder-header,.xpro-theme-builder-header .e-con,.xpro-theme-builder-header .e-con-inner,.xpro-theme-builder-header-nav{border:0!important;box-shadow:none!important}
.xpro-theme-builder-header{transition:background-color var(--qa-fast) var(--qa-ease),backdrop-filter var(--qa-fast) var(--qa-ease),-webkit-backdrop-filter var(--qa-fast) var(--qa-ease)}
.xpro-theme-builder-header .e-con,.xpro-theme-builder-header .e-con-inner{transition:background-color var(--qa-fast) var(--qa-ease),border-color var(--qa-fast) var(--qa-ease)}
.xpro-theme-builder-header .xpro-site-logo img{transition:filter var(--qa-fast) var(--qa-ease)}
body:not(.home) .xpro-theme-builder-header{position:sticky!important;top:0;z-index:99;background-color:rgba(243,243,243,.72)!important;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}
body:not(.home) .xpro-theme-builder-header .e-con,body:not(.home) .xpro-theme-builder-header .e-con-inner{background-color:transparent!important}
body:not(.home) .xpro-theme-builder-header .xpro-elementor-button{background-color:#141414!important;color:#f3f3f3!important;border-color:#141414!important}
body:not(.home) .xpro-theme-builder-header .xpro-elementor-button svg,body:not(.home) .xpro-theme-builder-header .xpro-elementor-button i{color:#f3f3f3!important;fill:#f3f3f3!important}
body.home .xpro-theme-builder-header{position:fixed!important;top:0;left:0;right:0;width:100%;z-index:99;background-color:transparent!important;-webkit-backdrop-filter:blur(0px) saturate(100%);backdrop-filter:blur(0px) saturate(100%)}
body.home .xpro-theme-builder-header .e-con,body.home .xpro-theme-builder-header .e-con-inner{background-color:transparent!important;border-color:transparent!important}
body.home .xpro-theme-builder-header .xpro-site-logo img{filter:brightness(0) invert(1)}
body.home .xpro-theme-builder-header .xpro-elementor-button{background-color:#f3f3f3!important;color:#141414!important;border-color:#f3f3f3!important}
body.home .xpro-theme-builder-header .xpro-elementor-button svg,body.home .xpro-theme-builder-header .xpro-elementor-button i{color:#141414!important;fill:#141414!important}
body.home .xpro-theme-builder-header .xpro-elementor-horizontal-menu-toggler{color:#f3f3f3!important}
@media (min-width:1025px){
body.home .xpro-theme-builder-header .xpro-elementor-nav-link{color:#c6cacb!important}
body.home .xpro-theme-builder-header .xpro-elementor-nav-link:hover,body.home .xpro-theme-builder-header .xpro-elementor-nav-link:focus{color:#f3f3f3!important}
}
body.home .xpro-theme-builder-header.qart-solid{background-color:rgba(243,243,243,.72)!important;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}
body.home .xpro-theme-builder-header.qart-solid .e-con,body.home .xpro-theme-builder-header.qart-solid .e-con-inner{background-color:transparent!important}
body.home .xpro-theme-builder-header.qart-solid .xpro-site-logo img{filter:none}
body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-nav-link{color:#3d4245!important}
body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-nav-link:hover,body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-nav-link:focus{color:#141414!important}
body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-button{background-color:#141414!important;color:#f3f3f3!important;border-color:#141414!important}
body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-button svg,body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-button i{color:#f3f3f3!important;fill:#f3f3f3!important}
body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-horizontal-menu-toggler{color:#141414!important}
.xpro-theme-builder-header .xpro-elementor-button:hover svg,.xpro-theme-builder-header .xpro-elementor-button:hover i{color:#f3f3f3!important;fill:#f3f3f3!important}
body.home .xpro-theme-builder-header .xpro-elementor-button:hover *,body.home .xpro-theme-builder-header .xpro-elementor-button:focus-visible *,body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-button:hover *,body.home .xpro-theme-builder-header.qart-solid .xpro-elementor-button:focus-visible *,body:not(.home) .xpro-theme-builder-header .xpro-elementor-button:hover *,body:not(.home) .xpro-theme-builder-header .xpro-elementor-button:focus-visible *{color:#f3f3f3!important;fill:#f3f3f3!important}

/* Q ART global. One white only: #f3f3f3. Square corners. One accent: #09394a. */
html,body{background:#f3f3f3;color:#141414;-webkit-font-smoothing:antialiased}
a{text-decoration:none} *{border-radius:0 !important}
::selection{background:#09394a;color:#f3f3f3}
:focus-visible{outline:2px solid #09394a;outline-offset:3px}
img,svg,video{display:block;max-width:100%}
#qart-megazone{position:relative}
.qart-lockup img{width:128px;height:auto}
@media(max-width:1024px){.qart-header-cta{display:none}}
.qart-nav .xpro-elementor-horizontal-navbar-nav>li>a{position:relative;padding:8px 0;margin:0 17px;transition:color var(--qa-fast) var(--qa-ease)}
.qart-nav .xpro-elementor-horizontal-navbar-nav>li>a:after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:#09394a;transform:scaleX(0);transform-origin:100% 50%;transition:transform var(--qa-fast) var(--qa-ease)}
.qart-nav .xpro-elementor-horizontal-navbar-nav>li>a:hover:after,.qart-nav .xpro-elementor-horizontal-navbar-nav>li>a[aria-current]:after{transform:scaleX(1);transform-origin:0 50%}
.qart-nav .xpro-elementor-horizontal-navbar-nav>li>a:hover{color:#141414}

.qart-flink a{color:#4f5457;background-image:linear-gradient(#09394a,#09394a);background-size:0% 1px;background-repeat:no-repeat;background-position:0 100%;padding-bottom:2px;transition:background-size var(--qa-fast) var(--qa-ease),color var(--qa-fast) var(--qa-ease)}
.qart-flink a:hover{background-size:100% 1px;color:#09394a}
.qart-fbio{max-width:300px;margin-top:16px}
.qart-social{margin-top:18px}
.qart-outline .xpro-heading-title,.qart-outline h1,.qart-outline div{color:transparent;-webkit-text-stroke:1px #b6baba;transition:-webkit-text-stroke-color var(--qa-very-slow) var(--qa-ease);user-select:none}
#qart-footer:hover .qart-outline .xpro-heading-title{-webkit-text-stroke-color:#09394a}
@media(hover:none),(pointer:coarse){.qart-flink a{display:inline-block;padding-block:7px}}

/* --- qart page components --- */
.qart-acc .e-n-accordion-item{border-bottom:1px solid #d3d5d5}
.qart-acc .e-n-accordion-item-title{padding:26px 0;cursor:pointer;transition:padding-left var(--qa-fast) var(--qa-ease),color var(--qa-fast) var(--qa-ease)}
.qart-acc .e-n-accordion-item-title:hover{padding-left:10px}
.qart-acc details[open] .e-n-accordion-item-title{padding-left:10px}
.qart-acc .e-n-accordion-item-title-icon{color:#09394a}
.qart-acc--faq .e-n-accordion-item-title{padding:20px 0}
.qart-form .wpforms-field{padding:0 0 22px}
.qart-form input,.qart-form select,.qart-form textarea{background:transparent!important;border-radius:0!important}
.qart-form input:focus,.qart-form select:focus,.qart-form textarea:focus{outline:none;border-bottom-color:#09394a!important;box-shadow:none}
.qart-form textarea{min-height:130px;resize:vertical}
.qart-form .wpforms-required-label{color:#09394a}
.qart-form button[type=submit]{border:0;cursor:pointer;transition:background-color var(--qa-fast) var(--qa-ease)}
.qart-page-art img{transition:transform 1.3s cubic-bezier(.16,1,.3,1)}
.elementor-widget-text-editor a{color:#09394a;background-image:linear-gradient(#09394a,#09394a);background-size:0% 1px;background-repeat:no-repeat;background-position:0 100%;transition:background-size var(--qa-fast) var(--qa-ease)}
.elementor-widget-text-editor a:hover{background-size:100% 1px}

/* portfolio: real markup is Cube Portfolio (cbp-*) */
.qart-portfolio .cbp-l-filters-button{display:flex;flex-wrap:wrap;gap:9px;padding:0;margin:0 0 44px;list-style:none}
.qart-portfolio .cbp-filter-item{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#4f5457;background:transparent;border:1px solid #bfc2c2;padding:9px 17px;cursor:pointer;border-radius:0;transition:color var(--qa-fast) var(--qa-ease),background-color var(--qa-fast) var(--qa-ease),border-color var(--qa-fast) var(--qa-ease)}
.qart-portfolio .cbp-filter-item-active{background:#141414;color:#f3f3f3;border-color:#141414}
.qart-portfolio .cbp-caption-defaultWrap{border:1px solid #d3d5d5;overflow:hidden;background:#f3f3f3}
.qart-portfolio .cbp-caption-defaultWrap img{display:block;width:100%;height:auto;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.qart-portfolio .cbp-item:hover .cbp-caption-defaultWrap img{transform:scale(1.045)}
.qart-portfolio .xpro-elementor-gallery-content{padding:16px 0 0;text-align:left}
.qart-portfolio .xpro-elementor-gallery-title{font-family:Archivo,sans-serif;font-size:21px;font-weight:600;letter-spacing:-.5px;color:#141414;margin:0 0 5px}
.qart-portfolio .xpro-elementor-gallery-desc{font-family:Archivo,sans-serif;font-size:13.5px;line-height:1.45em;color:#4f5457;white-space:pre-line}
.qart-portfolio .cbp-item:hover .xpro-elementor-gallery-title{color:#09394a}
.qart-portfolio .xpro-select-option{border:1px solid #bfc2c2;border-radius:0;font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:#4f5457}

/* --- qart button hover (site-wide) --- */
.elementor-button:hover *,.elementor-button:focus-visible *,.wpforms-submit:hover *,.wpforms-submit:focus-visible *{color:#f3f3f3!important;fill:#f3f3f3!important}
.elementor-button:hover svg,.elementor-button:focus-visible svg{fill:#f3f3f3!important;color:#f3f3f3!important}

/* --- qart button wipe: teal rises from the bottom edge on hover --- */
.elementor-button,.wpforms-submit,.qart-portfolio .cbp-filter-item,.xpro-theme-builder-header .xpro-elementor-button{background-image:linear-gradient(to top,#09394a 0%,#09394a 100%)!important;background-repeat:no-repeat!important;background-position:left bottom!important;background-size:100% 0%!important;background-origin:border-box!important;transition:background-size var(--qa-medium) var(--qa-ease),color var(--qa-quick) ease,fill var(--qa-quick) ease,border-color var(--qa-medium) var(--qa-ease),transform var(--qa-press) var(--qa-ease-out)!important}
.elementor-button *,.wpforms-submit *,.qart-portfolio .cbp-filter-item *,.xpro-theme-builder-header .xpro-elementor-button *{transition:color var(--qa-quick) ease,fill var(--qa-quick) ease}
.elementor-button:hover,.elementor-button:focus-visible,.wpforms-submit:hover,.wpforms-submit:focus-visible,.qart-portfolio .cbp-filter-item:hover,.qart-portfolio .cbp-filter-item:focus-visible,.xpro-theme-builder-header .xpro-elementor-button:hover,.xpro-theme-builder-header .xpro-elementor-button:focus-visible{background-size:100% 100%!important;border-color:#09394a!important;color:#f3f3f3!important;transition:background-size var(--qa-fast) var(--qa-ease),color var(--qa-press) ease 90ms,fill var(--qa-press) ease 90ms,border-color var(--qa-fast) var(--qa-ease)!important}
.elementor-button:hover *,.elementor-button:focus-visible *,.wpforms-submit:hover *,.wpforms-submit:focus-visible *,.qart-portfolio .cbp-filter-item:hover *,.qart-portfolio .cbp-filter-item:focus-visible *,.xpro-theme-builder-header .xpro-elementor-button:hover *,.xpro-theme-builder-header .xpro-elementor-button:focus-visible *{color:#f3f3f3!important;fill:#f3f3f3!important;transition:color var(--qa-press) ease 90ms,fill var(--qa-press) ease 90ms}
@media (prefers-reduced-motion:reduce){.elementor-button,.wpforms-submit,.qart-portfolio .cbp-filter-item,.xpro-theme-builder-header .xpro-elementor-button{transition:background-color .01s,color .01s,border-color .01s!important;background-image:none!important}.elementor-button:hover,.elementor-button:focus-visible,.wpforms-submit:hover,.wpforms-submit:focus-visible,.qart-portfolio .cbp-filter-item:hover,.qart-portfolio .cbp-filter-item:focus-visible,.xpro-theme-builder-header .xpro-elementor-button:hover,.xpro-theme-builder-header .xpro-elementor-button:focus-visible{background-color:#09394a!important}}

/* qart hover bg pinned so only the gradient moves */
.wpforms-submit:hover,.wpforms-submit:focus-visible{background-color:#141414!important}
.qart-portfolio .cbp-filter-item:hover,.qart-portfolio .cbp-filter-item:focus-visible{background-color:transparent!important}
.qart-portfolio .cbp-filter-item-active:hover,.qart-portfolio .cbp-filter-item-active:focus-visible{background-color:#141414!important}

/* --- qart press feedback: respond on pointer-down, not on release --- */
.elementor-button:active,.wpforms-submit:active,.qart-portfolio .cbp-filter-item:active,.xpro-theme-builder-header .xpro-elementor-button:active{transform:scale(var(--qa-press-scale))}
@media (prefers-reduced-motion:reduce){.elementor-button:active,.wpforms-submit:active,.qart-portfolio .cbp-filter-item:active,.xpro-theme-builder-header .xpro-elementor-button:active{transform:none}}

/* --- qart translucent header material fallbacks --- */
@media (prefers-reduced-transparency:reduce){
body:not(.home) .xpro-theme-builder-header,body.home .xpro-theme-builder-header.qart-solid{background-color:#f3f3f3!important;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
body:not(.home) .xpro-theme-builder-header,body.home .xpro-theme-builder-header.qart-solid{background-color:#f3f3f3!important}
}
