/* Services uses the existing About inner-page hero; only content-specific positioning lives here. */
.services-hero__phase {
    top: 250px;
    right: 16px;
    left: auto;
    padding: 22px 0 0 23px;
    border-left-color: var(--fc-accent);
}

.services-hero__signature {
    position: absolute;
    bottom: 58px;
    left: 18px;
    color: #77819a;
    font-weight: 600;
}

.services-hero__signature .fc-brand-signature__line {
    width: 62px;
    height: 1px;
    background: #77819a;
}

.services-hero__image {
    object-position: 53% center !important;
}

.services-hero__editorial {
    top: 174px;
    right: 28px;
    left: auto;
    border-left-color: rgba(223,7,84,.42);
}

.services-hero__placeholder {
    position: relative;
    background: linear-gradient(115deg,#eee8e6 0%,#d9cfcc 48%,#bfaeaa 100%);
}

.services-hero__placeholder::before {
    position: absolute;
    top: 17%;
    left: 30%;
    width: 43%;
    height: 39%;
    border: 20px solid #30333d;
    border-radius: 12px;
    background: radial-gradient(ellipse at 58% 54%,#d9d9dd 0 9%,#85868d 10% 19%,#24252b 20% 48%,#050608 49%);
    box-shadow: 0 18px 0 #55565c;
    content: '';
}

.services-hero__placeholder::after {
    position: absolute;
    right: -4%;
    bottom: -16%;
    width: 58%;
    height: 66%;
    border-radius: 54% 46% 0 0;
    background: #ead7d3;
    content: '';
}

.services-hero__placeholder span {
    position: absolute;
    z-index: 1;
    right: 20%;
    bottom: 25%;
    width: 28%;
    height: 10%;
    border-radius: 60% 40% 50% 50%;
    background: #c99382;
    transform: rotate(-10deg);
}

@media (max-width: 1399.98px) {
    .services-hero__phase { right: 0; }
    .services-hero__signature { left: 0; }
    .services-hero__editorial { right: 5px; }
}

@media (max-width: 1199.98px) {
    .services-hero__editorial { top: 140px; right: 10px; }
}

@media (max-width: 991.98px) {
    .services-hero__signature { position: static; margin-top: 48px; }
    .services-hero__editorial { top: 62px; right: 34px; }
}

@media (max-width: 575.98px) {
    .services-hero__signature { margin-top: 38px; gap: 14px; font-size: 8px; }
    .services-hero__placeholder::before { left: 19%; width: 59%; height: 38%; border-width: 12px; }
    .services-hero__placeholder::after { width: 70%; }
}

/* Section 02: pregnancy scan journey */
.services-journey {
    position: relative;
    overflow: hidden;
    padding: 56px 0 96px;
    background:
        radial-gradient(ellipse at 103% -8%,rgba(247,226,242,.72) 0 19%,transparent 19.4%),
        radial-gradient(ellipse at -7% 108%,rgba(252,226,242,.65) 0 23%,transparent 23.4%),
        #fff;
}

.services-journey::after {
    position: absolute;
    right: -6%;
    bottom: -27%;
    width: 55%;
    height: 37%;
    border-radius: 50%;
    background: rgba(250,230,243,.55);
    content: '';
    transform: rotate(-7deg);
}

.services-journey__container { position: relative; z-index: 1; max-width: 1840px; padding-inline: 34px; }
.services-journey__header { margin: 0 auto 28px; }
.services-journey__eyebrow { gap: 18px; margin-bottom: 14px; color: #cf1456; font-size: 13px; }
.services-journey__eyebrow span { width: 44px; height: 1px; background: #d64f84; }
.services-journey__header h2 { margin: 0 0 12px; color: #152951; font-size: clamp(42px,3vw,57px); font-weight: 750; line-height: 1.08; letter-spacing: -.04em; }
.services-journey__header h2 em { color: var(--fc-accent); font-style: normal; }
.services-journey__header > p:last-child { margin: 0; color: #68738f; font-size: 19px; line-height: 1.45; }
.services-journey__timeline { padding-top: 2px; }
.services-journey__line { position: absolute; z-index: -1; top: 143px; right: 7.6%; left: 7.6%; height: 1px; background: #efb5ce; }
.services-journey__line > span { display: block; width: 100%; height: 2px; background: #d6115a; transform: scaleX(1); transform-origin: left center; will-change: transform; }
.services-journey__stage { position: relative; }
.services-journey__weeks { margin: 0 0 17px; color: #d51058; font-size: 15px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.services-journey__image-wrap { width: 184px; height: 184px; margin: 0 auto; padding: 12px; border-radius: 50%; background: rgba(250,231,243,.72); }
.services-journey__image-wrap img, .services-journey__image-placeholder { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.services-journey__image-placeholder { display: grid; place-items: center; color: #9e4979; background: radial-gradient(circle at 45% 42%,#f6c4b7 0 22%,#d98d7d 23% 47%,#b96461 48% 60%,#fae9e6 61%); font-size: 66px; }
.services-journey__dot { display: block; width: 14px; height: 14px; margin: -3px auto 0; border: 3px solid #fff; border-radius: 50%; background: #d3115b; box-shadow: 0 0 0 1px #d3115b; }
.services-journey__copy::before { display: block; width: 1px; height: 29px; margin: 0 auto 8px; background: #e16b9d; content: ''; }
.services-journey__copy { padding-inline: 16px; }
.services-journey__copy h3 { min-height: 27px; margin: 0 0 9px; color: #112449; font-size: 19px; font-weight: 750; line-height: 1.25; }
.services-journey__copy p { max-width: 255px; margin: 0 auto; color: #68738f; font-size: 16px; line-height: 1.38; }

.services-journey.scan-journey--animated [data-journey-intro] > * { opacity: 0; transform: translateY(14px); transition: opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1); }
.services-journey.scan-journey--animated [data-journey-intro].is-active > * { opacity: 1; transform: none; }
.services-journey.scan-journey--animated [data-journey-intro] > :nth-child(2) { transition-delay: .09s; }
.services-journey.scan-journey--animated [data-journey-intro] > :nth-child(3) { transition-delay: .18s; }
.services-journey.scan-journey--animated .services-journey__stage { opacity: 0; transform: translateY(18px) scale(.97); transition: opacity .58s cubic-bezier(.22,1,.36,1),transform .58s cubic-bezier(.22,1,.36,1); }
.services-journey.scan-journey--animated .services-journey__stage.is-active { opacity: 1; transform: none; }
.services-journey.scan-journey--animated .services-journey__image-wrap { opacity: 0; transform: translateY(10px) scale(.9); transition: opacity .6s .08s cubic-bezier(.22,1,.36,1),transform .6s .08s cubic-bezier(.22,1,.36,1); }
.services-journey.scan-journey--animated .services-journey__stage.is-active .services-journey__image-wrap { opacity: 1; transform: none; }
.services-journey.scan-journey--animated .services-journey__copy { opacity: 0; transform: translateY(10px); transition: opacity .52s .16s cubic-bezier(.22,1,.36,1),transform .52s .16s cubic-bezier(.22,1,.36,1); }
.services-journey.scan-journey--animated .services-journey__stage.is-active .services-journey__copy { opacity: 1; transform: none; }
.services-journey.scan-journey--animated .services-journey__dot { background: #efc2d5; box-shadow: none; transform: scale(.75); transition: background-color .3s ease,box-shadow .3s ease,transform .3s ease; }
.services-journey.scan-journey--animated .services-journey__stage.is-active .services-journey__dot { background: #d3115b; box-shadow: 0 0 0 6px rgba(211,17,91,.1); transform: scale(1); }

@media (max-width: 1199.98px) {
    .services-journey { padding-bottom: 75px; }
    .services-journey__container { padding-inline: 28px; }
    .services-journey__stage { padding: 20px 12px 28px; border-radius: 24px; background: rgba(255,255,255,.72); }
    .services-journey__copy p { min-height: 66px; }
}

@media (max-width: 767.98px) {
    .services-journey { padding: 48px 0 58px; }
    .services-journey__container { padding-inline: 20px; }
    .services-journey__header { margin-bottom: 20px; }
    .services-journey__eyebrow { gap: 10px; font-size: 10px; }
    .services-journey__eyebrow span { width: 24px; }
    .services-journey__header h2 { font-size: clamp(34px,9.5vw,44px); }
    .services-journey__header > p:last-child { font-size: 16px; }
    .services-journey__stage { max-width: 380px; margin: 0 auto; }
    .services-journey__copy p { min-height: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .services-journey *, .services-journey *::before, .services-journey *::after { transition-duration: .01ms !important; transition-delay: 0s !important; }
    .services-journey.scan-journey--animated [data-journey-intro] > *,
    .services-journey.scan-journey--animated .services-journey__stage,
    .services-journey.scan-journey--animated .services-journey__image-wrap,
    .services-journey.scan-journey--animated .services-journey__copy { opacity: 1; transform: none; }
    .services-journey__line > span { transform: scaleX(1) !important; }
}

/* Section 03: detailed scan explorer */
.scan-explorer { position: relative; overflow: hidden; padding: 40px 0 48px; background: radial-gradient(ellipse at -8% 0,rgba(250,230,243,.62),transparent 25%),radial-gradient(ellipse at 82% 108%,rgba(246,230,248,.55),transparent 30%),#fff; }
.scan-explorer__container { max-width: 1770px; padding-inline: 34px; }
.scan-explorer__header { min-height: 150px; }
.scan-explorer__eyebrow { gap: 18px; margin: 0 0 8px; color: #cc1558; font-size: 13px; }
.scan-explorer__eyebrow span { width: 50px; height: 2px; background: #d34b83; }
.scan-explorer__header h2 { margin: 0 0 6px; color: #142951; font-size: clamp(45px,3.15vw,59px); font-weight: 750; line-height: 1.06; letter-spacing: -.045em; }
.scan-explorer__header h2 em { color: var(--fc-accent); font-style: normal; }
.scan-explorer__header .col-lg-9 > p:last-child { margin: 0; color: #68738e; font-size: 20px; }
.scan-explorer__editorial { min-width: 180px; margin: 0 12px 0 0; padding-left: 25px; border-left: 1px solid var(--fc-accent); color: #6f7893; font-size: 13px; font-weight: 600; line-height: 1.9; letter-spacing: .2em; text-transform: uppercase; }
.scan-explorer__panel { overflow: hidden; border: 1px solid #eee9ef; border-radius: 25px; background: #fff; box-shadow: 0 8px 28px rgba(40,16,47,.06); }
.scan-explorer__visual { position: relative; min-height: 535px; overflow: hidden; background: #c68b7a; }
.scan-explorer__visual > img, .scan-explorer__image-placeholder { width: 100%; height: 100%; min-height: 535px; object-fit: cover; }
.scan-explorer__image-placeholder { display: grid; place-items: center; color: #a45169; background: radial-gradient(circle at 54% 47%,#f8d5c8 0 13%,#e9a892 14% 28%,#b96d66 29% 39%,#8c4a4d 40% 43%,#edb7a7 44% 62%,#a9605b 63%); font-size: 150px; }
.scan-explorer__image-signature { position: absolute; bottom: 46px; left: 36px; margin: 0; color: #fff; font-size: 13px; font-weight: 600; line-height: 1.8; letter-spacing: .28em; text-transform: uppercase; }
.scan-explorer__image-signature span { display: block; width: 50px; height: 2px; margin-top: 10px; background: rgba(255,255,255,.8); }
.scan-explorer__details { min-height: 535px; padding: 34px 54px 36px; transition: opacity .18s ease; }
.scan-explorer__details.is-changing { opacity: .35; }
.scan-explorer__counter { margin: 0 0 15px; color: #6f7893; font-size: 25px; font-weight: 700; }
.scan-explorer__counter strong { color: var(--fc-accent); }
.scan-explorer__details > h3 { margin: 0 0 8px; color: #102851; font-size: clamp(36px,2.25vw,44px); font-weight: 750; line-height: 1.1; letter-spacing: -.035em; }
.scan-explorer__weeks { margin: 0 0 14px; color: var(--fc-accent); font-size: 17px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.scan-explorer__description { max-width: 680px; margin: 0 0 22px; color: #68738f; font-size: 19px; line-height: 1.45; }
.scan-explorer__assessment { padding-top: 22px; border-color: #e3e3eb!important; }
.scan-explorer__assessment > .section-eyebrow { margin-bottom: 18px; color: #68738f; font-size: 11px; }
.scan-explorer__assessment-item { min-height: 67px; }
.scan-explorer__assessment-item .fc-icon-circle { width: 62px; height: 62px; flex-basis: 62px; color: #d31562; font-size: 25px; }
.scan-explorer__assessment-item p { color: #68738f; font-size: 17px; line-height: 1.35; }
.scan-explorer__tabs { overflow-x: auto; margin-top: 26px; scrollbar-width: thin; scrollbar-color: #e4b2ce transparent; }
.scan-explorer__tab { min-width: 0; flex: 1 0 0; gap: 15px; min-height: 82px; padding: 8px 17px; border: 0; border-right: 1px solid #eadce6; color: #13264e; background: transparent; text-align: left; }
.scan-explorer__tab:last-child { border-right: 0; }
.scan-explorer__tab-number { display: grid; width: 47px; height: 47px; flex: 0 0 47px; place-items: center; border: 1px solid #e4a8c7; border-radius: 50%; font-size: 16px; font-weight: 700; }
.scan-explorer__tab.is-active .scan-explorer__tab-number { color: #fff; border-color: var(--fc-accent); background: var(--fc-accent); }
.scan-explorer__tab strong, .scan-explorer__tab small { display: block; }
.scan-explorer__tab strong { font-size: 14px; line-height: 1.2; }
.scan-explorer__tab small { margin-top: 5px; color: var(--fc-accent); font-size: 10px; font-weight: 700; line-height: 1.35; letter-spacing: .12em; text-transform: uppercase; }
.scan-explorer__footer { margin-top: 34px; }
.scan-explorer__footer .fc-brand-signature { color: #77819a; font-size: 10px; font-weight: 600; }
.scan-explorer__progress span { width: 42px; height: 4px; border-radius: 4px; background: #d8dbe7; }
.scan-explorer__progress span.is-active { background: var(--fc-accent); }
@media (max-width:1399.98px) {
    .scan-explorer__container { padding-inline: 28px; }
    .scan-explorer__details { padding-inline: 38px; }
    .scan-explorer__tab { min-width: 185px; }
}
@media (max-width:991.98px) {
    .scan-explorer { padding-top: 55px; }
    .scan-explorer__header { min-height: 135px; }
    .scan-explorer__visual, .scan-explorer__visual > img, .scan-explorer__image-placeholder { min-height: 470px; }
    .scan-explorer__details { min-height: 0; padding: 38px; }
}
@media (max-width:575.98px) {
    .scan-explorer { padding: 45px 0 42px; }
    .scan-explorer__container { padding-inline: 20px; }
    .scan-explorer__eyebrow { gap: 9px; font-size: 9px; }
    .scan-explorer__eyebrow span { width: 22px; }
    .scan-explorer__header h2 { font-size: clamp(35px,10vw,43px); }
    .scan-explorer__header .col-lg-9 > p:last-child { font-size: 16px; line-height: 1.45; }
    .scan-explorer__visual, .scan-explorer__visual > img, .scan-explorer__image-placeholder { min-height: 360px; }
    .scan-explorer__image-placeholder { font-size: 100px; }
    .scan-explorer__details { padding: 30px 22px; }
    .scan-explorer__counter { font-size: 21px; }
    .scan-explorer__details > h3 { font-size: 34px; }
    .scan-explorer__description { font-size: 16px; }
    .scan-explorer__assessment-item p { font-size: 15px; }
    .scan-explorer__tab { min-width: 190px; }
    .scan-explorer__footer { justify-content: center!important; }
    .scan-explorer__progress span { width: 28px; }
}

/* Section 04: why choose FETOCARE */
.services-why { position: relative; overflow: hidden; padding: 56px 0 0; background: radial-gradient(ellipse at 94% -8%,rgba(250,230,243,.58),transparent 25%),radial-gradient(ellipse at 1% 105%,rgba(249,226,242,.68),transparent 28%),#fff; }
.services-why__container { position: relative; z-index: 1; max-width: 1770px; padding-inline: 34px; }
.services-why__header { max-width: 1120px; margin-bottom: 38px; }
.services-why__eyebrow { gap: 18px; margin: 0 0 13px; color: #cd1559; font-size: 13px; }
.services-why__eyebrow span { width: 48px; height: 1px; background: #d34b83; }
.services-why__header h2 { margin: 0 0 12px; color: #142951; font-size: clamp(42px,3vw,52px); font-weight: 750; line-height: 1.08; letter-spacing: -.045em; }
.services-why__header h2 em { color: var(--fc-accent); font-style: normal; }
.services-why__header > p:last-child { margin: 0; color: #68738f; font-size: 18px; line-height: 1.45; }
.services-why__main { min-height: 600px; }
.services-why__visual { position: relative; min-height: 600px; overflow: hidden; border-radius: 11% 48% 6% 2% / 7% 24% 4% 4%; background: #eadfdb; }
.services-why__visual > img,.services-why__placeholder { width: 100%; height: 100%; min-height: 600px; object-fit: cover; }
.services-why__visual > img { object-position: center; }
.services-why__placeholder { display: grid; place-items: center; color: #f1e2e6; background: linear-gradient(135deg,#d8cfcc,#aa9793); font-size: 130px; }
.services-why__placeholder::before { position: absolute; top: 23%; left: 18%; width: 58%; height: 32%; border: 14px solid #404046; border-radius: 8px; background: radial-gradient(ellipse at 54% 54%,#d8d8db 0 9%,#777980 10% 21%,#1a1b20 22% 50%,#040506 51%); box-shadow: 0 16px 0 #5e5c60; content: ''; }
.services-why__microcopy { position: absolute; z-index: 2; top: 118px; right: 20px; margin: 0; padding: 0 0 20px 20px; border-left: 1px solid var(--fc-accent); color: #74809b; font-size: 12px; font-weight: 650; line-height: 1.75; letter-spacing: .24em; text-transform: uppercase; }
.services-why__microcopy span { position: absolute; bottom: 0; left: 20px; width: 34px; height: 1px; background: #838aa0; }
.services-why__message { position: absolute; z-index: 2; bottom: -2px; left: -2px; width: 225px; height: 265px; padding: 128px 0 0 48px; border-radius: 0 100% 0 0; background: rgba(249,245,248,.93); }
.services-why__message p { margin: 0; color: #71809b; font-size: 12px; font-weight: 650; line-height: 1.75; letter-spacing: .24em; text-transform: uppercase; }
.services-why__message > span { display: block; width: 34px; height: 2px; margin-top: 14px; background: var(--fc-accent); }
.services-why__card { min-height: 181px; padding: 26px 25px; border: 1px solid #f0ebef; border-radius: 19px; background: rgba(255,255,255,.92); box-shadow: 0 8px 24px rgba(44,16,49,.045); }
.services-why__card .fc-icon-circle { width: 76px; height: 76px; flex-basis: 76px; color: #d31562; font-size: 30px; }
.services-why__card h3 { margin: 8px 0 10px; color: #112951; font-size: 18px; font-weight: 750; line-height: 1.2; }
.services-why__card p { margin: 0; color: #68738f; font-size: 15px; line-height: 1.4; }
.services-why__trust { margin: 0 -34px; padding: 26px 34px; background: linear-gradient(90deg,rgba(255,247,251,.96),rgba(252,239,247,.93),rgba(255,251,253,.96)); }
.services-why__trust-column + .services-why__trust-column { border-left: 1px solid #e0ccdc; }
.services-why__trust-item { min-height: 74px; padding-inline: 22px; }
.services-why__trust-item .fc-icon-circle { width: 70px; height: 70px; flex-basis: 70px; color: #d31562; font-size: 27px; }
.services-why__trust-item strong,.services-why__trust-item span { display: block; }
.services-why__trust-item strong { color: #d31562; font-size: 25px; font-weight: 750; line-height: 1.1; }
.services-why__trust-item p > span { margin-top: 5px; color: #68738f; font-size: 17px; line-height: 1.2; }
@media (max-width:1399.98px) {
    .services-why__container { padding-inline: 28px; }
    .services-why__card { padding: 22px 20px; }
    .services-why__card .fc-icon-circle { width: 65px; height: 65px; flex-basis: 65px; font-size: 26px; }
    .services-why__trust { margin-inline: -28px; padding-inline: 28px; }
}
@media (max-width:991.98px) {
    .services-why { padding-top: 50px; }
    .services-why__main { min-height: 0; }
    .services-why__visual,.services-why__visual > img,.services-why__placeholder { min-height: 570px; }
    .services-why__visual { border-radius: 38px 180px 32px 32px; }
    .services-why__trust { margin-top: 30px; }
}
@media (max-width:767.98px) {
    .services-why__header { margin-bottom: 28px; }
    .services-why__eyebrow { gap: 10px; font-size: 10px; }
    .services-why__eyebrow span { width: 25px; }
    .services-why__header h2 { font-size: clamp(35px,9.5vw,45px); }
    .services-why__header > p:last-child { font-size: 16px; }
    .services-why__trust-column + .services-why__trust-column { border-top: 1px solid #e0ccdc; border-left: 0; }
    .services-why__trust-item { justify-content: flex-start!important; max-width: 330px; margin: 0 auto; padding: 18px 0; }
}
@media (max-width:575.98px) {
    .services-why__container { padding-inline: 20px; }
    .services-why__visual,.services-why__visual > img,.services-why__placeholder { min-height: 440px; }
    .services-why__visual { border-radius: 28px 105px 24px 24px; }
    .services-why__placeholder { font-size: 92px; }
    .services-why__placeholder::before { left: 12%; width: 68%; border-width: 9px; }
    .services-why__message { width: 175px; height: 205px; padding: 96px 0 0 28px; }
    .services-why__message p { font-size: 9px; }
    .services-why__card { min-height: 0; padding: 22px 18px; }
    .services-why__card .fc-icon-circle { width: 58px; height: 58px; flex-basis: 58px; font-size: 23px; }
    .services-why__card h3 { margin-top: 4px; }
    .services-why__trust { margin-inline: -20px; padding-inline: 20px; }
}
