:root {
    --ink: #1c2b27;
    --ink-soft: #61726d;
    --primary: #168f6a;
    --primary-dark: #0b684c;
    --primary-soft: #e6f5ef;
    --lime: #d89016;
    --paper: #f4f8f6;
    --surface: #ffffff;
    --surface-soft: #f7faf8;
    --line: rgba(28, 43, 39, .11);
    --night: #10251f;
    --radius-xl: 32px;
    --radius-lg: 24px;
    --radius-md: 17px;
    --shadow: 0 30px 80px rgba(16, 37, 31, .14);
    --container: 1220px;
    --bs-primary: #168f6a;
    --bs-primary-rgb: 22, 143, 106;
    --bs-link-color: #147d5e;
    --bs-link-hover-color: #0f644b;
    --bs-body-color: #1c2b27;
    --bs-body-bg: #f4f8f6;
    --bs-border-color: #dfe9e4;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 96px;
}

body {
    margin: 0;
    color: var(--ink);
    background: var(--paper);
    font-family: Inter, Manrope, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 17px;
    line-height: 1.62;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body.menu-open {
    overflow: hidden;
}

button,
input,
textarea {
    font: inherit;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    color: inherit;
}

.container {
    width: 100%;
    max-width: none !important;
    margin-inline: 0;
    padding-inline: clamp(18px, 2.2vw, 42px);
}

main {
    position: relative;
    overflow: clip;
}

.parallax-scene,
.section-aura {
    position: absolute;
    pointer-events: none;
}

.parallax-scene {
    z-index: 0;
    inset: 0;
    overflow: hidden;
}

.parallax-layer {
    --parallax-x: 0px;
    --parallax-y: 0px;
    transform: translate3d(var(--parallax-x), var(--parallax-y), 0);
    will-change: transform;
}

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

.skip-link {
    position: fixed;
    z-index: 200;
    top: 12px;
    left: 12px;
    padding: 10px 16px;
    color: #fff;
    background: var(--primary-dark);
    border-radius: 10px;
    transform: translateY(-150%);
}

.skip-link:focus {
    transform: translateY(0);
}

.site-header {
    position: fixed;
    z-index: 100;
    inset: 0 0 auto;
    padding: 18px 0;
    transition: padding .25s ease, background .25s ease, box-shadow .25s ease;
}

.site-header.scrolled {
    padding: 10px 0;
    background: rgba(247, 248, 252, .88);
    box-shadow: 0 1px 0 var(--line);
    backdrop-filter: blur(18px);
}

.header-inner {
    position: relative;
    z-index: 101;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    font-size: 18px;
    font-weight: 720;
    letter-spacing: -.03em;
    white-space: nowrap;
}

.brand b {
    color: var(--primary);
    font-weight: 780;
}

.brand-mark {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, 8px);
    grid-template-rows: repeat(2, 8px);
    gap: 3px;
    width: 30px;
    height: 30px;
    padding: 4px;
    background: var(--primary);
    border-radius: 9px;
    box-shadow: 0 6px 16px rgba(22, 143, 106, .28);
}

.brand-mark span {
    background: #fff;
    border-radius: 2px;
}

.brand-mark span:last-child {
    position: absolute;
    width: 7px;
    height: 7px;
    right: 3px;
    bottom: 3px;
    background: var(--lime);
    border: 2px solid var(--primary);
    border-radius: 50%;
}

.desktop-nav {
    display: flex;
    align-items: center;
    gap: 34px;
    margin-left: auto;
}

.desktop-nav a,
.text-link {
    position: relative;
    color: #4f4b62;
    font-size: 15px;
    font-weight: 600;
}

.desktop-nav a::after,
.text-link::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -5px;
    left: 0;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .2s ease;
}

.desktop-nav a:hover::after,
.text-link:hover::after {
    transform: scaleX(1);
    transform-origin: left;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 20px;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 54px;
    padding: 0 25px;
    border: 1px solid transparent;
    border-radius: 14px;
    cursor: pointer;
    font-weight: 700;
    line-height: 1.1;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #168f6a;
    --bs-btn-border-color: #168f6a;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #0f7657;
    --bs-btn-hover-border-color: #0f7657;
    --bs-btn-active-bg: #0b684c;
    --bs-btn-active-border-color: #0b684c;
}

.btn-outline-primary {
    --bs-btn-color: #0b684c;
    --bs-btn-border-color: #aad8c7;
    --bs-btn-hover-color: #0b684c;
    --bs-btn-hover-bg: #e6f5ef;
    --bs-btn-hover-border-color: #78bda5;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0b684c;
    --bs-btn-active-border-color: #0b684c;
}

.button:hover {
    transform: translateY(-2px);
}

.button:focus-visible,
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible {
    outline: 3px solid rgba(22, 143, 106, .28);
    outline-offset: 3px;
}

.button-small {
    min-height: 44px;
    padding: 0 19px;
    color: #fff;
    background: var(--ink);
    border-radius: 12px;
    font-size: 15px;
}

.button-small:hover {
    background: var(--primary);
    box-shadow: 0 12px 26px rgba(22, 143, 106, .25);
}

.button-primary {
    color: #fff;
    background: var(--primary);
    box-shadow: 0 15px 30px rgba(22, 143, 106, .22);
}

.button-primary:hover {
    background: var(--primary-dark);
    box-shadow: 0 18px 38px rgba(22, 143, 106, .3);
}

.button-ghost {
    background: rgba(255, 255, 255, .72);
    border-color: var(--line);
}

.button-ghost:hover {
    background: #fff;
}

.button-outline {
    width: 100%;
    color: var(--ink);
    background: transparent;
    border-color: var(--line);
}

.button-outline:hover {
    color: var(--primary-dark);
    border-color: rgba(22, 143, 106, .35);
    background: var(--primary-soft);
}

.button-light {
    color: var(--night);
    background: #fff;
}

.button-light:hover {
    background: var(--lime);
}

.play-icon {
    display: inline-grid;
    place-items: center;
    width: 24px;
    height: 24px;
    padding-left: 2px;
    color: var(--primary);
    background: var(--primary-soft);
    border-radius: 50%;
    font-size: 8px;
}

.menu-toggle,
.mobile-menu {
    display: none;
}

.hero {
    position: relative;
    min-height: 940px;
    padding: 154px 0 48px;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 12%, rgba(216, 144, 22, .12), transparent 27%),
        radial-gradient(circle at 9% 30%, rgba(22, 143, 106, .1), transparent 25%);
}

.hero-grid-layer {
    position: absolute;
    inset: -18%;
    opacity: .48;
    background:
        linear-gradient(115deg, transparent 22%, rgba(22, 143, 106, .075) 22.3%, transparent 22.8%),
        linear-gradient(25deg, transparent 68%, rgba(216, 144, 22, .07) 68.3%, transparent 68.8%),
        radial-gradient(circle at 22% 54%, rgba(22, 143, 106, .12), transparent 26%),
        radial-gradient(circle at 79% 28%, rgba(216, 144, 22, .1), transparent 22%);
}

.hero-wave-layer {
    position: absolute;
    top: 5%;
    right: -10vw;
    width: min(62vw, 1120px);
    aspect-ratio: 1;
    border: 1px solid rgba(22, 143, 106, .14);
    border-radius: 42% 58% 63% 37% / 41% 38% 62% 59%;
    box-shadow:
        0 0 0 70px rgba(22, 143, 106, .025),
        0 0 0 140px rgba(216, 144, 22, .018),
        inset 0 0 110px rgba(22, 143, 106, .045);
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .35;
    background-image: radial-gradient(rgba(41, 34, 79, .18) .65px, transparent .65px);
    background-size: 19px 19px;
    mask-image: linear-gradient(to bottom, #000 0, transparent 62%);
}

.orb {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    filter: blur(2px);
}

.orb-one {
    top: 310px;
    left: -90px;
    width: 230px;
    height: 230px;
    background: rgba(22, 143, 106, .1);
}

.orb-two {
    top: 90px;
    right: -80px;
    width: 240px;
    height: 240px;
    border: 1px solid rgba(22, 143, 106, .16);
}

.hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(420px, .76fr) minmax(640px, 1.24fr);
    align-items: center;
    gap: clamp(32px, 4vw, 88px);
}

.hero-copy {
    padding-bottom: 52px;
}

.eyebrow {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 20px;
    color: var(--primary-dark);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.eyebrow > span {
    width: 26px;
    height: 2px;
    background: var(--lime);
    box-shadow: 8px 0 0 var(--primary);
}

.hero h1,
.section-heading h2,
.approach-copy h2,
.details-copy h2,
.request-copy h2 {
    margin: 0;
    font-size: clamp(50px, 5.5vw, 106px);
    line-height: .98;
    letter-spacing: -.065em;
}

.hero h1 em,
.section-heading h2 em,
.approach-copy h2 em,
.details-copy h2 em {
    color: var(--primary);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 500;
    letter-spacing: -.055em;
}

.hero-lead {
    max-width: 680px;
    margin: 28px 0 30px;
    color: var(--ink-soft);
    font-size: 19px;
    line-height: 1.65;
}

.hero-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.hero-points {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 26px;
    color: #555166;
    font-size: 14px;
    font-weight: 650;
}

.hero-points span {
    display: flex;
    align-items: center;
    gap: 7px;
}

.hero-points i,
.check-grid i {
    display: inline-grid;
    place-items: center;
    width: 19px;
    height: 19px;
    color: #4b7c09;
    background: rgba(216, 144, 22, .18);
    border-radius: 50%;
    font-style: normal;
    font-size: 11px;
}

.product-stage {
    position: relative;
    min-width: 0;
    padding: 35px 0 70px;
    perspective: 1400px;
}

.stage-glow {
    position: absolute;
    inset: 15% 4% 2%;
    background: linear-gradient(135deg, rgba(22, 143, 106, .3), rgba(216, 144, 22, .16));
    border-radius: 50%;
    filter: blur(42px);
}

.app-window {
    position: relative;
    z-index: 2;
    min-height: 560px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(42, 34, 82, .09);
    border-radius: 26px;
    box-shadow: 0 46px 100px rgba(16, 72, 53, .2), 0 10px 28px rgba(16, 37, 31, .1);
    transform: rotateY(-3deg) rotateX(1deg);
    transform-origin: center left;
}

.app-topbar {
    display: grid;
    grid-template-columns: 80px 1fr 52px;
    align-items: center;
    gap: 14px;
    height: 58px;
    padding: 0 15px;
    border-bottom: 1px solid #efeff4;
}

.window-dots {
    display: flex;
    gap: 5px;
}

.window-dots i {
    width: 8px;
    height: 8px;
    background: #d9d7e1;
    border-radius: 50%;
}

.window-dots i:first-child {
    background: #ff8a8a;
}

.window-dots i:nth-child(2) {
    background: #ffd46f;
}

.window-dots i:nth-child(3) {
    background: #9be17d;
}

.app-search {
    justify-self: center;
    width: min(100%, 300px);
    padding: 8px 12px;
    color: #9a97a5;
    background: #f5f5f8;
    border-radius: 9px;
    font-size: 12px;
}

.app-search span {
    margin-right: 7px;
    font-size: 14px;
}

.app-user {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    margin-left: auto;
    color: #fff;
    background: var(--primary);
    border-radius: 10px;
    font-size: 11px;
    font-weight: 800;
}

.app-shell {
    display: grid;
    grid-template-columns: 58px 1fr;
    min-height: 502px;
}

.app-sidebar {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 14px;
    padding: 14px 8px;
    background: var(--night);
}

.mini-logo {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    margin-bottom: 10px;
    color: #fff;
    background: var(--primary);
    border-radius: 9px;
    font-size: 11px;
    font-weight: 800;
}

.app-sidebar button {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    color: #777286;
    background: transparent;
    border: 0;
    border-radius: 9px;
    cursor: pointer;
}

.app-sidebar button:hover,
.app-sidebar button.active {
    color: #fff;
    background: var(--primary);
}

.app-sidebar button span {
    font-size: 15px;
}

.app-content {
    min-width: 0;
    padding: 27px 26px;
    background: #fafafd;
}

.demo-panel {
    display: none;
    animation: panel-in .32s ease;
}

.demo-panel.active {
    display: block;
}

@keyframes panel-in {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

.app-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 22px;
}

.app-heading small {
    display: block;
    margin-bottom: 4px;
    color: #a19dab;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
}

.app-heading h2 {
    margin: 0;
    color: #242033;
    font-size: 20px;
    letter-spacing: -.04em;
}

.app-heading button {
    padding: 8px 12px;
    color: #fff;
    background: var(--primary);
    border: 0;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
}

.metric-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.metric-card {
    display: flex;
    min-width: 0;
    min-height: 115px;
    padding: 14px;
    flex-direction: column;
    background: #fff;
    border: 1px solid #eeeeF3;
    border-radius: 13px;
}

.metric-card.accent {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.metric-card > span {
    color: #777282;
    font-size: 11px;
}

.metric-card.accent > span,
.metric-card.accent small {
    color: rgba(255, 255, 255, .75);
}

.metric-card strong {
    margin: 6px 0 auto;
    font-size: 27px;
    letter-spacing: -.05em;
}

.metric-card small {
    color: #9691a0;
    font-size: 10px;
}

.dashboard-lower {
    display: grid;
    grid-template-columns: 1.6fr .8fr;
    gap: 10px;
    margin-top: 10px;
}

.chart-card,
.focus-card {
    min-height: 198px;
    padding: 16px;
    background: #fff;
    border: 1px solid #eeeef3;
    border-radius: 13px;
}

.card-title {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 11px;
}

.card-title small {
    color: #a19dab;
    font-size: 10px;
}

.chart {
    display: flex;
    align-items: end;
    gap: 10px;
    height: 125px;
    padding: 20px 8px 0;
    border-bottom: 1px solid #ecebf1;
    background: repeating-linear-gradient(to bottom, transparent 0, transparent 30px, #f3f2f6 31px);
}

.chart i {
    flex: 1;
    background: #d4ebe2;
    border-radius: 5px 5px 0 0;
}

.chart i.hot {
    background: var(--primary);
}

.focus-card {
    display: flex;
    flex-direction: column;
    color: #fff;
    background: var(--night);
    border-color: var(--night);
}

.focus-card > small {
    color: var(--lime);
    font-size: 10px;
    letter-spacing: .12em;
}

.focus-card b {
    margin-top: 30px;
    font-size: 24px;
    letter-spacing: -.04em;
}

.focus-card p {
    margin: 3px 0 auto;
    color: #aaa6b5;
    font-size: 11px;
}

.focus-card span {
    color: var(--lime);
    font-size: 11px;
}

.fake-filter {
    display: flex;
    gap: 7px;
    margin-bottom: 12px;
    font-size: 11px;
}

.fake-filter span,
.fake-filter i {
    padding: 8px 10px;
    color: #8d8998;
    background: #fff;
    border: 1px solid #edecf2;
    border-radius: 8px;
    font-style: normal;
}

.fake-filter span {
    flex: 1;
}

.fake-table {
    overflow: hidden;
    background: #fff;
    border: 1px solid #ecebf1;
    border-radius: 12px;
}

.fake-row {
    display: grid;
    grid-template-columns: 1.25fr .85fr 1fr .65fr;
    align-items: center;
    gap: 10px;
    min-height: 74px;
    padding: 10px 14px;
    border-bottom: 1px solid #f0eff3;
    font-size: 11px;
}

.fake-row:last-child {
    border-bottom: 0;
}

.fake-head {
    min-height: 36px;
    color: #9b97a5;
    background: #f9f9fb;
    font-size: 10px;
    font-weight: 700;
}

.fake-row b,
.fake-row small {
    display: block;
}

.fake-row b {
    margin-bottom: 2px;
    font-size: 12px;
}

.fake-row small {
    color: #9e99a6;
    font-size: 10px;
}

.status {
    display: inline-block;
    padding: 5px 7px;
    border-radius: 20px;
    font-style: normal;
    white-space: nowrap;
}

.status.warm { color: #856313; background: #fff0c6; }
.status.good { color: #397024; background: #e3f7da; }
.status.cool { color: #0b684c; background: #e6f5ef; }

.pipeline {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 9px;
}

.pipeline > div {
    min-height: 340px;
    padding: 10px;
    background: #f1f1f6;
    border-radius: 10px;
}

.pipeline > div > small {
    display: block;
    margin-bottom: 9px;
    color: #878390;
    font-size: 10px;
    font-weight: 800;
}

.pipeline article {
    display: flex;
    min-height: 100px;
    margin-bottom: 8px;
    padding: 10px;
    flex-direction: column;
    background: #fff;
    border: 1px solid #ebeaf0;
    border-radius: 9px;
    box-shadow: 0 5px 12px rgba(28, 24, 51, .04);
}

.pipeline article b { font-size: 11px; }
.pipeline article span { color: #777382; font-size: 10px; }
.pipeline article strong { margin-top: auto; font-size: 12px; }

.task-list {
    overflow: hidden;
    background: #fff;
    border: 1px solid #ecebf1;
    border-radius: 12px;
}

.task-list article {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 11px;
    min-height: 76px;
    padding: 12px 14px;
    border-bottom: 1px solid #f0eff3;
}

.task-list article:last-child { border-bottom: 0; }
.task-list b, .task-list span { display: block; }
.task-list b { font-size: 12px; }
.task-list span { color: #777382; font-size: 10px; }
.task-check { width: 17px; height: 17px; border: 1.5px solid #c8c5ce; border-radius: 5px; }
.task-check.done { display: grid; place-items: center; color: #fff; background: var(--primary); border-color: var(--primary); font-style: normal; font-size: 8px; }
.priority { padding: 4px 7px; color: #70420b; background: #fff0ca; border-radius: 20px; font-size: 10px; }

.floating-note {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(36, 31, 69, .08);
    border-radius: 14px;
    box-shadow: 0 16px 40px rgba(16, 72, 53, .16);
    backdrop-filter: blur(14px);
}

.floating-note > span {
    display: grid;
    place-items: center;
    min-width: 34px;
    height: 34px;
    padding: 0 7px;
    color: var(--primary-dark);
    background: var(--lime);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 850;
}

.floating-note b,
.floating-note small {
    display: block;
}

.floating-note b { font-size: 12px; }
.floating-note small { color: #6f6a7c; font-size: 10px; }
.note-top { top: 10px; right: -38px; }
.note-bottom { bottom: 25px; left: -34px; }

.client-strip {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 56px;
    padding-top: 28px;
    border-top: 1px solid var(--line);
}

.client-strip p {
    max-width: 250px;
    margin: 0;
    color: var(--ink-soft);
    font-size: 15px;
}

.client-strip div {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    color: #797586;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
}

.client-strip i {
    width: 4px;
    height: 4px;
    background: var(--primary);
    border-radius: 50%;
}

.section {
    position: relative;
    padding: 125px 0;
    overflow: clip;
}

.section > .container {
    position: relative;
    z-index: 2;
}

.section-aura {
    z-index: 1;
    border-radius: 50%;
}

.possibilities-aura {
    top: 7%;
    left: -12vw;
    width: clamp(360px, 38vw, 760px);
    aspect-ratio: 1;
    opacity: .72;
    background: radial-gradient(circle, rgba(22, 143, 106, .13), rgba(22, 143, 106, .035) 48%, transparent 72%);
    filter: blur(2px);
}

.approach-aura {
    top: -42%;
    right: -8vw;
    width: clamp(520px, 46vw, 900px);
    aspect-ratio: 1;
    border: 1px solid rgba(216, 144, 22, .18);
    box-shadow: 0 0 0 80px rgba(22, 143, 106, .035), 0 0 0 160px rgba(216, 144, 22, .018);
}

.details-aura {
    right: -16vw;
    bottom: -18%;
    width: clamp(420px, 42vw, 820px);
    aspect-ratio: 1;
    opacity: .75;
    background: radial-gradient(circle, rgba(216, 144, 22, .11), rgba(22, 143, 106, .04) 48%, transparent 70%);
}

.plans-aura {
    top: -25%;
    left: 20%;
    width: 68vw;
    height: 145%;
    border-radius: 0;
    opacity: .38;
    background-image: radial-gradient(rgba(22, 143, 106, .22) .8px, transparent .8px);
    background-size: 24px 24px;
    mask-image: radial-gradient(ellipse, #000, transparent 68%);
}

.request-aura {
    top: -35%;
    left: -8vw;
    width: clamp(420px, 42vw, 820px);
    aspect-ratio: 1;
    background: radial-gradient(circle, rgba(22, 143, 106, .16), rgba(216, 144, 22, .045) 50%, transparent 72%);
}

.section-heading {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 22px 40px;
    margin-bottom: 60px;
}

.section-heading .eyebrow {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.section-heading h2,
.approach-copy h2,
.details-copy h2 {
    font-size: clamp(40px, 4.6vw, 64px);
}

.section-heading > p:last-child {
    max-width: 380px;
    margin: 0 0 6px;
    color: var(--ink-soft);
    font-size: 18px;
}

.section-heading.centered {
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
}

.section-heading.centered > p:last-child {
    max-width: 650px;
    margin-top: 20px;
}

.bento-grid {
    display: grid;
    grid-template-columns: 1.18fr .82fr;
    gap: 18px;
}

.bento-card {
    position: relative;
    min-height: 370px;
    padding: 38px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: var(--radius-xl);
}

.bento-card h3 {
    margin: 16px 0 13px;
    font-size: 27px;
    line-height: 1.12;
    letter-spacing: -.04em;
}

.bento-card p {
    margin: 0;
    color: var(--ink-soft);
    font-size: 16px;
    line-height: 1.65;
}

.feature-number {
    display: block;
    color: var(--primary);
    font-size: clamp(44px, 4.5vw, 72px);
    font-weight: 850;
    line-height: .82;
    letter-spacing: -.07em;
}

.bento-large {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: .82fr 1.18fr;
    align-items: center;
    gap: 45px;
    min-height: 490px;
    background: linear-gradient(135deg, #fff 0%, #eef8f4 100%);
}

.bento-copy ul,
.plan-card ul {
    display: grid;
    gap: 10px;
    margin: 25px 0 0;
    padding: 0;
    list-style: none;
}

.bento-copy li,
.plan-card li {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 15px;
}

.bento-copy li::before,
.plan-card li::before {
    content: "✓";
    display: grid;
    place-items: center;
    width: 19px;
    height: 19px;
    color: var(--primary-dark);
    background: var(--primary-soft);
    border-radius: 50%;
    font-size: 10px;
    font-weight: 800;
}

.contact-preview {
    position: relative;
    padding: 27px;
    background: rgba(255, 255, 255, .88);
    border: 1px solid rgba(22, 143, 106, .12);
    border-radius: 23px;
    box-shadow: 0 24px 60px rgba(22, 143, 106, .13);
    transform: rotate(1.2deg);
}

.contact-preview::before {
    content: "";
    position: absolute;
    inset: -35px -40px auto auto;
    width: 160px;
    height: 160px;
    background: var(--lime);
    border-radius: 50%;
    opacity: .2;
    filter: blur(2px);
}

.preview-top,
.preview-person {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
}

.preview-top { padding-bottom: 20px; }
.preview-top > i, .preview-person > i { margin-left: auto; color: #8d8998; font-style: normal; }
.avatar, .preview-person > span {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    color: #fff;
    background: var(--primary);
    border-radius: 14px;
    font-size: 12px;
    font-weight: 800;
}

.preview-top b,
.preview-top small,
.preview-person b,
.preview-person small { display: block; }
.preview-top b { font-size: 15px; }
.preview-top small, .preview-person small { color: #777382; font-size: 12px; }
.preview-tags { display: flex; gap: 8px; margin-bottom: 8px; padding: 11px 0; border-block: 1px solid #eeedf3; }
.preview-tags span { padding: 5px 8px; color: #5f5a6b; background: #f4f3f7; border-radius: 7px; font-size: 11px; }
.preview-tags span:first-child { color: #fff; background: var(--primary); }
.preview-person { padding: 13px 0; border-bottom: 1px solid #f0eff3; }
.preview-person > span { width: 36px; height: 36px; color: var(--primary-dark); background: var(--primary-soft); border-radius: 10px; font-size: 9px; }
.preview-person b { font-size: 13px; }

.bento-purple {
    color: #fff;
    background: var(--primary);
    border-color: var(--primary);
}

.bento-purple .feature-number,
.bento-purple p { color: rgba(255, 255, 255, .72); }

.rings {
    position: absolute;
    right: -20px;
    bottom: -45px;
    display: grid;
    place-items: center;
    width: 240px;
    height: 240px;
}

.rings i {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
}

.rings i:first-child { inset: 5px; }
.rings i:nth-child(2) { inset: 37px; }
.rings i:nth-child(3) { inset: 69px; background: rgba(255, 255, 255, .09); }
.rings strong { z-index: 2; font-size: 42px; letter-spacing: -.06em; }
.rings small { font-size: 18px; }

.bento-dark {
    color: #fff;
    background: var(--night);
    border-color: var(--night);
}

.bento-dark .feature-number { color: var(--lime); }
.bento-dark p { color: #aaa6b5; }
.team-stack { position: absolute; right: 30px; bottom: 35px; display: flex; align-items: center; }
.team-stack i, .team-stack span { display: grid; place-items: center; width: 47px; height: 47px; margin-left: -9px; color: #fff; background: #28624f; border: 4px solid var(--night); border-radius: 50%; font-style: normal; font-size: 12px; font-weight: 800; }
.team-stack i:nth-child(2) { background: #168f6a; }
.team-stack i:nth-child(3) { background: #d89016; }
.team-stack i:nth-child(4) { background: #498f8b; }
.team-stack span { color: var(--night); background: var(--lime); }

.bento-wide {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 40px;
    min-height: 320px;
}

.mini-pipeline {
    display: flex;
    align-items: end;
    gap: 13px;
    height: 190px;
    padding: 20px;
    background: linear-gradient(180deg, #f5f2ff, #fff);
    border-radius: 22px;
    border-bottom: 1px solid #ddd9ed;
}

.mini-pipeline span {
    flex: 1;
    background: linear-gradient(to top, var(--primary), #58b293);
    border-radius: 9px 9px 3px 3px;
    box-shadow: 0 8px 18px rgba(22, 143, 106, .16);
}

.approach {
    position: relative;
    overflow: hidden;
    color: #fff;
    background: var(--night);
}

.approach::before {
    content: "";
    position: absolute;
    top: -220px;
    left: -150px;
    width: 520px;
    height: 520px;
    border: 1px solid rgba(216, 144, 22, .22);
    border-radius: 50%;
    box-shadow: 0 0 0 75px rgba(22, 143, 106, .04), 0 0 0 150px rgba(22, 143, 106, .025);
}

.approach-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 110px;
}

.eyebrow.light { color: var(--lime); }
.approach-copy h2 em { color: var(--lime); }
.approach-copy > p:not(.eyebrow) { max-width: 520px; margin: 25px 0 32px; color: #c7c3ce; font-size: 18px; line-height: 1.65; }

.process-list {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .12);
}

.process-list li {
    display: grid;
    grid-template-columns: 104px 1fr;
    align-items: start;
    gap: 26px;
    padding: 34px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.process-list li > span { color: var(--lime); font-size: clamp(48px, 4.3vw, 68px); font-weight: 850; line-height: .82; letter-spacing: -.07em; }
.process-list h3 { margin: 0 0 8px; font-size: 24px; letter-spacing: -.03em; }
.process-list p { max-width: 520px; margin: 0; color: #c7c3ce; font-size: 16px; line-height: 1.6; }

.details-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: center;
    gap: 90px;
}

.details-visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 490px;
    overflow: hidden;
    background: linear-gradient(145deg, #e6f5ef, #f7faf8);
    border: 1px solid var(--line);
    border-radius: var(--radius-xl);
}

.details-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(22, 143, 106, .2) 1px, transparent 1px);
    background-size: 22px 22px;
    mask-image: radial-gradient(circle, #000, transparent 68%);
}

.security-orbit {
    position: relative;
    display: grid;
    place-items: center;
    width: 360px;
    height: 360px;
}

.orbit {
    position: absolute;
    border: 1px solid rgba(22, 143, 106, .22);
    border-radius: 50%;
}

.orbit-a { inset: 12px; animation: spin 16s linear infinite; }
.orbit-b { inset: 70px; animation: spin 12s linear infinite reverse; }
.orbit i { position: absolute; top: 50%; left: -7px; width: 14px; height: 14px; background: var(--primary); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 5px 14px rgba(22, 143, 106, .35); }
.orbit-b i { top: 15%; right: 7px; left: auto; background: var(--lime); }

@keyframes spin { to { transform: rotate(360deg); } }

.shield {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 138px;
    height: 160px;
    padding-bottom: 15px;
    color: var(--lime);
    background: var(--primary);
    border-radius: 48% 48% 55% 55% / 28% 28% 70% 70%;
    box-shadow: 0 26px 55px rgba(22, 143, 106, .3);
    font-size: 25px;
}

.shield small { color: #fff; font-size: 10px; font-weight: 850; line-height: 1.25; letter-spacing: .12em; text-align: center; }
.details-copy > p:not(.eyebrow) { max-width: 590px; margin: 25px 0 30px; color: var(--ink-soft); font-size: 18px; line-height: 1.65; }
.check-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.check-grid span { display: flex; align-items: center; gap: 10px; color: #494559; font-size: 16px; font-weight: 650; }

.plans { background: linear-gradient(135deg, #edf5f1 0%, #f7faf8 52%, #f4f0e8 100%); }
.plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 18px; }
.plan-card { position: relative; display: flex; min-height: 550px; padding: 36px; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); }
.plan-label { color: var(--primary); font-size: 14px; font-weight: 850; letter-spacing: .13em; }
.plan-card h3 { margin: 19px 0 12px; font-size: 27px; line-height: 1.15; letter-spacing: -.04em; }
.plan-card > p { min-height: 72px; margin: 0; color: var(--ink-soft); font-size: 16px; line-height: 1.6; }
.plan-card > strong { display: block; margin-top: 27px; font-size: 17px; }
.plan-card ul { margin-bottom: 32px; }
.plan-card .button { margin-top: auto; }
.plan-card.featured { color: #fff; background: var(--night); border-color: var(--night); box-shadow: 0 30px 65px rgba(28, 24, 51, .18); transform: translateY(-12px); }
.plan-card.featured .plan-label { color: var(--lime); }
.plan-card.featured > p { color: #aaa6b5; }
.plan-card.featured li::before { color: var(--night); background: var(--lime); }
.popular { position: absolute; top: 24px; right: 24px; padding: 7px 11px; color: var(--night); background: var(--lime); border-radius: 30px; font-size: 11px; font-weight: 900; letter-spacing: .08em; }

.request-section { padding-bottom: 0; background: linear-gradient(180deg, #f7faf8, #eaf2ee); }
.request-card { display: grid; grid-template-columns: .9fr 1.1fr; gap: 65px; padding: clamp(58px, 6vw, 112px) clamp(24px, 5vw, 96px); color: #fff; background: linear-gradient(120deg, #0b684c, #168f6a 62%, #238d76); border-radius: 0; box-shadow: 0 35px 80px rgba(22, 143, 106, .25); }
.request-card-form-hidden { grid-template-columns: minmax(0, 820px); justify-content: center; text-align: center; }
.request-card-form-hidden .request-copy h2,
.request-card-form-hidden .request-copy > p:not(.eyebrow) { margin-right: auto; margin-left: auto; }
.request-card-form-hidden .request-meta { width: fit-content; margin-inline: auto; text-align: left; }
.request-copy h2 { max-width: 590px; font-size: clamp(38px, 4vw, 57px); }
.request-copy > p:not(.eyebrow) { max-width: 620px; margin: 25px 0 35px; color: rgba(255, 255, 255, .86); font-size: 18px; line-height: 1.65; }
.request-meta { display: grid; gap: 13px; }
.request-meta span { display: flex; align-items: center; gap: 15px; color: rgba(255, 255, 255, .9); font-size: 16px; }
.request-meta b { display: grid; place-items: center; width: 48px; height: 48px; color: var(--night); background: var(--lime); border-radius: 13px; font-size: 19px; letter-spacing: -.04em; }

.lead-form { position: relative; display: grid; gap: 16px; padding: 32px; color: var(--ink); background: #fff; border-radius: 25px; box-shadow: 0 20px 55px rgba(16, 72, 53, .2); }
.form-heading span, .form-heading small { display: block; }
.form-heading span { font-size: 20px; font-weight: 780; letter-spacing: -.03em; }
.form-heading small { margin-top: 2px; color: var(--ink-soft); font-size: 11px; }
.lead-form label { display: grid; gap: 6px; }
.lead-form label > span { color: #464253; font-size: 11px; font-weight: 720; }
.lead-form label > span small { color: #a09ca8; font-weight: 500; }
.lead-form input:not([type="checkbox"]), .lead-form textarea { width: 100%; padding: 13px 14px; color: var(--ink); background: #f7f7fa; border: 1px solid #e7e5ec; border-radius: 11px; outline: 0; transition: background .2s ease, border-color .2s ease, box-shadow .2s ease; }
.lead-form textarea { min-height: 92px; resize: vertical; }
.lead-form input::placeholder, .lead-form textarea::placeholder { color: #aaa6b2; }
.lead-form input:focus, .lead-form textarea:focus { background: #fff; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(22, 143, 106, .11); }
.lead-form input[aria-invalid="true"], .lead-form textarea[aria-invalid="true"] { border-color: #d83a52; box-shadow: 0 0 0 3px rgba(216, 58, 82, .1); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.consent { display: grid !important; grid-template-columns: auto 1fr; align-items: start; gap: 9px !important; cursor: pointer; }
.consent input { width: 17px; height: 17px; margin: 2px 0 0; accent-color: var(--primary); }
.consent span { color: #777382 !important; font-size: 10px !important; font-weight: 500 !important; }
.button-submit { width: 100%; color: #fff; background: var(--night); border: 0; }
.button-submit:hover { background: var(--primary-dark); box-shadow: 0 14px 28px rgba(11, 104, 76, .25); }
.form-note { margin: -5px 0 0; color: #9d99a6; font-size: 9px; text-align: center; }
.form-errors, .form-success { padding: 12px 14px; border-radius: 10px; font-size: 11px; }
.form-errors { color: #8f263a; background: #fff0f3; border: 1px solid #f4cbd3; }
.form-errors ul { margin: 5px 0 0; padding-left: 18px; }
.form-success { display: flex; align-items: center; gap: 10px; color: #2f6722; background: #effbe9; border: 1px solid #d2efc8; }
.form-success i { display: grid; place-items: center; width: 30px; height: 30px; color: #fff; background: #62a64e; border-radius: 50%; font-style: normal; }
.form-success b, .form-success span { display: block; }
.form-success span { color: #587850; font-size: 10px; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

.site-footer { padding: 34px 0 22px; color: #fff; background: var(--night); }
.footer-top { display: grid; grid-template-columns: .8fr 1.1fr 1fr; align-items: start; gap: 50px; padding-bottom: 34px; }
.footer-brand b { color: var(--lime); }
.footer-top p { margin: 2px 0 0; color: #c7c3ce; font-size: 15px; }
.footer-top nav { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.footer-top nav a { color: #dedbe3; font-size: 14px; }
.footer-top nav a:hover { color: var(--lime); }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 19px; color: #aaa6b5; border-top: 1px solid rgba(255, 255, 255, .09); font-size: 13px; }

.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .7s ease, transform .7s cubic-bezier(.2, .7, .2, 1);
}

.reveal-delay { transition-delay: .12s; }
.reveal.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1180px) {
    .hero { min-height: auto; padding-top: 135px; }
    .hero-grid { grid-template-columns: 1fr; }
    .hero-copy { max-width: 780px; padding-bottom: 0; }
    .product-stage { width: min(100%, 780px); margin-inline: auto; }
    .app-window { transform: none; }
    .client-strip { margin-top: 10px; }
    .approach-grid, .details-grid { gap: 55px; }
    .request-card { gap: 40px; padding: 52px; }
    .plan-card { padding: 28px; }
}

@media (max-width: 900px) {
    .desktop-nav, .desktop-only { display: none; }
    .menu-toggle { display: grid; place-items: center; gap: 5px; width: 44px; height: 44px; padding: 0; background: transparent; border: 1px solid var(--line); border-radius: 12px; }
    .menu-toggle i { display: block; width: 18px; height: 2px; background: var(--ink); transition: transform .2s ease; }
    .menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(3.5px) rotate(45deg); }
    .menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-3.5px) rotate(-45deg); }
    .mobile-menu { position: fixed; z-index: 100; top: 0; right: 0; left: 0; display: grid; gap: 6px; padding: 100px 24px 28px; background: rgba(247, 248, 252, .98); border-bottom: 1px solid var(--line); box-shadow: 0 25px 50px rgba(31, 27, 58, .12); transform: translateY(-115%); transition: transform .28s ease; backdrop-filter: blur(18px); }
    .mobile-menu.open { transform: translateY(0); }
    .mobile-menu a { padding: 12px; font-size: 17px; font-weight: 680; text-align: center; }
    .section { padding: 95px 0; }
    .section-heading { display: block; }
    .section-heading .eyebrow { margin-bottom: 20px; }
    .section-heading > p:last-child { margin-top: 22px; }
    .approach-grid, .details-grid, .request-card { grid-template-columns: 1fr; }
    .approach-grid { gap: 58px; }
    .details-grid { gap: 45px; }
    .details-visual { order: 2; }
    .plan-grid { grid-template-columns: 1fr; max-width: 620px; margin-inline: auto; }
    .plan-card { min-height: 0; }
    .plan-card.featured { transform: none; }
    .plan-card > p { min-height: 0; }
    .request-card { gap: 44px; }
    .footer-top { grid-template-columns: 1fr 1fr; }
    .footer-top nav { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
    .container { width: 100%; padding-inline: 15px; }
    .site-header { padding: 11px 0; }
    .header-actions { gap: 8px; }
    .header-actions .button-small { display: none; }
    .hero { padding: 115px 0 35px; }
    .hero h1 { font-size: clamp(42px, 13vw, 62px); }
    .hero-lead { font-size: 17px; }
    .hero-actions { align-items: stretch; flex-direction: column; }
    .hero-actions .button { width: 100%; }
    .hero-points { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
    .product-stage { margin-top: 18px; padding-bottom: 48px; }
    .app-window { min-height: 445px; border-radius: 19px; }
    .app-topbar { grid-template-columns: 40px 1fr 34px; height: 48px; padding-inline: 10px; }
    .window-dots { gap: 3px; }
    .window-dots i { width: 5px; height: 5px; }
    .app-search { padding: 6px 8px; font-size: 9px; }
    .app-user { width: 26px; height: 26px; border-radius: 8px; }
    .app-shell { grid-template-columns: 44px 1fr; min-height: 395px; }
    .app-sidebar { gap: 11px; padding-inline: 5px; }
    .mini-logo { width: 28px; height: 28px; }
    .app-sidebar button { width: 29px; height: 29px; }
    .app-content { padding: 17px 13px; }
    .app-heading { margin-bottom: 14px; }
    .app-heading h2 { font-size: 14px; }
    .app-heading button { padding: 6px 8px; }
    .metric-grid { gap: 6px; }
    .metric-card { min-height: 88px; padding: 9px; }
    .metric-card > span { font-size: 8px; }
    .metric-card strong { font-size: 20px; }
    .metric-card small { font-size: 8px; }
    .dashboard-lower { gap: 6px; }
    .chart-card, .focus-card { min-height: 145px; padding: 10px; }
    .chart { height: 92px; gap: 5px; padding-top: 12px; }
    .focus-card b { margin-top: 18px; font-size: 17px; }
    .fake-filter i { display: none; }
    .fake-row { grid-template-columns: 1.2fr .9fr .75fr; min-height: 58px; padding: 8px; }
    .fake-row > span:nth-child(3) { display: none; }
    .pipeline { gap: 5px; }
    .pipeline > div { min-height: 270px; padding: 6px; }
    .pipeline article { min-height: 78px; padding: 7px; }
    .task-list article { min-height: 59px; padding: 8px; }
    .note-top { top: 10px; right: -5px; }
    .note-bottom { bottom: 12px; left: -6px; }
    .floating-note { padding: 8px 10px; }
    .floating-note > span { min-width: 28px; height: 28px; }
    .floating-note b { font-size: 10px; }
    .floating-note small { font-size: 8px; }
    .client-strip { align-items: flex-start; flex-direction: column; }
    .client-strip div { justify-content: flex-start; gap: 10px; flex-wrap: wrap; }
    .section { padding: 76px 0; }
    .section-heading { margin-bottom: 38px; }
    .section-heading h2, .approach-copy h2, .details-copy h2 { font-size: 41px; }
    .bento-grid { grid-template-columns: 1fr; }
    .bento-card { min-height: 340px; padding: 27px; border-radius: 25px; }
    .bento-large, .bento-wide { grid-column: auto; grid-template-columns: 1fr; }
    .bento-large { min-height: auto; }
    .contact-preview { margin-top: 15px; padding: 20px; }
    .bento-wide { gap: 16px; }
    .mini-pipeline { height: 150px; }
    .approach-grid { gap: 45px; }
    .process-list li { grid-template-columns: 82px 1fr; gap: 16px; }
    .details-visual { min-height: 390px; }
    .security-orbit { width: 300px; height: 300px; }
    .check-grid { grid-template-columns: 1fr; }
    .plans { padding-bottom: 88px; }
    .plan-card { padding: 28px; }
    .request-section { padding-top: 0; }
    .request-card { width: 100%; padding: 50px 15px 15px; border-radius: 0; }
    .request-card-form-hidden { padding-bottom: 50px; }
    .request-copy { padding-inline: 6px; }
    .request-copy h2 { font-size: 39px; }
    .lead-form { padding: 24px 18px; border-radius: 22px; }
    .form-row { grid-template-columns: 1fr; }
    .footer-top { grid-template-columns: 1fr; gap: 25px; }
    .footer-top nav { grid-column: auto; }
    .footer-bottom { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 390px) {
    .brand { font-size: 16px; }
    .hero-points { grid-template-columns: 1fr; }
    .app-content { padding-inline: 9px; }
    .metric-card { padding: 7px; }
    .fake-row { grid-template-columns: 1.3fr .8fr; }
    .fake-row > span:nth-child(2) { display: none; }
    .pipeline > div:nth-child(3) { display: none; }
    .pipeline { grid-template-columns: 1fr 1fr; }
    .section-heading h2, .approach-copy h2, .details-copy h2 { font-size: 36px; }
    .security-orbit { width: 270px; height: 270px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }

    .reveal { opacity: 1; transform: none; }
}
