/*
Theme Name: Aimfinity Group
Template: twentytwentyfive
Version: 1.0.0
Description: Child theme for Aimfinity Group. Built by Peak Service.
Text Domain: aimfinity
*/
html{scroll-behavior:smooth}
body{overflow-x:hidden}
.af-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--wp--preset--color--line)}
.admin-bar .af-header{top:32px}
.af-header .wp-block-site-logo img{display:block}
.af-header .wp-block-navigation{font-size:15px;font-weight:500;letter-spacing:.01em}
.af-header .wp-block-navigation .wp-block-navigation-item__content{color:var(--wp--preset--color--navy)}
.af-header .wp-block-navigation a.wp-block-navigation-item__content:hover{color:var(--wp--preset--color--gold)}
.af-header .wp-block-navigation__submenu-container{border:1px solid var(--wp--preset--color--line)!important;padding:8px 0!important;min-width:280px!important;box-shadow:0 18px 40px rgba(0,26,62,.10)}
.af-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:10px 20px!important}
.af-phone a{color:var(--wp--preset--color--navy);text-decoration:none;font-weight:600;font-size:15px;white-space:nowrap}
.af-phone a:hover{color:var(--wp--preset--color--gold)}
.af-header .wp-block-button__link,.af-footer .wp-block-button__link{border-radius:999px;padding:12px 26px;font-size:15px;font-weight:600;white-space:nowrap}
.af-header .wp-block-button__link:hover{background:var(--wp--preset--color--gold)!important}
@media (max-width:1100px){.af-phone{display:none}}
@media (max-width:600px){.af-header .af-cta{display:none}.admin-bar .af-header{top:0}}
.af-footer a{color:#fff;text-decoration:none}
.af-footer a:hover{color:var(--wp--preset--color--gold-light)}
.af-footer .af-foot-list{list-style:none;padding:0;margin:0}
.af-footer .af-foot-list li{margin:0 0 10px}
.af-footer h2{letter-spacing:.14em;text-transform:uppercase}
.af-hours{font-variant-numeric:tabular-nums}
/* Elementor content pages: no theme gaps */
.af-main > .entry-content > .elementor, .af-main .wp-block-post-content{margin-top:0}
.af-main .wp-block-post-content > .elementor{max-width:none}
/* FAQ accordion (Elementor nested accordion) */
.af-faq .e-n-accordion-item{border-top:1px solid var(--wp--preset--color--line);}
.af-faq .e-n-accordion-item:last-child{border-bottom:1px solid var(--wp--preset--color--line)}
.af-faq .e-n-accordion-item-title{padding:22px 0!important;border:0!important;background:transparent!important;gap:24px;justify-content:space-between}
.af-faq .e-n-accordion-item-title-text{font-family:"Libre Baskerville",Baskerville,Georgia,serif;font-size:19px!important;font-weight:400;color:var(--wp--preset--color--navy)!important;line-height:1.4;margin:0}
.af-faq .e-n-accordion-item-title-icon svg{fill:var(--wp--preset--color--gold)!important;width:14px;height:14px}
.af-faq .e-n-accordion-item > .e-con{padding:0 40px 24px 0!important;border:0!important}
.af-faq .elementor-widget-text-editor{font-size:17px;line-height:1.7;color:var(--wp--preset--color--muted)}
.af-faq a,.elementor .af-p a{color:var(--wp--preset--color--navy);text-decoration-color:var(--wp--preset--color--gold);text-underline-offset:3px}
.elementor .af-p a:hover{color:#8A6420}
/* fixes */
.wp-site-blocks > footer, .wp-site-blocks > .af-main{margin-block-start:0!important}
.af-faq .e-n-accordion-item-title{flex-direction:row-reverse!important}
.af-faq .e-n-accordion-item-title-header{justify-content:flex-start!important;text-align:left;flex:1}
.af-faq .e-n-accordion-item-title-text{text-align:left}
.af-footer{padding:84px 24px 36px}
.af-footer .wp-block-columns{gap:48px}
.af-header{padding:14px 24px}
.af-header .wp-block-site-logo img{width:92px!important;height:auto}
@media (max-width:781px){.af-footer{padding:64px 20px 32px!important}}
@media (max-width:600px){.af-header .wp-block-group:has(> .af-cta){display:none}.af-header .wp-block-site-logo img{width:76px!important}}
.af-footer a.af-credit{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:17px}
.af-credit .af-credit-by{color:#A9B4C8}
.af-credit img{display:block;height:32px;width:auto;margin:0}
.af-credit .af-credit-name{color:#C9A44C;font-weight:600}
.af-footer a.af-credit:hover .af-credit-name{color:#D8BC7D}

/* S01 tabbed services */
.af-svc-tabs .e-n-tabs{--n-tabs-heading-wrap:wrap}
.af-svc-tabs .e-n-tabs-heading{gap:8px!important;flex-wrap:wrap!important;justify-content:flex-start!important;margin-bottom:18px}
.af-svc-tabs .e-n-tab-title{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;border-radius:999px!important;padding:11px 16px!important;font-family:"Public Sans",sans-serif!important;font-size:14px!important;font-weight:500!important;flex:0 0 auto!important;transition:background .2s,color .2s,border-color .2s}
.af-svc-tabs .e-n-tab-title:hover{border-color:#D8BC7D!important}
.af-svc-tabs .e-n-tab-title[aria-selected=true]{background:#D8BC7D!important;border-color:#D8BC7D!important;color:#001A3E!important}
.af-svc-tabs .e-n-tab-title-text{color:inherit!important}
.af-svc-tabs .e-n-tabs-content > .e-con.af-svc-panel{background:#fff;padding:32px!important;display:none;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:56px;align-items:center;border:0!important}
.af-svc-tabs .e-n-tabs-content > .e-con.af-svc-panel.e-active{display:grid!important}
.af-svc-panel > .e-con{padding:0!important;width:auto!important;max-width:none!important}
.af-svc-media img{width:100%!important;aspect-ratio:4/3;object-fit:cover;display:block}
.af-svc-body{gap:0!important;padding-right:24px!important}
.af-svc-body h3{font-family:"Libre Baskerville",Baskerville,Georgia,serif;font-size:28px;font-weight:400;line-height:1.25;color:#001A3E;margin:0 0 14px}
.af-svc-body .elementor-widget-text-editor{font-size:17px;line-height:1.7;color:#4F5665;margin-bottom:18px}
.af-svc-body .elementor-icon-list-items{margin-bottom:26px!important}
.af-svc-body .elementor-icon-list-item{padding:5px 0!important;font-size:16px;color:#1A1F2B}
.af-svc-body .elementor-icon-list-icon svg{width:7px!important;height:7px!important;fill:#B4893A!important}
.af-svc-body .elementor-icon-list-icon{padding-right:12px}
.af-svc-body .elementor-button{background:#001A3E;color:#fff;border-radius:999px;padding:15px 30px;font-family:"Public Sans",sans-serif;font-size:15px;font-weight:600;transition:background .2s}
.af-svc-body .elementor-button:hover{background:#8A6420;color:#fff}
@media (max-width:767px){.af-svc-tabs .e-n-tabs-content > .e-con.af-svc-panel.e-active{grid-template-columns:minmax(0,1fr);gap:24px;padding:20px!important}.af-svc-body{padding-right:0!important}.af-svc-body h3{font-size:30px}.af-svc-tabs .e-n-tabs-content > .e-n-tab-title{margin-top:10px}}.af-svc-body,.af-svc-body .elementor-widget-text-editor,.af-svc-body .elementor-icon-list-text{font-family:"Public Sans",sans-serif!important}
.af-svc-body .elementor-heading-title{font-family:"Libre Baskerville",Baskerville,Georgia,serif!important;font-size:28px!important;font-weight:400!important;line-height:1.25!important;color:#001A3E!important;margin:0 0 14px!important}
.af-svc-body .elementor-icon-list-text{color:#1A1F2B!important;font-size:16px!important}
.af-svc-body .elementor-widget-text-editor{color:#4F5665!important}
@media (max-width:767px){.af-svc-body .elementor-heading-title{font-size:24px!important}}

/* ===== Motion & hover (Peak Service) ===== */
@media (prefers-reduced-motion:no-preference){
.elementor .e-button-base{transition:background-color .3s ease,color .3s ease,border-color .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}
.elementor .af-btn:hover,.elementor .af-btn-gold:hover,.elementor .af-btn-outline:hover,.elementor .af-btn-ghost-light:hover{transform:translateY(-3px);box-shadow:0 14px 28px -12px rgba(0,26,62,.45)}
.elementor .af-link{position:relative;text-decoration:none!important;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .35s ease,color .3s}
.elementor .af-link:hover{background-size:0 1px}
/* image zoom */
.af-zoom{overflow:hidden}
.af-zoom img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)!important;will-change:transform}
.af-zoom:hover img{transform:scale(1.05)}
.af-svc-media{overflow:hidden}
.af-svc-media img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)!important}
.af-svc-panel:hover .af-svc-media img{transform:scale(1.05)}
/* lift items with gold rule */
.af-lift{transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .45s ease}
.af-lift::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:0;background:#B4893A;transition:width .6s cubic-bezier(.2,.7,.2,1)}
.af-lift:hover{transform:translateY(-6px)}
.af-lift:hover::before{width:100%}
/* service tab panel reveal */
.af-svc-tabs .e-n-tabs-content > .e-con.e-active{animation:afPanelIn .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes afPanelIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.af-svc-tabs .e-n-tab-title{transition:background-color .3s,color .3s,border-color .3s,transform .3s!important}
.af-svc-tabs .e-n-tab-title:hover{transform:translateY(-2px)}
.af-svc-body .elementor-button{transition:background .3s,transform .3s,box-shadow .3s!important}
.af-svc-body .elementor-button:hover{transform:translateY(-3px);box-shadow:0 14px 28px -12px rgba(0,26,62,.45)}
/* industry rows */
.af-ind{transition:padding-left .35s ease,border-color .35s ease,color .35s}
.af-ind:hover{padding-left:24px!important;border-color:#001A3E!important}
/* city links */
.elementor .af-city a{text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:color .3s,gap .3s}
.elementor .af-city a::after{content:"\2192";color:#B4893A;opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .3s}
.elementor .af-city a:hover{color:#8A6420}
.elementor .af-city a:hover::after{opacity:1;transform:none}
/* FAQ */
.af-faq .e-n-accordion-item-title-text{transition:color .3s}
.af-faq .e-n-accordion-item-title:hover .e-n-accordion-item-title-text{color:#8A6420!important}
.af-faq .e-n-accordion-item-title-icon{transition:transform .35s ease}
.af-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{transform:rotate(180deg)}
/* header nav underline */
.af-header .wp-block-navigation-item__content{position:relative}
.af-header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after{content:"";position:absolute;left:0;bottom:-6px;height:1px;width:100%;background:#B4893A;transform:scaleX(0);transform-origin:right;transition:transform .35s ease}
.af-header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after{transform:scaleX(1);transform-origin:left}
.af-header .wp-block-button__link{transition:background .3s,transform .3s}
.af-header .wp-block-button__link:hover{transform:translateY(-2px)}
.af-header .wp-block-site-logo img{transition:transform .5s ease}
.af-header .wp-block-site-logo:hover img{transform:scale(1.04)}
/* footer links */
.af-footer .af-foot-list a{display:inline-block;transition:color .3s,transform .3s}
.af-footer .af-foot-list a:hover{transform:translateX(4px)}
.af-credit img{transition:transform .4s ease}
.af-credit:hover img{transform:translateY(-2px) rotate(-3deg)}
/* hero accent line under image */
.elementor-element-hero-media{transition:border-color .4s}
}
.af-header .wp-block-navigation{font-family:"Public Sans",sans-serif}/* Process timeline */
.af-step::before{content:"";position:absolute;top:29px;left:58px;right:-40px;height:1px;background:repeating-linear-gradient(90deg,#B4893A 0 6px,transparent 6px 12px)}
.af-step:last-child::before{display:none}
.af-num{transition:background-color .35s,color .35s,transform .35s}
.af-step:hover .af-num{background-color:#B4893A!important;color:#001A3E!important;transform:scale(1.08)}
.af-why-card{transition:border-color .4s,background-color .4s,transform .4s cubic-bezier(.2,.7,.2,1)}
.af-why-card:hover{border-color:#D8BC7D!important;background-color:rgba(255,255,255,.06)!important;transform:translateY(-6px)}
@media (max-width:1024px){.af-step::before{display:none}.elementor-element-why-head{position:static!important}}
@media (max-width:767px){.af-step{padding-left:78px!important}.af-step .af-num{position:absolute!important;left:0;top:0}.af-step::before{display:block;top:58px;bottom:-28px;left:29px;right:auto;width:1px;height:auto;background:repeating-linear-gradient(180deg,#B4893A 0 6px,transparent 6px 12px)}.af-step:last-child::before{display:none}}
/* Contact calendar */
.af-cal{width:100%;min-height:720px}
.af-cal iframe{display:block;width:100%!important;min-height:720px;border:0}
.elementor-element-calendar{width:100%}
@media (max-width:767px){.elementor-element-book-cal{padding:24px 12px 12px!important}.af-cal,.af-cal iframe{min-height:900px}}
.elementor .af-p a{color:inherit}

/* Legal pages */
.af-legal{font-family:"Public Sans",sans-serif;font-size:17px;line-height:1.75;color:#4F5665}
.af-legal h2{font-family:"Libre Baskerville",Georgia,serif;font-weight:400;font-size:26px;color:#001A3E;margin:48px 0 14px}
.af-legal h3{font-family:"Libre Baskerville",Georgia,serif;font-weight:400;font-size:19px;color:#001A3E;margin:28px 0 10px}
.af-legal ul{padding-left:22px;margin:0 0 18px}.af-legal li{margin-bottom:8px}
.af-legal a{color:#001A3E;text-decoration-color:#B4893A;text-underline-offset:3px}

/* Blog (no entrance animations) */
.af-blog-band h1{font-family:"Libre Baskerville",Georgia,serif;font-weight:400;font-size:clamp(34px,5vw,52px);line-height:1.18;color:#fff;margin:0 auto 16px!important;max-width:1240px!important}
.af-blog-eyebrow{font-family:"Libre Baskerville",Georgia,serif;text-transform:uppercase;letter-spacing:.22em;font-size:13px;color:#D8BC7D;margin:0 0 18px}
.af-blog-sub{color:#C9D1DE;font-size:19px;margin:0}
.af-blog-loop .wp-block-post-template{gap:28px!important}
@media (max-width:900px){.af-blog-loop .wp-block-post-template{grid-template-columns:1fr!important}}
.af-post-card{border:1px solid #E3DED4;background:#fff;padding:0 0 28px;height:100%;transition:transform .4s,border-color .4s}
.af-post-card:hover{transform:translateY(-4px);border-color:#B4893A}
.af-post-card .wp-block-post-featured-image{margin:0 0 20px;overflow:hidden}
.af-post-card .wp-block-post-featured-image img{transition:transform .9s}
.af-post-card:hover .wp-block-post-featured-image img{transform:scale(1.04)}
.af-post-card > :not(.wp-block-post-featured-image){padding-left:26px;padding-right:26px}
.af-post-date{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#8A6420;margin:0 0 8px}
.af-post-title{font-size:22px!important;line-height:1.35;margin:0 0 10px}
.af-post-title a{text-decoration:none;color:#001A3E}
.af-post-card .wp-block-post-excerpt{color:#4F5665;font-size:16px}
.af-single{font-size:18px;line-height:1.75}
.af-single h2{font-size:30px;margin-top:44px}.af-single h3{font-size:22px}

/* About page */
.af-pill{transition:background-color .3s,color .3s,border-color .3s,transform .3s;cursor:default}
.af-pill:hover{background-color:#001A3E!important;color:#fff!important;border-color:#001A3E!important;transform:translateY(-2px)}
.af-quote{font-style:italic}
.af-exp{transition:padding-left .4s ease}
.af-exp:hover{padding-left:12px!important}

/* Payroll filing table on phones */
@media (max-width:767px){[data-id^="filing-"]{grid-template-columns:minmax(0,1fr)!important;gap:6px!important;padding:20px 18px!important}.elementor-element-filings-list > .e-con:first-child{display:none!important}}

/* Mobile menu overlay */
.af-header .af-nav-mobile{display:none!important}
.af-header .wp-block-navigation__responsive-container.is-menu-open{padding:28px 24px!important;background:#fff!important}
.af-header .is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start!important;padding-top:48px!important}
.af-header .is-menu-open .wp-block-navigation__container{align-items:flex-start!important;gap:0!important;width:100%}
.af-header .is-menu-open .wp-block-navigation-item{width:100%;align-items:flex-start!important;border-bottom:1px solid #E3DED4}
.af-header .is-menu-open .wp-block-navigation-item__content{font-family:"Libre Baskerville",Georgia,serif;font-size:22px;padding:14px 0!important;color:#001A3E!important}
.af-header .is-menu-open .wp-block-navigation-item__content::after{display:none!important}
.af-header .is-menu-open .wp-block-navigation__submenu-container{border:0!important;box-shadow:none!important;padding:0 0 12px 14px!important;min-width:0!important;width:100%;background:transparent!important}
.af-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item{border:0}
.af-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-family:"Public Sans",sans-serif;font-size:16px;padding:8px 0!important;color:#4F5665!important}
.af-header .is-menu-open .af-nav-mobile{display:flex!important;border:0!important}
.af-header .is-menu-open .af-nav-phone{margin-top:24px}
.af-header .is-menu-open .af-nav-phone .wp-block-navigation-item__content{font-family:"Public Sans",sans-serif;font-size:18px;font-weight:600}
.af-header .is-menu-open .af-nav-book .wp-block-navigation-item__content{font-family:"Public Sans",sans-serif;font-size:16px;font-weight:600;background:#001A3E;color:#fff!important;border-radius:999px;padding:14px 28px!important;margin-top:8px}
.af-header .is-menu-open .wp-block-navigation__responsive-container-close svg{width:28px;height:28px}