﻿/* ================================================================
   SUNRISE LIFE CARE â€” SERVICE PAGE MASTER LAYOUT
   Namespace: srm-
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Allura&family=Fraunces:ital,wght@0,400;0,600;1,400;1,600&family=Inter:wght@400;500;600&display=swap');

/* â”€â”€ CSS Custom Properties â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
:root {
    /* Brand palette */
    --srm-mustard:      #c8a84b;
    --srm-mustard-light:#f0e4b0;
    --srm-mustard-dark: #9a7b2a;

    --srm-green:        #6a9e72;
    --srm-green-light:  #cde5cf;
    --srm-green-dark:   #3d6b44;

    --srm-lavender:     #8b7bb5;
    --srm-lavender-light:#d9d4ef;
    --srm-lavender-dark: #5a4a8a;

    --srm-coral:        #e8694a;
    --srm-coral-light:  #fad5cb;
    --srm-coral-dark:   #c0421f;

    /* Neutrals */
    --srm-ink:          #1e1e2e;
    --srm-ink-soft:     #3a3a4e;
    --srm-muted:        #6e6e82;
    --srm-subtle:       #a8a8bc;
    --srm-border:       #e4e4ee;
    --srm-surface:      #f8f7f4;
    --srm-white:        #ffffff;

    /* Backgrounds per section category */
    --srm-bg-warm:      #fdf9f0;
    --srm-bg-sage:      #f2f7f2;
    --srm-bg-petal:     #fdf4f1;
    --srm-bg-dusk:      #f4f2fa;
    --srm-bg-dark:      #1e1e2e;

    /* Typography */
    --srm-font-title:   'Fraunces', Georgia, serif;
    --srm-font-body:    'Inter', system-ui, sans-serif;
    --srm-font-script:  'Allura', cursive;

    /* Spacing scale */
    --srm-sp-xs:   8px;
    --srm-sp-sm:   16px;
    --srm-sp-md:   24px;
    --srm-sp-lg:   40px;
    --srm-sp-xl:   64px;
    --srm-sp-2xl:  96px;
    --srm-sp-3xl:  128px;

    /* Radii */
    --srm-r-sm:   8px;
    --srm-r-md:   16px;
    --srm-r-lg:   24px;
    --srm-r-xl:   40px;
    --srm-r-pill: 100px;

    /* Shadows */
    --srm-shadow-sm:  0 2px 12px rgba(30,30,46,0.07);
    --srm-shadow-md:  0 8px 32px rgba(30,30,46,0.10);
    --srm-shadow-lg:  0 20px 60px rgba(30,30,46,0.13);
    --srm-shadow-glow-mustard: 0 0 40px rgba(200,168,75,0.18);
    --srm-shadow-glow-green:   0 0 40px rgba(106,158,114,0.18);
    --srm-shadow-glow-coral:   0 0 40px rgba(232,105,74,0.18);

    /* Motion */
    --srm-ease:         cubic-bezier(0.22, 0.61, 0.36, 1);
    --srm-ease-soft:    cubic-bezier(0.16, 1, 0.3, 1);
    --srm-ease-crisp:   cubic-bezier(0.4, 0, 0.2, 1);
    --srm-ease-spring:  cubic-bezier(0.34, 1.56, 0.64, 1);
    --srm-dur-fast:     0.24s;
    --srm-dur-mid:      0.52s;
    --srm-dur-slow:     0.82s;

    /* Container */
    --srm-container:    1200px;
    --srm-container-sm: 780px;
    --srm-gutter:       clamp(20px, 5vw, 80px);
    --srm-noise-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.92' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.24'/%3E%3C/svg%3E");
}

@property --srm-hero-mesh-hue {
    syntax: '<angle>';
    inherits: false;
    initial-value: 0deg;
}

/* â”€â”€ Reset & Base â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

.srm-page {
    --srm-scroll-progress: 0%;
    --srm-side-nav-offset: 0px;
    font-family: var(--srm-font-body);
    color: var(--srm-ink);
    background:
        radial-gradient(circle at top right, rgba(200,168,75,0.05), transparent 14%),
        linear-gradient(180deg, #fffdf9 0%, #ffffff 22%, #fbfaf8 100%);
    overflow-x: hidden;
}

:focus-visible {
    outline: none;
}

:where(a[href], button, input, select, textarea, summary, [role="button"], [tabindex]:not([tabindex="-1"])):focus-visible {
    box-shadow:
        0 0 0 3px rgba(255,255,255,0.94),
        0 0 0 7px rgba(232,105,74,0.36),
        0 14px 30px rgba(232,105,74,0.14);
    border-color: rgba(232,105,74,0.36);
}

.srm-skip-link {
    position: fixed;
    top: 16px;
    left: 16px;
    z-index: 10060;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-radius: 999px;
    background: rgba(30,30,46,0.96);
    color: var(--srm-white);
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    transform: translate3d(0, -150%, 0);
    opacity: 0;
    transition:
        transform 0.34s var(--srm-ease-spring),
        opacity 0.24s ease;
}

.srm-skip-link:focus-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

#srm-main:focus {
    outline: none;
}

.srm-progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    width: 0;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green));
    box-shadow: 0 0 20px rgba(232,105,74,0.24);
    z-index: 9999;
    transition: width 0.1s linear;
    border-radius: 0 2px 2px 0;
}

/* Scroll-driven progress bar â€” Chrome/Edge 115+, no JS needed.
   JS still sets width via custom property for Safari/Firefox fallback. */
@supports (animation-timeline: scroll()) {
    @keyframes srm-progress-grow {
        from { width: 0; }
        to   { width: 100%; }
    }

    .srm-progress-bar {
        animation: srm-progress-grow linear both;
        animation-timeline: scroll(root block);
        /* Disable the JS-driven transition so it doesn't fight the animation */
        transition: none;
    }
}

.srm-page.is-preloading {
    overflow: hidden;
}

.srm-preloader {
    position: fixed;
    inset: 0;
    z-index: 10040;
    display: grid;
    place-items: center;
    padding: 28px;
    background:
        radial-gradient(circle at 18% 22%, rgba(200,168,75,0.18), transparent 24%),
        radial-gradient(circle at 78% 28%, rgba(232,105,74,0.16), transparent 28%),
        radial-gradient(circle at 52% 82%, rgba(106,158,114,0.12), transparent 26%),
        linear-gradient(145deg, rgba(255,250,245,0.98), rgba(249,246,252,0.96));
    opacity: 1;
    visibility: visible;
    animation: srm-preloader-failsafe 0.01s linear 4s forwards;
    transition:
        opacity 0.72s var(--srm-ease-soft),
        visibility 0s linear 0.72s;
}

.srm-page.is-motion-ready .srm-preloader,
.srm-preloader.is-preloader-exit {
    animation: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.srm-preloader::before,
.srm-preloader::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    pointer-events: none;
}

.srm-preloader::before {
    width: min(34vw, 360px);
    height: min(34vw, 360px);
    top: -8%;
    right: -6%;
    background: radial-gradient(circle, rgba(232,105,74,0.22), rgba(232,105,74,0));
}

.srm-preloader::after {
    width: min(30vw, 280px);
    height: min(30vw, 280px);
    bottom: -9%;
    left: -4%;
    background: radial-gradient(circle, rgba(139,123,181,0.2), rgba(139,123,181,0));
}

.srm-preloader__inner {
    position: relative;
    z-index: 1;
    display: grid;
    justify-items: center;
    gap: 18px;
    width: min(100%, 420px);
    padding: clamp(28px, 4vw, 42px);
    border-radius: 32px;
    background: rgba(255,255,255,0.68);
    border: 1px solid rgba(255,255,255,0.76);
    box-shadow: 0 32px 72px rgba(30,30,46,0.12);
    backdrop-filter: blur(8px) saturate(140%);
    text-align: center;
}

.srm-preloader__eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--srm-subtle);
}

.srm-preloader__mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 92px;
    height: 92px;
}

.srm-preloader__mark-ring,
.srm-preloader__mark-core {
    position: absolute;
    border-radius: 50%;
}

.srm-preloader__mark-ring {
    inset: 0;
    background:
        conic-gradient(
            from -90deg,
            rgba(232,105,74,0.98),
            rgba(200,168,75,0.94),
            rgba(106,158,114,0.9),
            rgba(139,123,181,0.94),
            rgba(232,105,74,0.98)
        );
    animation: srm-preloader-spin 2.8s linear infinite;
}

.srm-preloader__mark-ring::before {
    content: '';
    position: absolute;
    inset: 10px;
    border-radius: inherit;
    background: rgba(255,255,255,0.94);
}

.srm-preloader__mark-core {
    inset: 23px;
    display: grid;
    place-items: center;
    font-family: var(--srm-font-title);
    font-size: 22px;
    font-weight: 700;
    color: var(--srm-ink);
    background: linear-gradient(145deg, rgba(255,255,255,0.92), rgba(247,244,251,0.82));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.82);
}

.srm-preloader__title {
    max-width: 18ch;
    font-family: var(--srm-font-title);
    font-size: clamp(1.45rem, 3vw, 2.2rem);
    line-height: 1.02;
    color: var(--srm-ink);
    text-wrap: balance;
}

.srm-preloader__line {
    position: relative;
    width: min(100%, 240px);
    height: 4px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(228,228,238,0.84);
}

.srm-preloader__line-fill {
    position: absolute;
    inset: 0;
    transform-origin: left center;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green), var(--srm-lavender));
    animation: srm-preloader-fill 1.18s var(--srm-ease-spring) infinite;
}

@keyframes srm-preloader-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes srm-preloader-fill {
    0% {
        transform: scaleX(0.08);
        opacity: 0.7;
    }
    55% {
        transform: scaleX(0.88);
        opacity: 1;
    }
    100% {
        transform: scaleX(1);
        opacity: 0.84;
    }
}

@keyframes srm-preloader-failsafe {
    to {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }
}

.srm-side-nav {
    position: fixed;
    top: 50%;
    right: clamp(12px, 1.5vw, 22px);
    z-index: 9750;
    display: grid;
    gap: 10px;
    padding: 18px 12px;
    border-radius: 28px;
    background: rgba(255,255,255,0.76);
    border: 1px solid rgba(228,228,238,0.82);
    box-shadow: 0 18px 50px rgba(30,30,46,0.14);
    backdrop-filter: blur(8px) saturate(140%);
    transform: translate3d(0, -50%, 0);
}

.srm-side-nav::before {
    content: '';
    position: absolute;
    top: 20px;
    bottom: 20px;
    left: 19px;
    width: 1px;
    background: linear-gradient(180deg, rgba(232,105,74,0.18), rgba(139,123,181,0.3), rgba(106,158,114,0.16));
}

.srm-side-nav__active {
    position: absolute;
    top: 18px;
    left: 12px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: linear-gradient(145deg, var(--srm-coral), var(--srm-lavender));
    box-shadow:
        0 0 0 3px rgba(255,255,255,0.92),
        0 8px 18px rgba(232,105,74,0.26);
    transform: translate3d(0, var(--srm-side-nav-offset), 0);
    transition: transform 0.22s linear;
}

.srm-side-nav__item {
    --srm-nav-intensity: 0;
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 14px auto;
    align-items: center;
    gap: 10px;
    min-height: 14px;
    text-decoration: none;
    color: var(--srm-ink);
}

.srm-side-nav__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 1px solid rgba(30,30,46,0.18);
    background: rgba(255,255,255,0.92);
    transform: scale(calc(0.76 + (var(--srm-nav-intensity) * 0.34)));
    opacity: calc(0.36 + (var(--srm-nav-intensity) * 0.64));
    transition:
        transform 0.24s linear,
        opacity 0.24s linear,
        background 0.24s linear,
        border-color 0.24s linear;
}

.srm-side-nav__label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    white-space: nowrap;
    color: var(--srm-ink);
    opacity: calc(0.26 + (var(--srm-nav-intensity) * 0.74));
    transform: translateX(calc((1 - var(--srm-nav-intensity)) * 6px));
    transition:
        opacity 0.24s linear,
        transform 0.24s linear,
        color 0.24s linear;
}

.srm-side-nav__item[aria-current="true"] .srm-side-nav__dot {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0);
}

.srm-side-nav__item:is(:hover, :focus-visible) {
    --srm-nav-intensity: 1;
}

.srm-side-nav__item:focus-visible {
    outline: none;
}

.srm-scroll-dock {
    position: fixed;
    right: clamp(16px, 2.2vw, 28px);
    bottom: clamp(18px, 2.4vw, 30px);
    z-index: 9800;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px 10px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,0.9);
    border: 1px solid rgba(228,228,238,0.84);
    box-shadow: 0 18px 42px rgba(30,30,46,0.16);
    backdrop-filter: blur(16px) saturate(145%);
    text-decoration: none;
    color: var(--srm-ink);
    opacity: 0;
    transform: translate3d(0, 20px, 0) scale(0.96);
    pointer-events: none;
    transition:
        opacity var(--srm-dur-mid) var(--srm-ease-soft),
        transform var(--srm-dur-mid) var(--srm-ease-soft),
        box-shadow var(--srm-dur-mid) var(--srm-ease-soft);
}

.srm-scroll-dock:hover,
.srm-scroll-dock:focus-visible {
    box-shadow: 0 24px 54px rgba(30,30,46,0.2);
}

.srm-scroll-dock.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    pointer-events: auto;
}

.srm-scroll-dock__ring {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background:
        conic-gradient(
            from -90deg,
            var(--srm-coral) 0%,
            var(--srm-mustard) calc(var(--srm-scroll-progress) * 0.45),
            var(--srm-green) var(--srm-scroll-progress),
            rgba(228,228,238,0.48) var(--srm-scroll-progress),
            rgba(228,228,238,0.48) 100%
        );
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.58);
}

.srm-scroll-dock__ring::before {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: inherit;
    background: rgba(255,255,255,0.95);
}

.srm-scroll-dock__core {
    position: relative;
    z-index: 1;
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(255,255,255,0.88), rgba(248,247,244,0.72));
    color: var(--srm-ink);
}

.srm-scroll-dock__core svg {
    width: 14px;
    height: 14px;
}

.srm-scroll-dock__meta {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.srm-scroll-dock__label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--srm-subtle);
}

.srm-scroll-dock__value {
    font-family: var(--srm-font-title);
    font-size: 18px;
    line-height: 1;
    color: var(--srm-ink);
}

/* â”€â”€ Container â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-container {
    width: 100%;
    max-width: var(--srm-container);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--srm-gutter);
    padding-right: var(--srm-gutter);
}

.srm-container--sm {
    max-width: var(--srm-container-sm);
}

/* â”€â”€ Section Wrapper â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-section {
    position: relative;
    width: 100%;
    isolation: isolate;
    scroll-margin-top: 88px;
}

.srm-section__inner {
    position: relative;
    z-index: 1;
    padding-top: clamp(88px, 9vw, 112px);
    padding-bottom: clamp(88px, 9vw, 112px);
}

/* Section flow system */
.srm-page[data-srm-template="sunrise-service-master"] {
    --srm-bridge-wave-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 34C130 64 260 81 390 74C520 67 650 38 780 34C910 30 1040 53 1170 45C1279 38 1360 18 1440 6V120H0Z'/%3E%3C/svg%3E");
    --srm-bridge-diagonal-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 62L210 96C420 130 774 116 1040 80C1260 50 1360 22 1440 0V120H0Z'/%3E%3C/svg%3E");
    --srm-bridge-diagonal-soft-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 86C168 102 342 99 510 82C669 66 812 35 970 24C1148 11 1299 22 1440 40V120H0Z'/%3E%3C/svg%3E");
    --srm-bridge-organic-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 70C89 96 181 109 275 108C422 106 566 74 708 76C853 78 965 116 1086 109C1229 101 1347 49 1440 20V120H0Z'/%3E%3C/svg%3E");
    --srm-bridge-crest-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 26C92 17 184 9 278 20C392 34 474 78 585 86C709 95 787 47 905 40C1010 34 1099 63 1204 60C1289 57 1365 34 1440 12V120H0Z'/%3E%3C/svg%3E");
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md,
.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg {
    z-index: 2;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md {
    margin-top: -48px;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg {
    margin-top: -60px;
    z-index: 3;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md .srm-section__inner {
    padding-top: clamp(104px, 11vw, 132px);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg .srm-section__inner {
    padding-top: clamp(112px, 12vw, 144px);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge {
    --srm-bridge-mask: var(--srm-bridge-wave-mask);
    --srm-bridge-fill: #ffffff;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #ffffff00 0%, #ffffffe8 100%);
    --srm-bridge-height: 68px;
    --srm-bridge-bleed: 74px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(var(--srm-bridge-height) + var(--srm-bridge-bleed));
    pointer-events: none;
    z-index: 0;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge::before,
.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge::before {
    top: 0;
    bottom: var(--srm-bridge-height);
    background: var(--srm-bridge-bleed-bg);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge::after {
    bottom: -1px;
    height: calc(var(--srm-bridge-height) + 1px);
    background: var(--srm-bridge-fill);
    -webkit-mask: var(--srm-bridge-mask) center bottom / 100% 100% no-repeat;
    mask: var(--srm-bridge-mask) center bottom / 100% 100% no-repeat;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--wave {
    --srm-bridge-mask: var(--srm-bridge-wave-mask);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--diagonal {
    --srm-bridge-mask: var(--srm-bridge-diagonal-mask);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--diagonal-soft {
    --srm-bridge-mask: var(--srm-bridge-diagonal-soft-mask);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--organic {
    --srm-bridge-mask: var(--srm-bridge-organic-mask);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--crest {
    --srm-bridge-mask: var(--srm-bridge-crest-mask);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-white {
    --srm-bridge-fill: #ffffff;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #ffffff00 0%, #fffffff0 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-sage {
    --srm-bridge-fill: #f2f7f2;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #f2f7f200 0%, #f2f7f2f0 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-ink {
    --srm-bridge-fill: #1e1e2e;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #1e1e2e00 0%, #1e1e2ee8 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-petal {
    --srm-bridge-fill: #fdf4f1;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #fdf4f100 0%, #fdf4f1f4 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-dusk {
    --srm-bridge-fill: #f4f2fa;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #f4f2fa00 0%, #f4f2faf2 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-warm {
    --srm-bridge-fill: #fdf9f0;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #fdf9f000 0%, #fdf9f0f2 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-lilac {
    --srm-bridge-fill: #f5f1fb;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #f5f1fb00 0%, #f5f1fbf2 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge--to-night {
    --srm-bridge-fill: #241f36;
    --srm-bridge-bleed-bg: linear-gradient(180deg, #241f3600 0%, #241f36ec 100%);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-what__features {
    margin-top: -24px;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic {
    margin-top: 0;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__visual {
    transform: translateY(-24px);
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-related__grid {
    margin-top: -24px;
}

/* â”€â”€ Typography Scale â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-display {
    font-family: var(--srm-font-title);
    font-size: clamp(42px, 6vw, 84px);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.02em;
    color: var(--srm-ink);
}

.srm-h1 {
    font-family: var(--srm-font-title);
    font-size: clamp(36px, 5vw, 64px);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--srm-ink);
}

.srm-h2 {
    font-family: var(--srm-font-title);
    font-size: clamp(2.05rem, 3.2vw, 3rem);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.03em;
    color: #0A3322;
    text-wrap: balance;
}

.srm-h3 {
    font-family: var(--srm-font-title);
    font-size: clamp(20px, 2.5vw, 30px);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: var(--srm-ink);
}

.srm-h4 {
    font-family: var(--srm-font-body);
    font-size: clamp(15px, 1.4vw, 18px);
    font-weight: 600;
    line-height: 1.35;
    color: var(--srm-ink);
}

.srm-display,
.srm-h1,
.srm-h2,
.srm-h3,
.srm-cta__title {
    font-optical-sizing: none;
}

.srm-script {
    font-family: var(--srm-font-script);
    font-size: clamp(28px, 3.5vw, 48px);
    color: var(--srm-coral);
    line-height: 1.2;
}

.srm-lead {
    font-size: clamp(16px, 1.6vw, 20px);
    font-weight: 400;
    line-height: 1.75;
    color: var(--srm-muted);
    max-width: 64ch;
}

.srm-body {
    font-size: clamp(14px, 1.1vw, 16px);
    font-weight: 400;
    line-height: 1.8;
    color: var(--srm-muted);
}

.srm-caption {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--srm-subtle);
}

/* â”€â”€ Section Label (small eyebrow above title) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--srm-font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--srm-muted);
    margin-bottom: 14px;
    opacity: 0.001;
    transform: translate3d(0, 16px, 0);
    filter: blur(4px);
    transition:
        opacity 0.5s ease-out,
        transform 0.78s var(--srm-ease-soft),
        filter 0.5s ease-out,
        letter-spacing 0.88s cubic-bezier(0.16, 1, 0.3, 1);
}

.srm-eyebrow.is-will-animate,
.srm-cta__eyebrow.is-will-animate {
    /* will-change removed â€” applied only at interaction time by JS */
}

.srm-eyebrow::before {
    content: '';
    display: block;
    width: 24px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
}

.srm-eyebrow.is-eyebrow-visible,
.srm-cta__eyebrow.is-eyebrow-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
    letter-spacing: 0.12em;
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
    .srm-heading-gradient,
    .srm-heading-gradient .srm-heading-3d__stage {
        background-repeat: no-repeat;
        background-size: 160% 100%;
        background-position: 0% 50%;
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
        animation: srm-gradient-slide 14s linear infinite;
    }

    .srm-heading-gradient--earth,
    .srm-heading-gradient--earth .srm-heading-3d__stage {
        background-image: linear-gradient(118deg, #c75f42 0%, #df9540 34%, #4f865e 70%, #7b69ae 100%);
    }

    .srm-heading-gradient--light,
    .srm-heading-gradient--light .srm-heading-3d__stage {
        background-image: linear-gradient(120deg, #fff6cf 0%, #ffd9c5 32%, #ffffff 58%, #d8ebe1 100%);
    }
}

/* â”€â”€ Badge / Tag system â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 14px;
    border-radius: var(--srm-r-pill);
    font-family: var(--srm-font-body);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.srm-badge--mustard {
    background: var(--srm-mustard-light);
    color: var(--srm-mustard-dark);
    border: 1.5px solid rgba(200,168,75,0.3);
}

.srm-badge--green {
    background: var(--srm-green-light);
    color: var(--srm-green-dark);
    border: 1.5px solid rgba(106,158,114,0.3);
}

.srm-badge--lavender {
    background: var(--srm-lavender-light);
    color: var(--srm-lavender-dark);
    border: 1.5px solid rgba(139,123,181,0.3);
}

.srm-badge--coral {
    background: var(--srm-coral-light);
    color: var(--srm-coral-dark);
    border: 1.5px solid rgba(232,105,74,0.3);
}

.srm-badge--ink {
    background: var(--srm-ink);
    color: var(--srm-white);
    border: none;
}

.srm-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    background: var(--srm-surface);
    border: 1px solid var(--srm-border);
    border-radius: var(--srm-r-sm);
    font-size: 12px;
    font-weight: 500;
    color: var(--srm-ink-soft);
}

/* â”€â”€ Button Styles â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-btn {
    --srm-btn-magnetic-x: 0px;
    --srm-btn-magnetic-y: 0px;
    --srm-btn-translate-y: 0px;
    --srm-btn-scale: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 32px;
    border-radius: var(--srm-r-pill);
    font-family: var(--srm-font-body);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    border: none;
    outline: none;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transform: translate3d(var(--srm-btn-magnetic-x), calc(var(--srm-btn-magnetic-y) + var(--srm-btn-translate-y)), 0) scale(var(--srm-btn-scale));
    transition: transform var(--srm-dur-fast) var(--srm-ease-spring),
                box-shadow var(--srm-dur-fast) var(--srm-ease-spring),
                background var(--srm-dur-fast) var(--srm-ease),
                border-color var(--srm-dur-fast) var(--srm-ease),
                color var(--srm-dur-fast) var(--srm-ease);
    white-space: nowrap;
    /* will-change removed */
}

.srm-btn::after {
    content: '';
    position: absolute;
    inset: auto 16px 8px;
    height: 18px;
    border-radius: 999px;
    background: rgba(255,255,255,0.28);
    filter: blur(18px);
    opacity: 0;
    transform: translate3d(calc(var(--srm-btn-magnetic-x) * 0.35), calc(var(--srm-btn-magnetic-y) * 0.2), 0);
    transition:
        opacity var(--srm-dur-mid) var(--srm-ease-soft),
        transform var(--srm-dur-mid) var(--srm-ease-soft);
    pointer-events: none;
    z-index: -1;
}

.srm-btn:hover {
    --srm-btn-translate-y: -3px;
    --srm-btn-scale: 1.01;
}

.srm-btn:hover::after {
    opacity: 0.68;
}

.srm-btn:active {
    --srm-btn-translate-y: 0px;
    --srm-btn-scale: 0.985;
}

.srm-btn[data-srm-magnetic].is-magnetic-active::after {
    opacity: 0.82;
}

.srm-btn--primary {
    background: var(--srm-coral);
    color: var(--srm-white);
    box-shadow: 0 4px 20px rgba(232,105,74,0.35);
}

.srm-btn--primary:hover {
    background: var(--srm-coral-dark);
    box-shadow: 0 8px 30px rgba(232,105,74,0.45);
}

.srm-btn--secondary {
    background: var(--srm-white);
    color: var(--srm-ink);
    border: 1.5px solid var(--srm-border);
    box-shadow: var(--srm-shadow-sm);
}

.srm-btn--secondary:hover {
    border-color: var(--srm-ink-soft);
    box-shadow: var(--srm-shadow-md);
}

.srm-btn--green {
    background: var(--srm-green);
    color: var(--srm-white);
    box-shadow: 0 4px 20px rgba(106,158,114,0.35);
}

.srm-btn--green:hover {
    background: var(--srm-green-dark);
    box-shadow: 0 8px 30px rgba(106,158,114,0.45);
}

.srm-btn--ghost {
    background: transparent;
    color: var(--srm-ink);
    border: 1.5px solid currentColor;
}

.srm-btn--ghost:hover {
    background: var(--srm-ink);
    color: var(--srm-white);
}

.srm-btn--lg {
    padding: 18px 44px;
    font-size: 16px;
}

.srm-btn--sm {
    padding: 10px 22px;
    font-size: 13px;
}

.srm-btn__arrow {
    display: inline-flex;
    width: 20px;
    height: 20px;
    align-items: center;
    justify-content: center;
    transition: transform var(--srm-dur-fast) var(--srm-ease-spring);
}

.srm-btn:hover .srm-btn__arrow {
    transform: translateX(4px);
}

/* â”€â”€ Icon Holder â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-icon-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 50%;
}

.srm-icon-wrap--sm {
    width: 40px;
    height: 40px;
}

.srm-icon-wrap--md {
    width: 56px;
    height: 56px;
}

.srm-icon-wrap--lg {
    width: 72px;
    height: 72px;
}

.srm-icon-wrap--mustard { background: var(--srm-mustard-light); color: var(--srm-mustard-dark); }
.srm-icon-wrap--green   { background: var(--srm-green-light);   color: var(--srm-green-dark);   }
.srm-icon-wrap--lavender{ background: var(--srm-lavender-light);color: var(--srm-lavender-dark);}
.srm-icon-wrap--coral   { background: var(--srm-coral-light);   color: var(--srm-coral-dark);   }
.srm-icon-wrap--ink     { background: var(--srm-ink);           color: var(--srm-white);        }

.srm-icon-wrap svg {
    width: 55%;
    height: 55%;
    stroke-width: 1.8;
}

.srm-svg-draw svg {
    overflow: visible;
}

.srm-svg-draw :is(path, line, polyline, polygon, circle, ellipse, rect) {
    stroke-dasharray: var(--srm-draw-length, 48);
    stroke-dashoffset: var(--srm-draw-length, 48);
    transition:
        stroke-dashoffset 0.96s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.3s ease;
    transition-delay: var(--srm-icon-delay, 0ms);
    vector-effect: non-scaling-stroke;
}

.srm-svg-draw.is-icon-drawn :is(path, line, polyline, polygon, circle, ellipse, rect) {
    stroke-dashoffset: 0;
}

/* â”€â”€ Card Styles â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-card {
    background: var(--srm-white);
    border-radius: var(--srm-r-lg);
    padding: var(--srm-sp-lg);
    box-shadow: var(--srm-shadow-sm);
    border: 1px solid var(--srm-border);
    position: relative;
    overflow: hidden;
    transition: transform var(--srm-dur-mid) var(--srm-ease),
                box-shadow var(--srm-dur-mid) var(--srm-ease);
}

.srm-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--srm-shadow-md);
}

.srm-card--mustard { background: var(--srm-bg-warm); border-color: rgba(200,168,75,0.2); }
.srm-card--green   { background: var(--srm-bg-sage); border-color: rgba(106,158,114,0.2); }
.srm-card--lavender{ background: var(--srm-bg-dusk); border-color: rgba(139,123,181,0.2); }
.srm-card--coral   { background: var(--srm-bg-petal);border-color: rgba(232,105,74,0.2);  }
.srm-card--dark    { background: var(--srm-ink); border: none; }
.srm-card--dark .srm-h3,
.srm-card--dark .srm-h4,
.srm-card--dark .srm-body { color: rgba(255,255,255,0.85); }

/* â”€â”€ Dividers & Decorative Accents â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-divider {
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, transparent, var(--srm-border) 20%, var(--srm-border) 80%, transparent);
    margin: var(--srm-sp-xl) 0;
}

.srm-accent-line {
    display: block;
    width: 48px;
    height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green), var(--srm-lavender), var(--srm-coral));
    background-size: 200% 100%;
    margin-bottom: var(--srm-sp-sm);
    animation: srm-gradient-slide 10s linear infinite;
}

.srm-accent-line--mustard { background-image: linear-gradient(90deg, var(--srm-mustard), var(--srm-coral), var(--srm-mustard-light), var(--srm-mustard)); }
.srm-accent-line--green   { background-image: linear-gradient(90deg, var(--srm-green), var(--srm-mustard), var(--srm-green-light), var(--srm-green));   }
.srm-accent-line--lavender{ background-image: linear-gradient(90deg, var(--srm-lavender), var(--srm-coral), var(--srm-lavender-light), var(--srm-lavender));}

@keyframes srm-gradient-slide {
    0% { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}

.srm-section-watermark {
    --srm-watermark-size: clamp(120px, 16vw, 220px);
    position: absolute;
    z-index: 0;
    pointer-events: none;
    font-family: var(--srm-font-script);
    font-size: var(--srm-watermark-size);
    line-height: 0.82;
    letter-spacing: -0.03em;
    white-space: nowrap;
    user-select: none;
    filter: blur(0.4px);
}

.srm-section-watermark--hero {
    --srm-watermark-size: clamp(148px, 19vw, 260px);
    top: clamp(32px, 7vw, 88px);
    left: clamp(14px, 3vw, 34px);
    color: rgba(10,51,34,0.05);
    transform: rotate(-8deg);
}

.srm-section-watermark--support {
    --srm-watermark-size: clamp(118px, 15vw, 190px);
    top: clamp(20px, 4vw, 42px);
    right: clamp(16px, 4vw, 48px);
    color: rgba(106,158,114,0.06);
    transform: rotate(-7deg);
}

.srm-accent-band {
    position: relative;
    overflow: hidden;
    min-height: clamp(124px, 14vw, 156px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background:
        linear-gradient(110deg, rgba(255,255,255,0.12), rgba(255,255,255,0) 34%),
        linear-gradient(90deg, #d45f45 0%, #d49342 26%, #9e9f4c 48%, #4e8962 72%, #7d6cb0 100%);
}

.srm-accent-band::before,
.srm-accent-band::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.srm-accent-band::before {
    background:
        linear-gradient(90deg, rgba(255,255,255,0.16), rgba(255,255,255,0) 18%, rgba(255,255,255,0.08) 52%, rgba(255,255,255,0) 80%),
        repeating-linear-gradient(90deg, rgba(255,255,255,0.12) 0 1px, transparent 1px 32px);
    mix-blend-mode: soft-light;
}

.srm-accent-band::after {
    inset: auto 0 0;
    height: 2px;
    background: rgba(255,255,255,0.24);
}

.srm-accent-band__text {
    position: relative;
    z-index: 1;
    padding: 0 24px;
    text-align: center;
    font-family: var(--srm-font-title);
    font-size: clamp(1.4rem, 3vw, 2.35rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.94);
    text-wrap: balance;
}

/* Decorative blob shapes (absolutely positioned inside sections) */
.srm-blob {
    position: absolute;
    border-radius: 62% 38% 58% 42% / 46% 63% 37% 54%;
    filter: blur(80px);
    pointer-events: none;
    z-index: 0;
    background: transparent;
}

.srm-blob::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: var(--srm-blob-fill, rgba(255,255,255,0.12));
}

.srm-blob--mustard { --srm-blob-fill: radial-gradient(circle at 30% 30%, rgba(240,228,176,0.3), rgba(200,168,75,0.18) 48%, rgba(232,105,74,0.14)); }
.srm-blob--green   { --srm-blob-fill: radial-gradient(circle at 30% 30%, rgba(205,229,207,0.28), rgba(106,158,114,0.18) 48%, rgba(139,123,181,0.12)); }
.srm-blob--lavender{ --srm-blob-fill: radial-gradient(circle at 30% 30%, rgba(217,212,239,0.28), rgba(139,123,181,0.18) 48%, rgba(232,105,74,0.12)); }
.srm-blob--coral   { --srm-blob-fill: radial-gradient(circle at 30% 30%, rgba(250,213,203,0.28), rgba(232,105,74,0.16) 48%, rgba(200,168,75,0.12));  }

/* srm-blob-chroma and srm-blob-morph keyframes removed â€” continuous GPU paint */

/* Decorative dot grid */
.srm-dots {
    position: absolute;
    pointer-events: none;
    z-index: 0;
    background-image: radial-gradient(circle, var(--srm-border) 1.5px, transparent 1.5px);
    background-size: 22px 22px;
    opacity: 0.7;
}

/* Corner accent bracket */
.srm-bracket {
    position: absolute;
    width: 48px;
    height: 48px;
    pointer-events: none;
}

.srm-bracket--tl {
    top: 20px;
    left: 20px;
    border-top: 2px solid var(--srm-mustard);
    border-left: 2px solid var(--srm-mustard);
    border-radius: 4px 0 0 0;
}

.srm-bracket--br {
    bottom: 20px;
    right: 20px;
    border-bottom: 2px solid var(--srm-coral);
    border-right: 2px solid var(--srm-coral);
    border-radius: 0 0 4px 0;
}

/* â”€â”€ Image containers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-img-wrap {
    border-radius: var(--srm-r-lg);
    overflow: hidden;
    position: relative;
}

.srm-blur-host {
    background-image: var(--srm-blur-placeholder, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.srm-img-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

img[data-srm-blur-up] {
    opacity: 0.001;
    filter: blur(18px) saturate(1.12);
}

img[data-srm-blur-up].is-media-ready {
    animation: srm-media-blur-up 0.82s var(--srm-ease-soft) forwards;
}

@keyframes srm-media-blur-up {
    from {
        opacity: 0.001;
        filter: blur(18px) saturate(1.12);
    }
    to {
        opacity: 1;
        filter: blur(0) saturate(1);
    }
}

.srm-img-wrap--tall  { aspect-ratio: 3 / 4; }
.srm-img-wrap--wide  { aspect-ratio: 16 / 9; }
.srm-img-wrap--sq    { aspect-ratio: 1; }
.srm-img-wrap--free  { height: 100%; }

/* â”€â”€ FAQ item â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-faq-item {
    border-bottom: 1px solid var(--srm-border);
    overflow: hidden;
}

.srm-faq-item:first-child {
    border-top: 1px solid var(--srm-border);
}

.srm-faq__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 0;
    cursor: pointer;
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    font-family: var(--srm-font-body);
    font-size: 16px;
    font-weight: 600;
    color: var(--srm-ink);
    transition: color var(--srm-dur-fast);
}

.srm-faq__trigger:hover { color: var(--srm-coral); }

.srm-faq__icon {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--srm-surface);
    border: 1px solid var(--srm-border);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background var(--srm-dur-fast), transform var(--srm-dur-fast) var(--srm-ease);
}

.srm-faq-item.is-open .srm-faq__icon {
    background: var(--srm-coral);
    border-color: var(--srm-coral);
    transform: rotate(45deg);
}

.srm-faq__icon svg { width: 14px; height: 14px; stroke: var(--srm-muted); stroke-width: 2; }
.srm-faq-item.is-open .srm-faq__icon svg { stroke: white; }

.srm-faq__body {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows var(--srm-dur-mid) var(--srm-ease);
}

.srm-faq-item.is-open .srm-faq__body {
    grid-template-rows: 1fr;
}

.srm-faq__body-inner {
    overflow: hidden;
    padding-bottom: 20px;
    font-size: 15px;
    line-height: 1.75;
    color: var(--srm-muted);
}

/* â”€â”€ Scroll Reveal Base â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
[data-srm-reveal] {
    --srm-reveal-delay: 0ms;
    opacity: 0;
    transform: translate3d(0, 22px, 0) scale(0.99);
    transition:
        opacity 0.45s var(--srm-ease-soft),
        transform 0.45s var(--srm-ease-soft);
    transition-delay: var(--srm-reveal-delay);
}

[data-srm-reveal].is-will-animate {
    /* will-change removed */
}

[data-srm-reveal="left"] {
    transform: translate3d(-40px, 12px, 0) scale(0.985);
}

[data-srm-reveal="right"] {
    transform: translate3d(40px, 12px, 0) scale(0.985);
}

[data-srm-reveal="scale"] {
    transform: translate3d(0, 24px, 0) scale(0.955);
}

[data-srm-reveal="lift"] {
    transform: translate3d(0, 42px, 0);
}

[data-srm-reveal="soft"] {
    transform: translate3d(0, 14px, 0) scale(0.995);
}

[data-srm-reveal].is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

[data-srm-reveal].srm-section-title,
[data-srm-reveal].srm-section-title--center,
.srm-eyebrow[data-srm-reveal],
.srm-what__label-pill[data-srm-reveal],
.srm-h2[data-srm-reveal],
.srm-script[data-srm-reveal],
.srm-benefits__script[data-srm-reveal],
.srm-cta__script[data-srm-reveal],
.srm-cta__title[data-srm-reveal] {
    opacity: 1;
    filter: none;
    transform: none;
}

.srm-heading-3d {
    --srm-heading-delay: 0ms;
    --srm-heading-parallax-y: 0px;
    position: relative;
    display: block;
    overflow: clip;
    perspective: 1800px;
    transform: translate3d(0, var(--srm-heading-parallax-y), 0);
    transition: transform 0.32s linear;
}

.srm-heading-3d.is-will-animate {
    /* will-change removed */
}

.srm-heading-3d.srm-h2,
.srm-heading-3d.srm-cta__title {
    --srm-title-weight: 360;
    --srm-title-track: -0.055em;
}

.srm-heading-3d.srm-h2 .srm-heading-3d__stage,
.srm-heading-3d.srm-cta__title .srm-heading-3d__stage {
    font-weight: var(--srm-title-weight);
    letter-spacing: var(--srm-title-track);
    font-variation-settings: normal;
}

.srm-heading-3d.is-heading-visible.srm-h2 {
    --srm-title-weight: 620;
    --srm-title-track: -0.03em;
}

.srm-heading-3d.is-heading-visible.srm-cta__title {
    --srm-title-weight: 650;
    --srm-title-track: -0.03em;
}

.srm-heading-3d__stage {
    display: block;
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform-origin: 50% 100%;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    transform: perspective(1800px) rotateX(0deg) rotateY(0deg) translate3d(0, 0, 0) scale3d(1, 1, 1);
    transition:
        clip-path 1.08s cubic-bezier(0.19, 1, 0.22, 1),
        transform 1.16s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.56s ease-out,
        font-weight 1.08s cubic-bezier(0.16, 1, 0.3, 1),
        letter-spacing 1.08s cubic-bezier(0.16, 1, 0.3, 1),
        color 0.52s ease-out;
    transition-delay: var(--srm-heading-delay);
}

.srm-heading-3d.is-will-animate .srm-heading-3d__stage {
    will-change: transform, opacity, clip-path;
}

.srm-heading-3d.is-heading-armed .srm-heading-3d__stage {
    opacity: 0.001;
    clip-path: inset(0 0 100% 0);
    transform:
        perspective(1800px)
        rotateX(78deg)
        rotateY(-3deg)
        translate3d(0, 1.08em, -120px)
        scale3d(0.985, 1.16, 1);
}

.srm-heading-3d.is-heading-visible .srm-heading-3d__stage {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: perspective(1800px) rotateX(0deg) rotateY(0deg) translate3d(0, 0, 0) scale3d(1, 1, 1);
}

.srm-heading-3d::after {
    content: '';
    position: absolute;
    inset: -0.18em -0.12em 0;
    background: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(255,255,255,0.18) 52%, rgba(255,255,255,0));
    transform-origin: 50% 100%;
    transform: translate3d(0, -118%, 0) scaleY(1.22);
    opacity: 0;
    pointer-events: none;
    transition:
        transform 0.98s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.66s ease-out;
    transition-delay: calc(var(--srm-heading-delay) + 30ms);
}

.srm-heading-3d.is-heading-armed::after {
    transform: translate3d(0, 0, 0) scaleY(1);
    opacity: 0.82;
}

.srm-heading-3d.is-heading-visible::after {
    transform: translate3d(0, -118%, 0) scaleY(1.22);
    opacity: 0;
}

.srm-benefits__script.srm-heading-3d__stage,
.srm-cta__script.srm-heading-3d__stage,
.srm-script.srm-heading-3d__stage {
    transform: perspective(1800px) rotateX(0deg) rotateY(0deg) translate3d(0, 0, 0) scale3d(1, 1, 1);
}

.srm-heading-3d.is-heading-armed .srm-benefits__script.srm-heading-3d__stage,
.srm-heading-3d.is-heading-armed .srm-cta__script.srm-heading-3d__stage,
.srm-heading-3d.is-heading-armed .srm-script.srm-heading-3d__stage {
    transform:
        perspective(1800px)
        rotateX(62deg)
        rotateY(-2deg)
        translate3d(0, 0.84em, -90px)
        scale3d(0.99, 1.08, 1);
}

.srm-heading-3d.is-heading-visible .srm-benefits__script.srm-heading-3d__stage,
.srm-heading-3d.is-heading-visible .srm-cta__script.srm-heading-3d__stage,
.srm-heading-3d.is-heading-visible .srm-script.srm-heading-3d__stage {
    transform:
        perspective(1800px)
        rotateX(0deg)
        rotateY(0deg)
        translate3d(0, 0, 0)
        scale3d(1, 1, 1);
}

/* Stagger delays */
[data-srm-delay="1"] { --srm-reveal-delay: 0.09s; }
[data-srm-delay="2"] { --srm-reveal-delay: 0.18s; }
[data-srm-delay="3"] { --srm-reveal-delay: 0.27s; }
[data-srm-delay="4"] { --srm-reveal-delay: 0.36s; }
[data-srm-delay="5"] { --srm-reveal-delay: 0.45s; }
[data-srm-delay="6"] { --srm-reveal-delay: 0.54s; }
[data-srm-delay="7"] { --srm-reveal-delay: 0.63s; }
[data-srm-delay="8"] { --srm-reveal-delay: 0.72s; }
[data-srm-delay="9"] { --srm-reveal-delay: 0.81s; }
[data-srm-delay="10"] { --srm-reveal-delay: 0.9s; }
[data-srm-count] { display: inline-block; }

/* ================================================================
   SECTION-SPECIFIC STYLES
   ================================================================ */

/* â”€â”€ [1] HERO â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Premium redesign: layered visual composition, art-directed hero.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-hero {
    min-height: 0;
    background:
        radial-gradient(circle at top left, rgba(255,255,255,0.72), transparent 28%),
        linear-gradient(180deg, #fffbf4 0%, var(--srm-bg-warm) 46%, #fcf7ee 100%);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Structural mesh behind everything */
.srm-hero__parallax-layer {
    --srm-parallax-y: 0px;
    --srm-parallax-scale: 1;
    transform: translate3d(0, var(--srm-parallax-y), 0) scale(var(--srm-parallax-scale));
    /* will-change removed */
}

.srm-hero__bg-arc {
    position: absolute;
    top: -14%;
    right: -10%;
    width: min(76vw, 960px);
    height: min(72vw, 860px);
    max-width: 960px;
    max-height: 860px;
    border-radius: 42% 58% 48% 52% / 44% 38% 62% 56%;
    background:
        radial-gradient(circle at 18% 20%, rgba(232,105,74,0.28), transparent 32%),
        radial-gradient(circle at 78% 20%, rgba(200,168,75,0.32), transparent 28%),
        radial-gradient(circle at 72% 76%, rgba(139,123,181,0.24), transparent 30%),
        radial-gradient(circle at 24% 78%, rgba(106,158,114,0.24), transparent 32%),
        linear-gradient(135deg, rgba(255,255,255,0.92), rgba(255,255,255,0.16));
    filter: saturate(124%) hue-rotate(var(--srm-hero-mesh-hue));
    opacity: 0.92;
    pointer-events: none;
    z-index: 0;
    animation:
        srm-hero-mesh-hue 18s linear infinite alternate,
        srm-hero-mesh-shape 20s var(--srm-ease-soft) infinite alternate;
}

.srm-hero__bg-arc::before,
.srm-hero__bg-arc::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
}

.srm-hero__bg-arc::before {
    inset: -7%;
    background:
        radial-gradient(circle at 28% 36%, rgba(255,255,255,0.68), transparent 24%),
        radial-gradient(circle at 70% 34%, rgba(255,255,255,0.34), transparent 30%),
        radial-gradient(circle at 56% 72%, rgba(255,255,255,0.22), transparent 36%);
    mix-blend-mode: screen;
    opacity: 0.82;
    filter: blur(20px);
    animation: srm-hero-mesh-drift 16s var(--srm-ease-soft) infinite alternate;
}

.srm-hero__bg-arc::after {
    background:
        linear-gradient(145deg, rgba(255,255,255,0.38), transparent 48%),
        radial-gradient(circle at 32% 52%, rgba(255,255,255,0.18), transparent 42%);
    mix-blend-mode: soft-light;
    opacity: 0.58;
}

@keyframes srm-hero-mesh-hue {
    0% { --srm-hero-mesh-hue: -10deg; }
    50% { --srm-hero-mesh-hue: 14deg; }
    100% { --srm-hero-mesh-hue: 30deg; }
}

@keyframes srm-hero-mesh-shape {
    0% {
        border-radius: 42% 58% 48% 52% / 44% 38% 62% 56%;
        background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
    50% {
        border-radius: 56% 44% 58% 42% / 38% 56% 44% 62%;
        background-position: 2% -2%, -3% 4%, 4% -2%, -4% 2%, 0% 0%;
    }
    100% {
        border-radius: 48% 52% 40% 60% / 54% 42% 58% 46%;
        background-position: -2% 4%, 3% -2%, -3% 4%, 2% -3%, 0% 0%;
    }
}

@keyframes srm-hero-mesh-drift {
    0% {
        transform: translate3d(-1.5%, -1%, 0) scale(1);
        opacity: 0.78;
    }
    100% {
        transform: translate3d(2.5%, 2%, 0) scale(1.06);
        opacity: 0.96;
    }
}

/* Decorative ring outline */
.srm-hero__bg-ring {
    position: absolute;
    top: 8%;
    right: 3%;
    width: 540px;
    height: 540px;
    border-radius: 50%;
    border: 1px solid rgba(200,168,75,0.12);
    box-shadow:
        inset 0 0 0 22px rgba(255,255,255,0.16),
        inset 0 0 0 46px rgba(255,255,255,0.08);
    background:
        radial-gradient(circle at center, rgba(255,255,255,0.28), transparent 58%),
        conic-gradient(from 150deg, rgba(200,168,75,0.18), rgba(139,123,181,0.08), rgba(106,158,114,0.18), rgba(232,105,74,0.08), rgba(200,168,75,0.18));
    opacity: 0.85;
    pointer-events: none;
    z-index: 0;
}

.srm-hero__bg-ring::before {
    content: '';
    position: absolute;
    inset: 11%;
    border-radius: inherit;
    border: 1px dashed rgba(255,255,255,0.3);
    opacity: 0.65;
}

.srm-hero__bg-dots {
    position: absolute;
    top: 16%;
    left: 48%;
    width: 210px;
    height: 210px;
    border-radius: 28px;
    opacity: 0.5;
    pointer-events: none;
    z-index: 1;
    background-image:
        radial-gradient(circle, rgba(106,158,114,0.34) 1.5px, transparent 1.5px),
        linear-gradient(135deg, rgba(255,255,255,0.28), transparent 68%);
    background-size: 18px 18px, 100% 100%;
    mask-image: radial-gradient(circle at center, black 34%, transparent 82%);
}

/* Floating pill tags â€” positioned absolutely */
.srm-hero__float-tag {
    position: absolute;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    background: rgba(255,255,255,0.78);
    border: 1px solid rgba(255,255,255,0.68);
    border-radius: var(--srm-r-pill);
    backdrop-filter: blur(6px);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--srm-muted);
    box-shadow: 0 18px 34px rgba(30,30,46,0.08);
    pointer-events: none;
    white-space: nowrap;
}

.srm-hero__float-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

.srm-hero__float-tag--a { top: 12%; left: 54%; }
.srm-hero__float-tag--b { top: 28%; right:  4%; }
.srm-hero__float-tag--c { bottom: 28%; right: 3%; }

/* Canvas = main grid */
.srm-hero__canvas {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 52fr 48fr;
    gap: clamp(24px, 3.4vw, 44px);
    align-items: start;
    width: 100%;
    max-width: var(--srm-container);
    margin: 0 auto;
    padding: clamp(18px, 2.8vw, 34px) var(--srm-gutter) clamp(30px, 4vw, 48px);
    flex: 1;
}

/* Left content column */
.srm-hero__content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Category pill */
.srm-hero__category {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    position: relative;
    gap: 10px;
    padding: 10px 18px 10px 10px;
    background:
        linear-gradient(120deg, rgba(255,255,255,0.92), rgba(255,255,255,0.78)),
        linear-gradient(95deg, rgba(236,48,161,0.16) 0%, rgba(124,65,255,0.16) 48%, rgba(255,209,38,0.14) 100%);
    border: 1px solid rgba(124,65,255,0.24);
    border-radius: var(--srm-r-pill);
    box-shadow:
        0 10px 22px rgba(124,65,255,0.10),
        inset 0 1px 0 rgba(255,255,255,0.76);
    font-size: clamp(12px, 0.86vw, 14px);
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #525775;
    width: fit-content;
    white-space: nowrap;
    overflow: hidden;
}

.srm-hero__category::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(125deg, rgba(255,255,255,0.44), rgba(255,255,255,0) 40%);
    pointer-events: none;
}

.srm-hero__category > span:not(.srm-hero__category-dot):not(.srm-hero__category-sep) {
    position: relative;
    z-index: 1;
}

.srm-hero__category > span:last-child {
    color: #6253d2;
    font-weight: 800;
}

.srm-hero__category-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: linear-gradient(140deg, #ec30a1 0%, #7c41ff 52%, #ffd126 100%);
    animation: srm-pulse 2.5s ease-in-out infinite;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    box-shadow:
        0 0 0 4px rgba(236,48,161,0.12),
        0 8px 18px rgba(124,65,255,0.22);
}

.srm-hero__category-sep {
    color: #bbb9d4;
    font-size: 16px;
    line-height: 1;
    position: relative;
    z-index: 1;
}

@keyframes srm-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: 0.6; transform: scale(1.35); }
}

/* Headline stack */
.srm-hero__headline {
    display: flex;
    flex-direction: column;
    gap: 3px;
    max-width: 21ch;
}

.srm-hero__headline-pre {
    font-family: var(--srm-font-script);
    font-size: clamp(22px, 3vw, 38px);
    color: var(--srm-coral);
    line-height: 1.15;
    display: block;
}

.srm-hero__headline-em {
    display: none; /* hidden â€” used for spacing rhythmic break only */
}

.srm-hero__headline-main {
    font-family: var(--srm-font-title);
    font-size: clamp(26px, 3.4vw, 44px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.025em;
    color: var(--srm-ink);
    display: block;
    text-wrap: balance;
}

.srm-hero__headline-lockline {
    display: inline-block;
    white-space: nowrap;
}

.srm-hero__headline-main .srm-hero__headline-line {
    flex-wrap: nowrap;
    overflow: visible;
}

.srm-hero__headline-pre.is-hero-split,
.srm-hero__headline-main.is-hero-split {
    display: grid;
    gap: 0.02em;
}

.srm-hero__headline-line {
    display: flex;
    flex-wrap: wrap;
    gap: 0.18em;
    overflow: clip;
}

.srm-hero__headline-pre .srm-hero__headline-line {
    gap: 0.22em;
}

.srm-hero__headline-main .srm-hero__headline-line + .srm-hero__headline-line {
    margin-top: -0.04em;
}

.srm-hero__headline-word {
    display: inline-flex;
    overflow: hidden;
    padding: 0.03em 0 0.12em;
    margin-bottom: -0.12em;
}

.srm-hero__headline-pre .srm-hero__headline-word {
    padding-bottom: 0.05em;
    margin-bottom: -0.05em;
}

.srm-hero__headline-word-inner {
    display: block;
    transform: translate3d(0, 118%, 0) rotate(4deg);
    clip-path: inset(0 0 100% 0 round 12px);
    opacity: 0.001;
    transition:
        clip-path 0.88s cubic-bezier(0.19, 1, 0.22, 1),
        transform 0.94s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.45s ease-out;
    transition-delay: var(--srm-hero-word-delay, 0ms);
    /* will-change removed */
}

/* Description */
.srm-hero__desc {
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.65;
    color: var(--srm-muted);
    max-width: 34ch;
}

/* Trust micro-row */
.srm-hero__trust-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
}

.srm-hero__trust-row::-webkit-scrollbar {
    display: none;
}

.srm-hero__trust-item {
    appearance: none;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px 8px 8px;
    border-radius: var(--srm-r-pill);
    border: 1px solid rgba(124,65,255,0.26);
    background: linear-gradient(140deg, #fff7fb, #f4f1ff);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    color: #2f3553;
    text-align: left;
    white-space: nowrap;
    position: relative;
    cursor: help;
    overflow: hidden;
    box-shadow: 0 8px 18px rgba(31,34,59,0.10);
    flex: 0 0 auto;
    transition:
        transform var(--srm-dur-fast) var(--srm-ease),
        border-color var(--srm-dur-fast) var(--srm-ease),
        background var(--srm-dur-fast) var(--srm-ease),
        box-shadow var(--srm-dur-fast) var(--srm-ease);
}

.srm-hero__trust-item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(125deg, rgba(255,255,255,0.35), rgba(255,255,255,0) 44%);
    pointer-events: none;
}

.srm-hero__trust-item:nth-of-type(1) {
    border-color: rgba(236,48,161,0.42);
    background: linear-gradient(145deg, #fff0f8, #ffe8f5 55%, #ffeede);
    box-shadow: 0 9px 22px rgba(236,48,161,0.18);
}

.srm-hero__trust-item:nth-of-type(2) {
    border-color: rgba(124,65,255,0.44);
    background: linear-gradient(145deg, #f3eeff, #ece8ff 58%, #eaf3ff);
    box-shadow: 0 9px 22px rgba(124,65,255,0.18);
}

.srm-hero__trust-item:nth-of-type(3) {
    border-color: rgba(37,174,96,0.44);
    background: linear-gradient(145deg, #ebfff3, #e4faef 56%, #fff6de);
    box-shadow: 0 9px 22px rgba(37,174,96,0.18);
}

.srm-hero__trust-item:hover,
.srm-hero__trust-item:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(31,34,59,0.16);
}

.srm-hero__trust-label {
    display: inline-block;
    position: relative;
    z-index: 1;
}

.srm-hero__trust-tooltip {
    position: absolute;
    left: 50%;
    top: calc(100% + 12px);
    min-width: 230px;
    max-width: 280px;
    padding: 11px 13px;
    border-radius: 16px;
    background: rgba(30,30,46,0.94);
    color: rgba(255,255,255,0.94);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: normal;
    text-transform: none;
    white-space: normal;
    box-shadow: 0 22px 42px rgba(30,30,46,0.2);
    backdrop-filter: blur(6px);
    opacity: 0;
    visibility: hidden;
    transform: translate3d(-50%, 10px, 0) scale(0.98);
    transform-origin: 50% 0;
    transition:
        opacity 0.24s ease,
        transform 0.32s var(--srm-ease-soft),
        visibility 0s linear 0.24s;
    pointer-events: none;
    z-index: 5;
}

.srm-hero__trust-tooltip::before {
    content: '';
    position: absolute;
    top: -6px;
    left: 50%;
    width: 12px;
    height: 12px;
    background: inherit;
    transform: translateX(-50%) rotate(45deg);
}

.srm-hero__trust-item:hover .srm-hero__trust-tooltip,
.srm-hero__trust-item:focus-visible .srm-hero__trust-tooltip,
.srm-hero__trust-item:focus-within .srm-hero__trust-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translate3d(-50%, 0, 0) scale(1);
    transition-delay: 0s;
}

.srm-hero__trust-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(255,255,255,0.72);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.5);
}

.srm-hero__trust-item:nth-of-type(1) .srm-hero__trust-icon {
    background: linear-gradient(145deg, rgba(236,48,161,0.26), rgba(255,209,38,0.22));
}

.srm-hero__trust-item:nth-of-type(2) .srm-hero__trust-icon {
    background: linear-gradient(145deg, rgba(124,65,255,0.26), rgba(37,174,96,0.20));
}

.srm-hero__trust-item:nth-of-type(3) .srm-hero__trust-icon {
    background: linear-gradient(145deg, rgba(37,174,96,0.28), rgba(255,209,38,0.20));
}

.srm-hero__trust-icon svg {
    width: 11px;
    height: 11px;
    stroke: #2c3d5b;
    stroke-width: 2;
}

.srm-hero__trust-divider {
    display: block;
    width: 1px;
    height: 16px;
    background: linear-gradient(to bottom, rgba(124,65,255,0), rgba(124,65,255,0.34), rgba(124,65,255,0));
    box-shadow: none;
}

/* CTA group */
.srm-hero__ctas {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.srm-hero__cta-primary {
    box-shadow: 0 6px 28px rgba(232,105,74,0.38);
}

.srm-hero__link-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
    color: var(--srm-ink);
    text-decoration: none;
    transition: gap var(--srm-dur-fast) var(--srm-ease);
}

.srm-hero__link-cta:hover { gap: 14px; }

.srm-hero__link-cta-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--srm-surface);
    border: 1px solid var(--srm-border);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background var(--srm-dur-fast), border-color var(--srm-dur-fast);
    flex-shrink: 0;
}

.srm-hero__link-cta:hover .srm-hero__link-cta-circle {
    background: var(--srm-ink);
    border-color: var(--srm-ink);
}

.srm-hero__link-cta-circle svg {
    stroke: var(--srm-muted);
    transition: stroke var(--srm-dur-fast);
}

.srm-hero__link-cta:hover .srm-hero__link-cta-circle svg { stroke: var(--srm-white); }

/* Participant count strip */
.srm-hero__participants {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    background: var(--srm-white);
    border: 1px solid var(--srm-border);
    border-radius: var(--srm-r-md);
    box-shadow: var(--srm-shadow-sm);
    width: fit-content;
}

.srm-hero__p-avatars {
    display: flex;
}

.srm-hero__p-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid var(--srm-white);
    margin-left: -9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 800;
    color: var(--srm-white);
    flex-shrink: 0;
}

.srm-hero__p-avatar:first-child { margin-left: 0; }

.srm-hero__p-text {
    font-size: 13px;
    line-height: 1.4;
    color: var(--srm-muted);
}

.srm-hero__p-text strong {
    font-weight: 700;
    color: var(--srm-ink);
}

/* Right: visual composition */
.srm-hero__visual {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 0;
    isolation: isolate;
}

.srm-hero__visual-particles {
    position: absolute;
    inset: 5% 4% 8% 2%;
    pointer-events: none;
    z-index: 1;
    opacity: 0.72;
    filter: drop-shadow(0 10px 24px rgba(255,255,255,0.22));
}

.srm-hero__visual-particles::before,
.srm-hero__visual-particles::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    pointer-events: none;
}

.srm-hero__visual-particles::before {
    background: rgba(255,255,255,0.88);
    box-shadow:
        34px 24px 0 0 rgba(255,255,255,0.74),
        86px 52px 0 1px rgba(255,214,178,0.76),
        138px 16px 0 -1px rgba(255,255,255,0.64),
        192px 86px 0 0 rgba(250,213,203,0.74),
        244px 42px 0 1px rgba(240,228,176,0.74),
        286px 112px 0 -1px rgba(255,255,255,0.6),
        332px 56px 0 0 rgba(205,229,207,0.72),
        388px 132px 0 1px rgba(255,255,255,0.68),
        454px 72px 0 -1px rgba(255,214,178,0.76),
        512px 144px 0 0 rgba(255,255,255,0.52),
        554px 36px 0 -1px rgba(217,212,239,0.7),
        612px 118px 0 1px rgba(255,255,255,0.58);
    animation: srm-hero-particle-drift 17s ease-in-out infinite alternate;
}

.srm-hero__visual-particles::after {
    top: auto;
    bottom: 4%;
    left: 9%;
    width: 4px;
    height: 4px;
    background: rgba(255,255,255,0.8);
    box-shadow:
        24px -38px 0 0 rgba(250,213,203,0.78),
        72px -12px 0 -1px rgba(255,255,255,0.7),
        124px -84px 0 1px rgba(205,229,207,0.68),
        174px -28px 0 0 rgba(255,214,178,0.76),
        228px -102px 0 -1px rgba(255,255,255,0.62),
        286px -48px 0 1px rgba(217,212,239,0.72),
        344px -118px 0 0 rgba(255,255,255,0.58),
        416px -64px 0 -1px rgba(250,213,203,0.72),
        474px -138px 0 0 rgba(255,214,178,0.7);
    animation: srm-hero-particle-drift-alt 13.5s ease-in-out infinite alternate;
}

@keyframes srm-hero-particle-drift {
    0% {
        transform: translate3d(0, 0, 0);
        opacity: 0.54;
    }
    50% {
        opacity: 0.82;
    }
    100% {
        transform: translate3d(12px, -14px, 0);
        opacity: 0.66;
    }
}

@keyframes srm-hero-particle-drift-alt {
    0% {
        transform: translate3d(0, 0, 0);
        opacity: 0.42;
    }
    100% {
        transform: translate3d(-10px, 12px, 0);
        opacity: 0.76;
    }
}

/* Primary tall image */
.srm-hero__img-primary {
    position: relative;
    z-index: 2;
}

.srm-hero__img-primary-inner {
    border-radius: 28px;
    overflow: hidden;
    aspect-ratio: 10 / 10.25;
    position: relative;
    box-shadow: var(--srm-shadow-lg);
    background: linear-gradient(145deg, rgba(255,255,255,0.5), rgba(248,241,232,0.9));
}

/* Floating iL badge: half inside image, half visible outside on the right */
.srm-hero__img-primary::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 60%;
    aspect-ratio: 1781 / 837;
    background: url("../assets/iL.png") center / contain no-repeat;
    transform: translate3d(50%, -50%, 0);
    transform-origin: center;
    animation: srm-hero-il-float 9.5s ease-in-out infinite;
    z-index: 3;
    pointer-events: none;
    will-change: transform;
}

.srm-hero__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.srm-hero__media--video {
    opacity: 0;
    transition: opacity 0.8s var(--srm-ease-soft);
}

.srm-hero__media--fallback {
    transition:
        opacity 0.8s var(--srm-ease-soft),
        transform 1.1s var(--srm-ease-soft);
    animation: srm-hero-fallback-drift 14s ease-in-out infinite alternate;
}

.srm-hero__media-shell.is-video-ready .srm-hero__media--video {
    opacity: 1;
}

.srm-hero__media-shell.is-video-ready .srm-hero__media--fallback {
    opacity: 0;
    animation: none;
    transform: scale(1.04);
}

@keyframes srm-hero-fallback-drift {
    0% { transform: scale(1.03) translate3d(0, 0, 0); }
    100% { transform: scale(1.08) translate3d(0, -1.5%, 0); }
}

@keyframes srm-hero-il-float {
    0%, 100% { transform: translate3d(50%, -72%, 0); }
    50% { transform: translate3d(50%, -28%, 0); }
}

.srm-hero__video-badge {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: var(--srm-r-pill);
    background: rgba(30,30,46,0.62);
    color: rgba(255,255,255,0.96);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(5px);
}

.srm-hero__video-badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff9a7d, #ffd36c);
    box-shadow: 0 0 0 0 rgba(255,154,125,0.42);
    animation: srm-video-badge-pulse 2.8s ease-in-out infinite;
}

@keyframes srm-video-badge-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(255,154,125,0.38); opacity: 0.92; }
    50% { box-shadow: 0 0 0 6px rgba(255,154,125,0); opacity: 1; }
}

.srm-hero__img-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, rgba(30,30,46,0.42) 0%, rgba(30,30,46,0.08) 38%, transparent 64%),
        linear-gradient(145deg, rgba(255,255,255,0.18), transparent 46%);
    pointer-events: none;
}

/* Floating rating card on primary image */
.srm-hero__rating-card {
    position: absolute;
    bottom: 24px;
    left: -24px;
    background: var(--srm-white);
    border-radius: var(--srm-r-md);
    padding: 14px 18px;
    box-shadow: var(--srm-shadow-md);
    display: flex;
    flex-direction: column;
    gap: 4px;
    z-index: 3;
    min-width: 160px;
}

.srm-hero__rating-stars {
    display: flex;
    gap: 2px;
}

.srm-hero__rating-stars svg {
    width: 14px;
    height: 14px;
}

.srm-hero__rating-num {
    font-family: var(--srm-font-title);
    font-size: 26px;
    font-weight: 700;
    color: var(--srm-ink);
    line-height: 1;
    letter-spacing: -0.02em;
    margin: 2px 0;
}

.srm-hero__rating-label {
    font-size: 11px;
    font-weight: 500;
    color: var(--srm-muted);
}

/* Secondary small image */
.srm-hero__img-secondary {
    position: absolute;
    bottom: 12px;
    right: -12px;
    width: 38%;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--srm-shadow-md);
    z-index: 3;
    border: 3px solid var(--srm-white);
}

.srm-hero__img-secondary img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}

.srm-hero__img-band {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(to right, var(--srm-coral), var(--srm-mustard));
}

/* Decorative shapes in visual column */
.srm-hero__deco-circle {
    position: absolute;
    top: -16px;
    right: 20px;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 2px dashed rgba(200,168,75,0.4);
    z-index: 1;
    pointer-events: none;
    animation: srm-spin-slow 24s linear infinite;
}

@keyframes srm-spin-slow {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.srm-hero__deco-line {
    position: absolute;
    top: 30px;
    right: -10px;
    width: 2px;
    height: 80px;
    background: linear-gradient(to bottom, transparent, var(--srm-coral), transparent);
    border-radius: 2px;
    pointer-events: none;
    z-index: 1;
}

/* NDIS float chip on visual */
.srm-hero__ndis-float {
    position: absolute;
    top: 24px;
    left: -16px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 16px;
    background: linear-gradient(135deg, var(--srm-green-dark), var(--srm-green));
    border-radius: var(--srm-r-pill);
    color: var(--srm-white);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
    box-shadow: 0 4px 16px rgba(61,107,68,0.35);
}

.srm-hero__ndis-float svg {
    stroke: var(--srm-white);
    flex-shrink: 0;
}

/* Scroll hint */
.srm-hero__scroll-hint {
    display: none;
}

.srm-hero__scroll-line {
    width: 1px;
    height: 48px;
    background: linear-gradient(to bottom, var(--srm-border), transparent);
    animation: srm-scroll-drop 2s ease-in-out infinite;
    border-radius: 1px;
}

@keyframes srm-scroll-drop {
    0%   { transform: scaleY(0); transform-origin: top; opacity: 0; }
    40%  { transform: scaleY(1); opacity: 1; }
    100% { transform: scaleY(1) translateY(8px); opacity: 0; }
}

/* â”€â”€ [2] WHAT IS THIS SERVICE â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Premium redesign: framed prose + illustrated feature stack right.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-what {
    background: var(--srm-white);
    position: relative;
    overflow: hidden;
}

.srm-what::after,
.srm-support::after,
.srm-goals::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--srm-noise-texture);
    background-size: 180px 180px;
    opacity: 0.028;
    mix-blend-mode: multiply;
    pointer-events: none;
    z-index: 0;
}

/* Angled background shape in top-right */
.srm-what__bg-shape {
    position: absolute;
    top: 0; right: 0;
    width: 50%;
    height: 60%;
    background: linear-gradient(200deg, var(--srm-bg-warm) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

/* Header row: pill + divider line + badge */
.srm-what__header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: var(--srm-sp-xl);
    position: relative;
    z-index: 1;
}

.srm-what__label-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 16px;
    background: var(--srm-surface);
    border: 1px solid var(--srm-border);
    border-radius: var(--srm-r-pill);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--srm-muted);
    white-space: nowrap;
}

.srm-what__label-pill svg { stroke: var(--srm-muted); }

.srm-what__header-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--srm-border), transparent);
}

/* Two-column layout */
.srm-what__layout {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: clamp(40px, 5vw, 80px);
    align-items: stretch;
    position: relative;
    z-index: 1;
}

.srm-what__prose {
    display: flex;
    flex-direction: column;
    gap: var(--srm-sp-md);
    min-height: 100%;
}

.srm-what__prose-body {
    display: flex;
    flex-direction: column;
    gap: var(--srm-sp-md);
}

/* Pull quote band */
.srm-what__pull {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 16px 20px;
    background: var(--srm-bg-warm);
    border-radius: var(--srm-r-md);
    border: 1px solid rgba(200,168,75,0.2);
}

.srm-what__pull-bar {
    flex-shrink: 0;
    width: 3px;
    border-radius: 2px;
    background: var(--srm-mustard);
    align-self: stretch;
    min-height: 40px;
}

.srm-what__pull-text {
    font-family: var(--srm-font-title);
    font-style: italic;
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.6;
    color: var(--srm-ink-soft);
    margin: 0;
}

/* Inline chip strip */
.srm-what__chips {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: var(--srm-sp-md);
}

.srm-what__chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: var(--srm-r-sm);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: 1px solid transparent;
}

.srm-what__chip--mustard { background: var(--srm-mustard-light); color: var(--srm-mustard-dark); border-color: rgba(200,168,75,0.25); }
.srm-what__chip--green   { background: var(--srm-green-light);   color: var(--srm-green-dark);   border-color: rgba(106,158,114,0.25); }
.srm-what__chip--coral   { background: var(--srm-coral-light);   color: var(--srm-coral-dark);   border-color: rgba(232,105,74,0.25); }
.srm-what__chip--lavender{ background: var(--srm-lavender-light);color: var(--srm-lavender-dark);border-color: rgba(139,123,181,0.25); }

/* Feature stack (right column) */
.srm-what__features {
    display: grid;
    grid-template-rows: auto auto minmax(168px, 1fr);
    gap: 14px;
    min-height: 100%;
    align-content: stretch;
}

/* Hero feature card */
.srm-what__feat-hero {
    border-radius: var(--srm-r-lg);
    padding: 28px 24px;
    border: 1px solid rgba(255,255,255,0.12);
    position: relative;
    overflow: hidden;
    box-shadow: 0 22px 42px rgba(30,30,46,0.16);
    transition: box-shadow var(--srm-dur-mid) var(--srm-ease),
                transform var(--srm-dur-mid) var(--srm-ease);
}

.srm-what__feat-hero.srm-card--mustard {
    background: linear-gradient(145deg, #76602b 0%, #433311 100%);
}

.srm-what__feat-hero:hover {
    box-shadow: var(--srm-shadow-md);
    transform: none;
}

.srm-what__feat-hero-inner {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.srm-what__feat-hero-tag {
    position: absolute;
    top: 16px;
    right: 16px;
    padding: 4px 10px;
    background: var(--srm-mustard);
    color: var(--srm-white);
    border-radius: var(--srm-r-sm);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Feature tile pair */
.srm-what__feat-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    align-items: stretch;
}

.srm-what__feat-tile {
    padding: 22px 18px;
    border-radius: var(--srm-r-md);
    display: flex;
    flex-direction: column;
    gap: 10px;
    border: 1px solid rgba(255,255,255,0.12);
    min-height: 100%;
    box-shadow: 0 18px 36px rgba(30,30,46,0.14);
    transition: box-shadow var(--srm-dur-mid) var(--srm-ease),
                transform var(--srm-dur-mid) var(--srm-ease);
}

.srm-what__feat-tile.srm-card--coral {
    background: linear-gradient(145deg, #693128 0%, #351816 100%);
}

.srm-what__feat-tile.srm-card--green {
    background: linear-gradient(145deg, #294738 0%, #15241d 100%);
}

.srm-what__feat-tile:hover {
    box-shadow: var(--srm-shadow-sm);
    transform: none;
}

/* Accent banner */
.srm-what__accent-banner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    align-content: center;
    min-height: 100%;
    padding: 22px 20px;
    background: linear-gradient(145deg, #4a3e67 0%, #231c35 100%);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: var(--srm-r-md);
    box-shadow: 0 18px 36px rgba(30,30,46,0.16);
    margin-top: 0;
}

.srm-what__feat-hero .srm-h4,
.srm-what__feat-tile .srm-h4,
.srm-what__accent-banner .srm-body strong {
    color: var(--srm-white);
}

.srm-what__feat-hero .srm-body,
.srm-what__feat-tile .srm-body,
.srm-what__accent-banner .srm-body {
    color: rgba(255,255,255,0.84);
}

.srm-what__accent-banner .srm-badge {
    background: rgba(255,255,255,0.14);
    color: var(--srm-white);
    border-color: rgba(255,255,255,0.18);
}

/* â”€â”€ [3] WHO IS THIS FOR â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Premium redesign: editorial layout â€” 1 large + 2 stacked medium.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-who {
    background: var(--srm-bg-sage);
    position: relative;
    overflow: hidden;
}

/* Split header */
.srm-who__header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(32px, 4vw, 64px);
    align-items: end;
    margin-bottom: var(--srm-sp-xl);
}

.srm-who__header-left { display: flex; flex-direction: column; gap: 12px; }

/* Editorial layout: left col (card + reassure) + right stack */
.srm-who__layout {
    display: grid;
    grid-template-columns: 6fr 4fr;
    gap: 20px;
    align-items: start;
}

.srm-who__left-col {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.srm-who__left-col .srm-who__card-main {
    flex: 1;
}

/* Large feature card */
.srm-who__card-main {
    background: var(--srm-white);
    border-radius: var(--srm-r-xl);
    padding: 28px 32px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--srm-shadow-md);
    border: 1px solid var(--srm-border);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform var(--srm-dur-mid) var(--srm-ease),
                box-shadow var(--srm-dur-mid) var(--srm-ease);
}

.srm-who__card-main:hover {
    transform: translateY(-5px);
    box-shadow: var(--srm-shadow-lg);
}

.srm-who__card-main-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, var(--srm-coral-light) 0%, transparent 55%);
    opacity: 0.5;
    pointer-events: none;
}

.srm-who__card-main-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.srm-who__card-icon-wrap { width: fit-content; }

.srm-who__card-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.srm-who__card-main-deco {
    position: absolute;
    bottom: -20px;
    right: -20px;
    width: 120px;
    height: 120px;
    pointer-events: none;
    z-index: 0;
    opacity: 0.5;
}

/* Stacked medium cards */
.srm-who__card-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.srm-who__card-mid {
    background: var(--srm-white);
    border-radius: var(--srm-r-lg);
    padding: 24px 22px;
    border: 1px solid var(--srm-border);
    box-shadow: var(--srm-shadow-sm);
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
    transition: transform var(--srm-dur-mid) var(--srm-ease),
                box-shadow var(--srm-dur-mid) var(--srm-ease);
}

.srm-who__card-mid:hover {
    transform: translateY(-3px);
    box-shadow: var(--srm-shadow-md);
}

.srm-who__card-mid--lavender {
    background: var(--srm-bg-dusk);
    border-color: rgba(139,123,181,0.2);
}

.srm-who__card-mid-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.srm-who__card-mid-footer {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 8px;
}

/* Reassurance strip */
.srm-who__reassure {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0;
    padding: 14px 20px;
    background: linear-gradient(140deg, #24372f 0%, #1e1e2e 60%, #31445d 100%);
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 48px rgba(30,30,46,0.18);
}

.srm-who__reassure-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    min-width: 0;
}

.srm-who__reassure-text {
    margin: 0;
    max-width: 44ch;
    color: rgba(255,255,255,0.84);
}

.srm-who__reassure-text strong {
    color: var(--srm-white);
}

.srm-who__reassure-btn {
    flex-shrink: 0;
}

.srm-who__reassure-icon {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(205,229,207,0.14);
    border: 1px solid rgba(205,229,207,0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.srm-who__reassure-icon svg {
    width: 24px;
    height: 24px;
    stroke: var(--srm-white);
}

.srm-who__reassure-media {
    display: none;
    position: relative;
    min-height: 220px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 18px 34px rgba(0,0,0,0.18);
}

.srm-who__reassure-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(30,30,46,0.04), rgba(30,30,46,0.28));
    pointer-events: none;
}

.srm-who__reassure-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.srm-who__reassure .srm-btn--secondary {
    background: rgba(255,255,255,0.1);
    color: var(--srm-white);
    border-color: rgba(255,255,255,0.18);
    box-shadow: none;
}

.srm-who__reassure .srm-btn--secondary:hover {
    background: rgba(255,255,255,0.18);
    border-color: rgba(255,255,255,0.28);
    box-shadow: 0 12px 24px rgba(0,0,0,0.14);
}

/* â”€â”€ [4] WHAT SUPPORT CAN INCLUDE â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Premium redesign: dynamic mosaic card grid with color variation.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-support {
    background: var(--srm-white);
    position: relative;
    overflow: visible;
}

/* Split header */
.srm-support__header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(32px, 4vw, 64px);
    align-items: end;
    margin-bottom: clamp(12px, 1.8vw, 24px);
}

/* School-style pinned horizontal scroll scaffolding */
.srm-support__scroll {
    position: relative;
    left: 0;
    width: 100%;
    margin-left: 0;
    --srm-support-stick-offset: 72px;
    --srm-support-runway: 220vh;
    height: var(--srm-support-runway);
}

.srm-support__scroll-sticky {
    position: sticky;
    top: var(--srm-support-stick-offset);
    width: 100%;
    height: calc(100vh - var(--srm-support-stick-offset));
    display: flex;
    align-items: flex-start;
}

/* Mosaic rail (school reference behavior) */
.srm-support__mosaic {
    display: flex;
    align-items: stretch;
    gap: 20px;
    width: max-content;
    min-width: max-content;
    padding: 8px 60px 28px 30px;
    transform: translate3d(var(--srm-support-track-x, 0px), 0, 0);
    will-change: transform;
}

/* Card base */
.srm-support__card {
    flex: 0 0 clamp(300px, 24vw, 420px);
    width: clamp(300px, 24vw, 420px);
    min-height: clamp(460px, 64vh, 620px);
    align-self: stretch;
    border-radius: 10px;
    padding: 30px 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: relative;
    overflow: hidden;
    border: 1px solid var(--srm-border);
    transition: box-shadow var(--srm-dur-mid) var(--srm-ease),
                border-color var(--srm-dur-mid) var(--srm-ease);
}

.srm-support__card:hover {
    box-shadow: var(--srm-shadow-md);
}

.srm-support__card.is-support-active {
    border-color: rgba(30,30,46,0.22);
    box-shadow: var(--srm-shadow-md);
}

/* Keep "wide" cards aligned with the same horizontal rail sizing */
.srm-support__card--wide {
    flex: 0 0 clamp(300px, 24vw, 420px);
    width: clamp(300px, 24vw, 420px);
}

.srm-support__card:nth-child(n) { grid-column: auto; }

/* Color variants */
.srm-support__card--mustard      { background: var(--srm-bg-warm);  border-color: rgba(200,168,75,0.2); }
.srm-support__card--coral        { background: var(--srm-bg-petal); border-color: rgba(232,105,74,0.2); }
.srm-support__card--green        { background: var(--srm-bg-sage);  border-color: rgba(106,158,114,0.2); }
.srm-support__card--lavender     { background: var(--srm-bg-dusk);  border-color: rgba(139,123,181,0.2); }
.srm-support__card--dark-solid   { background: #365d72; border-color: rgba(255,255,255,0.18); }
.srm-support__card--dark-gradient{
    background: linear-gradient(145deg, #3f7d8f 0%, #6b64b5 56%, #cf7c5d 100%);
    border-color: rgba(255,255,255,0.24);
}
.srm-support__card--ink          { background: linear-gradient(138deg, #4b5f7e 0%, #6a5a96 100%); border: none; }
.srm-support__card--mustard-light{ background: var(--srm-mustard-light); border-color: rgba(200,168,75,0.25); }
.srm-support__card--cta          {
    background: linear-gradient(135deg, #4f8c58 0%, #4c6680 100%);
    border: none;
}

.srm-support__card--dark-solid :is(.srm-h4, .srm-body),
.srm-support__card--dark-gradient :is(.srm-h4, .srm-body) {
    color: rgba(255,255,255,0.94);
}

.srm-support__card--dark-solid .srm-support__card-num,
.srm-support__card--dark-gradient .srm-support__card-num {
    color: rgba(255,255,255,0.58);
}

.srm-support__card--dark-solid .srm-icon-wrap,
.srm-support__card--dark-gradient .srm-icon-wrap {
    background: rgba(255,255,255,0.14);
    border-color: rgba(255,255,255,0.28);
    color: rgba(255,255,255,0.9);
}

.srm-support__card-icon { flex-shrink: 0; }

.srm-support__card-body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}

/* Wide card inner layout */
.srm-support__card--wide .srm-support__card-icon,
.srm-support__card--wide .srm-support__card-body {
    /* already column */
}

.srm-support__card--wide {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
}

.srm-support__card--cta .srm-support__cta-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.srm-support__card--wide .srm-support__card-body {
    flex: 1;
}

.srm-support__card-num {
    font-family: var(--srm-font-title);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--srm-subtle);
}

.srm-support__card-num--light { color: rgba(255,255,255,0.35); }

.srm-support__card-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px;
}

/* CTA card inner */
.srm-support__cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    width: 100%;
}

/* â”€â”€ [5] BENEFITS & OUTCOMES â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Deep warm background (ink), bright colored callout cards. Contrast section.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-benefits {
    background: var(--srm-ink);
    position: relative;
    overflow: hidden;
    margin-bottom: 0;
}

.srm-benefits .srm-h2 {
    color: var(--srm-white);
}

.srm-benefits .srm-section__inner {
    padding-bottom: clamp(150px, 15vw, 230px);
}

.srm-benefits__script {
    display: block;
    font-family: var(--srm-font-script);
    font-size: clamp(30px, 4vw, 52px);
    color: var(--srm-mustard);
    line-height: 1.0;
    margin-bottom: -8px;
}

.srm-benefits__layout {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: 18px;
    align-items: stretch;
    margin-bottom: clamp(28px, 5vw, 72px);
}

.srm-benefits__feature {
    position: relative;
    overflow: hidden;
    border-radius: var(--srm-r-xl);
    padding: 36px 32px;
    border: 1px solid rgba(255,255,255,0.16);
    background:
        radial-gradient(circle at top right, rgba(232,105,74,0.22), transparent 32%),
        radial-gradient(circle at bottom left, rgba(139,123,181,0.14), transparent 34%),
        linear-gradient(160deg, rgba(255,255,255,0.12), rgba(255,255,255,0.035));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.14),
        0 28px 60px rgba(0,0,0,0.2);
    backdrop-filter: blur(8px) saturate(130%);
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.srm-benefits__feature::before {
    content: '';
    position: absolute;
    top: 0;
    left: 28px;
    right: 28px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(232,105,74,0), var(--srm-coral), var(--srm-mustard), var(--srm-green), rgba(139,123,181,0));
    background-size: 200% 100%;
    animation: srm-gradient-slide 11s linear infinite;
    opacity: 0.9;
}

.srm-benefits__feature::after {
    content: '';
    position: absolute;
    width: 180px;
    height: 180px;
    right: -44px;
    bottom: -58px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200,168,75,0.28), rgba(200,168,75,0));
    pointer-events: none;
}

.srm-benefits__meters {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 6px;
    padding: 18px 18px 16px;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,0.12);
    background: linear-gradient(160deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.08),
        0 18px 32px rgba(0,0,0,0.18);
    backdrop-filter: blur(8px) saturate(130%);
}

.srm-benefits__meter {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.srm-benefits__meter-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.62);
}

.srm-benefits__meter-outcome {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255,255,255,0.72);
}

.srm-benefits__meter-outcome strong {
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: none;
    color: rgba(255,255,255,0.96);
}

.srm-benefits__meter-track {
    width: 100%;
    height: 10px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    overflow: hidden;
}

.srm-benefits__meter-track span {
    display: block;
    width: var(--srm-fill, 60%);
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--srm-mustard), var(--srm-coral));
    box-shadow: 0 0 18px rgba(232,105,74,0.28);
    opacity: 0.42;
    transform: scaleX(0.001);
    transform-origin: left center;
    transition:
        transform 1.02s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.42s ease-out;
    transition-delay: var(--srm-meter-delay, 0s);
    /* will-change removed */
}

.srm-benefits__meter-track span.is-meter-visible {
    opacity: 1;
    transform: scaleX(1);
}

.srm-benefits__quote {
    margin-top: 8px;
    padding: 18px 20px;
    border-radius: var(--srm-r-md);
    border: 1px solid rgba(255,255,255,0.14);
    background: linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.1),
        0 16px 30px rgba(0,0,0,0.16);
    backdrop-filter: blur(20px) saturate(150%);
}

.srm-benefits__cluster {
    container-type: inline-size;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
    padding-top: 0;
    padding-bottom: 0;
}

.srm-benefits__card {
    height: 100%;
    align-self: stretch;
    position: relative;
    overflow: hidden;
    padding: 26px 24px;
    border-radius: var(--srm-r-lg);
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-height: 0;
    border: 1px solid rgba(10,26,38,0.06);
    box-shadow: var(--srm-shadow-sm);
}

.srm-benefits__card::before {
    content: '';
    position: absolute;
    inset: auto -20px -20px auto;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(255,255,255,0.22);
    opacity: 0.45;
    pointer-events: none;
}

.srm-benefits__card--coral    { background: var(--srm-coral-light); }
.srm-benefits__card--mustard  { background: var(--srm-mustard-light); }
.srm-benefits__card--green    { background: var(--srm-green-light); }
.srm-benefits__card--lavender { background: var(--srm-lavender-light); }

.srm-benefits__card--tall {
    grid-row: auto;
    min-height: 0;
}

.srm-benefits__card--wide {
    grid-column: auto;
}

.srm-benefits__chip {
    display: inline-flex;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.72);
    border: 1px solid rgba(10,26,38,0.08);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--srm-ink);
}

.srm-benefits__mini-stat {
    margin-top: auto;
    padding-top: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.srm-benefits__mini-stat strong {
    font-family: var(--srm-font-title);
    font-size: clamp(18px, 2vw, 22px);
    color: var(--srm-ink);
}

.srm-benefits__mini-stat span {
    font-size: 13px;
    line-height: 1.6;
    color: var(--srm-muted);
}

.srm-benefits__wide-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

@media (min-width: 1025px) {
    .srm-benefits__feature,
    .srm-benefits__cluster {
        min-height: 640px;
    }
}

.srm-benefits__pulse {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--srm-coral);
    box-shadow: 0 0 0 0 rgba(232,105,74,0.4);
    animation: srm-pulse 2.4s ease infinite;
}

.srm-benefits__blob-1 {
    width: 500px; height: 500px;
    top: -100px; right: -100px;
    background: rgba(139,123,181,0.12);
}

.srm-benefits__blob-2 {
    width: 320px; height: 320px;
    bottom: -60px; left: -60px;
    background: rgba(200,168,75,0.10);
}

/* â”€â”€ [6] HOW SUNRISE DELIVERS â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Split layout, warm petal bg. Photo left, text pillars right.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-delivers {
    background: var(--srm-bg-petal);
    position: relative;
    overflow: visible;
}

.srm-delivers__grid {
    display: grid;
    grid-template-columns: minmax(320px, 4.6fr) minmax(0, 7.4fr);
    gap: clamp(28px, 4vw, 56px);
    align-items: start;
}

.srm-delivers__visual-column {
    position: sticky;
    top: clamp(88px, 10vh, 120px);
    align-self: start;
    max-width: 430px;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.srm-delivers__visual {
    position: relative;
    padding-bottom: 0;
}

.srm-delivers__visual .srm-img-wrap {
    box-shadow: var(--srm-shadow-lg);
    border: 1px solid rgba(232,105,74,0.14);
}

.srm-delivers__media-stack {
    position: relative;
    isolation: isolate;
    background: #f4ece7;
}

.srm-delivers__media-frame {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.035);
    transition:
        opacity 0.76s cubic-bezier(0.16, 1, 0.3, 1),
        transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);
    /* will-change removed */
}

.srm-delivers__media-frame.is-media-active {
    opacity: 1;
    transform: scale(1);
    z-index: 1;
}

.srm-delivers__media-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.srm-delivers__media-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(180deg, rgba(30,30,46,0.08), rgba(30,30,46,0.38) 72%, rgba(30,30,46,0.64) 100%),
        linear-gradient(135deg, rgba(232,105,74,0.16), rgba(139,123,181,0.1));
    pointer-events: none;
}

.srm-delivers__media-caption {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
    z-index: 2;
    display: grid;
    gap: 8px;
    padding: 18px 20px;
    border-radius: 24px;
    background: rgba(30,30,46,0.66);
    border: 1px solid rgba(255,255,255,0.16);
    box-shadow: 0 18px 36px rgba(30,30,46,0.2);
    backdrop-filter: blur(6px) saturate(130%);
    color: rgba(255,255,255,0.88);
}

.srm-delivers__media-caption strong {
    font-family: var(--srm-font-title);
    font-size: clamp(1.2rem, 2.1vw, 1.6rem);
    line-height: 1.12;
    color: var(--srm-white);
}

.srm-delivers__media-caption p {
    font-size: 14px;
    line-height: 1.65;
    color: rgba(255,255,255,0.76);
}

.srm-delivers__float,
.srm-delivers__note {
    position: absolute;
    z-index: 2;
    background: rgba(255,255,255,0.88);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255,255,255,0.6);
    border-radius: var(--srm-r-md);
    box-shadow: var(--srm-shadow-md);
}

.srm-delivers__float {
    max-width: 208px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.srm-delivers__float strong {
    font-family: var(--srm-font-title);
    font-size: 18px;
    line-height: 1.2;
    color: var(--srm-ink);
}

.srm-delivers__float--a {
    top: 18px;
    right: 14px;
}

.srm-delivers__float--b {
    display: none;
}

.srm-delivers__note {
    position: relative;
    z-index: 1;
    margin: 0 30px;
    padding: 18px 20px;
    align-self: start;
}

.srm-delivers__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.srm-delivers__highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.srm-delivers__pillars {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}

.srm-delivers__pillar {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 22px 24px 22px 58px;
    background: var(--srm-white);
    border-radius: var(--srm-r-md);
    border: 1px solid rgba(232,105,74,0.12);
    box-shadow: var(--srm-shadow-sm);
    transition: transform var(--srm-dur-fast) var(--srm-ease),
                box-shadow var(--srm-dur-fast) var(--srm-ease),
                border-color var(--srm-dur-fast) var(--srm-ease),
                background var(--srm-dur-fast) var(--srm-ease);
}

.srm-delivers__pillar > div:last-child {
    min-width: 0;
    flex: 1;
}

.srm-delivers__pillar:hover {
    transform: translateY(-4px);
    box-shadow: var(--srm-shadow-md);
}

.srm-delivers__pillar.is-story-active {
    transform: translate3d(12px, 0, 0);
    border-color: rgba(232,105,74,0.28);
    box-shadow: 0 24px 48px rgba(30,30,46,0.14);
    background:
        linear-gradient(135deg, rgba(255,255,255,0.98), rgba(253,244,241,0.92)),
        var(--srm-white);
}

.srm-delivers__pillar.is-story-active .srm-delivers__pillar-no {
    color: rgba(232,105,74,0.72);
}

.srm-delivers__pillar .srm-h4 {
    max-width: none;
}

.srm-delivers__pillar .srm-body {
    max-width: none;
}

.srm-delivers__pillar-no {
    position: absolute;
    left: 18px;
    top: 20px;
    font-family: var(--srm-font-title);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(10,26,38,0.35);
}

/* â”€â”€ [7] HOW IT WORKS â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Dusk/lavender bg, numbered step flow with connector lines.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-how {
    background: var(--srm-bg-dusk);
    position: relative;
    overflow: hidden;
}

.srm-how__blob {
    width: 400px; height: 400px;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(139,123,181,0.10);
}

.srm-how__header {
    display: grid;
    grid-template-columns: 6fr 4fr;
    gap: 20px;
    align-items: stretch;
    margin-bottom: 22px;
}

.srm-how__intro,
.srm-how__tracker {
    border-radius: var(--srm-r-lg);
    box-shadow: var(--srm-shadow-md);
}

.srm-how__intro {
    padding: 24px 26px;
    border: 1px solid rgba(139,123,181,0.16);
    background: rgba(255,255,255,0.46);
    backdrop-filter: blur(4px);
    min-height: 100%;
}

.srm-how__tracker {
    display: flex;
    flex-direction: column;
    padding: 24px 24px 22px;
    border: 1px solid rgba(139,123,181,0.18);
    background: rgba(255,255,255,0.76);
    backdrop-filter: blur(5px);
    min-height: 100%;
}

.srm-how__tracker-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.srm-how__tracker-count {
    font-family: var(--srm-font-title);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--srm-lavender-dark);
}

.srm-how__progress {
    width: 100%;
    height: 10px;
    border-radius: 999px;
    background: rgba(139,123,181,0.14);
    overflow: hidden;
    margin-top: 14px;
}

.srm-how__progress-fill {
    display: block;
    width: 25%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--srm-mustard), var(--srm-coral), var(--srm-green), var(--srm-lavender));
    transition: width var(--srm-dur-mid) var(--srm-ease);
}

.srm-how__board {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 18px;
    position: relative;
}

.srm-how__panel {
    position: relative;
    overflow: hidden;
    min-height: 250px;
    height: 100%;
    padding: 28px 26px 24px;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    border: 1px solid rgba(255,255,255,0.34);
    box-shadow: 0 22px 44px rgba(54,40,82,0.16);
    transform: translateY(0);
    transition: transform var(--srm-dur-mid) var(--srm-ease-spring),
                box-shadow var(--srm-dur-mid) var(--srm-ease),
                border-color var(--srm-dur-fast) var(--srm-ease);
}

.srm-how__panel::before {
    content: '';
    position: absolute;
    inset: auto -28px -42px auto;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: rgba(255,255,255,0.32);
    opacity: 0.45;
    pointer-events: none;
}

.srm-how__panel:hover,
.srm-how__panel:focus-visible,
.srm-how__panel.is-active {
    transform: none;
    box-shadow: 0 28px 54px rgba(54,40,82,0.22);
    border-color: rgba(10,26,38,0.12);
}

.srm-how__panel:focus-visible {
    outline: 2px solid rgba(10,26,38,0.28);
    outline-offset: 3px;
}

.srm-how__panel--mustard { grid-column: span 5; background: linear-gradient(160deg, #FAE1A8, #F6EFCF); }
.srm-how__panel--coral   { grid-column: span 7; background: linear-gradient(160deg, #F8C5B7, #FBE2DA); }
.srm-how__panel--green   { grid-column: span 7; background: linear-gradient(160deg, #CFE8C8, #EBF6E6); }
.srm-how__panel--lavender{ grid-column: span 5; background: linear-gradient(160deg, #DDD3F5, #F3EEFB); }

.srm-how__panel-no {
    font-family: var(--srm-font-title);
    font-size: clamp(42px, 5vw, 64px);
    line-height: 0.9;
    letter-spacing: -0.05em;
    color: rgba(10,26,38,0.22);
}

.srm-how__panel-tag {
    display: inline-flex;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.72);
    border: 1px solid rgba(10,26,38,0.08);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--srm-ink);
}

.srm-how__panel-foot {
    margin-top: auto;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.srm-how__panel-foot span {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.6);
    font-size: 12px;
    font-weight: 600;
    color: var(--srm-ink);
}

/* â”€â”€ [8] GOALS & INDEPENDENCE â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   White bg, 3-col goal pillars with progress/score treatments.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-goals {
    background: var(--srm-white);
    position: relative;
    overflow: hidden;
}

.srm-goals__dots {
    width: 200px; height: 200px;
    top: 30px; left: 40px;
}

.srm-goals__layout {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: 22px;
    align-items: stretch;
}

.srm-goals__intro {
    display: flex;
    flex-direction: column;
    padding: 34px 30px;
    border-radius: var(--srm-r-xl);
    border: 1px solid var(--srm-border);
    background: linear-gradient(160deg, rgba(207,232,200,0.28), rgba(255,255,255,0.94));
    box-shadow: var(--srm-shadow-md);
    min-height: 100%;
}

.srm-goals__milestones {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.srm-goals__milestone {
    padding: 16px 18px;
    border-radius: var(--srm-r-md);
    border: 1px solid rgba(106,158,114,0.14);
    background: rgba(255,255,255,0.72);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.srm-goals__milestone strong {
    font-family: var(--srm-font-title);
    font-size: clamp(19px, 2vw, 24px);
    line-height: 1.22;
    color: var(--srm-ink);
}

.srm-goals__chip-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: auto;
    padding-top: var(--srm-sp-md);
}

.srm-goals__atlas {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-content: stretch;
    min-height: 100%;
}

.srm-goals__card,
.srm-goals__compass {
    position: relative;
    overflow: hidden;
    border-radius: var(--srm-r-lg);
    box-shadow: var(--srm-shadow-sm);
}

.srm-goals__card {
    padding: 30px 24px;
    border: 1px solid var(--srm-border);
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-height: 240px;
    background: var(--srm-white);
}

.srm-goals__card--mustard { background: #4f5b43; }
.srm-goals__card--green   { background: #305f5d; }
.srm-goals__card--coral   { background: linear-gradient(152deg, #5f3f59 0%, #7b4d5b 54%, #b96b4a 100%); }

.srm-goals__kicker {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(10,26,38,0.42);
}

.srm-goals__card-accent {
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    border-radius: 0 0 0 0;
}

.srm-goals__card-accent--mustard { background: var(--srm-mustard); }
.srm-goals__card-accent--green   { background: var(--srm-green);   }
.srm-goals__card-accent--coral   { background: var(--srm-coral);   }

.srm-goals__progress-chip {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 8px;
}

.srm-goals__progress-chip span {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10,26,38,0.4);
}

.srm-goals__progress-chip strong {
    font-family: var(--srm-font-title);
    font-size: clamp(18px, 2vw, 22px);
    line-height: 1.2;
    color: var(--srm-ink);
}

.srm-goals__compass {
    padding: 30px 24px;
    border: 1px solid rgba(170,182,255,0.28);
    background: linear-gradient(148deg, #2c3f68 0%, #4e3f7e 56%, #2f6f7b 100%);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    min-height: 240px;
}

.srm-goals__compass-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.srm-goals__atlas :is(.srm-goals__card, .srm-goals__compass) {
    border-color: rgba(255,255,255,0.2);
    box-shadow: 0 20px 36px rgba(15,18,34,0.26);
}

.srm-goals__atlas :is(.srm-h4, .srm-body) {
    color: rgba(247,250,255,0.92);
}

.srm-goals__atlas .srm-goals__kicker,
.srm-goals__atlas .srm-goals__progress-chip span,
.srm-goals__atlas .srm-caption {
    color: rgba(236,243,255,0.62);
}

.srm-goals__atlas .srm-goals__progress-chip strong {
    color: #f9fcff;
}

.srm-goals__atlas .srm-tag {
    background: rgba(255,255,255,0.14);
    border-color: rgba(255,255,255,0.24);
    color: rgba(247,250,255,0.9);
}

@keyframes srm-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(232,105,74,0.38); }
    70%  { box-shadow: 0 0 0 14px rgba(232,105,74,0); }
    100% { box-shadow: 0 0 0 0 rgba(232,105,74,0); }
}

/* â”€â”€ [9] REAL-LIFE SCENARIOS  [10] FAQs  [11] RELATED SERVICES  [12] FINAL CTA â”€â”€
   Consolidated single definitions â€” premium layout versions.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.srm-scenarios {
    background:
        radial-gradient(circle at top right, rgba(200,168,75,0.18), transparent 28%),
        linear-gradient(180deg, #fdf7ee 0%, #fffaf5 100%);
    overflow: hidden;
}

.srm-scenarios__header {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 360px);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 16px;
}

.srm-scenarios__title {
    margin-bottom: 0;
}

.srm-scenarios__intro-card {
    position: relative;
    overflow: hidden;
    padding: 20px 24px;
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(30,30,46,0.95), rgba(79,58,53,0.92));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 60px rgba(30,30,46,0.22);
    display: grid;
    gap: 12px;
    align-content: space-between;
}

.srm-scenarios__intro-card::before,
.srm-scenarios__intro-card::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.srm-scenarios__intro-card::before {
    width: 180px;
    height: 180px;
    top: -80px;
    right: -40px;
    background: rgba(200,168,75,0.18);
    filter: blur(6px);
}

.srm-scenarios__intro-card::after {
    width: 110px;
    height: 110px;
    bottom: -40px;
    left: -20px;
    background: rgba(232,105,74,0.14);
}

.srm-scenarios__intro-card .srm-h4,
.srm-scenarios__intro-card .srm-body {
    color: rgba(255,255,255,0.88);
}

.srm-scenarios__intro-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.srm-scenarios__intro-points .srm-tag {
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.14);
    color: rgba(255,255,255,0.88);
}

.srm-scenarios__grid {
    container-type: inline-size;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 22px;
    align-items: stretch;
}

.srm-scenarios__showcase {
    position: relative;
    grid-column: span 7;
    min-width: 0;
    padding: 22px 24px;
    border-radius: 34px;
    background: linear-gradient(180deg, rgba(255,255,255,0.78), rgba(255,255,255,0.52));
    border: 1px solid rgba(228,228,238,0.76);
    box-shadow: 0 18px 44px rgba(30,30,46,0.08);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.srm-scenarios__showcase::before,
.srm-scenarios__showcase::after {
    content: '';
    position: absolute;
    top: 56px;
    bottom: 20px;
    width: 46px;
    pointer-events: none;
    z-index: 2;
}

.srm-scenarios__showcase::before {
    left: 0;
    background: linear-gradient(90deg, rgba(255,250,245,0.96), rgba(255,250,245,0));
}

.srm-scenarios__showcase::after {
    right: 0;
    background: linear-gradient(270deg, rgba(255,250,245,0.96), rgba(255,250,245,0));
}

.srm-scenarios__showcase-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 0 6px;
}

.srm-scenarios__showcase-hint {
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--srm-muted);
}

.srm-scenarios__showcase-strip {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    overflow: visible;
    padding: 0;
    scroll-snap-type: none;
    scrollbar-width: none;
    -ms-overflow-style: none;
    cursor: default;
    flex: 1;
}

.srm-scenarios__showcase-strip.is-dragging {
    cursor: default;
    user-select: none;
}

.srm-scenarios__showcase-strip::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.srm-scenarios__showcase-strip .srm-scenarios__card {
    flex: 1 1 0;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: calc((100% - 28px) / 3);
    scroll-snap-align: none;
    scroll-margin-left: 0;
}

.srm-scenarios__showcase-strip .srm-scenarios__card--compact {
    flex-basis: 0;
    width: 100%;
}

.srm-scenarios__showcase-strip .srm-scenarios__card--journal {
    flex-basis: 0;
    width: 100%;
}

.srm-scenarios__card--feature,
.srm-scenarios__showcase {
    height: clamp(720px, 52vw, 900px);
}

.srm-scenarios__showcase-strip .srm-scenarios__content {
    padding: 22px 24px 26px;
    gap: 12px;
}

.srm-scenarios__showcase-strip .srm-scenarios__card--portrait .srm-scenarios__media {
    min-height: 140px;
}

.srm-scenarios__showcase-strip .srm-scenarios__card--compact .srm-scenarios__illustration {
    min-height: 140px;
    padding: 18px;
}

.srm-scenarios__showcase-strip .srm-scenarios__mini-list,
.srm-scenarios__showcase-strip .srm-scenarios__tags {
    margin-top: 0;
}

.srm-scenarios__card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 30px;
    overflow: hidden;
    background: rgba(255,255,255,0.96);
    border: 1px solid rgba(228,228,238,0.92);
    box-shadow: 0 18px 48px rgba(30,30,46,0.11);
    transition:
        transform var(--srm-dur-mid) var(--srm-ease),
        box-shadow var(--srm-dur-mid) var(--srm-ease),
        border-color var(--srm-dur-mid) var(--srm-ease);
}

.srm-scenarios__card::after {
    content: '';
    position: absolute;
    inset: auto 18px 0 18px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green));
    opacity: 0;
    transform: scaleX(0.8);
    transition: opacity var(--srm-dur-mid) var(--srm-ease), transform var(--srm-dur-mid) var(--srm-ease);
}

.srm-scenarios__card:hover {
    transform: translateY(-10px);
    box-shadow: 0 28px 64px rgba(30,30,46,0.16);
    border-color: rgba(139,123,181,0.28);
}

.srm-scenarios__card:hover::after {
    opacity: 1;
    transform: scaleX(1);
}

.srm-scenarios__card--feature { grid-column: span 5; }
.srm-scenarios__card--portrait { grid-column: span 5; }
.srm-scenarios__card--compact { grid-column: span 4; }
.srm-scenarios__card--journal { grid-column: span 8; }

.srm-scenarios__media {
    position: relative;
    min-height: 260px;
    overflow: hidden;
}

.srm-scenarios__card--feature .srm-scenarios__media {
    min-height: 280px;
}

.srm-scenarios__card--portrait .srm-scenarios__media {
    min-height: 300px;
}

.srm-scenarios__media img,
.srm-scenarios__journal-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform-origin: center center;
    transition: transform 0.8s var(--srm-ease);
    /* will-change removed */
}

.srm-scenarios__media::after,
.srm-scenarios__journal-photo::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.68;
    mix-blend-mode: multiply;
}

.srm-scenarios__card:hover .srm-scenarios__media img,
.srm-scenarios__card:hover .srm-scenarios__journal-photo img {
    animation: srm-ken-burns-soft 7.4s cubic-bezier(0.16, 1, 0.3, 1) infinite alternate;
}

.srm-scenarios__card--portrait:hover .srm-scenarios__media img {
    animation-name: srm-ken-burns-portrait;
}

.srm-scenarios__card--journal:hover .srm-scenarios__journal-photo img {
    animation-name: srm-ken-burns-journal;
}

@keyframes srm-ken-burns-soft {
    0% {
        transform: scale(1.04) translate3d(0, 0, 0);
    }
    100% {
        transform: scale(1.11) translate3d(-2%, -1.6%, 0);
    }
}

@keyframes srm-ken-burns-portrait {
    0% {
        transform: scale(1.03) translate3d(0, 0, 0);
    }
    100% {
        transform: scale(1.1) translate3d(1.6%, -2.4%, 0);
    }
}

@keyframes srm-ken-burns-journal {
    0% {
        transform: scale(1.05) translate3d(0, 0, 0);
    }
    100% {
        transform: scale(1.12) translate3d(-1.8%, 1.4%, 0);
    }
}

.srm-scenarios__media-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(30,30,46,0.06), rgba(30,30,46,0.42)),
        linear-gradient(135deg, rgba(232,105,74,0.16), rgba(139,123,181,0.14));
    pointer-events: none;
}

.srm-scenarios__card--feature .srm-scenarios__media::after {
    background:
        linear-gradient(140deg, rgba(232,105,74,0.24), transparent 52%),
        radial-gradient(circle at 78% 18%, rgba(139,123,181,0.18), transparent 32%);
}

.srm-scenarios__card--portrait .srm-scenarios__media::after {
    background:
        linear-gradient(150deg, rgba(139,123,181,0.24), transparent 50%),
        radial-gradient(circle at 18% 82%, rgba(106,158,114,0.18), transparent 34%);
}

.srm-scenarios__journal-photo::after {
    background:
        linear-gradient(145deg, rgba(200,168,75,0.2), transparent 48%),
        radial-gradient(circle at 80% 24%, rgba(232,105,74,0.16), transparent 30%);
}

.srm-scenarios__story-pill,
.srm-scenarios__story-note {
    position: absolute;
    z-index: 1;
}

.srm-scenarios__story-pill {
    top: 18px;
    left: 18px;
    display: inline-flex;
    align-items: center;
    padding: 10px 16px;
    border-radius: var(--srm-r-pill);
    background: rgba(255,255,255,0.92);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--srm-coral-dark);
    box-shadow: 0 10px 26px rgba(30,30,46,0.14);
}

.srm-scenarios__story-marker {
    position: absolute;
    right: 20px;
    bottom: 18px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border-radius: var(--srm-r-pill);
    background: rgba(30,30,46,0.76);
    color: var(--srm-white);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
}

.srm-scenarios__story-marker span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--srm-coral);
    animation: srm-pulse 2.4s infinite;
}

.srm-scenarios__story-note {
    left: 18px;
    right: 18px;
    bottom: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.9);
    color: var(--srm-ink);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
    box-shadow: 0 12px 28px rgba(30,30,46,0.12);
}

.srm-scenarios__story-note svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    color: var(--srm-coral);
}

.srm-scenarios__content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 28px;
    flex: 1;
}

.srm-scenarios__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.srm-scenarios__meta-note,
.srm-scenarios__journal-date {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--srm-subtle);
}

.srm-h1,
.srm-h2,
.srm-h3 {
    text-wrap: balance;
}

.srm-h4,
.srm-lead,
.srm-body {
    text-wrap: pretty;
}

.srm-scenarios__quote {
    display: grid;
    gap: 8px;
    padding: 18px 20px;
    border-radius: 22px;
    background: linear-gradient(140deg, rgba(250,213,203,0.52), rgba(255,255,255,0.96));
    border: 1px solid rgba(232,105,74,0.14);
    color: var(--srm-ink-soft);
    line-height: 1.65;
}

.srm-scenarios__quote strong,
.srm-scenarios__journal-note strong {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--srm-coral-dark);
}

.srm-scenarios__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: auto;
}

.srm-scenarios__mini-list {
    list-style: none;
    display: grid;
    gap: 10px;
    margin-top: auto;
}

.srm-scenarios__mini-list li {
    position: relative;
    padding-left: 20px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--srm-muted);
}

.srm-scenarios__mini-list li::before {
    content: '';
    position: absolute;
    top: 10px;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--srm-mustard), var(--srm-coral));
}

.srm-scenarios__illustration {
    position: relative;
    min-height: 230px;
    padding: 24px;
    overflow: hidden;
    background: linear-gradient(150deg, rgba(217,212,239,0.96), rgba(255,255,255,0.98));
}

.srm-scenarios__illustration::before {
    content: '';
    position: absolute;
    inset: 16px;
    border-radius: 26px;
    border: 1px dashed rgba(139,123,181,0.34);
}

.srm-scenarios__illustration-ring {
    position: absolute;
    width: 180px;
    height: 180px;
    top: 24px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    border: 1px solid rgba(139,123,181,0.28);
}

.srm-scenarios__illustration-icon {
    position: absolute;
    top: 66px;
    left: 50%;
    transform: translateX(-50%);
    width: 86px;
    height: 86px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.9);
    color: var(--srm-lavender-dark);
    box-shadow: 0 16px 34px rgba(139,123,181,0.18);
}

.srm-scenarios__illustration-icon svg {
    width: 34px;
    height: 34px;
}

.srm-scenarios__illustration-chip {
    position: absolute;
    padding: 10px 14px;
    border-radius: var(--srm-r-pill);
    background: rgba(30,30,46,0.84);
    color: var(--srm-white);
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 14px 30px rgba(30,30,46,0.16);
}

.srm-scenarios__illustration-chip--a {
    top: 28px;
    right: 24px;
}

.srm-scenarios__illustration-chip--b {
    bottom: 26px;
    left: 24px;
}

.srm-scenarios__card--journal {
    background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(244,247,242,0.9));
}

.srm-scenarios__journal-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 28px 28px 0;
}

.srm-scenarios__card--journal .srm-h4,
.srm-scenarios__card--journal .srm-body {
    padding-left: 28px;
    padding-right: 28px;
}

.srm-scenarios__journal-strip {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1fr);
    gap: 18px;
    padding: 2px 28px 0;
}

.srm-scenarios__journal-photo {
    position: relative;
    min-height: 170px;
    border-radius: 24px;
    overflow: hidden;
}

.srm-scenarios__journal-note {
    display: grid;
    align-content: center;
    gap: 10px;
    padding: 22px;
    border-radius: 24px;
    background: rgba(255,255,255,0.92);
    border: 1px solid rgba(106,158,114,0.16);
    line-height: 1.75;
    color: var(--srm-ink-soft);
}

.srm-scenarios__card--journal .srm-scenarios__tags {
    padding: 0 28px 28px;
}

.srm-faq {
    background: linear-gradient(180deg, #ffffff 0%, #fdfcf9 100%);
    position: relative;
}

.srm-faq__layout {
    display: grid;
    grid-template-columns: minmax(420px, 460px) minmax(0, 1fr);
    gap: 20px;
    align-items: stretch;
}

.srm-faq__aside {
    position: relative;
    top: auto;
    height: 100%;
    padding: 28px 24px;
    border-radius: 30px;
    background: linear-gradient(180deg, rgba(242,247,242,0.92), rgba(255,255,255,0.98));
    border: 1px solid rgba(106,158,114,0.16);
    box-shadow: 0 20px 48px rgba(30,30,46,0.08);
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.srm-faq__aside-card {
    display: grid;
    gap: 8px;
    padding: 16px 18px;
    border-radius: 24px;
    background: rgba(255,255,255,0.84);
    border: 1px solid rgba(106,158,114,0.14);
}

.srm-faq__contact {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: auto;
}

.srm-faq__contact-btn,
.srm-related__view-all,
.srm-cta__btn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.srm-faq__contact-btn::before,
.srm-related__view-all::before,
.srm-cta__btn::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: -65%;
    width: 42%;
    transform: skewX(-18deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent);
    transition: transform 0.75s var(--srm-ease);
    pointer-events: none;
}

.srm-faq__contact-btn:hover::before,
.srm-related__view-all:hover::before,
.srm-cta__btn:hover::before {
    transform: translateX(320%) skewX(-18deg);
}

.srm-faq__contact-btn {
    width: 100%;
    min-height: 48px;
    padding-inline: 18px;
    justify-content: center;
}

.srm-faq__main {
    display: flex;
    flex-direction: column;
    gap: 12px;
    height: 100%;
}

.srm-faq__stack {
    display: grid;
    gap: 10px;
}

.srm-faq .srm-faq-item {
    border: 1px solid rgba(228,228,238,0.92);
    border-radius: 26px;
    background: linear-gradient(180deg, #ffffff, #fcfaf7);
    box-shadow: 0 14px 32px rgba(30,30,46,0.06);
    transition:
        transform var(--srm-dur-mid) var(--srm-ease),
        box-shadow var(--srm-dur-mid) var(--srm-ease),
        border-color var(--srm-dur-mid) var(--srm-ease);
}

.srm-faq .srm-faq-item:hover {
    transform: none;
    box-shadow: 0 18px 40px rgba(30,30,46,0.08);
    border-color: rgba(139,123,181,0.24);
}

.srm-faq .srm-faq-item.is-open {
    border-color: rgba(232,105,74,0.22);
    box-shadow: 0 20px 44px rgba(30,30,46,0.1);
}

.srm-faq .srm-faq__trigger {
    padding: 17px 18px 15px;
    align-items: flex-start;
    gap: 14px;
    color: var(--srm-ink);
}

.srm-faq .srm-faq__trigger:hover {
    color: var(--srm-ink);
}

.srm-faq__trigger-copy {
    display: grid;
    gap: 8px;
    flex: 1;
}

.srm-faq__kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 7px 12px;
    border-radius: var(--srm-r-pill);
    background: rgba(139,123,181,0.1);
    color: var(--srm-lavender-dark);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.srm-faq__question {
    display: block;
    font-size: clamp(15px, 1.28vw, 18px);
    line-height: 1.3;
    color: var(--srm-ink);
}

.srm-faq .srm-faq__icon {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    background: linear-gradient(180deg, var(--srm-white), #f5f3f8);
    border: 1px solid rgba(228,228,238,0.9);
    box-shadow: 0 8px 22px rgba(30,30,46,0.07);
    transition:
        background var(--srm-dur-fast) var(--srm-ease-spring),
        transform var(--srm-dur-fast) var(--srm-ease-spring),
        border-color var(--srm-dur-fast) var(--srm-ease-spring),
        box-shadow var(--srm-dur-fast) var(--srm-ease-spring);
}

.srm-faq .srm-faq__icon svg {
    width: 15px;
    height: 15px;
    stroke: var(--srm-lavender-dark);
    stroke-width: 2.2;
    transition: stroke var(--srm-dur-fast) var(--srm-ease);
}

.srm-faq .srm-faq-item.is-open .srm-faq__icon {
    background: linear-gradient(135deg, var(--srm-coral), #f68b70);
    border-color: rgba(232,105,74,0.22);
    box-shadow: 0 10px 26px rgba(232,105,74,0.28);
    transform: rotate(45deg) translateY(2px);
}

.srm-faq .srm-faq-item.is-open .srm-faq__icon svg {
    stroke: var(--srm-white);
}

.srm-faq .srm-faq__body {
    display: block;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition:
        max-height 0.5s var(--srm-ease),
        opacity 0.3s var(--srm-ease);
}

.srm-faq .srm-faq-item.is-open .srm-faq__body {
    opacity: 1;
}

.srm-faq .srm-faq__body-inner {
    display: grid;
    gap: 10px;
    overflow: visible;
    padding: 0 18px 18px;
    font-size: 14px;
    line-height: 1.58;
    color: var(--srm-muted);
}

.srm-faq .srm-faq__body-inner > p,
.srm-faq .srm-faq__answer-tags,
.srm-faq .srm-faq__answer-tags .srm-tag {
    opacity: 0;
    filter: blur(4px);
    transform: translate3d(0, 12px, 0);
    transition:
        opacity 0.28s ease,
        transform 0.42s var(--srm-ease-soft),
        filter 0.32s ease;
    /* will-change removed */
}

.srm-faq .srm-faq-item.is-open .srm-faq__body-inner > p {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.08s;
}

.srm-faq .srm-faq-item.is-open .srm-faq__answer-tags {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.14s;
}

.srm-faq .srm-faq-item.is-open .srm-faq__answer-tags .srm-tag:nth-child(1) {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.18s;
}

.srm-faq .srm-faq-item.is-open .srm-faq__answer-tags .srm-tag:nth-child(2) {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.23s;
}

.srm-faq .srm-faq-item.is-open .srm-faq__answer-tags .srm-tag:nth-child(3) {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.28s;
}

.srm-faq .srm-faq-item.is-open .srm-faq__answer-tags .srm-tag:nth-child(4) {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition-delay: 0.33s;
}

.srm-faq .srm-faq__body-inner::before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    margin-bottom: 2px;
    background: linear-gradient(90deg, rgba(228,228,238,0), rgba(228,228,238,1) 18%, rgba(228,228,238,1) 82%, rgba(228,228,238,0));
}

.srm-faq__answer-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.srm-faq__micro-cta {
    display: grid;
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    margin-top: 4px;
    padding: 16px 18px;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(250,213,203,0.38), rgba(255,255,255,0.96));
    border: 1px solid rgba(232,105,74,0.16);
    box-shadow: 0 18px 36px rgba(30,30,46,0.06);
}

.srm-faq__micro-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    color: var(--srm-coral-dark);
    white-space: nowrap;
}

.srm-faq__micro-link:hover {
    color: var(--srm-coral);
}

.srm-related {
    background:
        radial-gradient(circle at 10% 0%, rgba(139,123,181,0.14), transparent 24%),
        linear-gradient(180deg, #f5f1fb 0%, #fbf9ff 100%);
    position: relative;
    overflow: hidden;
}

.srm-related__blob {
    width: 520px;
    height: 520px;
    top: -140px;
    right: -120px;
    background: rgba(139,123,181,0.15);
}

.srm-related__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: end;
    margin-bottom: var(--srm-sp-xl);
}

.srm-related__title {
    margin-bottom: 0;
}

.srm-related__view-all {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-radius: var(--srm-r-pill);
    text-decoration: none;
    color: var(--srm-ink);
    font-size: 14px;
    font-weight: 700;
    border: 1px solid rgba(139,123,181,0.2);
    background: rgba(255,255,255,0.8);
    box-shadow: 0 12px 30px rgba(30,30,46,0.08);
}

.srm-related__grid {
    container-type: inline-size;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.srm-related__card {
    --srm-related-accent: var(--srm-lavender);
    --srm-related-soft: rgba(139,123,181,0.16);
    --srm-related-panel: linear-gradient(160deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.95) 58%, rgba(248,246,255,0.92) 100%);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 22px 18px;
    border-radius: 24px;
    text-decoration: none;
    color: inherit;
    border: 1px solid rgba(214,210,233,0.9);
    background:
        radial-gradient(circle at 92% 16%, var(--srm-related-soft), transparent 44%),
        var(--srm-related-panel);
    box-shadow:
        0 14px 32px rgba(30,30,46,0.1),
        inset 0 1px 0 rgba(255,255,255,0.7);
    transition:
        transform var(--srm-dur-mid) var(--srm-ease),
        box-shadow var(--srm-dur-mid) var(--srm-ease),
        border-color var(--srm-dur-mid) var(--srm-ease);
}

.srm-related__card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 16px;
    right: 16px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255,255,255,0), var(--srm-related-accent), rgba(255,255,255,0));
    opacity: 0.92;
    pointer-events: none;
}

.srm-related__wash {
    position: absolute;
    inset: auto -12% 56% 46%;
    height: 120px;
    background: radial-gradient(circle, var(--srm-related-soft), transparent 72%);
    transform: scale(0.88);
    transition: transform var(--srm-dur-slow) var(--srm-ease), opacity var(--srm-dur-mid) var(--srm-ease);
    opacity: 0.78;
    pointer-events: none;
    z-index: -1;
}

.srm-related__card:hover {
    transform: translateY(-6px);
    border-color: var(--srm-related-accent);
    box-shadow:
        0 22px 44px rgba(30,30,46,0.16),
        inset 0 1px 0 rgba(255,255,255,0.78);
}

.srm-related__card:hover .srm-related__wash {
    transform: scale(1.06);
    opacity: 1;
}

.srm-related__card--coral {
    --srm-related-accent: var(--srm-coral);
    --srm-related-soft: rgba(232,105,74,0.18);
    --srm-related-panel: linear-gradient(162deg, #fff9f7 0%, #fff3ee 54%, #fff9f5 100%);
}

.srm-related__card--green {
    --srm-related-accent: var(--srm-green);
    --srm-related-soft: rgba(106,158,114,0.18);
    --srm-related-panel: linear-gradient(162deg, #f7fcf8 0%, #edf7ef 54%, #f8fcf8 100%);
}

.srm-related__card--lavender {
    --srm-related-accent: var(--srm-lavender);
    --srm-related-soft: rgba(139,123,181,0.18);
    --srm-related-panel: linear-gradient(162deg, #f9f8ff 0%, #f1eefc 54%, #faf9ff 100%);
}

.srm-related__card--mustard {
    --srm-related-accent: var(--srm-mustard);
    --srm-related-soft: rgba(200,168,75,0.2);
    --srm-related-panel: linear-gradient(162deg, #fffbf2 0%, #f8f0d9 54%, #fffcf5 100%);
}

.srm-related__card-top {
    display: flex;
    align-items: center;
    gap: 12px;
}

.srm-related__card .srm-icon-wrap--md {
    width: 50px;
    height: 50px;
    box-shadow: 0 10px 22px rgba(30,30,46,0.1);
}

.srm-related__kicker {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--srm-subtle);
}

.srm-related__card-body {
    display: grid;
    gap: 10px;
}

.srm-related__card-body .srm-h4 {
    line-height: 1.28;
}

.srm-related__card-body .srm-body {
    line-height: 1.6;
    max-height: 8em;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.srm-related__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.srm-related__chips .srm-tag {
    padding: 3px 11px;
    font-size: 11px;
}

.srm-related__card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: auto;
    padding-top: 2px;
    font-size: 13px;
    font-weight: 700;
    color: var(--srm-ink);
}

.srm-related__card-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    margin-top: 0;
    border-radius: 14px;
    background: rgba(255,255,255,0.84);
    border: 1px solid rgba(228,228,238,0.9);
    box-shadow: 0 10px 22px rgba(30,30,46,0.08);
    line-height: 0;
}

.srm-related__card-arrow svg {
    display: block;
    width: 14px;
    height: 14px;
    stroke: var(--srm-ink);
}

.srm-related__card:hover .srm-related__card-arrow {
    background: var(--srm-related-accent);
    border-color: transparent;
    transform: translateX(6px);
}

.srm-related__card:hover .srm-related__card-arrow svg {
    stroke: var(--srm-white);
}

.srm-cta {
    background:
        radial-gradient(circle at top right, rgba(232,105,74,0.16), transparent 28%),
        radial-gradient(circle at bottom left, rgba(200,168,75,0.12), transparent 26%),
        linear-gradient(135deg, #1b1730 0%, #2a2140 42%, #234038 100%);
    text-align: left;
    position: relative;
    overflow: hidden;
}

.srm-cta .srm-section__inner {
    padding-top: clamp(92px, 10vw, 128px);
    padding-bottom: clamp(92px, 10vw, 128px);
}

.srm-cta__shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
    gap: 24px;
    align-items: stretch;
}

.srm-cta__content,
.srm-cta__panel,
.srm-cta__contact-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: 0 24px 64px rgba(9,11,22,0.28);
    backdrop-filter: blur(8px) saturate(130%);
}

.srm-cta__content {
    align-items: flex-start;
    text-align: left;
    gap: 16px;
    max-width: none;
    margin: 0;
    min-height: 100%;
    padding: 36px;
    border-radius: 34px;
    background: linear-gradient(160deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05));
}

.srm-cta__content::before,
.srm-cta__panel::before,
.srm-cta__contact-card::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(255,255,255,0.08), transparent 45%);
}

.srm-cta__content::after,
.srm-cta__panel::after {
    content: '';
    position: absolute;
    left: 28px;
    right: 28px;
    top: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255,255,255,0), var(--srm-coral), var(--srm-mustard), var(--srm-green), rgba(255,255,255,0));
    background-size: 200% 100%;
    animation: srm-gradient-slide 12s linear infinite;
    opacity: 0.82;
    pointer-events: none;
}

.srm-cta__topline {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.srm-cta__eyebrow {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.64);
    opacity: 0.001;
    transform: translate3d(0, 16px, 0);
    filter: blur(4px);
    transition:
        opacity 0.5s ease-out,
        transform 0.78s var(--srm-ease-soft),
        filter 0.5s ease-out,
        letter-spacing 0.88s cubic-bezier(0.16, 1, 0.3, 1);
}

.srm-cta__script {
    color: var(--srm-mustard-light);
    font-size: clamp(18px, 1.9vw, 26px);
    line-height: 1.04;
}

.srm-cta__title {
    font-size: clamp(24px, 2.5vw, 36px);
    line-height: 1.06;
    max-width: 14ch;
    margin: 4px 0 6px;
}

.srm-cta__desc {
    max-width: 58ch;
    line-height: 1.55;
    color: rgba(255,255,255,0.74);
}

.srm-cta__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 8px;
    margin-bottom: 8px;
}

.srm-cta__btn {
    min-width: 204px;
}

.srm-cta__btn--primary {
    box-shadow: 0 16px 34px rgba(232,105,74,0.32);
}

.srm-cta__btn--secondary {
    color: rgba(255,255,255,0.92);
    background: rgba(255,255,255,0.06);
    border-color: rgba(255,255,255,0.18);
}

.srm-cta__btn--secondary:hover {
    background: rgba(255,255,255,0.14);
    border-color: rgba(255,255,255,0.28);
}

.srm-cta__notes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    margin-top: 14px;
}

.srm-cta__note {
    display: grid;
    gap: 6px;
    min-height: 100%;
    padding: 16px 18px;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05));
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.12),
        0 16px 32px rgba(9,11,22,0.16);
    backdrop-filter: blur(8px) saturate(130%);
}

.srm-cta__note strong {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.62);
}

.srm-cta__note span {
    color: rgba(255,255,255,0.9);
    line-height: 1.6;
}

.srm-cta__aside {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 100%;
}

.srm-cta__panel {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 24px;
    border-radius: 30px;
    background: linear-gradient(160deg, rgba(13,18,32,0.42), rgba(255,255,255,0.04));
}

.srm-cta__steps {
    display: grid;
    gap: 14px;
    margin-top: 14px;
}

.srm-cta__step {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 14px 16px;
    border-top: none;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,0.14);
    background: linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.1),
        0 16px 34px rgba(9,11,22,0.18);
    backdrop-filter: blur(8px) saturate(130%);
}

.srm-cta__step:first-child {
    padding-top: 14px;
}

.srm-cta__step-no {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: rgba(200,168,75,0.18);
    color: var(--srm-mustard-light);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.srm-cta__panel .srm-h4,
.srm-cta__panel .srm-body,
.srm-cta__contact-card .srm-caption,
.srm-cta__contact-link {
    color: var(--srm-white);
}

.srm-cta__panel .srm-body {
    color: rgba(255,255,255,0.72);
}

.srm-cta__contact-card {
    display: grid;
    gap: 10px;
    margin-top: auto;
    padding: 20px 22px;
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.1),
        0 20px 40px rgba(9,11,22,0.18);
}

.srm-cta__contact-link {
    display: inline-flex;
    width: fit-content;
    text-decoration: none;
    font-family: var(--srm-font-title);
    font-size: clamp(20px, 2vw, 24px);
    letter-spacing: -0.02em;
}

.srm-cta__contact-link:hover {
    color: var(--srm-mustard-light);
}

.srm-cta.is-active .srm-cta__content,
.srm-cta.is-active .srm-cta__panel,
.srm-cta.is-active .srm-cta__contact-card {
    box-shadow: 0 26px 72px rgba(9,11,22,0.34);
}

/* â”€â”€ Floating nav breadcrumb â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.srm-breadcrumb {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    background: var(--srm-white);
    border: 1px solid var(--srm-border);
    border-radius: var(--srm-r-pill);
    width: fit-content;
    box-shadow: var(--srm-shadow-sm);
    font-size: 12px;
    font-weight: 500;
    color: var(--srm-muted);
    text-decoration: none;
    margin-bottom: var(--srm-sp-xl);
}

.srm-breadcrumb__sep {
    color: var(--srm-border);
}

.srm-breadcrumb a {
    color: inherit;
    text-decoration: none;
    transition: color var(--srm-dur-fast);
}

.srm-breadcrumb a:hover {
    color: var(--srm-ink);
}

.srm-breadcrumb__current {
    color: var(--srm-ink);
    font-weight: 600;
}

/* â”€â”€ Section Title block â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.srm-section-title {
    position: relative;
    margin-bottom: var(--srm-sp-xl);
}

.srm-section-title--center {
    position: relative;
    text-align: center;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--srm-sp-xl);
}

.srm-section-title .srm-lead {
    margin-top: var(--srm-sp-sm);
}

/* Page-wide polish */
.srm-section:not(.srm-hero)::before {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    height: clamp(52px, 7vw, 88px);
    background: linear-gradient(180deg, rgba(255,255,255,0.36), rgba(255,255,255,0));
    pointer-events: none;
    z-index: 0;
}

.srm-benefits::before,
.srm-cta::before {
    background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0));
}

.srm-section__inner > * {
    position: relative;
    z-index: 1;
}

.srm-section-title,
.srm-section-title--center {
    display: grid;
    gap: 12px;
    position: relative;
}

.srm-section-title .srm-lead,
.srm-section-title--center .srm-lead {
    max-width: 60ch;
}

.srm-section-title--center {
    justify-items: center;
}

.srm-section-title::before,
.srm-section-title--center::before,
.srm-what__header::before,
.srm-support__header > div:first-child::before,
.srm-who__header-left::before {
    content: '';
    position: absolute;
    width: 82px;
    height: 40px;
    pointer-events: none;
    background:
        radial-gradient(circle at 12px 16px, var(--srm-coral) 0 4px, transparent 5px),
        radial-gradient(circle at 34px 10px, var(--srm-mustard) 0 4px, transparent 5px),
        radial-gradient(circle at 52px 22px, var(--srm-green) 0 4px, transparent 5px),
        radial-gradient(circle at 70px 12px, var(--srm-lavender) 0 4px, transparent 5px),
        radial-gradient(circle at 44px 32px, var(--srm-coral-light) 0 3px, transparent 4px);
    opacity: 0.82;
    filter: drop-shadow(0 8px 16px rgba(30,30,46,0.08));
    animation: srm-dot-cluster-float 9s ease-in-out infinite alternate;
}

.srm-section-title::before,
.srm-support__header > div:first-child::before,
.srm-who__header-left::before {
    top: -12px;
    right: clamp(8px, 2vw, 20px);
}

.srm-section-title--center::before {
    top: -10px;
    right: clamp(24px, 8%, 56px);
}

.srm-what__header::before {
    top: -16px;
    right: 22px;
}

@keyframes srm-dot-cluster-float {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(6px, -4px, 0);
    }
}

.srm-support__header,
.srm-goals__intro,
.srm-benefits__feature,
.srm-cta__notes,
.srm-what__prose-body {
    position: relative;
}

.srm-support__header > div:first-child,
.srm-who__header-left {
    position: relative;
}

.srm-support__header::after,
.srm-goals__intro::after,
.srm-what__prose-body::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -14px;
    width: min(180px, 38%);
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green), rgba(139,123,181,0));
    background-size: 200% 100%;
    animation: srm-gradient-slide 10s linear infinite;
    opacity: 0.88;
}

.srm-support__mosaic,
.srm-benefits__cluster,
.srm-scenarios__grid,
.srm-related__grid,
.srm-goals__atlas {
    align-items: stretch;
}

.srm-support__card,
.srm-benefits__card,
.srm-goals__card,
.srm-how__panel,
.srm-related__card {
    height: 100%;
}

.srm-what__prose-body,
.srm-delivers__content,
.srm-goals__intro {
    max-width: 100%;
}

.srm-scenarios__intro-card,
.srm-related__view-all,
.srm-how__tracker,
.srm-goals__milestone {
    transition:
        transform var(--srm-dur-mid) var(--srm-ease-soft),
        box-shadow var(--srm-dur-mid) var(--srm-ease-soft),
        border-color var(--srm-dur-mid) var(--srm-ease-soft);
}

.srm-scenarios__intro-card:hover,
.srm-goals__milestone:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 44px rgba(30,30,46,0.12);
}

.srm-how__tracker:hover {
    transform: none;
    box-shadow: 0 22px 44px rgba(30,30,46,0.12);
}

.srm-faq__micro-cta {
    position: relative;
    overflow: hidden;
}

.srm-faq__micro-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(232,105,74,0.06), transparent 46%, rgba(106,158,114,0.08));
    opacity: 0;
    transition: opacity var(--srm-dur-mid) var(--srm-ease-soft);
    pointer-events: none;
}

.srm-faq__micro-cta:hover::before {
    opacity: 1;
}

.srm-related__view-all:hover {
    transform: translateY(-3px);
    border-color: rgba(139,123,181,0.34);
    box-shadow: 0 18px 36px rgba(30,30,46,0.12);
}

:is(.srm-card, .srm-support__card, .srm-benefits__card, .srm-delivers__pillar, .srm-how__panel, .srm-goals__card, .srm-who__card-main, .srm-who__card-mid, .srm-related__card, .srm-scenarios__card, .srm-faq-item):is(:hover, :focus-within, :focus-visible) {
    transition-timing-function: var(--srm-ease-spring);
}

:is(.srm-support__card, .srm-benefits__card, .srm-delivers__pillar, .srm-how__panel, .srm-goals__card, .srm-who__card-main, .srm-who__card-mid, .srm-related__card) {
    position: relative;
    isolation: isolate;
}
/* card-edge-sweep rotating conic-gradient removed â€” continuous rotation was very GPU heavy */

@media (hover: hover) and (pointer: fine) {
    [data-srm-tilt] {
        cursor: grab;
    }

    [data-srm-tilt]:active {
        cursor: grabbing;
    }
}

.srm-cta__step,
.srm-cta__note,
.srm-cta__contact-card {
    opacity: 0.82;
    transform: translateY(12px);
    transition:
        transform var(--srm-dur-mid) var(--srm-ease-soft),
        opacity var(--srm-dur-mid) var(--srm-ease-soft),
        box-shadow var(--srm-dur-mid) var(--srm-ease-soft);
}

.srm-cta.is-active .srm-cta__step,
.srm-cta.is-active .srm-cta__note,
.srm-cta.is-active .srm-cta__contact-card {
    opacity: 1;
    transform: none;
}

.srm-cta.is-active .srm-cta__step:nth-child(2),
.srm-cta.is-active .srm-cta__note:nth-child(2) {
    transition-delay: 0.08s;
}

.srm-cta.is-active .srm-cta__step:nth-child(3),
.srm-cta.is-active .srm-cta__note:nth-child(3) {
    transition-delay: 0.16s;
}

/* â”€â”€ NDIS chip â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.srm-ndis-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(135deg, var(--srm-green-light), var(--srm-mustard-light));
    border: 1px solid rgba(106,158,114,0.2);
    border-radius: var(--srm-r-pill);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--srm-green-dark);
}

/* â”€â”€ Parallax image wrapper â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.srm-parallax-wrap {
    overflow: hidden;
    border-radius: var(--srm-r-lg);
}

.srm-parallax-wrap .srm-parallax-img {
    --srm-parallax-y: 0px;
    --srm-parallax-scale: 1.04;
    /* will-change removed */
    transform-origin: center center;
    transform: translate3d(0, var(--srm-parallax-y), 0) scale(var(--srm-parallax-scale));
}

@media (min-width: 1025px) {
    .srm-who .srm-section__inner,
    .srm-benefits .srm-section__inner,
    .srm-goals .srm-section__inner,
    .srm-faq .srm-section__inner,
    .srm-cta .srm-section__inner {
        padding-top: clamp(44px, 4.5vw, 60px);
        padding-bottom: clamp(44px, 4.5vw, 60px);
    }

    .srm-benefits .srm-section__inner {
        padding-bottom: clamp(150px, 15vw, 230px);
    }

    .srm-who .srm-h2,
    .srm-benefits .srm-h2,
    .srm-goals .srm-h2,
    .srm-faq .srm-h2 {
        font-size: clamp(32px, 3.8vw, 52px);
        line-height: 1.04;
    }

    .srm-who .srm-lead,
    .srm-benefits .srm-lead,
    .srm-goals .srm-lead,
    .srm-faq .srm-lead,
    .srm-who .srm-body,
    .srm-benefits .srm-body,
    .srm-goals .srm-body,
    .srm-faq .srm-body,
    .srm-cta .srm-body,
    .srm-cta__desc {
        line-height: 1.58;
    }

    .srm-who__header {
        gap: 24px;
        margin-bottom: 24px;
    }

    .srm-who__layout {
        gap: 16px;
    }

    .srm-who__card-main {
        padding: 28px 28px;
        gap: 12px;
        border-radius: 34px;
    }

    .srm-who__card-main-content {
        gap: 12px;
    }

    .srm-who__card-main .srm-h3 {
        font-size: clamp(24px, 2.4vw, 36px);
        line-height: 1.14;
    }

    .srm-who__card-stack {
        gap: 12px;
    }

    .srm-who__card-mid {
        padding: 18px 18px;
        gap: 10px;
    }

    .srm-who__reassure {
        margin-top: 16px;
        margin-bottom: 22px;
        padding: 18px;
        gap: 16px;
        grid-template-columns: minmax(0, 1fr) minmax(180px, 240px);
    }

    .srm-who__reassure-icon {
        width: 42px;
        height: 42px;
    }

    .srm-who__reassure-media {
        min-height: 180px;
    }

    .srm-benefits .srm-section-title--center,
    .srm-goals .srm-section-title--center {
        gap: 8px;
        margin-bottom: 28px;
    }

    .srm-benefits__script {
        font-size: clamp(24px, 2.9vw, 42px);
        margin-bottom: -2px;
    }

    .srm-benefits .srm-section-title--center .srm-lead,
    .srm-goals .srm-section-title--center .srm-lead {
        margin-top: 10px;
        max-width: 54ch;
    }

    .srm-benefits__layout {
        gap: 14px;
    }

    .srm-benefits__feature {
        padding: 24px 24px;
        gap: 14px;
        border-radius: 32px;
    }

    .srm-benefits__feature .srm-mt-sm.srm-h3,
    .srm-benefits__feature .srm-h3 {
        margin-top: 10px;
        font-size: clamp(24px, 2.3vw, 34px);
        line-height: 1.14;
    }

    .srm-benefits__meters {
        gap: 10px;
        margin-top: 0;
    }

    .srm-benefits__meter {
        gap: 6px;
    }

    .srm-benefits__meter-track {
        height: 8px;
    }

    .srm-benefits__quote {
        padding: 14px 16px;
    }

    .srm-benefits__cluster {
        gap: 14px;
    }

    .srm-benefits__card {
        padding: 20px 20px;
        gap: 10px;
        min-height: 180px;
    }

    .srm-benefits__mini-stat strong {
        font-size: clamp(16px, 1.6vw, 20px);
    }

    .srm-benefits__mini-stat span {
        font-size: 12px;
        line-height: 1.45;
    }

    .srm-goals__layout {
        gap: 14px;
    }

    .srm-goals__intro {
        padding: 22px 22px;
    }

    .srm-goals__intro .srm-mt-sm.srm-h3,
    .srm-goals__intro .srm-h3 {
        margin-top: 12px;
        font-size: clamp(24px, 2.3vw, 34px);
        line-height: 1.16;
    }

    .srm-goals__intro .srm-body.srm-mt-sm,
    .srm-goals__compass .srm-mt-sm {
        margin-top: 10px;
    }

    .srm-goals__intro .srm-mt-lg,
    .srm-goals__compass .srm-mt-md {
        margin-top: 16px;
    }

    .srm-goals__milestones {
        gap: 8px;
    }

    .srm-goals__milestone {
        padding: 12px 14px;
        gap: 4px;
    }

    .srm-goals__milestone strong {
        font-size: clamp(17px, 1.6vw, 22px);
        line-height: 1.18;
    }

    .srm-goals__chip-cloud {
        gap: 8px;
        padding-top: 14px;
    }

    .srm-goals__atlas {
        gap: 14px;
    }

    .srm-goals__card,
    .srm-goals__compass {
        padding: 20px 18px;
        min-height: 186px;
    }

    .srm-goals__card {
        gap: 10px;
    }

    .srm-goals__compass {
        gap: 14px;
    }

    .srm-goals__progress-chip {
        gap: 4px;
        padding-top: 2px;
    }

    .srm-faq__layout {
        grid-template-columns: minmax(360px, 400px) minmax(0, 1fr);
        gap: 16px;
        align-items: stretch;
    }

    .srm-faq__aside {
        top: auto;
        padding: 22px 20px;
        gap: 14px;
        border-radius: 26px;
    }

    .srm-faq__aside .srm-mt-sm.srm-h2,
    .srm-faq__aside .srm-h2 {
        margin-top: 8px;
    }

    .srm-faq__aside .srm-mt-sm.srm-lead,
    .srm-faq__aside .srm-lead {
        margin-top: 12px;
    }

    .srm-faq__aside-card {
        gap: 7px;
        padding: 14px 16px;
        border-radius: 20px;
    }

    .srm-faq__contact {
        gap: 8px;
    }

    .srm-faq__contact-btn {
        min-height: 44px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .srm-faq__main {
        gap: 10px;
    }

    .srm-faq__stack {
        gap: 9px;
    }

    .srm-faq .srm-faq-item {
        border-radius: 22px;
    }

    .srm-faq .srm-faq__trigger {
        padding: 15px 16px 13px;
        gap: 12px;
    }

    .srm-faq__trigger-copy {
        gap: 7px;
    }

    .srm-faq__kicker {
        padding: 6px 11px;
    }

    .srm-faq__question {
        font-size: clamp(15px, 1.15vw, 17px);
        line-height: 1.26;
    }

    .srm-faq .srm-faq__icon {
        width: 38px;
        height: 38px;
        border-radius: 14px;
    }

    .srm-faq .srm-faq__body-inner {
        gap: 8px;
        padding: 0 16px 14px;
        font-size: 14px;
        line-height: 1.52;
    }

    .srm-faq__answer-tags {
        gap: 7px;
    }

    .srm-faq__micro-cta {
        grid-template-columns: minmax(0, 0.68fr) minmax(0, 1fr) auto;
        gap: 12px;
        padding: 14px 16px;
        border-radius: 22px;
    }

    .srm-faq__micro-link {
        font-size: 13px;
    }

    .srm-cta .srm-section__inner {
        padding-top: clamp(52px, 5vw, 72px);
        padding-bottom: clamp(52px, 5vw, 72px);
    }

    .srm-cta__shell {
        gap: 18px;
    }

    .srm-cta__content {
        gap: 14px;
        padding: 30px;
        border-radius: 30px;
    }

    .srm-cta__topline {
        gap: 10px;
    }

    .srm-cta__stars svg {
        width: 16px;
        height: 16px;
    }

    .srm-cta__script {
        font-size: clamp(18px, 1.9vw, 26px);
        line-height: 1.04;
    }

    .srm-cta__title {
        font-size: clamp(24px, 2.5vw, 36px);
        line-height: 1.06;
        max-width: 14ch;
    }

    .srm-cta__desc {
        max-width: 46ch;
        font-size: 15px;
    }

    .srm-cta__actions {
        gap: 12px;
    }

    .srm-cta__btn {
        min-width: 190px;
    }

    .srm-cta__btn.srm-btn--lg {
        padding: 14px 26px;
        font-size: 15px;
    }

    .srm-cta__notes {
        gap: 10px;
    }

    .srm-cta__note {
        padding: 14px 14px;
        border-radius: 18px;
    }

    .srm-cta__aside {
        gap: 14px;
    }

    .srm-cta__panel {
        padding: 22px;
        border-radius: 26px;
    }

    .srm-cta__steps {
        gap: 12px;
        margin-top: 16px;
    }

    .srm-cta__step {
        gap: 12px;
        padding: 14px 0;
    }

    .srm-cta__step-no {
        width: 36px;
        height: 36px;
        border-radius: 12px;
        font-size: 12px;
    }

    .srm-cta__contact-card {
        padding: 18px 22px;
        border-radius: 20px;
    }

    .srm-cta__contact-link {
        font-size: clamp(18px, 1.6vw, 22px);
    }
}

html.srm-lenis,
html.srm-lenis body {
    height: auto;
    scroll-behavior: auto !important;
}

.srm-side-nav {
    gap: 8px;
    padding: 16px 11px;
}

.srm-side-nav__label {
    font-size: 9px;
    letter-spacing: 0.14em;
}

/* Custom cursor removed â€” native pointer used */
.srm-cursor { display: none !important; }

.srm-impact {
    position: relative;
    background:
        radial-gradient(circle at 12% 18%, rgba(232,105,74,0.08), transparent 24%),
        radial-gradient(circle at 84% 14%, rgba(200,168,75,0.1), transparent 22%),
        linear-gradient(180deg, rgba(255,255,255,0.94), rgba(252,248,243,0.94));
    overflow: hidden;
}

.srm-impact::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: linear-gradient(90deg, rgba(232,105,74,0), rgba(232,105,74,0.7), rgba(200,168,75,0.74), rgba(106,158,114,0.76), rgba(139,123,181,0));
    background-size: 200% 100%;
    animation: srm-gradient-slide 10s linear infinite;
    opacity: 0.88;
}

.srm-impact__header {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
    gap: 28px;
    align-items: end;
    margin-bottom: clamp(26px, 4vw, 40px);
}

.srm-impact__aside {
    position: relative;
    padding: 28px 28px 24px;
    border-radius: 28px;
    background: rgba(255,255,255,0.74);
    border: 1px solid rgba(228,228,238,0.86);
    box-shadow: 0 24px 54px rgba(30,30,46,0.1);
    backdrop-filter: blur(8px) saturate(140%);
}

.srm-impact__aside::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    border-radius: 28px 0 0 28px;
    background: linear-gradient(180deg, var(--srm-coral), var(--srm-mustard), var(--srm-green));
}

.srm-impact__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.srm-impact__card {
    --srm-impact-accent: var(--srm-coral);
    --srm-impact-border: rgba(64,74,98,0.44);
    --srm-impact-border-hover: rgba(56,66,92,0.68);
    position: relative;
    min-height: 230px;
    padding: 26px 24px;
    border-radius: 30px;
    border: 2px solid var(--srm-impact-border);
    overflow: hidden;
    box-shadow: 0 24px 52px rgba(30,30,46,0.09);
    transition:
        transform var(--srm-dur-mid) var(--srm-ease-spring),
        box-shadow var(--srm-dur-mid) var(--srm-ease-spring),
        border-color var(--srm-dur-mid) var(--srm-ease-spring);
}

.srm-impact__card::before,
.srm-impact__card::after {
    content: '';
    position: absolute;
    pointer-events: none;
}

.srm-impact__card::before {
    inset: 0;
    background:
        radial-gradient(circle at top right, rgba(255,255,255,0.44), transparent 32%),
        linear-gradient(155deg, rgba(255,255,255,0.76), rgba(255,255,255,0.34));
}

.srm-impact__card::after {
    top: 18px;
    left: 24px;
    right: 24px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--srm-impact-accent), rgba(255,255,255,0));
    opacity: 0.88;
}

.srm-impact__card:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 62px rgba(30,30,46,0.12);
    border-color: var(--srm-impact-border-hover);
}

.srm-impact__card > * {
    position: relative;
    z-index: 1;
}

.srm-impact__card--coral {
    --srm-impact-accent: var(--srm-coral);
    --srm-impact-border: rgba(192,66,31,0.52);
    --srm-impact-border-hover: rgba(192,66,31,0.78);
    background: linear-gradient(180deg, rgba(250,213,203,0.86), rgba(255,255,255,0.92));
}

.srm-impact__card--mustard {
    --srm-impact-accent: var(--srm-mustard);
    --srm-impact-border: rgba(154,123,42,0.54);
    --srm-impact-border-hover: rgba(154,123,42,0.78);
    background: linear-gradient(180deg, rgba(240,228,176,0.84), rgba(255,255,255,0.92));
}

.srm-impact__card--green {
    --srm-impact-accent: var(--srm-green);
    --srm-impact-border: rgba(61,107,68,0.5);
    --srm-impact-border-hover: rgba(61,107,68,0.74);
    background: linear-gradient(180deg, rgba(205,229,207,0.9), rgba(255,255,255,0.92));
}

.srm-impact__card--ink {
    --srm-impact-accent: var(--srm-lavender);
    --srm-impact-border: rgba(90,74,138,0.62);
    --srm-impact-border-hover: rgba(90,74,138,0.86);
    background:
        radial-gradient(circle at top right, rgba(139,123,181,0.18), transparent 26%),
        linear-gradient(180deg, rgba(30,30,46,0.98), rgba(36,39,58,0.96));
    color: var(--srm-white);
}

.srm-impact__value {
    display: block;
    font-family: var(--srm-font-title);
    font-size: clamp(1.35rem, 2vw, 2.2rem) !important;
    line-height: 1 !important;
    letter-spacing: -0.04em;
    font-variation-settings: 'wght' 620;
}

.srm-impact__value > span {
    font-size: inherit !important;
    line-height: inherit !important;
}

.srm-impact__label {
    max-width: 20ch;
    margin-top: 22px;
    color: var(--srm-ink-soft);
    font-size: 15px;
    line-height: 1.7;
}

.srm-impact__card--ink .srm-impact__label {
    color: rgba(255,255,255,0.76);
}

.srm-marquee {
    position: relative;
    overflow: hidden;
    padding: 16px 0;
    background:
        linear-gradient(90deg, rgba(30,30,46,0.96), rgba(51,44,73,0.94)),
        linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green), var(--srm-lavender));
    border-top: 1px solid rgba(255,255,255,0.08);
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.srm-marquee::before,
.srm-marquee::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: clamp(48px, 8vw, 110px);
    z-index: 1;
    pointer-events: none;
}

.srm-marquee::before {
    left: 0;
    background: linear-gradient(90deg, rgba(30,30,46,0.98), rgba(30,30,46,0));
}

.srm-marquee::after {
    right: 0;
    background: linear-gradient(270deg, rgba(41,37,58,0.98), rgba(41,37,58,0));
}

.srm-marquee__viewport {
    overflow: hidden;
}

.srm-marquee__track {
    display: flex;
    align-items: center;
    gap: 28px;
    width: max-content;
    padding-inline: 24px;
    animation: srm-marquee-scroll 28s linear infinite;
}

.srm-marquee__track span {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 28px;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.84);
}

.srm-marquee__track span::after {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--srm-coral), var(--srm-mustard));
    box-shadow: 0 0 18px rgba(232,105,74,0.28);
}

@keyframes srm-marquee-scroll {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-50%, 0, 0);
    }
}

/* Homepage footer transplant */
.site-footer {
  background: #0A3322;
  padding: 64px max(32px, 5vw) 0;
}
.footer-main {
  display: flex;
  gap: 64px;
  padding-bottom: 52px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.footer-brand {
  flex: 0 0 260px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.footer-wordmark {
  display: flex;
  flex-direction: column;
  font-family: "Fraunces", serif;
  font-style: italic;
  font-weight: 600;
  font-size: 18px;
  color: #CFE6D1;
  line-height: 0.94;
  letter-spacing: -0.02em;
}
.footer-wordmark span { color: #F5C842; }
.footer-wordmark small { font-size: 0.82em; color: #CFE6D1; }
.footer-tagline {
  font-family: "Inter", sans-serif;
  font-size: 0.85rem;
  color: #7aac8e;
  line-height: 1.6;
  max-width: 220px;
}
.footer-phone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: "Inter", sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  color: #F5C842;
  text-decoration: none;
  transition: opacity 0.15s;
}
.footer-phone:hover { opacity: 0.8; }
.footer-wel-image {
  display: block;
  width: 100%;
  max-width: 180px;
  height: auto;
  margin-top: 10px;
  border-radius: 10px;
}
.footer-cols {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.footer-col-title {
  font-family: "Inter", sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #A5CDB3;
  margin-bottom: 16px;
}
.footer-col ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-col ul a {
  font-family: "Inter", sans-serif;
  font-size: 0.88rem;
  color: #CFE6D1;
  text-decoration: none;
  transition: color 0.15s;
}
.footer-col ul a:hover { color: #ffffff; }
.footer-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  padding: 20px 0 24px;
  gap: 16px;
}
.footer-bottom p {
  font-family: "Inter", sans-serif;
  font-size: 0.78rem;
  color: #587a68;
  margin: 0;
}
.footer-bottom > p { justify-self: start; }
.footer-credit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: "Inter", sans-serif;
  font-size: 0.8rem;
  font-weight: 600;
  color: #7b9b8a;
  white-space: nowrap;
}
.footer-credit-link {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
.footer-credit-heart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ff5a79;
  font-size: 0.95rem;
  line-height: 1;
  animation: footer-heart-pump 1.3s ease-in-out infinite;
  transform-origin: center;
}
.footer-credit-brand {
  height: 15px;
  width: auto;
  display: block;
}
.footer-credit-link:hover .footer-credit-brand {
  opacity: 0.9;
}
.footer-bottom-links {
  display: flex;
  align-items: center;
  gap: 4px;
  justify-self: end;
}
.footer-legal-btn {
  background: none;
  border: none;
  display: inline-block;
  font-family: "Inter", sans-serif;
  font-size: 0.78rem;
  color: #587a68;
  cursor: pointer;
  padding: 4px 10px;
  border-radius: 4px;
  transition: color 0.15s, background 0.15s;
}
.footer-legal-btn:hover {
  color: #CFE6D1;
  background: rgba(255,255,255,0.05);
}
@keyframes footer-heart-pump {
  0%, 100% { transform: scale(1); }
  18% { transform: scale(1.16); }
  36% { transform: scale(0.98); }
  54% { transform: scale(1.13); }
}
@media (max-width: 900px) {
  .site-footer {
    padding: 48px max(20px, 6vw) 0;
  }
  .footer-main {
    flex-direction: column;
    gap: 28px;
    padding-bottom: 36px;
  }
  .footer-brand {
    flex: none;
    gap: 12px;
  }
  .footer-tagline {
    max-width: 320px;
  }
  .footer-wel-image {
    max-width: 150px;
    margin-top: 4px;
  }
  .footer-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
  .footer-bottom {
    padding: 18px 0 20px;
  }
}
@media (max-width: 600px) {
  .site-footer {
    padding: 28px 16px 0;
  }
  .footer-main {
    gap: 16px;
    padding-bottom: 18px;
  }
  .footer-brand {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 14px;
    row-gap: 8px;
    align-items: start;
  }
  .footer-logo {
    grid-column: 1;
    grid-row: 1;
  }
  .footer-tagline {
    grid-column: 1;
    grid-row: 2;
    max-width: none;
    font-size: 0.82rem;
    line-height: 1.4;
  }
  .footer-wel-image {
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: end;
    max-width: 104px;
    margin-top: 0;
  }
  .footer-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
  }
  .footer-col:last-child {
    grid-column: 1 / -1;
  }
  .footer-col-title {
    margin-bottom: 8px;
  }
  .footer-col ul {
    gap: 5px;
  }
  .footer-col ul a {
    font-size: 0.84rem;
    line-height: 1.35;
  }
  .footer-bottom {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    padding: 14px 0 16px;
    gap: 6px;
  }
  .footer-bottom p,
  .footer-credit,
  .footer-legal-btn {
    font-size: 0.74rem;
  }
  .footer-bottom > p,
  .footer-bottom-links { justify-self: center; }
  .footer-credit {
    gap: 5px;
    margin: 0;
  }
  .footer-credit-brand {
    height: 13px;
  }
  .footer-credit-heart {
    font-size: 0.82rem;
  }
  .footer-bottom-links {
    gap: 0;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 0;
  }
  .footer-legal-btn {
    padding: 3px 8px;
  }
}
@media (max-width: 480px) {
  .site-footer {
    padding: 24px 14px 0;
  }
  .footer-main {
    gap: 14px;
    padding-bottom: 16px;
  }
  .footer-cols {
    gap: 10px 12px;
  }
}

.slc-mobile-cta {
  display: none;
}
@media (max-width: 900px) {
  .slc-mobile-cta {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: min(calc(100% - 24px), 560px);
    z-index: 10050;
    background: #0A3322;
    padding: 12px 14px max(12px, env(safe-area-inset-bottom));
    gap: 12px;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    box-shadow: 0 -4px 24px rgba(10,51,34,0.25);
  }
  .slc-mobile-cta a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    min-width: 0;
    border-radius: 999px;
    font-size: 0.875rem;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    transition: opacity 0.2s;
    white-space: nowrap;
  }
  .slc-mobile-cta a:active {
    opacity: 0.8;
  }
  .slc-mobile-cta .slc-cta-call {
    background: #D4EED5;
    color: #0A3322;
  }
  .slc-mobile-cta .slc-cta-contact {
    background: rgba(255,255,255,0.12);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.25);
  }
  body {
    padding-bottom: 80px;
  }
}

.srm-cookie {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 10015;
    width: min(calc(100% - 32px), 760px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-radius: 28px;
    background: rgba(255,255,255,0.86);
    border: 1px solid rgba(228,228,238,0.9);
    box-shadow: 0 28px 72px rgba(30,30,46,0.16);
    backdrop-filter: blur(20px) saturate(165%);
    transform: translate3d(-50%, 120%, 0);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        transform 0.72s var(--srm-ease-spring),
        opacity 0.28s ease,
        visibility 0s linear 0.72s;
}

.srm-cookie::before {
    content: '';
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 2px;
    background: linear-gradient(90deg, var(--srm-coral), var(--srm-mustard), var(--srm-green), var(--srm-lavender));
    background-size: 200% 100%;
    animation: srm-gradient-slide 9s linear infinite;
}

.srm-cookie.is-cookie-visible {
    transform: translate3d(-50%, 0, 0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.srm-cookie__content {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 6px;
}

.srm-cookie__text {
    color: var(--srm-ink-soft);
    font-size: 14px;
    line-height: 1.65;
}

.srm-cookie__actions {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.srm-cookie__actions .srm-btn {
    min-width: 140px;
}

@media (max-width: 1180px) {
    .srm-impact__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .srm-impact__header {
        grid-template-columns: 1fr;
    }

    .srm-marquee {
        padding: 14px 0;
    }
}

@media (max-width: 767px) {
    .srm-impact__grid {
        grid-template-columns: 1fr;
    }

    .srm-impact__card {
        min-height: 0;
    }

    .srm-marquee__track {
        gap: 18px;
        padding-inline: 18px;
    }

    .srm-marquee__track span {
        gap: 18px;
        font-size: 10px;
        letter-spacing: 0.18em;
    }

    .srm-cookie {
        left: 16px;
        right: 16px;
        bottom: 16px;
        width: auto;
        flex-direction: column;
        align-items: stretch;
        transform: translate3d(0, 120%, 0);
    }

    .srm-cookie.is-cookie-visible {
        transform: translate3d(0, 0, 0);
    }

    .srm-cookie__actions {
        justify-content: flex-start;
    }

    .srm-cookie__actions .srm-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ================================================================
   RESPONSIVE
   ================================================================ */

@media (max-width: 1180px) {
    .srm-side-nav {
        display: none;
    }
}

@media (max-width: 1024px) {
    :root {
        --srm-gutter: 40px;
        --srm-sp-2xl: 80px;
        --srm-sp-3xl: 100px;
    }

    .srm-benefits .srm-section__inner {
        padding-bottom: clamp(96px, 12vw, 140px);
    }

    /* Hero */
    .srm-hero__canvas       { grid-template-columns: 1fr 1fr; gap: 40px; }
    .srm-hero__float-tag--a { display: none; }
    .srm-hero__float-tag--b { top: 14%; right: 2%; }
    .srm-hero__float-tag--c { display: none; }
    .srm-hero__img-secondary { width: 38%; right: -10px; }
    .srm-hero__bg-ring       { width: 460px; height: 460px; right: 0; }
    .srm-hero__bg-dots       { left: 42%; width: 170px; height: 170px; }
    .srm-hero__visual-particles { inset: 8% 0 10% 4%; opacity: 0.62; }

    /* What */
    .srm-what__layout { grid-template-columns: 1fr 1fr; gap: 40px; }

    /* Who */
    .srm-who__header  { grid-template-columns: 1fr; gap: 16px; }
    .srm-who__layout  { grid-template-columns: 1fr 1fr; }

    /* Support */
    .srm-support__header { grid-template-columns: 1fr; gap: 16px; }
    .srm-support__mosaic {
        gap: 18px;
        padding: 8px 40px 24px 0;
    }
    .srm-support__card {
        flex: 0 0 clamp(280px, 34vw, 360px);
        width: clamp(280px, 34vw, 360px);
        min-height: 480px;
    }

    /* Rest */
    .srm-benefits__layout   { grid-template-columns: 1fr; }
    .srm-benefits__cluster  { grid-template-columns: repeat(2, 1fr); }
    .srm-delivers__grid     {
        grid-template-columns: 1fr;
        grid-template-areas:
            "visual"
            "note"
            "content";
    }
    .srm-delivers__visual   { position: relative; top: auto; max-width: none; padding-bottom: 0; }
    .srm-delivers__note {
        position: static;
        left: auto;
        right: auto;
        bottom: auto;
        margin-top: 16px;
    }
    .srm-delivers__float--b { display: none; }
    .srm-delivers__pillars  { grid-template-columns: 1fr; }
    .srm-how__header        { grid-template-columns: 1fr; }
    .srm-how__board         { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .srm-how__panel--mustard,
    .srm-how__panel--coral,
    .srm-how__panel--green,
    .srm-how__panel--lavender { grid-column: span 1; }
    .srm-goals__layout      { grid-template-columns: 1fr; }
    .srm-goals__atlas       { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .srm-related__grid      { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
    :root {
        --srm-gutter: 20px;
        --srm-sp-xl:  40px;
        --srm-sp-2xl: 60px;
        --srm-sp-3xl: 72px;
    }

    .srm-benefits .srm-section__inner {
        padding-bottom: 88px;
    }

    /* Hero â€” single column, compact visual instead of hiding */
    .srm-hero__canvas        { grid-template-columns: 1fr; gap: 28px; }
    .srm-hero__visual        {
        display: block;
        order: -1;
        border-radius: var(--srm-r-lg);
        overflow: hidden;
        max-height: 260px;
        position: relative;
    }
    .srm-hero__visual img,
    .srm-hero__img-primary img { width: 100%; height: 260px; object-fit: cover; display: block; }
    .srm-hero__img-primary::after {
        width: 48%;
    }
    .srm-hero__img-secondary   { display: none; }
    /* Rating card overlay on mobile hero visual */
    .srm-hero__visual .srm-hero__float-tag:first-of-type {
        display: flex;
        position: absolute;
        bottom: 12px;
        left: 12px;
        right: auto;
        top: auto;
        font-size: 11px;
        padding: 6px 10px;
    }
    .srm-hero__float-tag     { display: none; }
    .srm-hero__bg-ring       { display: none; }
    .srm-hero__bg-dots       { display: none; }
    .srm-hero__scroll-hint   { display: none; }
    .srm-hero__trust-row     { flex-wrap: wrap; gap: 8px; }
    .srm-hero__trust-divider { display: none; }
    .srm-hero__headline      { max-width: none; }

    /* What */
    .srm-what__layout    { grid-template-columns: 1fr; }
    .srm-what__feat-pair { grid-template-columns: 1fr 1fr; }
    .srm-what__header    { flex-wrap: wrap; }
    .srm-what__features  { grid-template-rows: auto auto auto; }
    .srm-what__accent-banner {
        grid-template-columns: auto minmax(0, 1fr);
        align-content: start;
    }
    .srm-what__accent-banner .srm-badge { grid-column: 1 / -1; justify-self: start; }

    /* Who */
    .srm-who__header  { grid-template-columns: 1fr; }
    .srm-who__layout  { grid-template-columns: 1fr; }
    .srm-who__card-main { border-radius: var(--srm-r-lg); }
    .srm-who__reassure { grid-template-columns: 1fr; }
    .srm-who__reassure-media {
        min-height: 220px;
        max-width: none;
    }

    /* Support */
    .srm-support__header { grid-template-columns: 1fr; }
    .srm-support__scroll {
        left: 0;
        right: 0;
        width: 100%;
        padding-left: 0;
        margin-left: 0;
        margin-right: 0;
        height: auto;
    }
    .srm-support__scroll-sticky {
        position: static;
        width: 100%;
        height: auto;
        overflow: visible;
    }
    .srm-support__mosaic {
        gap: 12px;
        width: auto;
        padding: 10px var(--srm-gutter) 14px 45px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding-left: 45px;
        scroll-padding-right: var(--srm-gutter);
        scroll-padding-inline-start: 45px;
        scroll-padding-inline-end: var(--srm-gutter);
        -webkit-overflow-scrolling: touch;
        transform: none !important;
    }
    .srm-support__mosaic::-webkit-scrollbar {
        display: none;
    }
    .srm-support__card {
        flex: 0 0 min(88vw, 340px);
        min-height: 420px;
        opacity: 1;
        transform: none;
        scroll-snap-align: start;
    }
    .srm-support__cta-inner { flex-direction: column; align-items: flex-start; }

    /* Rest */
    .srm-benefits__cluster          { grid-template-columns: 1fr; }
    .srm-benefits__card--wide       { grid-column: span 1; }
    .srm-benefits__card--tall       { grid-row: span 1; min-height: 220px; }
    .srm-benefits__cluster {
        grid-template-areas: none;
    }
    .srm-benefits__cluster > .srm-benefits__card--tall,
    .srm-benefits__cluster > .srm-benefits__card--mustard,
    .srm-benefits__cluster > .srm-benefits__card--green,
    .srm-benefits__cluster > .srm-benefits__card--wide {
        grid-area: auto;
    }
    .srm-delivers__grid             {
        grid-template-columns: 1fr;
        grid-template-areas:
            "visual"
            "note"
            "content";
    }
    .srm-delivers__visual           { position: relative; top: auto; padding-bottom: 0; }
    .srm-delivers__pillars          { grid-template-columns: 1fr; }
    .srm-delivers__pillar:nth-child(5) { grid-column: span 1; }
    .srm-delivers__float,
    .srm-delivers__note             { position: static; max-width: none; margin: 14px 0 0; }
    .srm-how__board                 { grid-template-columns: 1fr; }
    .srm-goals__atlas               { grid-template-columns: 1fr; }
    .srm-scenarios__track           { grid-template-columns: 1fr; }
    .srm-faq__layout                { grid-template-columns: 1fr; }
    .srm-faq__aside                 { position: static; }
    .srm-related__grid              { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    .srm-delivers__pillar { padding-left: 52px; }
    .srm-delivers__pillar-no { left: 16px; }
    .srm-what__feat-pair { grid-template-columns: 1fr; }
    .srm-what__accent-banner { grid-template-columns: 1fr; }
    .srm-related__grid   { grid-template-columns: 1fr; }
    .srm-btn--lg         { width: 100%; justify-content: center; }
    .srm-hero__ctas      { flex-direction: column; align-items: flex-start; }
    .srm-hero__participants { width: 100%; }
}

/* â”€â”€ MOBILE-ONLY ENHANCEMENTS (touch / swipe / snap) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Applied only on touch devices (no-hover).
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 767px) and (hover: none) {

    /* â”€â”€ Horizontal swipe carousel: Scenarios â”€â”€ */
    .srm-scenarios__grid {
        display: flex;
        flex-direction: row;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 16px;
        padding-bottom: 12px;
        /* hide scrollbar visually */
        scrollbar-width: none;
    }
    .srm-scenarios__grid::-webkit-scrollbar { display: none; }
    .srm-scenarios__grid > * {
        flex: 0 0 80vw;
        max-width: 320px;
        scroll-snap-align: start;
    }

    /* â”€â”€ Horizontal swipe carousel: Related Services â”€â”€ */
    .srm-related__grid {
        display: flex;
        flex-direction: row;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 14px;
        padding-bottom: 12px;
        scrollbar-width: none;
        grid-template-columns: unset;
    }
    .srm-related__grid::-webkit-scrollbar { display: none; }
    .srm-related__grid > * {
        flex: 0 0 72vw;
        max-width: 280px;
        scroll-snap-align: start;
    }

    /* â”€â”€ Dot indicators for swipe carousels â”€â”€ */
    .srm-scenarios__grid ~ .srm-carousel-dots,
    .srm-related__grid ~ .srm-carousel-dots {
        display: flex;
        justify-content: center;
        gap: 6px;
        margin-top: 12px;
    }
    .srm-carousel-dot {
        width: 6px; height: 6px;
        border-radius: 50%;
        background: var(--srm-border);
        transition: background 0.2s, width 0.2s;
    }
    .srm-carousel-dot.is-active {
        background: var(--srm-coral);
        width: 18px;
        border-radius: 3px;
    }

    /* â”€â”€ Touch long-press glow replaces tilt â”€â”€ */
    [data-srm-tilt] {
        transition: box-shadow 0.2s ease, transform 0.2s ease;
        -webkit-tap-highlight-color: transparent;
    }
    [data-srm-tilt]:active {
        transform: scale(1.02);
        box-shadow:
            0 0 0 2px var(--srm-coral),
            0 8px 28px rgba(232,105,74,0.22);
    }

    /* â”€â”€ FAQ bottom-sheet pattern on mobile â”€â”€ */
    .srm-faq__layout {
        display: block;
    }
    .srm-faq__aside {
        margin-bottom: 24px;
    }
    /* FAQ items open as full-width overlay feel */
    [data-srm-faq-item].is-open {
        position: relative;
        z-index: 10;
        box-shadow: 0 16px 48px rgba(30,30,46,0.18);
    }
}

/* â”€â”€ Hero entrance â€” JS adds .srm-hero--entered â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Content elements have initial transform-opacity state.
   Once JS fires the class, they cascade in with delays.
â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 1024px) {
    .srm-section__inner {
        padding-top: clamp(72px, 8vw, 92px);
        padding-bottom: clamp(72px, 8vw, 92px);
    }

    .srm-scenarios__header {
        grid-template-columns: 1fr;
    }

    .srm-scenarios__intro-card {
        max-width: 560px;
    }

    .srm-scenarios__grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .srm-scenarios__card--feature {
        grid-column: span 6;
    }

    .srm-scenarios__card--feature,
    .srm-scenarios__showcase {
        height: auto;
    }

    .srm-scenarios__showcase {
        grid-column: 1 / -1;
        padding: 0;
        background: none;
        border: none;
        box-shadow: none;
    }

    .srm-scenarios__showcase::before,
    .srm-scenarios__showcase::after {
        display: none;
    }

    .srm-scenarios__showcase-top {
        padding: 0 0 14px;
    }

    .srm-scenarios__showcase-strip {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
        padding: 0;
        scroll-snap-type: none;
    }

    .srm-scenarios__showcase-strip .srm-scenarios__card,
    .srm-scenarios__showcase-strip .srm-scenarios__card--compact,
    .srm-scenarios__showcase-strip .srm-scenarios__card--journal {
        width: auto;
        flex: 1 1 auto;
        height: auto;
    }

    .srm-faq__layout {
        grid-template-columns: 1fr;
    }

    .srm-faq__aside {
        position: static;
    }

    .srm-faq__contact {
        grid-template-columns: 1fr;
    }

    .srm-how__panel {
        min-height: 220px;
    }

    .srm-benefits__feature,
    .srm-goals__intro {
        padding: 30px 26px;
    }

    .srm-delivers__grid {
        gap: 32px;
    }

    .srm-delivers__visual {
        max-width: 520px;
        margin-inline: auto;
    }

    .srm-delivers__pillar.is-story-active {
        transform: none;
    }

    .srm-faq__micro-cta,
    .srm-related__header,
    .srm-cta__shell {
        grid-template-columns: 1fr;
    }

    .srm-related__header {
        align-items: start;
    }

    .srm-related__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .srm-cta__notes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .srm-section__inner {
        padding-top: 64px;
        padding-bottom: 64px;
    }

    .srm-scenarios__grid {
        grid-template-columns: 1fr;
    }

    .srm-scenarios__card--feature {
        grid-column: span 1;
    }

    .srm-scenarios__showcase-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding-bottom: 12px;
    }

    .srm-scenarios__showcase-strip {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .srm-scenarios__content {
        padding: 24px;
    }

    .srm-scenarios__journal-top {
        padding: 24px 24px 0;
    }

    .srm-scenarios__card--journal .srm-h4,
    .srm-scenarios__card--journal .srm-body,
    .srm-scenarios__card--journal .srm-scenarios__tags {
        padding-left: 24px;
        padding-right: 24px;
    }

    .srm-scenarios__journal-strip {
        grid-template-columns: 1fr;
        padding-left: 24px;
        padding-right: 24px;
    }

    .srm-faq__aside,
    .srm-cta__content,
    .srm-cta__panel {
        padding: 28px 24px;
    }

    .srm-section-title,
    .srm-section-title--center {
        margin-bottom: 32px;
    }

    .srm-benefits__card,
    .srm-goals__card,
    .srm-how__panel {
        min-height: 0;
    }

    .srm-support__card,
    .srm-benefits__feature,
    .srm-how__panel,
    .srm-goals__intro {
        padding: 24px 20px;
    }

    .srm-delivers__grid {
        gap: 24px;
    }

    .srm-support__mosaic,
    .srm-benefits__cluster {
        padding-top: 0;
        padding-bottom: 0;
    }

    .srm-accent-band {
        min-height: 112px;
    }

    .srm-accent-band__text {
        font-size: clamp(1.1rem, 6vw, 1.7rem);
        letter-spacing: 0.08em;
    }

    .srm-scroll-dock {
        gap: 8px;
        padding: 8px 10px 8px 8px;
    }

    .srm-scroll-dock__label {
        display: none;
    }

    .srm-scroll-dock__ring {
        width: 38px;
        height: 38px;
    }

    .srm-scroll-dock__core {
        width: 25px;
        height: 25px;
    }

    .srm-preloader__inner {
        gap: 16px;
        padding: 24px 22px;
    }

    .srm-faq__micro-cta {
        padding: 20px;
    }

    .srm-faq__question {
        font-size: 17px;
    }

    .srm-related__grid,
    .srm-cta__notes {
        grid-template-columns: 1fr;
    }

    .srm-related__view-all {
        width: 100%;
        justify-content: center;
    }

    .srm-cta__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .srm-cta__btn {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 1024px) {
    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md {
        margin-top: -36px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg {
        margin-top: -46px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md .srm-section__inner {
        padding-top: 96px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg .srm-section__inner {
        padding-top: 104px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge {
        --srm-bridge-height: 56px;
        --srm-bridge-bleed: 56px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-what__features {
        margin-top: -14px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic {
        margin-top: 0;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__visual {
        transform: translateY(-12px);
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-related__grid {
        margin-top: -16px;
    }
}

@media (max-width: 767px) {
    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md {
        margin-top: -24px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg {
        margin-top: -30px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md .srm-section__inner,
    .srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg .srm-section__inner {
        padding-top: 82px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge {
        --srm-bridge-height: 42px;
        --srm-bridge-bleed: 40px;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-what__features,
    .srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic,
    .srm-page[data-srm-template="sunrise-service-master"] .srm-related__grid {
        margin-top: 0;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__visual {
        transform: none;
    }
}

@media (max-width: 560px) {
    .srm-breadcrumb,
    .srm-hero__category {
        flex-wrap: wrap;
        white-space: normal;
    }

    .srm-hero__category {
        gap: 8px;
        padding: 9px 14px 9px 10px;
    }

    .srm-hero__category-dot {
        width: 12px;
        height: 12px;
    }

    .srm-scenarios__media,
    .srm-scenarios__card--feature .srm-scenarios__media,
    .srm-scenarios__card--portrait .srm-scenarios__media {
        min-height: 240px;
    }

    .srm-scenarios__story-pill,
    .srm-scenarios__story-marker,
    .srm-scenarios__story-note {
        position: static;
        margin: 16px 16px 0;
    }

    .srm-scenarios__story-note {
        margin-bottom: 16px;
    }

    .srm-scenarios__media-overlay {
        background: linear-gradient(180deg, rgba(30,30,46,0.08), rgba(30,30,46,0.28));
    }

    .srm-faq .srm-faq__trigger {
        padding: 20px 18px 16px;
    }

    .srm-faq .srm-faq__body-inner {
        padding: 0 18px 18px;
    }

    .srm-related__card {
        padding: 20px 16px;
    }

    .srm-scenarios__card,
    .srm-faq .srm-faq-item,
    .srm-related__card,
    .srm-cta__content,
    .srm-cta__panel,
    .srm-cta__contact-card {
        border-radius: 24px;
    }

    .srm-cta__contact-card {
        padding: 20px;
    }
}

@media (max-width: 767px) {
    .srm-section-watermark {
        --srm-watermark-size: clamp(92px, 24vw, 132px);
    }

    .srm-section-watermark--hero {
        top: 72px;
        left: 12px;
    }

    .srm-section-watermark--support {
        top: 18px;
        right: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .srm-preloader {
        display: none !important;
    }

    .srm-page *,
    .srm-page *::before,
    .srm-page *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    [data-srm-reveal],
    .srm-heading-3d,
    .srm-eyebrow,
    .srm-cta__eyebrow,
    .srm-hero__category,
    .srm-hero__headline,
    .srm-hero__desc,
    .srm-hero__trust-row,
    .srm-hero__ctas,
    .srm-hero__participants,
    .srm-hero__visual,
    .srm-hero__breadcrumb,
    .srm-cta__step,
    .srm-cta__note,
    .srm-cta__contact-card {
        opacity: 1 !important;
        filter: none !important;
        transform: none !important;
    }

    .srm-eyebrow,
    .srm-cta__eyebrow {
        letter-spacing: 0.12em !important;
    }

    .srm-svg-draw :is(path, line, polyline, polygon, circle, ellipse, rect) {
        stroke-dashoffset: 0 !important;
    }


    .srm-marquee__track {
        animation: none !important;
        transform: none !important;
    }

    img[data-srm-blur-up] {
        opacity: 1 !important;
        filter: none !important;
        animation: none !important;
    }
}

.srm-hero__category,
.srm-hero__headline,
.srm-hero__desc,
.srm-hero__trust-row,
.srm-hero__ctas,
.srm-hero__participants {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 0.65s var(--srm-ease),
                transform 0.65s var(--srm-ease);
}

.srm-hero__visual {
    opacity: 0;
    transform: translateX(28px);
    transition: opacity 0.75s var(--srm-ease),
                transform 0.75s var(--srm-ease);
}

.srm-hero__breadcrumb {
    opacity: 0;
    transition: opacity 0.5s var(--srm-ease);
}

/* Once JS fires entered class, cascade in */
.srm-hero--entered .srm-hero__breadcrumb          { opacity: 1; transition-delay: 0.05s; }
.srm-hero--entered .srm-hero__category            { opacity: 1; transform: none; transition-delay: 0.15s; }
.srm-hero--entered .srm-hero__headline            { opacity: 1; transform: none; transition-delay: 0.28s; }
.srm-hero--entered .srm-hero__desc                { opacity: 1; transform: none; transition-delay: 0.42s; }
.srm-hero--entered .srm-hero__trust-row           { opacity: 1; transform: none; transition-delay: 0.52s; }
.srm-hero--entered .srm-hero__ctas                { opacity: 1; transform: none; transition-delay: 0.62s; }
.srm-hero--entered .srm-hero__participants        { opacity: 1; transform: none; transition-delay: 0.72s; }
.srm-hero--entered .srm-hero__visual              { opacity: 1; transform: none; transition-delay: 0.35s; }

.srm-hero__headline {
    opacity: 1;
    transform: none;
    filter: none;
    transition: none;
}

.srm-hero--entered .srm-hero__headline-word-inner {
    transform: translate3d(0, 0, 0) rotate(0deg);
    clip-path: inset(0 0 0 0 round 12px);
    opacity: 1;
}

/* â”€â”€ Utility helpers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
/* Delivers overlap fix:
   keep only one floating callout on the image and place the note card below it. */
.srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__visual {
    padding-bottom: 0 !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__float--b {
    display: none !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__note {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 16px 30px 0 !important;
}

@media (max-width: 767px) {
    .srm-page[data-srm-template="sunrise-service-master"] .srm-delivers__note {
        margin: 14px 0 0 !important;
    }
}

.srm-text-center { text-align: center; }
.srm-text-white  { color: var(--srm-white) !important; }
.srm-text-muted  { color: var(--srm-muted); }
.srm-text-coral  { color: var(--srm-coral); }
.srm-text-mustard{ color: var(--srm-mustard); }
.srm-text-green  { color: var(--srm-green); }
.srm-text-lavender { color: var(--srm-lavender-dark); }
.srm-mt-sm { margin-top: var(--srm-sp-sm); }
.srm-mt-md { margin-top: var(--srm-sp-md); }
.srm-mt-lg { margin-top: var(--srm-sp-lg); }
.srm-flex-center { display: flex; align-items: center; gap: 10px; }
.srm-sr-only {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* Photo-backed card overrides requested for service master layout */
.srm-page[data-srm-template="sunrise-service-master"] .srm-impact__grid > .srm-impact__card:nth-child(3) {
    background-image: url('../assets/17.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-impact__grid > .srm-impact__card:nth-child(3) .srm-impact__value,
.srm-page[data-srm-template="sunrise-service-master"] .srm-impact__grid > .srm-impact__card:nth-child(3) .srm-impact__label {
    display: none !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-what__accent-banner {
    background-image: url('../assets/4.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-who__reassure {
    background-image: url('../assets/22.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic > .srm-support__card:nth-child(3) {
    background-image: url('../assets/9.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic > .srm-support__card:nth-child(6) {
    background-image: url('../assets/13.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-benefits__cluster > .srm-benefits__card--mustard {
    background-image: url('../assets/2.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-benefits__cluster > .srm-benefits__card--green {
    background-image: url('../assets/15.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-how__intro {
    background-image: url('../assets/6.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-goals__intro {
    background-image: url('../assets/20.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

/* Restore heading visibility in "Who we support" if animation state gets stuck */
.srm-page[data-srm-template="sunrise-service-master"] #srm-who-title,
.srm-page[data-srm-template="sunrise-service-master"] #srm-who-title .srm-heading-3d__stage {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    clip-path: inset(0 0 0 0) !important;
    transform: none !important;
    color: #0A3322 !important;
}

.srm-page[data-srm-template="sunrise-service-master"] #srm-who-title.srm-heading-3d::after {
    display: none !important;
}

/* Keep readability support but remove visible blocks/borders behind text */
.srm-page[data-srm-template="sunrise-service-master"] :is(
    .srm-what__accent-banner .srm-body,
    .srm-who__reassure .srm-who__reassure-text,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-support__card-num,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-h4,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-body,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-support__card-num,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-h4,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-body,
    .srm-benefits__cluster > .srm-benefits__card--mustard .srm-h4,
    .srm-benefits__cluster > .srm-benefits__card--mustard .srm-body,
    .srm-benefits__cluster > .srm-benefits__card--green .srm-h4,
    .srm-benefits__cluster > .srm-benefits__card--green .srm-body,
    .srm-how__intro .srm-body,
    .srm-goals__intro > .srm-h3,
    .srm-goals__intro > .srm-body
) {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Remove any visible glass overlays on image cards */
.srm-page[data-srm-template="sunrise-service-master"] :is(
    .srm-what__accent-banner .srm-body,
    .srm-who__reassure-copy,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-support__card-body,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-support__card-body,
    .srm-benefits__cluster > .srm-benefits__card--mustard,
    .srm-benefits__cluster > .srm-benefits__card--green,
    .srm-how__intro,
    .srm-goals__intro
)::before,
.srm-page[data-srm-template="sunrise-service-master"] :is(
    .srm-benefits__cluster > .srm-benefits__card--mustard,
    .srm-benefits__cluster > .srm-benefits__card--green
)::after {
    content: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.srm-page[data-srm-template="sunrise-service-master"] :is(
    .srm-what__accent-banner .srm-body,
    .srm-who__reassure .srm-who__reassure-text,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-support__card-num,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-body,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-support__card-num,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-body,
    .srm-benefits__cluster > .srm-benefits__card--mustard .srm-body,
    .srm-benefits__cluster > .srm-benefits__card--green .srm-body,
    .srm-how__intro .srm-body,
    .srm-goals__intro > .srm-body,
    .srm-goals__intro .srm-goals__milestone .srm-caption
) {
    color: rgba(241, 247, 255, 0.95) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.78), 0 0 2px rgba(0, 0, 0, 0.72);
    -webkit-text-stroke: 0.15px rgba(0, 0, 0, 0.35);
}

.srm-page[data-srm-template="sunrise-service-master"] :is(
    .srm-what__accent-banner .srm-body strong,
    .srm-who__reassure .srm-who__reassure-text strong,
    .srm-support__mosaic > .srm-support__card:nth-child(3) .srm-h4,
    .srm-support__mosaic > .srm-support__card:nth-child(6) .srm-h4,
    .srm-benefits__cluster > .srm-benefits__card--mustard .srm-h4,
    .srm-benefits__cluster > .srm-benefits__card--green .srm-h4,
    .srm-goals__intro > .srm-h3,
    .srm-goals__intro .srm-goals__milestone strong
) {
    color: #FFE4A6 !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.85), 0 0 2px rgba(0, 0, 0, 0.8);
    -webkit-text-stroke: 0.2px rgba(0, 0, 0, 0.4);
}

/* Mobile hardening: keep layout stable on narrow devices */
@media (max-width: 767px) {
    .srm-page[data-srm-template="sunrise-service-master"] {
        overflow-x: hidden;
    }

    .srm-page[data-srm-template="sunrise-service-master"] :is(.srm-section, .srm-section__inner, .srm-container) {
        overflow-x: hidden;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-container {
        width: 100%;
        max-width: 100%;
        padding-inline: var(--srm-gutter);
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-related__grid {
        grid-template-columns: 1fr !important;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-support__mosaic {
        padding-inline: var(--srm-gutter) !important;
        scroll-padding-left: var(--srm-gutter) !important;
        scroll-padding-right: var(--srm-gutter) !important;
        scroll-padding-inline-start: var(--srm-gutter) !important;
        scroll-padding-inline-end: var(--srm-gutter) !important;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-support__card {
        flex: 0 0 calc(100vw - (var(--srm-gutter) * 2));
        width: calc(100vw - (var(--srm-gutter) * 2));
        max-width: 360px;
        min-height: 0;
    }

    .srm-page[data-srm-template="sunrise-service-master"] :is(
        .srm-benefits__card,
        .srm-goals__card,
        .srm-how__panel,
        .srm-who__card-main,
        .srm-who__card-mid,
        .srm-related__card
    ) {
        width: 100%;
        min-width: 0;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-h2 {
        font-size: clamp(1.6rem, 7vw, 2rem);
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-h3 {
        font-size: clamp(1.35rem, 5.9vw, 1.75rem);
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-h4 {
        font-size: clamp(1.03rem, 4.8vw, 1.2rem);
    }

    .srm-page[data-srm-template="sunrise-service-master"] :is(.srm-lead, .srm-body) {
        line-height: 1.55;
    }
}

@media (max-width: 480px) {
    .srm-page[data-srm-template="sunrise-service-master"] .srm-support__card {
        flex-basis: calc(100vw - (var(--srm-gutter) * 2));
        width: calc(100vw - (var(--srm-gutter) * 2));
        max-width: none;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-section-watermark {
        display: none;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-cta__notes {
        grid-template-columns: 1fr;
    }

    .srm-page[data-srm-template="sunrise-service-master"] .srm-goals__milestone strong {
        font-size: clamp(1.2rem, 6.2vw, 1.5rem);
    }
}

/* --- PERFORMANCE & DESIGN OVERHAUL OVERRIDES --- */
.srm-page[data-srm-template="sunrise-service-master"] .srm-section-bridge,
.srm-blob,
.srm-dots,
.srm-section-watermark,
.srm-preloader,
.srm-cursor,
.srm-progress-bar,
.srm-side-nav,
.srm-hero__bg-arc,
.srm-hero__bg-ring,
.srm-hero__bg-dots,
.srm-hero__deco-circle,
.srm-hero__deco-line,
.srm-hero__visual-particles,
.srm-what__bg-shape,
[data-srm-parallax],
.srm-parallax-img,
.srm-hero__parallax-layer {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    animation: none !important;
    transition: none !important;
}

/* Fix the negative margin pull system that was needed for section bridges */
.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md,
.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg {
    margin-top: 0 !important;
}

.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-md .srm-section__inner,
.srm-page[data-srm-template="sunrise-service-master"] .srm-section--pull-lg .srm-section__inner {
    padding-top: clamp(88px, 9vw, 112px) !important;
}

/* Make backgrounds visually stable, disable the complex gradients */
.srm-page {
    background: #ffffff !important;
}

.srm-page.is-preloading {
    overflow: auto !important;
}

/* Reset headings to just show normally without the 3D staggered span split */
.srm-heading-3d__stage {
    display: inline !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
}

.srm-heading-3d.is-heading-armed .srm-heading-3d__stage {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

/* Fix overlapping float tags in the hero section */
@media (min-width: 1025px) {
    .srm-page[data-srm-template="sunrise-service-master"] .srm-hero__float-tag {
        display: none !important;
    }
}

