/* Super Value Services — calm editorial chapter system. */

.sv-services-page {
    --sv-service-line: rgba(var(--sv-off-white-rgb), 0.18);
    background:
        radial-gradient(circle at 78% 8%, rgba(var(--sv-blue-rgb), 0.2), transparent 34rem),
        linear-gradient(180deg, var(--sv-black) 0%, var(--sv-near-black) 54%, var(--sv-blue-deep) 100%);
    color: var(--sv-off-white);
    isolation: isolate;
    overflow-x: clip;
    position: relative;
}

.sv-services-page::before,
.sv-services-page::after {
    content: "";
    pointer-events: none;
    position: absolute;
    z-index: -1;
}

.sv-services-page::before {
    background: radial-gradient(circle, rgba(var(--sv-blue-rgb), 0.16), transparent 68%);
    height: min(68vw, 900px);
    inset-block-start: 12%;
    inset-inline-end: -28%;
    width: min(68vw, 900px);
}

.sv-services-page::after {
    background: radial-gradient(circle, rgba(var(--sv-red-rgb), 0.08), transparent 70%);
    height: min(52vw, 680px);
    inset-block-start: 55%;
    inset-inline-start: -24%;
    width: min(52vw, 680px);
}

.sv-services-page h1,
.sv-services-page h2,
.sv-services-page h3,
.sv-services-page p {
    position: relative;
    z-index: 2;
}

.sv-services-page .sv-eyebrow,
.sv-service-scene__eyebrow {
    color: var(--sv-red);
}

/* Services hero */
.sv-services-hero {
    min-height: 86svh;
    overflow: hidden;
    padding-block: 112px 68px;
    position: relative;
}

.sv-services-hero__atmosphere,
.sv-services-hero__atmosphere::before,
.sv-services-hero__atmosphere::after {
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.sv-services-hero__atmosphere {
    background:
        radial-gradient(ellipse at 72% 48%, rgba(var(--sv-blue-rgb), 0.18), transparent 34%),
        radial-gradient(ellipse at 30% 76%, rgba(var(--sv-red-rgb), 0.06), transparent 30%);
    z-index: 0;
}

.sv-services-hero__atmosphere::before {
    border: 1px solid rgba(var(--sv-warm-gray-rgb), 0.1);
    border-radius: 50%;
    content: "";
    height: 76vw;
    inset-block-start: 8%;
    inset-inline-start: 52%;
    transform: rotate(-18deg) skewX(-12deg);
    width: 40vw;
}

.sv-services-hero__atmosphere::after {
    background: var(--sv-red);
    content: "";
    height: 1px;
    inset-block-start: 67%;
    inset-inline-start: 4%;
    opacity: 0.52;
    transform: rotate(-12deg);
    transform-origin: 0 center;
    width: 52vw;
}

.sv-services-hero__inner {
    align-items: center;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-height: calc(86svh - 180px);
    position: relative;
}

.sv-services-hero__copy {
    max-width: 700px;
    position: relative;
    z-index: 4;
}

.sv-services-hero__copy .sv-eyebrow {
    margin-block-end: 20px;
}

.sv-services-hero h1 {
    color: var(--sv-off-white);
    font-size: clamp(3.8rem, 6vw, 6.5rem);
    letter-spacing: -0.045em;
    line-height: 0.88;
    margin: 0;
    max-width: 700px;
    text-transform: uppercase;
}

.sv-services-hero__title-mask {
    display: block;
    overflow: hidden;
    padding-block: 0.06em;
    perspective: 720px;
}

.sv-services-hero__title-text {
    display: block;
    transform-origin: center bottom;
}

.sv-services-hero__intro {
    color: rgba(var(--sv-warm-gray-rgb), 0.94);
    font-size: var(--sv-body-lg);
    line-height: 1.6;
    margin: 30px 0 0;
    max-width: 500px;
}

.sv-services-hero__orientation,
.sv-services-hero__scroll {
    align-items: center;
    color: rgba(var(--sv-off-white-rgb), 0.72);
    display: flex;
    font-size: 0.7rem;
    font-weight: 600;
    gap: 12px;
    position: absolute;
    text-decoration: none;
    text-transform: uppercase;
    z-index: 4;
}

.sv-services-hero__orientation { bottom: 62px; inset-inline-end: var(--sv-gutter); }
.sv-services-hero__orientation i { background: var(--sv-red); display: block; height: 1px; width: 44px; }
.sv-services-hero__scroll { bottom: 58px; inset-inline-start: var(--sv-gutter); }
.sv-services-hero__scroll span:last-child { color: var(--sv-red); font-size: 1.1rem; transition: transform var(--sv-fast) var(--sv-ease); }
.sv-services-hero__scroll:hover span:last-child { transform: translateY(3px); }

/* Compact chapter navigator */
.sv-service-navigator {
    position: sticky;
    top: 64px;
    z-index: 10;
}

.sv-service-navigator__track {
    backdrop-filter: blur(12px);
    background: rgba(var(--sv-near-black-rgb), 0.86);
    border-block: 1px solid rgba(var(--sv-warm-gray-rgb), 0.2);
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.sv-service-navigator__item {
    color: rgba(var(--sv-off-white-rgb), 0.52);
    display: grid;
    gap: 5px;
    min-height: 62px;
    padding: 11px 16px 9px;
    position: relative;
    text-decoration: none;
    transition: color var(--sv-fast) var(--sv-ease), background-color var(--sv-fast) var(--sv-ease);
}

.sv-service-navigator__item + .sv-service-navigator__item {
    border-inline-start: 1px solid rgba(var(--sv-warm-gray-rgb), 0.16);
}

.sv-service-navigator__item:hover,
.sv-service-navigator__item.is-active {
    background: rgba(var(--sv-blue-rgb), 0.18);
    color: var(--sv-off-white);
}

.sv-service-navigator__number { color: var(--sv-red); font-size: 0.64rem; font-weight: 600; letter-spacing: 0.12em; }
.sv-service-navigator__label { font-size: clamp(0.74rem, 0.9vw, 0.88rem); font-weight: 600; line-height: 1; }
.sv-service-navigator__indicator { background: var(--sv-red); bottom: 0; height: 2px; inset-inline: 16px; opacity: 0; position: absolute; transform: scaleX(0.2); transform-origin: start center; transition: opacity var(--sv-fast) var(--sv-ease), transform var(--sv-standard) var(--sv-ease); }
.sv-service-navigator__item.is-active .sv-service-navigator__indicator,
.sv-service-navigator__item:hover .sv-service-navigator__indicator { opacity: 1; transform: scaleX(1); }

/* Shared editorial chapter grid */
.sv-service-scene {
    overflow: hidden;
    padding-block: clamp(112px, 10vw, 150px);
    position: relative;
    scroll-margin-block-start: 82px;
}

.sv-service-scene__environment,
.sv-scene-shape {
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.sv-service-scene__environment { overflow: hidden; z-index: 0; }

.sv-scene-shape--halo {
    background: radial-gradient(circle, rgba(var(--sv-blue-rgb), 0.18), transparent 68%);
    border-radius: 50%;
    height: min(55vw, 760px);
    inset-block-start: 8%;
    inset-inline-end: -16%;
    width: min(55vw, 760px);
}

.sv-scene-shape--orbit {
    border: 1px solid rgba(var(--sv-off-white-rgb), 0.16);
    border-radius: 50%;
    height: 56%;
    inset-block-start: 22%;
    inset-inline-end: 8%;
    transform: rotateX(68deg) rotateZ(-14deg);
    width: 44%;
}

.sv-scene-shape--ribbon,
.sv-scene-shape--plane {
    display: none;
}

.sv-service-scene__inner {
    column-gap: clamp(34px, 5vw, 72px);
    display: grid;
    grid-template-areas:
        "ghost stage copy"
        "ghost stage offerings"
        "ghost stage cta";
    grid-template-columns: minmax(42px, 0.12fr) minmax(0, 1.22fr) minmax(280px, 0.86fr);
    grid-template-rows: auto auto auto;
    min-height: 0;
    position: relative;
    z-index: 1;
}

.sv-service-scene__ghost-number {
    align-self: start;
    color: rgba(var(--sv-off-white-rgb), 0.08);
    font-size: clamp(6rem, 12vw, 10rem);
    font-weight: 300;
    grid-area: ghost;
    letter-spacing: -0.08em;
    line-height: 0.72;
    margin: -0.04em 0 0;
    pointer-events: none;
    position: relative;
    z-index: 0;
}

.sv-service-scene__stage {
    align-self: center;
    grid-area: stage;
    min-height: clamp(420px, 40vw, 570px);
    perspective: 1200px;
    position: relative;
    transform-style: preserve-3d;
    z-index: 2;
}

.sv-media-depth-plane,
.sv-media-accent-line,
.sv-media-frame,
.sv-media-number-plate {
    display: block;
    position: absolute;
    transform-style: preserve-3d;
}

.sv-media-depth-plane {
    background: rgba(var(--sv-blue-rgb), 0.14);
    border: 1px solid rgba(var(--sv-blue-rgb), 0.32);
    inset: 7% -2% 4% 5%;
    transform: rotateY(2deg) rotateZ(-1deg) translateZ(-32px);
}

.sv-media-accent-line {
    background: var(--sv-red);
    height: 1px;
    inset-block-start: 18%;
    inset-inline-start: -5%;
    opacity: 0.72;
    transform: rotate(-10deg) translateZ(28px);
    width: 28%;
    z-index: 4;
}

.sv-media-frame {
    --sv-frame-rotate-x: 0deg;
    --sv-frame-rotate-y: -1deg;
    --sv-frame-rotate-z: 0deg;
    --sv-pointer-x: 0deg;
    --sv-pointer-y: 0deg;
    background: var(--sv-charcoal);
    border: 1px solid rgba(var(--sv-off-white-rgb), 0.14);
    border-radius: 8px;
    box-shadow: 0 24px 70px rgba(var(--sv-black-rgb), 0.42);
    inset: 3% 0 2%;
    overflow: hidden;
    transform: rotateY(calc(var(--sv-frame-rotate-y) + var(--sv-pointer-y))) rotateX(calc(var(--sv-frame-rotate-x) + var(--sv-pointer-x))) rotateZ(var(--sv-frame-rotate-z)) translateZ(18px);
    transition: transform 700ms var(--sv-ease);
    z-index: 2;
}

.sv-media-frame::after {
    background: linear-gradient(135deg, rgba(var(--sv-blue-rgb), 0.12), transparent 62%, rgba(var(--sv-red-rgb), 0.1));
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.sv-media-frame img {
    display: block;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform 700ms var(--sv-ease);
    width: 100%;
}

.sv-media-frame:hover {
    transform: rotateY(var(--sv-pointer-y)) rotateX(var(--sv-pointer-x)) translateZ(18px);
}

.sv-media-frame:hover img { transform: scale(1.01); }
.sv-media-number-plate { background: var(--sv-red); bottom: 5%; color: var(--sv-off-white); font-size: 0.68rem; font-weight: 600; inset-inline-end: 2%; letter-spacing: 0.12em; padding: 10px 12px; transform: translateZ(62px); z-index: 4; }

.sv-service-scene__copy {
    align-self: start;
    grid-area: copy;
    max-width: 500px;
    position: relative;
    z-index: 3;
}

.sv-service-scene__eyebrow { font-size: 0.68rem; font-weight: 600; letter-spacing: 0.15em; margin: 0 0 18px; text-transform: uppercase; }
.sv-service-scene h2 { color: var(--sv-off-white); font-size: clamp(2.8rem, 4.3vw, 4.5rem); font-weight: 600; letter-spacing: -0.025em; line-height: 0.95; margin: 0 0 22px; }
.sv-service-scene__tagline { color: var(--sv-off-white); font-size: clamp(1.3rem, 1.55vw, 1.65rem); font-weight: 300; letter-spacing: -0.01em; line-height: 1.14; margin: 0 0 18px; }
.sv-service-scene__description { color: rgba(var(--sv-warm-gray-rgb), 0.92); font-size: var(--sv-body); line-height: 1.65; margin: 0 0 10px; max-width: 480px; }
.sv-service-scene__offerings { align-self: start; grid-area: offerings; margin: 28px 0 0; position: relative; z-index: 3; }
.sv-scene-list + .sv-scene-list { margin-top: 24px; }
.sv-scene-list h3 { color: var(--sv-red); font-size: 0.68rem; font-weight: 600; letter-spacing: 0.15em; line-height: 1.3; margin: 0 0 10px; text-transform: uppercase; }
.sv-scene-list ul { border-block-start: 1px solid var(--sv-service-line); counter-reset: sv-scene-item; display: grid; gap: 0 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.sv-scene-list li { border-block-end: 1px solid rgba(var(--sv-warm-gray-rgb), 0.14); color: rgba(var(--sv-off-white-rgb), 0.82); counter-increment: sv-scene-item; font-size: 0.88rem; line-height: 1.3; min-width: 0; padding-block: 10px; padding-inline-start: 27px; position: relative; }
.sv-scene-list li::before { color: var(--sv-red); content: counter(sv-scene-item, decimal-leading-zero); font-size: 0.6rem; font-weight: 600; inset-block-start: 12px; inset-inline-start: 0; letter-spacing: 0.06em; position: absolute; }
.sv-scene-list li::after { background: var(--sv-red); content: ""; height: 3px; inset-block-start: 17px; inset-inline-start: 17px; position: absolute; width: 3px; }
.sv-service-scene__cta { align-self: start; grid-area: cta; margin: 32px 0 0; position: relative; z-index: 3; }
.sv-service-scene__cta h3 { color: var(--sv-off-white); font-size: clamp(1.25rem, 1.55vw, 1.65rem); font-weight: 600; letter-spacing: -0.015em; line-height: 1.08; margin: 0 0 16px; max-width: 430px; }
.sv-service-scene__cta-link,
.sv-services-finale__cta { align-items: center; border-block-end: 1px solid var(--sv-red); color: var(--sv-off-white); display: inline-flex; font-size: 0.74rem; font-weight: 600; gap: 14px; letter-spacing: 0.08em; padding-block-end: 9px; text-decoration: none; text-transform: uppercase; transition: color var(--sv-fast) var(--sv-ease); }
.sv-service-scene__cta-arrow,
.sv-services-finale__cta span:last-child { align-items: center; border: 1px solid var(--sv-red); border-radius: 50%; display: inline-flex; font-size: 0.9rem; height: 28px; justify-content: center; transition: background-color var(--sv-fast) var(--sv-ease), transform var(--sv-fast) var(--sv-ease); width: 28px; }
.sv-service-scene__cta-link:hover,
.sv-services-finale__cta:hover { color: var(--sv-red); }
.sv-service-scene__cta-link:hover .sv-service-scene__cta-arrow,
.sv-services-finale__cta:hover span:last-child { background: var(--sv-red); color: var(--sv-off-white); transform: translate(3px, -3px); }

/* Restrained chapter variations */
.sv-service-scene--tourism-travel .sv-scene-shape--orbit { border-color: rgba(var(--sv-blue-rgb), 0.6); height: 42%; inset-block-start: 28%; inset-inline-end: 15%; width: 52%; }
.sv-service-scene--media-marketing .sv-service-scene__inner,
.sv-service-scene--medical-tourism .sv-service-scene__inner,
.sv-service-scene--events-management .sv-service-scene__inner { grid-template-areas: "copy stage ghost" "offerings stage ghost" "cta stage ghost"; grid-template-columns: minmax(280px, 0.86fr) minmax(0, 1.22fr) minmax(42px, 0.12fr); }
.sv-service-scene--media-marketing .sv-scene-shape--halo { background: radial-gradient(circle, rgba(var(--sv-red-rgb), 0.13), rgba(var(--sv-blue-rgb), 0.08) 42%, transparent 70%); inset-inline-end: auto; inset-inline-start: -14%; }
.sv-service-scene--media-marketing .sv-scene-shape--orbit { border-color: rgba(var(--sv-red-rgb), 0.36); height: 48%; inset-block-start: 24%; inset-inline-end: 12%; transform: rotateX(67deg) rotateZ(14deg); width: 48%; }
.sv-service-scene--business-services .sv-service-scene__stage { min-height: clamp(390px, 36vw, 520px); }
.sv-service-scene--business-services .sv-scene-shape--orbit { border-radius: 12px; height: 48%; inset-block-start: 22%; inset-inline-end: 7%; transform: perspective(900px) rotateY(-12deg) rotateZ(5deg); width: 38%; }
.sv-service-scene--medical-tourism .sv-scene-shape--halo { background: radial-gradient(circle, rgba(var(--sv-off-white-rgb), 0.1), rgba(var(--sv-blue-rgb), 0.17) 42%, transparent 70%); }
.sv-service-scene--medical-tourism .sv-scene-shape--orbit { border-color: rgba(var(--sv-off-white-rgb), 0.22); height: 62%; inset-block-start: 15%; inset-inline-end: 8%; width: 52%; }
.sv-service-scene--events-management .sv-scene-shape--halo { background: radial-gradient(circle, rgba(var(--sv-red-rgb), 0.15), rgba(var(--sv-blue-rgb), 0.08) 44%, transparent 70%); }
.sv-service-scene--events-management .sv-service-scene__stage { min-height: clamp(440px, 40vw, 560px); }
.sv-service-scene--events-management .sv-scene-shape--orbit { border-color: rgba(var(--sv-red-rgb), 0.38); height: 48%; inset-block-start: 20%; inset-inline-end: 5%; transform: rotateX(64deg) rotateZ(14deg); width: 48%; }

/* Finale */
.sv-services-finale { min-height: 74svh; overflow: hidden; padding-block: clamp(120px, 12vw, 170px); position: relative; }
.sv-services-finale__environment,
.sv-finale-shape { inset: 0; pointer-events: none; position: absolute; }
.sv-services-finale__environment { background: radial-gradient(circle at 50% 46%, rgba(var(--sv-blue-rgb), 0.24), transparent 32rem), radial-gradient(circle at 72% 72%, rgba(var(--sv-red-rgb), 0.13), transparent 24rem); }
.sv-finale-shape--halo { background: radial-gradient(circle, rgba(var(--sv-blue-rgb), 0.13), transparent 68%); border-radius: 50%; height: min(70vw, 820px); inset: 12% auto auto 50%; transform: translateX(-50%); width: min(70vw, 820px); }
.sv-finale-shape--ring { border: 1px solid rgba(var(--sv-off-white-rgb), 0.22); border-radius: 50%; height: min(58vw, 680px); inset: 19% auto auto 50%; transform: translateX(-50%) rotateX(66deg) rotateZ(-18deg); width: min(58vw, 680px); }
.sv-finale-shape--ribbon { background: linear-gradient(90deg, transparent, var(--sv-red), transparent); height: 1px; inset-block-start: 53%; inset-inline-start: 18%; opacity: 0.62; transform: rotate(-13deg); width: 64%; }
.sv-services-finale__inner { align-items: center; display: flex; justify-content: center; min-height: 58svh; position: relative; }
.sv-services-finale__sculpture { height: min(58vw, 680px); inset: 50% auto auto 50%; opacity: 0.66; position: absolute; transform: translate(-50%, -50%); transform-style: preserve-3d; width: min(58vw, 680px); }
.sv-finale-sculpture__ring,
.sv-finale-sculpture__core { display: block; position: absolute; transform-style: preserve-3d; }
.sv-finale-sculpture__ring { border: 1px solid rgba(var(--sv-off-white-rgb), 0.3); border-radius: 50%; inset: 10%; }
.sv-finale-sculpture__ring--one { border-color: rgba(var(--sv-red-rgb), 0.58); transform: rotateX(68deg) rotateZ(-14deg) translateZ(34px); }
.sv-finale-sculpture__ring--two { border-color: rgba(var(--sv-blue-rgb), 0.64); inset: 24%; transform: rotateY(64deg) rotateZ(22deg) translateZ(54px); }
.sv-finale-sculpture__core { background: radial-gradient(circle at 35% 28%, rgba(var(--sv-off-white-rgb), 0.18), transparent 14%), radial-gradient(circle, rgba(var(--sv-blue-rgb), 0.72), var(--sv-black) 70%); border-radius: 50%; box-shadow: inset -20px -22px 46px rgba(var(--sv-black-rgb), 0.7), 0 0 58px rgba(var(--sv-red-rgb), 0.12); height: 32%; inset: 34%; transform: translateZ(70px); width: 32%; }
.sv-services-finale__copy { max-width: 880px; position: relative; text-align: center; z-index: 3; }
.sv-services-finale h2 { color: var(--sv-off-white); font-size: clamp(3rem, 4.5vw, 5.5rem); font-weight: 600; letter-spacing: -0.035em; line-height: 0.95; margin: 0 auto 26px; }
.sv-services-finale p { color: rgba(var(--sv-warm-gray-rgb), 0.94); font-size: var(--sv-body-lg); line-height: 1.6; margin: 0 auto; max-width: 560px; }
.sv-services-finale__statement { color: var(--sv-off-white) !important; font-size: 1.08rem !important; font-weight: 600; margin-block: 22px 28px !important; }
.sv-services-finale__cta { margin-top: 8px; }

.sv-services-finale > .sv-mouse-grid {
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.sv-services-finale > .sv-services-finale__environment {
    z-index: 0;
}

.sv-services-finale > .sv-services-finale__inner {
    z-index: 2;
}

@media (max-width: 1050px) {
    .sv-service-scene__inner,
    .sv-service-scene--media-marketing .sv-service-scene__inner,
    .sv-service-scene--business-services .sv-service-scene__inner,
    .sv-service-scene--medical-tourism .sv-service-scene__inner,
    .sv-service-scene--events-management .sv-service-scene__inner {
        grid-template-areas: "stage stage" "copy ghost" "offerings ghost" "cta ghost";
        grid-template-columns: minmax(0, 1fr) minmax(54px, 0.14fr);
        min-height: 0;
        row-gap: 28px;
    }

    .sv-service-scene__stage,
    .sv-service-scene--business-services .sv-service-scene__stage,
    .sv-service-scene--events-management .sv-service-scene__stage { min-height: clamp(400px, 55vw, 540px); }
    .sv-service-scene__copy,
    .sv-service-scene__offerings,
    .sv-service-scene__cta { margin-inline: 0; max-width: 720px; padding-inline: 0; }
    .sv-service-scene__ghost-number { font-size: clamp(5rem, 13vw, 8rem); }
}

@media (max-width: 680px) {
    .sv-services-hero { min-height: 86svh; padding-block: 100px 68px; }
    .sv-services-hero__inner { display: block; min-height: calc(86svh - 168px); }
    .sv-services-hero__copy { max-width: 92vw; padding-top: 7vh; }
    .sv-services-hero h1 { font-size: clamp(3.2rem, 13vw, 5rem); line-height: 0.88; max-width: 92vw; white-space: normal; }
    .sv-services-hero__intro { font-size: 1rem; line-height: 1.58; margin-top: 24px; max-width: 340px; }
    .sv-services-hero__atmosphere::before,
    .sv-services-hero__atmosphere::after { display: none; }
    .sv-services-hero__orientation { bottom: 30px; }
    .sv-services-hero__scroll { bottom: 29px; font-size: 0.63rem; }
    .sv-service-navigator { top: 56px; }
    .sv-service-navigator__track { display: flex; min-width: max-content; overflow-x: auto; scrollbar-width: none; }
    .sv-service-navigator__track::-webkit-scrollbar { display: none; }
    .sv-service-navigator__item { flex: 0 0 124px; min-height: 58px; padding-inline: 12px; }
    .sv-service-navigator__indicator { inset-inline: 12px; }
    .sv-service-scene { padding-block: 80px 94px; }
    .sv-service-scene__inner,
    .sv-service-scene--media-marketing .sv-service-scene__inner,
    .sv-service-scene--business-services .sv-service-scene__inner,
    .sv-service-scene--medical-tourism .sv-service-scene__inner,
    .sv-service-scene--events-management .sv-service-scene__inner {
        display: grid;
        grid-template-areas: "stage" "copy" "offerings" "cta";
        grid-template-columns: 1fr;
        row-gap: 0;
    }
    .sv-service-scene__stage,
    .sv-service-scene--business-services .sv-service-scene__stage,
    .sv-service-scene--events-management .sv-service-scene__stage { min-height: min(88vw, 430px); }
    .sv-service-scene__ghost-number { display: none; }
    .sv-service-scene__copy { margin-top: 24px; }
    .sv-service-scene h2 { font-size: clamp(2.7rem, 11vw, 4.2rem); line-height: 0.92; }
    .sv-service-scene__offerings { margin-top: 30px; }
    .sv-scene-list ul { grid-template-columns: 1fr; }
    .sv-service-scene__cta { margin-top: 32px; }
    .sv-scene-shape--orbit { display: none; }
    .sv-services-finale { min-height: 72svh; padding-block: 100px; }
    .sv-services-finale__inner { min-height: 56svh; }
    .sv-services-finale__sculpture { height: 112vw; width: 112vw; }
    .sv-services-finale h2 { font-size: clamp(2.8rem, 11vw, 4.7rem); max-width: 94vw; }
}

html[dir="rtl"] .sv-services-hero__copy,
html[dir="rtl"] .sv-service-scene__copy,
html[dir="rtl"] .sv-service-scene__offerings,
html[dir="rtl"] .sv-service-scene__cta { text-align: start; }

html[dir="rtl"] .sv-service-scene__ghost-number { margin-inline-end: -0.02em; margin-inline-start: 0; }
html[dir="rtl"] .sv-scene-list li { padding-inline-end: 27px; padding-inline-start: 0; }
html[dir="rtl"] .sv-scene-list li::before { inset-inline-end: 0; inset-inline-start: auto; }
html[dir="rtl"] .sv-scene-list li::after { inset-inline-end: 17px; inset-inline-start: auto; }
html[dir="rtl"] .sv-service-scene__cta-link:hover .sv-service-scene__cta-arrow,
html[dir="rtl"] .sv-services-finale__cta:hover span:last-child { transform: translate(-3px, -3px); }

@media (prefers-reduced-motion: reduce) {
    .sv-services-page * { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
    .sv-service-scene__stage,
    .sv-media-frame,
    .sv-services-finale__sculpture { transform: none; }
}

/* Image-led Services hero. The chapter system below remains unchanged. */
.sv-services-hero {
    background: var(--sv-black);
    isolation: isolate;
    min-height: 90svh;
    padding-block: 112px 68px;
}

.sv-services-hero__media {
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    z-index: 0;
}

.sv-services-hero__image {
    display: block;
    height: 100%;
    object-fit: cover;
    object-position: 65% center;
    transform: scale(1.04);
    width: 100%;
}

.sv-services-hero__media-overlay {
    background:
        linear-gradient(90deg, rgba(var(--sv-near-black-rgb), 0.98) 0%, rgba(var(--sv-near-black-rgb), 0.9) 24%, rgba(var(--sv-near-black-rgb), 0.48) 55%, rgba(var(--sv-near-black-rgb), 0.5) 100%),
        linear-gradient(180deg, rgba(var(--sv-blue-rgb), 0.18), rgba(var(--sv-black-rgb), 0.28));
    inset: 0;
    position: absolute;
}

.sv-services-hero__atmosphere {
    background:
        radial-gradient(circle at 64% 44%, rgba(var(--sv-blue-rgb), 0.16), transparent 34%),
        radial-gradient(circle at 25% 76%, rgba(var(--sv-red-rgb), 0.06), transparent 30%);
    inset: 0;
    z-index: 1;
}

.sv-services-hero__atmosphere::before {
    background: radial-gradient(circle, rgba(var(--sv-blue-rgb), 0.14), transparent 68%);
    border: 0;
    border-radius: 50%;
    content: "";
    height: min(58vw, 760px);
    inset-block-start: 18%;
    inset-inline-start: 48%;
    position: absolute;
    transform: none;
    width: min(58vw, 760px);
}

.sv-services-hero__atmosphere::after {
    background: var(--sv-red);
    content: "";
    height: 1px;
    inset-block-start: 68%;
    inset-inline-start: 4%;
    opacity: 0.48;
    position: absolute;
    transform: rotate(-8deg);
    transform-origin: 0 center;
    width: min(36vw, 520px);
}

.sv-services-hero__inner {
    align-items: center;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-height: calc(90svh - 180px);
    position: relative;
    z-index: 2;
}

.sv-services-hero__copy {
    max-width: 700px;
}

.sv-services-hero h1 {
    max-width: 650px;
}

.sv-services-hero__orientation,
.sv-services-hero__scroll {
    z-index: 3;
}

html[dir="rtl"] .sv-services-hero__media-overlay {
    background:
        linear-gradient(270deg, rgba(var(--sv-near-black-rgb), 0.98) 0%, rgba(var(--sv-near-black-rgb), 0.9) 24%, rgba(var(--sv-near-black-rgb), 0.48) 55%, rgba(var(--sv-near-black-rgb), 0.5) 100%),
        linear-gradient(180deg, rgba(var(--sv-blue-rgb), 0.18), rgba(var(--sv-black-rgb), 0.28));
}

html[dir="rtl"] .sv-services-hero__image {
    object-position: 35% center;
}

html[dir="rtl"] .sv-services-hero__copy {
    justify-self: end;
    text-align: right;
}

@media (max-width: 680px) {
    .sv-services-hero {
        min-height: 86svh;
        padding-block: 100px 68px;
    }

    .sv-services-hero__inner {
        min-height: calc(86svh - 168px);
    }

    .sv-services-hero__image {
        object-position: 68% center;
    }

    .sv-services-hero__media-overlay {
        background:
            linear-gradient(90deg, rgba(var(--sv-near-black-rgb), 0.98) 0%, rgba(var(--sv-near-black-rgb), 0.84) 42%, rgba(var(--sv-near-black-rgb), 0.38) 100%),
            linear-gradient(180deg, rgba(var(--sv-blue-rgb), 0.14), rgba(var(--sv-black-rgb), 0.34));
    }

    html[dir="rtl"] .sv-services-hero__image {
        object-position: 32% center;
    }

    html[dir="rtl"] .sv-services-hero__media-overlay {
        background:
            linear-gradient(270deg, rgba(var(--sv-near-black-rgb), 0.98) 0%, rgba(var(--sv-near-black-rgb), 0.84) 42%, rgba(var(--sv-near-black-rgb), 0.38) 100%),
            linear-gradient(180deg, rgba(var(--sv-blue-rgb), 0.14), rgba(var(--sv-black-rgb), 0.34));
    }
}

@media (prefers-reduced-motion: reduce) {
    .sv-services-hero__image {
        transform: none;
    }
}
