    :root { --bg: #0b0f18; --bg-soft: #171d2b; --panel: #121927; --text: #f5f7fb; --muted: #98a5bf; --accent: #ff6b6b; --accent-foreground: #ffffff; --border: rgba(255,255,255,0.10); --surface-radius: 24px; --button-radius: 999px; --section-gap: 32px; --content-width-narrow: 720px; --content-width-standard: 960px; --content-width: 960px; --content-width-wide: 1200px; --content-width-extra-wide: 1440px; --container-padding: 16px; --card-padding: 28px; --font-body: "Segoe UI", "Helvetica Neue", sans-serif; --font-heading: "Segoe UI", "Helvetica Neue", sans-serif; --border-width: 1px; --border-style: solid; --border-soft: color-mix(in srgb, var(--border) 24%, transparent); --border-strong: color-mix(in srgb, var(--border) 42%, transparent); --shadow-card: 0 20px 70px rgba(0, 0, 0, 0.2); --shadow-card-hover: 0 18px 42px color-mix(in srgb, var(--accent) 28%, transparent); --shadow-overlay: 0 28px 90px rgba(0, 0, 0, 0.32); --shadow-accent: 0 18px 42px color-mix(in srgb, var(--accent) 28%, transparent); --hero-title-size: clamp(38px, 6vw, 64px); --section-title-size: clamp(28px, 4vw, 42px); --card-title-size: clamp(18px, 2.2vw, 20px); --body-size: clamp(15px, 1.25vw, 16px); --label-size: clamp(11px, 1vw, 12px); --hero-title-line-height: 0.94; --section-title-line-height: 1.08; --card-title-line-height: 1.2; --body-line-height: 1.65; --heading-tracking: -0.05em; --panel-blur: 18px; --hover-lift-y: 8px; --hover-scale: 1.05; --transition-duration: 180ms; --canvas-surface-bg: radial-gradient(circle at top, var(--bg-soft), var(--bg) 58%); --header-surface-bg: color-mix(in srgb, var(--panel) 88%, transparent); --header-backdrop: blur(18px); --panel-surface-bg: var(--panel); --panel-surface-alt-bg: var(--bg-soft); --overlay-surface-bg: var(--panel-surface-bg, var(--panel)); --hero-surface-bg: var(--panel-surface-bg, var(--panel)); color-scheme: dark; --surface-radius-lg: var(--surface-radius, 24px); --surface-radius-md: max(0px, calc(var(--surface-radius, 24px) - 6px)); --surface-radius-sm: max(0px, calc(var(--surface-radius, 24px) - 10px)); --surface-radius-xs: max(0px, calc(var(--surface-radius, 24px) - 12px)); --surface-radius-xxs: max(0px, calc(var(--surface-radius, 24px) - 14px)); --overlay-surface-readable: var(--overlay-surface-bg, var(--panel-surface-bg, var(--panel))); }
    * { box-sizing: border-box; }
    html, body { margin: 0; padding: 0; }
    html { scroll-padding-top: 96px; overflow-x: hidden; }
    section[id] { scroll-margin-top: 96px; }
    html[data-koral-loading-screen="pending"], html[data-koral-loading-screen="pending"] body { overflow: hidden; }
    body { font-family: var(--font-body); font-size: var(--body-size, 16px); background: var(--koral-page-bg, var(--bg)); color: var(--koral-page-text, var(--text)); line-height: var(--body-line-height, 1.65); overflow-x: hidden; }
    body[data-koral-section-preview="1"] { overflow-x: hidden; }
    a { color: var(--accent); text-decoration: none; }
    img { max-width: 100%; display: block; }
    .site-shell { min-height: 100vh; background: var(--koral-page-bg, var(--canvas-surface-bg, radial-gradient(circle at top, var(--bg-soft), var(--bg) 55%))); color: inherit; opacity: 1; filter: none; transform: none; transition: opacity .42s ease, filter .42s ease, transform .42s ease; }
    .site-shell--section-preview { min-height: auto; padding: 16px 0; }
    .container--section-preview { width: min(var(--content-width, 1100px), calc(100vw - (var(--container-padding, 16px) * 2))); }
    .site-shell--section-preview .content { padding: 0; }
    html[data-koral-loading-screen="pending"] .site-shell { opacity: 0; filter: blur(10px); transform: translateY(12px); }
    .site-loading-screen { position: fixed; inset: 0; z-index: 1600; display: grid; place-items: center; padding: 24px; opacity: 0; visibility: hidden; pointer-events: none; background: radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 38%), radial-gradient(circle at 82% 16%, color-mix(in srgb, var(--text) 10%, transparent), transparent 28%), linear-gradient(180deg, color-mix(in srgb, var(--bg-soft) 90%, var(--bg) 10%), var(--bg)); transition: opacity .42s ease, visibility .42s ease; }
    .site-loading-screen::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 0%, color-mix(in srgb, var(--accent) 14%, transparent) 100%); opacity: .72; }
    .site-loading-screen__panel { position: relative; z-index: 1; width: min(420px, 100%); display: grid; gap: 16px; justify-items: center; padding: 32px 28px; border-radius: var(--surface-radius-lg); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, color-mix(in srgb, var(--border) 84%, rgba(255,255,255,.08))); background: var(--overlay-surface-readable); box-shadow: var(--shadow-overlay, 0 28px 90px rgba(0, 0, 0, 0.32)); text-align: center; overflow: hidden; }
    .site-loading-screen__panel::after { content: ""; position: absolute; inset: auto -20% -38% auto; width: 220px; height: 220px; border-radius: 999px; background: color-mix(in srgb, var(--accent) 18%, transparent); opacity: .85; }
    .site-loading-screen__mark { position: relative; z-index: 1; width: 96px; height: 96px; border-radius: 28px; overflow: hidden; display: grid; place-items: center; background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 88%, var(--text) 12%), color-mix(in srgb, var(--accent) 52%, var(--bg-soft) 48%)); color: var(--accent-foreground, #fff); font-family: var(--font-heading); font-size: 2rem; font-weight: 700; letter-spacing: var(--heading-tracking, -.06em); box-shadow: var(--shadow-accent, 0 18px 42px color-mix(in srgb, var(--accent) 28%, transparent)); }
    .site-loading-screen__mark img { width: 100%; height: 100%; object-fit: cover; }
    .site-loading-screen__copy { position: relative; z-index: 1; display: grid; gap: 6px; }
    .site-loading-screen__copy strong { font-family: var(--font-heading); font-size: clamp(1.35rem, 3vw, 1.8rem); letter-spacing: -.05em; }
    .site-loading-screen__copy span { color: color-mix(in srgb, var(--text) 66%, transparent); }
    .site-loading-screen__progress { position: relative; z-index: 1; width: min(220px, 100%); height: 4px; border-radius: 999px; overflow: hidden; background: color-mix(in srgb, var(--border) 82%, transparent); }
    .site-loading-screen__progress::after { content: ""; display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 88%, white 12%), color-mix(in srgb, var(--accent) 46%, white 54%)); animation: koralLoadingScreenPulse 1.15s ease-in-out infinite; transform-origin: left center; }
    html[data-koral-loading-screen="pending"] .site-loading-screen { opacity: 1; visibility: visible; pointer-events: auto; }
    html[data-koral-loading-screen="exiting"] .site-loading-screen { opacity: 0; visibility: visible; pointer-events: auto; }
    .site-cookie-banner { position: fixed; left: 20px; right: 20px; bottom: 20px; z-index: 1550; display: grid; justify-content: center; pointer-events: none; }
    .site-cookie-banner[hidden] { display: none; }
    .site-cookie-banner__panel { width: min(1080px, 100%); display: grid; gap: 18px; padding: 20px 22px; border-radius: var(--surface-radius-lg); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, color-mix(in srgb, var(--border) 84%, rgba(255,255,255,.08))); background: var(--overlay-surface-readable); box-shadow: var(--shadow-overlay, 0 28px 90px rgba(0, 0, 0, 0.28)); pointer-events: auto; }
    .site-cookie-banner__main { display: grid; grid-template-columns: minmax(0, 1.5fr) auto; gap: 20px; align-items: center; }
    .site-cookie-banner__copy { display: grid; gap: 8px; }
    .site-cookie-banner__copy strong { font-family: var(--font-heading); font-size: 1.05rem; letter-spacing: -.03em; }
    .site-cookie-banner__copy p { margin: 0; color: var(--muted); }
    .site-cookie-banner__copy a { font-weight: 700; }
    .site-cookie-banner__actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
    .site-cookie-banner__button { appearance: none; border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); border-radius: var(--button-radius, 999px); padding: 10px 14px; background: transparent; color: var(--text); font: inherit; font-weight: 700; cursor: pointer; transition: transform var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease; }
    .site-cookie-banner__button.is-primary { background: var(--accent); border-color: transparent; color: var(--accent-foreground, #fff); box-shadow: var(--shadow-accent, none); }
    .site-cookie-banner__button.is-soft { background: var(--panel-surface-alt-bg, color-mix(in srgb, var(--bg-soft) 76%, transparent)); }
    .site-cookie-banner__preferences { display: grid; gap: 12px; padding-top: 2px; }
    .site-cookie-banner__preferences[hidden] { display: none; }
    .site-cookie-option { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: flex-start; padding: 12px 14px; border-radius: var(--surface-radius-sm); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, color-mix(in srgb, var(--border) 82%, transparent)); background: var(--panel-surface-alt-bg, color-mix(in srgb, var(--bg-soft) 76%, transparent)); }
    .site-cookie-option input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--accent); }
    .site-cookie-option strong { display: block; font-size: .95rem; }
    .site-cookie-option small { display: block; color: var(--muted); line-height: 1.55; }
    .site-cookie-option.is-required { opacity: .9; }
    .container { width: min(var(--content-width, 1100px), calc(100vw - (var(--container-padding, 16px) * 2))); margin: 0 auto; }
    .site-header { position: sticky; top: 0; z-index: 220; isolation: isolate; backdrop-filter: var(--header-backdrop, blur(18px)); background: var(--header-surface-bg, color-mix(in srgb, var(--bg) 82%, transparent)); border-bottom: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); color: var(--header-text, var(--text)); }
    .koral-theme-preview-banner { position: fixed !important; right: 20px !important; bottom: 20px !important; z-index: 99999 !important; width: min(420px, calc(100vw - 24px)) !important; padding: 18px !important; border-radius: 16px !important; border: 1px solid rgba(255,255,255,0.12) !important; background: #121927 !important; box-shadow: 0 24px 64px rgba(0, 0, 0, 0.5) !important; color: #f5f7fb !important; font-family: "Segoe UI", "Helvetica Neue", sans-serif !important; }
    .koral-theme-preview-banner strong { display: block !important; margin-bottom: 6px !important; font-size: 15px !important; font-weight: 700 !important; color: #f5f7fb !important; }
    .koral-theme-preview-banner p { margin: 0 !important; font-size: 13px !important; line-height: 1.55 !important; color: rgba(245,247,251,0.72) !important; }
    .koral-theme-preview-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
    .koral-theme-preview-actions { display: flex !important; gap: 10px !important; margin-top: 14px !important; }
    .koral-theme-preview-button { appearance: none !important; border: 1px solid rgba(255,255,255,0.18) !important; border-radius: 10px !important; padding: 10px 18px !important; background: rgba(255,255,255,0.08) !important; color: #f5f7fb !important; font: inherit !important; font-weight: 700 !important; font-size: 13px !important; cursor: pointer !important; transition: transform 180ms ease, background 180ms ease, border-color 180ms ease !important; }
    .koral-theme-preview-button:hover { background: rgba(255,255,255,0.14) !important; border-color: rgba(255,255,255,0.3) !important; transform: translateY(-1px) !important; }
    .koral-theme-preview-button.is-primary { background: #ff6b6b !important; border-color: transparent !important; color: #ffffff !important; }
    .koral-theme-preview-button.is-primary:hover { background: #ff5555 !important; transform: translateY(-1px) !important; box-shadow: 0 8px 20px rgba(255,107,107,0.35) !important; }
    .koral-theme-preview-button[disabled] { opacity: 0.55 !important; cursor: not-allowed !important; pointer-events: none !important; }
    .site-header .container { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 18px 0; flex-wrap: wrap; }
    .brand { display: flex; gap: 14px; align-items: center; min-width: 0; text-decoration: none; color: inherit; transition: opacity 0.15s ease; }
    .brand:hover { opacity: 0.82; }
    .brand:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 6px; }
    .brand strong { display: block; font-size: 1.1rem; }
    .brand-stack { display: grid; gap: 2px; min-width: 0; }
    .brand-mark { width: 52px; height: 52px; border-radius: 18px; overflow: hidden; display: grid; place-items: center; background: color-mix(in srgb, var(--text) 8%, transparent); border: 1px solid var(--border); flex: 0 0 auto; }
    .brand-logo { width: 100%; height: 100%; object-fit: cover; }
    .brand span { color: var(--header-muted, var(--muted)); }
    .meta, .lede, .empty { color: var(--muted); }
    .nav { display: flex; gap: 14px; flex-wrap: wrap; }
    .nav--mega { gap: 18px; align-items: center; }
    .nav-link, .nav-mega summary, .nav-parent-link { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; color: var(--header-text, var(--text)); text-decoration: none; font-weight: 650; }
    .nav-link, .nav-mega summary { position: relative; }
    .nav-link::after, .nav-mega summary::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 2px; transform: scaleX(0); transform-origin: left; background: var(--accent); transition: transform .18s ease; }
    .nav-link:hover::after, .nav-link:focus-visible::after, .nav-mega summary:hover::after, .nav-mega summary:focus-visible::after, .nav-mega[open] summary::after { transform: scaleX(1); }
    .nav-mega { position: relative; }
    .nav-mega summary { list-style: none; cursor: pointer; }
    .nav-mega summary::-webkit-details-marker { display: none; }
    .nav-mega .nav-mega-panel { display: none; }
    .nav-mega[open] .nav-mega-panel { display: grid; animation: nav-mega-fade-in .18s ease-out both; }
    @keyframes nav-mega-fade-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
    .nav-mega::before { content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 16px; }
    .nav-chevron { width: 10px; height: 10px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .18s ease; opacity: .8; }
    .nav-mega[open] .nav-chevron { transform: rotate(-135deg) translateX(2px); }
    .nav-mega-panel { position: absolute; top: calc(100% + 16px); left: var(--nav-mega-offset-x, 0px); right: auto; z-index: 40; min-width: min(860px, calc(100vw - 40px)); max-width: calc(100vw - 40px); padding: 18px; border-radius: var(--surface-radius-lg); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, var(--border)); background: var(--overlay-surface-readable); box-shadow: var(--shadow-overlay, 0 26px 72px rgba(0, 0, 0, 0.28)); display: grid; gap: 18px; backdrop-filter: blur(var(--panel-blur, 18px)); }
    .nav--mega[data-menu-style="compact"] .nav-mega-panel { min-width: min(620px, calc(100vw - 40px)); }
    .nav-mega-panel-head { display: grid; grid-template-columns: minmax(220px, 280px) minmax(0, 1fr); gap: 16px; align-items: stretch; }
    .nav-mega-intro { display: grid; gap: 12px; padding: 14px; border-radius: var(--surface-radius-md); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, color-mix(in srgb, var(--border) 86%, transparent)); background: var(--panel-surface-alt-bg, color-mix(in srgb, var(--bg-soft) 68%, transparent)); }
    .nav-mega-intro-thumb { width: 100%; aspect-ratio: 16 / 10; border-radius: var(--surface-radius-xs); overflow: hidden; background: color-mix(in srgb, var(--text) 4%, transparent); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, color-mix(in srgb, var(--border) 82%, transparent)); }
    .nav-mega-intro-thumb img { width: 100%; height: 100%; object-fit: cover; }
    .nav-mega-intro small { color: var(--muted); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
    .nav-mega-intro strong { font-family: var(--font-heading); font-size: 1.1rem; letter-spacing: -.03em; }
    .nav-mega-intro p { margin: 0; color: var(--muted); }
    .nav-parent-link { width: fit-content; padding: 10px 14px; border-radius: var(--button-radius, 999px); background: color-mix(in srgb, var(--accent) 16%, transparent); }
    .nav-mega-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .nav-mega-card { display: grid; gap: 10px; padding: 14px; border-radius: var(--surface-radius-sm); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, color-mix(in srgb, var(--border) 86%, transparent)); background: var(--panel-surface-alt-bg, color-mix(in srgb, var(--bg-soft) 82%, transparent)); transition: transform var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background-color var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease; }
    .nav-mega-card:hover, .nav-mega-card:focus-visible { transform: translateY(calc(var(--hover-lift-y, 8px) * -1)) scale(var(--hover-scale, 1.05)); border-color: color-mix(in srgb, var(--accent) 42%, var(--border)); background: var(--panel-surface-bg, color-mix(in srgb, var(--panel) 84%, transparent)); box-shadow: var(--shadow-accent, none); }
    .nav-mega-card-thumb { width: 100%; aspect-ratio: 16 / 10; border-radius: var(--surface-radius-xs); overflow: hidden; background: color-mix(in srgb, var(--accent) 12%, transparent); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, color-mix(in srgb, var(--border) 82%, transparent)); display: grid; place-items: center; }
    .nav-mega-card-thumb img { width: 100%; height: 100%; object-fit: cover; }
    .nav-mega-card-thumb--placeholder { font-family: var(--font-heading); font-size: 1.6rem; letter-spacing: -.06em; color: color-mix(in srgb, var(--text) 72%, transparent); }
    .nav-mega-card-copy { display: grid; gap: 5px; }
    .nav-mega-card-copy strong { font-size: 1rem; letter-spacing: -.02em; }
    .nav-mega-card-copy p { margin: 0; color: var(--muted); font-size: .93rem; }
    .nav--mega[data-menu-style="editorial"] .nav-mega-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .nav--mega[data-menu-style="editorial"] .nav-mega-card { background: transparent; border-style: dashed; }
    .nav--mega[data-menu-style="compact"] .nav-mega-panel-head { grid-template-columns: 1fr; }
    .nav--mega[data-menu-style="compact"] .nav-mega-grid { grid-template-columns: 1fr; }
    .nav--mega[data-menu-style="compact"] .nav-mega-card { grid-template-columns: 72px minmax(0, 1fr); align-items: center; }
    .nav--mega[data-menu-style="compact"] .nav-mega-card-thumb { aspect-ratio: 1; }
    .nav--secondary { gap: 10px; justify-content: flex-end; }
    .header-right, .header-tools { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
    .header-right { justify-content: flex-end; }
    .header-tools { margin-left: auto; }
    .header-cta { padding: 10px 14px; border-radius: var(--button-radius, 999px); background: var(--accent); color: var(--accent-foreground, #fff); font-weight: 700; box-shadow: var(--shadow-accent, none); }
    .site-burger { display: none; appearance: none; border: 0; background: transparent; width: 44px; height: 44px; padding: 0; cursor: pointer; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: var(--header-text, var(--text)); margin-left: auto; }
    .site-burger span { display: block; width: 26px; height: 2px; background: currentColor; border-radius: 2px; transition: transform 200ms ease, opacity 200ms ease; }
    .site-header.is-open .site-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
    .site-header.is-open .site-burger span:nth-child(2) { opacity: 0; }
    .site-header.is-open .site-burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
    .hero, .content, .site-footer { padding: var(--section-gap, 32px) 0; }
    .hero-card, .content-card, .section-card { border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, var(--border)); border-radius: var(--surface-radius, 24px); box-shadow: var(--shadow-card, 0 20px 70px rgba(0, 0, 0, 0.2)); }
    .hero-card { background: var(--hero-surface-bg, var(--panel)); padding: var(--card-padding, 32px); display: grid; gap: 12px; }
    .content-card, .section-card { background: var(--panel-surface-bg, var(--panel)); padding: var(--card-padding, 28px); }
    .hero-card h1 { margin: 0; font-size: var(--hero-title-size, clamp(2.1rem, 5vw, 4.2rem)); line-height: var(--hero-title-line-height, 0.94); letter-spacing: var(--heading-tracking, -0.05em); }
    .hero-card p { margin: 0; max-width: 65ch; line-height: calc(var(--body-line-height, 1.65) + 0.05); }
    .content-grid { display: grid; gap: calc(var(--section-gap, 32px) * 0.75); grid-template-columns: minmax(0, 1fr); }
    .prose h1 { font-size: var(--hero-title-size, clamp(2rem, 5vw, 4rem)); line-height: var(--hero-title-line-height, 0.94); letter-spacing: var(--heading-tracking, -0.05em); }
    .prose h2 { font-size: var(--section-title-size, clamp(1.7rem, 4vw, 2.625rem)); line-height: var(--section-title-line-height, 1.08); letter-spacing: calc(var(--heading-tracking, -0.05em) * .85); }
    .prose h3 { font-size: var(--card-title-size, 20px); line-height: var(--card-title-line-height, 1.2); letter-spacing: calc(var(--heading-tracking, -0.05em) * .7); }
    .prose p:first-child { margin-top: 0; }
    .prose p:last-child { margin-bottom: 0; }
    .prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6, .prose blockquote { margin-top: 1.4em; }
    .prose ul, .prose ol { padding-left: 1.35rem; }
    .prose li + li { margin-top: 0.45rem; }
    .prose .checklist { list-style: none; padding-left: 0; }
    .prose .checklist li::before { content: "☑ "; color: var(--accent); }
    .prose pre { overflow: auto; padding: 16px; border-radius: 16px; background: var(--bg-soft); border: 1px solid var(--border); }
    .prose code { font-family: "Consolas", monospace; }
    .prose hr { border: 0; border-top: 1px solid var(--border); margin: 2rem 0; }
    .prose figure { margin: 1.5rem 0; }
    .prose::after { content: ""; display: block; clear: both; }
    .prose .prose-columns { display: grid; gap: 24px; margin: 1.75rem 0; grid-template-columns: repeat(var(--columns-count, 2), minmax(0, 1fr)); }
    .prose .prose-column { min-width: 0; }
    .prose .prose-image { display: grid; gap: 10px; width: min(100%, var(--image-width, 100%)); max-width: 100%; }
    .prose .prose-image img { width: 100%; border-radius: 20px; border: 1px solid var(--border); background: var(--bg-soft); }
    .prose .prose-image--wrap-none { clear: both; margin-left: auto; margin-right: auto; }
    .prose .prose-image--wrap-none.prose-image--align-left { margin-left: 0; margin-right: auto; }
    .prose .prose-image--wrap-none.prose-image--align-center { margin-left: auto; margin-right: auto; }
    .prose .prose-image--wrap-none.prose-image--align-right { margin-left: auto; margin-right: 0; }
    .prose .prose-image--wrap-left, .prose .prose-image--wrap-right { clear: both; }
    .prose .prose-image--wrap-left { float: left; margin: 0 24px 16px 0; }
    .prose .prose-image--wrap-right { float: right; margin: 0 0 16px 24px; }
    .prose figcaption { color: var(--muted); font-size: 0.95rem; }
    .prose blockquote { margin-left: 0; padding-left: 18px; border-left: 3px solid var(--accent); color: var(--text); }
    .prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6, .prose blockquote, .prose pre, .prose hr, .prose .prose-columns { clear: both; }
    .post-meta { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 20px; }
    .badge { padding: 8px 12px; border-radius: 999px; background: var(--panel-surface-alt-bg, var(--bg-soft)); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); font-size: var(--label-size, 0.85rem); }
    .site-footer { color: var(--footer-text, var(--muted)); }
    .site-footer[style*="--footer-bg"] .footer-grid { background: var(--footer-bg); }
    .site-footer[style*="--footer-text"] .footer-title, .site-footer[style*="--footer-text"] .footer-copy, .site-footer[style*="--footer-text"] .footer-tagline { color: var(--footer-text); }
    .site-footer[style*="--footer-accent"] .footer-nav a, .site-footer[style*="--footer-accent"] .footer-social a { color: var(--footer-accent); }
    .footer-layout--centered .footer-grid { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    .footer-layout--centered .footer-social { justify-content: center; }
    .footer-layout--minimal .footer-grid { grid-template-columns: 1fr; gap: 12px; padding: 16px 28px; }
    .footer-layout--minimal .footer-title { display: none; }
    .footer-layout--minimal .footer-column { flex-direction: row; gap: 16px; justify-content: center; flex-wrap: wrap; }
    .footer-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(180px, .8fr)); gap: calc(var(--section-gap, 32px) * 0.56); padding: var(--card-padding, 28px); border-radius: var(--surface-radius, 24px); background: var(--panel-surface-bg, var(--panel)); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, var(--border)); box-shadow: var(--shadow-card, 0 20px 70px rgba(0, 0, 0, 0.2)); }
    .footer-surface--plain .footer-grid { background: transparent !important; border: none !important; box-shadow: none !important; border-radius: 0 !important; }
    .footer-surface--card .footer-grid { background: var(--footer-bg, var(--panel-surface-bg, var(--panel))); border-radius: var(--surface-radius, 24px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, var(--border)); box-shadow: var(--shadow-card, 0 20px 70px rgba(0,0,0,.2)); }
    .footer-surface--flat .footer-grid { border-radius: 0 !important; box-shadow: none !important; border-left: none; border-right: none; border-bottom: none; }
    .footer-padding--compact .footer-grid { padding: 16px; }
    .footer-padding--normal .footer-grid { padding: 28px; }
    .footer-padding--spacious .footer-grid { padding: 48px 36px; }
    .footer-column { display: grid; gap: 12px; align-content: start; }
    .footer-title { margin: 0; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
    .footer-copy { margin: 0; color: var(--footer-text, var(--text)); }
    .footer-tagline { margin: 0; color: var(--muted); }
    .footer-nav { display: grid; gap: 10px; }
    .footer-social { display: flex; gap: 10px; flex-wrap: wrap; }
    .footer-nav a, .footer-social a { color: var(--footer-accent, var(--text)); }
    .footer-social a { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
    .footer-social-icon { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; color: currentColor; }
    .footer-social-icon svg { width: 18px; height: 18px; display: block; fill: currentColor; }
    .footer-social[data-social-style="pill"] a { padding: 10px 14px; border-radius: var(--button-radius, 999px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); }
    .footer-social[data-social-style="icon-only"] a { width: 42px; height: 42px; justify-content: center; border-radius: var(--button-radius, 999px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); }
    .footer-social[data-social-style="icon-only"] a span { display: none; }
    @media (max-width: 720px) { .hero-card, .content-card, .section-card, .footer-grid { padding: 20px; } .footer-grid { grid-template-columns: 1fr; } }
    @keyframes koralLoadingScreenPulse { 0% { transform: translateX(-42%) scaleX(.72); } 60% { transform: translateX(148%) scaleX(1.08); } 100% { transform: translateX(224%) scaleX(.72); } }
    @media (max-width: 960px) {
      .site-header .container { align-items: center; flex-wrap: nowrap; padding: 14px 0; }
      .site-burger { display: inline-flex; }
      .header-right { position: fixed; top: 0; left: 0; z-index: 200; width: 100vw; height: 100vh; height: 100dvh; padding: 80px 24px 32px; background: var(--bg); color: var(--text); transform: translateX(100vw); transition: transform 280ms ease; overflow-y: auto; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 18px; flex-wrap: nowrap; }
      .site-header.is-open { backdrop-filter: none; }
      .site-header.is-open .header-right { transform: translateX(0); }
      .nav--mega { width: 100%; flex-direction: column; gap: 4px; align-items: stretch; }
      .nav-link, .nav-mega summary { width: 100%; padding: 14px 4px; min-height: 52px; font-size: 1.05rem; border-bottom: 1px solid var(--border-soft, var(--border)); }
      .nav-link::after, .nav-mega summary::after { display: none; }
      .nav-mega { width: 100%; }
      .nav-mega-panel { position: static; min-width: 0; width: 100%; margin-top: 4px; box-shadow: none; background: transparent; border: 0; padding: 4px 0 8px 12px; }
      .nav-mega-panel-head, .nav-mega-grid { grid-template-columns: 1fr; gap: 4px; }
      /* Mobile mega menu: text-only — hide thumbs, descriptions and intro chrome to keep the drawer compact and fast to scan. */
      .nav-mega-intro { padding: 0; border: 0; background: transparent; gap: 4px; }
      .nav-mega-intro-thumb { display: none; }
      .nav-mega-intro small { display: none; }
      .nav-mega-intro p { display: none; }
      .nav-mega-intro strong { font-size: .85rem; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); padding: 6px 0; }
      .nav-parent-link { padding: 12px 4px; background: transparent; border-radius: 0; font-weight: 650; }
      .nav-mega-card { display: flex; align-items: center; padding: 12px 4px; border: 0; background: transparent; min-height: 48px; }
      .nav-mega-card:hover, .nav-mega-card:focus-visible { transform: none; background: transparent; box-shadow: none; }
      .nav-mega-card-thumb { display: none; }
      .nav-mega-card-copy { gap: 0; }
      .nav-mega-card-copy strong { font-weight: 600; font-size: 1rem; }
      .nav-mega-card-copy p { display: none; }
      .header-tools { width: 100%; margin-left: 0; flex-direction: column; align-items: stretch; gap: 12px; padding-top: 8px; border-top: 1px solid var(--border-soft, var(--border)); }
      .header-cta { text-align: center; }
      .nav--secondary { justify-content: flex-start; flex-wrap: wrap; }
      body.koral-nav-open { overflow: hidden; }
      .site-cookie-banner__main { grid-template-columns: 1fr; }
      .site-cookie-banner__actions { justify-content: flex-start; }
    }
    @media (max-width: 720px) { .prose .prose-image { width: min(100%, var(--image-width, 100%)); } .prose .prose-image--wrap-left, .prose .prose-image--wrap-right { float: none; margin: 1.5rem auto; } .prose .prose-image img { max-width: 100%; } .prose .prose-columns { grid-template-columns: 1fr; } .koral-theme-preview-banner { left: 12px; right: 12px; bottom: 12px; width: auto; } .site-loading-screen { padding: 16px; } .site-loading-screen__panel { padding: 26px 22px; } .site-loading-screen__mark { width: 84px; height: 84px; border-radius: 24px; } .site-cookie-banner { left: 12px; right: 12px; bottom: 12px; } .site-cookie-banner__panel { padding: 18px; } .site-cookie-banner__actions, .site-cookie-banner__actions--preferences { display: grid; grid-template-columns: 1fr; } .site-cookie-banner__button { width: 100%; } }
    .site-header, .site-header .container, .brand-mark { transition: padding 0.25s ease, width 0.25s ease, height 0.25s ease, box-shadow 0.3s ease, border-radius 0.25s ease; }
    .site-header.is-scrolled { box-shadow: 0 1px 8px rgba(0,0,0,.08); }
    .site-header.is-scrolled .container { padding: 10px 0; }
    .site-header.is-scrolled .brand-mark { width: 38px; height: 38px; border-radius: 12px; }
    .lenis.lenis-smooth { scroll-behavior: auto; }
    .lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
    .lenis.lenis-stopped { overflow: hidden; }
    @view-transition { navigation: auto; }
    ::view-transition-old(root) { animation: koral-vt-out 180ms ease-out forwards; }
    ::view-transition-new(root) { animation: koral-vt-in 220ms ease-in; }
    @keyframes koral-vt-out { to { opacity: 0; transform: scale(.98); } }
    @keyframes koral-vt-in { from { opacity: 0; transform: scale(1.01); } }

    /* 20260415-p3-responsive-control-v2 */
    .sections { display: grid; gap: calc(var(--section-gap, 32px) * 0.75); }
    .section-card { --section-gap-base: var(--section-gap, 32px); --section-density-factor: 1; --section-mobile-density-factor: 1; --section-density-current: calc(var(--section-density-factor) * var(--section-mobile-density-factor)); --section-radius-outer: max(var(--surface-radius, 24px), 0px); --section-radius-inner: max(calc(var(--section-radius-outer, 24px) - 6px), 0px); --section-radius-media: max(calc(var(--section-radius-outer, 24px) - 6px), 0px); --section-radius-overlay: max(calc(var(--section-radius-outer, 24px) + 4px), 0px); --section-radius-control: max(var(--button-radius, var(--section-radius-inner, 18px)), 0px); --section-width-narrow: var(--content-width-narrow, 720px); --section-width-standard: var(--content-width, var(--content-width-standard, 960px)); --section-width-wide: var(--content-width-wide, 1200px); --section-width-extra-wide: var(--content-width-extra-wide, 1440px); --section-inline-max-width: var(--section-width-standard); --section-card-padding-base: var(--card-padding, calc(var(--section-gap-base) * 0.875)); --section-card-padding-current: clamp(18px, calc(var(--section-card-padding-base) * var(--section-density-current)), 56px); --section-shell-gap-base: clamp(16px, calc(var(--section-gap-base) * 0.56), 28px); --section-shell-gap-current: clamp(12px, calc(var(--section-shell-gap-base) * var(--section-density-current)), 34px); --section-space-2xs: clamp(8px, calc(var(--section-gap-base) * 0.25 * var(--section-density-current)), 14px); --section-space-xs: clamp(10px, calc(var(--section-gap-base) * 0.38 * var(--section-density-current)), 18px); --section-space-sm: clamp(12px, calc(var(--section-gap-base) * 0.44 * var(--section-density-current)), 20px); --section-space-md: clamp(14px, calc(var(--section-gap-base) * 0.56 * var(--section-density-current)), 24px); --section-space-lg: clamp(18px, calc(var(--section-gap-base) * 0.75 * var(--section-density-current)), 30px); --section-space-xl: clamp(20px, calc(var(--section-gap-base) * 1 * var(--section-density-current)), 40px); --section-space-2xl: clamp(24px, calc(var(--section-gap-base) * 1.28 * var(--section-density-current)), 48px); --section-soft-surface-bg: linear-gradient(180deg, color-mix(in srgb, var(--panel-surface-alt-bg, var(--bg-soft)) 88%, transparent), var(--panel-surface-bg, var(--panel))); --section-accent-surface-bg: linear-gradient(140deg, color-mix(in srgb, var(--accent) 24%, transparent), color-mix(in srgb, var(--hero-surface-bg, var(--panel-surface-bg, var(--panel))) 88%, transparent) 42%, var(--panel-surface-bg, var(--panel))); --section-contrast-surface-bg: linear-gradient(140deg, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 92%, var(--bg-soft) 8%), color-mix(in srgb, var(--bg) 84%, var(--bg-soft) 16%) 68%); --section-overlay-surface-bg: color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 92%, transparent); --section-overlay-copy: color-mix(in srgb, var(--text) 82%, transparent); --section-control-surface-bg: color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 88%, transparent); --section-control-border: color-mix(in srgb, var(--text) 14%, transparent); --section-muted-surface-bg: color-mix(in srgb, var(--muted) 42%, transparent); --section-input-surface-bg: color-mix(in srgb, var(--text) 8%, var(--panel-surface-bg, var(--panel)) 92%); --section-input-text: var(--text); --section-input-placeholder: color-mix(in srgb, var(--text) 46%, transparent); --section-badge-surface-bg: color-mix(in srgb, var(--text) 12%, var(--panel-surface-alt-bg, var(--bg-soft)) 88%); --section-ghost-surface-bg: color-mix(in srgb, var(--bg) 6%, transparent); --section-contrast-ring: 0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent); --section-lightbox-backdrop-bg: color-mix(in srgb, var(--bg) 58%, transparent); padding: var(--section-card-padding-current); display: grid; gap: var(--section-shell-gap-current); background: var(--panel-surface-bg, var(--panel)); border: var(--border-width, 1px) var(--border-style, solid) var(--border-strong, var(--border)); border-radius: var(--section-radius-outer, 24px); box-shadow: var(--shadow-card, 0 20px 70px rgba(0, 0, 0, 0.2)); font-family: var(--section-font-family, inherit); font-style: var(--section-font-style, normal); }
    .section-card[data-animation-preset]:not([data-animation-preset="none"]) { --section-anim-duration: 500ms; --section-anim-from-transform: translate3d(0, 0, 0); --section-anim-from-filter: none; }
    .section-card[data-animation-preset]:not([data-animation-preset="none"]) [data-section-anim-node="1"] { transition-property: opacity, transform, filter; transition-duration: var(--section-anim-duration, 500ms); transition-delay: var(--section-anim-delay, 0ms); transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1); will-change: opacity, transform, filter; }
    html[data-koral-motion="pending"] .section-card[data-animation-preset]:not([data-animation-preset="none"]) [data-section-anim-node="1"],
    html[data-koral-motion="active"] .section-card[data-animation-preset]:not([data-animation-preset="none"])[data-animation-state="before"] [data-section-anim-node="1"] { opacity: 0; transform: var(--section-anim-from-transform, translate3d(0, 0, 0)); filter: var(--section-anim-from-filter, none); }
    html[data-koral-motion="active"] .section-card[data-animation-preset]:not([data-animation-preset="none"])[data-animation-state="visible"] [data-section-anim-node="1"] { opacity: 1; transform: none; filter: none; }
    .section-shell { display: grid; gap: var(--section-shell-gap-current); width: 100%; max-width: var(--section-inline-max-width, 960px); margin: 0 auto; }
    .section-card--width-narrow { --section-inline-max-width: var(--section-width-narrow); }
    .section-card--width-standard { --section-inline-max-width: var(--section-width-standard); }
    .section-card--width-wide { --section-inline-max-width: var(--section-width-wide); }
    .section-card--width-extra-wide { --section-inline-max-width: var(--section-width-extra-wide); }
    .section-card--width-full { --section-inline-max-width: none; }
    .section-card--edge-to-edge { padding: 0; border-radius: 0 !important; --section-radius-outer: 0; --surface-radius: 0; border: 0; box-shadow: none; }
    .section-card--edge-to-edge .section-shell { max-width: none; }
    .section-card--full-width { width: 100vw; margin-left: calc(-50vw + 50%); }
    .section-columns:has(> .section-card--full-width) { width: 100vw; margin-left: calc(-50vw + 50%); }
    .section-card--spacing-none { --section-density-factor: 0.56; }
    .section-card--spacing-compact { --section-density-factor: 0.82; }
    .section-card--spacing-normal { --section-density-factor: 1; }
    .section-card--spacing-spacious { --section-density-factor: 1.2; }
    .section-card--spacing-hero { --section-density-factor: 1.42; }
    .section-card.has-bg-video { position: relative; overflow: hidden; isolation: isolate; }
    .section-bg-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none; }
    .section-card.has-bg-video > .section-shell { position: relative; z-index: 1; }
    .section-card--hide-desktop { display: none; }
    .section-card--surface-soft { background: var(--section-soft-surface-bg); }
    .section-card--surface-plain { background: transparent; border: none; box-shadow: none; }
    .section-card--surface-accent { background: var(--section-accent-surface-bg); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card--surface-contrast { background: var(--section-contrast-surface-bg); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card[class*="section-card--bg-"] { position: relative; overflow: hidden; isolation: isolate; }
    .section-card[class*="section-card--bg-"]::before { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; border-radius: inherit; background: var(--section-effect-background, transparent); opacity: var(--section-effect-opacity, 1); }
    .section-card[class*="section-card--bg-"] .section-shell,
    .section-card[class*="section-card--bg-"] .section-hero__layout { position: relative; z-index: 1; }
    .section-card--hero[class*="section-card--bg-"] .section-hero__background::after { content: ''; position: absolute; inset: 0; background: var(--section-effect-overlay, transparent); opacity: var(--section-effect-overlay-opacity, 0.76); pointer-events: none; }
    .section-card--bg-mesh-warm { --section-effect-background: radial-gradient(circle at 14% 18%, color-mix(in srgb, var(--accent) 30%, #ffd1a1 70%) 0%, transparent 42%), radial-gradient(circle at 84% 12%, color-mix(in srgb, #ff9d7a 72%, transparent) 0%, transparent 38%), radial-gradient(circle at 70% 82%, color-mix(in srgb, #ffe2b8 68%, transparent) 0%, transparent 36%), linear-gradient(135deg, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 90%, #fff0d8 10%), color-mix(in srgb, var(--bg-soft) 82%, #ffbe86 18%)); --section-effect-overlay: radial-gradient(circle at 18% 20%, color-mix(in srgb, #ffd7b0 58%, transparent) 0%, transparent 38%), linear-gradient(135deg, color-mix(in srgb, #ffb68e 34%, transparent), transparent 58%); }
    .section-card--bg-mesh-cool { --section-effect-background: radial-gradient(circle at 18% 22%, color-mix(in srgb, #7dd3fc 78%, transparent) 0%, transparent 38%), radial-gradient(circle at 80% 18%, color-mix(in srgb, #c4b5fd 72%, transparent) 0%, transparent 34%), radial-gradient(circle at 72% 84%, color-mix(in srgb, #67e8f9 62%, transparent) 0%, transparent 36%), linear-gradient(145deg, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 90%, #e0f2fe 10%), color-mix(in srgb, var(--bg-soft) 84%, #93c5fd 16%)); --section-effect-overlay: radial-gradient(circle at 22% 20%, color-mix(in srgb, #a5f3fc 52%, transparent) 0%, transparent 42%), linear-gradient(160deg, color-mix(in srgb, #818cf8 28%, transparent), transparent 62%); }
    .section-card--bg-mesh-accent { --section-effect-background: radial-gradient(circle at 16% 18%, color-mix(in srgb, var(--accent) 82%, transparent) 0%, transparent 40%), radial-gradient(circle at 82% 16%, color-mix(in srgb, var(--accent) 42%, #ffffff 58%) 0%, transparent 34%), radial-gradient(circle at 62% 82%, color-mix(in srgb, var(--accent) 26%, #fde68a 74%) 0%, transparent 36%), linear-gradient(140deg, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 86%, var(--accent) 14%), color-mix(in srgb, var(--bg-soft) 78%, var(--accent) 22%)); --section-effect-overlay: radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--accent) 42%, transparent) 0%, transparent 38%), linear-gradient(135deg, color-mix(in srgb, var(--accent) 24%, transparent), transparent 62%); }
    .section-card--bg-gradient-radial { --section-effect-background: radial-gradient(circle at top left, color-mix(in srgb, var(--accent) 24%, white 76%) 0%, transparent 28%), radial-gradient(circle at bottom right, color-mix(in srgb, var(--accent) 18%, var(--bg-soft) 82%) 0%, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 96%, white 4%), color-mix(in srgb, var(--bg-soft) 82%, var(--accent) 18%)); --section-effect-overlay: radial-gradient(circle at center, color-mix(in srgb, var(--accent) 22%, transparent) 0%, transparent 54%); }
    .section-card--bg-gradient-diagonal { --section-effect-background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, white 82%) 0%, color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 94%, white 6%) 42%, color-mix(in srgb, var(--bg-soft) 80%, var(--accent) 20%) 100%); --section-effect-overlay: linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), transparent 46%, color-mix(in srgb, var(--accent) 12%, transparent) 100%); }
    .section-card--align-center .section-shell { justify-items: center; text-align: center; }
    .section-card--align-center .section-header,
    .section-card--align-center .section-copy,
    .section-card--align-center .section-actions,
    .section-card--align-center .section-cta__actions { justify-items: center; justify-content: center; }
    .section-card--align-center .section-kicker { margin-inline: auto; }
    .section-card--align-center .section-copy p { margin-inline: auto; }
    .section-card--hero { position: relative; overflow: hidden; isolation: isolate; min-height: 460px; padding: var(--section-card-padding-current); }
    .section-card--hero.section-card--hero-height-auto { min-height: 0; }
    .section-card--hero.section-card--hero-height-sm { min-height: 340px; }
    .section-card--hero.section-card--hero-height-md { min-height: 460px; }
    .section-card--hero.section-card--hero-height-lg { min-height: 620px; }
    .section-card--hero.section-card--hero-bg-panel { background: var(--panel-surface-bg, var(--panel)); }
    .section-card--hero.section-card--hero-bg-soft { background: var(--section-soft-surface-bg); }
    .section-card--hero.section-card--hero-bg-accent { background: var(--section-accent-surface-bg); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card--hero.section-card--hero-bg-contrast { background: var(--section-contrast-surface-bg); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card--hero.section-card--hero-bg-image { background: var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card--hero.section-card--hero-bg-plain { background: transparent; border: none; box-shadow: none; }
    .section-card--hero .section-hero__background, .section-card--hero .section-hero__background-media, .section-card--hero .section-hero__overlay { position: absolute; inset: 0; z-index: 0; }
    .section-card--hero .section-hero__background-media { overflow: hidden; }
    .section-card--hero .section-hero__background { --hero-parallax-offset: 0px; --hero-background-scale: 1.03; background-position: center; background-repeat: no-repeat; background-size: cover; transform: translate3d(0, var(--hero-parallax-offset, 0px), 0) scale(var(--hero-background-scale, 1.03)); transform-origin: center; will-change: transform; }
    .section-card--hero .section-hero__video { width: 100%; height: 100%; object-fit: cover; filter: saturate(0.9); transform: scale(1.04); }
    .section-card--hero[data-hero-parallax="on"] .section-hero__background { inset: -12% 0; --hero-background-scale: 1.14; }
    .section-card--hero .section-hero__overlay--soft { background: linear-gradient(180deg, color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 14%, transparent), color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 34%, transparent)); }
    .section-card--hero .section-hero__overlay--medium { background: linear-gradient(180deg, color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 26%, transparent), color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 54%, transparent)); }
    .section-card--hero .section-hero__overlay--strong { background: linear-gradient(180deg, color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 38%, transparent), color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 74%, transparent)); }
    .section-card--hero .section-hero__layout { position: relative; z-index: 1; display: grid; gap: var(--section-space-xl); grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; min-height: inherit; width: 100%; max-width: var(--section-inline-max-width, none); margin-inline: auto; }
    .section-card--hero .section-hero__layout--media-only { grid-template-columns: 1fr; }
    .section-card--hero .section-hero__layout:not(.section-hero__layout--has-media) { grid-template-columns: 1fr; }
    .section-card--hero .section-hero__copy { display: grid; gap: var(--section-space-md); align-content: center; min-width: 0; }
    .section-hero__badges { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: var(--section-space-sm); margin-top: var(--section-space-xs); }
    .section-hero__badge { display: grid; gap: 4px; padding: 12px 16px; border-radius: var(--section-radius-inner, 14px); background: color-mix(in srgb, var(--hero-badge-accent, var(--accent)) 14%, color-mix(in srgb, var(--panel) 92%, transparent)); border: 1px solid color-mix(in srgb, var(--hero-badge-accent, var(--accent)) 32%, transparent); }
    .section-hero__badge-label { font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: color-mix(in srgb, var(--text) 62%, transparent); }
    .section-hero__badge-value { font-size: clamp(20px, 2.4vw, 28px); font-weight: 800; color: var(--hero-badge-accent, var(--accent)); line-height: 1.1; letter-spacing: -0.02em; }
    .section-card--hero.section-card--hero-align-center .section-hero__badges { justify-items: center; }
    .section-card--hero .section-hero__media img { min-height: 260px; max-height: 520px; object-fit: cover; box-shadow: var(--shadow-overlay, 0 28px 60px rgba(0, 0, 0, 0.22)); }
    .section-card--hero .section-hero__media--stacked { width: min(100%, 780px); justify-self: center; }
    .section-card--hero .section-hero__media--stacked img { min-height: 220px; max-height: 420px; }
    .section-card--hero .section-hero__media--solo { width: 100%; justify-self: stretch; align-self: stretch; }
    .section-card--hero .section-hero__media--solo img { width: 100%; min-height: clamp(320px, 55vh, 720px); max-height: none; }
    .section-card--hero.section-card--hero-layout-centered .section-hero__layout { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    .section-card--hero.section-card--hero-layout-centered .section-hero__copy { justify-items: center; max-width: min(720px, 100%); }
    .section-card--hero.section-card--hero-layout-split .section-hero__layout { grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); gap: var(--section-space-2xl); }
    .section-card--hero.section-card--hero-layout-split .section-hero__media img { min-height: clamp(300px, 42vw, 540px); }
    .section-card--hero.section-card--hero-layout-full-image .section-hero__layout,
    .section-card--hero.section-card--hero-layout-overlay .section-hero__layout,
    .section-card--hero.section-card--hero-layout-video .section-hero__layout,
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__layout { grid-template-columns: 1fr; align-content: end; justify-items: start; }
    .section-card--hero.section-card--hero-layout-full-image .section-hero__copy,
    .section-card--hero.section-card--hero-layout-overlay .section-hero__copy,
    .section-card--hero.section-card--hero-layout-video .section-hero__copy,
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__copy { max-width: min(720px, 100%); }
    .section-card--hero.section-card--hero-layout-overlay .section-hero__copy { padding: clamp(18px, calc(var(--section-card-padding-current) * 0.82), 36px); border-radius: var(--section-radius-inner, 18px); background: color-mix(in srgb, var(--section-overlay-surface-bg) 92%, transparent); border: 1px solid var(--section-control-border); box-shadow: var(--shadow-overlay, 0 22px 54px rgba(0, 0, 0, 0.24)); }
    /* Overlay Card — independent toggle. Works with ANY layout variant (fullscreen, centered, left-right, etc.) */
    .section-card--hero[class*="section-card--hero-card-"] .section-hero__copy { padding: clamp(18px, calc(var(--section-card-padding-current, 32px) * 0.82), 36px); border-radius: var(--section-radius-inner, 18px); border: 1px solid var(--section-control-border); box-shadow: var(--shadow-overlay, 0 22px 54px rgba(0, 0, 0, 0.24)); backdrop-filter: blur(6px); }
    .section-card--hero.section-card--hero-card-soft .section-hero__copy { background: color-mix(in srgb, var(--section-overlay-surface-bg) 60%, transparent); }
    .section-card--hero.section-card--hero-card-medium .section-hero__copy { background: color-mix(in srgb, var(--section-overlay-surface-bg) 82%, transparent); }
    .section-card--hero.section-card--hero-card-strong .section-hero__copy { background: color-mix(in srgb, var(--section-overlay-surface-bg) 95%, transparent); }
    .section-card--hero.section-card--hero-layout-video .section-hero__copy,
    .section-card--hero.section-card--hero-layout-full-image .section-hero__copy,
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__copy { text-shadow: 0 10px 32px rgba(0, 0, 0, 0.28); }
    /* Fullscreen variant — tall hero that fills container. Edge-to-edge only on public pages */
    .section-card--hero.section-card--hero-layout-fullscreen { min-height: min(100vh, 900px); width: 100%; padding: 0; border-radius: 0; display: grid; align-items: center; justify-items: center; overflow: hidden; }
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__layout { min-height: inherit; width: 100%; max-width: min(1200px, 100%); padding: clamp(48px, 8vw, 120px) clamp(24px, 6vw, 80px); justify-items: center; align-content: center; text-align: center; box-sizing: border-box; }
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__copy { justify-items: center; max-width: min(820px, 100%); }
    .section-card--hero.section-card--hero-layout-fullscreen .section-hero__background { inset: 0; }
    /* Edge-to-edge only when rendered as top-level public page (not inside iframe, not in admin preview) */
    body:not([data-in-iframe]):not([data-koral-section-preview]):not([data-koral-admin-host]) .section-card--hero.section-card--hero-layout-fullscreen { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); min-height: 100vh; }
    /* Left/Right variant — text on copy side, image on other side. Copy anchored to left (or alignment), limited width */
    .section-card--hero.section-card--hero-layout-left-right .section-hero__copy { max-width: min(560px, 100%); }
    .section-card--hero.section-card--hero-layout-left-right:not(.section-card--hero-align-center) .section-hero__layout { justify-items: start; text-align: left; }
    .section-card--hero.section-card--hero-layout-left-right:not(.section-card--hero-align-center):not(.section-hero__layout--has-media) .section-hero__copy { padding-right: var(--section-space-xl); }
    /* Split variant — 50/50 and stronger editorial feel */
    .section-card--hero.section-card--hero-layout-split .section-hero__copy { max-width: min(540px, 100%); }
    .section-card--hero.section-card--hero-layout-split .section-hero__layout { align-items: stretch; }
    /* When side-by-side layouts have NO inline media (copy-only over background), soften background on copy side via gradient for readability */
    .section-card--hero.section-card--hero-layout-left-right:not(.section-hero__layout--has-media) .section-hero__background::after,
    .section-card--hero.section-card--hero-layout-split:not(.section-hero__layout--has-media) .section-hero__background::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.30) 55%, transparent 100%); pointer-events: none; }
    .section-card--hero .section-hero__carousel { display: grid; gap: var(--section-space-xs); width: 100%; }
    .section-card--hero .section-hero__carousel-frame { position: relative; overflow: hidden; border-radius: var(--section-radius-outer, 24px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: color-mix(in srgb, var(--panel-surface-alt-bg, var(--bg-soft)) 88%, transparent); }
    .section-card--hero .section-hero__carousel-track { display: flex; width: 100%; transition: transform 480ms cubic-bezier(0.22, 1, 0.36, 1); will-change: transform; }
    .section-card--hero .section-hero__slide { min-width: 100%; display: grid; gap: 0; margin: 0; }
    .section-card--hero .section-hero__slide-link, .section-carousel__slide-link { display: grid; gap: 0; color: inherit; text-decoration: none; }
    .section-card--hero .section-hero__slide img { width: 100%; min-height: 260px; max-height: 520px; object-fit: cover; border: 0; border-radius: 0; box-shadow: none; }
    .section-card--hero .section-hero__slide figcaption { display: grid; gap: var(--section-space-2xs); padding: var(--section-space-sm) var(--section-space-md); background: var(--section-overlay-surface-bg); color: var(--text); }
    .section-card--hero .section-hero__slide figcaption strong { font-size: 1rem; letter-spacing: -0.02em; }
    .section-card--hero .section-hero__slide figcaption p { margin: 0; color: var(--section-overlay-copy); }
    .section-card--hero .section-hero__slide-link:hover figcaption strong, .section-card--hero .section-hero__slide-link:focus-visible figcaption strong, .section-carousel__slide-link:hover figcaption strong, .section-carousel__slide-link:focus-visible figcaption strong { text-decoration: underline; text-underline-offset: 0.14em; }
    .section-card--hero .section-hero__slide-link:focus-visible, .section-carousel__slide-link:focus-visible { outline: 2px solid color-mix(in srgb, var(--text) 86%, transparent); outline-offset: -4px; }
    .section-card--hero .section-hero__carousel-controls { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; padding: var(--section-space-sm); pointer-events: none; }
    .section-card--hero .section-hero__carousel-button { width: 44px; height: 44px; border-radius: var(--section-radius-control, 999px); border: 1px solid var(--section-control-border); background: var(--section-control-surface-bg); color: var(--text); font-size: 24px; line-height: 1; cursor: pointer; pointer-events: auto; }
    .section-card--hero .section-hero__carousel-dots { display: flex; gap: var(--section-space-2xs); flex-wrap: wrap; justify-content: center; }
    .section-card--hero .section-hero__carousel-dot { width: 11px; height: 11px; padding: 0; border-radius: 999px; border: 0; background: var(--section-muted-surface-bg); cursor: pointer; }
    .section-card--hero .section-hero__carousel-dot.is-active { background: var(--accent); box-shadow: var(--shadow-accent, var(--section-contrast-ring)); }
    .section-card--carousel .section-shell { gap: var(--section-space-lg); }
    .section-carousel { display: grid; gap: var(--section-space-xs); width: 100%; }
    .section-carousel__frame { position: relative; overflow: hidden; border-radius: var(--section-radius-outer, 24px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: color-mix(in srgb, var(--panel-surface-alt-bg, var(--bg-soft)) 88%, transparent); }
    .section-carousel__track { display: flex; width: 100%; transition: transform 480ms cubic-bezier(0.22, 1, 0.36, 1); will-change: transform; }
    .section-carousel__slide { min-width: 100%; display: grid; gap: 0; margin: 0; }
    .section-carousel__slide img { width: 100%; object-fit: cover; border: 0; border-radius: 0; box-shadow: none; aspect-ratio: 16 / 9; }
    .section-carousel--ratio-landscape .section-carousel__slide img { aspect-ratio: 4 / 3; }
    .section-carousel--ratio-wide .section-carousel__slide img { aspect-ratio: 16 / 9; }
    .section-carousel--ratio-square .section-carousel__slide img { aspect-ratio: 1 / 1; }
    .section-carousel--ratio-portrait .section-carousel__slide img { aspect-ratio: 3 / 4; }
    .section-carousel__slide figcaption { display: grid; gap: var(--section-space-2xs); padding: var(--section-space-sm) var(--section-space-md); background: var(--section-overlay-surface-bg); color: var(--text); }
    .section-carousel__slide figcaption strong { font-size: 1rem; letter-spacing: -0.02em; }
    .section-carousel__slide figcaption p { margin: 0; color: var(--section-overlay-copy); }
    .section-carousel__controls { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; padding: var(--section-space-sm); pointer-events: none; }
    .section-carousel__button { width: 44px; height: 44px; border-radius: var(--section-radius-control, 999px); border: 1px solid var(--section-control-border); background: var(--section-control-surface-bg); color: var(--text); font-size: 24px; line-height: 1; cursor: pointer; pointer-events: auto; }
    .section-carousel__dots { display: flex; gap: var(--section-space-2xs); flex-wrap: wrap; justify-content: center; }
    .section-carousel__dot { width: 11px; height: 11px; padding: 0; border-radius: 999px; border: 0; background: var(--section-muted-surface-bg); cursor: pointer; }
    .section-carousel__dot.is-active { background: var(--accent); box-shadow: var(--shadow-accent, var(--section-contrast-ring)); }
    .section-card--hero .section-header h2 { font-size: var(--hero-title-size, clamp(2.3rem, 6vw, 4.4rem)); line-height: var(--hero-title-line-height, 0.94); letter-spacing: var(--heading-tracking, -0.05em); }
    .section-card[class*="section-card--headline-"] .section-header h2 { text-wrap: balance; }
    .section-card--headline-display-sans .section-header h2 { font-family: "Outfit", "Space Grotesk", var(--section-font-family, var(--font-heading, inherit)); font-weight: 800; letter-spacing: calc(var(--heading-tracking, -0.05em) * 1.05); }
    .section-card--headline-display-serif .section-header h2 { font-family: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif; font-weight: 700; letter-spacing: calc(var(--heading-tracking, -0.05em) * 0.72); line-height: calc(var(--section-title-line-height, 1.08) * 0.96); }
    .section-card--headline-gradient-warm .section-header h2,
    .section-card--headline-gradient-cool .section-header h2,
    .section-card--headline-gradient-accent .section-header h2 { color: transparent; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; text-shadow: none; }
    .section-card--headline-gradient-warm .section-header h2 { background-image: linear-gradient(135deg, #fff1cf 0%, #ffb673 32%, #ff7f6a 68%, #ffe2a8 100%); }
    .section-card--headline-gradient-cool .section-header h2 { background-image: linear-gradient(135deg, #d8f7ff 0%, #7dd3fc 28%, #818cf8 64%, #c4b5fd 100%); }
    .section-card--headline-gradient-accent .section-header h2 { background-image: linear-gradient(135deg, color-mix(in srgb, var(--accent) 42%, white 58%) 0%, var(--accent) 42%, color-mix(in srgb, var(--accent) 76%, #fef3c7 24%) 100%); }
    .section-card--headline-outline .section-header h2 { -webkit-text-stroke: 1.5px currentColor; -webkit-text-fill-color: transparent; color: transparent; paint-order: stroke fill; }
    .section-card--hero .section-copy p { margin: 0; font-size: clamp(var(--body-size, 16px), 1.45vw, calc(var(--body-size, 16px) * 1.12)); line-height: calc(var(--body-line-height, 1.65) + 0.1); max-width: 60ch; }
    .section-card--hero.section-card--hero-align-center .section-hero__layout:not(.section-hero__layout--has-media) { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    .section-card--hero.section-card--hero-align-center.section-card--hero-layout-centered .section-hero__layout { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    .section-card--hero.section-card--hero-align-center .section-header, .section-card--hero.section-card--hero-align-center .section-copy, .section-card--hero.section-card--hero-align-center .section-actions { justify-items: center; justify-content: center; }
    .section-card--hero.section-card--hero-align-center .section-copy p { margin-left: auto; margin-right: auto; }
    .section-card--hero.section-card--hero-align-right .section-hero__copy { order: 2; text-align: right; justify-items: end; }
    .section-card--hero.section-card--hero-align-right .section-hero__media { order: 1; }
    .section-card--hero.section-card--hero-align-right .section-copy p { margin-left: auto; }
    .section-header, .section-copy, .section-timeline, .section-process, .section-faq, .section-cta, .section-contact, .section-newsletter { display: grid; gap: var(--section-space-xs); }
    .section-features { display: grid; gap: var(--section-space-sm); }
    .section-newsletter { align-items: center; }
    .section-newsletter--inline { grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr); gap: var(--section-space-md) var(--section-space-xl); }
    .section-newsletter--stacked { grid-template-columns: 1fr; }
    .section-newsletter--compact { grid-template-columns: 1fr; justify-items: center; text-align: center; }
    .section-newsletter__intro { display: grid; gap: var(--section-space-xs); min-width: 0; }
    .section-newsletter__intro .section-copy p { max-width: 62ch; }
    .section-newsletter__form { display: grid; gap: var(--section-space-xs); align-items: end; min-width: 0; }
    .section-newsletter--inline .section-newsletter__form { grid-template-columns: minmax(220px, 1fr) auto; }
    .section-newsletter--stacked .section-newsletter__form { grid-template-columns: 1fr; width: min(100%, 560px); }
    .section-newsletter--compact .section-newsletter__form { grid-template-columns: minmax(220px, 1fr) auto; width: min(100%, 520px); }
    .section-newsletter__field { display: grid; gap: var(--section-space-2xs); min-width: 0; }
    .section-newsletter__label { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
    .section-newsletter__input { width: 100%; min-height: 48px; padding: 0 16px; border-radius: var(--button-radius, 999px); border: 1px solid var(--border); background: var(--section-input-surface-bg); color: var(--section-input-text); font: inherit; }
    .section-newsletter__input::placeholder { color: var(--section-input-placeholder); }
    .section-newsletter__input:focus-visible { outline: 2px solid color-mix(in srgb, var(--accent) 60%, white 40%); outline-offset: 2px; }
    .section-newsletter__trap { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; white-space: nowrap; }
    .section-newsletter__feedback { margin: 0; font-size: 0.94rem; color: var(--muted); }
    .section-newsletter__feedback[data-tone="success"] { color: #1f8f55; }
    .section-newsletter__feedback[data-tone="error"] { color: #d85f5f; }
    .section-newsletter__form[data-newsletter-state="busy"] .section-button { opacity: 0.72; cursor: progress; }
      .section-card--marquee { overflow: hidden; padding-inline: 0; padding-block: var(--section-card-padding-current); }
      .section-card--marquee .section-shell { gap: 0; max-width: none; }
      .section-marquee { --section-marquee-gap: 1.5rem; --section-marquee-duration: 20s; position: relative; width: 100vw; margin-inline: calc(50% - 50vw); overflow: hidden; padding-block: 0.55rem; border-block: 1px solid var(--border); }
      .section-marquee__track { display: flex; align-items: center; width: max-content; min-width: 200%; animation: section-marquee-scroll var(--section-marquee-duration) linear infinite; will-change: transform; }
    .section-marquee:hover .section-marquee__track { animation-play-state: paused; }
    .section-marquee--direction-right .section-marquee__track { animation-direction: reverse; }
      .section-marquee__group { display: flex; align-items: center; justify-content: space-around; gap: var(--section-marquee-gap); width: max-content; min-width: 100%; padding-inline: calc(var(--section-marquee-gap) * 0.5); flex-shrink: 0; }
    .section-marquee__item { display: inline-flex; align-items: center; gap: 0.72rem; flex-shrink: 0; color: inherit; text-decoration: none; white-space: nowrap; font-weight: 800; line-height: 1; letter-spacing: 0.08em; text-transform: uppercase; }
    .section-marquee__item::after { content: '•'; color: var(--accent); opacity: 0.72; margin-left: calc(var(--section-marquee-gap) * 0.45); }
    .section-marquee__icon { display: inline-flex; align-items: center; justify-content: center; min-width: 1.2em; color: var(--accent); }
    .section-marquee__label { display: inline-flex; align-items: center; }
    .section-marquee__image { width: auto; height: 1.45em; border-radius: var(--section-radius-control, 999px); object-fit: contain; border: 1px solid var(--section-control-border); background: color-mix(in srgb, var(--text) 8%, transparent); padding: 0.14em; }
    .section-marquee--size-compact { font-size: 0.86rem; --section-marquee-gap: 1.15rem; }
    .section-marquee--size-normal { font-size: 1rem; --section-marquee-gap: 1.5rem; }
    .section-marquee--size-large { font-size: 1.15rem; --section-marquee-gap: 1.85rem; }
    @keyframes section-marquee-scroll {
      0% { transform: translate3d(0, 0, 0); }
      100% { transform: translate3d(-50%, 0, 0); }
    }
    .section-header h2, .section-item h3, .section-timeline-item h3, .section-process-step h3 { margin: 0; font-family: var(--section-font-family, inherit); font-style: var(--section-font-style, normal); }
    .section-header h2 { font-size: var(--section-title-size, clamp(28px, 4vw, 42px)); line-height: var(--section-title-line-height, 1.08); letter-spacing: calc(var(--heading-tracking, -0.05em) * .85); font-weight: var(--section-title-weight, 700); }
    .section-item h3, .section-timeline-item h3, .section-process-step h3 { font-size: var(--card-title-size, 20px); line-height: var(--card-title-line-height, 1.2); letter-spacing: calc(var(--heading-tracking, -0.05em) * .7); font-weight: var(--section-title-weight, 700); }
    .section-kicker { display: inline-flex; align-items: center; width: fit-content; min-height: 30px; padding: 0 12px; border-radius: var(--section-radius-control, 999px); background: var(--bg-soft); border: 1px solid var(--border); color: var(--muted); font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    .lede { color: var(--muted); margin: 0; }
    .section-copy p { margin: 0; line-height: var(--body-line-height, 1.65); }
    .section-kicker, .lede, .section-copy p, .section-item, .section-timeline-item, .section-process-step, .section-link, .section-button, .section-item__meta, .section-stat-value { font-family: var(--section-font-family, inherit); font-style: var(--section-font-style, normal); }
    .section-copy p, .section-item, .section-timeline-item, .section-process-step, .section-item__meta { font-weight: var(--section-font-weight, inherit); }
    .section-layout { display: grid; gap: var(--section-space-md); grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; }
    .section-layout--media-top { grid-template-columns: 1fr; }
    .section-grid { display: grid; gap: var(--section-space-sm); grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
    .section-grid--columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .section-grid--columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .section-grid--columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .section-grid--columns-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .section-grid--columns-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .section-item, .section-timeline-item, .section-process-step { padding: clamp(16px, calc(var(--section-card-padding-current) * 0.72), 34px); border-radius: var(--section-radius-inner, 18px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); display: grid; gap: var(--section-space-xs); align-content: start; transition: transform var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background-color var(--transition-duration, 180ms) ease; }
    .section-item--style-outline, .section-timeline-item--style-outline, .section-process-step--style-outline { background: transparent; }
    .section-item--featured { border-color: color-mix(in srgb, var(--accent) 52%, var(--border)); box-shadow: var(--shadow-accent, 0 16px 48px color-mix(in srgb, var(--accent) 18%, transparent)); }
    .section-item--style-contrast, .section-timeline-item--style-contrast, .section-process-step--style-contrast { background: var(--section-overlay-surface-bg); border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-item--feature { min-width: 0; }
    .section-item__feature-lead { display: grid; gap: var(--section-space-xs); align-content: start; }
    .section-item__feature-content { display: grid; gap: var(--section-space-2xs); min-width: 0; }
    .koral-icon { width: 1em; height: 1em; vertical-align: -0.125em; flex-shrink: 0; }
    .section-item__feature-icon .koral-icon { width: 26px; height: 26px; }
    .section-process-step__number .koral-icon { width: 24px; height: 24px; }
    .section-marquee__icon .koral-icon { width: 1.2em; height: 1.2em; }
    .section-item__feature-icon { display: inline-grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: color-mix(in srgb, var(--accent) 12%, var(--panel-surface-alt-bg, var(--bg-soft)) 88%); border: 1px solid color-mix(in srgb, var(--accent) 18%, var(--border)); font-size: 1.3rem; }
    .section-item__feature-image img { width: min(100%, 84px); aspect-ratio: 1 / 1; }
    .section-card--features.section-card--layout-cards .section-item--feature { box-shadow: var(--shadow-card, 0 20px 50px rgba(0, 0, 0, 0.18)); }
    .section-card--features.section-card--layout-list .section-grid--feature,
    .section-card--features.section-card--layout-alternating .section-grid--feature { grid-template-columns: 1fr; }
    .section-card--features.section-card--layout-list .section-item--feature,
    .section-card--features.section-card--layout-alternating .section-item--feature { grid-template-columns: minmax(76px, 120px) minmax(0, 1fr); gap: var(--section-space-md); align-items: center; }
    .section-card--features.section-card--layout-list .section-item--feature.section-item--feature-no-lead,
    .section-card--features.section-card--layout-alternating .section-item--feature.section-item--feature-no-lead { grid-template-columns: 1fr; }
    .section-card--features.section-card--layout-alternating .section-item--feature.section-item--feature-even .section-item__feature-lead { order: 2; }
    .section-card--features.section-card--layout-alternating .section-item--feature.section-item--feature-even .section-item__feature-content { order: 1; }
    .section-card--features.section-card--layout-icons .section-grid--feature { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
    .section-card--features.section-card--layout-icons .section-item--feature { justify-items: start; }
    .section-card--features.section-card--layout-bento .section-grid--feature { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .section-card--features.section-card--layout-bento .section-grid--feature > .section-item--feature:first-child { grid-column: span 2; }
    .section-gallery { display: grid; gap: var(--section-space-sm); }
    .section-gallery--grid,
    .section-gallery--lightbox,
    .section-gallery--fullscreen { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
    .section-gallery--columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .section-gallery--columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .section-gallery--columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .section-gallery--masonry { columns: 3 220px; column-gap: var(--section-space-sm); display: block; }
    .section-gallery--masonry > .section-item--media { break-inside: avoid; margin-bottom: var(--section-space-sm); }
    .section-gallery--fullscreen > .section-item--media:first-child { grid-column: span 2; }
    .section-gallery--ratio-landscape .section-item__media img { aspect-ratio: 4 / 3; }
    .section-gallery--ratio-wide .section-item__media img { aspect-ratio: 16 / 9; }
    .section-gallery--ratio-square .section-item__media img { aspect-ratio: 1 / 1; }
    .section-gallery--ratio-portrait .section-item__media img { aspect-ratio: 3 / 4; }
    .section-card[class*="section-card--img-"],
    .section-card[class*="section-card--image-hover-"] { --section-image-filter: none; --section-image-hover-filter: var(--section-image-filter); --section-image-overlay: transparent; --section-image-transform: none; --section-image-hover-transform: var(--section-image-transform); --section-image-opacity: 1; --section-image-hover-opacity: var(--section-image-opacity); --section-image-clip-path: inset(0 round var(--section-radius-media, 18px)); --section-image-hover-clip-path: var(--section-image-clip-path); }
    .section-card[class*="section-card--img-"] .section-item__media,
    .section-card[class*="section-card--img-"] .section-item__feature-image,
    .section-card[class*="section-card--img-"] .section-media,
    .section-card[class*="section-card--image-hover-"] .section-item__media,
    .section-card[class*="section-card--image-hover-"] .section-item__feature-image,
    .section-card[class*="section-card--image-hover-"] .section-media { position: relative; overflow: hidden; }
    .section-card[class*="section-card--img-"] .section-item__feature-image,
    .section-card[class*="section-card--image-hover-"] .section-item__feature-image { border-radius: var(--section-radius-media, 18px); }
    .section-card[class*="section-card--img-"] .section-item__media img,
    .section-card[class*="section-card--img-"] .section-item__feature-image img,
    .section-card[class*="section-card--img-"] .section-media img,
    .section-card[class*="section-card--image-hover-"] .section-item__media img,
    .section-card[class*="section-card--image-hover-"] .section-item__feature-image img,
    .section-card[class*="section-card--image-hover-"] .section-media img { display: block; filter: var(--section-image-filter, none); transform: var(--section-image-transform, none); opacity: var(--section-image-opacity, 1); clip-path: var(--section-image-clip-path); transition: transform 0.26s ease, opacity 0.26s ease, filter 0.26s ease, clip-path 0.26s ease; will-change: transform, opacity, filter, clip-path; }
    .section-card[class*="section-card--img-"] .section-item__media:hover img,
    .section-card[class*="section-card--img-"] .section-item__media:focus-within img,
    .section-card[class*="section-card--img-"] .section-item__feature-image:hover img,
    .section-card[class*="section-card--img-"] .section-media:hover img,
    .section-card[class*="section-card--img-"] .section-media:focus-within img,
    .section-card[class*="section-card--image-hover-"] .section-item__media:hover img,
    .section-card[class*="section-card--image-hover-"] .section-item__media:focus-within img,
    .section-card[class*="section-card--image-hover-"] .section-item__feature-image:hover img,
    .section-card[class*="section-card--image-hover-"] .section-media:hover img,
    .section-card[class*="section-card--image-hover-"] .section-media:focus-within img { filter: var(--section-image-hover-filter, var(--section-image-filter, none)); transform: var(--section-image-hover-transform, var(--section-image-transform, none)); opacity: var(--section-image-hover-opacity, var(--section-image-opacity, 1)); clip-path: var(--section-image-hover-clip-path, var(--section-image-clip-path)); }
    .section-card[class*="section-card--img-overlay-"] .section-item__media::after,
    .section-card[class*="section-card--img-overlay-"] .section-item__feature-image::after,
    .section-card[class*="section-card--img-overlay-"] .section-media::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: var(--section-image-overlay, transparent); pointer-events: none; }
    .section-card.section-card--img-grayscale { --section-image-filter: grayscale(100%); --section-image-hover-filter: grayscale(0%); }
    .section-card.section-card--img-sepia { --section-image-filter: sepia(80%); }
    .section-card.section-card--img-duotone-warm { --section-image-filter: grayscale(100%) sepia(44%) saturate(190%) hue-rotate(-12deg); }
    .section-card.section-card--img-duotone-cool { --section-image-filter: grayscale(100%) sepia(28%) saturate(185%) hue-rotate(178deg); }
    .section-card.section-card--img-duotone-accent { --section-image-filter: grayscale(100%) sepia(32%) saturate(220%) hue-rotate(var(--accent-hue, 0deg)); }
    .section-card.section-card--img-blur-soft { --section-image-filter: blur(2px); --section-image-hover-filter: blur(0); }
    .section-card.section-card--img-saturate { --section-image-filter: saturate(1.5); }
    .section-card.section-card--img-contrast { --section-image-filter: contrast(1.2) saturate(1.1); }
    .section-card.section-card--image-hover-zoom { --section-image-hover-transform: scale(1.06); }
    .section-card.section-card--image-hover-reveal { --section-image-transform: scale(1.12); --section-image-opacity: 0.88; --section-image-clip-path: inset(8% 8% 8% 8% round var(--section-radius-media, 18px)); --section-image-hover-transform: scale(1); --section-image-hover-opacity: 1; --section-image-hover-clip-path: inset(0 round var(--section-radius-media, 18px)); }
    .section-card.section-card--image-hover-grayscale { --section-image-filter: grayscale(100%); --section-image-hover-filter: grayscale(0%); }
    .section-card.section-card--img-overlay-dark { --section-image-overlay: rgba(0, 0, 0, 0.3); }
    .section-card.section-card--img-overlay-light { --section-image-overlay: rgba(255, 255, 255, 0.18); }
    .section-card.section-card--img-overlay-accent { --section-image-overlay: color-mix(in srgb, var(--accent) 25%, transparent); }
    .section-card.section-card--img-overlay-gradient-bottom { --section-image-overlay: linear-gradient(to top, rgba(0, 0, 0, 0.52), transparent 60%); }
    .section-card.section-card--img-overlay-gradient-top { --section-image-overlay: linear-gradient(to bottom, rgba(0, 0, 0, 0.46), transparent 58%); }
    .section-item--category { transition: transform var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, opacity var(--transition-duration, 180ms) ease, filter var(--transition-duration, 180ms) ease; }
    .section-item__media { overflow: hidden; border-radius: var(--section-radius-media, 18px); }
    .section-item__media-button { width: 100%; display: block; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
    .section-item__media-button img { transition: transform 0.18s ease; }
    .section-item__media-button:hover img { transform: scale(1.02); }
    .section-item__media img, .section-media img { width: 100%; border-radius: var(--section-radius-media, 18px); border: 1px solid var(--border); object-fit: cover; }
    .section-item--category .section-item__media img { transition: transform 0.26s ease, opacity 0.26s ease, filter 0.26s ease; }
    .section-grid--ratio-landscape .section-item__media img { aspect-ratio: 4 / 3; }
    .section-grid--ratio-wide .section-item__media img { aspect-ratio: 16 / 9; }
    .section-grid--ratio-square .section-item__media img { aspect-ratio: 1 / 1; }
    .section-grid--ratio-portrait .section-item__media img { aspect-ratio: 3 / 4; }
    .section-media--soft img { box-shadow: var(--shadow-card, 0 20px 50px rgba(0, 0, 0, 0.18)); }
    .section-media--framed { padding: var(--section-space-sm); border-radius: var(--section-radius-outer, 24px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: color-mix(in srgb, var(--panel-surface-alt-bg, var(--bg-soft)) 90%, transparent); }
    .section-media--flush img { border-radius: 0; border: 0; }
    .section-item__meta { display: inline-flex; color: var(--muted); font-size: .9rem; font-weight: 700; }
    .section-item__meta--badge { width: fit-content; min-height: 30px; padding: 0 12px; border-radius: var(--section-radius-control, 999px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--section-badge-surface-bg); color: var(--text); font-size: var(--label-size, .76rem); letter-spacing: .06em; text-transform: uppercase; }
    .section-item__price { display: grid; gap: 3px; }
    .section-item__price-line { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
    .section-item__price-prefix, .section-item__price-suffix { color: var(--muted); font-size: .84rem; font-weight: 700; }
    .section-item__price-value { font-size: clamp(1.7rem, 4vw, 2.4rem); font-weight: 800; letter-spacing: -.05em; line-height: 1; }
    .section-item--category .section-link { margin-top: auto; width: fit-content; }
    .section-card--categories-hover-zoom .section-item--category:hover .section-item__media img,
    .section-card--categories-hover-zoom .section-item--category:focus-within .section-item__media img { transform: scale(1.05); }
    .section-card--categories-hover-lift .section-item--category:hover,
    .section-card--categories-hover-lift .section-item--category:focus-within,
    .section-card--categories-hover-zoom-lift .section-item--category:hover,
    .section-card--categories-hover-zoom-lift .section-item--category:focus-within,
    .section-card--categories-hover-lift-glow .section-item--category:hover,
    .section-card--categories-hover-lift-glow .section-item--category:focus-within { transform: translateY(calc(var(--hover-lift-y, 8px) * -1)); }
    .section-card--categories-hover-lift .section-item--category:hover,
    .section-card--categories-hover-lift .section-item--category:focus-within,
    .section-card--categories-hover-zoom-lift .section-item--category:hover,
    .section-card--categories-hover-zoom-lift .section-item--category:focus-within { box-shadow: var(--shadow-card-hover, 0 24px 52px color-mix(in srgb, var(--bg) 16%, transparent)); border-color: color-mix(in srgb, var(--accent) 24%, transparent); }
    .section-card--categories-hover-fade .section-item--category:hover .section-item__media img,
    .section-card--categories-hover-fade .section-item--category:focus-within .section-item__media img { opacity: 0.78; filter: saturate(0.86); }
    .section-card--categories-hover-zoom-lift .section-item--category:hover .section-item__media img,
    .section-card--categories-hover-zoom-lift .section-item--category:focus-within .section-item__media img { transform: scale(var(--hover-scale, 1.05)); }
    .section-card--categories-hover-lift-glow .section-item--category:hover,
    .section-card--categories-hover-lift-glow .section-item--category:focus-within { box-shadow: var(--shadow-accent, var(--section-contrast-ring)); border-color: color-mix(in srgb, var(--accent) 34%, transparent); }
    .section-card[class*="section-card--card-hover-"] .section-item,
    .section-card[class*="section-card--card-hover-"] .section-timeline-item,
    .section-card[class*="section-card--card-hover-"] .section-process-step { will-change: transform, box-shadow, border-color; }
    .section-card--card-hover-lift .section-item:hover,
    .section-card--card-hover-lift .section-item:focus-within,
    .section-card--card-hover-lift .section-timeline-item:hover,
    .section-card--card-hover-lift .section-timeline-item:focus-within,
    .section-card--card-hover-lift .section-process-step:hover,
    .section-card--card-hover-lift .section-process-step:focus-within { transform: translateY(calc(var(--hover-lift-y, 8px) * -1)); box-shadow: var(--shadow-card-hover, 0 24px 52px color-mix(in srgb, var(--bg) 16%, transparent)); border-color: color-mix(in srgb, var(--accent) 20%, transparent); }
    .section-card--card-hover-glow .section-item:hover,
    .section-card--card-hover-glow .section-item:focus-within,
    .section-card--card-hover-glow .section-timeline-item:hover,
    .section-card--card-hover-glow .section-timeline-item:focus-within,
    .section-card--card-hover-glow .section-process-step:hover,
    .section-card--card-hover-glow .section-process-step:focus-within { box-shadow: var(--shadow-accent, var(--section-contrast-ring)); border-color: color-mix(in srgb, var(--accent) 34%, transparent); }
    .section-card--card-hover-border .section-item:hover,
    .section-card--card-hover-border .section-item:focus-within,
    .section-card--card-hover-border .section-timeline-item:hover,
    .section-card--card-hover-border .section-timeline-item:focus-within,
    .section-card--card-hover-border .section-process-step:hover,
    .section-card--card-hover-border .section-process-step:focus-within { border-color: color-mix(in srgb, var(--accent) 48%, var(--border)); box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent); }
    .section-card--card-hover-scale .section-item:hover,
    .section-card--card-hover-scale .section-item:focus-within,
    .section-card--card-hover-scale .section-timeline-item:hover,
    .section-card--card-hover-scale .section-timeline-item:focus-within,
    .section-card--card-hover-scale .section-process-step:hover,
    .section-card--card-hover-scale .section-process-step:focus-within { transform: scale(1.02); box-shadow: var(--shadow-card-hover, 0 24px 52px color-mix(in srgb, var(--bg) 16%, transparent)); }
    .section-stat-value { display: block; font-size: 2rem; font-weight: 800; letter-spacing: -.04em; }
    .section-quote { margin: 0; color: inherit; font-size: clamp(var(--body-size, 16px), 1.35vw, calc(var(--body-size, 16px) * 1.1)); line-height: calc(var(--body-line-height, 1.65) + 0.05); }
    .section-actions { display: flex; gap: var(--section-space-xs); flex-wrap: wrap; }
    .section-link, .section-button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 16px; border-radius: var(--button-radius, 999px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); color: var(--text); font-weight: 700; font: inherit; text-decoration: none; position: relative; overflow: hidden; transition: transform var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease, background-color var(--transition-duration, 180ms) ease, color var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background-size var(--transition-duration, 180ms) ease; }
    .section-button { appearance: none; cursor: pointer; }
    .section-link.is-primary, .section-button.is-primary { background: var(--accent); border-color: transparent; color: var(--accent-foreground, #fff); }
    .section-link.is-outline, .section-button.is-outline { background: transparent; }
    .section-link.is-light, .section-button.is-light { background: color-mix(in srgb, var(--text) 92%, transparent); border-color: color-mix(in srgb, var(--text) 92%, transparent); color: var(--bg); }
    .section-link.is-ghost, .section-button.is-ghost { background: var(--section-ghost-surface-bg); border-color: transparent; }
    .section-link:focus-visible, .section-button:focus-visible { outline: 2px solid color-mix(in srgb, var(--accent) 55%, white 45%); outline-offset: 2px; }
    .section-card--button-hover-fill .section-link:hover,
    .section-card--button-hover-fill .section-link:focus-visible,
    .section-card--button-hover-fill .section-button:hover,
    .section-card--button-hover-fill .section-button:focus-visible { transform: translateY(-1px); border-color: transparent; color: var(--accent-foreground, #fff); box-shadow: inset 0 0 0 999px color-mix(in srgb, var(--accent) 92%, black 8%), var(--shadow-card-hover, 0 18px 42px color-mix(in srgb, var(--accent) 22%, transparent)); }
    .section-card--button-hover-slide .section-link,
    .section-card--button-hover-slide .section-button { background-image: linear-gradient(90deg, color-mix(in srgb, var(--accent) 88%, black 12%), color-mix(in srgb, var(--accent) 58%, white 42%)); background-repeat: no-repeat; background-size: 0% 100%; background-position: 0 0; }
    .section-card--button-hover-slide .section-link:hover,
    .section-card--button-hover-slide .section-link:focus-visible,
    .section-card--button-hover-slide .section-button:hover,
    .section-card--button-hover-slide .section-button:focus-visible { transform: translateY(-1px); background-size: 100% 100%; border-color: transparent; color: var(--accent-foreground, #fff); box-shadow: var(--shadow-card-hover, 0 18px 42px color-mix(in srgb, var(--accent) 22%, transparent)); }
    .section-card--button-hover-glow .section-link:hover,
    .section-card--button-hover-glow .section-link:focus-visible,
    .section-card--button-hover-glow .section-button:hover,
    .section-card--button-hover-glow .section-button:focus-visible { transform: translateY(-1px); box-shadow: var(--shadow-accent, var(--section-contrast-ring)); border-color: color-mix(in srgb, var(--accent) 36%, transparent); }
    .section-cta--split, .section-contact--split { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); align-items: start; }
    .section-cta--card { justify-items: center; text-align: center; max-width: 720px; margin-inline: auto; padding: clamp(18px, 3vw, 28px); border-radius: var(--section-radius-inner, 18px); background: color-mix(in srgb, var(--panel-surface-alt-bg, var(--bg-soft)) 90%, transparent); }
    .section-cta--banner { padding: 10px 0; border-block: 1px solid var(--border); }
    .section-cta--minimal { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--section-space-sm) var(--section-space-lg); }
    .section-cta--minimal .section-cta__copy { gap: var(--section-space-2xs); }
    .section-cta--minimal .section-cta__actions { justify-content: flex-end; }
    .section-card--stats.section-card--layout-band .section-grid--stat { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
    .section-stats-inline { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--section-space-xs) var(--section-space-md); align-items: center; }
    .section-stats-inline__item { display: inline-flex; gap: 8px; align-items: baseline; padding: 10px 16px; border-radius: var(--section-radius-control, 999px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); }
    .section-stats-inline__value { font-size: clamp(1.25rem, 2vw, 1.7rem); font-weight: 800; color: var(--accent); letter-spacing: -.03em; }
    .section-stats-inline__label { color: var(--muted); font-size: .95rem; }
    .section-stats-progress { display: grid; gap: var(--section-space-sm); }
    .section-stats-progress__item { display: grid; gap: var(--section-space-2xs); padding: clamp(16px, calc(var(--section-card-padding-current) * 0.72), 34px); border-radius: var(--section-radius-inner, 18px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); }
    .section-stats-progress__head { display: flex; align-items: center; justify-content: space-between; gap: var(--section-space-xs); flex-wrap: wrap; }
    .section-stats-progress__label { font-size: .98rem; font-weight: 700; }
    .section-stats-progress__value { font-size: 1rem; font-weight: 800; color: var(--accent); letter-spacing: -.02em; }
    .section-stats-progress__track { position: relative; overflow: hidden; height: 12px; border-radius: 999px; background: color-mix(in srgb, var(--accent) 16%, var(--panel-surface-bg, var(--panel)) 84%); }
    .section-stats-progress__fill { display: block; width: var(--section-progress-value, 0%); height: 100%; border-radius: inherit; background: linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 62%, white 38%)); transform-origin: left center; animation: section-progress-fill .78s cubic-bezier(.22, 1, .36, 1) both; }
    .section-stats-progress__copy { margin: 0; color: var(--muted); line-height: var(--body-line-height, 1.65); }
    @keyframes section-progress-fill {
      0% { transform: scaleX(0); }
      100% { transform: scaleX(1); }
    }
    .section-card--faq.section-card--layout-split .section-faq { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .section-faq details summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; user-select: none; }
    .section-faq details summary::-webkit-details-marker { display: none; }
    .section-faq details summary strong { display: inline-flex; align-items: center; gap: 10px; flex: 1; }
    .section-faq__chevron { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; font-size: 14px; color: var(--muted); transition: transform 0.2s ease; flex-shrink: 0; }
    .section-faq details[open] .section-faq__chevron { transform: rotate(180deg); color: var(--accent); }
    .section-faq details:hover summary strong { color: var(--accent); }
    .section-faq__body { margin-top: 12px; padding-top: 12px; border-top: 1px solid color-mix(in srgb, var(--border) 60%, transparent); color: var(--muted); line-height: 1.7; }
    .section-faq__body:empty { display: none; }
    .section-card--timeline.section-card--layout-rail .section-timeline { position: relative; gap: var(--section-space-md); padding-left: var(--section-space-xl); }
    .section-card--timeline.section-card--layout-rail .section-timeline::before { content: ''; position: absolute; left: 8px; top: 8px; bottom: 8px; width: 2px; background: var(--border); }
    .section-card--timeline.section-card--layout-rail .section-timeline-item { position: relative; }
    .section-card--timeline.section-card--layout-rail .section-timeline-item::before { content: ''; position: absolute; left: -21px; top: 22px; width: 10px; height: 10px; border-radius: 999px; background: var(--accent); box-shadow: var(--shadow-accent, var(--section-contrast-ring)); }
    .section-process-step__number { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: 999px; background: color-mix(in srgb, var(--accent) 12%, var(--panel-surface-alt-bg, var(--bg-soft)) 88%); border: 2px solid color-mix(in srgb, var(--accent) 28%, var(--border)); color: var(--accent); font-size: 1.1rem; font-weight: 800; letter-spacing: -.02em; flex-shrink: 0; }
    .section-card--process .section-process { gap: var(--section-space-md); }
    .section-card--process.section-card--layout-numbered .section-process { display: grid; grid-template-columns: 1fr; gap: var(--section-space-md); }
    .section-card--process.section-card--layout-numbered .section-process-step { display: grid; grid-template-columns: 48px 1fr; gap: var(--section-space-sm); align-items: start; }
    .section-card--process.section-card--layout-horizontal .section-process { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--section-space-sm); }
    .section-card--process.section-card--layout-horizontal .section-process-step { text-align: center; justify-items: center; }
    .section-card--process.section-card--layout-zigzag .section-process { display: grid; grid-template-columns: 1fr; gap: var(--section-space-lg); max-width: 720px; margin: 0 auto; }
    .section-card--process.section-card--layout-zigzag .section-process-step { display: grid; grid-template-columns: 48px 1fr; gap: var(--section-space-sm); align-items: start; }
    .section-card--process.section-card--layout-zigzag .section-process-step:nth-child(even) { direction: rtl; }
    .section-card--process.section-card--layout-zigzag .section-process-step:nth-child(even) > * { direction: ltr; }
    .section-booking { display: grid; gap: var(--section-space-md); }
    .section-booking--split { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); align-items: start; }
    .section-booking__intro { display: grid; gap: var(--section-space-xs); }
    .section-booking__form { display: grid; gap: var(--section-space-xs); }
    .section-booking__field { display: grid; gap: 4px; }
    .section-booking__field span { font-size: .88rem; font-weight: 600; color: var(--text); }
    .section-booking__field input, .section-booking__field select, .section-booking__field textarea { padding: 10px 14px; border-radius: var(--section-radius-control, 10px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); color: var(--text); font-size: .95rem; font-family: inherit; transition: border-color .18s; }
    .section-booking__field input:focus, .section-booking__field select:focus, .section-booking__field textarea:focus { outline: none; border-color: var(--accent); }
    .section-booking__trap { position: absolute; left: -9999px; opacity: 0; }
    .section-booking__feedback { font-size: .88rem; min-height: 1.4em; }
    .section-booking__feedback[data-tone="success"] { color: var(--accent); }
    .section-booking__feedback[data-tone="error"] { color: #e53e3e; }
    .section-timetable { display: grid; gap: var(--section-space-sm); }
    .section-timetable__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: var(--section-space-2xs); }
    .section-timetable__column { display: grid; gap: var(--section-space-2xs); align-content: start; }
    .section-timetable__day-header { text-align: center; font-size: .82rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); padding: 8px 0; border-bottom: 2px solid var(--border); }
    .section-timetable__slot { padding: 10px 12px; border-radius: var(--section-radius-inner, 12px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); display: grid; gap: 2px; border-left: 3px solid var(--slot-accent, var(--accent)); }
    .section-timetable__slot--style-outline { background: transparent; }
    .section-timetable__slot--style-contrast { background: var(--section-overlay-surface-bg); }
    .section-timetable__time { font-size: .78rem; font-weight: 700; color: var(--slot-accent, var(--accent)); }
    .section-timetable__title { font-size: .9rem; font-weight: 600; }
    .section-timetable__subtitle { font-size: .78rem; color: var(--muted); }
    .section-timetable--list .section-timetable__day-group { display: grid; gap: var(--section-space-xs); }
    .section-timetable--list .section-timetable__day-label { font-size: 1rem; font-weight: 700; margin: 0; padding-bottom: 4px; border-bottom: 2px solid var(--border); }
    .section-timetable--list .section-timetable__day-slots { display: grid; gap: var(--section-space-2xs); }
    .section-timetable--list .section-timetable__slot { grid-template-columns: auto 1fr auto; align-items: center; gap: var(--section-space-xs); }
    .section-card--content-block.section-card--media-left .section-layout > .section-media { order: 1; }
    .section-card--content-block.section-card--media-left .section-layout > .section-layout__copy { order: 2; }
    .section-card--content-block.section-card--media-right .section-layout > .section-layout__copy { order: 1; }
    .section-card--content-block.section-card--media-right .section-layout > .section-media { order: 2; }
    .section-card--content-block.section-card--media-top .section-layout { grid-template-columns: 1fr; }
    .section-card--surface-accent .section-kicker,
    .section-card--surface-contrast .section-kicker,
    .section-card--hero.section-card--hero-bg-accent .section-kicker,
    .section-card--hero.section-card--hero-bg-contrast .section-kicker,
    .section-card--hero.section-card--hero-bg-image .section-kicker { background: color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 72%, transparent); border-color: var(--border-strong, var(--border)); color: var(--muted); }
    .section-card--surface-accent .lede,
    .section-card--surface-contrast .lede,
    .section-card--surface-accent .section-copy p,
    .section-card--surface-contrast .section-copy p,
    .section-card--hero.section-card--hero-bg-accent .lede,
    .section-card--hero.section-card--hero-bg-contrast .lede,
    .section-card--hero.section-card--hero-bg-image .lede,
    .section-card--hero.section-card--hero-bg-accent .section-copy p,
    .section-card--hero.section-card--hero-bg-contrast .section-copy p,
    .section-card--hero.section-card--hero-bg-image .section-copy p { color: var(--muted); }
    .section-card--surface-accent .section-link,
    .section-card--surface-accent .section-button,
    .section-card--surface-contrast .section-link,
    .section-card--surface-contrast .section-button,
    .section-card--hero.section-card--hero-bg-accent .section-link,
    .section-card--hero.section-card--hero-bg-accent .section-button,
    .section-card--hero.section-card--hero-bg-contrast .section-link,
    .section-card--hero.section-card--hero-bg-contrast .section-button,
    .section-card--hero.section-card--hero-bg-image .section-link,
    .section-card--hero.section-card--hero-bg-image .section-button { border-color: var(--border-strong, var(--border)); color: var(--text); }
    .section-card--surface-accent .section-link.is-light,
    .section-card--surface-accent .section-button.is-light,
    .section-card--surface-contrast .section-link.is-light,
    .section-card--surface-contrast .section-button.is-light,
    .section-card--hero.section-card--hero-bg-accent .section-link.is-light,
    .section-card--hero.section-card--hero-bg-accent .section-button.is-light,
    .section-card--hero.section-card--hero-bg-contrast .section-link.is-light,
    .section-card--hero.section-card--hero-bg-contrast .section-button.is-light,
    .section-card--hero.section-card--hero-bg-image .section-link.is-light,
    .section-card--hero.section-card--hero-bg-image .section-button.is-light { color: var(--bg); border-color: var(--panel-surface-bg, var(--panel)); }
    .section-card--surface-accent .section-link.is-ghost,
    .section-card--surface-accent .section-button.is-ghost,
    .section-card--surface-contrast .section-link.is-ghost,
    .section-card--surface-contrast .section-button.is-ghost,
    .section-card--hero.section-card--hero-bg-accent .section-link.is-ghost,
    .section-card--hero.section-card--hero-bg-accent .section-button.is-ghost,
    .section-card--hero.section-card--hero-bg-contrast .section-link.is-ghost,
    .section-card--hero.section-card--hero-bg-contrast .section-button.is-ghost,
    .section-card--hero.section-card--hero-bg-image .section-link.is-ghost,
    .section-card--hero.section-card--hero-bg-image .section-button.is-ghost { background: color-mix(in srgb, var(--overlay-surface-readable, var(--panel-surface-bg, var(--panel))) 78%, transparent); border-color: transparent; }
    .section-card--surface-accent .section-link.is-outline,
    .section-card--surface-accent .section-button.is-outline,
    .section-card--surface-contrast .section-link.is-outline,
    .section-card--surface-contrast .section-button.is-outline,
    .section-card--hero.section-card--hero-bg-accent .section-link.is-outline,
    .section-card--hero.section-card--hero-bg-accent .section-button.is-outline,
    .section-card--hero.section-card--hero-bg-contrast .section-link.is-outline,
    .section-card--hero.section-card--hero-bg-contrast .section-button.is-outline,
    .section-card--hero.section-card--hero-bg-image .section-link.is-outline,
    .section-card--hero.section-card--hero-bg-image .section-button.is-outline { background: transparent; }
    .section-card--surface-accent .section-newsletter__input,
    .section-card--surface-contrast .section-newsletter__input { border-color: var(--border-strong, var(--border)); background: color-mix(in srgb, var(--text) 10%, var(--panel-surface-bg, var(--panel)) 90%); }
    .section-card--surface-accent .section-newsletter__label,
    .section-card--surface-contrast .section-newsletter__label { color: var(--muted); }
    .section-card--surface-accent .section-newsletter__feedback,
    .section-card--surface-contrast .section-newsletter__feedback { color: var(--muted); }
    .section-lightbox[hidden] { display: none !important; }
    .section-lightbox { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: var(--section-space-xl); }
    .section-lightbox__backdrop { position: absolute; inset: 0; background: var(--section-lightbox-backdrop-bg); backdrop-filter: blur(var(--panel-blur, 18px)); }
    .section-lightbox__dialog { position: relative; z-index: 1; width: min(96vw, 1280px); max-height: 92vh; display: grid; gap: var(--section-space-sm); justify-items: center; }
    .section-lightbox__close { position: absolute; top: 14px; right: 14px; z-index: 2; width: 46px; height: 46px; border-radius: var(--section-radius-control, 999px); border: 1px solid var(--section-control-border); background: var(--section-control-surface-bg); color: var(--text); font-size: 28px; line-height: 1; cursor: pointer; }
    .section-lightbox__figure { width: min(96vw, 1280px); margin: 0; padding: var(--section-space-md); border-radius: var(--section-radius-overlay, 28px); border: var(--border-width, 1px) var(--border-style, solid) var(--section-control-border); background: var(--section-overlay-surface-bg); box-shadow: var(--shadow-overlay, 0 28px 90px rgba(0,0,0,0.32)); }
    .section-lightbox__figure img { width: 100%; max-height: min(78vh, 960px); object-fit: contain; border-radius: var(--section-radius-inner, 20px); border: 1px solid var(--section-control-border); background: color-mix(in srgb, var(--bg) 60%, transparent); }
    .section-lightbox__meta { width: min(92vw, 860px); display: grid; gap: var(--section-space-2xs); padding: var(--section-space-sm) var(--section-space-md); border-radius: var(--section-radius-inner, 20px); border: var(--border-width, 1px) var(--border-style, solid) var(--section-control-border); background: var(--section-overlay-surface-bg); text-align: center; box-shadow: var(--shadow-overlay, 0 20px 60px rgba(0,0,0,0.28)); }
    .section-lightbox__title { font-size: 1rem; font-weight: 800; letter-spacing: -0.02em; }
    .section-lightbox__copy { margin: 0; color: var(--section-overlay-copy); }
    .section-tabs { display: grid; gap: var(--section-space-md); }
    .section-tabs__nav { display: flex; flex-wrap: wrap; gap: 0; border-bottom: 2px solid color-mix(in srgb, var(--border) 70%, transparent); }
    .section-tabs__button { appearance: none; background: transparent; border: none; border-bottom: 2px solid transparent; margin-bottom: -2px; padding: 12px 18px; font: inherit; color: var(--muted); cursor: pointer; font-weight: 600; transition: color var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease; }
    .section-tabs__button:hover, .section-tabs__button:focus-visible { color: var(--text); outline: none; }
    .section-tabs__button.is-active { color: var(--accent); border-bottom-color: var(--accent); font-weight: 800; }
    .section-tabs__panels { display: grid; gap: var(--section-space-sm); }
    .section-tabs__panel { display: none; gap: var(--section-space-sm); }
    .section-tabs__panel.is-active { display: grid; animation: section-tabs-fade-in .24s ease-out both; }
    .section-tabs__media img { width: 100%; max-height: 360px; object-fit: cover; border-radius: var(--section-radius-inner, 18px); border: 1px solid var(--border); }
    .section-tabs__body { display: grid; gap: var(--section-space-xs); color: var(--muted); line-height: var(--body-line-height, 1.65); }
    .section-tabs__body p { margin: 0; }
    .section-tabs__link { justify-self: start; color: var(--accent); font-weight: 700; text-decoration: none; }
    .section-tabs__link:hover, .section-tabs__link:focus-visible { text-decoration: underline; }
    @keyframes section-tabs-fade-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
    .section-carousel { position: relative; overflow: hidden; }
    .carousel-track { display: flex; transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1); }
    .carousel-track > .carousel-slide { flex: 0 0 100%; min-width: 0; box-sizing: border-box; display: grid; gap: var(--section-space-xs); justify-items: center; text-align: center; padding: clamp(20px, 3vw, 40px); }
    .carousel-slide__avatar { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; border: 2px solid var(--accent); }
    .carousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; appearance: none; border: 1px solid var(--border); background: color-mix(in srgb, var(--panel) 90%, transparent); color: var(--text); width: 44px; height: 44px; border-radius: 50%; font-size: 20px; cursor: pointer; backdrop-filter: blur(8px); transition: background .18s, color .18s; display: grid; place-items: center; }
    .carousel-arrow:hover { background: var(--accent); color: var(--accent-contrast, #fff); }
    .carousel-arrow--prev { left: 12px; }
    .carousel-arrow--next { right: 12px; }
    .carousel-dots { display: flex; justify-content: center; gap: 8px; padding: 16px 0 4px; }
    .carousel-dot { appearance: none; width: 10px; height: 10px; border-radius: 50%; border: 1px solid var(--border); background: color-mix(in srgb, var(--muted) 30%, transparent); cursor: pointer; padding: 0; transition: background .18s, transform .18s; }
    .carousel-dot.is-active { background: var(--accent); transform: scale(1.25); }
    @media (min-width: 768px) {
      .carousel-track > .carousel-slide { flex: 0 0 50%; }
    }
    @media (min-width: 1100px) {
      .carousel-track > .carousel-slide { flex: 0 0 33.333%; }
    }
    .section-accordion { display: grid; gap: var(--section-space-xs); }
    .section-accordion details { padding: clamp(14px, calc(var(--section-card-padding-current) * 0.55), 24px); border-radius: var(--section-radius-inner, 18px); border: var(--border-width, 1px) var(--border-style, solid) var(--border-soft, var(--border)); background: var(--panel-surface-alt-bg, var(--bg-soft)); }
    .section-accordion details summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; user-select: none; }
    .section-accordion details summary::-webkit-details-marker { display: none; }
    .section-accordion details summary strong { display: inline-flex; align-items: center; gap: 10px; flex: 1; }
    .section-accordion__chevron { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; font-size: 14px; color: var(--muted); transition: transform 0.2s ease; flex-shrink: 0; }
    .section-accordion details[open] .section-accordion__chevron { transform: rotate(180deg); color: var(--accent); }
    .section-accordion details:hover summary strong { color: var(--accent); }
    .section-accordion__body { margin-top: 12px; padding-top: 12px; border-top: 1px solid color-mix(in srgb, var(--border) 60%, transparent); color: var(--muted); line-height: 1.7; }
    .section-accordion__body:empty { display: none; }
    .section-popup[hidden] { display: none !important; }
    .section-popup { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: var(--section-space-xl); }
    .section-popup__backdrop { position: absolute; inset: 0; background: var(--section-lightbox-backdrop-bg, rgba(0,0,0,0.5)); backdrop-filter: blur(var(--panel-blur, 18px)); cursor: pointer; }
    .section-popup__dialog { position: relative; z-index: 1; width: min(96vw, 520px); padding: clamp(24px, 4vw, 40px); border-radius: var(--section-radius-overlay, 28px); border: var(--border-width, 1px) var(--border-style, solid) var(--section-control-border); background: var(--panel-surface-bg, var(--panel)); box-shadow: var(--shadow-overlay, 0 28px 80px rgba(0,0,0,0.32)); display: grid; gap: var(--section-space-sm); animation: section-popup-in .28s cubic-bezier(0.22, 1, 0.36, 1) both; }
    .section-popup__close { position: absolute; top: 12px; right: 12px; width: 38px; height: 38px; border-radius: var(--section-radius-control, 999px); border: 1px solid var(--section-control-border); background: var(--section-control-surface-bg); color: var(--text); font-size: 22px; line-height: 1; cursor: pointer; }
    .section-popup__media img { width: 100%; max-height: 260px; object-fit: cover; border-radius: var(--section-radius-inner, 18px); }
    .section-popup__copy { display: grid; gap: var(--section-space-xs); }
    @keyframes section-popup-in { from { opacity: 0; transform: translateY(12px) scale(0.96); } to { opacity: 1; transform: none; } }
    .section-sticky-cta[hidden] { display: none !important; }
    .section-sticky-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998; padding: 12px clamp(12px, 3vw, 24px); background: color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 94%, transparent); border-top: 1px solid var(--border-strong, var(--border)); box-shadow: 0 -12px 36px rgba(0,0,0,0.18); backdrop-filter: blur(var(--panel-blur, 18px)); transform: translateY(100%); transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1); }
    .section-sticky-cta.is-visible { transform: translateY(0); }
    .section-sticky-cta__inner { display: flex; gap: 14px; align-items: center; justify-content: space-between; flex-wrap: wrap; max-width: var(--content-width-wide, 1200px); margin-inline: auto; }
    .section-sticky-cta__text { flex: 1 1 260px; font-weight: 600; color: var(--text); }
    .section-sticky-cta__close { appearance: none; width: 36px; height: 36px; border-radius: var(--section-radius-control, 999px); border: 1px solid var(--section-control-border); background: transparent; color: var(--muted); font-size: 22px; line-height: 1; cursor: pointer; }
    .section-sticky-cta__close:hover, .section-sticky-cta__close:focus-visible { color: var(--text); border-color: var(--border-strong, var(--border)); }
    .section-before-after { display: grid; gap: var(--section-space-sm); }
    .section-before-after__frame { position: relative; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--section-radius-inner, 20px); border: 1px solid var(--border); background: color-mix(in srgb, var(--text) 6%, transparent); user-select: none; touch-action: none; }
    .section-before-after__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
    .section-before-after__before { clip-path: polygon(0 0, 50% 0, 50% 100%, 0 100%); }
    .section-before-after__divider { position: absolute; top: 0; bottom: 0; left: 50%; width: 3px; background: var(--accent); transform: translateX(-50%); cursor: ew-resize; }
    .section-before-after__handle { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 38px; height: 38px; border-radius: 999px; background: var(--accent); border: 3px solid #fff; box-shadow: 0 10px 24px rgba(0,0,0,0.25); cursor: ew-resize; display: block; }
    .section-before-after__handle::before, .section-before-after__handle::after { content: ''; position: absolute; top: 50%; width: 8px; height: 8px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; }
    .section-before-after__handle:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
    .section-before-after__handle::before { left: 8px; transform: translateY(-50%) rotate(135deg); }
    .section-before-after__handle::after { right: 8px; transform: translateY(-50%) rotate(-45deg); }
    .section-before-after__label { position: absolute; top: 12px; padding: 4px 10px; border-radius: var(--section-radius-control, 999px); background: color-mix(in srgb, var(--bg) 76%, transparent); color: var(--text); font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
    .section-before-after__label--before { left: 12px; }
    .section-before-after__label--after { right: 12px; }
    .section-item--blog-post { display: grid; gap: var(--section-space-xs); }
    .section-item--blog-post .section-item__link { display: grid; gap: var(--section-space-xs); color: inherit; text-decoration: none; }
    .section-item--blog-post .section-item__link:hover h3, .section-item--blog-post .section-item__link:focus-visible h3 { color: var(--accent); }
    .section-item__media--placeholder { width: 100%; aspect-ratio: 4 / 3; background: linear-gradient(135deg, color-mix(in srgb, var(--border) 70%, transparent), color-mix(in srgb, var(--bg-soft) 60%, transparent)); border-radius: var(--section-radius-inner, 14px); }
    .section-item--blog-post-placeholder { opacity: 0.78; }
    .section-item--portfolio { display: grid; gap: var(--section-space-xs); transition: transform var(--transition-duration, 180ms) ease, box-shadow var(--transition-duration, 180ms) ease, opacity var(--transition-duration, 180ms) ease; }
    .section-item--portfolio .section-item__link { display: grid; gap: var(--section-space-xs); color: inherit; text-decoration: none; }
    .section-item--portfolio[hidden] { display: none !important; }
    .section-portfolio__filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--section-space-sm); justify-content: center; }
    .section-portfolio__filter-button { appearance: none; border: 1px solid var(--border); background: transparent; color: var(--muted); padding: 8px 16px; border-radius: var(--section-radius-control, 999px); cursor: pointer; font: inherit; font-weight: 600; transition: color var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background var(--transition-duration, 180ms) ease; }
    .section-portfolio__filter-button:hover, .section-portfolio__filter-button:focus-visible { color: var(--text); border-color: var(--border-strong, var(--border)); outline: none; }
    .section-portfolio__filter-button.is-active { background: var(--accent); border-color: var(--accent); color: var(--accent-foreground, #fff); }
    .section-blog__filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--section-space-sm); justify-content: center; }
    .section-blog__filter-button { appearance: none; border: 1px solid var(--border); background: transparent; color: var(--muted); padding: 8px 16px; border-radius: var(--section-radius-control, 999px); cursor: pointer; font: inherit; font-weight: 600; transition: color var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background var(--transition-duration, 180ms) ease; }
    .section-blog__filter-button:hover, .section-blog__filter-button:focus-visible { color: var(--text); border-color: var(--border-strong, var(--border)); outline: none; }
    .section-blog__filter-button.is-active { background: var(--accent); border-color: var(--accent); color: var(--accent-foreground, #fff); }
    .section-item--blog-post[hidden] { display: none !important; }
    .section-pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: var(--section-space-md); }
    .section-pagination__button { appearance: none; border: 1px solid var(--border); background: transparent; color: var(--muted); padding: 6px 14px; border-radius: var(--section-radius-control, 999px); cursor: pointer; font: inherit; font-weight: 600; min-width: 36px; transition: color var(--transition-duration, 180ms) ease, border-color var(--transition-duration, 180ms) ease, background var(--transition-duration, 180ms) ease; }
    .section-pagination__button:hover, .section-pagination__button:focus-visible { color: var(--text); border-color: var(--border-strong, var(--border)); outline: none; }
    .section-pagination__button.is-active { background: var(--accent); border-color: var(--accent); color: var(--accent-foreground, #fff); }
    .section-collection-detail { display: grid; gap: var(--section-space-lg); }
    .section-collection-detail--article { max-width: var(--section-width-narrow); margin: 0 auto; }
    .section-collection-detail__skeleton { display: grid; gap: var(--section-space-md); animation: koral-pulse 1.5s ease-in-out infinite; }
    .section-collection-detail__skeleton-img { background: var(--section-badge-surface-bg); border-radius: var(--section-radius-inner); height: 200px; }
    .section-collection-detail__skeleton-line { background: var(--section-badge-surface-bg); border-radius: 4px; height: 14px; }
    .section-collection-detail__skeleton-line--short { width: 60%; }
    .section-collection-detail__back { margin-top: var(--section-space-sm); }
    .section-collection-detail__item-image img { width: 100%; border-radius: var(--section-radius-inner); object-fit: cover; }
    .section-collection-detail__not-found { color: var(--muted); text-align: center; padding: var(--section-space-xl) 0; }
    .section-card--popup-modal { background: transparent; border: none; box-shadow: none; padding: 0; }
    .section-card--sticky-cta { background: transparent; border: none; box-shadow: none; padding: 0; }

    /* Logo Cloud */
    .section-logo-cloud { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--section-space-lg) var(--section-space-xl); }
    .section-logo-cloud--grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); }
    .section-logo-cloud--columns-2 { grid-template-columns: repeat(2, 1fr); }
    .section-logo-cloud--columns-3 { grid-template-columns: repeat(3, 1fr); }
    .section-logo-cloud--columns-4 { grid-template-columns: repeat(4, 1fr); }
    .section-logo-cloud__item { display: flex; align-items: center; justify-content: center; padding: var(--section-space-xs); }
    .section-logo-cloud__image { max-height: 48px; max-width: 140px; width: auto; height: auto; object-fit: contain; transition: filter 300ms ease, opacity 300ms ease; }
    .section-logo-cloud--grayscale .section-logo-cloud__image { filter: grayscale(1); opacity: 0.6; }
    .section-logo-cloud--grayscale .section-logo-cloud__item:hover .section-logo-cloud__image { filter: grayscale(0); opacity: 1; }
    .section-logo-cloud__text { font-size: 1.1rem; font-weight: 600; color: var(--muted); white-space: nowrap; }
    .section-logo-cloud__link { display: flex; align-items: center; text-decoration: none; color: inherit; }
    .section-logo-cloud--marquee { overflow: hidden; width: 100%; }
    .section-logo-cloud--marquee .section-marquee__track { display: flex; align-items: center; width: max-content; min-width: 200%; animation: section-marquee-scroll 30s linear infinite; }
    .section-logo-cloud--marquee .section-logo-cloud__item { flex-shrink: 0; }

    /* Video Embed */
    .section-video { width: 100%; }
    .section-video__wrapper { position: relative; width: 100%; overflow: hidden; border-radius: var(--section-radius-inner); background: var(--bg-soft, #111); background-size: cover; background-position: center; cursor: pointer; }
    .section-video--aspect-16-9 .section-video__wrapper { padding-bottom: 56.25%; }
    .section-video--aspect-4-3 .section-video__wrapper { padding-bottom: 75%; }
    .section-video--aspect-1-1 .section-video__wrapper { padding-bottom: 100%; }
    .section-video--aspect-21-9 .section-video__wrapper { padding-bottom: 42.86%; }
    .section-video__play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; border: none; background: transparent; cursor: pointer; transition: transform 200ms ease; }
    .section-video__play:hover { transform: scale(1.1); }
    .section-video__play svg { filter: drop-shadow(0 4px 12px rgba(0,0,0,0.4)); }
    .section-video__placeholder { display: flex; align-items: center; justify-content: center; aspect-ratio: 16/9; background: var(--bg-soft, #111); border-radius: var(--section-radius-inner); color: var(--muted); font-size: 0.9rem; }
    .section-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: var(--section-radius-inner); }

    /* Products */
    .section-grid--products { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--section-space-lg); }
    .section-item--product { display: flex; flex-direction: column; gap: var(--section-space-xs); }
    .section-item--product .section-item__media { border-radius: var(--section-radius-media); overflow: hidden; }
    .section-item--product .section-item__media img { width: 100%; aspect-ratio: 1/1; object-fit: cover; transition: transform 300ms ease; }
    .section-item--product:hover .section-item__media img { transform: scale(1.04); }
    .section-item--product .section-item__price { font-weight: 700; font-size: 1.15rem; color: var(--accent); }
    .section-item--product .section-item__price-suffix { font-weight: 400; font-size: 0.85rem; color: var(--muted); margin-left: 4px; }
    .section-item--product .section-button { margin-top: auto; align-self: start; }

    .section-columns { display: grid; gap: 0; align-items: stretch; }
    .section-columns > .section-card { margin: 0 !important; border-radius: 0; }
    .section-columns > .vb-section-wrap { display: grid; min-width: 0; }
    .section-columns > .vb-section-wrap > .section-card { margin: 0 !important; border-radius: 0; }

    @media (max-width: 960px) {
      .section-columns { grid-template-columns: 1fr 1fr !important; }
      .section-columns--2 { grid-template-columns: 1fr 1fr !important; }
      .section-card--hide-desktop { display: grid; }
      .section-card--hide-tablet { display: none; }
      .section-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .section-grid--columns-3,
      .section-grid--columns-4,
      .section-grid--columns-5,
      .section-grid--columns-6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .section-layout,
      .section-cta--split, .section-cta--minimal, .section-contact--split, .section-booking--split, .section-newsletter--inline { grid-template-columns: 1fr; }
      .section-card--features.section-card--layout-bento .section-grid--feature,
      .section-gallery--columns-3,
      .section-gallery--columns-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .section-gallery--grid,
      .section-gallery--lightbox,
      .section-gallery--fullscreen { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .section-card--features.section-card--layout-list .section-item--feature,
      .section-card--features.section-card--layout-alternating .section-item--feature { grid-template-columns: 1fr; }
    }
    @media (max-width: 767px) {
      .section-card--hide-desktop,
      .section-card--hide-tablet { display: grid; }
      .section-card--hide-mobile { display: none; }
      .sections { gap: calc(var(--section-gap, 32px) * 0.58); }
      .section-card { --section-mobile-density-factor: 0.84; overflow-x: hidden; }
      .section-shell { padding-inline: var(--section-space-sm); }
      .section-card--spacing-none { --section-mobile-density-factor: 0.72; }
      .section-card--spacing-hero { --section-mobile-density-factor: 0.88; }
      .section-card--edge-to-edge .section-shell,
      .section-card--width-full .section-shell { padding-inline: 0; }
    }
    @media (max-width: 720px) {
      .section-columns,
      .section-columns--2,
      .section-columns--3,
      .section-columns--4 { grid-template-columns: 1fr !important; }
      .section-grid,
      .section-layout,
      .section-card--hero .section-hero__layout,
      .section-card--faq.section-card--layout-split .section-faq,
      .section-grid--columns-2,
      .section-grid--columns-3,
      .section-grid--columns-4,
      .section-grid--columns-5,
      .section-grid--columns-6,
      .section-gallery,
      .section-gallery--grid,
      .section-gallery--lightbox,
      .section-gallery--fullscreen,
      .section-gallery--columns-2,
      .section-gallery--columns-3,
      .section-gallery--columns-4 { grid-template-columns: 1fr; }
      .section-marquee { padding-block: 0.42rem; }
      .section-marquee--size-large { font-size: 1rem; }
      .section-newsletter--inline .section-newsletter__form,
      .section-newsletter--compact .section-newsletter__form { grid-template-columns: 1fr; }
      .section-card--hero { min-height: 0; padding: clamp(18px, calc(var(--section-card-padding-current) * 0.92), 32px); }
      .section-card--hero .section-hero__copy { order: 1; text-align: left; justify-items: start; }
      .section-card--hero .section-hero__media { order: 2; width: 100%; }
      .section-card--hero .section-hero__media img { min-height: auto; max-height: none; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
      .section-card--hero.section-card--hero-layout-split .section-hero__media img,
      .section-card--hero .section-hero__media--stacked img,
      .section-card--hero .section-hero__media--solo img { min-height: auto; max-height: none; aspect-ratio: 4/3; }
      .section-card--hero.section-card--hero-align-center .section-hero__copy,
      .section-card--hero.section-card--hero-align-center .section-actions { justify-items: center; }
      .section-card--features.section-card--layout-list .section-item--feature,
      .section-card--features.section-card--layout-alternating .section-item--feature,
      .section-card--features.section-card--layout-bento .section-grid--feature,
      .section-card--features.section-card--layout-icons .section-grid--feature { grid-template-columns: 1fr; }
      .section-card--stats.section-card--layout-band .section-grid--stat { grid-template-columns: 1fr; }
      .section-gallery--masonry { columns: 1; }
      .section-gallery--fullscreen > .section-item--media:first-child { grid-column: span 1; }
      .section-timetable__grid { grid-template-columns: 1fr; }
      .section-card--process.section-card--layout-zigzag .section-process-step:nth-child(even) { direction: ltr; }
      .section-lightbox { padding: var(--section-space-sm); }
      .section-lightbox__figure { padding: var(--section-space-sm); border-radius: var(--section-radius-overlay, 22px); }
      .section-lightbox__meta { width: 100%; }
      .section-logo-cloud--grid { grid-template-columns: repeat(2, 1fr); }
      .section-logo-cloud__image { max-height: 36px; max-width: 100px; }
      .section-grid--products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 480px) {
      .section-grid--products,
      .section-logo-cloud--grid { grid-template-columns: 1fr; }
    }
/* plugin CSS */

    .koral-ta-typing { display: inline-block; overflow: hidden; white-space: nowrap; width: 0; border-right: 2px solid var(--accent, currentColor); }
    .koral-ta-typing.is-active { animation: koral-typing var(--ta-dur, 1.5s) steps(var(--ta-steps, 30), end) forwards, koral-cursor-blink 0.6s step-end infinite; }
    @keyframes koral-typing { from { width: 0; } to { width: 100%; } }
    @keyframes koral-cursor-blink { 50% { border-color: transparent; } }
    .koral-ta-split span { display: inline-block; opacity: 0; transform: translateY(100%); transition: opacity 0.45s cubic-bezier(0.22,1,0.36,1), transform 0.45s cubic-bezier(0.22,1,0.36,1); }
    .koral-ta-split.is-active span { opacity: 1; transform: none; }
    .koral-ta-gradient { background: linear-gradient(90deg, var(--accent, #6366f1), var(--text, #e2e8f0), var(--accent, #6366f1)); background-size: 200% auto; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
    .koral-ta-gradient.is-active { animation: koral-grad-shift 3s linear infinite; }
    @keyframes koral-grad-shift { to { background-position: 200% center; } }
  

    .section-card.section-card--image-hover-tilt-3d .section-item__media,
    .section-card.section-card--image-hover-tilt-3d .section-item__feature-image,
    .section-card.section-card--image-hover-tilt-3d .section-media { perspective: 600px; }
    .section-card.section-card--image-hover-tilt-3d img { transition: transform 0.15s ease-out; will-change: transform; }
    .section-card.section-card--image-hover-ken-burns img { animation: koral-ken-burns 14s ease-in-out infinite alternate; }
    @keyframes koral-ken-burns { 0% { transform: scale(1) translate(0,0); } 100% { transform: scale(1.08) translate(-1%,-1%); } }
    .section-card.section-card--image-hover-overlay-text .section-item__media,
    .section-card.section-card--image-hover-overlay-text .section-item__feature-image { position: relative; }
    .section-card.section-card--image-hover-overlay-text .section-item__media::after,
    .section-card.section-card--image-hover-overlay-text .section-item__feature-image::after { content: attr(data-hover-label); position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--bg) 72%, transparent); color: var(--text); font-weight: 600; font-size: clamp(14px, 1.2vw, 18px); opacity: 0; transition: opacity 0.3s; pointer-events: none; border-radius: inherit; }
    .section-card.section-card--image-hover-overlay-text .section-item__media:hover::after,
    .section-card.section-card--image-hover-overlay-text .section-item__feature-image:hover::after { opacity: 1; }
  

    [data-magnetic-buttons="on"] .section-button,
    [data-magnetic-buttons="on"] .section-link { transition: transform 0.2s cubic-bezier(0.22,1,0.36,1); }
  

    .koral-counter-ring { display: inline-flex; align-items: center; justify-content: center; position: relative; }
    .koral-counter-ring svg { position: absolute; inset: 0; transform: rotate(-90deg); }
    .koral-counter-ring circle { fill: none; stroke-width: 3; }
    .koral-counter-ring .ring-bg { stroke: color-mix(in srgb, var(--text) 12%, transparent); }
    .koral-counter-ring .ring-fill { stroke: var(--accent); stroke-linecap: round; transition: stroke-dashoffset 1.5s cubic-bezier(0.22,1,0.36,1); }
  

    .section-divider { position: absolute; left: 0; right: 0; width: 100%; overflow: hidden; line-height: 0; z-index: 2; pointer-events: none; }
    .section-divider--bottom { bottom: -1px; }
    .section-divider--top { top: -1px; transform: rotate(180deg); }
    .section-divider svg { display: block; width: calc(100% + 2px); height: var(--section-divider-height, 48px); margin-left: -1px; }
    .section-card--has-divider { position: relative; }
  

    .section-card[class*="section-card--decor-"] { position: relative; overflow: hidden; }
    .section-card[class*="section-card--decor-"]::after { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; border-radius: inherit; }
    .section-card[class*="section-card--decor-"] .section-shell { position: relative; z-index: 1; }
    .section-card--decor-blobs::after { background: radial-gradient(circle at 10% 20%, color-mix(in srgb, var(--accent) 22%, transparent) 0%, transparent 30%), radial-gradient(circle at 85% 30%, color-mix(in srgb, var(--accent) 14%, transparent) 0%, transparent 25%), radial-gradient(circle at 50% 80%, color-mix(in srgb, var(--accent) 18%, transparent) 0%, transparent 28%); }
    .section-card--decor-gradient-top::after { background: linear-gradient(to bottom, color-mix(in srgb, var(--accent) 14%, transparent), transparent 50%); }
    .section-card--decor-gradient-bottom::after { background: linear-gradient(to top, color-mix(in srgb, var(--accent) 14%, transparent), transparent 50%); }
    .section-card--decor-gradient-both::after { background: linear-gradient(to bottom, color-mix(in srgb, var(--accent) 14%, transparent) 0%, transparent 30%, transparent 70%, color-mix(in srgb, var(--accent) 14%, transparent) 100%); }
  

    .section-card--glass-light { backdrop-filter: blur(8px) saturate(1.2); -webkit-backdrop-filter: blur(8px) saturate(1.2); background: color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 42%, transparent) !important; border: 1px solid color-mix(in srgb, var(--text) 8%, transparent) !important; box-shadow: 0 8px 32px color-mix(in srgb, var(--text) 6%, transparent); }
    .section-card--glass-medium { backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4); background: color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 28%, transparent) !important; border: 1px solid color-mix(in srgb, var(--text) 12%, transparent) !important; box-shadow: 0 8px 32px color-mix(in srgb, var(--text) 10%, transparent); }
    .section-card--glass-strong { backdrop-filter: blur(24px) saturate(1.6); -webkit-backdrop-filter: blur(24px) saturate(1.6); background: color-mix(in srgb, var(--panel-surface-bg, var(--panel)) 16%, transparent) !important; border: 1px solid color-mix(in srgb, var(--text) 16%, transparent) !important; box-shadow: 0 8px 32px color-mix(in srgb, var(--text) 14%, transparent); }
  

    .section-floating { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
    .section-card--has-floating { position: relative; }
    .section-card--has-floating .section-shell { position: relative; z-index: 1; }
    .section-float-el { position: absolute; left: var(--f-x); top: var(--f-y); width: var(--f-size); height: var(--f-size); opacity: 0.1; animation: koral-float var(--f-dur, 6s) ease-in-out var(--f-delay, 0s) infinite alternate; }
    .section-float-el--circle { border-radius: 50%; background: var(--accent); }
    .section-float-el--dot { border-radius: 50%; background: var(--accent); }
    .section-float-el--blob { border-radius: 42% 58% 62% 38% / 52% 44% 56% 48%; background: var(--accent); }
    .section-float-el--line { width: var(--f-w, 80px) !important; height: 2px !important; background: var(--accent); transform: rotate(var(--f-rot, 30deg)); transform-origin: center; }
    .section-float-el--square { background: var(--accent); transform: rotate(var(--f-rot, 45deg)); border-radius: 4px; }
    @keyframes koral-float { 0% { transform: translateY(0) rotate(0deg); opacity: 0.08; } 100% { transform: translateY(-18px) rotate(6deg); opacity: 0.14; } }
    @media (prefers-reduced-motion: reduce) { .section-float-el { animation: none; opacity: 0.08; } }
  

    .section-card--bg-gradient-animated::before { background-size: 200% 200% !important; animation: koral-gradient-shift 8s ease infinite; }
    @keyframes koral-gradient-shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
    @media (prefers-reduced-motion: reduce) { .section-card--bg-gradient-animated::before { animation: none; } }
  

    .section-comparison { overflow: visible; }
    .section-comparison__scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .section-comparison__table { width: 100%; border-collapse: collapse; text-align: center; font-size: .95rem; }
    .section-comparison__corner { min-width: 160px; }
    .section-comparison__feature { text-align: left; font-weight: 500; padding: .75rem 1rem; white-space: nowrap; position: sticky; left: 0; background: var(--panel-surface-bg, var(--panel)); z-index: 1; }
    .section-comparison__cell { padding: .75rem 1rem; border-bottom: 1px solid color-mix(in srgb, var(--text) 10%, transparent); min-width: 120px; }
    .section-comparison__header { font-weight: 700; font-size: 1.05rem; padding-bottom: .5rem; border-bottom: 2px solid color-mix(in srgb, var(--text) 15%, transparent); vertical-align: bottom; }
    .section-comparison__price { display: block; font-size: .85rem; font-weight: 400; opacity: .7; margin-top: .25rem; }
    .section-comparison__cell--highlight { background: color-mix(in srgb, var(--accent) 8%, transparent); }
    .section-comparison__header.section-comparison__cell--highlight { background: color-mix(in srgb, var(--accent) 12%, transparent); }
    .section-comparison__check { color: var(--accent); font-size: 1.2rem; font-weight: 700; }
    .section-comparison__cross { opacity: .35; font-size: 1.1rem; }
    .section-comparison__group-label { text-align: left; font-weight: 700; font-size: .85rem; text-transform: uppercase; letter-spacing: .05em; padding: 1rem 1rem .5rem; color: var(--accent); border-bottom: none; }
    .section-comparison__cta { padding: 1rem; }
    .section-comparison__cta .section-button { white-space: nowrap; }
    .section-comparison__footer td { border-top: 2px solid color-mix(in srgb, var(--text) 15%, transparent); border-bottom: none; }
    @media (max-width: 640px) {
      .section-comparison__feature { font-size: .85rem; padding: .5rem .75rem; }
      .section-comparison__cell { font-size: .85rem; padding: .5rem .75rem; min-width: 90px; }
    }
  

    .section-countdown { display: flex; justify-content: center; align-items: flex-start; gap: .5rem; flex-wrap: wrap; margin-top: 1.5rem; }
    .section-countdown__unit { display: flex; flex-direction: column; align-items: center; min-width: 80px; }
    .section-countdown__value { font-size: clamp(2rem, 6vw, 4rem); font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; background: color-mix(in srgb, var(--accent) 10%, var(--panel-surface-bg, var(--panel))); border-radius: var(--radius, 8px); padding: .5rem .75rem; min-width: 80px; text-align: center; transition: transform .3s cubic-bezier(.4,0,.2,1); }
    .section-countdown__value.section-countdown__flip { transform: scale(1.08); }
    .section-countdown__label { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; opacity: .6; margin-top: .4rem; }
    .section-countdown__sep { font-size: clamp(1.5rem, 4vw, 3rem); font-weight: 300; opacity: .4; line-height: 1; padding-top: .5rem; }
    .section-countdown--expired .section-countdown__unit,
    .section-countdown--expired .section-countdown__sep { display: none; }
    .section-countdown__expired-text { font-size: 1.5rem; font-weight: 700; text-align: center; }
    @media (max-width: 480px) {
      .section-countdown__unit { min-width: 60px; }
      .section-countdown__value { min-width: 60px; padding: .4rem .5rem; }
    }
  

    .section-pricing__toggle { display: flex; justify-content: center; gap: 0; margin-bottom: 1.5rem; border-radius: 999px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--text) 15%, transparent); width: fit-content; margin-left: auto; margin-right: auto; }
    .section-pricing__toggle-btn { padding: .5rem 1.25rem; font-size: .9rem; font-weight: 600; cursor: pointer; border: none; background: transparent; color: var(--text); transition: background .2s, color .2s; }
    .section-pricing__toggle-btn.is-active { background: var(--accent); color: var(--accent-contrast, #fff); }
    .section-pricing__toggle-btn:not(.is-active):hover { background: color-mix(in srgb, var(--accent) 10%, transparent); }
  

    .section-accordion details { overflow: hidden; }
    .section-accordion__body, .section-faq__body { overflow: hidden; transition: max-height .3s ease, opacity .3s ease, padding .3s ease; }
    details:not([open]) > .section-accordion__body,
    details:not([open]) > .section-faq__body { max-height: 0; opacity: 0; padding-top: 0; padding-bottom: 0; }
    details[open] > .section-accordion__body,
    details[open] > .section-faq__body { max-height: 500px; opacity: 1; }
    .section-accordion__icon, .section-tabs__icon { margin-right: .5rem; display: inline-flex; align-items: center; font-size: 1.1em; }
    .section-accordion summary { display: flex; align-items: center; }
    .section-accordion__chevron, .section-faq__chevron { transition: transform .25s ease; margin-left: auto; }
    details[open] > summary .section-accordion__chevron,
    details[open] > summary .section-faq__chevron { transform: rotate(180deg); }
    .section-tabs__panel { transition: opacity .25s ease; }
    .section-tabs__panel:not(.is-active) { opacity: 0; }
    .section-tabs__panel.is-active { opacity: 1; }
    .section-tabs__icon { font-size: 1.15em; }
    @media (prefers-reduced-motion: reduce) {
      .section-accordion__body, .section-faq__body, .section-tabs__panel { transition: none; }
      .section-accordion__chevron, .section-faq__chevron { transition: none; }
    }
  

    .section-particles { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
    .section-particles canvas { width: 100%; height: 100%; display: block; }
    .section-card--has-particles { position: relative; }
    .section-card--has-particles .section-shell { position: relative; z-index: 1; }
  

    .koral-cursor, .koral-cursor-ring { position: fixed; top: 0; left: 0; pointer-events: none; z-index: 99999; border-radius: 50%; transform: translate(-50%, -50%); transition: opacity .2s; opacity: 0; }
    .koral-cursor { width: 8px; height: 8px; background: var(--accent, #6366f1); }
    .koral-cursor-ring { width: 36px; height: 36px; border: 1.5px solid var(--accent, #6366f1); opacity: 0; transition: width .2s, height .2s, opacity .2s; }
    .koral-cursor--blend { mix-blend-mode: difference; background: #fff; }
    .koral-cursor-ring--blend { mix-blend-mode: difference; border-color: #fff; }
    .koral-cursor.is-visible, .koral-cursor-ring.is-visible { opacity: 1; }
    .koral-cursor-ring.is-hover { width: 52px; height: 52px; opacity: .5; }
    body.has-custom-cursor, body.has-custom-cursor a, body.has-custom-cursor button { cursor: none !important; }
    @media (hover: none), (pointer: coarse) {
      .koral-cursor, .koral-cursor-ring { display: none !important; }
      body.has-custom-cursor, body.has-custom-cursor a, body.has-custom-cursor button { cursor: auto !important; }
    }
  

    .koral-scroll-progress { position: fixed; top: 0; left: 0; width: 100%; height: 3px; z-index: 9999; pointer-events: none; }
    .koral-scroll-progress__bar { height: 100%; width: 0%; background: var(--accent, #6366f1); transition: width .1s linear; }
    .koral-scroll-circle { position: fixed; bottom: 24px; right: 24px; width: 44px; height: 44px; z-index: 9999; pointer-events: none; }
    .koral-scroll-circle svg { width: 100%; height: 100%; transform: rotate(-90deg); }
    .koral-scroll-circle__bg { fill: none; stroke: color-mix(in srgb, var(--text) 12%, transparent); stroke-width: 3; }
    .koral-scroll-circle__fill { fill: none; stroke: var(--accent, #6366f1); stroke-width: 3; stroke-linecap: round; transition: stroke-dashoffset .1s linear; }
    @media (max-width: 640px) { .koral-scroll-circle { bottom: 16px; right: 16px; width: 36px; height: 36px; } }
  

    .koral-video-lightbox { position: fixed; inset: 0; z-index: 100000; background: rgba(0,0,0,.88); display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s; }
    .koral-video-lightbox.is-open { opacity: 1; visibility: visible; }
    .koral-video-lightbox__content { position: relative; width: min(90vw, 1200px); aspect-ratio: 16/9; background: #000; border-radius: 8px; overflow: hidden; }
    .koral-video-lightbox__content iframe { width: 100%; height: 100%; border: none; }
    .koral-video-lightbox__close { position: absolute; top: -40px; right: 0; background: none; border: none; color: #fff; font-size: 2rem; cursor: pointer; padding: 4px 10px; line-height: 1; opacity: .7; transition: opacity .2s; }
    .koral-video-lightbox__close:hover { opacity: 1; }
    @media (max-width: 640px) { .koral-video-lightbox__content { width: 96vw; } .koral-video-lightbox__close { top: -36px; } }
  