/*
Theme Name: Aurora Marketing
Description: Clean abstract digital marketing theme with animated colour fields.
Version: 1.0
Author: Kenny
Text Domain: aurora-marketing
*/
:root{--ink:#15151F;--bg:#FAFAFA}
*{box-sizing:border-box}
.site-header{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:32px 64px;position:relative;z-index:2}
.logo{font-weight:600;font-size:22px}
.main-nav ul{display:flex;gap:36px;list-style:none;margin:0;padding:0;font-weight:300}
.site-footer{background:#fff;border-top:1px solid #ECECF2;font-weight:300;color:#555566}
.footer-line{height:3px;animation:c1 9s ease-in-out infinite}
.footer-grid{padding:64px 64px 32px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.footer-grid p{max-width:320px;line-height:1.7;margin:16px 0 0}
.f-title{font-weight:500;color:var(--ink);margin-bottom:16px}
.f-links,.f-legal{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.f-legal{flex-direction:row;gap:24px}
.f-links a:hover,.f-legal a:hover{color:var(--ink)}
.footer-bottom{margin:0 64px;padding:24px 0 40px;border-top:1px solid #ECECF2;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr;padding:48px 24px 24px}.footer-bottom{margin:0 24px}}
.page-wrap{max-width:820px;margin:0 auto;padding:40px 24px 96px;line-height:1.7;font-weight:300}
/* ===== Menu: underline + Services dropdown ===== */
.main-nav>ul>li{position:relative;padding-bottom:12px;margin-bottom:-12px}
.main-nav>ul>li>a{position:relative;display:inline-block;padding:8px 0}
.main-nav>ul>li>a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background-color:#7C6CFF;animation:c1 9s ease-in-out infinite;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.main-nav>ul>li:hover>a::after,.main-nav>ul>li.current-menu-item>a::after{transform:scaleX(1)}
.main-nav .menu-item-has-children>a::before{content:"";order:2}
.main-nav .menu-item-has-children>a{padding-right:2px}
.main-nav .menu-item-has-children>a::after{}
.main-nav ul.sub-menu{position:absolute;top:100%;left:-24px;margin:0;padding:12px;list-style:none;width:300px;flex-direction:column;gap:0;background:#fff;border:1px solid #ECECF2;border-radius:22px;box-shadow:0 24px 48px rgba(20,20,40,.12);opacity:0;visibility:hidden;transform:translateY(14px) rotateX(-14deg);transform-origin:top;transition:opacity .3s,transform .3s,visibility .3s;z-index:20;display:flex}
.main-nav li:hover>ul.sub-menu,.main-nav li:focus-within>ul.sub-menu{opacity:1;visibility:visible;transform:none}
.main-nav ul.sub-menu a{display:block;padding:12px 14px;border-radius:14px;transition:background .2s,padding .2s}
.main-nav ul.sub-menu a:hover{background:#F4F3FF;padding-left:20px}
@media(max-width:800px){.main-nav ul{flex-wrap:wrap}.main-nav ul.sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;width:auto;padding:4px 0 0 12px}}
@media(max-width:800px){.site-header{padding-left:24px;padding-right:24px}}
/* ===== Design animations ===== */
body{margin:0;background:#FAFAFA}
a{color:inherit;text-decoration:none}
@keyframes c1{0%,100%{background-color:#7C6CFF}33%{background-color:#00D1B2}66%{background-color:#FF8FB1}}
@keyframes c2{0%,100%{background-color:#FFB020}33%{background-color:#FF6B6B}66%{background-color:#4DA3FF}}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-60px,40px) scale(1.15)}}
@keyframes txt{0%,100%{color:#7C6CFF}33%{color:#00B39A}66%{color:#FF5C8A}}
@keyframes fade{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes ring{0%{transform:scale(.3);opacity:.9}100%{transform:scale(1.5);opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes on{0%,100%{background-color:#E6E6F0;transform:scale(1);box-shadow:none}40%,60%{background-color:#00D1B2;transform:scale(1.3);box-shadow:0 0 14px #00D1B2}}
@keyframes race{0%,100%{width:18%}50%{width:92%}}
.rg{position:absolute;inset:0;border:2px solid #7C6CFF;border-radius:50%;animation:ring 3s ease-out infinite}
.dt{width:22px;height:22px;border-radius:50%;background:#E6E6F0;animation:on 5s ease-in-out infinite}
.rc{height:14px;border-radius:14px;animation:race 6s ease-in-out infinite}
.bn{transition:transform .35s}.bn:hover{transform:translateY(-6px)}
@keyframes sway{0%,100%{transform:rotateX(2deg) rotateY(-6deg)}50%{transform:rotateX(-3deg) rotateY(6deg)}}
@keyframes bob{0%,100%{transform:translateZ(46px) translateY(0) rotate(0)}50%{transform:translateZ(60px) translateY(-8px) rotate(8deg)}}
.sv{transform-style:preserve-3d;animation:sway 7s ease-in-out infinite;transition:transform .4s,box-shadow .4s}
.sv:hover{animation:none;transform:rotateX(8deg) rotateY(-14deg) translateZ(30px);box-shadow:-24px 32px 48px rgba(20,20,40,.18)}
.sv .ico{width:56px;height:56px;border-radius:18px;transform:translateZ(46px);animation:c1 9s ease-in-out infinite,bob 5s ease-in-out infinite;box-shadow:8px 8px 0 rgba(20,20,40,.14)}
@keyframes gx{0%,100%{transform:scaleX(.3)}50%{transform:scaleX(1)}}
@keyframes gy{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
@keyframes pls{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.5}}
@keyframes blk{0%,100%{opacity:.15}50%{opacity:1}}
@keyframes drw{0%{stroke-dashoffset:60}55%,100%{stroke-dashoffset:0}}
@keyframes png{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.ik{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.fk{fill:currentColor;stroke:none}
.gx{transform-box:fill-box;transform-origin:left;animation:gx 3s ease-in-out infinite}
.gy{transform-box:fill-box;transform-origin:bottom;animation:gy 3s ease-in-out infinite}
.pl{transform-box:fill-box;transform-origin:center;animation:pls 2.4s ease-in-out infinite}
.bk{animation:blk 1.6s ease-in-out infinite}
.sp{transform-box:fill-box;transform-origin:center;animation:spin 9s linear infinite}
.dr{stroke-dasharray:60;animation:drw 3s ease-in-out infinite}
.pg{transform-box:fill-box;transform-origin:center;animation:png 2.4s ease-out infinite}
.ico3{width:64px;height:64px;padding:8px;box-sizing:border-box;border-radius:18px;background:#F4F3FF;transform:translateZ(46px);box-shadow:8px 8px 0 rgba(20,20,40,.12);color:#7C6CFF;animation:bob 5s ease-in-out infinite,txt 9s ease-in-out infinite}
@keyframes cd{0%,100%{background-color:#5B4BDB}33%{background-color:#00907C}66%{background-color:#D6407A}}
@keyframes cdt{0%,100%{color:#5B4BDB}33%{color:#00907C}66%{color:#D6407A}}
@keyframes fl{0%,100%{transform:translateZ(var(--z)) translateY(0)}50%{transform:translateZ(var(--z)) translateY(-16px)}}
@keyframes ty{0%,100%{opacity:.25}50%{opacity:1}}
.ct{animation:cd 9s ease-in-out infinite}
.cs{transform-style:preserve-3d;animation:sway 7s ease-in-out infinite,cd 9s ease-in-out infinite}
.fb{position:absolute;background:#fff;border-radius:22px;color:#15151F;font-weight:500;animation:fl 5s ease-in-out infinite;box-shadow:10px 14px 0 rgba(0,0,0,.12)}
.td{display:inline-block;width:9px;height:9px;border-radius:50%;background:#5B4BDB;margin:0 3px;animation:ty 1.4s ease-in-out infinite}
.cb{display:inline-block;background:#fff;color:#5B4BDB;font-weight:600;padding:18px 34px;border-radius:999px;box-shadow:6px 8px 0 rgba(0,0,0,.18);animation:cdt 9s ease-in-out infinite;transition:transform .25s,box-shadow .25s}
.cb:hover{transform:translate(-3px,-3px);box-shadow:10px 12px 0 rgba(0,0,0,.2)}
.ch{display:inline-block;border:1.5px solid rgba(255,255,255,.7);color:#fff;padding:12px 22px;border-radius:999px;font-weight:500;transition:transform .25s}
.ch:hover{transform:translateY(-3px)}
.wr{position:absolute;inset:70px;border:2px solid rgba(255,255,255,.7);border-radius:50%;animation:ring 3s ease-out infinite}
.nv{position:relative;display:inline-block;padding:8px 0}
.nv::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background-color:#7C6CFF;animation:c1 9s ease-in-out infinite;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nv:hover::after,.nv.on::after,.dd:hover .nv::after{transform:scaleX(1)}
.cv{display:inline-block;font-size:12px;transition:transform .3s}
.dd:hover .cv{transform:rotate(180deg)}
.dd{position:relative}
.dm{position:absolute;top:100%;left:-24px;padding-top:18px;visibility:hidden;opacity:0;transform:translateY(14px) rotateX(-14deg);transform-origin:top;transition:opacity .3s,transform .3s,visibility .3s;z-index:20}
.dd:hover .dm{visibility:visible;opacity:1;transform:none}
.dmi{background:#fff;border:1px solid #ECECF2;border-radius:22px;padding:12px;box-shadow:0 24px 48px rgba(20,20,40,.12);width:300px;display:flex;flex-direction:column}
.dmi a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;transition:background .2s,padding .2s}
.dmi a:hover{background:#F4F3FF;padding-left:20px}
.dd:hover .dmi a{animation:fade .45s both}
.dmi i{flex:none;width:10px;height:10px;border-radius:50%;animation:c1 9s ease-in-out infinite}
@keyframes ln{0%{stroke-dashoffset:460}60%,92%{stroke-dashoffset:0}100%{stroke-dashoffset:460}}
@keyframes ar{0%,12%{opacity:0}60%,92%{opacity:1}100%{opacity:0}}
@keyframes cu{0%,8%{transform:translate(-150px,-110px)}36%{transform:translate(0,0) scale(1)}41%{transform:translate(0,0) scale(.8)}46%{transform:translate(0,0) scale(1)}84%{transform:translate(0,0)}100%{transform:translate(-150px,-110px)}}
@keyframes clk{0%,38%{transform:scale(.7);opacity:0}42%{opacity:.7}62%,100%{transform:scale(1.7);opacity:0}}
.ln{stroke-dasharray:460;animation:ln 5s ease-in-out infinite}
.ar{animation:ar 5s ease-in-out infinite}
.cu{animation:cu 6s ease-in-out infinite;filter:drop-shadow(0 3px 4px rgba(0,0,0,.25))}
.rp{position:absolute;inset:-6px;border-radius:999px;border:2px solid #7C6CFF;animation:clk 6s ease-out infinite}
.bb{border-radius:8px 8px 4px 4px;transform-origin:bottom;animation:gy 3s ease-in-out infinite,c1 9s ease-in-out infinite}
.dd3{display:block;width:9px;height:9px;border-radius:50%;animation:c1 9s ease-in-out infinite}
@media(max-width:900px){.dvw{display:none}}
@keyframes scn{0%,100%{transform:rotateY(-20deg) rotateX(8deg)}50%{transform:rotateY(20deg) rotateX(-4deg)}}
@keyframes ob{0%,100%{transform:translate3d(var(--x),var(--y),var(--z))}50%{transform:translate3d(var(--x),calc(var(--y) - 34px),calc(var(--z) + 40px))}}
@keyframes rsp{to{transform:rotateX(var(--r)) rotateZ(360deg)}}
@keyframes fsh{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(.8);opacity:.55}}
.sc3{animation:scn 14s ease-in-out infinite}
.sp3{position:absolute;left:0;top:0;width:var(--s);height:var(--s);border-radius:50%;background-image:radial-gradient(circle at 32% 28%,rgba(255,255,255,.95) 0,rgba(255,255,255,.2) 20%,rgba(255,255,255,0) 42%),radial-gradient(circle at 74% 82%,rgba(20,10,80,.34),rgba(20,10,80,0) 62%);box-shadow:inset -10px -14px 30px rgba(20,10,80,.2),0 24px 48px rgba(124,108,255,.28)}
.rg3{position:absolute;border-radius:50%;border:2px solid rgba(124,108,255,.18);border-top-color:#7C6CFF;transform:rotateX(var(--r));animation:rsp 16s linear infinite}
.fs3{border-radius:50%;background:rgba(80,60,200,.2);filter:blur(22px);animation:fsh 7s ease-in-out infinite}
@media(max-width:900px){.sc3w{display:none}}
.o{position:absolute;border-radius:50%;filter:blur(70px);opacity:.75}
.hl{animation:txt 9s ease-in-out infinite}
.f{animation:fade 1s both}.f2{animation-delay:.2s}.f3{animation-delay:.4s}
.line{height:3px;border-radius:3px;animation:c1 9s ease-in-out infinite}
.card{transition:transform .35s,box-shadow .35s}
.card:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(20,20,40,.1)}
.btn{display:inline-block;padding:16px 32px;border-radius:999px;color:#fff;font-weight:500;animation:c1 9s ease-in-out infinite;transition:transform .2s}
.btn:hover{transform:scale(1.06)}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}
/* ===== Elementor page content (class names used by the templates) ===== */
body .elementor .elementor-heading-title,body .elementor .elementor-widget-text-editor,body .elementor .elementor-button{font-family:'Outfit',sans-serif}
.elementor-heading-title .hl{font-weight:600}
.aur-hero{position:relative;overflow:hidden}
.aur-hero::before,.aur-hero::after{content:"";position:absolute;border-radius:50%;filter:blur(70px);opacity:.75;z-index:0;pointer-events:none}
.aur-hero::before{right:60px;top:20px;width:420px;height:420px;animation:c1 9s ease-in-out infinite,drift 12s ease-in-out infinite}
.aur-hero::after{right:320px;top:200px;width:320px;height:320px;animation:c2 11s ease-in-out infinite,drift 15s ease-in-out infinite reverse}
.aur-hero>*{position:relative;z-index:1}
.aur-h1 .elementor-heading-title{font-weight:300;font-size:clamp(44px,7.5vw,104px);line-height:1.05;color:#15151F;animation:fade 1s both}
.aur-h2 .elementor-heading-title{font-weight:300;font-size:clamp(30px,4vw,44px);line-height:1.12;color:#15151F}
.aur-h2s .elementor-heading-title{font-weight:300;font-size:clamp(26px,3vw,34px);color:#15151F}
.aur-h3 .elementor-heading-title{font-weight:500;font-size:24px;line-height:1.25;color:#15151F}
.aur-label .elementor-heading-title{font-size:15px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;animation:txt 9s ease-in-out infinite}
.aur-lead,.aur-lead p{font-size:20px;font-weight:300;line-height:1.6;color:#15151F;animation:fade 1s .2s both}
.aur-p,.aur-p p{font-size:16px;font-weight:300;line-height:1.6;color:#15151F;margin:0}
.aur-num,.aur-num p{font-size:14px;font-weight:300;color:#15151F;margin:0}
.aur-btn .elementor-button{border-radius:999px;color:#fff!important;padding:16px 32px;font-weight:500;animation:c1 9s ease-in-out infinite;transition:transform .2s}
.aur-btn .elementor-button:hover{transform:scale(1.06)}
.aur-card{background:#fff;border:1px solid #ECECF2;border-radius:28px}
.aur-persp{perspective:1200px}
.sv.aur-card{border-radius:24px;box-shadow:0 20px 40px rgba(20,20,40,.07)}
.sv,.sv .e-con-inner,.sv .elementor-widget,.sv .elementor-widget-container{transform-style:preserve-3d}
.sv .aur-num{transform:translateZ(20px)}.sv .aur-h3{transform:translateZ(30px)}.sv .aur-p{transform:translateZ(14px)}
.sv:nth-child(2){animation-delay:-.9s}.sv:nth-child(3){animation-delay:-1.8s}.sv:nth-child(4){animation-delay:-2.7s}.sv:nth-child(5){animation-delay:-3.6s}.sv:nth-child(6){animation-delay:-4.5s}.sv:nth-child(7){animation-delay:-5.4s}.sv:nth-child(8){animation-delay:-6.3s}
.aur-contact{border-radius:44px;color:#fff;background-color:#5B4BDB;box-shadow:0 30px 60px rgba(60,40,160,.25)}
.aur-contact,.aur-contact .e-con-inner,.aur-contact .elementor-widget,.aur-contact .elementor-widget-container,.cs-r{transform-style:preserve-3d}
.aur-contact .elementor-heading-title,.aur-contact .aur-p,.aur-contact .aur-p p{color:#fff}
.aur-contact .aur-label .elementor-heading-title{animation:none;opacity:.85}
.aur-contact .aur-h2 .elementor-heading-title{line-height:1.08}
.cs-l{transform:translateZ(40px)}
.cb-w .elementor-button{background:#fff;color:#5B4BDB;font-weight:600;padding:18px 34px;border-radius:999px;box-shadow:6px 8px 0 rgba(0,0,0,.18);animation:cdt 9s ease-in-out infinite;transition:transform .25s,box-shadow .25s}
.cb-w .elementor-button:hover{transform:translate(-3px,-3px);box-shadow:10px 12px 0 rgba(0,0,0,.2)}
.ch-w .elementor-button{background:transparent;border:1.5px solid rgba(255,255,255,.7);color:#fff;padding:12px 22px;border-radius:999px;font-weight:500;transition:transform .25s}
.ch-w .elementor-button:hover{transform:translateY(-3px);background:transparent;color:#fff}

/* ===== v1.1 fixes: font + stronger Elementor overrides ===== */
body{font-family:'Outfit',sans-serif;color:#15151F}
.site-header,.site-footer,.main-nav a,.logo,.btn{font-family:'Outfit',sans-serif}
.logo{font-weight:600;font-size:22px}
.main-nav a{font-weight:300}
body .elementor .aur-h1{max-width:760px}
body .elementor .aur-h1 .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:300!important;font-size:clamp(44px,7.5vw,104px)!important;line-height:1.05!important;color:#15151F!important}
body .elementor .aur-h2 .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:300!important;font-size:clamp(30px,4vw,44px)!important;line-height:1.12!important;color:#15151F!important}
body .elementor .aur-h2s .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:300!important;font-size:clamp(26px,3vw,34px)!important;color:#15151F!important}
body .elementor .aur-h3 .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:500!important;font-size:24px!important;line-height:1.25!important;color:#15151F!important}
body .elementor .aur-label .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:500!important;font-size:15px!important;letter-spacing:.12em;text-transform:uppercase}
body .elementor .elementor-heading-title .hl{font-weight:600!important}
body .elementor .aur-lead p,body .elementor .aur-p p,body .elementor .aur-num p{font-family:'Outfit',sans-serif!important;font-weight:300!important;color:#15151F!important;margin:0}
body .elementor .aur-lead p{font-size:20px!important;line-height:1.6!important}
body .elementor .aur-contact .elementor-heading-title,body .elementor .aur-contact .aur-p p{color:#fff!important}
body .elementor .aur-contact .aur-h2 .elementor-heading-title{font-size:clamp(34px,4.4vw,56px)!important;line-height:1.08!important}
body .elementor .aur-contact .elementor-heading-title b{font-weight:600}

/* ===== v1.2: coloured dots in dropdown + headline width ===== */
.main-nav ul.sub-menu a{display:flex;align-items:center;gap:12px}
.main-nav ul.sub-menu a::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background-color:#7C6CFF;animation:c1 9s ease-in-out infinite}
.main-nav ul.sub-menu li:nth-child(2) a::before{animation-delay:-1s}
.main-nav ul.sub-menu li:nth-child(3) a::before{animation-delay:-2s}
.main-nav ul.sub-menu li:nth-child(4) a::before{animation-delay:-3s}
.main-nav ul.sub-menu li:nth-child(5) a::before{animation-delay:-4s}
.main-nav ul.sub-menu li:nth-child(6) a::before{animation-delay:-5s}
.main-nav ul.sub-menu li:nth-child(7) a::before{animation-delay:-6s}
.main-nav ul.sub-menu li:nth-child(8) a::before{animation-delay:-7s}
body .elementor .aur-h1{max-width:760px!important}
body .elementor .aur-h1 .elementor-heading-title{max-width:760px}

/* ===== v1.3: logo image ===== */
.logo img{display:block;max-height:52px;width:auto;height:auto}

/* ===== v1.4: logo sizing ===== */
.site-header{padding-top:18px;padding-bottom:18px}
.logo{display:flex;align-items:center;line-height:0}
.logo img{display:block;height:auto;width:auto;max-height:78px;max-width:240px;object-fit:contain}
.site-footer .logo img{max-height:64px}
@media(max-width:800px){.logo img{max-height:56px;max-width:180px}}

/* ===== v1.5: contact buttons 3D ===== */
body .elementor .cb-w .elementor-button{background-color:#fff!important;border:0!important;border-radius:999px!important;font-weight:600!important;padding:18px 34px!important;box-shadow:0 6px 0 rgba(0,0,0,.22),0 16px 26px rgba(0,0,0,.2)!important;transition:transform .2s,box-shadow .2s!important}
body .elementor .cb-w .elementor-button:hover{transform:translateY(-3px)!important;box-shadow:0 9px 0 rgba(0,0,0,.22),0 20px 30px rgba(0,0,0,.22)!important}
body .elementor .cb-w .elementor-button:active{transform:translateY(5px)!important;box-shadow:0 1px 0 rgba(0,0,0,.22),0 4px 8px rgba(0,0,0,.2)!important}
body .elementor .ch-w .elementor-button{background-color:rgba(255,255,255,.16)!important;border:1.5px solid rgba(255,255,255,.75)!important;color:#fff!important;border-radius:999px!important;padding:12px 24px!important;font-weight:500!important;box-shadow:0 4px 0 rgba(0,0,0,.2),0 10px 18px rgba(0,0,0,.15)!important;transition:transform .2s,box-shadow .2s!important}
body .elementor .ch-w .elementor-button:hover{transform:translateY(-3px)!important;box-shadow:0 7px 0 rgba(0,0,0,.2),0 14px 22px rgba(0,0,0,.18)!important}
body .elementor .ch-w .elementor-button:active{transform:translateY(4px)!important;box-shadow:0 0 0 rgba(0,0,0,.2)!important}

/* ===== v1.6: stand-out contact chips ===== */
@keyframes chipGlow{0%,100%{box-shadow:0 6px 0 rgba(0,0,0,.25),0 14px 24px rgba(0,0,0,.2),0 0 0 0 rgba(255,255,255,.75)}60%{box-shadow:0 6px 0 rgba(0,0,0,.25),0 14px 24px rgba(0,0,0,.2),0 0 0 16px rgba(255,255,255,0)}}
@keyframes chipWig{0%,100%{transform:rotate(0)}10%,30%{transform:rotate(-14deg)}20%,40%{transform:rotate(14deg)}50%{transform:rotate(0)}}
body .elementor .ch-w .elementor-button{display:inline-flex!important;align-items:center;gap:10px;background-color:#fff!important;color:#15151F!important;border:0!important;border-radius:999px!important;padding:12px 26px 12px 14px!important;font-weight:600!important;font-size:16px!important;box-shadow:0 6px 0 rgba(0,0,0,.25),0 14px 24px rgba(0,0,0,.2);animation:chipGlow 2.6s ease-out infinite;transition:transform .2s}
body .elementor .ch-w .elementor-button::before{content:"";flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;line-height:1;animation:chipWig 3.2s ease-in-out infinite}
body .elementor .ch-w:nth-child(1) .elementor-button::before{content:"\1F4AC";background:#25D366}
body .elementor .ch-w:nth-child(2) .elementor-button::before{content:"\1F4DE";background:#4DA3FF}
body .elementor .ch-w:nth-child(3) .elementor-button::before{content:"\2709\FE0F";background:#FFB020}
body .elementor .ch-w:nth-child(2) .elementor-button,body .elementor .ch-w:nth-child(2) .elementor-button::before{animation-delay:.5s}
body .elementor .ch-w:nth-child(3) .elementor-button,body .elementor .ch-w:nth-child(3) .elementor-button::before{animation-delay:1s}
body .elementor .ch-w .elementor-button:hover{transform:translateY(-4px) scale(1.05)!important;box-shadow:0 10px 0 rgba(0,0,0,.25),0 22px 32px rgba(0,0,0,.25)!important}
body .elementor .ch-w .elementor-button:active{transform:translateY(4px)!important;box-shadow:0 1px 0 rgba(0,0,0,.25),0 4px 8px rgba(0,0,0,.2)!important}

/* ===== v2.0: footer layout (logo | contact + menu | badges) ===== */
.ft-wrap{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:32px;padding:56px 64px 32px;align-items:center}
.ft-brand{display:flex;align-items:center;justify-content:flex-start}
.ft-brand .logo img{max-height:90px;max-width:240px}
.ft-panel{background:#14477A;color:#fff;border-radius:22px;padding:30px}
.ft-info{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}
.ft-contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}
.ft-contact li{display:flex;gap:12px;align-items:flex-start;line-height:1.5;font-weight:300}
.ft-contact svg{flex:none;margin-top:3px}
.ft-contact b{display:block;font-weight:600;margin-bottom:2px}
.ft-contact a{color:#fff}
.ft-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ft-menu a{color:#fff;font-weight:500;opacity:.92;transition:opacity .2s,padding .2s}
.ft-menu a:hover{opacity:1;padding-left:6px}
.ft-social{display:flex;gap:12px;margin-top:22px}
.ft-social a{display:block;transition:transform .25s}
.ft-social a:hover{transform:translateY(-4px) scale(1.08)}
.ft-badges{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}
.ft-badges .ft-badge{flex:1 1 44%}
.ft-badges .ft-badge:last-child:nth-child(odd){flex-basis:60%}
.ft-badges img{display:block;width:100%;height:auto;border-radius:6px}
.ft-badges figure{margin:0}
@media(max-width:1000px){.ft-wrap{grid-template-columns:1fr;padding:40px 24px 24px}.ft-info{grid-template-columns:1fr}}

/* ===== v2.1: abstract footer (Contact Us | Site Map | badges) ===== */
.site-footer{position:relative;overflow:hidden;background:#F6F5FF;color:#15151F}
.fx{position:absolute;display:block;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none;z-index:0}
.fx1{left:-80px;bottom:-140px;width:420px;height:420px;animation:c1 9s ease-in-out infinite,drift 14s ease-in-out infinite}
.fx2{right:8%;top:-80px;width:320px;height:320px;animation:c2 11s ease-in-out infinite,drift 17s ease-in-out infinite reverse}
.fx3{left:42%;bottom:-120px;width:300px;height:300px;animation:c1 9s -4s ease-in-out infinite,drift 19s ease-in-out infinite}
.fx-wrap{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.3fr .9fr 1fr;gap:40px;padding:64px 64px 28px;align-items:start}
.fx-brand .logo img{max-height:90px;max-width:240px}
.fx-col h4{margin:0 0 22px;font-size:20px;font-weight:600;color:#15151F}
.fx-item{margin-bottom:20px;line-height:1.55;font-weight:300}
.fx-item b{display:block;font-weight:600;color:#15151F}
.fx-item a,.fx-item span{display:block;color:#15151F}
.fx-up{text-transform:uppercase;font-size:15px}
.fx-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.fx-menu a{color:#15151F;font-weight:600;transition:padding .2s,color .2s}
.fx-menu a:hover{padding-left:6px;color:#7C6CFF}
.fx-social{display:flex;gap:12px;margin-top:24px}
.fx-social a{display:block;transition:transform .25s}
.fx-social a:hover{transform:translateY(-4px) scale(1.08)}
.fx-badges .ft-badge{margin-bottom:16px}
.fx-badges img{display:block;max-width:220px;width:100%;height:auto}
.fx-badges figure{margin:0}
.fx-bottom{position:relative;z-index:1;margin:0 64px;padding:22px 0 36px;border-top:1px solid rgba(21,21,31,.12);text-align:center;font-weight:300;color:#555566}
.fx-bottom .f-legal{justify-content:center;margin-top:10px}
@media(max-width:1000px){.fx-wrap{grid-template-columns:1fr;padding:40px 24px 20px;gap:28px}.fx-bottom{margin:0 24px}}

/* ===== v2.2: Elementor footer template classes ===== */
.aur-footer{position:relative;overflow:hidden;background-color:#F6F5FF;background-image:radial-gradient(circle at 45% 105%,rgba(124,108,255,.18),transparent 40%)}
.aur-footer::before,.aur-footer::after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none;z-index:0}
.aur-footer::before{left:-80px;bottom:-140px;width:420px;height:420px;animation:c1 9s ease-in-out infinite,drift 14s ease-in-out infinite}
.aur-footer::after{right:8%;top:-80px;width:320px;height:320px;animation:c2 11s ease-in-out infinite,drift 17s ease-in-out infinite reverse}
.aur-footer>*{position:relative;z-index:1}
body .elementor .aur-fh .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-size:20px!important;font-weight:600!important;color:#15151F!important}
body .elementor .aur-ft p,body .elementor .aur-fm p{font-family:'Outfit',sans-serif!important;margin:0 0 18px!important;font-weight:300!important;line-height:1.55!important;color:#15151F!important}
body .elementor .aur-ft b{font-weight:600}
body .elementor .aur-ft a,body .elementor .aur-fm a{color:#15151F!important}
body .elementor .aur-fm p{margin-bottom:14px!important}
body .elementor .aur-fm a{font-weight:600}
body .elementor .aur-fm a:hover{color:#7C6CFF!important}
body .elementor .aur-fbot p{margin:0!important;text-align:center;font-weight:300;color:#555566!important}
.aur-fbot{border-top:1px solid rgba(21,21,31,.12);padding-top:22px}
.aur-fb img{max-width:220px;height:auto}

/* ===== v2.3: back-to-top button ===== */
@keyframes bobup{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
#aur-top{position:fixed;right:24px;bottom:24px;width:52px;height:52px;padding:0;border:0;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;background-color:#7C6CFF;animation:c1 9s ease-in-out infinite;box-shadow:0 5px 0 rgba(0,0,0,.22),0 12px 22px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .3s,transform .3s,visibility .3s,box-shadow .2s;z-index:9999}
#aur-top.show{opacity:1;visibility:visible;transform:none}
#aur-top:hover{transform:translateY(-4px);box-shadow:0 9px 0 rgba(0,0,0,.22),0 18px 28px rgba(0,0,0,.22)}
#aur-top:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(0,0,0,.22)}
#aur-top svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;animation:bobup 1.8s ease-in-out infinite}

/* ===== v3.0: mobile + tablet responsive ===== */
html,body{overflow-x:hidden}
.nav-toggle,.nav-cta{display:none}
.head-cta{white-space:nowrap}
@media(max-width:1024px){
 .site-header{flex-wrap:nowrap!important;justify-content:space-between;align-items:center;padding:14px 24px!important;position:relative}
 .site-header .logo{margin-left:0!important}
 .site-header .logo img{max-height:56px!important;max-width:170px!important}
 .head-cta{display:none}
 .nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:46px;height:46px;padding:0;border:0;border-radius:14px;cursor:pointer;background-color:#7C6CFF;animation:c1 9s ease-in-out infinite;box-shadow:0 4px 0 rgba(0,0,0,.2)}
 .nav-toggle span{display:block;width:22px;height:2.5px;border-radius:2px;background:#fff;transition:transform .3s,opacity .3s}
 .site-header.nav-open .nav-toggle span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
 .site-header.nav-open .nav-toggle span:nth-child(2){opacity:0}
 .site-header.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
 .site-header .main-nav{display:none;position:absolute;left:16px;right:16px;top:100%;background:#fff;border:1px solid #ECECF2;border-radius:22px;box-shadow:0 24px 48px rgba(20,20,40,.14);padding:12px;max-height:calc(100vh - 110px);overflow:auto;z-index:9998}
 .site-header.nav-open .main-nav{display:block}
 .site-header .main-nav>ul{flex-direction:column;gap:0;flex-wrap:nowrap}
 .site-header .main-nav>ul>li{padding-bottom:0;margin-bottom:0}
 .site-header .main-nav a{display:block;padding:14px 16px;border-radius:14px}
 .site-header .main-nav>ul>li>a::after{display:none}
 .site-header .main-nav ul.sub-menu{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;width:auto;min-width:0;padding:0 0 6px 14px;background:transparent;flex-direction:column}
 .site-header .main-nav li.sub-open>ul.sub-menu{display:flex}
 .site-header .main-nav .menu-item-has-children>a::after{content:"\25BE";position:static;display:inline-block;height:auto;background:none;animation:none;transform:none;margin-left:8px;font-size:12px}
 .site-header .main-nav li.sub-open>a::after{transform:rotate(180deg)}
 .nav-cta{display:block;margin:10px 4px 4px;text-align:center}
 body .elementor .aur-hero{padding-left:32px!important;padding-right:32px!important;padding-top:56px!important;padding-bottom:72px!important;min-height:0!important}
 .aur-hero::before{width:300px;height:300px;right:-90px;top:10px}
 .aur-hero::after{display:none}
 .sv,.cs{animation:none!important}
 .cs{animation:cd 9s ease-in-out infinite!important}
 .cs-r{min-height:320px}
 .cs-l{transform:none}
}
@media(max-width:767px){
 .site-header{padding:12px 16px!important}
 .site-header .logo img{max-height:48px!important;max-width:150px!important}
 body .elementor .aur-hero{padding-left:20px!important;padding-right:20px!important;padding-top:40px!important;padding-bottom:56px!important}
 body .elementor .aur-h1 .elementor-heading-title{font-size:clamp(38px,11vw,52px)!important}
 body .elementor .aur-h2 .elementor-heading-title{font-size:clamp(26px,7.5vw,34px)!important}
 body .elementor .aur-lead p{font-size:18px!important}
 body .elementor .aur-contact{border-radius:28px;padding:36px 22px!important}
 body .elementor .aur-contact .aur-h2 .elementor-heading-title{font-size:30px!important}
 body .elementor .ch-w .elementor-button{font-size:15px!important;padding:10px 20px 10px 12px!important}
 .cs-r{min-height:280px;transform:scale(.9)}
 .sv{animation:none!important}
 .fx-wrap,.footer-grid{grid-template-columns:1fr!important}
 #aur-top{width:46px;height:46px;right:16px!important;bottom:16px}
}
