:root{--kensa-white: #fefdfb;--kensa-beige-light: #f5f0ea;--kensa-beige: #e8dfd3;--kensa-beige-dark: #c4b49a;--kensa-wood: #a89279;--kensa-charcoal: #3a3a38;--kensa-black: #1a1a19;--color-bg-primary: var(--kensa-white);--color-bg-secondary: var(--kensa-beige-light);--color-bg-accent: var(--kensa-beige);--color-text-primary: var(--kensa-black);--color-text-secondary: var(--kensa-charcoal);--color-text-muted: var(--kensa-wood);--color-border: var(--kensa-beige);--color-border-dark: var(--kensa-beige-dark);--color-accent: var(--kensa-beige);--color-cta: var(--kensa-black);--color-cta-text: var(--kensa-white);--font-heading: "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body: "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--fs-display: clamp(3rem, 8vw, 7rem);--fs-h1: clamp(2.25rem, 5vw, 4rem);--fs-h2: clamp(1.75rem, 3.5vw, 2.75rem);--fs-h3: clamp(1.25rem, 2.5vw, 1.75rem);--fs-body: clamp(1rem, 1.2vw, 1.125rem);--fs-small: clamp(.8125rem, 1vw, .875rem);--fs-caption: .75rem;--lh-heading: 1.1;--lh-body: 1.65;--ls-heading: -.02em;--ls-section-label: .15em;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 10rem;--section-gap: var(--space-3xl);--container-max: 1280px;--container-padding: var(--space-md);--header-height: 80px;--header-height-mobile: 64px;--floating-cta-bottom: 2rem;--floating-cta-right: 2rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-full: 9999px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .2s;--duration-base: .4s;--duration-slow: .8s;--duration-reveal: 1.5s;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-floating-cta: 500;--z-header: 600;--z-mobile-menu: 700}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{min-height:100vh;line-height:var(--lh-body);font-family:var(--font-body);font-weight:var(--fw-regular);color:var(--color-text-secondary);background-color:var(--color-bg-primary)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--color-text-primary)}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;background:none;border:none}.heading-display{font-family:var(--font-heading);font-size:var(--fs-display);font-weight:var(--fw-light);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--color-text-primary)}.heading-1{font-family:var(--font-heading);font-size:var(--fs-h1);font-weight:var(--fw-light);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--color-text-primary)}.heading-2{font-family:var(--font-heading);font-size:var(--fs-h2);font-weight:var(--fw-light);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--color-text-primary)}.heading-3{font-family:var(--font-heading);font-size:var(--fs-h3);font-weight:var(--fw-regular);line-height:1.3;color:var(--color-text-primary)}.body-text{font-family:var(--font-body);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body);color:var(--color-text-secondary)}.body-small{font-family:var(--font-body);font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-body);color:var(--color-text-secondary)}.section-label{font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--ls-section-label);text-transform:uppercase;color:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.section{padding-block:var(--section-gap)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}
