/* Existing home artwork placement, previously stored as Elementor Pro CSS. */
.hero-empowerment-area .bg-shape {
    position: absolute;
    left: 0;
    top: 90px;
    pointer-events: none;
}

.hero-empowerment-area .bg-shape2 {
    position: absolute;
    right: 0;
    top: 110px;
    pointer-events: none;
    z-index: -1;
}

/* Keep the purchased hero below the fixed header. Override only the legacy
   Customizer's important 170–300px offset, without changing its artwork. */
.elementor-widget-synckhomev1hero .hero-empowerment-area {
    padding-top: 174px !important;
}
@media (max-width: 1700px) {
    .elementor-widget-synckhomev1hero .hero-empowerment-area {
        padding-top: 120px !important;
    }
}
@media (max-width: 1200px) {
    .elementor-widget-synckhomev1hero .hero-empowerment-area {
        padding-top: 105px !important;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .custom-row {
        gap: 36px;
        padding-bottom: 64px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .custom-row > * {
        width: 100%;
        max-width: 716px;
        min-width: 0;
        margin-inline: auto;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-left-content > p {
        max-width: 620px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-left-content .btns-group {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-left-content .btns-group > a {
        min-height: 44px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content {
        margin-bottom: 16px;
    }
    /* The original image reserves its lower-left cutout for this card. */
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
        position: absolute;
        bottom: 0;
        left: 0;
        width: calc(53% - 12px);
        height: 36%;
        margin: 0;
        padding: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    /* Bootstrap's d-flex utility applies to this row in the original widget. */
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
        gap: 16px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content > * {
        width: 100%;
        max-width: none;
        min-width: 0;
        padding: 24px 20px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box {
        justify-content: center;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .our-expert-team-box .our-expert-team-box-inner p {
        line-height: 1.35;
    }
}
@media (max-width: 600px) {
    .elementor-widget-synckhomev1hero .hero-empowerment-area .custom-row {
        gap: 28px;
        padding-bottom: 48px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-left-content h1 {
        font-size: clamp(34px, 9.7vw, 44px);
        line-height: 1.06;
        letter-spacing: -1px;
        margin-bottom: 20px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-left-content > p {
        font-size: 17px;
        line-height: 1.6;
        margin-bottom: 22px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content {
        margin-bottom: 12px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
        width: calc(53% - 8px);
        padding: 8px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body {
        gap: clamp(6px, 1.8vw, 10px);
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body img {
        width: clamp(22px, 6vw, 33px);
        flex-shrink: 0;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content {
        gap: 6px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .synck-hero-experience-number {
        font-size: clamp(26px, 7vw, 38px);
        line-height: 1;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
        font-size: clamp(10px, 2.7vw, 13px);
        line-height: 1.3;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content {
        gap: 12px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content > * {
        padding: 16px;
        align-items: flex-start;
        justify-content: flex-start;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .our-expert-team-box > a {
        display: block;
        width: 100%;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .our-expert-team-box .our-expert-team-box-inner {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 10px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .our-expert-team-box .imgs1 img {
        width: 28px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box {
        flex-direction: column;
        justify-content: flex-start;
        gap: 10px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box .left img {
        width: 68px;
        height: auto;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box .left span {
        margin-bottom: 6px;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box .right {
        align-items: flex-start;
        padding-bottom: 0;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area .hero-empowerment-right-content .bottom-content .google-reviews-box .stars {
        margin: 0 0 6px;
    }
}

/* Home services: translucent surfaces on the original charcoal section.
   No animated blur or additional JS; unsupported browsers keep the dark tint. */
/* Animated curves stay inside the viewport throughout their entrance. */
.elementor-widget-synckhomev1hero {
    overflow-x: clip;
}
/* Reveal the hero as one composition: the photo, copy and cards share a clock.
   Keep image delivery eager; no JavaScript or delayed visibility is required. */
@media (prefers-reduced-motion: no-preference) {
    .elementor-widget-synckhomev1hero .hero-empowerment-area > .custom-container > .custom-row {
        animation: d4y-home-hero-enter .36s cubic-bezier(.22,.61,.36,1) both;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area > .custom-container :is(.fade-in, .bounce-in, .pop-in) {
        animation: none;
        visibility: visible;
    }
    .elementor-widget-synckhomev1hero .hero-empowerment-area > .custom-container > .custom-row:focus-within {
        animation: none;
    }
}
@keyframes d4y-home-hero-enter {
    from { opacity: 0; transform: translateY(14px); }
    to { opacity: 1; transform: none; }
}
@media print {
    .elementor-widget-synckhomev1hero .hero-empowerment-area > .custom-container > .custom-row {
        animation: none;
    }
}
.elementor-widget-synckhomev2services .service2-area { padding-block:var(--d4y-section-space,64px); }
.elementor-widget-synckhomev2services .service2-header .section-title { font-size:var(--d4y-type-section,40px); line-height:1.15; font-weight:600; letter-spacing:-.8px; }
.elementor-widget-synckhomev2services .service2-header .section-subtitle { font-size:11px; line-height:1.5; letter-spacing:2px; }
.elementor-widget-synckhomev2services .service2-area::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at 82% 20%, rgb(79 140 255 / 6%), transparent 58%);
}
.elementor-widget-synckhomev2services .service2-area > .custom-container {
    position: relative;
}
.elementor-widget-synckhomev2services .service2-header {
    margin-bottom: 40px;
    gap: 24px;
}
.elementor-widget-synckhomev2services .service2-items,
.elementor-widget-synckhomev2services .service2-bottom-2-col {
    display: grid !important;
    gap: 20px;
}
.elementor-widget-synckhomev2services .service2-items {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 20px;
}
.elementor-widget-synckhomev2services .service2-bottom-2-col {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.elementor-widget-synckhomev2services :is(.service2-card, .service3-card) {
    position: relative;
    min-width: 0;
    width: 100%;
    max-width: none;
    border: 1px solid rgb(139 174 233 / 23%);
    border-radius: 18px;
    background: linear-gradient(135deg, rgb(255 255 255 / 8%), rgb(255 255 255 / 2%) 56%, rgb(255 255 255 / 4%)), rgb(13 13 13 / 78%);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 10%), inset 0 -1px 0 rgb(255 255 255 / 4%), 0 14px 36px rgb(0 0 0 / 13%);
    -webkit-backdrop-filter: blur(14px) saturate(105%);
    backdrop-filter: blur(14px) saturate(105%);
}
.elementor-widget-synckhomev2services .service2-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
    grid-template-rows: auto auto 1fr;
    column-gap: 12px;
    align-content: start;
    padding: 22px 24px 26px;
}
.elementor-widget-synckhomev2services .service2-card > img {
    grid-column: 1 / -1;
    width: clamp(160px, 12vw, 220px);
    max-width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    justify-self: center;
    margin: 0 0 18px;
    border-radius: 0;
    object-fit: contain;
}
.elementor-widget-synckhomev2services .service2-card > h3 {
    grid-column: 1 / -1;
    margin: 0 0 12px;
}
.elementor-widget-synckhomev2services :is(.service2-card h3, .service3-content h4) {
    color: #f7f7f7;
    font-size: clamp(22px, 1.6vw, 26px);
    line-height: 1.2;
    font-weight: 600;
}
.elementor-widget-synckhomev2services :is(.service2-card > p, .service3-card .service3-body .service3-content p) {
    color: #c7c7c7;
    font-size: 16px;
    line-height: 1.6;
    padding: 0;
    margin: 0;
}
.elementor-widget-synckhomev2services .service2-card > p {
    grid-column: 1;
    align-self: end;
}
.elementor-widget-synckhomev2services :is(.service2-card, .service3-card) .theme-btn {
    position: relative;
    inset: auto;
    width: 48px;
    height: 48px;
    min-width: 48px;
    min-height: 48px;
    padding: 0;
    border: 1px solid rgb(255 255 255 / 28%);
    border-radius: 50%;
    background: #1351d8;
    color: #fff;
    font-size: 22px;
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 16%), 0 5px 18px rgb(0 0 0 / 20%);
}
.elementor-widget-synckhomev2services .service2-card > .theme-btn {
    grid-column: 2;
    align-self: end;
}
.elementor-widget-synckhomev2services :is(.service2-card, .service3-card) .theme-btn::before,
.elementor-widget-synckhomev2services :is(.service2-card, .service3-card) .theme-btn::after {
    background: #1e63ed;
}
.elementor-widget-synckhomev2services :is(.service2-card, .service3-card) .theme-btn:focus-visible {
    outline: 2px solid #8aafff;
    outline-offset: 5px;
}
.elementor-widget-synckhomev2services .service3-card {
    display: grid !important;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    padding: 28px;
}
.elementor-widget-synckhomev2services .service3-card > img {
    width: 100%;
    max-width: 250px;
    height: auto;
    aspect-ratio: 3 / 2;
    justify-self: center;
    object-fit: contain;
    border-radius: 0;
}
.elementor-widget-synckhomev2services .service3-body,
.elementor-widget-synckhomev2services .service3-content {
    min-width: 0;
}
.elementor-widget-synckhomev2services .service3-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
    column-gap: 12px;
    align-items: end;
}
.elementor-widget-synckhomev2services .service3-card .service3-body .service3-content h4 {
    grid-column: 1 / -1;
    margin: 0 0 12px;
    color: #f7f7f7;
    line-height: 1.2;
}
.elementor-widget-synckhomev2services .service3-card .service3-body .service3-content p {
    grid-column: 1 / -1;
    margin-bottom: 22px;
}
.elementor-widget-synckhomev2services .service3-content ul {
    grid-column: 1;
    padding: 0;
    margin: 0;
}
.elementor-widget-synckhomev2services .service3-card .service3-body .service3-content ul li {
    gap: 10px;
    color: #d1d1d1;
    font-size: 15px;
    line-height: 1.45;
    align-items: flex-start;
}
.elementor-widget-synckhomev2services .service3-card .service3-body .service3-content ul li + li {
    margin-top: 12px;
}
.elementor-widget-synckhomev2services .service3-card .service3-body .service3-content ul li i {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    margin-top: 1px;
    border: 1px solid rgb(255 255 255 / 40%);
    background: #1351d8;
    color: #fff;
}
.elementor-widget-synckhomev2services .service3-content > .theme-btn {
    grid-column: 2;
    justify-self: end;
    align-self: end;
}
@media (max-width: 1199px) {
    .elementor-widget-synckhomev2services .service2-items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .elementor-widget-synckhomev2services .service2-card > img {
        width: 200px;
        height: auto;
    }
    .elementor-widget-synckhomev2services .service2-bottom-2-col {
        grid-template-columns: minmax(0, 1fr);
    }
    .elementor-widget-synckhomev2services .service3-card {
        grid-template-columns: minmax(0, 0.75fr) minmax(0, 1fr);
    }
    .elementor-widget-synckhomev2services .service3-card > img {
        max-width: 220px;
        height: auto;
    }
}
@media (max-width: 600px) {
    .elementor-widget-synckhomev2services .service2-header {
        margin-bottom: 28px;
    }
    .elementor-widget-synckhomev2services .service2-items,
    .elementor-widget-synckhomev2services .service2-bottom-2-col {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }
    .elementor-widget-synckhomev2services .service2-items {
        margin-bottom: 16px;
    }
    .elementor-widget-synckhomev2services .service2-card,
    .elementor-widget-synckhomev2services .service3-card {
        padding: 22px;
    }
    .elementor-widget-synckhomev2services .service2-card > img {
        width: 180px;
        height: auto;
        margin-bottom: 16px;
    }
    .elementor-widget-synckhomev2services .service3-card {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }
    .elementor-widget-synckhomev2services .service3-card > img {
        width: 180px;
        max-width: 100%;
        height: auto;
    }
}
@media (hover: hover) {
    .elementor-widget-synckhomev2services :is(.service2-card, .service3-card):hover,
    .elementor-widget-synckhomev2services :is(.service2-card, .service3-card):focus-within {
        border-color: rgb(113 164 255 / 65%);
        box-shadow: inset 0 1px 0 rgb(255 255 255 / 16%), 0 18px 40px rgb(0 0 0 / 20%), 0 0 24px rgb(79 140 255 / 6%);
    }
}
@media (prefers-reduced-transparency: reduce) {
    .elementor-widget-synckhomev2services :is(.service2-card, .service3-card) {
        background: #181818;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

/* Compact service cards retain a useful visual cue on narrow screens. */
@media (max-width:600px) {
 .elementor-widget-synckhomev2services .service2-card { grid-template-columns:80px minmax(0,1fr) 44px; grid-template-rows:auto auto; gap:16px 12px; padding:22px; }
 .elementor-widget-synckhomev2services .service2-card > img { grid-column:1; grid-row:1; width:80px; height:auto; align-self:center; margin:0; }
 .elementor-widget-synckhomev2services .service2-card > h3 { grid-column:2/-1; grid-row:1; align-self:center; margin:0; }
 .elementor-widget-synckhomev2services .service2-card > p { grid-column:1/3; grid-row:2; align-self:center; font-size:15px; }
 .elementor-widget-synckhomev2services .service2-card > .theme-btn { grid-column:3; grid-row:2; width:44px; height:44px; min-width:44px; min-height:44px; align-self:center; }
 .elementor-widget-synckhomev2services .service3-card { grid-template-columns:80px minmax(0,1fr) 44px; gap:18px 12px; align-items:center; }
 .elementor-widget-synckhomev2services .service3-card > img { width:80px; margin-top:2px; }
 .elementor-widget-synckhomev2services .service3-card .service3-body,
 .elementor-widget-synckhomev2services .service3-card .service3-body .service3-content { display:contents; }
 .elementor-widget-synckhomev2services .service3-card .service3-body .service3-content h4 { grid-column:2/-1; grid-row:1; margin:0; }
 .elementor-widget-synckhomev2services .service3-card .service3-body .service3-content p { grid-column:1/-1; grid-row:2; margin:0; }
 .elementor-widget-synckhomev2services .service3-content ul { grid-column:1/3; grid-row:3; }
 .elementor-widget-synckhomev2services .service3-content > .theme-btn { grid-column:3; grid-row:3; width:44px; height:44px; min-width:44px; min-height:44px; margin:0; }
 .elementor-widget-synckhomev2services .service3-card .service3-content p { font-size:15px; }
}
