.page-template-template-sector-service {
    --sector-line: rgba(255, 255, 255, 0.11);
    --sector-card: rgba(16, 18, 38, 0.88);
}

.sector-service { overflow: hidden; }

.sector-service-hero {
    position: relative;
    border-bottom: 1px solid var(--sector-line);
    background:
        radial-gradient(circle at 15% 24%, rgba(124, 79, 255, 0.24), transparent 30rem),
        radial-gradient(circle at 90% 8%, rgba(68, 172, 255, 0.1), transparent 24rem);
}

.sector-service-hero::before {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 72px 72px;
    content: "";
    pointer-events: none;
}

.sector-service-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
    min-height: 680px;
    padding-block: clamp(4rem, 8vw, 7rem);
}

.sector-service-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-bottom: clamp(2rem, 5vw, 4rem);
    color: var(--color-muted);
    font-size: .84rem;
}

.sector-service-breadcrumbs a { text-decoration: none; }
.sector-service-kicker { margin: 0 0 .8rem; color: #ad9aff; font-size: .82rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

.sector-service-hero h1 {
    max-width: 820px;
    margin: 0;
    color: #fff;
    font-size: clamp(3rem, 6.3vw, 5.8rem);
    font-weight: 700;
    letter-spacing: -.06em;
    line-height: .97;
    text-wrap: balance;
}

.sector-service-hero__lead { max-width: 680px; margin: 1.35rem 0 0; color: #c7c9d8; font-size: clamp(1.05rem, 1.6vw, 1.22rem); line-height: 1.7; }
.sector-service-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 2rem; }
.sector-service-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.17); border-radius: 7px; color: #fff; font-weight: 700; padding: .75rem 1.15rem; text-align: center; text-decoration: none; }
.sector-service-button--primary { border-color: transparent; background: linear-gradient(135deg, #8f42ef, #356cf5); box-shadow: 0 18px 45px rgba(79,78,236,.25); }
.sector-service-button--light { flex-shrink: 0; border-color: transparent; background: #fff; color: #111326; }
.sector-service-button:hover { color: #fff; }
.sector-service-button--light:hover { color: #111326; }
.sector-service-trust { display: flex; flex-wrap: wrap; gap: .75rem 1.3rem; margin: 1.65rem 0 0; padding: 0; color: var(--color-muted); font-size: .87rem; list-style: none; }
.sector-service-trust li::before { margin-right: .45rem; color: #70e2ba; content: "✓"; }

.sector-service-hero__visual {
    position: relative;
    display: grid;
    min-height: 520px;
    align-content: end;
    overflow: hidden;
    border: 1px solid rgba(145,119,255,.3);
    border-radius: 22px;
    background: linear-gradient(155deg, rgba(75,48,160,.82), rgba(10,12,30,.98));
    box-shadow: 0 40px 100px rgba(0,0,0,.32);
    padding: 1.25rem;
}

.sector-service-hero__visual > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sector-service-hero__visual.has-image::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,8,18,.08) 22%, rgba(7,8,18,.96) 95%); content: ""; }
.sector-service-hero__card, .sector-service-hero__badge { position: relative; z-index: 1; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(8,10,24,.78); backdrop-filter: blur(12px); }
.sector-service-hero__card { display: grid; gap: .25rem; max-width: 330px; padding: 1.25rem; }
.sector-service-hero__card span, .sector-service-hero__badge small { color: var(--color-muted); font-size: .78rem; }
.sector-service-hero__card strong { color: #fff; font-size: 1.5rem; }
.sector-service-hero__card p { margin: 0; color: #ac9dff; }
.sector-service-hero__badge { display: grid; gap: .1rem; justify-self: end; margin-top: .7rem; padding: .9rem 1rem; }
.sector-service-hero__badge > span { color: #8f7fff; font-size: .75rem; font-weight: 700; }
.sector-service-hero__badge strong { color: #fff; }

.sector-service-section { padding-block: clamp(4rem, 9vw, 8rem); }
.sector-service-section + .sector-service-section { border-top: 1px solid rgba(255,255,255,.055); }
.sector-service-intro__grid, .sector-features__grid, .sector-related__grid, .sector-service-faq__grid, .sector-service-contact__grid { display: grid; grid-template-columns: minmax(280px,.76fr) minmax(0,1fr); gap: clamp(2rem,7vw,7rem); align-items: start; }
.sector-service-intro h2, .sector-service-heading h2, .sector-service-cta h2, .sector-related h2, .sector-service-contact h2 { margin: 0; color: #fff; font-size: clamp(2.1rem,4.5vw,4rem); font-weight: 700; letter-spacing: -.05em; line-height: 1.02; text-wrap: balance; }
.sector-service-richtext { color: #c5c7d4; font-size: clamp(1.06rem,1.6vw,1.22rem); line-height: 1.8; }
.sector-service-richtext p:first-child { margin-top: 0; }
.sector-service-heading { max-width: 820px; }
.sector-service-heading > p:not(.sector-service-kicker) { max-width: 680px; margin: 1rem 0 0; color: var(--color-muted); font-size: 1.05rem; }
.sector-service-heading--sticky { position: sticky; top: 120px; align-self: start; }

.sector-challenges { background: rgba(10,11,26,.64); }
.sector-challenges__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 2.25rem; }
.sector-challenges__grid article { min-height: 270px; border: 1px solid var(--sector-line); border-radius: 14px; background: radial-gradient(circle at 100% 0, rgba(112,87,255,.16), transparent 18rem), var(--sector-card); padding: clamp(1.35rem,3vw,2rem); }
.sector-challenges__grid article > span { color: #8072ca; font-size: .8rem; font-weight: 700; }
.sector-challenges__grid h3 { margin: clamp(2.5rem,5vw,4.2rem) 0 .7rem; color: #fff; font-size: clamp(1.4rem,2.3vw,1.9rem); font-weight: 700; line-height: 1.1; }
.sector-challenges__grid p { margin: 0; color: var(--color-muted); }

.sector-service-cta { display: flex; gap: 2rem; align-items: center; justify-content: space-between; margin-block: clamp(3rem,6vw,5rem); border: 1px solid rgba(145,119,255,.34); border-radius: 16px; background: radial-gradient(circle at 90% 0, rgba(100,216,255,.13), transparent 21rem), linear-gradient(135deg, rgba(72,39,155,.82), rgba(17,20,48,.96)); padding: clamp(1.5rem,4vw,3rem); }
.sector-service-cta > div > p { margin: 0 0 .4rem; color: #c7bdff; font-size: .78rem; font-weight: 700; text-transform: uppercase; }
.sector-service-cta h2 { max-width: 800px; font-size: clamp(1.8rem,3.8vw,3.2rem); }

.sector-features ol { margin: 0; padding: 0; border-top: 1px solid var(--sector-line); list-style: none; }
.sector-features li { display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 1rem; border-bottom: 1px solid var(--sector-line); padding-block: 1.5rem; }
.sector-features li > span { color: #8072ca; font-weight: 700; }
.sector-features h3 { margin: 0; color: #fff; font-size: 1.35rem; font-weight: 700; }
.sector-features li p { margin: .45rem 0 0; color: var(--color-muted); }

.sector-process { background: rgba(10,11,26,.64); }
.sector-process__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin: 2.5rem 0 0; padding: 0; list-style: none; }
.sector-process__grid li { border-top: 2px solid #6e59e8; padding-top: 1.2rem; }
.sector-process__grid li > span { color: #8f7fff; font-size: .82rem; font-weight: 700; }
.sector-process__grid h3 { margin: 2rem 0 .6rem; color: #fff; font-size: 1.3rem; font-weight: 700; }
.sector-process__grid p { margin: 0; color: var(--color-muted); }

.sector-primary-services__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 2.25rem; }
.sector-primary-services__grid a { display: grid; min-height: 220px; border: 1px solid var(--sector-line); border-radius: 14px; background: var(--sector-card); color: #fff; padding: clamp(1.25rem,3vw,2rem); text-decoration: none; }
.sector-primary-services__grid span, .sector-primary-services__grid small { color: #8f7fff; font-size: .78rem; font-weight: 700; }
.sector-primary-services__grid strong { margin-top: 2.5rem; font-size: clamp(1.3rem,2vw,1.7rem); font-weight: 700; }
.sector-primary-services__grid small { margin-top: auto; }

.sector-related { background: rgba(10,11,26,.64); }
.sector-related > .home-container > div > a { display: inline-flex; margin-top: 1.3rem; color: #aa9bff; font-weight: 700; text-decoration: none; }
.sector-related nav { display: grid; border-top: 1px solid var(--sector-line); }
.sector-related nav a { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--sector-line); color: #fff; font-weight: 700; padding: 1rem 0; text-decoration: none; }
.sector-related nav a span:last-child { color: #8f7fff; }
.sector-service-reviews { border-top: 1px solid var(--sector-line); }

.sector-service-faq details { border-bottom: 1px solid var(--sector-line); padding-block: 1.25rem; }
.sector-service-faq details:first-child { border-top: 1px solid var(--sector-line); }
.sector-service-faq summary { display: flex; align-items: center; justify-content: space-between; color: #fff; cursor: pointer; font-size: 1.08rem; font-weight: 700; list-style: none; }
.sector-service-faq summary::after { color: #8f7fff; content: "+"; font-size: 1.45rem; }
.sector-service-faq details[open] summary::after { content: "−"; }
.sector-service-faq details p { margin: .8rem 0 0; color: var(--color-muted); }

.sector-service-contact { background: radial-gradient(circle at 14% 12%, rgba(112,87,255,.2), transparent 26rem), #090a18; }
.sector-service-contact > .home-container > div:first-child > p:not(.sector-service-kicker) { max-width: 540px; color: var(--color-muted); font-size: 1.05rem; }
.sector-service-contact ul { display: grid; gap: .8rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.sector-service-contact li { display: grid; gap: .1rem; }
.sector-service-contact li span { color: #8579c4; font-size: .74rem; font-weight: 700; text-transform: uppercase; }
.sector-service-contact li a, .sector-service-contact li strong { color: #fff; text-decoration: none; }
.sector-service-contact__form { border: 1px solid var(--sector-line); border-radius: 14px; background: var(--sector-card); padding: clamp(1.25rem,3vw,2rem); }
.sector-service-contact__form .wpforms-container { margin: 0; }
.sector-service-contact__form .wpforms-field-label { color: #fff !important; }
.sector-service-contact__form input, .sector-service-contact__form textarea, .sector-service-contact__form select { border-color: var(--sector-line) !important; background: #090b18 !important; color: #fff !important; }
.sector-service-contact__form button[type="submit"] { border: 0 !important; border-radius: 7px !important; background: linear-gradient(135deg,#8f42ef,#356cf5) !important; color: #fff !important; font-weight: 700 !important; }

@media (max-width: 980px) {
    .sector-service-hero__grid { grid-template-columns: minmax(0,1fr) minmax(300px,.65fr); min-height: 640px; }
    .sector-service-hero__visual { min-height: 470px; }
    .sector-process__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .sector-primary-services__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 780px) {
    .sector-service-hero__grid, .sector-service-intro__grid, .sector-features__grid, .sector-related__grid, .sector-service-faq__grid, .sector-service-contact__grid { grid-template-columns: 1fr; }
    .sector-service-hero__grid { min-height: 0; }
    .sector-service-hero h1 { font-size: clamp(2.8rem,13vw,4.6rem); }
    .sector-service-hero__visual { min-height: 430px; }
    .sector-service-heading--sticky { position: static; }
    .sector-service-cta { align-items: flex-start; flex-direction: column; }
    .sector-challenges__grid { grid-template-columns: 1fr; }
}

@media (max-width: 580px) {
    .sector-service-actions, .sector-service-button { width: 100%; }
    .sector-service-actions { flex-direction: column; }
    .sector-process__grid, .sector-primary-services__grid { grid-template-columns: 1fr; }
}
