﻿
:root {
    --psy-wrap-max: 1240px;
    --psy-wrap-gutter: 2.4rem;
    --psy-wrap: min(var(--psy-wrap-max), calc(100vw - var(--psy-wrap-gutter)));

    --psy-color-bg: #f2f0e9;
    --psy-color-bg-soft: #faf7f1;
    --psy-color-surface: #ffffff;
    --psy-color-text: #203138;
    --psy-color-text-strong: #16252c;
    --psy-color-text-heading: #12242b;
    --psy-color-text-muted: #5f706f;
    --psy-color-line: #d6dcd7;
    --psy-color-line-input: #c8d2cc;
    --psy-color-border-strong: rgba(18, 56, 62, 0.13);
    --psy-color-accent: #174f58;
    --psy-color-accent-dark: #0f3941;
    --psy-color-warm: #b7815d;
    --psy-color-danger: #b44c5c;
    --psy-color-success: #2e7d5a;
    --psy-color-wa-border: #30a06f;
    --psy-color-wa-text: #1f6f4f;
    --psy-color-wa-float: #23a36f;
    --psy-color-bg-radial-start: #ffffff;
    --psy-color-bg-radial-mid: #f2efe8;
    --psy-color-bg-radial-end: #ebe6dc;
    --psy-color-hover-soft: #edf0ec;
    --psy-color-hover-soft-alt: #f4f1eb;
    --psy-color-focus-ring: rgba(23, 79, 88, 0.24);
    --psy-color-footer-line: #cfdcd6;
    --psy-color-footer-sub-link: #36525a;
    --psy-color-header-bg: rgba(248, 245, 239, 0.76);
    --psy-color-header-surface: rgba(255, 252, 247, 0.82);
    --psy-color-header-stroke: rgba(255, 255, 255, 0.7);
    --psy-color-header-shadow: rgba(33, 49, 56, 0.11);
    --psy-color-nav-link-hover: rgba(23, 79, 88, 0.08);
    --psy-color-nav-link-active: rgba(23, 79, 88, 0.12);
    --psy-color-utility-text: #6a7b7a;
    --psy-color-shell-backdrop: rgba(19, 32, 37, 0.34);
    --psy-gradient-hero-overlay: linear-gradient(122deg, rgba(11, 31, 35, 0.82) 0%, rgba(18, 57, 65, 0.64) 46%, rgba(53, 96, 105, 0.22) 100%);
    --psy-gradient-appointment: linear-gradient(120deg, #eef4f0 0%, #dde7e1 100%);
    --psy-gradient-footer: linear-gradient(180deg, #f2f1ec 0%, #e8e5dc 100%);
    --psy-gradient-conversion-rail: linear-gradient(125deg, rgba(255, 255, 255, 0.9) 0%, rgba(241, 246, 243, 0.92) 100%);
    --psy-gradient-layout-cta-accent: linear-gradient(120deg, #d8e8e4 0%, #c8dcd4 100%);
    --psy-gradient-layout-cta-warm: linear-gradient(125deg, #f2e7db 0%, #ecdfd1 100%);
    --psy-gradient-layout-cta-soft: linear-gradient(140deg, #f4f2ed 0%, #ece8df 100%);
    --psy-gradient-hero-media: radial-gradient(circle at 18% 18%, #6e8588 0%, #35545b 44%, #152d34 100%);
    --psy-gradient-hero-media-fallback: radial-gradient(circle at 20% 22%, #789196 0%, #48656c 42%, #1c343b 100%);

    --psy-color-on-accent: #ffffff;
    --psy-color-on-hero: #f1f7f6;
    --psy-color-on-hero-muted: rgba(241, 247, 246, 0.88);
    --psy-color-ghost-border: rgba(255, 255, 255, 0.6);
    --psy-color-ghost-hover-bg: rgba(255, 255, 255, 0.12);
    --psy-color-rich-text: #25383d;
    --psy-color-conversion-chip-call-border: rgba(29, 44, 49, 0.16);
    --psy-color-conversion-chip-wa-bg: rgba(35, 163, 111, 0.14);
    --psy-color-conversion-chip-wa-text: #1f6f4f;
    --psy-color-conversion-chip-wa-border: rgba(35, 163, 111, 0.38);
    --psy-color-layout-cta-accent-border: rgba(30, 91, 99, 0.24);
    --psy-color-layout-cta-warm-border: rgba(201, 138, 99, 0.28);
    --psy-color-layout-cta-soft-border: rgba(30, 91, 99, 0.14);
    --psy-color-accent-soft-border: rgba(30, 91, 99, 0.3);
    --psy-color-accent-ring: rgba(30, 91, 99, 0.16);
    --psy-color-accent-active-border: rgba(30, 91, 99, 0.45);
    --psy-color-accent-active-bg: rgba(30, 91, 99, 0.1);
    --psy-color-accent-soft-bg: rgba(30, 91, 99, 0.05);
    --psy-color-accent-empty-border: rgba(30, 91, 99, 0.36);
    --psy-color-appointment-border-soft: rgba(22, 70, 76, 0.18);
    --psy-color-footer-sublist-line: rgba(33, 63, 70, 0.16);
    --psy-color-form-error-strong: #a83d4f;
    --psy-color-form-success-strong: #2e7d5a;
    --psy-font-sans: 'Plus Jakarta Sans', sans-serif;
    --psy-font-serif: 'Fraunces', serif;
    --psy-fs-2xs: 0.73rem;
    --psy-fs-xs: 0.81rem;
    --psy-fs-sm: 0.91rem;
    --psy-fs-base: 0.97rem;
    --psy-fs-md: 1.05rem;
    --psy-fs-lg: 1.16rem;
    --psy-fs-xl: 1.42rem;
    --psy-fs-hero: clamp(2.5rem, 5vw, 4.6rem);
    --psy-fs-h2: clamp(1.55rem, 2.6vw, 2.35rem);
    --psy-fs-lead: clamp(1.02rem, 1.7vw, 1.22rem);
    --psy-lh-tight: 1.1;
    --psy-lh-body: 1.6;
    --psy-lh-rich: 1.8;
    --psy-letter-tight: -0.02em;
    --psy-letter-heading: -0.01em;

    --psy-space-1: 0.2rem;
    --psy-space-2: 0.35rem;
    --psy-space-3: 0.45rem;
    --psy-space-4: 0.5rem;
    --psy-space-5: 0.7rem;
    --psy-space-6: 0.8rem;
    --psy-space-7: 0.9rem;
    --psy-space-8: 1rem;
    --psy-space-9: 1.2rem;
    --psy-space-10: 1.4rem;
    --psy-space-11: 1.7rem;
    --psy-space-12: 2.1rem;
    --psy-space-13: 2.3rem;
    --psy-space-14: 2.5rem;
    --psy-space-15: 3rem;
    --psy-space-16: 4.4rem;

    --psy-radius-xs: 10px;
    --psy-radius-sm: 14px;
    --psy-radius-md: 18px;
    --psy-radius-lg: 28px;
    --psy-radius-xl: 36px;
    --psy-radius-pill: 999px;

    --psy-shadow-soft: 0 18px 36px rgba(18, 38, 45, 0.07);
    --psy-shadow-pop: 0 24px 56px rgba(21, 42, 49, 0.12);
    --psy-shadow-float: 0 20px 34px rgba(20, 65, 55, 0.26);
    --psy-shadow-shell: 0 18px 40px rgba(31, 48, 55, 0.1);

    --psy-motion-fast: 0.2s;
    --psy-motion-default: 0.32s;
    --psy-motion-slow: 0.48s;
    --psy-ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
    --psy-blur-header: 22px;

    --psy-z-skip: 999;
    --psy-z-sticky: 120;
    --psy-z-overlay: 130;
    --psy-z-float: 99;

    /* Backward-compatible aliases */
    --psy-bg: var(--psy-color-bg);
    --psy-bg-soft: var(--psy-color-bg-soft);
    --psy-card: var(--psy-color-surface);
    --psy-text: var(--psy-color-text);
    --psy-muted: var(--psy-color-text-muted);
    --psy-line: var(--psy-color-line);
    --psy-accent: var(--psy-color-accent);
    --psy-accent-dark: var(--psy-color-accent-dark);
    --psy-warm: var(--psy-color-warm);
    --psy-danger: var(--psy-color-danger);
    --psy-shadow: var(--psy-shadow-pop);
}

* { box-sizing: border-box; }

html,
body {
    margin: 0;
    padding: 0;
    font-family: var(--psy-font-sans);
    color: var(--psy-text);
    font-size: var(--psy-fs-base);
    line-height: var(--psy-lh-body);
    background: radial-gradient(
        circle at 10% 10%,
        var(--psy-color-bg-radial-start) 0%,
        var(--psy-color-bg-radial-mid) 45%,
        var(--psy-color-bg-radial-end) 100%
    );
}

html {
    scroll-behavior: smooth;
}

.psy-body--nav-open {
    overflow: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: var(--psy-accent);
}

img {
    width: 100%;
    height: auto;
    display: block;
}

.psy-wrap {
    width: var(--psy-wrap);
    margin-inline: auto;
}

.psy-skip {
    position: absolute;
    left: -9999px;
    top: auto;
}

.psy-skip:focus {
    left: 1rem;
    top: 1rem;
    z-index: var(--psy-z-skip);
    background: var(--psy-color-surface);
    border-radius: var(--psy-radius-xs);
    padding: var(--psy-space-4) var(--psy-space-6);
}

.psy-header {
    position: sticky;
    top: 0;
    z-index: var(--psy-z-sticky);
    padding-top: 0.85rem;
    padding-bottom: 0.35rem;
    background: linear-gradient(180deg, rgba(242, 240, 233, 0.96) 0%, rgba(242, 240, 233, 0.92) 78%, rgba(242, 240, 233, 0) 100%);
    backdrop-filter: blur(8px);
}

.psy-header__surface {
    width: var(--psy-wrap);
    margin-inline: auto;
    border: 1px solid var(--psy-color-border-strong);
    border-radius: 24px;
    background: #fffdf9;
    box-shadow: var(--psy-shadow-shell);
    transition:
        border-color var(--psy-motion-default) var(--psy-ease-standard),
        border-radius var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        background-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-header__topbar {
    margin-bottom: 0.5rem;
}

.psy-header[data-nav-sticky-state="compact"] .psy-header__surface {
    border-radius: 20px;
    box-shadow: 0 18px 44px rgba(27, 43, 50, 0.14);
}

.psy-header[data-nav-sticky-state="compact"] .psy-topbar {
    padding-top: 0.76rem;
    padding-bottom: 0.76rem;
}

.psy-header[data-nav-sticky-state="compact"] .psy-brand__title {
    font-size: clamp(1.02rem, 1.5vw, 1.2rem);
}

.psy-header[data-nav-sticky-state="compact"] .psy-brand__logo {
    width: 2.34rem;
    height: 2.34rem;
}

.psy-header[data-nav-sticky-state="compact"] .psy-navrow {
    padding-top: 0.28rem;
    padding-bottom: 0.28rem;
}

.psy-header[data-nav-sticky-state="compact"] .psy-nav__link {
    min-height: 2.5rem;
    padding-top: 0.64rem;
    padding-bottom: 0.64rem;
}

.psy-topbar {
    width: auto;
    margin-inline: 0;
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--psy-space-8);
    padding: 0.95rem 1.15rem;
}

.psy-brand {
    display: inline-flex;
    align-items: center;
    gap: 0.54rem;
}

.psy-brand__logo {
    width: 2.72rem;
    height: 2.72rem;
    border-radius: 0.35rem;
    object-fit: contain;
    flex-shrink: 0;
}

.psy-brand__text {
    display: inline-flex;
    flex-direction: column;
    gap: 0.18rem;
    min-width: 0;
}

.psy-brand__title {
    font-weight: 800;
    font-size: clamp(1.1rem, 1.8vw, 1.35rem);
    letter-spacing: -0.03em;
}

.psy-brand__sub {
    font-size: var(--psy-fs-2xs);
    color: var(--psy-color-utility-text);
}

.psy-brand__eyebrow {
    display: inline-block;
    font-size: 0.7rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--psy-color-utility-text);
}

.psy-topbar__utilities {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.psy-topbar__links {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    justify-self: end;
    gap: 0.42rem;
    min-width: 0;
    margin-right: clamp(0.2rem, 0.8vw, 0.7rem);
}

.psy-topbar__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.5rem;
    padding: 0.62rem 1rem;
    border-radius: 999px;
    color: var(--psy-color-text-heading);
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-topbar__link:hover,
.psy-topbar__link:focus-visible {
    background: rgba(17, 47, 60, 0.06);
    color: var(--psy-accent-dark);
    transform: translateY(-1px);
}

.psy-topbar__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--psy-space-5);
    flex-shrink: 0;
}

.psy-lang {
    border-radius: var(--psy-radius-pill);
    border: 1px solid rgba(23, 79, 88, 0.12);
    min-width: 2.6rem;
    height: 2.5rem;
    padding-inline: 0.72rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.76rem;
    font-weight: 700;
    background: rgba(255, 255, 255, 0.72);
    color: var(--psy-color-utility-text);
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-lang.is-active {
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
    border-color: var(--psy-accent);
}

.psy-lang[data-translation="fallback"] {
    border-style: dashed;
}

.psy-langswitch {
    display: flex;
    align-items: center;
    gap: var(--psy-space-3);
}

.psy-header__cta {
    min-height: 2.8rem;
    padding-inline: 1rem;
    box-shadow: 0 16px 24px rgba(23, 79, 88, 0.16);
}

.psy-navrow {
    padding: 0.32rem 0.4rem;
}

.psy-navtoggle {
    display: none;
    align-items: center;
    gap: 0.62rem;
    border: 1px solid rgba(23, 79, 88, 0.12);
    border-radius: var(--psy-radius-pill);
    background: rgba(255, 255, 255, 0.72);
    padding: 0.72rem 0.9rem;
    font-weight: 700;
    color: var(--psy-color-text-strong);
}

.psy-navtoggle__label {
    line-height: 1;
}

.psy-navtoggle__icon {
    width: 1rem;
    height: 0.8rem;
    position: relative;
    display: inline-block;
}

.psy-navtoggle__icon::before,
.psy-navtoggle__icon::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

.psy-navtoggle__icon::before {
    top: 0.08rem;
    box-shadow: 0 0.3rem 0 currentColor;
}

.psy-navtoggle__icon::after {
    bottom: 0.08rem;
}

.psy-nav {
    width: 100%;
}

.psy-nav__drawer-head,
.psy-nav__drawer-meta {
    display: none;
}

.psy-nav__drawer-lang {
    display: none;
}

.psy-nav__list {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.08rem;
    padding: 0;
    margin: 0;
}

.psy-nav__item {
    position: relative;
}

.psy-nav__item-row {
    display: flex;
    align-items: center;
    min-height: 3.25rem;
}

.psy-nav__link {
    display: inline-flex;
    align-items: center;
    min-height: 2.8rem;
    padding: 0.78rem 1rem;
    border-radius: 14px;
    font-weight: 600;
    color: var(--psy-color-text-strong);
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-nav__link:hover {
    background: var(--psy-color-nav-link-hover);
    color: var(--psy-accent-dark);
}

.psy-nav__item.is-open > .psy-nav__item-row .psy-nav__link {
    background: var(--psy-color-nav-link-active);
}

.psy-nav__dropdown-toggle {
    width: 2.4rem;
    height: 2.4rem;
    margin-left: -0.22rem;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--psy-color-text-strong);
    cursor: pointer;
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-nav__dropdown-toggle::before {
    content: "";
    display: inline-block;
    width: 0.5rem;
    height: 0.5rem;
    border-right: 1.6px solid currentColor;
    border-bottom: 1.6px solid currentColor;
    transform: rotate(45deg) translateY(-1px);
    transition: transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-nav__item.is-open > .psy-nav__item-row .psy-nav__dropdown-toggle {
    background: var(--psy-color-nav-link-active);
}

.psy-nav__item.is-open > .psy-nav__item-row .psy-nav__dropdown-toggle::before {
    transform: rotate(-135deg) translate(-1px, -1px);
}

.psy-subnav {
    position: absolute;
    left: 0;
    top: calc(100% + 0.72rem);
    min-width: 16.5rem;
    margin: 0;
    padding: 0.45rem;
    border-radius: 20px;
    border: 1px solid rgba(23, 79, 88, 0.12);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: var(--psy-shadow-pop);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    pointer-events: none;
    transition:
        opacity var(--psy-motion-fast) var(--psy-ease-standard),
        visibility var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-subnav a {
    display: block;
    border-radius: 14px;
    padding: 0.78rem 0.85rem;
    font-size: var(--psy-fs-sm);
    font-weight: 600;
}

.psy-subnav a:hover {
    background: var(--psy-color-hover-soft-alt);
}

.psy-nav__item.is-open > .psy-subnav,
.psy-nav__item:hover > .psy-subnav,
.psy-nav__item:focus-within > .psy-subnav {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.psy-nav__backdrop {
    position: fixed;
    inset: 0;
    z-index: calc(var(--psy-z-overlay) - 1);
    border: 0;
    background: var(--psy-color-shell-backdrop);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-nav__backdrop.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.psy-conversion-rail__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    align-items: center;
    justify-content: flex-end;
}

.psy-conversion-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--psy-radius-pill);
    padding: 0.62rem 1rem;
    font-size: var(--psy-fs-sm);
    font-weight: 700;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.76);
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-conversion-chip:hover {
    transform: translateY(-1px);
}

.psy-conversion-chip--call {
    color: var(--psy-color-text-strong);
    border-color: var(--psy-color-conversion-chip-call-border);
}

.psy-conversion-chip--whatsapp {
    background: var(--psy-color-conversion-chip-wa-bg);
    color: var(--psy-color-conversion-chip-wa-text);
    border-color: var(--psy-color-conversion-chip-wa-border);
}

.psy-conversion-chip--callback {
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
}

.psy-conversion-chip--callback:hover {
    background: var(--psy-accent-dark);
    color: var(--psy-color-on-accent);
}

.psy-main {
    min-height: 48vh;
}

.psy-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-2);
    align-items: center;
    padding-top: var(--psy-space-6);
    font-size: 0.85rem;
    color: var(--psy-muted);
}

.psy-breadcrumb strong {
    color: var(--psy-color-text-strong);
}

.psy-layout-cta-zone {
    display: grid;
    gap: var(--psy-space-6);
    padding-top: var(--psy-space-8);
}

.psy-layout-cta-zone--footer {
    margin-top: var(--psy-space-10);
    margin-bottom: var(--psy-space-8);
}

.psy-layout-cta {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    padding: var(--psy-space-10);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--psy-space-8);
    background: var(--psy-color-surface);
}

.psy-layout-cta__content {
    display: grid;
    gap: var(--psy-space-3);
    max-width: 860px;
}

.psy-layout-cta__content p {
    margin: 0;
    color: var(--psy-color-text-muted);
    font-size: var(--psy-fs-md);
}

.psy-layout-cta--accent {
    background: var(--psy-gradient-layout-cta-accent);
    border-color: var(--psy-color-layout-cta-accent-border);
}

.psy-layout-cta--warm {
    background: var(--psy-gradient-layout-cta-warm);
    border-color: var(--psy-color-layout-cta-warm-border);
}

.psy-layout-cta--soft {
    background: var(--psy-gradient-layout-cta-soft);
    border-color: var(--psy-color-layout-cta-soft-border);
}

.psy-hero {
    position: relative;
    min-height: 74vh;
    display: grid;
    align-items: center;
    overflow: clip;
}

.psy-hero__media,
.psy-hero__image,
.psy-hero__overlay {
    position: absolute;
    inset: 0;
}

.psy-hero__media {
    background: var(--psy-gradient-hero-media);
}

.psy-hero__media--fallback {
    background: var(--psy-gradient-hero-media-fallback);
}

.psy-hero__image {
    object-fit: cover;
    height: 100%;
}

.psy-hero__overlay {
    background: var(--psy-gradient-hero-overlay);
}

.psy-hero__content {
    position: relative;
    color: var(--psy-color-on-hero);
    padding: calc(var(--psy-space-16) + 1.2rem) 0 var(--psy-space-16);
    max-width: 52rem;
}

.psy-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin-bottom: var(--psy-space-8);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(241, 247, 246, 0.72);
}

.psy-hero__eyebrow::before {
    content: "";
    width: 2.5rem;
    height: 1px;
    background: rgba(241, 247, 246, 0.45);
}

.psy-hero h1 {
    font-size: var(--psy-fs-hero);
    line-height: 0.97;
    margin: 0;
    letter-spacing: var(--psy-letter-tight);
    max-width: 12ch;
}

.psy-hero p {
    margin-top: var(--psy-space-9);
    font-size: var(--psy-fs-lead);
    color: var(--psy-color-on-hero-muted);
    max-width: 46rem;
}

.psy-hero__cta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    margin-top: var(--psy-space-11);
}

.psy-storyhero {
    padding-block: clamp(1.2rem, 2.8vw, 2.4rem) clamp(2rem, 4vw, 3.2rem);
}

.psy-storyhero__shell {
    display: grid;
    gap: 1rem;
}

.psy-storyhero__nav {
    display: flex;
    gap: 0;
    overflow-x: auto;
    position: relative;
    isolation: isolate;
    border: 1px solid rgba(17, 47, 60, 0.14);
    border-radius: 1.45rem;
    background:
        linear-gradient(180deg, rgba(242, 249, 248, 0.96), rgba(230, 242, 241, 0.94)),
        linear-gradient(90deg, rgba(19, 64, 71, 0.03), rgba(19, 64, 71, 0.06));
    padding: 0.42rem;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.74),
        0 18px 40px rgba(18, 41, 48, 0.07);
    scrollbar-width: none;
}

.psy-storyhero__nav::-webkit-scrollbar {
    display: none;
}

.psy-storyhero__tab {
    flex: 1 1 0;
    min-width: 12rem;
    position: relative;
    border: 0;
    border-radius: 1rem;
    background: transparent;
    color: rgba(17, 47, 60, 0.7);
    padding: 1.02rem 1.3rem 0.96rem;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    transition:
        transform var(--psy-motion-fast) var(--psy-ease-standard),
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        box-shadow var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-storyhero__tab + .psy-storyhero__tab::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.8rem;
    bottom: 0.8rem;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(19, 64, 71, 0.12), transparent);
    transition: opacity var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-storyhero__tab.is-active::before,
.psy-storyhero__tab.is-active + .psy-storyhero__tab::before,
.psy-storyhero__tab:hover::before,
.psy-storyhero__tab:focus-visible::before {
    opacity: 0;
}

.psy-storyhero__tab::after {
    content: "";
    position: absolute;
    inset: 0.42rem 0.5rem auto;
    height: 0.2rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(16, 84, 97, 0.82), rgba(60, 124, 136, 0.68));
    opacity: 0;
    transform: scaleX(0.56);
    transform-origin: center;
    transition:
        opacity var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-storyhero__tab.is-active {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 251, 0.98));
    color: var(--psy-color-text-heading);
    box-shadow:
        0 12px 24px rgba(18, 41, 48, 0.09),
        inset 0 0 0 1px rgba(17, 47, 60, 0.08);
}

.psy-storyhero__tab.is-active::after {
    opacity: 1;
    transform: scaleX(1);
}

.psy-storyhero__tab:hover,
.psy-storyhero__tab:focus-visible {
    transform: translateY(-1px);
    color: var(--psy-color-text-heading);
}

.psy-storyhero__tab-title {
    font-weight: 700;
    font-size: clamp(0.96rem, 1.15vw, 1.08rem);
    letter-spacing: -0.015em;
}

.psy-storyhero__panel {
    border-radius: calc(var(--psy-radius-xl) + 4px);
}

.psy-storyhero__panel[hidden] {
    display: none !important;
}

.psy-storyhero__carousel {
    position: relative;
    isolation: isolate;
}

.psy-storyhero__slide {
    position: relative;
    min-height: 38rem;
    border-radius: calc(var(--psy-radius-xl) + 4px);
    overflow: clip;
    border: 1px solid rgba(19, 64, 71, 0.12);
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.9), transparent 26%),
        linear-gradient(135deg, #edf6f6 0%, #dff1f1 52%, #d4ece7 100%);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(19rem, 0.95fr);
    align-items: stretch;
}

.psy-storyhero__slide[hidden] {
    display: none !important;
}

.psy-storyhero__visual--fallback {
    background:
        radial-gradient(circle at center, rgba(255, 255, 255, 0.84), transparent 48%),
        linear-gradient(135deg, rgba(171, 209, 214, 0.64), rgba(226, 241, 239, 0.94));
}

.psy-storyhero__visual {
    position: relative;
    display: flex;
    align-items: end;
    justify-content: center;
    min-height: 100%;
    padding: 2rem 2rem 0;
}

.psy-storyhero__image--mobile {
    display: none;
}

.psy-storyhero__image--desktop {
    display: block;
}

.psy-storyhero__media-frame {
    position: relative;
    z-index: 1;
    width: min(100%, 34rem);
    height: 100%;
    min-height: 30rem;
    display: flex;
    align-items: end;
    justify-content: center;
}

.psy-storyhero__fallback-copy {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: end;
    gap: 0.8rem;
    padding: 2rem;
}

.psy-storyhero__fallback-kicker {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    min-height: 2.1rem;
    padding: 0 0.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    color: var(--psy-accent-dark);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.psy-storyhero__fallback-title {
    display: block;
    max-width: 8ch;
    font-family: var(--psy-font-serif);
    font-size: clamp(3.2rem, 6.4vw, 5.6rem);
    line-height: 0.9;
    letter-spacing: -0.04em;
    color: rgba(17, 47, 60, 0.16);
}

.psy-storyhero__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
}

.psy-storyhero__veil {
    position: absolute;
    inset: 1.4rem 2.2rem 1.4rem auto;
    width: min(86%, 26rem);
    border: 2px solid rgba(15, 99, 98, 0.7);
    border-radius: 1.5rem;
    opacity: 0.28;
}

.psy-storyhero__content {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: 0;
    min-height: 38rem;
    max-width: 42rem;
    padding: clamp(1.8rem, 3vw, 3.2rem);
    color: var(--psy-color-text-heading);
}

.psy-storyhero__meta {
    display: flex;
    align-items: center;
    gap: var(--psy-space-5);
    margin-bottom: var(--psy-space-4);
}

.psy-storyhero__eyebrow {
    margin: 0;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--psy-accent-dark);
}

.psy-storyhero__count {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 0.7rem;
    border-radius: 999px;
    background: rgba(70, 93, 117, 0.12);
    color: var(--psy-accent-dark);
    font-size: 0.8rem;
    font-weight: 700;
}

.psy-storyhero__content h1 {
    margin: 0;
    font-size: clamp(2.8rem, 5.2vw, 4.8rem);
    line-height: 0.96;
    letter-spacing: var(--psy-letter-tight);
    max-width: 10ch;
}

.psy-storyhero__summary {
    margin: var(--psy-space-7) 0 0;
    max-width: 34rem;
    font-size: var(--psy-fs-lead);
    color: var(--psy-color-text-muted);
}

.psy-storyhero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    margin-top: var(--psy-space-9);
}

.psy-storyhero__actions .psy-btn--ghost {
    color: var(--psy-accent-dark);
    border-color: rgba(19, 64, 71, 0.18);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 10px 24px rgba(18, 41, 48, 0.08);
}

.psy-storyhero__actions .psy-btn--ghost:hover,
.psy-storyhero__actions .psy-btn--ghost:focus-visible {
    color: var(--psy-accent-dark);
    border-color: rgba(19, 64, 71, 0.28);
    background: rgba(255, 255, 255, 0.96);
}

.psy-storyhero__controls {
    position: absolute;
    right: clamp(1.2rem, 2vw, 1.8rem);
    bottom: clamp(1.2rem, 2vw, 1.8rem);
    z-index: 1;
    display: flex;
    align-items: center;
    gap: var(--psy-space-4);
}

.psy-storyhero__control,
.psy-storyhero__dot {
    border: 1px solid rgba(19, 64, 71, 0.18);
    background: rgba(255, 255, 255, 0.92);
    color: var(--psy-color-text-heading);
}

.psy-storyhero__control {
    width: 2.9rem;
    height: 2.9rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition:
        transform var(--psy-motion-fast) var(--psy-ease-standard),
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        border-color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-storyhero__control:hover,
.psy-storyhero__control:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 1);
    border-color: rgba(19, 64, 71, 0.32);
}

.psy-storyhero__dots {
    display: flex;
    align-items: center;
    gap: 0.42rem;
}

.psy-storyhero__dot {
    width: 0.76rem;
    height: 0.76rem;
    border-radius: 999px;
}

.psy-storyhero__dot.is-active {
    background: var(--psy-accent-dark);
}

.psy-storyhero__dot:focus-visible,
.psy-storyhero__tab:focus-visible,
.psy-storyhero__control:focus-visible {
    outline: 2px solid rgba(19, 64, 71, 0.42);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .psy-storyhero__tab,
    .psy-storyhero__control,
    .psy-btn {
        transition: none;
    }

    .psy-storyhero__tab:hover,
    .psy-storyhero__tab:focus-visible,
    .psy-storyhero__control:hover,
    .psy-btn:hover {
        transform: none;
    }
}

.psy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    border-radius: 16px;
    padding: 0.84rem 1.2rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    border: 1px solid transparent;
    cursor: pointer;
    transition:
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard),
        box-shadow var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-btn:hover {
    transform: translateY(-1px);
}

.psy-btn--primary {
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
    box-shadow: 0 16px 28px rgba(23, 79, 88, 0.18);
}

.psy-btn--primary:hover {
    background: var(--psy-accent-dark);
    color: var(--psy-color-on-accent);
}

.psy-btn--ghost {
    border: 1px solid var(--psy-color-ghost-border);
    color: var(--psy-color-on-accent);
    background: rgba(255, 255, 255, 0.04);
}

.psy-btn--ghost:hover {
    background: var(--psy-color-ghost-hover-bg);
    color: var(--psy-color-on-accent);
}

.psy-btn--outline {
    border-color: rgba(241, 247, 246, 0.34);
    background: rgba(255, 255, 255, 0.08);
    color: var(--psy-color-on-hero);
}

.psy-btn--outline:hover {
    background: rgba(255, 255, 255, 0.14);
    color: var(--psy-color-on-hero);
}

.psy-btn--compact {
    min-height: 2.65rem;
    padding: 0.55rem 0.9rem;
    font-size: var(--psy-fs-sm);
}

.psy-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border: 1px solid rgba(23, 79, 88, 0.14);
    border-radius: var(--psy-radius-pill);
    padding: 0.45rem 0.78rem;
    font-size: var(--psy-fs-xs);
    font-weight: 700;
    background: rgba(255, 255, 255, 0.86);
    color: var(--psy-color-text-strong);
}

.psy-pill--whatsapp {
    border-color: var(--psy-color-conversion-chip-wa-border);
    color: var(--psy-color-conversion-chip-wa-text);
}

.psy-section {
    padding-block: var(--psy-space-15);
}

.psy-section__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--psy-space-8);
    margin-bottom: var(--psy-space-9);
}

.psy-section__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--psy-radius-pill);
    border: 1px solid var(--psy-line);
    background: var(--psy-color-surface);
    color: var(--psy-color-text-strong);
    padding: 0.46rem var(--psy-space-8);
    font-size: var(--psy-fs-sm);
    font-weight: 700;
    transition: background-color var(--psy-motion-fast) var(--psy-ease-standard), color var(--psy-motion-fast) var(--psy-ease-standard), border-color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-section__action:hover {
    background: var(--psy-color-hover-soft);
    color: var(--psy-accent-dark);
    border-color: var(--psy-color-accent-soft-border);
}

.psy-section__lead {
    margin: 0 0 var(--psy-space-10);
    color: var(--psy-color-text-muted);
    font-size: var(--psy-fs-md);
    max-width: 840px;
}

.psy-body h1,
.psy-body h2,
.psy-body h3 {
    margin: 0;
    font-family: var(--psy-font-serif);
    letter-spacing: var(--psy-letter-heading);
    color: var(--psy-color-text-heading);
}

.psy-body h2 {
    font-size: var(--psy-fs-h2);
}

.psy-body h3 {
    font-size: var(--psy-fs-lg);
}

.psy-pagehead {
    padding-top: var(--psy-space-14);
    padding-bottom: var(--psy-space-9);
}

.psy-shellhero {
    padding-block: var(--psy-space-13) var(--psy-space-10);
}

.psy-shellhero__inner {
    border: 1px solid rgba(20, 46, 56, 0.08);
    border-radius: calc(var(--psy-radius-xl) + 2px);
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.82), transparent 30%),
        linear-gradient(135deg, rgba(255, 251, 246, 0.92) 0%, rgba(241, 236, 228, 0.96) 52%, rgba(228, 236, 232, 0.94) 100%);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-8);
    padding: clamp(1.4rem, 2.4vw, 2.3rem);
}

.psy-shellhero__content {
    max-width: 48rem;
}

.psy-shellhero__eyebrow {
    margin: 0 0 var(--psy-space-4);
    color: var(--psy-accent-dark);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.psy-shellhero__content h1 {
    margin: 0;
    font-family: var(--psy-font-serif);
    font-size: clamp(2.2rem, 4.2vw, 4rem);
    line-height: 0.94;
    letter-spacing: var(--psy-letter-tight);
    color: var(--psy-color-text-heading);
    max-width: 12ch;
}

.psy-shellhero__lead {
    margin: var(--psy-space-7) 0 0;
    max-width: 38rem;
    color: var(--psy-color-text-strong);
    font-size: var(--psy-fs-lead);
}

.psy-shellhero__body {
    margin-top: var(--psy-space-8);
    max-width: 46rem;
}

.psy-shellhero__meta {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.psy-shellhero__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0 0.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid var(--psy-line);
    color: var(--psy-color-text-muted);
    font-size: 0.84rem;
    font-weight: 700;
}

.psy-detailhero {
    padding-block: var(--psy-space-11) var(--psy-space-7);
}

.psy-detailhero__inner {
    border-bottom: 1px solid rgba(20, 46, 56, 0.08);
    padding-bottom: var(--psy-space-7);
}

.psy-detailhero__content {
    max-width: 52rem;
    display: grid;
    gap: var(--psy-space-4);
}

.psy-detailhero__eyebrow {
    margin: 0;
    color: var(--psy-accent-dark);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.psy-detailhero__content h1 {
    margin: 0;
    font-family: var(--psy-font-serif);
    font-size: clamp(2.1rem, 3.8vw, 3.7rem);
    line-height: 0.96;
    letter-spacing: var(--psy-letter-tight);
    color: var(--psy-color-text-heading);
}

.psy-detailhero__lead {
    margin: 0;
    max-width: 44rem;
    color: var(--psy-color-text-strong);
    font-size: var(--psy-fs-lead);
}

.psy-detailhero__actions {
    margin: var(--psy-space-3) 0 0;
}

.psy-detailhero__actions .psy-btn--outline {
    border-color: rgba(19, 64, 71, 0.16);
    background: rgba(255, 255, 255, 0.92);
    color: var(--psy-accent-dark);
    box-shadow: 0 12px 24px rgba(19, 64, 71, 0.08);
}

.psy-detailhero__actions .psy-btn--outline:hover,
.psy-detailhero__actions .psy-btn--outline:focus-visible {
    border-color: rgba(19, 64, 71, 0.28);
    background: rgba(255, 255, 255, 0.98);
    color: var(--psy-color-text-heading);
}

.psy-detailfacts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem 1rem;
    padding-bottom: var(--psy-space-6);
}

.psy-pagehead__lead {
    color: var(--psy-muted);
    font-size: 1.05rem;
    max-width: 860px;
}

.psy-rich {
    color: var(--psy-color-rich-text);
    line-height: var(--psy-lh-rich);
    font-size: var(--psy-fs-md);
}

.psy-rich h2,
.psy-rich h3,
.psy-rich h4 {
    margin-top: 1.3em;
}

.psy-rich--long {
    max-width: 860px;
}

.psy-values-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-value-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-value-card h3 {
    margin: 0;
    font-size: var(--psy-fs-lg);
}

.psy-value-card p {
    margin: 0;
    color: var(--psy-color-text-muted);
}

.psy-timeline {
    display: grid;
    gap: var(--psy-space-8);
    border-left: 2px solid var(--psy-line);
    padding-left: var(--psy-space-10);
    max-width: 920px;
}

.psy-timeline__item {
    position: relative;
    background: var(--psy-color-surface);
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    padding: var(--psy-space-8);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-timeline__item::before {
    content: "";
    position: absolute;
    left: calc(-1 * var(--psy-space-10) - 9px);
    top: var(--psy-space-8);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--psy-accent);
    box-shadow: 0 0 0 4px var(--psy-color-accent-ring);
}

.psy-timeline__period {
    margin: 0;
    color: var(--psy-accent-dark);
    font-weight: 700;
    font-size: var(--psy-fs-sm);
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.psy-timeline__item h3 {
    margin: 0;
    font-size: var(--psy-fs-lg);
}

.psy-timeline__item p {
    margin: 0;
    color: var(--psy-color-text-muted);
}

.psy-cards {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-cards--services,
.psy-cards--articles,
.psy-cards--media {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.psy-cards--staff {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.psy-card {
    border-radius: var(--psy-radius-lg);
    overflow: hidden;
    background: var(--psy-card);
    border: 1px solid var(--psy-line);
    box-shadow: var(--psy-shadow-soft);
    display: flex;
    flex-direction: column;
}

.psy-card__img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    width: 100%;
}

.psy-card--staff .psy-card__img {
    aspect-ratio: 4 / 5;
}

.psy-card__body {
    padding: var(--psy-space-8);
    display: grid;
    gap: 0.6rem;
}

.psy-home-flow {
    display: grid;
    gap: clamp(2rem, 4.5vw, 3.4rem);
    padding-top: clamp(1.1rem, 2.4vw, 1.8rem);
    padding-bottom: clamp(2.4rem, 5vw, 4rem);
}

.psy-home-intro {
    margin-bottom: -0.15rem;
}

.psy-home-intro__surface {
    display: grid;
    gap: 1rem;
    padding: clamp(1.2rem, 2.6vw, 1.9rem) clamp(1.15rem, 2.6vw, 2rem);
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: calc(var(--psy-radius-lg) + 2px);
    background:
        radial-gradient(circle at top right, rgba(226, 238, 237, 0.34), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(246, 244, 239, 0.9));
    box-shadow: var(--psy-shadow-soft);
}

.psy-home-intro__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.9fr);
    gap: clamp(1rem, 2.8vw, 1.8rem);
    align-items: stretch;
}

.psy-home-intro__main {
    display: grid;
    gap: 1rem;
}

.psy-home-intro__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    margin: 0;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--psy-accent-dark);
}

.psy-home-intro__eyebrow::before {
    content: "";
    width: 2.2rem;
    height: 1px;
    background: rgba(19, 64, 71, 0.24);
}

.psy-home-intro__copy {
    display: grid;
    gap: 0.85rem;
}

.psy-home-intro__copy h2 {
    margin: 0;
    font-size: clamp(1.7rem, 2.8vw, 2.35rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
}

.psy-home-intro__body {
    max-width: 46rem;
    color: var(--psy-color-text-muted);
    font-size: clamp(1rem, 1.4vw, 1.08rem);
    line-height: 1.72;
}

.psy-home-intro__body > :first-child {
    margin-top: 0;
}

.psy-home-intro__body > :last-child {
    margin-bottom: 0;
}

.psy-home-intro__body ul {
    display: grid;
    gap: 0.5rem;
    padding-left: 1.1rem;
}

.psy-home-intro__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.psy-home-intro__actions .psy-btn--ghost {
    border-color: rgba(19, 64, 71, 0.16);
    background: rgba(255, 255, 255, 0.86);
    color: var(--psy-color-text-strong);
    box-shadow: 0 12px 24px rgba(18, 41, 48, 0.06);
}

.psy-home-intro__actions .psy-btn--ghost:hover,
.psy-home-intro__actions .psy-btn--ghost:focus-visible {
    border-color: rgba(19, 64, 71, 0.28);
    background: rgba(241, 248, 247, 0.98);
    color: var(--psy-accent-dark);
    box-shadow: 0 16px 28px rgba(18, 41, 48, 0.1);
}

.psy-home-intro__aside {
    display: grid;
}

.psy-home-intro__card {
    height: 100%;
    padding: clamp(1rem, 2.2vw, 1.35rem);
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: calc(var(--psy-radius-lg) - 2px);
    background:
        radial-gradient(circle at top right, rgba(198, 225, 223, 0.3), transparent 34%),
        linear-gradient(180deg, rgba(241, 248, 247, 0.98), rgba(255, 255, 255, 0.94));
    display: grid;
    gap: 0.95rem;
}

.psy-home-intro__card h3 {
    margin: 0;
    font-size: clamp(1.05rem, 1.6vw, 1.22rem);
    line-height: 1.15;
}

.psy-home-intro__points {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.8rem;
}

.psy-home-intro__points li {
    position: relative;
    padding-left: 1rem;
    color: var(--psy-color-text);
    line-height: 1.55;
}

.psy-home-intro__points li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7rem;
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 999px;
    background: rgba(19, 64, 71, 0.78);
}

.psy-home-showcase {
    display: grid;
    gap: clamp(1.2rem, 2.8vw, 2rem);
}

.psy-home-showcase__block {
    min-width: 0;
}

.psy-home-showcase-section {
    padding-block: 0;
}

.psy-home-showcase-overview,
.psy-home-showcase-banner,
.psy-home-showcase-grid .psy-home-showcase-card,
.psy-home-showcase-timeline .psy-home-showcase-timeline__item {
    border: 1px solid rgba(19, 64, 71, 0.12);
    box-shadow: var(--psy-shadow-soft);
}

.psy-home-showcase-overview,
.psy-home-showcase-banner {
    border-radius: calc(var(--psy-radius-lg) + 4px);
    overflow: hidden;
    position: relative;
}

.psy-home-showcase-section--overview .psy-home-showcase-overview {
    display: grid;
    gap: 0.9rem;
    padding: clamp(1.25rem, 2.6vw, 1.9rem);
    background:
        radial-gradient(circle at top right, rgba(223, 233, 232, 0.34), transparent 32%),
        linear-gradient(145deg, rgba(255, 251, 246, 0.96), rgba(243, 247, 245, 0.92));
}

.psy-home-showcase-overview__eyebrow {
    margin: 0;
    color: var(--psy-accent-dark);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.psy-home-showcase-overview .psy-section__head {
    margin-bottom: 0;
}

.psy-home-showcase-overview .psy-section__head h2 {
    margin: 0;
    max-width: 18ch;
    font-size: clamp(1.7rem, 2.7vw, 2.45rem);
    line-height: 0.96;
    letter-spacing: -0.04em;
}

.psy-home-showcase-overview .psy-rich {
    max-width: 52rem;
}

.psy-home-showcase-grid {
    align-items: stretch;
}

.psy-home-showcase-card {
    position: relative;
    overflow: hidden;
    transition:
        transform var(--psy-motion-fast) var(--psy-ease-standard),
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        box-shadow var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-home-showcase-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.1), transparent 46%);
}

.psy-home-showcase-card:hover,
.psy-home-showcase-card:focus-within {
    transform: translateY(-3px);
    border-color: rgba(19, 64, 71, 0.18);
    box-shadow: 0 18px 40px rgba(19, 64, 71, 0.1);
}

.psy-home-showcase-card h3 {
    position: relative;
    z-index: 1;
}

.psy-home-showcase-card p {
    position: relative;
    z-index: 1;
}

.psy-home-showcase-card .psy-btn {
    position: relative;
    z-index: 1;
    width: fit-content;
}

.psy-home-showcase-card--service {
    background:
        radial-gradient(circle at top right, rgba(225, 212, 191, 0.2), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 244, 238, 0.92));
}

.psy-home-showcase-card--trust {
    background:
        radial-gradient(circle at top left, rgba(201, 223, 226, 0.22), transparent 32%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(241, 247, 246, 0.92));
}

.psy-home-showcase-card--service .psy-btn--outline,
.psy-home-showcase-card--trust .psy-btn--outline {
    border-color: rgba(19, 64, 71, 0.16);
    background: rgba(255, 255, 255, 0.86);
    color: var(--psy-accent-dark);
}

.psy-home-showcase-card--service .psy-btn--outline:hover,
.psy-home-showcase-card--service .psy-btn--outline:focus-visible,
.psy-home-showcase-card--trust .psy-btn--outline:hover,
.psy-home-showcase-card--trust .psy-btn--outline:focus-visible {
    border-color: rgba(19, 64, 71, 0.26);
    background: rgba(255, 255, 255, 0.96);
    color: var(--psy-color-text-heading);
}

.psy-home-showcase-timeline {
    max-width: none;
    border-left-color: rgba(19, 64, 71, 0.14);
}

.psy-home-showcase-timeline .psy-home-showcase-timeline__item {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(246, 244, 239, 0.92));
}

.psy-home-showcase-banner {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(16rem, 0.85fr);
    gap: clamp(1rem, 2.5vw, 2rem);
    padding: clamp(1.2rem, 2.8vw, 2rem);
    background:
        radial-gradient(circle at top right, rgba(189, 217, 220, 0.28), transparent 34%),
        radial-gradient(circle at bottom left, rgba(232, 214, 193, 0.22), transparent 28%),
        linear-gradient(135deg, rgba(255, 251, 246, 0.98), rgba(241, 247, 245, 0.94));
}

.psy-home-showcase-banner__content {
    display: grid;
    gap: 0.9rem;
    align-content: start;
}

.psy-home-showcase-banner__content .psy-section__head {
    margin-bottom: 0;
}

.psy-home-showcase-banner__content .psy-section__head h2 {
    margin: 0;
    max-width: 18ch;
    font-size: clamp(1.75rem, 2.8vw, 2.55rem);
    line-height: 0.96;
    letter-spacing: -0.04em;
}

.psy-home-showcase-banner__content .psy-rich {
    max-width: 44rem;
}

.psy-home-showcase-banner__actions {
    display: grid;
    gap: 0.9rem;
    align-content: center;
    justify-items: start;
    padding: clamp(1rem, 2vw, 1.35rem);
    border-radius: calc(var(--psy-radius-md) + 4px);
    border: 1px solid rgba(19, 64, 71, 0.1);
    background: rgba(255, 255, 255, 0.62);
    backdrop-filter: blur(10px);
}

.psy-home-showcase-banner__actions > .psy-btn--primary {
    width: fit-content;
    box-shadow: 0 16px 32px rgba(19, 64, 71, 0.12);
}

.psy-home-showcase-banner__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.psy-home-showcase-banner__links .psy-btn--ghost {
    background: rgba(255, 255, 255, 0.82);
    border-color: rgba(19, 64, 71, 0.14);
    color: var(--psy-accent-dark);
}

.psy-home-showcase-banner__links .psy-btn--ghost:hover,
.psy-home-showcase-banner__links .psy-btn--ghost:focus-visible {
    background: rgba(255, 255, 255, 0.98);
    border-color: rgba(19, 64, 71, 0.24);
    color: var(--psy-color-text-heading);
}

body:has(.psy-home-flow) .psy-layout-cta-zone--footer {
    margin-top: clamp(0.8rem, 2.4vw, 1.7rem);
    margin-bottom: clamp(1rem, 2.8vw, 2rem);
    padding-top: 0;
}

body:has(.psy-home-flow) .psy-layout-cta-zone--footer .psy-layout-cta {
    padding: clamp(1.15rem, 2.5vw, 1.65rem);
    border-radius: calc(var(--psy-radius-lg) + 4px);
    border-color: rgba(19, 64, 71, 0.12);
    background:
        radial-gradient(circle at top right, rgba(210, 232, 233, 0.2), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 248, 247, 0.9));
    box-shadow: var(--psy-shadow-soft);
}

body:has(.psy-home-flow) .psy-layout-cta-zone--footer .psy-layout-cta__content {
    max-width: 44rem;
}

.psy-home-rail {
    display: grid;
    gap: var(--psy-space-8);
    margin-bottom: 0;
}

.psy-home-rail__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: var(--psy-space-8);
    padding: clamp(1.05rem, 2vw, 1.4rem) clamp(1.15rem, 2.5vw, 1.6rem);
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: calc(var(--psy-radius-lg) + 2px);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(248, 245, 239, 0.82)),
        rgba(255, 255, 255, 0.78);
    box-shadow: var(--psy-shadow-soft);
}

.psy-home-rail[data-home-rail-kind="video"] .psy-home-rail__head {
    background:
        radial-gradient(circle at top left, rgba(185, 218, 225, 0.28), transparent 36%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(240, 248, 247, 0.88));
}

.psy-home-rail[data-home-rail-kind="article"] .psy-home-rail__head {
    background:
        radial-gradient(circle at top right, rgba(233, 213, 188, 0.24), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(249, 244, 238, 0.88));
}

.psy-home-rail__deck {
    display: grid;
    gap: 0.75rem;
}

.psy-home-rail__eyebrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
}

.psy-home-rail__eyebrow-label,
.psy-home-rail__eyebrow-count {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.psy-home-rail__eyebrow-label {
    padding: 0.38rem 0.82rem;
    background: rgba(18, 76, 87, 0.1);
    color: var(--psy-accent-dark);
}

.psy-home-rail__eyebrow-count {
    padding: 0.38rem 0.74rem;
    border: 1px solid rgba(19, 64, 71, 0.12);
    background: rgba(255, 255, 255, 0.78);
    color: var(--psy-color-text-muted);
}

.psy-home-rail__copy {
    display: grid;
    gap: 0.55rem;
    max-width: 42rem;
}

.psy-home-rail__copy h2,
.psy-home-rail__copy p {
    margin: 0;
}

.psy-home-rail__copy h2 {
    font-size: clamp(1.85rem, 3vw, 2.7rem);
    line-height: 0.96;
    letter-spacing: -0.04em;
}

.psy-home-rail__copy p {
    max-width: 38rem;
    color: var(--psy-color-text-muted);
}

.psy-u-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.psy-home-rail__tools {
    display: grid;
    justify-items: end;
    gap: 0.9rem;
    align-content: end;
}

.psy-home-rail__support {
    margin: 0;
    max-width: 18rem;
    color: var(--psy-color-text-muted);
    font-size: 0.94rem;
    line-height: 1.45;
    text-align: right;
}

.psy-home-rail__action {
    flex-shrink: 0;
    min-height: 3rem;
    padding-inline: 1.1rem;
}

.psy-home-rail__action.psy-btn--ghost {
    color: var(--psy-accent-dark);
    border-color: rgba(19, 64, 71, 0.16);
    background: rgba(255, 255, 255, 0.74);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.psy-home-rail__action.psy-btn--ghost:hover,
.psy-home-rail__action.psy-btn--ghost:focus-visible {
    color: var(--psy-accent-dark);
    border-color: rgba(19, 64, 71, 0.26);
    background: rgba(255, 255, 255, 0.92);
}

.psy-home-rail__viewport {
    position: relative;
    overflow-x: auto;
    padding-inline: 0;
    padding-inline-end: clamp(1.25rem, 4vw, 3rem);
    padding-bottom: 0.4rem;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
}

.psy-home-rail__viewport::-webkit-scrollbar {
    display: none;
}

.psy-home-rail__viewport:focus-visible {
    outline: 2px solid rgba(18, 76, 87, 0.48);
    outline-offset: 8px;
    border-radius: calc(var(--psy-radius-lg) + 4px);
}

.psy-home-rail__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(18.75rem, min(86vw, 44rem));
    gap: var(--psy-space-6);
}

.psy-home-rail__slide {
    min-width: 0;
    scroll-snap-align: start;
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        opacity var(--psy-motion-default) var(--psy-ease-standard),
        filter var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-home-rail[data-home-rail-ready="true"] .psy-home-rail__slide {
    opacity: 0.82;
    filter: saturate(0.92);
}

.psy-home-rail[data-home-rail-ready="true"] .psy-home-rail__slide.is-active {
    opacity: 1;
    filter: saturate(1);
    transform: translateY(-2px);
}

.psy-home-rail__card {
    height: 100%;
    border-radius: calc(var(--psy-radius-lg) + 2px);
    overflow: hidden;
    background: var(--psy-card);
    border: 1px solid rgba(19, 64, 71, 0.12);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    grid-template-rows: auto 1fr;
    color: inherit;
}

.psy-home-rail__card[data-home-rail-card-kind="video"] {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 247, 248, 0.98));
}

.psy-home-rail__card[data-home-rail-card-kind="article"] {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 244, 238, 0.98));
}

.psy-home-rail__card:hover,
.psy-home-rail__card:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 24px 46px rgba(18, 41, 48, 0.12);
}

.psy-home-rail__card:focus-visible {
    outline: 2px solid rgba(18, 76, 87, 0.52);
    outline-offset: 3px;
}

.psy-home-rail__media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(7, 29, 41, 0.04), rgba(7, 29, 41, 0.12)),
        linear-gradient(135deg, #eef6f5 0%, #d8ece8 100%);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__media {
    aspect-ratio: 16 / 10;
    background:
        linear-gradient(180deg, rgba(7, 29, 41, 0.02), rgba(7, 29, 41, 0.28)),
        linear-gradient(135deg, #dceef0 0%, #c7dde4 48%, #bad3dd 100%);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__media--fallback {
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.88), transparent 24%),
        radial-gradient(circle at 78% 78%, rgba(255, 255, 255, 0.18), transparent 20%),
        linear-gradient(135deg, #d7edf2 0%, #c4dbe4 46%, #b5d0db 100%);
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__media--fallback {
    background:
        radial-gradient(circle at 82% 14%, rgba(255, 255, 255, 0.82), transparent 22%),
        linear-gradient(135deg, #f6efe8 0%, #ecdfd2 48%, #e3d4c4 100%);
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__media {
    aspect-ratio: 5 / 4;
    background:
        linear-gradient(180deg, rgba(255, 248, 243, 0.18), rgba(58, 31, 17, 0.06)),
        linear-gradient(135deg, #f7efe7 0%, #eee1d4 52%, #e7d8c9 100%);
}

.psy-home-rail__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-home-rail__card[data-home-rail-card-kind="video"]:hover .psy-home-rail__image,
.psy-home-rail__card[data-home-rail-card-kind="video"]:focus-visible .psy-home-rail__image {
    transform: scale(1.035);
}

.psy-home-rail__fallback {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: end;
    gap: 0.7rem;
    padding: 1.35rem;
    isolation: isolate;
}

.psy-home-rail__fallback-kicker {
    display: inline-flex;
    width: fit-content;
    padding: 0.28rem 0.65rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    color: var(--psy-accent-dark);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.psy-home-rail__fallback-title {
    max-width: 9ch;
    font-family: var(--psy-font-serif);
    font-size: clamp(2.1rem, 4vw, 3.3rem);
    line-height: 0.92;
    letter-spacing: -0.04em;
    color: rgba(17, 47, 60, 0.18);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__fallback::before {
    content: "";
    position: absolute;
    inset: 1rem 1rem auto auto;
    width: 7.2rem;
    height: 7.2rem;
    border-radius: 999px;
    background:
        radial-gradient(circle, rgba(255, 255, 255, 0.88) 0 28%, rgba(255, 255, 255, 0.12) 29% 58%, transparent 59%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
    opacity: 0.92;
    z-index: -1;
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__fallback::after {
    content: "";
    position: absolute;
    inset: auto 1.1rem 1.1rem auto;
    width: 11rem;
    height: 7rem;
    border-radius: 1.5rem;
    border: 1px solid rgba(17, 60, 71, 0.14);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0)),
        rgba(255, 255, 255, 0.14);
    backdrop-filter: blur(8px);
    z-index: -1;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__fallback::before {
    content: "";
    position: absolute;
    inset: 1rem 1rem auto 1rem;
    height: 1px;
    background: linear-gradient(90deg, rgba(126, 88, 58, 0.32), rgba(126, 88, 58, 0));
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__fallback::after {
    content: "";
    position: absolute;
    inset: 1.45rem 1.1rem 1.1rem auto;
    width: 38%;
    border-left: 1px solid rgba(126, 88, 58, 0.16);
    background:
        repeating-linear-gradient(
            180deg,
            transparent 0 0.72rem,
            rgba(126, 88, 58, 0.08) 0.72rem 0.78rem
        );
    opacity: 0.75;
    z-index: -1;
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__fallback-kicker {
    background: rgba(255, 255, 255, 0.86);
    color: #124b58;
    box-shadow: 0 10px 22px rgba(18, 75, 88, 0.12);
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__fallback-kicker {
    background: rgba(255, 248, 241, 0.92);
    color: #7d583c;
    box-shadow: 0 8px 18px rgba(125, 88, 60, 0.08);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__fallback-title {
    max-width: 8ch;
    color: rgba(17, 47, 60, 0.22);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.22);
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__fallback-title {
    max-width: 10ch;
    color: rgba(101, 73, 50, 0.22);
    line-height: 0.94;
}

.psy-home-rail__video-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(7, 29, 41, 0.26), transparent 34%),
        linear-gradient(0deg, rgba(7, 29, 41, 0.38), transparent 38%);
}

.psy-home-rail__video-play {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    width: fit-content;
    min-height: 2.3rem;
    padding: 0.34rem 0.82rem 0.34rem 0.42rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--psy-accent-dark);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.psy-home-rail__video-play-icon {
    display: inline-grid;
    place-items: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 999px;
    background: var(--psy-accent-dark);
    color: #fff;
    font-size: 0.68rem;
}

.psy-home-rail__video-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-start;
    align-items: flex-end;
}

.psy-home-rail__video-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.34rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: #fff;
    font-size: 0.8rem;
    font-weight: 600;
    backdrop-filter: blur(10px);
}

.psy-home-rail__body {
    display: grid;
    align-content: start;
    gap: 0.72rem;
    padding: var(--psy-space-8);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__body {
    gap: 0.8rem;
    padding: 1.2rem 1.15rem 1.25rem;
}

.psy-home-rail__body h3,
.psy-home-rail__body p {
    margin: 0;
}

.psy-home-rail__body h3 {
    font-size: clamp(1.36rem, 2.2vw, 1.82rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.psy-home-rail__body p {
    color: var(--psy-color-text-muted);
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__body h3 {
    font-size: clamp(1.5rem, 2.3vw, 2rem);
    line-height: 0.98;
}

.psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__body p {
    max-width: 34ch;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body {
    position: relative;
    gap: 0.72rem;
    padding: 1.05rem 1rem;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body::before {
    content: "";
    position: absolute;
    top: 0;
    left: 1rem;
    right: 1rem;
    height: 1px;
    background: linear-gradient(90deg, rgba(145, 107, 74, 0.24), rgba(145, 107, 74, 0.02));
}

.psy-home-rail__editorial-kicker {
    display: none !important;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__meta {
    gap: 0.35rem 0.6rem;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__meta-item {
    font-size: 0.78rem;
    color: rgba(92, 69, 48, 0.78);
    font-weight: 600;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body h3 {
    max-width: none;
    font-size: clamp(1.26rem, 1.9vw, 1.72rem);
    line-height: 1;
    letter-spacing: -0.045em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}

.psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body p {
    max-width: none;
    color: rgba(77, 59, 44, 0.86);
    line-height: 1.44;
    font-size: 0.95rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.psy-home-rail__controls {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.15rem;
}

.psy-home-rail__nav-overlay {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: clamp(0.45rem, 1.8vw, 1.1rem);
    pointer-events: none;
}

.psy-home-rail__navbtn {
    width: 2.9rem;
    height: 2.9rem;
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    color: var(--psy-accent-dark);
    display: inline-grid;
    place-items: center;
    font-size: 1rem;
    pointer-events: auto;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(18, 41, 48, 0.2);
    backdrop-filter: blur(6px);
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        border-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-home-rail__navbtn:hover,
.psy-home-rail__navbtn:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(18, 76, 87, 0.32);
    box-shadow: 0 16px 30px rgba(18, 41, 48, 0.12);
}

.psy-home-rail__navbtn:focus-visible {
    outline: 2px solid rgba(18, 76, 87, 0.45);
    outline-offset: 3px;
}

.psy-home-rail__navbtn:disabled {
    opacity: 0;
    visibility: hidden;
}

.psy-home-rail__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.psy-home-rail__dot {
    width: 0.72rem;
    height: 0.72rem;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(18, 76, 87, 0.18);
    cursor: pointer;
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        background-color var(--psy-motion-default) var(--psy-ease-standard),
        width var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-home-rail__dot.is-active {
    width: 2rem;
    background: rgba(18, 76, 87, 0.86);
}

.psy-home-rail__dot:focus-visible {
    outline: 2px solid rgba(18, 76, 87, 0.42);
    outline-offset: 3px;
}

.psy-home-rail__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.8rem;
}

.psy-home-rail__meta-item {
    color: var(--psy-muted);
    font-size: 0.82rem;
    font-weight: 600;
}

.psy-meta {
    color: var(--psy-muted);
    font-size: 0.86rem;
    margin: 0;
}

.psy-appointment-cta {
    margin: 2.2rem 0 3rem;
}

.psy-appointment-cta__inner {
    border: 1px solid var(--psy-color-appointment-border-soft);
    border-radius: var(--psy-radius-lg);
    padding: var(--psy-space-13);
    background: var(--psy-gradient-appointment);
    display: grid;
    gap: var(--psy-space-6);
}

.psy-filterbar {
    margin-bottom: 1rem;
}

.psy-staff-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-dept-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-staff-scope__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-dept-scope__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-staff-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.45rem var(--psy-space-7);
    display: inline-flex;
    align-items: center;
    gap: var(--psy-space-5);
    font-size: var(--psy-fs-sm);
}

.psy-staff-scope__chip strong {
    color: var(--psy-accent-dark);
}

.psy-dept-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.45rem var(--psy-space-7);
    display: inline-flex;
    align-items: center;
    gap: var(--psy-space-5);
    font-size: var(--psy-fs-sm);
}

.psy-dept-scope__chip strong {
    color: var(--psy-accent-dark);
}

.psy-staff-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-dept-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-contact-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-contact-scope__chips {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-6);
}

.psy-contact-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-7);
    display: grid;
    gap: var(--psy-space-3);
    transition: border-color var(--psy-motion-fast) var(--psy-ease-standard), background-color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-contact-scope__chip strong,
.psy-contact-scope__chip span,
.psy-contact-scope__chip small {
    margin: 0;
}

.psy-contact-scope__chip strong {
    color: var(--psy-color-text-strong);
}

.psy-contact-scope__chip span,
.psy-contact-scope__chip small {
    color: var(--psy-muted);
    font-size: var(--psy-fs-sm);
}

.psy-contact-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-appointment-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-appointment-scope__chips {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-6);
}

.psy-appointment-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-7);
    display: grid;
    gap: var(--psy-space-3);
    transition: border-color var(--psy-motion-fast) var(--psy-ease-standard), background-color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-appointment-scope__chip strong,
.psy-appointment-scope__chip span,
.psy-appointment-scope__chip small {
    margin: 0;
}

.psy-appointment-scope__chip strong {
    color: var(--psy-color-text-strong);
}

.psy-appointment-scope__chip span,
.psy-appointment-scope__chip small {
    color: var(--psy-muted);
    font-size: var(--psy-fs-sm);
}

.psy-appointment-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-filterform {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: 0.85rem;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--psy-space-6);
    align-items: end;
}

.psy-filterform--dictionary {
    grid-template-columns: minmax(0, 1fr) auto;
}

.psy-dictionary-featured {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-dictionary-featured__card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-dictionary-featured__card h3,
.psy-dictionary-featured__card p {
    margin: 0;
}

.psy-dictionary-letters {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: var(--psy-space-5);
}

.psy-dictionary-letters__item {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.42rem 0.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--psy-space-4);
    font-size: var(--psy-fs-sm);
}

.psy-dictionary-letters__item strong {
    color: var(--psy-accent-dark);
}

.psy-dictionary-letters__item.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-dictionary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-dictionary-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-dictionary-card h3,
.psy-dictionary-card p {
    margin: 0;
}

.psy-dictionary-detail {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-dictionary-detail__block {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-dictionary-detail__block h2,
.psy-dictionary-detail__block p {
    margin: 0;
}

.psy-filterform--topic-hub {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 240px) auto;
}

.psy-filterform--topic-hub.psy-filterform--compact {
    grid-template-columns: minmax(0, 1fr) auto;
}

.psy-topic-hub-featured {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-topic-hub-featured__card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-topic-hub-featured__card h3,
.psy-topic-hub-featured__card p {
    margin: 0;
}

.psy-topic-hub-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-topic-hub-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-topic-hub-card h3,
.psy-topic-hub-card p {
    margin: 0;
}

.psy-topic-hub-card__action {
    margin-top: auto;
    padding-top: 0.25rem;
}

.psy-topic-hub-card__action a {
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-topic-hub-card__action a:hover,
.psy-topic-hub-card__action a:focus-visible {
    color: var(--psy-color-text-heading);
}

.psy-topic-hub-metrics {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-4);
    font-size: var(--psy-fs-sm);
    color: var(--psy-muted);
}

.psy-topic-cluster-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-topic-cluster-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-topic-cluster-card--full {
    grid-column: 1 / -1;
}

.psy-topic-cluster-card h2,
.psy-topic-cluster-card p {
    margin: 0;
}

.psy-topic-cluster-links {
    margin: 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.35rem;
}

.psy-filterform--services {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 240px) auto;
}

.psy-service-featured {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-service-featured__card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-service-featured__card h3,
.psy-service-featured__card p {
    margin: 0;
}

.psy-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-service-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-service-card h3,
.psy-service-card p {
    margin: 0;
}

.psy-service-card__actions {
    display: flex;
    gap: var(--psy-space-5);
    flex-wrap: wrap;
}

.psy-service-card__actions .psy-btn {
    min-height: 2.7rem;
}

.psy-service-card__actions .psy-btn--ghost {
    background: rgba(255, 255, 255, 0.98);
    color: var(--psy-accent-dark);
    border-color: rgba(23, 79, 88, 0.26);
}

.psy-service-card__actions .psy-btn--ghost:hover,
.psy-service-card__actions .psy-btn--ghost:focus-visible {
    background: rgba(241, 247, 246, 0.96);
    color: var(--psy-accent-dark);
    border-color: rgba(23, 79, 88, 0.36);
}

.psy-service-card__actions .psy-btn--primary {
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
}

.psy-service-card__actions .psy-btn--primary:hover,
.psy-service-card__actions .psy-btn--primary:focus-visible {
    background: var(--psy-accent-dark);
    color: var(--psy-color-on-accent);
}

.psy-service-detail {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-service-detail[data-service-detail-page] {
    max-width: 1020px;
}

.psy-service-detail__flow {
    position: relative;
}

.psy-service-detail__flow > :first-child .psy-service-section,
.psy-service-detail__flow > .psy-service-section:first-child {
    padding-top: 0;
}

.psy-service-detail__flow > :last-child .psy-service-section,
.psy-service-detail__flow > .psy-service-section:last-child {
    padding-bottom: 0;
}

.psy-service-detail__block {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-service-detail__block h2,
.psy-service-detail__block p {
    margin: 0;
}

.psy-service-detail__actions {
    display: flex;
    gap: var(--psy-space-5);
    flex-wrap: wrap;
}

.psy-service-detail [data-intake-cta] {
    border-color: rgba(18, 76, 87, 0.14);
    background:
        radial-gradient(circle at top left, rgba(208, 226, 221, 0.28), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(243, 248, 246, 0.97) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-service-detail [data-intake-cta] .psy-btn {
    width: fit-content;
}

.psy-service-detail [data-intake-cta] .psy-btn--ghost,
.psy-service-links .psy-btn--outline {
    border-color: rgba(18, 76, 87, 0.16);
    background: rgba(255, 255, 255, 0.84);
    color: var(--psy-accent-dark);
}

.psy-service-detail [data-intake-cta] .psy-btn--ghost:hover,
.psy-service-detail [data-intake-cta] .psy-btn--ghost:focus-visible,
.psy-service-links .psy-btn--outline:hover,
.psy-service-links .psy-btn--outline:focus-visible {
    border-color: rgba(18, 76, 87, 0.24);
    background: rgba(255, 255, 255, 0.96);
    color: var(--psy-accent-dark);
}

.psy-service-section {
    position: relative;
}

.psy-service-section .psy-section__head {
    margin-bottom: var(--psy-space-8);
}

.psy-service-section .psy-section__head h2 {
    max-width: 18ch;
}

.psy-service-overview {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(18, 76, 87, 0.14);
    border-radius: var(--psy-radius-lg);
    background:
        radial-gradient(circle at top right, rgba(236, 223, 209, 0.34), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(244, 248, 246, 0.97) 100%);
    padding: clamp(1.35rem, 2.2vw, 2.15rem);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-service-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.96) 0%, rgba(197, 140, 100, 0.9) 100%);
}

.psy-service-overview__eyebrow {
    margin: 0;
    color: var(--psy-accent-dark);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.psy-service-overview .psy-section__head {
    margin-bottom: 0;
}

.psy-service-overview .psy-rich > :first-child,
.psy-service-split__content .psy-rich > :first-child,
.psy-service-note .psy-rich > :first-child,
.psy-service-faq__item .psy-rich > :first-child {
    margin-top: 0;
}

.psy-service-overview .psy-rich > :last-child,
.psy-service-split__content .psy-rich > :last-child,
.psy-service-note .psy-rich > :last-child,
.psy-service-faq__item .psy-rich > :last-child {
    margin-bottom: 0;
}

.psy-service-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-7);
}

.psy-service-card-grid__item {
    min-height: 100%;
    border-color: rgba(18, 76, 87, 0.12);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 249, 247, 0.98) 100%);
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        border-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-service-card-grid__item:nth-child(4n + 2),
.psy-service-card-grid__item:nth-child(4n + 3) {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(249, 244, 239, 0.98) 100%);
}

.psy-service-card-grid__item:hover,
.psy-service-card-grid__item:focus-within {
    transform: translateY(-4px);
    border-color: rgba(18, 76, 87, 0.24);
    box-shadow: var(--psy-shadow-pop);
}

.psy-service-timeline {
    max-width: none;
}

.psy-service-timeline .psy-timeline__item {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(245, 248, 246, 0.98) 100%);
    border-color: rgba(18, 76, 87, 0.12);
}

.psy-service-split {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.95fr);
    gap: var(--psy-space-12);
    align-items: stretch;
}

.psy-service-split.is-media-left .psy-service-split__media {
    order: -1;
}

.psy-service-split__content,
.psy-service-split__media {
    min-width: 0;
}

.psy-service-split__content {
    border: 1px solid rgba(18, 76, 87, 0.12);
    border-radius: var(--psy-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 248, 247, 0.98) 100%);
    padding: clamp(1.35rem, 2vw, 2rem);
    box-shadow: var(--psy-shadow-soft);
}

.psy-service-split__content .psy-section__head {
    margin-bottom: var(--psy-space-8);
}

.psy-service-split__media {
    display: grid;
}

.psy-service-split__image,
.psy-service-split__placeholder {
    width: 100%;
    min-height: 21rem;
    border-radius: var(--psy-radius-lg);
    box-shadow: var(--psy-shadow-soft);
}

.psy-service-split__image {
    height: 100%;
    object-fit: cover;
    display: block;
    border: 1px solid rgba(18, 76, 87, 0.12);
}

.psy-service-split__placeholder {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(18, 76, 87, 0.14);
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.96) 0%, rgba(229, 238, 235, 0.95) 22%, rgba(200, 217, 211, 0.92) 48%, rgba(26, 76, 84, 0.93) 100%);
}

.psy-service-split__orb,
.psy-service-split__line {
    position: absolute;
    display: block;
}

.psy-service-split__orb {
    border-radius: 50%;
    filter: blur(2px);
}

.psy-service-split__orb--a {
    width: 10rem;
    height: 10rem;
    top: 2rem;
    left: 2rem;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.74) 0%, rgba(255, 255, 255, 0.08) 70%);
}

.psy-service-split__orb--b {
    width: 12rem;
    height: 12rem;
    right: -1.5rem;
    bottom: -2rem;
    background: radial-gradient(circle, rgba(239, 221, 207, 0.66) 0%, rgba(239, 221, 207, 0.08) 70%);
}

.psy-service-split__line {
    border-radius: var(--psy-radius-pill);
    background: rgba(255, 255, 255, 0.68);
}

.psy-service-split__line--a {
    width: 60%;
    height: 1px;
    top: 34%;
    right: 10%;
    transform: rotate(-22deg);
}

.psy-service-split__line--b {
    width: 44%;
    height: 1px;
    left: 12%;
    bottom: 27%;
    opacity: 0.82;
    transform: rotate(26deg);
}

.psy-service-note {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(18, 76, 87, 0.12);
    border-radius: var(--psy-radius-lg);
    padding: clamp(1.35rem, 2vw, 2rem);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-service-note::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
}

.psy-service-note .psy-section__head {
    margin-bottom: 0;
}

.psy-service-note--privacy {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(242, 248, 247, 0.98) 100%);
}

.psy-service-note--privacy::before {
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.96) 0%, rgba(88, 138, 146, 0.9) 100%);
}

.psy-service-note--ethics {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(247, 244, 238, 0.98) 100%);
}

.psy-service-note--ethics::before {
    background: linear-gradient(180deg, rgba(149, 109, 73, 0.96) 0%, rgba(203, 148, 104, 0.9) 100%);
}

.psy-service-note--referral {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(243, 246, 250, 0.98) 100%);
}

.psy-service-note--referral::before {
    background: linear-gradient(180deg, rgba(70, 96, 128, 0.96) 0%, rgba(121, 145, 175, 0.9) 100%);
}

.psy-service-note--neutral {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 248, 247, 0.98) 100%);
}

.psy-service-note--neutral::before {
    background: linear-gradient(180deg, rgba(63, 96, 101, 0.92) 0%, rgba(115, 143, 144, 0.88) 100%);
}

.psy-service-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-7);
}

.psy-service-faq__item {
    border: 1px solid rgba(18, 76, 87, 0.12);
    border-radius: var(--psy-radius-md);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 249, 247, 0.98) 100%);
    padding: var(--psy-space-9);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-service-faq__item h3 {
    margin: 0;
    font-size: var(--psy-fs-lg);
}

.psy-service-links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-service-links .psy-btn {
    min-height: 3rem;
    padding-inline: 1.05rem;
}

.psy-service-related__copy {
    display: grid;
    gap: var(--psy-space-3);
    max-width: 52rem;
}

.psy-service-related__copy h2,
.psy-service-related__copy p {
    margin: 0;
}

.psy-service-related__copy p {
    color: var(--psy-color-text-muted);
    max-width: 68ch;
}

.psy-clinic-trust-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-clinic-trust-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-clinic-trust-card h3,
.psy-clinic-trust-card p {
    margin: 0;
}

.psy-clinic-trust-clinic-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-clinic-trust-clinic-card h3,
.psy-clinic-trust-clinic-card p,
.psy-clinic-trust-clinic-card h4 {
    margin: 0;
}

.psy-clinic-trust-clinic-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-6);
}

.psy-clinic-trust-detail {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-clinic-trust-detail__block {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-clinic-trust-detail__block h2,
.psy-clinic-trust-detail__block h3,
.psy-clinic-trust-detail__block p {
    margin: 0;
}

.psy-approach-page {
    display: grid;
}

.psy-clinic-trust-detail--approach {
    max-width: 980px;
}

.psy-clinic-trust-detail__block--approach-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border-color: var(--psy-color-layout-cta-accent-border);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(237, 244, 241, 0.94) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-clinic-trust-detail__block--approach-overview::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 6px;
    background: linear-gradient(180deg, var(--psy-accent) 0%, var(--psy-warm) 100%);
}

.psy-clinic-trust-detail__block--approach-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-clinic-trust-detail__block--approach-overview p {
    max-width: 70ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-approach-page [data-service-cta] {
    border-color: var(--psy-color-layout-cta-soft-border);
    background: var(--psy-gradient-layout-cta-soft);
    box-shadow: var(--psy-shadow-soft);
}

.psy-approach-page [data-service-cta] .psy-btn {
    width: fit-content;
}

.psy-approach-flow {
    position: relative;
}

.psy-approach-flow > .block-html:first-child .psy-approach-section,
.psy-approach-flow > .psy-approach-section:first-child {
    padding-top: 0;
}

.psy-approach-flow > .block-html:last-child .psy-approach-section,
.psy-approach-flow > .psy-approach-section:last-child {
    padding-bottom: 0;
}

.psy-approach-section {
    position: relative;
}

.psy-approach-section .psy-section__head {
    margin-bottom: var(--psy-space-10);
}

.psy-approach-section .psy-section__head h2 {
    max-width: 18ch;
}

.psy-approach-principles,
.psy-approach-suitability {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.psy-approach-principles .psy-value-card,
.psy-approach-suitability .psy-value-card {
    min-height: 100%;
    border-color: var(--psy-color-border-strong);
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        border-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-approach-principles .psy-value-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(245, 248, 246, 0.98) 100%);
}

.psy-approach-suitability .psy-value-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(248, 244, 238, 0.98) 100%);
}

.psy-approach-principles .psy-value-card:hover,
.psy-approach-principles .psy-value-card:focus-within,
.psy-approach-suitability .psy-value-card:hover,
.psy-approach-suitability .psy-value-card:focus-within {
    transform: translateY(-4px);
    box-shadow: var(--psy-shadow-pop);
    border-color: var(--psy-color-accent-soft-border);
}

.psy-approach-timeline {
    max-width: none;
}

.psy-approach-timeline .psy-timeline__item {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(247, 250, 248, 0.98) 100%);
    border-color: var(--psy-color-border-strong);
}

.psy-approach-split {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.95fr);
    gap: var(--psy-space-12);
    align-items: stretch;
}

.psy-approach-split__content,
.psy-approach-split__visual {
    min-width: 0;
}

.psy-approach-split__content {
    border: 1px solid var(--psy-color-border-strong);
    border-radius: var(--psy-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(247, 250, 248, 0.98) 100%);
    padding: clamp(1.4rem, 2vw, 2rem);
    box-shadow: var(--psy-shadow-soft);
}

.psy-approach-split__content .psy-section__head {
    margin-bottom: var(--psy-space-8);
}

.psy-approach-split__content .psy-rich > :first-child,
.psy-approach-faq__item .psy-rich > :first-child {
    margin-top: 0;
}

.psy-approach-split__content .psy-rich > :last-child,
.psy-approach-faq__item .psy-rich > :last-child {
    margin-bottom: 0;
}

.psy-approach-split__visual {
    display: grid;
}

.psy-approach-visual {
    position: relative;
    min-height: 21rem;
    overflow: hidden;
    border: 1px solid var(--psy-color-layout-cta-accent-border);
    border-radius: var(--psy-radius-lg);
    background:
        radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.96) 0%, rgba(229, 239, 235, 0.95) 20%, rgba(201, 221, 213, 0.92) 48%, rgba(31, 78, 86, 0.92) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-approach-visual__photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: saturate(0.92) contrast(1.02);
}

.psy-approach-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 46%),
        radial-gradient(circle at 78% 24%, rgba(13, 72, 84, 0.18) 0%, rgba(13, 72, 84, 0) 42%);
    pointer-events: none;
}

.psy-approach-visual__orb,
.psy-approach-visual__line {
    position: absolute;
    display: block;
}

.psy-approach-visual__orb {
    border-radius: 50%;
    filter: blur(2px);
}

.psy-approach-visual__orb--a {
    width: 10rem;
    height: 10rem;
    top: 2.2rem;
    left: 2.2rem;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.72) 0%, rgba(255, 255, 255, 0.1) 72%);
}

.psy-approach-visual__orb--b {
    width: 13rem;
    height: 13rem;
    right: -2rem;
    bottom: -2.4rem;
    background: radial-gradient(circle, rgba(242, 225, 210, 0.64) 0%, rgba(242, 225, 210, 0.08) 70%);
}

.psy-approach-visual__line {
    border-radius: var(--psy-radius-pill);
    background: rgba(255, 255, 255, 0.68);
    transform-origin: center;
}

.psy-approach-visual__line--a {
    width: 62%;
    height: 1px;
    top: 34%;
    right: 11%;
    transform: rotate(-24deg);
}

.psy-approach-visual__line--b {
    width: 48%;
    height: 1px;
    bottom: 29%;
    left: 13%;
    opacity: 0.82;
    transform: rotate(28deg);
}

.psy-approach-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-approach-faq__item {
    border: 1px solid var(--psy-color-border-strong);
    border-radius: var(--psy-radius-md);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 249, 247, 0.98) 100%);
    padding: var(--psy-space-9);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-approach-faq__item h3 {
    margin: 0;
    font-size: var(--psy-fs-lg);
}

.psy-about-page {
    display: grid;
}

.psy-process-page {
    display: grid;
}

.psy-privacy-page {
    display: grid;
}

.psy-ethics-page {
    display: grid;
}

.psy-legal-page {
    display: grid;
}

.psy-clinic-trust-detail--process {
    max-width: 1000px;
}

.psy-clinic-trust-detail--privacy {
    max-width: 1000px;
}

.psy-clinic-trust-detail--ethics {
    max-width: 1000px;
}

.psy-clinic-trust-detail--legal {
    max-width: 1020px;
}

.psy-clinic-trust-detail__block--process-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border-color: rgba(18, 76, 87, 0.16);
    background:
        radial-gradient(circle at bottom left, rgba(204, 224, 221, 0.28), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(240, 246, 245, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-clinic-trust-detail__block--process-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.92) 0%, rgba(203, 148, 104, 0.9) 100%);
}

.psy-clinic-trust-detail__block--process-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-clinic-trust-detail__block--process-overview p {
    max-width: 70ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-clinic-trust-detail__block--privacy-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border-color: rgba(18, 76, 87, 0.14);
    background:
        radial-gradient(circle at top right, rgba(212, 229, 225, 0.3), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(241, 246, 244, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-clinic-trust-detail__block--privacy-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.94) 0%, rgba(88, 138, 146, 0.9) 100%);
}

.psy-clinic-trust-detail__block--privacy-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-clinic-trust-detail__block--privacy-overview p {
    max-width: 70ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-clinic-trust-detail__block--ethics-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border-color: rgba(132, 94, 59, 0.18);
    background:
        radial-gradient(circle at top right, rgba(240, 222, 205, 0.34), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(249, 244, 239, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-clinic-trust-detail__block--ethics-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(144, 107, 73, 0.96) 0%, rgba(18, 76, 87, 0.92) 100%);
}

.psy-clinic-trust-detail__block--ethics-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-clinic-trust-detail__block--ethics-overview p {
    max-width: 70ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-process-page [data-service-cta] {
    border-color: rgba(18, 76, 87, 0.16);
    background:
        radial-gradient(circle at top left, rgba(212, 229, 225, 0.32), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(241, 246, 244, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-privacy-page [data-service-cta] {
    border-color: rgba(18, 76, 87, 0.16);
    background:
        radial-gradient(circle at top left, rgba(212, 229, 225, 0.28), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(242, 247, 246, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-ethics-page [data-service-cta] {
    border-color: rgba(144, 107, 73, 0.16);
    background:
        radial-gradient(circle at top left, rgba(240, 222, 205, 0.32), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 243, 237, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-process-page [data-service-cta] .psy-btn {
    width: fit-content;
}

.psy-privacy-page [data-service-cta] .psy-btn {
    width: fit-content;
}

.psy-ethics-page [data-service-cta] .psy-btn {
    width: fit-content;
}

.psy-legal-flow {
    position: relative;
}

.psy-process-flow {
    position: relative;
}

.psy-privacy-flow {
    position: relative;
}

.psy-ethics-flow {
    position: relative;
}

.psy-process-flow > :first-child .psy-about-section,
.psy-process-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-process-flow > :last-child .psy-about-section,
.psy-process-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-privacy-flow > :first-child .psy-about-section,
.psy-privacy-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-privacy-flow > :last-child .psy-about-section,
.psy-privacy-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-ethics-flow > :first-child .psy-about-section,
.psy-ethics-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-ethics-flow > :last-child .psy-about-section,
.psy-ethics-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-legal-flow > :first-child .psy-about-section,
.psy-legal-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-legal-flow > :last-child .psy-about-section,
.psy-legal-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-legal-page .psy-about-section--overview .psy-about-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border: 1px solid rgba(18, 76, 87, 0.16);
    border-radius: var(--psy-radius-md);
    background:
        radial-gradient(circle at top right, rgba(224, 232, 235, 0.38), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(242, 246, 248, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
    padding: var(--psy-space-9);
}

.psy-legal-page .psy-about-section--overview .psy-about-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.96) 0%, rgba(83, 132, 150, 0.9) 100%);
}

.psy-legal-page .psy-about-section--overview .psy-about-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-legal-page .psy-about-section--overview .psy-about-overview p {
    max-width: 72ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-legal-page .psy-about-section--cards .psy-value-card,
.psy-legal-page .psy-about-section--faq .psy-about-faq__item,
.psy-legal-page .psy-about-section--split .psy-about-split__content,
.psy-legal-page .psy-about-section--split .psy-about-split__image,
.psy-legal-page .psy-about-section--split .psy-about-split__placeholder,
.psy-clinic-trust-detail__block--legal-appendix {
    border-color: rgba(18, 76, 87, 0.14);
    box-shadow: var(--psy-shadow-soft);
}

.psy-legal-page .psy-about-section--cards .psy-value-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(245, 249, 250, 0.98) 100%);
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        border-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-legal-page .psy-about-section--cards .psy-value-card:hover,
.psy-legal-page .psy-about-section--cards .psy-value-card:focus-within {
    transform: translateY(-4px);
    border-color: rgba(18, 76, 87, 0.24);
    box-shadow: var(--psy-shadow-pop);
}

.psy-legal-page .psy-about-section--split .psy-about-split__placeholder {
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.98) 0%, rgba(216, 230, 235, 0.95) 22%, rgba(169, 198, 208, 0.88) 48%, rgba(29, 72, 85, 0.92) 100%);
}

.psy-legal-page .psy-about-section--faq .psy-about-faq {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.psy-clinic-trust-detail__block--legal-appendix {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(244, 247, 248, 0.97) 100%);
}

.psy-clinic-trust-detail--about {
    max-width: 1020px;
}

.psy-clinic-trust-detail__block--about-overview {
    position: relative;
    overflow: hidden;
    gap: var(--psy-space-5);
    border-color: rgba(19, 64, 71, 0.14);
    background:
        radial-gradient(circle at top right, rgba(231, 213, 190, 0.28), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 247, 245, 0.95) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-clinic-trust-detail__block--about-overview::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.92) 0%, rgba(203, 148, 104, 0.9) 100%);
}

.psy-clinic-trust-detail__block--about-overview h2 {
    color: var(--psy-accent-dark);
}

.psy-clinic-trust-detail__block--about-overview p {
    max-width: 68ch;
    font-size: var(--psy-fs-md);
    color: var(--psy-color-text);
}

.psy-about-page [data-service-cta] {
    border-color: rgba(144, 107, 73, 0.14);
    background:
        radial-gradient(circle at top left, rgba(240, 222, 205, 0.34), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(249, 244, 239, 0.96) 100%);
    box-shadow: var(--psy-shadow-soft);
}

.psy-about-page [data-service-cta] .psy-btn {
    width: fit-content;
}

.psy-about-flow {
    position: relative;
}

.psy-about-flow > :first-child .psy-about-section,
.psy-about-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-about-flow > :last-child .psy-about-section,
.psy-about-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-about-section {
    position: relative;
}

.psy-about-section .psy-section__head {
    margin-bottom: var(--psy-space-8);
}

.psy-about-section .psy-section__head h2 {
    max-width: 20ch;
}

.psy-about-overview {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: var(--psy-radius-lg);
    background:
        radial-gradient(circle at top right, rgba(204, 224, 221, 0.26), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(243, 248, 246, 0.96) 100%);
    padding: clamp(1.35rem, 2.2vw, 2.2rem);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-about-overview__eyebrow {
    margin: 0;
    color: var(--psy-accent-dark);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.psy-about-overview .psy-section__head {
    margin-bottom: 0;
}

.psy-about-overview .psy-rich > :first-child,
.psy-about-split__content .psy-rich > :first-child,
.psy-about-note .psy-rich > :first-child,
.psy-about-faq__item .psy-rich > :first-child {
    margin-top: 0;
}

.psy-about-overview .psy-rich > :last-child,
.psy-about-split__content .psy-rich > :last-child,
.psy-about-note .psy-rich > :last-child,
.psy-about-faq__item .psy-rich > :last-child {
    margin-bottom: 0;
}

.psy-about-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: var(--psy-space-7);
}

.psy-about-card-grid__item {
    min-height: 100%;
    border-color: rgba(19, 64, 71, 0.12);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(247, 249, 248, 0.98) 100%);
    transition:
        transform var(--psy-motion-default) var(--psy-ease-standard),
        box-shadow var(--psy-motion-default) var(--psy-ease-standard),
        border-color var(--psy-motion-default) var(--psy-ease-standard);
}

.psy-about-card-grid__item:nth-child(3n + 2) {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(249, 244, 239, 0.98) 100%);
}

.psy-about-card-grid__item:hover,
.psy-about-card-grid__item:focus-within {
    transform: translateY(-4px);
    border-color: rgba(18, 76, 87, 0.22);
    box-shadow: var(--psy-shadow-pop);
}

.psy-about-timeline {
    max-width: none;
}

.psy-about-timeline__item {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(245, 248, 246, 0.98) 100%);
    border-color: rgba(19, 64, 71, 0.12);
}

.psy-about-split {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.95fr);
    gap: var(--psy-space-12);
    align-items: stretch;
}

.psy-about-split.is-media-left .psy-about-split__media {
    order: -1;
}

.psy-about-split__content,
.psy-about-split__media {
    min-width: 0;
}

.psy-about-split__content {
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: var(--psy-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 248, 247, 0.98) 100%);
    padding: clamp(1.35rem, 2vw, 2rem);
    box-shadow: var(--psy-shadow-soft);
}

.psy-about-split__content .psy-section__head {
    margin-bottom: var(--psy-space-8);
}

.psy-about-split__media {
    display: grid;
}

.psy-about-split__image,
.psy-about-split__placeholder {
    width: 100%;
    min-height: 21rem;
    border-radius: var(--psy-radius-lg);
    box-shadow: var(--psy-shadow-soft);
}

.psy-about-split__image {
    height: 100%;
    object-fit: cover;
    display: block;
    border: 1px solid rgba(19, 64, 71, 0.12);
}

.psy-about-split__placeholder {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(19, 64, 71, 0.14);
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.96) 0%, rgba(225, 235, 231, 0.96) 22%, rgba(194, 211, 205, 0.94) 48%, rgba(31, 78, 86, 0.92) 100%);
}

.psy-about-split__orb,
.psy-about-split__line {
    position: absolute;
    display: block;
}

.psy-about-split__orb {
    border-radius: 50%;
    filter: blur(2px);
}

.psy-about-split__orb--a {
    width: 10rem;
    height: 10rem;
    top: 2rem;
    left: 2rem;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.74) 0%, rgba(255, 255, 255, 0.08) 70%);
}

.psy-about-split__orb--b {
    width: 12rem;
    height: 12rem;
    right: -1.4rem;
    bottom: -2rem;
    background: radial-gradient(circle, rgba(239, 221, 207, 0.66) 0%, rgba(239, 221, 207, 0.08) 70%);
}

.psy-about-split__line {
    border-radius: var(--psy-radius-pill);
    background: rgba(255, 255, 255, 0.68);
}

.psy-about-split__line--a {
    width: 60%;
    height: 1px;
    top: 34%;
    right: 10%;
    transform: rotate(-22deg);
}

.psy-about-split__line--b {
    width: 44%;
    height: 1px;
    left: 12%;
    bottom: 27%;
    opacity: 0.82;
    transform: rotate(26deg);
}

.psy-about-note {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: var(--psy-radius-lg);
    padding: clamp(1.35rem, 2vw, 2rem);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-about-note::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
}

.psy-about-note .psy-section__head {
    margin-bottom: 0;
}

.psy-about-note--privacy {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(242, 248, 247, 0.98) 100%);
}

.psy-about-note--privacy::before {
    background: linear-gradient(180deg, rgba(18, 76, 87, 0.96) 0%, rgba(88, 138, 146, 0.9) 100%);
}

.psy-about-note--ethics {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 245, 239, 0.98) 100%);
}

.psy-about-note--ethics::before {
    background: linear-gradient(180deg, rgba(149, 109, 73, 0.96) 0%, rgba(203, 148, 104, 0.9) 100%);
}

.psy-about-note--referral {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(244, 246, 250, 0.98) 100%);
}

.psy-about-note--referral::before {
    background: linear-gradient(180deg, rgba(70, 96, 128, 0.96) 0%, rgba(121, 145, 175, 0.9) 100%);
}

.psy-about-note--neutral {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 248, 247, 0.98) 100%);
}

.psy-about-note--neutral::before {
    background: linear-gradient(180deg, rgba(63, 96, 101, 0.92) 0%, rgba(115, 143, 144, 0.88) 100%);
}

.psy-about-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-7);
}

.psy-about-faq__item {
    border: 1px solid rgba(19, 64, 71, 0.12);
    border-radius: var(--psy-radius-md);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 249, 247, 0.98) 100%);
    padding: var(--psy-space-9);
    box-shadow: var(--psy-shadow-soft);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-about-faq__item h3 {
    margin: 0;
    font-size: var(--psy-fs-lg);
}

.psy-about-links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-about-links .psy-btn {
    min-height: 3rem;
    padding-inline: 1.05rem;
}

.psy-about-links .psy-btn--outline {
    border-color: rgba(18, 76, 87, 0.16);
    background: rgba(255, 255, 255, 0.84);
    color: var(--psy-accent-dark);
}

.psy-about-links .psy-btn--outline:hover,
.psy-about-links .psy-btn--outline:focus-visible {
    border-color: rgba(18, 76, 87, 0.24);
    background: rgba(255, 255, 255, 0.96);
    color: var(--psy-accent-dark);
}

.psy-faq-barrier-filters {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-4);
    margin-top: var(--psy-space-5);
}

.psy-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-faq-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-faq-card h3,
.psy-faq-card p {
    margin: 0;
}

.psy-faq-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-4);
}

.psy-faq-card__actions .psy-btn {
    width: fit-content;
}

.psy-faq-card__read-link {
    border-color: rgba(18, 76, 87, 0.16);
    background: rgba(255, 255, 255, 0.96);
    color: var(--psy-accent-dark);
    box-shadow: 0 12px 22px rgba(18, 76, 87, 0.08);
}

.psy-faq-card__read-link:hover,
.psy-faq-card__read-link:focus-visible {
    border-color: rgba(18, 76, 87, 0.24);
    background: rgba(240, 246, 245, 0.98);
    color: var(--psy-accent-dark);
}

.psy-faq-card__intake-link {
    border-color: rgba(18, 76, 87, 0.16);
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
    box-shadow: 0 16px 28px rgba(23, 79, 88, 0.16);
}

.psy-faq-card__intake-link:hover,
.psy-faq-card__intake-link:focus-visible {
    border-color: rgba(18, 76, 87, 0.24);
    background: var(--psy-accent-dark);
    color: var(--psy-color-on-accent);
}

.psy-faq-detail {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-faq-page [data-intake-cta] .psy-btn {
    width: fit-content;
}

.psy-faq-flow {
    position: relative;
}

.psy-faq-flow > :first-child .psy-about-section,
.psy-faq-flow > .psy-about-section:first-child {
    padding-top: 0;
}

.psy-faq-flow > :last-child .psy-about-section,
.psy-faq-flow > .psy-about-section:last-child {
    padding-bottom: 0;
}

.psy-faq-detail__block {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-9);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-faq-detail__block h2,
.psy-faq-detail__block p {
    margin: 0;
}

.psy-form label,
.psy-filterform label {
    display: grid;
    gap: 0.38rem;
    font-size: var(--psy-fs-sm);
    color: var(--psy-color-text-strong);
}

.psy-form input,
.psy-form select,
.psy-form textarea,
.psy-filterform input,
.psy-filterform select,
.psy-filterform textarea {
    border: 1px solid var(--psy-color-line-input);
    border-radius: var(--psy-radius-sm);
    padding: 0.62rem 0.7rem;
    font-size: var(--psy-fs-base);
    font-family: inherit;
    background: var(--psy-color-surface);
}

.psy-form textarea,
.psy-filterform textarea {
    resize: vertical;
}

.psy-form input:focus,
.psy-form select:focus,
.psy-form textarea:focus,
.psy-filterform input:focus,
.psy-filterform select:focus,
.psy-filterform textarea:focus {
    outline: 2px solid var(--psy-color-focus-ring);
    border-color: var(--psy-accent);
}

.psy-grid {
    display: grid;
    gap: var(--psy-space-8);
}

.psy-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.psy-card--intake-form {
    padding: clamp(1.2rem, 2vw, 1.8rem);
}

.psy-form--intake {
    gap: var(--psy-space-6);
}

.psy-form__clinic-field {
    padding-top: 0.15rem;
}

.psy-form__clinic-field label {
    gap: 0.5rem;
}

.psy-contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: var(--psy-space-8);
    align-items: start;
}

.psy-appointment-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: var(--psy-space-8);
    align-items: stretch;
}

.psy-contact-form-card,
.psy-contact-clinics-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    background: var(--psy-color-surface);
    padding: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-6);
}

.psy-appointment-form-card,
.psy-appointment-info-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    background: var(--psy-color-surface);
    padding: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-6);
    height: 100%;
}

.psy-contact-clinic-summary {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-accent-soft-bg);
    padding: var(--psy-space-7);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-appointment-clinic-summary {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-accent-soft-bg);
    padding: var(--psy-space-7);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-contact-clinic-summary h3,
.psy-contact-clinic-summary p {
    margin: 0;
}

.psy-appointment-clinic-summary h3,
.psy-appointment-clinic-summary p {
    margin: 0;
}

.psy-contact-status {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-4);
}

.psy-appointment-status {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-4);
}

.psy-contact-status__item {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    padding: 0.32rem 0.72rem;
    font-size: var(--psy-fs-sm);
    background: var(--psy-color-surface);
    color: var(--psy-muted);
}

.psy-appointment-status__item {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    padding: 0.32rem 0.72rem;
    font-size: var(--psy-fs-sm);
    background: var(--psy-color-surface);
    color: var(--psy-muted);
}

.psy-contact-status__item.is-active {
    color: var(--psy-color-text-strong);
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-appointment-status__item.is-active {
    color: var(--psy-color-text-strong);
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-contact-clinic-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    align-items: center;
}

.psy-appointment-clinic-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    align-items: center;
}

.psy-appointment-steps {
    margin: 0;
    padding-left: 1.2rem;
    display: grid;
    gap: var(--psy-space-3);
}

.psy-form-errors {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.4rem;
    min-height: 1.35rem;
    visibility: hidden;
    align-content: start;
}

.psy-form-errors.is-visible {
    visibility: visible;
}

.psy-form-errors li {
    color: var(--psy-color-form-error-strong);
    font-size: var(--psy-fs-sm);
}

.psy-form-msg.is-error {
    color: var(--psy-color-form-error-strong);
}

.psy-form-msg.is-success {
    color: var(--psy-color-form-success-strong);
}

.psy-active-filters {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--psy-space-8);
    margin-bottom: var(--psy-space-8);
}

.psy-active-filters__list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-4);
    margin: 0;
    padding: 0;
}

.psy-active-filters__item {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.32rem 0.68rem;
    font-size: var(--psy-fs-sm);
}

.psy-active-filters__clear {
    font-size: var(--psy-fs-sm);
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-staff-clinic {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    background: var(--psy-color-surface);
    padding: var(--psy-space-10);
    margin-bottom: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-6);
}

.psy-staff-clinic__meta {
    margin: 0;
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-staff-clinic__links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-6);
    align-items: center;
}

.psy-dept-spotlight {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    background: var(--psy-color-surface);
    padding: var(--psy-space-10);
    margin-bottom: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-dept-spotlight h2,
.psy-dept-spotlight p {
    margin: 0;
}

.psy-article-highlight {
    margin-bottom: var(--psy-space-10);
}

.psy-video-highlight {
    margin-bottom: var(--psy-space-10);
}

.psy-podcast-highlight {
    margin-bottom: var(--psy-space-10);
}

.psy-video-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-video-scope__groups {
    display: grid;
    gap: var(--psy-space-7);
}

.psy-video-scope__group {
    display: grid;
    gap: var(--psy-space-5);
}

.psy-video-scope__group-title {
    margin: 0;
    font-size: var(--psy-fs-sm);
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-video-scope__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-video-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.45rem var(--psy-space-7);
    display: inline-flex;
    align-items: center;
    gap: var(--psy-space-5);
    font-size: var(--psy-fs-sm);
}

.psy-video-scope__chip strong {
    color: var(--psy-accent-dark);
}

.psy-video-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-podcast-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-podcast-scope__groups {
    display: grid;
    gap: var(--psy-space-7);
}

.psy-podcast-scope__group {
    display: grid;
    gap: var(--psy-space-5);
}

.psy-podcast-scope__group-title {
    margin: 0;
    font-size: var(--psy-fs-sm);
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-podcast-scope__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-podcast-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.45rem var(--psy-space-7);
    display: inline-flex;
    align-items: center;
    gap: var(--psy-space-5);
    font-size: var(--psy-fs-sm);
}

.psy-podcast-scope__chip strong {
    color: var(--psy-accent-dark);
}

.psy-podcast-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-article-scope {
    margin-bottom: var(--psy-space-8);
}

.psy-article-scope__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
}

.psy-article-scope__chip {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-surface);
    padding: 0.45rem var(--psy-space-7);
    display: inline-flex;
    align-items: center;
    gap: var(--psy-space-5);
    font-size: var(--psy-fs-sm);
}

.psy-article-scope__chip strong {
    color: var(--psy-accent-dark);
}

.psy-article-scope__chip.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-article-topic-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-lg);
    background: var(--psy-color-surface);
    padding: var(--psy-space-10);
    margin-bottom: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-article-topic-card h2,
.psy-article-topic-card p {
    margin: 0;
}

.psy-author-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-video-presenter-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-podcast-host-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-author-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-author-card h3,
.psy-author-card p {
    margin: 0;
}

.psy-video-presenter-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-video-presenter-card h3,
.psy-video-presenter-card p {
    margin: 0;
}

.psy-podcast-host-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-4);
}

.psy-podcast-host-card h3,
.psy-podcast-host-card p {
    margin: 0;
}

.psy-author-card.is-active {
    border-color: var(--psy-color-accent-active-border);
    background: var(--psy-color-accent-active-bg);
}

.psy-author-card--wide {
    max-width: 760px;
}

.psy-form {
    display: grid;
    gap: 0.75rem;
}

.psy-radio-group {
    border: 1px solid var(--psy-color-line-input);
    border-radius: var(--psy-radius-sm);
    padding: 0.75rem;
    display: grid;
    gap: 0.4rem;
}

.psy-radio-group legend {
    padding-inline: 0.35rem;
    font-weight: 700;
    color: var(--psy-color-text-strong);
}

.psy-form-msg {
    margin: 0;
    font-weight: 600;
    color: var(--psy-color-success);
    min-height: 1.2rem;
}

.psy-checkbox {
    grid-template-columns: auto 1fr;
    align-items: start;
}

.psy-checkbox input {
    margin-top: 0.2rem;
}

.psy-honeypot {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.psy-profilehero {
    display: grid;
    grid-template-columns: 440px minmax(0, 1fr);
    gap: 1.2rem;
    padding-top: 2.5rem;
}

.psy-profilehero__img {
    border-radius: var(--psy-radius-lg);
    border: 1px solid var(--psy-line);
    object-fit: cover;
    aspect-ratio: 4 / 5;
}

.psy-profilehero__role {
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-profilehero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--psy-space-5);
    margin: var(--psy-space-8) 0;
}

.psy-badges,
.psy-tags,
.psy-platforms,
.psy-social,
.psy-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.psy-badges,
.psy-tags,
.psy-platforms,
.psy-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.psy-badges li,
.psy-tags li a,
.psy-platforms li a {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    padding: 0.33rem 0.72rem;
    font-size: 0.82rem;
    background: var(--psy-color-surface);
}

.psy-cover {
    border-radius: var(--psy-radius-lg);
    border: 1px solid var(--psy-line);
    margin: 0.7rem 0 0;
}

.psy-article {
    padding-top: 2rem;
    padding-bottom: 2.2rem;
}

.psy-editorialhero,
.psy-article__head {
    display: grid;
    gap: 0.7rem;
    margin-bottom: 1rem;
}

.psy-editorialhero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 0.9rem;
}

.psy-editorialhero h1 {
    margin: 0;
    font-family: var(--psy-font-serif);
    font-size: clamp(2.2rem, 4vw, 4.2rem);
    line-height: 0.95;
    letter-spacing: var(--psy-letter-tight);
    color: var(--psy-color-text-heading);
    max-width: 14ch;
}

.psy-editorialhero__lead {
    margin: 0;
    max-width: 48rem;
    color: var(--psy-color-text-strong);
    font-size: var(--psy-fs-lead);
}

.psy-editorialhero__link {
    margin: 0;
}

.psy-video-frame,
.psy-audio-frame,
.psy-map-frame {
    border-radius: var(--psy-radius-md);
    overflow: hidden;
    border: 1px solid var(--psy-line);
    background: var(--psy-color-surface);
}

.psy-video-frame iframe,
.psy-audio-frame iframe,
.psy-map-frame iframe {
    border: 0;
    width: 100%;
}

.psy-video-frame iframe,
.psy-map-frame iframe {
    aspect-ratio: 16 / 9;
}

.psy-audio-frame iframe {
    min-height: 170px;
}

.psy-tabs {
    display: grid;
    gap: 0.8rem;
}

.psy-tabs__nav {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.psy-tabs__btn {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-pill);
    padding: 0.44rem 0.82rem;
    background: var(--psy-color-surface);
    cursor: pointer;
    transition: background-color var(--psy-motion-fast) var(--psy-ease-standard), color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-tabs__btn.is-active {
    background: var(--psy-accent);
    border-color: var(--psy-accent);
    color: var(--psy-color-on-accent);
}

.psy-tabs__panel {
    display: none;
    padding: 0.95rem;
    border-radius: var(--psy-radius-md);
    border: 1px solid var(--psy-line);
    background: var(--psy-color-surface);
}

.psy-tabs__panel.is-active {
    display: grid;
    gap: 0.7rem;
}

.psy-clinic-img {
    border-radius: 10px;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}

.psy-clinic-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--psy-space-8);
}

.psy-clinic-card {
    border: 1px solid var(--psy-line);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-surface);
    padding: var(--psy-space-8);
    display: grid;
    gap: var(--psy-space-5);
}

.psy-clinic-card__meta {
    margin: 0;
    color: var(--psy-accent-dark);
    font-weight: 700;
}

.psy-empty-state {
    border: 1px dashed var(--psy-color-accent-empty-border);
    border-radius: var(--psy-radius-md);
    background: var(--psy-color-accent-soft-bg);
    padding: var(--psy-space-10);
    display: grid;
    gap: var(--psy-space-6);
}

.psy-empty-state h3,
.psy-empty-state p {
    margin: 0;
}

.psy-footer {
    position: relative;
    isolation: isolate;
    overflow: clip;
    margin-top: 3rem;
    border-top: 1px solid rgba(23, 79, 88, 0.16);
    background:
        radial-gradient(circle at 12% -12%, rgba(171, 201, 199, 0.34) 0%, rgba(171, 201, 199, 0) 42%),
        radial-gradient(circle at 88% 118%, rgba(212, 176, 153, 0.24) 0%, rgba(212, 176, 153, 0) 45%),
        var(--psy-gradient-footer);
}

.psy-footer::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(21, 66, 73, 0.36), transparent);
    z-index: 0;
}

.psy-footer::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0));
    z-index: 0;
    pointer-events: none;
}

.psy-footer__ambient {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.psy-footer__orb {
    position: absolute;
    display: block;
    width: clamp(11rem, 22vw, 18rem);
    aspect-ratio: 1;
    border-radius: 999px;
    filter: blur(34px);
    opacity: 0.34;
    transform: translate3d(0, 0, 0);
}

.psy-footer__orb--a {
    top: -3.6rem;
    left: -3.2rem;
    background: radial-gradient(circle, rgba(83, 142, 136, 0.48) 0%, rgba(83, 142, 136, 0) 72%);
}

.psy-footer__orb--b {
    top: 34%;
    right: 14%;
    width: clamp(9rem, 16vw, 13rem);
    opacity: 0.26;
    background: radial-gradient(circle, rgba(203, 150, 114, 0.42) 0%, rgba(203, 150, 114, 0) 70%);
}

.psy-footer__orb--c {
    right: -5rem;
    bottom: -6rem;
    width: clamp(12rem, 24vw, 20rem);
    opacity: 0.3;
    background: radial-gradient(circle, rgba(61, 114, 122, 0.42) 0%, rgba(61, 114, 122, 0) 74%);
}

.psy-callback {
    position: relative;
    z-index: 1;
    border-bottom: 1px solid rgba(17, 60, 67, 0.16);
}

body:has(.psy-home-flow) .psy-footer {
    margin-top: clamp(1.2rem, 2.7vw, 2rem);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.35), transparent 18%),
        var(--psy-gradient-footer);
}

.psy-callback__inner,
.psy-footer__cols,
.psy-footer__legal {
    width: var(--psy-wrap);
    margin-inline: auto;
    padding: 1.45rem 0;
}

.psy-callback__inner {
    display: grid;
    gap: 1rem;
}

.psy-footer__cols {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(13rem, 1.15fr) repeat(5, minmax(8.8rem, 1fr));
    gap: clamp(0.75rem, 1.45vw, 1.2rem);
    padding-top: clamp(1.35rem, 2.4vw, 2rem);
    padding-bottom: clamp(1.1rem, 2vw, 1.7rem);
    border-top: 1px solid rgba(17, 60, 67, 0.14);
}

.psy-footer__brand {
    display: grid;
    align-content: start;
    gap: 0.82rem;
    padding: clamp(0.9rem, 1.4vw, 1.1rem);
    border-radius: calc(var(--psy-radius-md) + 6px);
    border: 1px solid rgba(17, 60, 67, 0.14);
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.12) 46%, rgba(255, 255, 255, 0) 100%),
        linear-gradient(145deg, rgba(244, 248, 247, 0.72), rgba(233, 236, 230, 0.58));
    backdrop-filter: blur(2px);
}

.psy-footer__kicker {
    margin: 0;
    font-size: 0.72rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(17, 60, 67, 0.78);
    font-weight: 700;
}

.psy-footer__brand-title {
    margin: 0;
    font-size: clamp(1.22rem, 1.9vw, 1.58rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.psy-footer__brand p {
    margin: 0;
    color: rgba(27, 53, 58, 0.84);
}

.psy-footer__actions {
    justify-content: flex-start;
    gap: 0.46rem;
}

.psy-footer__actions .psy-conversion-chip {
    border-color: rgba(17, 60, 67, 0.18);
    background: rgba(255, 255, 255, 0.76);
    font-size: 0.78rem;
    padding: 0.52rem 0.86rem;
}

.psy-footer__actions .psy-conversion-chip--callback {
    background: var(--psy-accent);
    color: var(--psy-color-on-accent);
    border-color: transparent;
}

.psy-footer__actions .psy-conversion-chip--callback:hover,
.psy-footer__actions .psy-conversion-chip--callback:focus-visible {
    background: var(--psy-accent-dark);
    color: var(--psy-color-on-accent);
    border-color: transparent;
}

.psy-footer__actions .psy-conversion-chip:hover {
    transform: translateY(-1px);
}

.psy-footer__col {
    display: grid;
    align-content: start;
    gap: 0.5rem;
    padding: clamp(0.82rem, 1.2vw, 0.95rem);
    border-radius: calc(var(--psy-radius-sm) + 2px);
    border: 1px solid rgba(17, 60, 67, 0.12);
    background: rgba(255, 255, 255, 0.56);
    backdrop-filter: blur(1px);
}

.psy-footer__col h3 {
    margin: 0;
    font-family: var(--psy-font-serif);
    font-size: 1.02rem;
    letter-spacing: -0.02em;
}

.psy-footer__col-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
}

.psy-footer__toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: var(--psy-radius-pill);
    border: 1px solid rgba(17, 60, 67, 0.18);
    background: rgba(255, 255, 255, 0.82);
    color: rgba(14, 49, 55, 0.96);
    cursor: pointer;
    transition:
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-footer__toggle:hover {
    border-color: rgba(17, 60, 67, 0.34);
    background: rgba(255, 255, 255, 0.94);
    transform: translateY(-1px);
}

.psy-footer__toggle[aria-expanded="true"] {
    border-color: rgba(17, 60, 67, 0.32);
    background: rgba(226, 239, 237, 0.74);
}

.psy-footer__toggle:focus-visible {
    outline: 2px solid var(--psy-color-focus-ring);
    outline-offset: 2px;
}

.psy-footer__toggle-icon {
    position: relative;
    width: 0.78rem;
    height: 0.78rem;
}

.psy-footer__toggle-icon::before,
.psy-footer__toggle-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 0.78rem;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    transform: translate(-50%, -50%);
}

.psy-footer__toggle-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: opacity var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-footer__toggle[aria-expanded="true"] .psy-footer__toggle-icon::after {
    opacity: 0;
}

.psy-footer__col a {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    color: rgba(14, 49, 55, 0.95);
    text-decoration-color: rgba(14, 49, 55, 0.22);
    text-underline-offset: 0.14em;
    transition:
        color var(--psy-motion-fast) var(--psy-ease-standard),
        text-decoration-color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-footer__col a:hover {
    color: var(--psy-accent);
    text-decoration-color: rgba(23, 79, 88, 0.48);
}

.psy-footer__col a:focus-visible,
.psy-footer__to-top:focus-visible {
    outline: 2px solid var(--psy-color-focus-ring);
    outline-offset: 2px;
    border-radius: var(--psy-radius-pill);
}

.psy-footer__list,
.psy-footer__col ul,
.psy-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.44rem;
}

[data-footer-panel][hidden] {
    display: none !important;
}

.psy-footer__sublist {
    margin-top: 0.34rem;
    margin-left: 0.72rem;
    padding: 0.08rem 0 0.08rem 0.72rem;
    border-left: 1px solid rgba(17, 60, 67, 0.21);
    display: grid;
    gap: 0.35rem;
}

.psy-footer__sublist li a {
    font-size: 0.88rem;
    color: rgba(36, 77, 84, 0.94);
}

.psy-footer .psy-social {
    margin-top: 0.18rem;
    gap: 0.5rem;
}

.psy-footer .psy-social li a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: 0 0.72rem;
    border-radius: var(--psy-radius-pill);
    border: 1px solid rgba(17, 60, 67, 0.16);
    background: rgba(255, 255, 255, 0.66);
    color: rgba(16, 52, 58, 0.93);
    font-size: 0.78rem;
    font-weight: 700;
    transition:
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        background-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-footer .psy-social li a:hover {
    border-color: rgba(17, 60, 67, 0.32);
    color: var(--psy-accent-dark);
    background: rgba(255, 255, 255, 0.92);
}

.psy-footer__legal {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 0.8rem 1rem;
    border-top: 1px solid rgba(17, 60, 67, 0.14);
    padding-top: 0.9rem;
    padding-bottom: 1.2rem;
    color: rgba(42, 67, 72, 0.82);
    font-size: 0.84rem;
}

.psy-footer__legal-copy {
    grid-column: 2;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    flex-wrap: wrap;
    text-align: center;
}

.psy-footer__legal-sep {
    opacity: 0.62;
}

.psy-footer__credit-link {
    font-weight: 700;
    color: rgba(17, 60, 67, 0.95);
    text-decoration-thickness: 1px;
    text-underline-offset: 0.14em;
}

.psy-footer__credit-link:hover,
.psy-footer__credit-link:focus-visible {
    color: var(--psy-accent-dark);
}

.psy-footer__to-top {
    grid-column: 3;
    justify-self: end;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.2rem;
    padding: 0 0.92rem;
    border-radius: var(--psy-radius-pill);
    border: 1px solid rgba(17, 60, 67, 0.18);
    background: rgba(255, 255, 255, 0.74);
    color: rgba(17, 60, 67, 0.94);
    font-weight: 700;
    transition:
        border-color var(--psy-motion-fast) var(--psy-ease-standard),
        color var(--psy-motion-fast) var(--psy-ease-standard),
        transform var(--psy-motion-fast) var(--psy-ease-standard);
}

.psy-footer__to-top:hover {
    border-color: rgba(17, 60, 67, 0.34);
    color: var(--psy-accent-dark);
    transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
    .psy-footer__ambient {
        display: none;
    }

    .psy-footer__toggle,
    .psy-footer__actions .psy-conversion-chip,
    .psy-footer__col a,
    .psy-footer__to-top,
    .psy-footer .psy-social li a {
        transition: none;
        transform: none;
    }
}

.psy-float-whatsapp {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    width: 3rem;
    height: 3rem;
    border-radius: var(--psy-radius-pill);
    background: var(--psy-color-wa-float);
    color: var(--psy-color-on-accent);
    display: grid;
    place-items: center;
    font-weight: 800;
    box-shadow: var(--psy-shadow-float);
    z-index: var(--psy-z-float);
}

@media (max-width: 1180px) {
    .psy-cards--staff { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .psy-filterform { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .psy-home-rail__viewport {
        padding-inline-end: 1.5rem;
    }
    .psy-home-rail__track {
        grid-auto-columns: minmax(16.8rem, min(88vw, 30rem));
    }
}

@media (min-width: 981px) and (max-height: 920px) {
    body:has(.psy-home-flow) .psy-topbar {
        padding: 0.76rem 0.96rem;
    }

    body:has(.psy-home-flow) .psy-topbar__link {
        min-height: 2.22rem;
        padding: 0.5rem 0.84rem;
        font-size: 0.84rem;
    }

    body:has(.psy-home-flow) .psy-header__cta {
        min-height: 2.5rem;
    }

    body:has(.psy-home-flow) .psy-nav__item-row {
        min-height: 2.9rem;
    }

    body:has(.psy-home-flow) .psy-nav__link {
        min-height: 2.4rem;
        padding: 0.62rem 0.86rem;
    }

    body:has(.psy-home-flow) .psy-home-flow {
        gap: clamp(1.2rem, 2.4vw, 1.8rem);
        padding-top: 0.55rem;
    }

    body:has(.psy-home-flow) .psy-home-rail {
        gap: var(--psy-space-6);
    }

    body:has(.psy-home-flow) .psy-home-rail__head {
        gap: 0.85rem 1rem;
        padding: 0.86rem 1rem 0.92rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__deck {
        gap: 0.55rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__eyebrow-label,
    body:has(.psy-home-flow) .psy-home-rail__eyebrow-count {
        min-height: 1.8rem;
        font-size: 0.72rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__copy {
        gap: 0.38rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__copy h2 {
        font-size: clamp(1.6rem, 2.2vw, 2.15rem);
    }

    body:has(.psy-home-flow) .psy-home-rail__copy p {
        font-size: 0.94rem;
        line-height: 1.4;
    }

    body:has(.psy-home-flow) .psy-home-rail__tools {
        gap: 0.55rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__support {
        display: none;
    }

    body:has(.psy-home-flow) .psy-home-rail__action {
        min-height: 2.55rem;
        padding-inline: 0.95rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__track {
        gap: var(--psy-space-5);
        grid-auto-columns: minmax(14.5rem, min(62vw, 18rem));
    }

    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__media {
        aspect-ratio: 16 / 10;
    }

    body:has(.psy-home-flow) .psy-home-rail__fallback {
        gap: 0.45rem;
        padding: 0.95rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__fallback-title {
        font-size: clamp(1.65rem, 2.4vw, 2.3rem);
    }

    body:has(.psy-home-flow) .psy-home-rail__body {
        gap: 0.5rem;
        padding: 0.95rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="video"] .psy-home-rail__body,
    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body {
        gap: 0.62rem;
        padding: 1rem 0.92rem 1.04rem;
        min-height: 11.8rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__meta {
        gap: 0.25rem 0.5rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__meta-item {
        font-size: 0.74rem;
    }

    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body h3 {
        max-width: none;
        font-size: clamp(1.14rem, 1.64vw, 1.42rem);
        -webkit-line-clamp: 4;
    }

    body:has(.psy-home-flow) .psy-home-rail__card[data-home-rail-card-kind="article"] .psy-home-rail__body p {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        font-size: 0.88rem;
        line-height: 1.34;
        min-height: calc(1.34em * 3);
    }

    body:has(.psy-home-flow) .psy-home-rail__navbtn {
        width: 2.45rem;
        height: 2.45rem;
    }
}

@media (max-width: 980px) {
    .psy-header {
        padding-top: 0.55rem;
    }

    .psy-header__surface {
        border-radius: 22px;
    }

    .psy-topbar {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: var(--psy-space-6);
        padding: 0.9rem 0.95rem;
    }

    .psy-brand__logo {
        width: 2.18rem;
        height: 2.18rem;
    }

    .psy-topbar__links {
        grid-column: 1 / -1;
        justify-content: flex-start;
        justify-self: stretch;
        margin-right: 0;
        overflow-x: auto;
        padding-top: 0.1rem;
        scrollbar-width: none;
    }

    .psy-topbar__links::-webkit-scrollbar {
        display: none;
    }

    .psy-topbar__utilities {
        justify-content: flex-end;
        width: auto;
    }

    .psy-topbar__actions {
        justify-content: flex-end;
    }

    .psy-header__cta {
        display: none;
    }

    .psy-navtoggle {
        display: inline-flex;
    }

    .psy-navrow {
        border-top: 0;
        padding: 0;
    }

    .psy-nav {
        position: fixed;
        top: 0.45rem;
        right: 0;
        z-index: var(--psy-z-overlay);
        width: min(30rem, calc(100vw - 0.75rem));
        height: calc(100dvh - 0.9rem);
        max-height: calc(100dvh - 0.9rem);
        display: grid;
        grid-template-rows: auto minmax(0, 1fr) auto;
        gap: var(--psy-space-8);
        padding: 1rem 1rem 1.1rem;
        border: 1px solid rgba(23, 79, 88, 0.12);
        border-right: 0;
        border-radius: 28px 0 0 28px;
        background: #fbf8f2;
        box-shadow: var(--psy-shadow-pop);
        overflow: hidden;
        display: none;
        transform: translateX(105%);
        opacity: 0;
        visibility: hidden;
        transition:
            transform var(--psy-motion-default) var(--psy-ease-standard),
            opacity var(--psy-motion-default) var(--psy-ease-standard),
            visibility var(--psy-motion-default) var(--psy-ease-standard);
    }

    .psy-nav.is-open {
        display: grid;
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
    }

    .psy-nav__drawer-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--psy-space-6);
        padding-bottom: var(--psy-space-4);
        border-bottom: 1px solid rgba(23, 79, 88, 0.08);
    }

    .psy-nav__drawer-brand {
        display: grid;
        gap: 0.25rem;
    }

    .psy-nav__close {
        width: 2.8rem;
        height: 2.8rem;
        border: 1px solid rgba(23, 79, 88, 0.12);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.84);
        color: var(--psy-color-text-strong);
        font-size: 1.45rem;
        line-height: 1;
        cursor: pointer;
    }

    .psy-nav__list {
        flex-direction: column;
        align-items: stretch;
        gap: 0.48rem;
        overflow: auto;
        padding-right: 0.18rem;
    }

    .psy-nav__item-row {
        min-height: 0;
        border: 1px solid rgba(23, 79, 88, 0.08);
        border-radius: 18px;
        padding: 0.2rem 0.28rem;
        background: rgba(255, 255, 255, 0.7);
    }

    .psy-nav__link {
        flex: 1 1 auto;
        min-height: 0;
        padding: 0.72rem 0.8rem;
    }

    .psy-subnav {
        position: static;
        min-width: 0;
        margin-top: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        pointer-events: auto;
        max-height: 0;
        overflow: hidden;
        transition:
            max-height var(--psy-motion-default) var(--psy-ease-standard),
            padding var(--psy-motion-default) var(--psy-ease-standard);
    }

    .psy-subnav a {
        padding: 0.68rem 0.82rem;
        margin-top: 0.2rem;
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.74);
    }

    .psy-nav__item.is-open > .psy-subnav {
        max-height: 18rem;
        padding: 0.38rem 0.1rem 0.1rem;
    }

    .psy-nav__drawer-meta {
        display: grid;
        gap: var(--psy-space-7);
        padding-top: var(--psy-space-5);
        border-top: 1px solid rgba(23, 79, 88, 0.08);
    }

    .psy-nav__drawer-links {
        display: grid;
        gap: var(--psy-space-3);
    }

    .psy-nav__drawer-links a {
        font-size: var(--psy-fs-sm);
        font-weight: 600;
        color: var(--psy-color-utility-text);
    }

    .psy-cards--services,
    .psy-cards--articles,
    .psy-cards--media,
    .psy-cards--staff {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .psy-profilehero { grid-template-columns: 1fr; }
    .psy-layout-cta {
        flex-direction: column;
        align-items: flex-start;
    }
    .psy-active-filters {
        flex-direction: column;
        align-items: flex-start;
    }
    .psy-video-presenter-grid,
    .psy-podcast-host-grid,
    .psy-author-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .psy-clinic-cards {
        grid-template-columns: 1fr;
    }
    .psy-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .psy-contact-layout {
        grid-template-columns: 1fr;
    }
    .psy-appointment-layout {
        grid-template-columns: 1fr;
    }
    .psy-contact-scope__chips {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .psy-appointment-scope__chips {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .psy-filterform { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .psy-filterform--dictionary { grid-template-columns: 1fr; }
    .psy-filterform--topic-hub { grid-template-columns: 1fr; }
    .psy-filterform--services { grid-template-columns: 1fr; }
    .psy-dictionary-featured,
    .psy-dictionary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .psy-dictionary-letters {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
    .psy-topic-hub-featured,
    .psy-topic-hub-grid,
    .psy-topic-cluster-layout {
        grid-template-columns: 1fr;
    }
    .psy-service-featured,
    .psy-service-grid {
        grid-template-columns: 1fr;
    }
    .psy-clinic-trust-grid {
        grid-template-columns: 1fr;
    }
    .psy-faq-grid {
        grid-template-columns: 1fr;
    }
    .psy-topic-hub-metrics {
        grid-template-columns: 1fr 1fr;
    }
    .psy-footer__cols {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.72rem;
    }
    .psy-footer__brand {
        grid-column: 1 / -1;
    }
    .psy-footer__toggle {
        display: inline-flex;
    }
    .psy-footer__col {
        gap: 0.36rem;
    }
    .psy-footer__legal {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 0.64rem;
    }

    .psy-footer__legal-copy,
    .psy-footer__to-top {
        grid-column: 1;
    }

    .psy-footer__to-top {
        justify-self: center;
    }

    .psy-approach-split {
        grid-template-columns: 1fr;
        gap: var(--psy-space-8);
    }

    .psy-approach-visual {
        min-height: 16rem;
    }

    .psy-approach-faq {
        grid-template-columns: 1fr;
    }

    .psy-service-split {
        grid-template-columns: 1fr;
        gap: var(--psy-space-8);
    }

    .psy-service-split.is-media-left .psy-service-split__media {
        order: 0;
    }

    .psy-service-split__image,
    .psy-service-split__placeholder {
        min-height: 16rem;
    }

    .psy-service-faq {
        grid-template-columns: 1fr;
    }

    .psy-about-split {
        grid-template-columns: 1fr;
        gap: var(--psy-space-8);
    }

    .psy-about-split.is-media-left .psy-about-split__media {
        order: 0;
    }

    .psy-about-split__image,
    .psy-about-split__placeholder {
        min-height: 16rem;
    }

    .psy-about-faq {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1023px) {
    .psy-header__topbar {
        margin-bottom: 0;
    }

    .psy-header__navshell {
        display: contents;
    }

    .psy-topbar {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: var(--psy-space-5);
        padding: 0.9rem 0.95rem;
    }

    .psy-topbar__links {
        display: none;
    }

    .psy-topbar__utilities {
        justify-content: flex-end;
        width: auto;
    }

    .psy-topbar__actions {
        justify-content: flex-end;
        gap: var(--psy-space-4);
    }

    .psy-langswitch {
        display: none;
    }

    .psy-header__cta {
        display: none;
    }

    .psy-navtoggle {
        display: inline-flex;
    }

    .psy-navrow {
        border-top: 0;
        padding: 0;
        min-height: 0;
        height: 0;
    }

    .psy-nav {
        position: fixed;
        top: 0.45rem;
        right: 0;
        z-index: var(--psy-z-overlay);
        width: min(30rem, calc(100vw - 0.75rem));
        height: calc(100dvh - 0.9rem);
        max-height: calc(100dvh - 0.9rem);
        display: grid;
        grid-template-rows: auto minmax(0, 1fr) auto;
        gap: var(--psy-space-8);
        padding: 1rem 1rem 1.1rem;
        border: 1px solid rgba(23, 79, 88, 0.12);
        border-right: 0;
        border-radius: 28px 0 0 28px;
        background: #fbf8f2;
        box-shadow: var(--psy-shadow-pop);
        overflow: hidden;
        display: none;
        transform: translateX(105%);
        opacity: 0;
        visibility: hidden;
        transition:
            transform var(--psy-motion-default) var(--psy-ease-standard),
            opacity var(--psy-motion-default) var(--psy-ease-standard),
            visibility var(--psy-motion-default) var(--psy-ease-standard);
    }

    .psy-nav.is-open {
        display: grid;
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
    }

    .psy-nav__drawer-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--psy-space-6);
        padding-bottom: var(--psy-space-4);
        border-bottom: 1px solid rgba(23, 79, 88, 0.08);
    }

    .psy-nav__drawer-brand {
        display: grid;
        gap: 0.25rem;
    }

    .psy-nav__close {
        width: 2.8rem;
        height: 2.8rem;
        border: 1px solid rgba(23, 79, 88, 0.12);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.84);
        color: var(--psy-color-text-strong);
        font-size: 1.45rem;
        line-height: 1;
        cursor: pointer;
    }

    .psy-nav__list {
        flex-direction: column;
        align-items: stretch;
        gap: 0.48rem;
        overflow: auto;
        padding-right: 0.18rem;
    }

    .psy-nav__item-row {
        min-height: 0;
        border: 1px solid rgba(23, 79, 88, 0.08);
        border-radius: 18px;
        padding: 0.2rem 0.28rem;
        background: rgba(255, 255, 255, 0.7);
    }

    .psy-nav__link {
        flex: 1 1 auto;
        min-height: 0;
        padding: 0.72rem 0.8rem;
    }

    .psy-subnav {
        position: static;
        min-width: 0;
        margin-top: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        pointer-events: auto;
        max-height: 0;
        overflow: hidden;
        transition:
            max-height var(--psy-motion-default) var(--psy-ease-standard),
            padding var(--psy-motion-default) var(--psy-ease-standard);
    }

    .psy-subnav a {
        padding: 0.68rem 0.82rem;
        margin-top: 0.2rem;
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.74);
    }

    .psy-nav__item.is-open > .psy-subnav {
        max-height: 18rem;
        padding: 0.38rem 0.1rem 0.1rem;
    }

    .psy-nav__drawer-meta {
        display: grid;
        gap: var(--psy-space-5);
        padding-top: var(--psy-space-5);
        border-top: 1px solid rgba(23, 79, 88, 0.08);
    }

    .psy-nav__drawer-lang {
        display: flex;
        align-items: center;
        gap: var(--psy-space-3);
    }
}

@media (max-width: 700px) {
    :root { --psy-wrap-gutter: 1rem; }

    .psy-header__surface {
        border-radius: 22px;
    }

    .psy-topbar {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        padding: 0.85rem;
    }

    .psy-brand__logo {
        width: 2.08rem;
        height: 2.08rem;
    }

    .psy-topbar__link {
        min-height: 2.24rem;
        padding: 0.52rem 0.8rem;
        font-size: 0.82rem;
        white-space: nowrap;
    }

    .psy-topbar__actions {
        width: auto;
        justify-content: flex-end;
    }

    .psy-langswitch {
        gap: 0.24rem;
    }

    .psy-lang {
        min-width: 2.3rem;
        height: 2.3rem;
        padding-inline: 0.5rem;
    }

    .psy-nav {
        top: 0.3rem;
        width: calc(100vw - 0.3rem);
        height: calc(100dvh - 0.6rem);
        max-height: calc(100dvh - 0.6rem);
        padding: 0.9rem 0.82rem 1rem;
    }

    .psy-pill {
        padding: 0.34rem 0.68rem;
        font-size: 0.78rem;
    }

    .psy-hero {
        min-height: 66vh;
    }

    .psy-hero__content {
        padding: 5.9rem 0 4.1rem;
    }

    .psy-hero__eyebrow {
        margin-bottom: var(--psy-space-6);
    }

    .psy-hero h1 {
        max-width: none;
    }

    .psy-storyhero {
        padding-block: 0.8rem 1.8rem;
    }

    .psy-storyhero__nav {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.2rem;
        margin-inline: -0.05rem;
        padding: 0.28rem;
        border-radius: 1.1rem;
        overflow-x: visible;
    }

    .psy-storyhero__tab {
        flex: initial;
        min-width: 0;
        width: 100%;
        padding: 0.72rem 0.42rem 0.7rem;
        border-radius: 0.86rem;
        white-space: normal;
    }

    .psy-storyhero__tab::after {
        inset: 0.34rem 0.42rem auto;
    }

    .psy-storyhero__tab-title {
        display: block;
        white-space: normal;
        line-height: 1.18;
        font-size: clamp(0.9rem, 3.2vw, 1.02rem);
        text-wrap: balance;
    }

    .psy-storyhero__slide {
        grid-template-columns: minmax(0, 1fr);
        min-height: auto;
    }

    .psy-storyhero__image--desktop {
        display: none;
    }

    .psy-storyhero__image--mobile {
        display: block;
    }

    .psy-storyhero__visual {
        order: -1;
        min-height: 20rem;
        padding: 1.2rem 1.2rem 0;
    }

    .psy-storyhero__media-frame {
        min-height: 19rem;
    }

    .psy-storyhero__fallback-copy {
        padding: 1.1rem;
    }

    .psy-storyhero__fallback-title {
        max-width: none;
        font-size: clamp(2.6rem, 12vw, 3.9rem);
    }

    .psy-storyhero__veil {
        inset: 1rem 1rem 0.9rem auto;
        width: min(76%, 18rem);
    }

    .psy-storyhero__content {
        min-height: auto;
        align-content: start;
        max-width: none;
        padding: 1.2rem;
    }

    .psy-storyhero__content h1 {
        max-width: none;
        font-size: clamp(2.2rem, 10vw, 3.3rem);
    }

    .psy-storyhero__summary {
        font-size: 1rem;
    }

    .psy-storyhero__meta {
        flex-wrap: wrap;
    }

    .psy-storyhero__controls {
        position: static;
        justify-content: space-between;
        padding: 0 1.2rem 1.2rem;
    }

    .psy-shellhero {
        padding-block: 1rem 1.4rem;
    }

    .psy-shellhero__inner {
        gap: var(--psy-space-6);
        padding: 1.1rem;
    }

    .psy-shellhero__content h1 {
        max-width: none;
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .psy-detailhero {
        padding-block: 0.9rem 1rem;
    }

    .psy-detailhero__content h1,
    .psy-editorialhero h1 {
        max-width: none;
        font-size: clamp(1.95rem, 10vw, 3rem);
    }

    .psy-detailfacts,
    .psy-editorialhero__meta {
        gap: 0.5rem 0.75rem;
    }

    .psy-clinic-trust-detail__block--approach-overview,
    .psy-clinic-trust-detail__block--process-overview,
    .psy-clinic-trust-detail__block--privacy-overview,
    .psy-clinic-trust-detail__block--ethics-overview,
    .psy-clinic-trust-detail__block--about-overview,
    .psy-service-overview,
    .psy-service-card-grid__item,
    .psy-service-split__content,
    .psy-service-split__image,
    .psy-service-split__placeholder,
    .psy-service-note,
    .psy-service-faq__item,
    .psy-about-overview,
    .psy-about-card-grid__item,
    .psy-approach-split__content,
    .psy-approach-visual,
    .psy-approach-faq__item,
    .psy-about-split__content,
    .psy-about-split__image,
    .psy-about-split__placeholder,
    .psy-about-note,
    .psy-about-faq__item {
        border-radius: var(--psy-radius-md);
    }

    .psy-approach-section .psy-section__head h2 {
        max-width: none;
    }

    .psy-service-section .psy-section__head h2 {
        max-width: none;
    }

    .psy-about-section .psy-section__head h2 {
        max-width: none;
    }

    .psy-service-card-grid {
        grid-template-columns: 1fr;
    }

    .psy-service-split__image,
    .psy-service-split__placeholder {
        min-height: 13.5rem;
    }

    .psy-service-links .psy-btn,
    .psy-service-detail [data-intake-cta] .psy-btn {
        width: 100%;
        justify-content: center;
    }

    .psy-approach-visual {
        min-height: 13.5rem;
    }

    .psy-about-card-grid {
        grid-template-columns: 1fr;
    }

    .psy-about-split__image,
    .psy-about-split__placeholder {
        min-height: 13.5rem;
    }

    .psy-about-links .psy-btn {
        width: 100%;
        justify-content: center;
    }

    .psy-section { padding-block: 2.1rem; }
    .psy-section__head {
        flex-wrap: wrap;
        margin-bottom: var(--psy-space-6);
    }
    .psy-section__action {
        width: fit-content;
    }
    .psy-section__lead {
        margin-bottom: var(--psy-space-8);
    }

    .psy-grid--2,
    .psy-filterform,
    .psy-cards--services,
    .psy-cards--articles,
    .psy-cards--media,
    .psy-cards--staff,
    .psy-values-grid,
    .psy-clinic-cards,
    .psy-contact-scope__chips,
    .psy-appointment-scope__chips,
    .psy-video-presenter-grid,
    .psy-podcast-host-grid,
    .psy-author-grid,
    .psy-dictionary-featured,
    .psy-dictionary-grid,
    .psy-topic-hub-featured,
    .psy-topic-hub-grid,
    .psy-topic-cluster-layout,
    .psy-service-featured,
    .psy-service-grid,
    .psy-clinic-trust-grid,
    .psy-faq-grid,
    .psy-footer__cols {
        grid-template-columns: 1fr;
    }
    .psy-footer__brand,
    .psy-footer__col {
        padding: 0.84rem;
    }
    .psy-footer__actions {
        width: 100%;
    }
    .psy-footer__legal {
        justify-items: center;
    }

    .psy-home-rail__head {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .psy-home-rail__tools {
        justify-items: start;
    }

    .psy-home-rail__support {
        max-width: none;
        text-align: left;
    }

    .psy-home-rail__action {
        width: fit-content;
    }

    .psy-home-rail__viewport {
        scroll-snap-type: x proximity;
        scroll-padding-inline: 0.65rem;
        padding-inline-end: 1rem;
    }

    .psy-home-rail__track {
        grid-auto-columns: minmax(15.5rem, 72vw);
    }

    .psy-home-rail__nav-overlay {
        display: none;
    }

    .psy-home-rail__navbtn {
        display: none;
    }

    .psy-home-rail[data-home-rail-ready="true"] .psy-home-rail__slide {
        opacity: 1;
        filter: none;
        transform: none;
    }

    .psy-home-flow {
        gap: 2rem;
        padding-top: 0.85rem;
    }

    .psy-home-intro__surface {
        gap: 0.75rem;
        padding: 1rem 1rem 1.1rem;
    }

    .psy-home-intro__layout {
        grid-template-columns: 1fr;
    }

    .psy-home-intro__actions {
        align-items: stretch;
    }

    .psy-home-intro__actions .psy-btn {
        width: fit-content;
    }

    .psy-home-showcase {
        gap: 1rem;
    }

    .psy-home-showcase-overview,
    .psy-home-showcase-banner {
        padding: 1rem;
    }

    .psy-home-showcase-overview .psy-section__head h2,
    .psy-home-showcase-banner__content .psy-section__head h2 {
        max-width: none;
        font-size: clamp(1.55rem, 6vw, 2rem);
    }

    .psy-home-showcase-banner {
        grid-template-columns: 1fr;
    }

    .psy-home-showcase-banner__actions {
        justify-items: stretch;
    }

    .psy-home-showcase-banner__actions > .psy-btn--primary {
        width: 100%;
        justify-content: center;
    }

    .psy-home-showcase-banner__links {
        width: 100%;
        flex-direction: column;
    }

    .psy-home-showcase-banner__links .psy-btn--ghost {
        width: 100%;
        justify-content: center;
    }

    body:has(.psy-home-flow) .psy-layout-cta-zone--footer .psy-layout-cta {
        gap: 1rem;
    }

    .psy-dictionary-letters {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .psy-topic-hub-metrics {
        grid-template-columns: 1fr;
    }

    .psy-timeline {
        padding-left: var(--psy-space-8);
    }

    .psy-timeline__item::before {
        left: calc(-1 * var(--psy-space-8) - 9px);
    }

    .psy-float-whatsapp {
        width: 2.8rem;
        height: 2.8rem;
        right: 0.75rem;
        bottom: 0.75rem;
    }
}


