@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;background:hsl(var(--background));color:hsl(var(--foreground));font-family:Outfit,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,p{margin:0}main:focus{outline:none}
/* Internal routes and their portalled controls use the home palette. */
.internal-page, body:has(.internal-page) {
  --background: 205.71 87.50% 96.86%; --foreground: 217.50 35.56% 17.65%;
  --card: 0.00 0.00% 100.00%; --card-foreground: 217.50 35.56% 17.65%;
  --popover: 0.00 0.00% 100.00%; --popover-foreground: 217.50 35.56% 17.65%;
  --primary-text: 205.93 41.12% 38.63%;
  --primary: 205.77 86.59% 67.84%; --primary-foreground: 217.50 35.56% 17.65%;
  --secondary: 204.71 85.00% 92.16%; --secondary-foreground: 217.50 35.56% 17.65%;
  --muted: 204.71 85.00% 92.16%; --muted-foreground: 215.38 22.03% 34.71%;
  --accent: 204.71 85.00% 92.16%; --accent-foreground: 217.50 35.56% 17.65%;
  --border: 205.57 85.92% 86.08%; --input: 205.62 86.41% 79.80%; --ring: 205.93 41.12% 38.63%;
  --radius: .75rem;
}
.dark .internal-page, .dark body:has(.internal-page) {
  --background: 222.86 48.28% 11.37%; --foreground: 205.71 87.50% 96.86%;
  --card: 217.50 35.56% 17.65%; --card-foreground: 205.71 87.50% 96.86%;
  --popover: 217.50 35.56% 17.65%; --popover-foreground: 205.71 87.50% 96.86%;
  --primary-text: 205.62 86.41% 79.80%;
  --primary: 205.86 86.57% 73.73%; --primary-foreground: 222.86 48.28% 11.37%;
  --secondary: 215.38 28.47% 26.86%; --secondary-foreground: 205.71 87.50% 96.86%;
  --muted: 215.38 28.47% 26.86%; --muted-foreground: 212.50 29.27% 83.92%;
  --accent: 215.38 28.47% 26.86%; --accent-foreground: 205.71 87.50% 96.86%;
  --border: 215.38 22.03% 34.71%; --input: 215.38 22.03% 34.71%; --ring: 205.62 86.41% 79.80%;
}
.internal-page { min-height:100vh; }
.internal-page #internal-content { outline:none; }
.internal-page .container, .internal-container { width:90%; max-width:1440px; margin-inline:auto; }
.internal-container { padding-block:64px 80px; }
.internal-form-container, .internal-legal-container { max-width:960px; }
.internal-heading { position:relative; text-align:left; padding-bottom:40px; margin-bottom:40px; border-bottom:1px solid hsl(var(--border)); }
.internal-eyebrow { display:block; font-size:11px; letter-spacing:.15em; font-weight:600; color:hsl(var(--muted-foreground)); margin-bottom:20px; }
.internal-page h1 { font-size:clamp(2.5rem,5.5vw,5.5rem); font-weight:500; line-height:1.05; letter-spacing:-.055em; overflow-wrap:anywhere; }
.internal-page h1 em, .internal-footer h2 em { color:hsl(var(--primary-text)); font-style:normal; }
.internal-heading p { max-width:620px; margin-top:24px; font-size:18px; line-height:1.7; color:hsl(var(--muted-foreground)); }
.internal-panel { background:hsl(var(--card)); border:1px solid hsl(var(--border)); border-radius:16px; box-shadow:none; }
.internal-form-panel { padding:32px; }
.internal-note { margin-top:24px!important; text-align:center; font-size:13px; color:hsl(var(--muted-foreground)); }
.internal-page .text-primary { color:hsl(var(--primary-text)); }
.internal-note a, .internal-page .prose a { color:hsl(var(--primary-text)); text-decoration:underline; text-underline-offset:4px; }
.internal-page .prose { color:hsl(var(--foreground)); --tw-prose-body:hsl(var(--foreground)); --tw-prose-headings:hsl(var(--foreground)); --tw-prose-bold:hsl(var(--foreground)); --tw-prose-links:hsl(var(--primary-text)); --tw-prose-bullets:hsl(var(--primary)); }
.internal-page .prose h2 { margin-top:2em; padding-top:1em; border-top:1px solid hsl(var(--border)); font-size:1.5rem; letter-spacing:-.025em; }
.internal-page .prose p, .internal-page .prose li { line-height:1.85; }
.internal-page input:not([type=checkbox]):not([type=radio]), .internal-page textarea, .internal-page [role=combobox] { background:hsl(var(--card)); border-color:hsl(var(--border)); color:hsl(var(--foreground)); border-radius:8px; }
.internal-page input::placeholder, .internal-page textarea::placeholder { color:hsl(var(--muted-foreground)); }
.internal-page :is(button,a,input,textarea,select,[role=combobox]):focus-visible { outline:2px solid hsl(var(--ring)); outline-offset:4px; }
.internal-page button:disabled { cursor:not-allowed; }
.internal-page [class*="shadow"] { box-shadow:none; }
.internal-page [class*="backdrop-blur"] { backdrop-filter:none; }
.internal-page .internal-detail-hero { padding-block:48px; background:hsl(var(--secondary)); border-bottom:1px solid hsl(var(--border)); }
.internal-page .internal-detail-hero h1 { max-width:1100px; font-size:clamp(2.2rem,4.5vw,4.6rem); }
.internal-page .internal-detail-main { padding-block:48px 80px; }
.internal-account { min-height:70vh; }
.internal-page .internal-account h1 { font-size:2.5rem; }
.internal-message { min-height:65vh; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:24px; }
.internal-message p { color:hsl(var(--muted-foreground)); max-width:560px; }
.internal-button { display:inline-flex; align-items:center; padding:16px 24px; border-radius:999px; background:hsl(var(--primary)); color:hsl(var(--primary-foreground))!important; font-weight:500; }
.internal-recovery { text-decoration:underline!important; }
.internal-skip { position:fixed; top:-100px; left:20px; z-index:100; padding:12px 20px; background:hsl(var(--foreground)); color:hsl(var(--background))!important; }
.internal-skip:focus { top:16px; }
.internal-footer { padding:64px 5% 24px; border-top:1px solid hsl(var(--border)); background:hsl(var(--secondary)); }
.internal-footer-top { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.internal-footer h2 { font-size:clamp(2rem,4vw,4rem); font-weight:500; line-height:1.1; letter-spacing:-.045em; }
.internal-footer h2 svg { display:inline; width:1em; height:1em; }
.internal-app-link { display:flex; flex-direction:column; gap:12px; border:1px solid hsl(var(--border)); padding:24px; border-radius:12px; }
.internal-app-link span { font-size:10px; letter-spacing:.12em; color:hsl(var(--muted-foreground)); }
.internal-footer-links { margin-block:48px; padding-block:24px; border-block:1px solid hsl(var(--border)); display:flex; justify-content:space-between; gap:24px; }
.internal-footer nav { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.internal-footer-brand { display:block; width:min(450px,80%); margin-bottom:48px; }
.internal-footer-brand img { width:100%; height:auto; filter:none; }
.dark .internal-footer-brand img { filter:none; }
.internal-footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; font-size:11px; color:hsl(var(--muted-foreground)); }
@media(max-width:640px) {
  .internal-container { padding-block:40px 48px; }
  .internal-heading { padding-bottom:28px; margin-bottom:28px; }
  .internal-heading p { font-size:16px; }
  .internal-form-panel { padding:16px; }
  .internal-footer-top, .internal-footer-links { flex-direction:column; align-items:flex-start; }
  .internal-footer { padding-top:40px; }
  .internal-footer nav { gap:16px; }
  .internal-page .internal-detail-hero { padding-block:32px; }
}
@media(prefers-reduced-motion:reduce) {
  .internal-page *, body:has(.internal-page) [data-radix-popper-content-wrapper] * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

.legal-nav{padding:20px 5%;border-bottom:1px solid hsl(var(--border));display:flex;align-items:center;justify-content:space-between;gap:20px;background:hsl(var(--background));position:sticky;top:0;z-index:10}.legal-nav img{filter:none}.dark .legal-nav img{filter:none}.legal-nav nav{display:flex;gap:24px;align-items:center;font-size:14px}.legal-nav button{border:1px solid hsl(var(--border));border-radius:50%;width:40px;height:40px;color:inherit;background:transparent}.legal-document{padding:40px;overflow-wrap:anywhere}.legal-document p,.legal-document ul{margin-block:16px;line-height:1.85}.legal-document h2{font-size:24px;margin-top:40px;padding-top:24px;border-top:1px solid hsl(var(--border))}.legal-document h3{font-size:20px;margin-top:24px}.legal-document h4{margin-top:20px}.legal-document a{color:hsl(var(--primary-text));text-decoration:underline}@media(max-width:640px){.legal-nav{align-items:flex-start;flex-wrap:wrap}.legal-nav nav{gap:12px;flex-wrap:wrap}.legal-nav .internal-button{padding:10px 14px}.legal-document{padding:20px}}
