/* Self-hosted fonts — Source Sans Pro (SIL OFL), latin-ext for Romanian diacritics */
@font-face {font-family:"Source Sans Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-pro-400-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face {font-family:"Source Sans Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-pro-400-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:"Source Sans Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-sans-pro-700-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face {font-family:"Source Sans Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-sans-pro-700-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:"Playfair Display";font-style:normal;font-weight:600 700;font-display:swap;src:url("../fonts/playfair-display-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face {font-family:"Playfair Display";font-style:normal;font-weight:600 700;font-display:swap;src:url("../fonts/playfair-display-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face {font-family:"Dancing Script";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/dancing-script-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face {font-family:"Dancing Script";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/dancing-script-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
*, ::before, ::after {--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246/0.5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
  ::backdrop {--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246/0.5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
  *, ::before, ::after {box-sizing: border-box;border-width: 0;border-style: solid;border-color: #e5e7eb}
  ::before, ::after {--tw-content: ""}
  html, :host {line-height: 1.5;-webkit-text-size-adjust: 100%;tab-size: 4;font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-feature-settings: normal;font-variation-settings: normal;-webkit-tap-highlight-color: transparent}
  body {line-height: inherit}
  a {color: inherit;text-decoration: inherit}
  button, input, textarea {font-family: inherit;font-feature-settings: inherit;font-variation-settings: inherit;font-size: 100%;font-weight: inherit;line-height: inherit;letter-spacing: inherit;color: inherit;margin: 0;padding: 0}
  button {text-transform: none}
  button {-webkit-appearance: button;background-color: transparent;background-image: none}
  :-moz-focusring {outline: auto}
  :-moz-ui-invalid {box-shadow: none}
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {height: auto}
  ::-webkit-search-decoration {-webkit-appearance: none}
  ::-webkit-file-upload-button {-webkit-appearance: button;font: inherit}
  h1, h2, h3, h4, p {margin: 0}
  ul {list-style: none;margin: 0;padding: 0}
  input::placeholder, textarea::placeholder {opacity: 1;color: #9ca3af}
  button {cursor: pointer}
  :disabled {cursor: default}
  img, svg, iframe {display: block;vertical-align: middle}
  img {max-width: 100%}
  :root {--background: 0 0% 100%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--popover: 0 0% 100%;--popover-foreground: 222 47% 11%;--primary: 271 81% 47%;--primary-foreground: 0 0% 100%;--secondary: 270 50% 97%;--secondary-foreground: 271 81% 47%;--muted: 210 40% 96%;--muted-foreground: 215 16% 47%;--accent: 270 50% 97%;--accent-foreground: 271 81% 47%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 98%;--border: 214 32% 91%;--input: 214 32% 91%;--ring: 271 81% 47%;--chart-1: 271 81% 47%;--chart-2: 84 81% 44%;--chart-3: 24 94% 53%;--chart-4: 330 81% 60%;--chart-5: 271 91% 65%;--radius: 0.75rem}
  * {border-color: hsl(var(--border))}
  body {background-color: hsl(var(--background));color: hsl(var(--foreground))}
  .fixed {position: fixed}
  .absolute {position: absolute}
  .relative {position: relative}
  .inset-0 {inset: 0px}
  .-left-40 {left: -10rem}
  .-right-40 {right: -10rem}
  .-top-40 {top: -10rem}
  .bottom-0 {bottom: 0px}
  .left-0 {left: 0px}
  .right-0 {right: 0px}
  .top-0 {top: 0px}
  .z-10 {z-index: 10}
  .z-50 {z-index: 50}
  .order-1 {order: 1}
  .order-2 {order: 2}
  .mx-auto {margin-left: auto;margin-right: auto}
  .mb-1 {margin-bottom: 0.25rem}
  .mb-12 {margin-bottom: 3rem}
  .mb-16 {margin-bottom: 4rem}
  .mb-2 {margin-bottom: 0.5rem}
  .mb-3 {margin-bottom: 0.75rem}
  .mb-4 {margin-bottom: 1rem}
  .mb-6 {margin-bottom: 1.5rem}
  .mb-8 {margin-bottom: 2rem}
  .ml-2 {margin-left: 0.5rem}
  .mt-8 {margin-top: 2rem}
  .mt-1 {margin-top: 0.25rem}
  .block {display: block}
  .flex {display: flex}
  .inline-flex {display: inline-flex}
  .grid {display: grid}
  .hidden {display: none}
  .aspect-\[4\/5\] {aspect-ratio: 4/5}
  .aspect-square {aspect-ratio: 1/1}
  .h-10 {height: 2.5rem}
  .h-12 {height: 3rem}
  .h-14 {height: 3.5rem}
  .h-16 {height: 4rem}
  .h-20 {height: 5rem}
  .h-3 {height: 0.75rem}
  .h-4 {height: 1rem}
  .h-5 {height: 1.25rem}
  .h-6 {height: 1.5rem}
  .h-8 {height: 2rem}
  .h-9 {height: 2.25rem}
  .h-\[1px\] {height: 1px}
  .h-auto {height: auto}
  .min-h-\[60px\] {min-height: 60px}
  .min-h-screen {min-height: 100vh}
  .w-10 {width: 2.5rem}
  .w-12 {width: 3rem}
  .w-14 {width: 3.5rem}
  .w-3 {width: 0.75rem}
  .w-4 {width: 1rem}
  .w-5 {width: 1.25rem}
  .w-6 {width: 1.5rem}
  .w-8 {width: 2rem}
  .w-auto {width: auto}
  .w-full {width: 100%}
  .max-w-2xl {max-width: 42rem}
  .max-w-7xl {max-width: 80rem}
  .max-w-xl {max-width: 36rem}
  .flex-shrink-0 {flex-shrink: 0}
  .-rotate-3 {--tw-rotate: -3deg}
  .rotate-3 {--tw-rotate: 3deg}
  .scale-105 {--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  .transform {transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  @keyframes pulse {
    50% {opacity: .5}
  }
  .resize-none {resize: none}
  .flex-col {flex-direction: column}
  .items-start {align-items: flex-start}
  .items-center {align-items: center}
  .items-baseline {align-items: baseline}
  .justify-center {justify-content: center}
  .justify-between {justify-content: space-between}
  .gap-1 {gap: 0.25rem}
  .gap-12 {gap: 3rem}
  .gap-2 {gap: 0.5rem}
  .gap-4 {gap: 1rem}
  .gap-6 {gap: 1.5rem}
  .gap-8 {gap: 2rem}
  .space-y-3 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(0.75rem * var(--tw-space-y-reverse))}
  .space-y-4 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(1rem * var(--tw-space-y-reverse))}
  .space-y-5 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(1.25rem * var(--tw-space-y-reverse))}
  .space-y-6 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(1.5rem * var(--tw-space-y-reverse))}
  .overflow-hidden {overflow: hidden}
  .whitespace-nowrap {white-space: nowrap}
  .rounded-2xl {border-radius: 1rem}
  .rounded-3xl {border-radius: 1.5rem}
  .rounded-\[2\.5rem\] {border-radius: 2.5rem}
  .rounded-\[3rem\] {border-radius: 3rem}
  .rounded-full {border-radius: 9999px}
  .rounded-lg {border-radius: var(--radius)}
  .rounded-xl {border-radius: 0.75rem}
  .border {border-width: 1px}
  .border-0 {border-width: 0px}
  .border-2 {border-width: 2px}
  .border-b {border-bottom-width: 1px}
  .border-t {border-top-width: 1px}
  .border-purple-100 {--tw-border-opacity: 1;border-color: rgb(243 232 255/var(--tw-border-opacity, 1))}
  .border-purple-200 {--tw-border-opacity: 1;border-color: rgb(233 213 255/var(--tw-border-opacity, 1))}
  .border-purple-50 {--tw-border-opacity: 1;border-color: rgb(250 245 255/var(--tw-border-opacity, 1))}
  .border-slate-100 {--tw-border-opacity: 1;border-color: rgb(241 245 249/var(--tw-border-opacity, 1))}
  .border-slate-800 {--tw-border-opacity: 1;border-color: rgb(30 41 59/var(--tw-border-opacity, 1))}
  .border-transparent {border-color: transparent}
  .bg-purple-100 {--tw-bg-opacity: 1;background-color: rgb(243 232 255/var(--tw-bg-opacity, 1))}
  .bg-purple-50\/50 {background-color: rgb(250 245 255/0.5)}
  .bg-purple-700 {--tw-bg-opacity: 1;background-color: rgb(126 34 206/var(--tw-bg-opacity, 1))}
  .bg-slate-50 {--tw-bg-opacity: 1;background-color: rgb(248 250 252/var(--tw-bg-opacity, 1))}
  .bg-slate-800 {--tw-bg-opacity: 1;background-color: rgb(30 41 59/var(--tw-bg-opacity, 1))}
  .bg-slate-900 {--tw-bg-opacity: 1;background-color: rgb(15 23 42/var(--tw-bg-opacity, 1))}
  .bg-white {--tw-bg-opacity: 1;background-color: rgb(255 255 255/var(--tw-bg-opacity, 1))}
  .bg-white\/90 {background-color: rgb(255 255 255/0.9)}
  .bg-purple-400 {--tw-bg-opacity: 1;background-color: rgb(192 132 252/var(--tw-bg-opacity, 1))}
  .bg-gradient-to-br {background-image: linear-gradient(to bottom right, var(--tw-gradient-stops))}
  .from-green-200 {--tw-gradient-from: #bbf7d0 var(--tw-gradient-from-position);--tw-gradient-to: rgb(187 247 208/0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}
  .from-purple-200 {--tw-gradient-from: #e9d5ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(233 213 255/0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}
  .from-purple-300 {--tw-gradient-from: #d8b4fe var(--tw-gradient-from-position);--tw-gradient-to: rgb(216 180 254/0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}
  .to-purple-100 {--tw-gradient-to: #f3e8ff var(--tw-gradient-to-position)}
  .to-purple-200 {--tw-gradient-to: #e9d5ff var(--tw-gradient-to-position)}
  .object-cover {object-fit: cover}
  .p-2 {padding: 0.5rem}
  .p-8 {padding: 2rem}
  .px-3 {padding-left: 0.75rem;padding-right: 0.75rem}
  .px-4 {padding-left: 1rem;padding-right: 1rem}
  .px-6 {padding-left: 1.5rem;padding-right: 1.5rem}
  .px-8 {padding-left: 2rem;padding-right: 2rem}
  .py-1 {padding-top: 0.25rem;padding-bottom: 0.25rem}
  .py-2 {padding-top: 0.5rem;padding-bottom: 0.5rem}
  .py-20 {padding-top: 5rem;padding-bottom: 5rem}
  .py-6 {padding-top: 1.5rem;padding-bottom: 1.5rem}
  .pb-8 {padding-bottom: 2rem}
  .pt-16 {padding-top: 4rem}
  .pt-20 {padding-top: 5rem}
  .pt-6 {padding-top: 1.5rem}
  .pt-8 {padding-top: 2rem}
  .text-left {text-align: left}
  .text-center {text-align: center}
  .text-2xl {font-size: 1.5rem;line-height: 2rem}
  .text-3xl {font-size: 1.875rem;line-height: 2.25rem}
  .text-4xl {font-size: 2.25rem;line-height: 2.5rem}
  .text-base {font-size: 1rem;line-height: 1.5rem}
  .text-lg {font-size: 1.125rem;line-height: 1.75rem}
  .text-sm {font-size: 0.875rem;line-height: 1.25rem}
  .text-xl {font-size: 1.25rem;line-height: 1.75rem}
  .text-\[10px\] {font-size: 10px}
  .font-bold {font-weight: 700}
  .font-medium {font-weight: 500}
  .font-semibold {font-weight: 600}
  .uppercase {text-transform: uppercase}
  .leading-relaxed {line-height: 1.625}
  .leading-tight {line-height: 1.25}
  .tracking-widest {letter-spacing: 0.1em}
  .tracking-\[0\.2em\] {letter-spacing: 0.2em}
  .text-card-foreground {color: hsl(var(--card-foreground))}
  .text-green-600 {--tw-text-opacity: 1;color: rgb(22 163 74/var(--tw-text-opacity, 1))}
  .text-purple-600 {--tw-text-opacity: 1;color: rgb(147 51 234/var(--tw-text-opacity, 1))}
  .text-purple-700 {--tw-text-opacity: 1;color: rgb(126 34 206/var(--tw-text-opacity, 1))}
  .text-slate-400 {--tw-text-opacity: 1;color: rgb(148 163 184/var(--tw-text-opacity, 1))}
  .text-slate-500 {--tw-text-opacity: 1;color: rgb(100 116 139/var(--tw-text-opacity, 1))}
  .text-slate-600 {--tw-text-opacity: 1;color: rgb(71 85 105/var(--tw-text-opacity, 1))}
  .text-slate-700 {--tw-text-opacity: 1;color: rgb(51 65 85/var(--tw-text-opacity, 1))}
  .text-slate-900 {--tw-text-opacity: 1;color: rgb(15 23 42/var(--tw-text-opacity, 1))}
  .text-white {--tw-text-opacity: 1;color: rgb(255 255 255/var(--tw-text-opacity, 1))}
  .opacity-40 {opacity: 0.4}
  .opacity-50 {opacity: 0.5}
  .opacity-60 {opacity: 0.6}
  .shadow {--tw-shadow: 0 1px 3px 0 rgb(0 0 0/0.1), 0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .shadow-2xl {--tw-shadow: 0 25px 50px -12px rgb(0 0 0/0.25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .shadow-lg {--tw-shadow: 0 10px 15px -3px rgb(0 0 0/0.1), 0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .shadow-sm {--tw-shadow: 0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .shadow-xl {--tw-shadow: 0 20px 25px -5px rgb(0 0 0/0.1), 0 8px 10px -6px rgb(0 0 0/0.1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .backdrop-blur-md {--tw-backdrop-blur: blur(12px);backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
  .transition-all {transition-property: all;transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);transition-duration: 150ms}
  .transition-colors {transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);transition-duration: 150ms}
  .delay-100 {transition-delay: 100ms}
  .delay-200 {transition-delay: 200ms}
  .delay-300 {transition-delay: 300ms}
  .footer-social-only {justify-content: flex-end}
  .duration-300 {transition-duration: 300ms}
  @keyframes enter {
    from {opacity: var(--tw-enter-opacity, 1);transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}
  }
  @keyframes exit {
    to {opacity: var(--tw-exit-opacity, 1);transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}
  }
  .duration-300 {animation-duration: 300ms}
  :root {--primary: 271 81% 47%;--primary-light: 271 91% 65%;--primary-dark: 271 84% 33%;--secondary: 84 81% 44%;--secondary-light: 82 78% 95%;--accent-orange: 24 94% 53%;--accent-pink: 330 81% 60%}
  body {margin: 0;font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;scroll-behavior: smooth}
  h1, h2, h3, h4 {font-family: "Playfair Display", serif}
  .font-accent {font-family: "Dancing Script", cursive}
  ::-webkit-scrollbar {width: 8px}
  ::-webkit-scrollbar-track {background: #faf5ff}
  ::-webkit-scrollbar-thumb {background: #a855f7;border-radius: 4px}
  ::-webkit-scrollbar-thumb:hover {background: #7e22ce}
  html {scroll-behavior: smooth}
  @keyframes fadeInUp {
    from {opacity: 0;transform: translateY(30px)}
    to {opacity: 1;transform: translateY(0)}
  }
  @keyframes float {
    0%, 100% {transform: translateY(0)}
    50% {transform: translateY(-10px)}
  }
  @keyframes pulse-soft {
    0%, 100% {opacity: 1}
    50% {opacity: 0.8}
  }
  .animate-fade-in-up {animation: fadeInUp 0.6s ease-out both}
  .delay-100 {animation-delay: 100ms}
  .delay-200 {animation-delay: 200ms}
  .delay-300 {animation-delay: 300ms}
  .delay-400 {animation-delay: 400ms}
  .grain-overlay::before {content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;background-image: url('../images/grain.svg');opacity: 0.03;pointer-events: none;z-index: 1}
  .blob {border-radius: 42% 58% 70% 30%/45% 45% 55% 55%;animation: blob-morph 8s ease-in-out infinite}
  @keyframes blob-morph {
    0%, 100% {border-radius: 42% 58% 70% 30%/45% 45% 55% 55%}
    25% {border-radius: 58% 42% 30% 70%/55% 45% 55% 45%}
    50% {border-radius: 70% 30% 58% 42%/45% 55% 45% 55%}
    75% {border-radius: 30% 70% 42% 58%/55% 45% 55% 45%}
  }
  .file\:border-0::file-selector-button {border-width: 0px}
  .file\:bg-transparent::file-selector-button {background-color: transparent}
  .file\:text-sm::file-selector-button {font-size: 0.875rem;line-height: 1.25rem}
  .file\:font-medium::file-selector-button {font-weight: 500}
  .file\:text-foreground::file-selector-button {color: hsl(var(--foreground))}
  .placeholder\:text-muted-foreground::placeholder {color: hsl(var(--muted-foreground))}
  .after\:absolute::after {content: var(--tw-content);position: absolute}
  .after\:inset-y-0::after {content: var(--tw-content);top: 0px;bottom: 0px}
  .after\:left-1\/2::after {content: var(--tw-content);left: 50%}
  .after\:w-1::after {content: var(--tw-content);width: 0.25rem}
  .after\:-translate-x-1\/2::after {content: var(--tw-content);--tw-translate-x: -50%;transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  .focus-within\:relative:focus-within {position: relative}
  .focus-within\:z-20:focus-within {z-index: 20}
  .hover\:-translate-y-1:hover {--tw-translate-y: -0.25rem;transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  .hover\:border-purple-200:hover {--tw-border-opacity: 1;border-color: rgb(233 213 255/var(--tw-border-opacity, 1))}
  .hover\:bg-accent:hover {background-color: hsl(var(--accent))}
  .hover\:bg-destructive\/80:hover {background-color: hsl(var(--destructive)/0.8)}
  .hover\:bg-destructive\/90:hover {background-color: hsl(var(--destructive)/0.9)}
  .hover\:bg-muted:hover {background-color: hsl(var(--muted))}
  .hover\:bg-muted\/50:hover {background-color: hsl(var(--muted)/0.5)}
  .hover\:bg-primary:hover {background-color: hsl(var(--primary))}
  .hover\:bg-primary\/80:hover {background-color: hsl(var(--primary)/0.8)}
  .hover\:bg-primary\/90:hover {background-color: hsl(var(--primary)/0.9)}
  .hover\:bg-purple-50:hover {--tw-bg-opacity: 1;background-color: rgb(250 245 255/var(--tw-bg-opacity, 1))}
  .hover\:bg-purple-700:hover {--tw-bg-opacity: 1;background-color: rgb(126 34 206/var(--tw-bg-opacity, 1))}
  .hover\:bg-purple-800:hover {--tw-bg-opacity: 1;background-color: rgb(107 33 168/var(--tw-bg-opacity, 1))}
  .hover\:bg-secondary:hover {background-color: hsl(var(--secondary))}
  .hover\:bg-secondary\/80:hover {background-color: hsl(var(--secondary)/0.8)}
  .hover\:text-accent-foreground:hover {color: hsl(var(--accent-foreground))}
  .hover\:text-foreground:hover {color: hsl(var(--foreground))}
  .hover\:text-muted-foreground:hover {color: hsl(var(--muted-foreground))}
  .hover\:text-primary-foreground:hover {color: hsl(var(--primary-foreground))}
  .hover\:text-purple-400:hover {--tw-text-opacity: 1;color: rgb(192 132 252/var(--tw-text-opacity, 1))}
  .hover\:text-purple-700:hover {--tw-text-opacity: 1;color: rgb(126 34 206/var(--tw-text-opacity, 1))}
  .hover\:underline:hover {text-decoration-line: underline}
  .hover\:opacity-100:hover {opacity: 1}
  .hover\:shadow-2xl:hover {--tw-shadow: 0 25px 50px -12px rgb(0 0 0/0.25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .hover\:shadow-md:hover {--tw-shadow: 0 4px 6px -1px rgb(0 0 0/0.1), 0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
  .hover\:shadow-purple-200:hover {--tw-shadow-color: #e9d5ff;--tw-shadow: var(--tw-shadow-colored)}
  .focus\:border-purple-300:focus {--tw-border-opacity: 1;border-color: rgb(216 180 254/var(--tw-border-opacity, 1))}
  .focus\:bg-accent:focus {background-color: hsl(var(--accent))}
  .focus\:bg-primary:focus {background-color: hsl(var(--primary))}
  .focus\:bg-white:focus {--tw-bg-opacity: 1;background-color: rgb(255 255 255/var(--tw-bg-opacity, 1))}
  .focus\:text-accent-foreground:focus {color: hsl(var(--accent-foreground))}
  .focus\:text-primary-foreground:focus {color: hsl(var(--primary-foreground))}
  .focus\:opacity-100:focus {opacity: 1}
  .focus\:outline-none:focus {outline: 2px solid transparent;outline-offset: 2px}
  .focus\:ring-1:focus {--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}
  .focus\:ring-2:focus {--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}
  .focus\:ring-ring:focus {--tw-ring-color: hsl(var(--ring))}
  .focus\:ring-offset-2:focus {--tw-ring-offset-width: 2px}
  .focus-visible\:outline-none:focus-visible {outline: 2px solid transparent;outline-offset: 2px}
  .focus-visible\:ring-1:focus-visible {--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}
  .focus-visible\:ring-2:focus-visible {--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}
  .focus-visible\:ring-ring:focus-visible {--tw-ring-color: hsl(var(--ring))}
  .focus-visible\:ring-offset-1:focus-visible {--tw-ring-offset-width: 1px}
  .focus-visible\:ring-offset-2:focus-visible {--tw-ring-offset-width: 2px}
  .focus-visible\:ring-offset-background:focus-visible {--tw-ring-offset-color: hsl(var(--background))}
  .disabled\:pointer-events-none:disabled {pointer-events: none}
  .disabled\:cursor-not-allowed:disabled {cursor: not-allowed}
  .disabled\:opacity-50:disabled {opacity: 0.5}
  .group:hover .group-hover\:opacity-100 {opacity: 1}
  .group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover {border-color: hsl(var(--destructive)/0.3)}
  .group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover {background-color: hsl(var(--destructive))}
  .group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover {color: hsl(var(--destructive-foreground))}
  .group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover {--tw-text-opacity: 1;color: rgb(254 242 242/var(--tw-text-opacity, 1))}
  .group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus {--tw-ring-color: hsl(var(--destructive))}
  .group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus {--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113/var(--tw-ring-opacity, 1))}
  .group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus {--tw-ring-offset-color: #dc2626}
  .peer:disabled ~ .peer-disabled\:cursor-not-allowed {cursor: not-allowed}
  .peer:disabled ~ .peer-disabled\:opacity-70 {opacity: 0.7}
  .has-\[\:disabled\]\:opacity-50:has(:disabled) {opacity: 0.5}
  @keyframes accordion-up {
    from {height: var(--radix-accordion-content-height)}
    to {height: 0}
  }
  @keyframes accordion-down {
    from {height: 0}
    to {height: var(--radix-accordion-content-height)}
  }
  .data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction="vertical"]::after {content: var(--tw-content);left: 0px}
  .data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction="vertical"]::after {content: var(--tw-content);height: 0.25rem}
  .data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction="vertical"]::after {content: var(--tw-content);width: 100%}
  .data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction="vertical"]::after {content: var(--tw-content);--tw-translate-y: -50%;transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  .data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction="vertical"]::after {content: var(--tw-content);--tw-translate-x: 0px;transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
  .data-\[state\=open\]\:hover\:bg-accent:hover[data-state="open"] {background-color: hsl(var(--accent))}
  .data-\[state\=open\]\:focus\:bg-accent:focus[data-state="open"] {background-color: hsl(var(--accent))}
  @media (min-width: 640px) {
    .sm\:flex-row {flex-direction: row}
    .sm\:px-6 {padding-left: 1.5rem;padding-right: 1.5rem}
    .sm\:text-4xl {font-size: 2.25rem;line-height: 2.5rem}
    .sm\:text-5xl {font-size: 3rem;line-height: 1}
    .sm\:text-xl {font-size: 1.25rem;line-height: 1.75rem}
  }
  @media (min-width: 768px) {
    .md\:grid-cols-2 {grid-template-columns:repeat(2, minmax(0, 1fr))}
    .md\:grid-cols-3 {grid-template-columns:repeat(3, minmax(0, 1fr))}
    .md\:flex-row {flex-direction: row}
    .md\:py-32 {padding-top: 8rem;padding-bottom: 8rem}
    .md\:text-sm {font-size: 0.875rem;line-height: 1.25rem}
  }
  @media (min-width: 1024px) {
    .lg\:order-1 {order: 1}
    .lg\:order-2 {order: 2}
    .lg\:flex {display: flex}
    .lg\:hidden {display: none}
    .lg\:grid-cols-2 {grid-template-columns:repeat(2, minmax(0, 1fr))}
    .lg\:grid-cols-3 {grid-template-columns:repeat(3, minmax(0, 1fr))}
    .lg\:grid-cols-4 {grid-template-columns:repeat(4, minmax(0, 1fr))}
    .lg\:gap-20 {gap: 5rem}
    .lg\:px-8 {padding-left: 2rem;padding-right: 2rem}
    .lg\:text-5xl {font-size: 3rem;line-height: 1}
    .lg\:text-6xl {font-size: 3.75rem;line-height: 1}
  }
  .\[\&_svg\]\:pointer-events-none svg {pointer-events: none}
  .\[\&_svg\]\:size-4 svg {width: 1.25rem;height: 1.25rem}
  .\[\&_svg\]\:shrink-0 svg {flex-shrink: 0}

.hero-blob {position: absolute;width: 600px;height: 600px;background: linear-gradient(135deg, rgba(168, 85, 247, 0.15) 0%, rgba(126, 34, 206, 0.1) 100%);filter: blur(60px);z-index: 0}
  .hero-image {object-position: 50% 75%}
  .service-card {transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1)}
  .service-card:hover {transform: translateY(-8px);box-shadow: 0 25px 50px -12px rgba(126, 34, 206, 0.15)}
  .pricing-popular {position: relative;border: 2px solid #7e22ce;overflow: visible}
  .pricing-popular::before {content: "Recomandat";position: absolute;top: -12px;left: 50%;transform: translateX(-50%);background: linear-gradient(135deg, #7e22ce 0%, #a855f7 100%);color: white;padding: 4px 16px;border-radius: 20px;font-size: 12px;font-weight: 600;letter-spacing: 0.5px}
  .btn-shine {position: relative;overflow: hidden}
  .btn-shine::after {content: "";position: absolute;top: -50%;left: -50%;width: 200%;height: 200%;background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.3), transparent);transform: rotate(45deg) translateX(-100%);transition: transform 0.6s}
  .btn-shine:hover::after {transform: rotate(45deg) translateX(100%)}
  .section-divider {height: 2px;background: linear-gradient(90deg, transparent, #e9d5ff, transparent);margin: 0 auto;max-width: 200px}
  .form-input:focus {box-shadow: 0 0 0 4px rgba(168, 85, 247, 0.15)}
  section {opacity: 1;transform: translateY(0);transition: opacity 0.6s ease-out, transform 0.6s ease-out}
  @keyframes logo-pulse {
    0%, 100% {transform: scale(1)}
    50% {transform: scale(1.02)}
  }
  .logo-animate:hover {animation: logo-pulse 1s ease-in-out infinite}
  .nav-link {position: relative}
  .nav-link::after {content: "";position: absolute;bottom: -4px;left: 0;width: 0;height: 2px;background: #7e22ce;transition: width 0.3s ease}
  .nav-link:hover::after {width: 100%}
  .icon-container {display: flex;align-items: center;justify-content: center;width: 64px;height: 64px;background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);border-radius: 20px;transition: all 0.3s ease}
  .service-card:hover .icon-container {background: linear-gradient(135deg, #7e22ce 0%, #a855f7 100%)}
  .service-card:hover .icon-container svg {color: white}
  .pricing-check {display: inline-flex;align-items: center;justify-content: center;width: 20px;height: 20px;background: #dcfce7;border-radius: 50%;margin-right: 12px;flex-shrink: 0}
  .contact-card {background: white;border-radius: 24px;padding: 32px;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);transition: all 0.3s ease}
  .contact-card:hover {box-shadow: 0 8px 40px rgba(126, 34, 206, 0.1)}
  .audience-card {background: linear-gradient(135deg, #faf5ff 0%, #ffffff 100%);border: 1px solid #f3e8ff;border-radius: 16px;padding: 20px 24px;display: flex;align-items: center;gap: 16px;transition: all 0.3s ease}
  .audience-card:hover {border-color: #d8b4fe;transform: translateX(8px)}
  @media (max-width: 768px) {
    .hero-blob {width: 300px;height: 300px}
  }

[data-sonner-toast]:focus-visible {box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 0 0 2px rgba(0, 0, 0, .2)}
  [data-sonner-toast][data-styled=true] [data-button]:focus-visible {box-shadow: 0 0 0 2px rgba(0, 0, 0, .4)}
  [data-sonner-toast][data-styled=true] [data-close-button]:focus-visible {box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 0 0 2px rgba(0, 0, 0, .2)}
  [data-sonner-toast][data-styled=true]:hover [data-close-button]:hover {background: var(--gray2);border-color: var(--gray5)}
  [data-sonner-toast][data-swiping=true]::before {content: "";position: absolute;left: -100%;right: -100%;height: 100%;z-index: -1}
  [data-sonner-toast][data-y-position=top][data-swiping=true]::before {bottom: 50%;transform: scaleY(3) translateY(50%)}
  [data-sonner-toast][data-y-position=bottom][data-swiping=true]::before {top: 50%;transform: scaleY(3) translateY(-50%)}
  [data-sonner-toast][data-swiping=false][data-removed=true]::before {content: "";position: absolute;inset: 0;transform: scaleY(2)}
  [data-sonner-toast][data-expanded=true]::after {content: "";position: absolute;left: 0;height: calc(var(--gap) + 1px);bottom: 100%;width: 100%}
  [data-sonner-toast][data-removed=true][data-front=false]::before {height: calc(var(--initial-height) + 20%)}
  @keyframes swipe-out-left {
    from {transform: var(--y) translateX(var(--swipe-amount-x));opacity: 1}
    to {transform: var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity: 0}
  }
  @keyframes swipe-out-right {
    from {transform: var(--y) translateX(var(--swipe-amount-x));opacity: 1}
    to {transform: var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity: 0}
  }
  @keyframes swipe-out-up {
    from {transform: var(--y) translateY(var(--swipe-amount-y));opacity: 1}
    to {transform: var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity: 0}
  }
  @keyframes swipe-out-down {
    from {transform: var(--y) translateY(var(--swipe-amount-y));opacity: 1}
    to {transform: var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity: 0}
  }
  [data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover {background: var(--normal-bg-hover);border-color: var(--normal-border-hover)}
  @keyframes sonner-fade-in {
    0% {opacity: 0;transform: scale(.8)}
    100% {opacity: 1;transform: scale(1)}
  }
  @keyframes sonner-fade-out {
    0% {opacity: 1;transform: scale(1)}
    100% {opacity: 0;transform: scale(.8)}
  }
  @keyframes sonner-spin {
    0% {opacity: 1}
    100% {opacity: .15}
  }

.sf-hidden {display: none !important}

/* Compatibility utilities used by the PHP-rendered template */
.antialiased {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale}
.overflow-x-hidden {overflow-x: hidden}
.bg-gradient-to-r {background-image: linear-gradient(to right, var(--tw-gradient-stops))}
.from-purple-700 {--tw-gradient-from: #7e22ce var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}
.to-purple-500 {--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}
.bg-clip-text {-webkit-background-clip: text;background-clip: text}
.text-transparent {color: transparent}
.text-slate-300 {--tw-text-opacity: 1;color: rgb(203 213 225 / var(--tw-text-opacity, 1))}
.max-w-3xl {max-width: 48rem}
.max-w-sm {max-width: 24rem}
.mt-6 {margin-top: 1.5rem}
.mt-10 {margin-top: 2.5rem}
.py-3 {padding-top: 0.75rem;padding-bottom: 0.75rem}
.py-4 {padding-top: 1rem;padding-bottom: 1rem}
.py-14 {padding-top: 3.5rem;padding-bottom: 3.5rem}
.gap-3 {gap: 0.75rem}
.gap-10 {gap: 2.5rem}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(0.5rem * var(--tw-space-y-reverse))}
.tracking-wide {letter-spacing: 0.025em}
.border-white\/20 {border-color: rgb(255 255 255 / 0.2)}
.focus\:ring-purple-300:focus {--tw-ring-opacity: 1;--tw-ring-color: rgb(216 180 254 / var(--tw-ring-opacity, 1))}

/* Missing component styles from the original emergent page */
.glass-nav {background: rgba(255, 255, 255, 0.86);backdrop-filter: blur(12px)}
.gradient-button {background: linear-gradient(135deg, #7e22ce 0%, #a855f7 100%);transition: all 0.3s ease;box-shadow: 0 10px 20px rgba(126, 34, 206, 0.18)}
.gradient-button:hover {transform: translateY(-1px);box-shadow: 0 16px 30px rgba(126, 34, 206, 0.24)}
.gradient-button-outline {color: #7e22ce;border: 1px solid rgb(216 180 254);background: rgba(255, 255, 255, 0.85);transition: all 0.3s ease}
.gradient-button-outline:hover {background: #faf5ff}
.pricing-card {transition: all 0.3s ease}
.pricing-card:hover {transform: translateY(-4px);box-shadow: 0 20px 35px rgba(126, 34, 206, 0.12)}
.social-link {display: inline-flex;align-items: center;justify-content: center;width: 40px;height: 40px;border-radius: 9999px;color: #7e22ce;background: #faf5ff;border: 1px solid #f3e8ff;transition: all 0.2s ease}
.social-link:hover {color: #fff;background: #7e22ce;border-color: #7e22ce}
.social-link svg,.icon-container svg {width: 28px;height: 28px;stroke: currentColor;fill: none;stroke-width: 2}
.pricing-check svg {width: 12px;height: 12px;color: #16a34a;stroke: currentColor;fill: none;stroke-width: 2}
#mobile-menu-toggle svg {width: 24px;height: 24px;stroke: currentColor;fill: none}
#mobile-menu-panel a:hover {text-decoration: none}
.mobile-menu-panel {overflow: hidden;max-height: 0;opacity: 0;transform: translateY(-8px);transition: max-height 0.26s ease, opacity 0.2s ease, transform 0.2s ease}
.mobile-menu-panel.is-open {max-height: 28rem;opacity: 1;transform: translateY(0)}
@media (prefers-reduced-motion: reduce) {
  .mobile-menu-panel {transition: none}
}
.footer-contact-icon svg {width: 16px;height: 16px;stroke: currentColor;fill: none;stroke-width: 2}
.footer-social-icon svg {width: 16px;height: 16px;stroke: currentColor;fill: none;stroke-width: 2;color: #ffffff}

details summary {list-style: none}
details summary::-webkit-details-marker {display: none}

@media (min-width: 768px) {
  .md\:text-4xl {font-size: 2.25rem;line-height: 2.5rem}
  .md\:text-5xl {font-size: 3rem;line-height: 1}
  .md\:text-xl {font-size: 1.25rem;line-height: 1.75rem}
}

.gdpr-consent-field {display: flex;align-items: flex-start;gap: 10px;font-size: 0.9rem;color: #475569}
.gdpr-consent-field input[type="checkbox"] {margin-top: 3px;width: 16px;height: 16px;accent-color: #7e22ce}
.gdpr-consent-field a {color: #7e22ce;text-decoration: underline}

.contact-feedback {border: 1px solid;border-radius: 0.75rem;padding: 0.75rem 1rem;font-size: 0.875rem;line-height: 1.5;margin-bottom: 1.25rem}
.contact-feedback-success {background: #ecfdf5;border-color: #a7f3d0;color: #065f46}
.contact-feedback-error {background: #fef2f2;border-color: #fecaca;color: #b91c1c;font-weight: 600}

.contact-success-state {background: #f8fafc;border: 1px solid #e2e8f0;border-radius: 1rem;padding: 1.5rem}
.contact-success-state h3 {margin: 0 0 0.5rem;font-family: "Playfair Display", serif;font-size: 1.5rem;line-height: 1.3;color: #0f172a}
.contact-success-state p {margin: 0;color: #334155;line-height: 1.6}

.footer-legal-links {display: flex;align-items: center;gap: 14px}
.footer-legal-links a,
.cookie-settings-trigger {color: #94a3b8;font-size: 0.875rem;transition: color 0.2s ease}
.footer-legal-links a:hover,
.cookie-settings-trigger:hover {color: #c084fc}
.cookie-settings-trigger {background: transparent;border: 0;padding: 0}

.cookie-consent-banner {position: fixed;left: 0;right: 0;bottom: 0;z-index: 70;padding: 12px}
.cookie-consent-content {max-width: 1024px;margin: 0 auto;background: #ffffff;border: 1px solid #e9d5ff;border-radius: 18px;box-shadow: 0 20px 50px rgba(15, 23, 42, 0.18);padding: 16px 18px;display: flex;flex-direction: column;gap: 14px}
.cookie-consent-content p {margin: 0;font-size: 0.95rem;line-height: 1.5;color: #334155}
.cookie-consent-content a {color: #7e22ce;text-decoration: underline}
.cookie-consent-actions {display: flex;justify-content: flex-end;gap: 10px;flex-wrap: wrap}
.cookie-btn {border-radius: 9999px;padding: 10px 18px;border: 1px solid transparent;font-size: 0.875rem;font-weight: 600;transition: all 0.2s ease}
.cookie-btn-accept {background: #7e22ce;color: #ffffff}
.cookie-btn-accept:hover {background: #6b21a8}
.cookie-btn-decline {background: #ffffff;color: #475569;border-color: #cbd5e1}
.cookie-btn-decline:hover {background: #f8fafc}

.cookie-consent-banner.is-visible {animation: cookieSlideUp 0.25s ease-out}
@keyframes cookieSlideUp {
  from {transform: translateY(20px);opacity: 0}
  to {transform: translateY(0);opacity: 1}
}

@media (max-width: 768px) {
  .cookie-consent-actions {justify-content: stretch}
  .cookie-btn {width: 100%;text-align: center}
  .footer-legal-links {order: 2}
}
