.theme-switch {
  position: fixed;
  z-index: 39;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  flex: none;
  width: 78px;
  height: 42px;
  padding: 5px 9px;
  border: 1px solid #dce2ee;
  border-radius: 999px;
  background: #edf1f9;
  color: #5e6c86;
  box-shadow: inset 0 1px 2px rgba(27, 41, 70, .06);
  cursor: pointer;
  transition: background .3s, border-color .3s, box-shadow .3s;
}
.theme-switch::before {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(18, 36, 67, .16);
  transition: transform .32s cubic-bezier(.16, 1, .3, 1), background .3s, box-shadow .3s;
}
.theme-switch .theme-glyph-wrap { position: relative; z-index: 1; display: grid; place-items: center; width: 22px; height: 22px; }
.theme-switch svg { display: block; width: 17px; height: 17px; }
.theme-switch .theme-sun { color: #d7805d; }
.theme-switch .theme-moon { color: #78849c; }
.theme-switch:hover { border-color: #aabbd9; box-shadow: 0 3px 14px rgba(82, 102, 143, .15); }
.theme-switch:focus-visible { outline: 3px solid #8bb5ff; outline-offset: 4px; }

html[data-site-theme='dark'] {
  --bg: #0b1120;
  --navy: #eef2ff;
  --peach: #f0a58e;
  --pink: #dda8d7;
  --blue: #37547f;
  --muted: #aab6cb;
  --line: rgba(187, 203, 233, .17);
  --shadow: 0 16px 38px rgba(0, 0, 0, .26);
  color-scheme: dark;
}
html[data-site-theme='dark'] body { background: var(--bg); color: var(--navy); }
html[data-site-theme='dark'] body::before { background: radial-gradient(ellipse at 78% 0%, rgba(70, 88, 145, .22), transparent 52%), radial-gradient(ellipse at 4% 25%, rgba(122, 65, 119, .12), transparent 46%); }
html[data-site-theme='dark'] ::selection { color: #f5f7ff; background: #745387; }
html[data-site-theme='dark'] ::-webkit-scrollbar-thumb { background: #3a4965; }
html[data-site-theme='dark'] .site-header { background: rgba(20, 29, 47, .88); border-color: #34415b; box-shadow: 0 16px 42px rgba(0, 0, 0, .23); }
html[data-site-theme='dark'] .site-header.is-scrolled { background: rgba(18, 27, 46, .96); box-shadow: 0 18px 42px rgba(0, 0, 0, .34); }
html[data-site-theme='dark'] .brand-mark { background: #0b1932; border: 1px solid #566b94; }
html[data-site-theme='dark'] .desktop-nav a { color: #b6c2d8; }
html[data-site-theme='dark'] .desktop-nav a:hover { color: #fff; }
html[data-site-theme='dark'] .button-dark,
html[data-site-theme='dark'] .header-cta { color: #0b1830; background: #dce6ff; box-shadow: 0 7px 20px rgba(127, 155, 229, .18); }
html[data-site-theme='dark'] .button-dark:hover,
html[data-site-theme='dark'] .header-cta:hover { background: #f3f5ff; box-shadow: 0 9px 24px rgba(160, 179, 238, .28); }
html[data-site-theme='dark'] .button-white { color: #edf2ff; background: #243149; border-color: #465471; box-shadow: 0 7px 19px rgba(0, 0, 0, .15); }
html[data-site-theme='dark'] .button-white:hover { background: #33415d; }
html[data-site-theme='dark'] .button-glass { color: #f7f8ff; background: rgba(21, 31, 52, .65); border-color: rgba(211, 226, 255, .42); }
html[data-site-theme='dark'] .button-glass:hover { background: rgba(38, 51, 78, .92); }
html[data-site-theme='dark'] .menu-toggle,
html[data-site-theme='dark'] .mobile-nav { color: #eaf0ff; background: #1a263e; border-color: #394966; }
html[data-site-theme='dark'] .mobile-nav a:hover { background: #293750; }
html[data-site-theme='dark'] .theme-switch { background: #1c2a43; border-color: #475a7b; color: #8494b1; }
html[data-site-theme='dark'] .theme-switch::before { transform: translateX(36px); background: #364e75; box-shadow: 0 2px 12px rgba(111, 146, 225, .4); }
html[data-site-theme='dark'] .theme-switch .theme-sun { color: #8d9ab0; }
html[data-site-theme='dark'] .theme-switch .theme-moon { color: #fff0c8; }

html[data-site-theme='dark'] .hero-frame { background: #070d1c; }
html[data-site-theme='dark'] .hero-copy,
html[data-site-theme='dark'] .hero-copy h1 { color: #fff; }
html[data-site-theme='dark'] .hero-copy p { color: #dbe4f5; }
html[data-site-theme='dark'] .discipline-strip>span,
html[data-site-theme='dark'] .discipline-strip .icon { color: #a9b7d1; }
html[data-site-theme='dark'] .discipline-strip i { background: #63718c; }
html[data-site-theme='dark'] .soft-amp,
html[data-site-theme='dark'] .muted-heading { color: #8293b4; }
html[data-site-theme='dark'] .category-tabs,
html[data-site-theme='dark'] .example-section-tabs { background: #172239; }
html[data-site-theme='dark'] .category-tabs button[aria-selected='true'],
html[data-site-theme='dark'] .example-section-tabs [role='tab'][aria-selected='true'] { color: #f6f7ff; background: #31415f; box-shadow: 0 3px 12px rgba(0, 0, 0, .24); }
html[data-site-theme='dark'] .category-tabs button:hover,
html[data-site-theme='dark'] .example-section-tabs [role='tab']:hover { background: #283751; }
html[data-site-theme='dark'] .category-tabs button>span { color: #9eaec9; }
html[data-site-theme='dark'] .service-card,
html[data-site-theme='dark'] .benefit,
html[data-site-theme='dark'] .example-card { background: #151f33; border-color: #293752; box-shadow: 0 14px 30px rgba(0, 0, 0, .12); }
html[data-site-theme='dark'] .service-card:hover,
html[data-site-theme='dark'] .example-card:hover { border-color: #946e9c; box-shadow: 0 15px 34px rgba(0, 0, 0, .28); }
html[data-site-theme='dark'] .service-icon,
html[data-site-theme='dark'] .web-icon { color: #afc1e6; background: linear-gradient(145deg, #273652, #1a273f); border-color: #405271; }
html[data-site-theme='dark'] .service-icon-blue { background: linear-gradient(145deg, #2c426b, #1d2d4d); }
html[data-site-theme='dark'] .format-badge { color: #b0bed7; background: #202b42; }
html[data-site-theme='dark'] .format-badge .icon { color: #adc2e9; }
html[data-site-theme='dark'] .is-animated .format-badge { color: #e4bddd; background: #3c2a45; }
html[data-site-theme='dark'] .size-label,
html[data-site-theme='dark'] .variant-name,
html[data-site-theme='dark'] .example-card p { color: #aebbd4; }
html[data-site-theme='dark'] .example-card p strong { color: #f1f4ff; }
html[data-site-theme='dark'] .size-options span { color: #b7c4dc; border-color: #394967; background: #1b2942; }
html[data-site-theme='dark'] .size-options input:checked+span { color: #edf2ff; background: #30456a; border-color: #657caa; }
html[data-site-theme='dark'] .price-options label { background: #1d2940; border-color: #293951; }
html[data-site-theme='dark'] .price-options label:hover { border-color: #7186ae; }
html[data-site-theme='dark'] .price-options label.selected,
html[data-site-theme='dark'] .bot-card-price { color: #f2f5ff; background: #283d61; border-color: #6580ae; }
html[data-site-theme='dark'] .price-options label.selected.motion-option { background: linear-gradient(130deg, #49344f, #2b4168); border-color: #9d78a3; }
html[data-site-theme='dark'] .radio-mark { border-color: #71829d; }
html[data-site-theme='dark'] .selected .radio-mark { color: #0b1830; background: #d8e3ff; border-color: #d8e3ff; }
html[data-site-theme='dark'] .card-order { color: #eaf0ff; background: #1e2c46; border-color: #3a4a67; }
html[data-site-theme='dark'] .card-order::before { background: linear-gradient(105deg, #4c344b, #354365 65%, #294a67); }

html[data-site-theme='dark'] .unique-banner-offer { background: radial-gradient(circle at 87% 8%, rgba(173, 104, 174, .18), transparent 35%) padding-box, linear-gradient(110deg, #231a31, #1e223d 60%, #202a49) padding-box, conic-gradient(from var(--unique-orbit), #674765 0deg, #674765 222deg, #f2a68f 265deg, #c782bd 308deg, #674765 360deg) border-box; box-shadow: 0 18px 40px rgba(0, 0, 0, .22), 0 0 35px rgba(174, 111, 181, .11); }
html[data-site-theme='dark'] .unique-offer-icon { color: #edb7df; background: linear-gradient(145deg, #463150, #2b2b4e); border-color: #765474; }
html[data-site-theme='dark'] .unique-offer-copy p { color: #c5b8ce; }
html[data-site-theme='dark'] .unique-offer-actions .button-white { border-color: #765e7b; }
html[data-site-theme='dark'] .new-badge { color: #ffe2ee; background: linear-gradient(120deg, #7a405d, #5d385d); box-shadow: 0 4px 14px rgba(9, 4, 16, .18); }
html[data-site-theme='dark'] .web-feature { background: linear-gradient(120deg, #382a3c 0%, #252b49 48%, #1a3554 100%); border: 1px solid #4a4768; }
html[data-site-theme='dark'] .web-feature-copy>p,
html[data-site-theme='dark'] .web-offer p,
html[data-site-theme='dark'] .web-keywords { color: #bcc6d9; }
html[data-site-theme='dark'] .web-offer+.web-offer { border-color: rgba(221, 231, 255, .2); }

html[data-site-theme='dark'] .benefit-individual { background: linear-gradient(150deg, #223253, #302a49 60%, #463040); }
html[data-site-theme='dark'] .benefit-copy>.icon,
html[data-site-theme='dark'] .compact-benefit>.icon,
html[data-site-theme='dark'] .detail-art { color: #adc1e3; }
html[data-site-theme='dark'] .detail-art>span:nth-of-type(2) { color: #7088b2; }
html[data-site-theme='dark'] .detail-art>i,
html[data-site-theme='dark'] .process-list li::before { background: #4b5a75; }
html[data-site-theme='dark'] .alignment-line { background: #b27caa; }
html[data-site-theme='dark'] .alignment-line::before,
html[data-site-theme='dark'] .alignment-line::after { background: #1c2b44; border-color: #b27caa; }
html[data-site-theme='dark'] .motion-art>span { color: #b8c9e7; background: linear-gradient(135deg, #40334d, #2d4266); border-color: #5d6587; }
html[data-site-theme='dark'] .motion-art>i { border-color: #65718d; }
html[data-site-theme='dark'] .motion-art>i:nth-child(2) { background: #2a344d; }
html[data-site-theme='dark'] .motion-art>i:nth-child(3) { background: #30405c; }
html[data-site-theme='dark'] .compact-benefit { background: #121d30; border-color: #34435d; }
html[data-site-theme='dark'] .step-number { color: #b6c5df; border-color: #52627e; }
html[data-site-theme='dark'] .type-specimen { --specimen-surface: #1a2944; --specimen-border: #465c7e; --specimen-ink: #e4edff; --specimen-accent: #e6a5bb; --specimen-label-bg: #435a80; --specimen-label-ink: #fff; }
html[data-site-theme='dark'] .type-specimen[data-theme='peach'] { --specimen-surface: #413146; --specimen-border: #805c71; --specimen-ink: #ffe7df; --specimen-accent: #ffc3ae; --specimen-label-bg: #795b69; --specimen-label-ink: #fff1eb; }
html[data-site-theme='dark'] .type-specimen[data-theme='pink'] { --specimen-surface: #3b2c4e; --specimen-border: #75537d; --specimen-ink: #ffeafb; --specimen-accent: #e8abd8; --specimen-label-bg: #684b77; --specimen-label-ink: #fff2ff; }
html[data-site-theme='dark'] .type-specimen[data-theme='blue'] { --specimen-surface: #223a5c; --specimen-border: #5577a4; --specimen-ink: #eaf2ff; --specimen-accent: #a6c9ff; --specimen-label-bg: #435f88; --specimen-label-ink: #eff6ff; }
html[data-site-theme='dark'] .specimen-label,
html[data-site-theme='dark'] .specimen-bottom { color: #b3c1db; }
html[data-site-theme='dark'] .swatch-button[aria-pressed='true']::before { box-shadow: 0 0 0 2px #1a2944, 0 0 0 3px var(--swatch); }

html[data-site-theme='dark'] .contact-card { background: linear-gradient(112deg, #4b3047 0%, #362d49 45%, #203652 100%); border: 1px solid #705777; }
html[data-site-theme='dark'] .contact-content>p,
html[data-site-theme='dark'] .availability-light,
html[data-site-theme='dark'] .copy-row,
html[data-site-theme='dark'] .copy-status { color: #d1d5e5; }
html[data-site-theme='dark'] .contact-wordmark { color: rgba(234, 228, 248, .15); }
html[data-site-theme='dark'] .copy-button { color: #c4d4ed; }
html[data-site-theme='dark'] .copy-button:hover { background: rgba(207, 225, 255, .14); }
html[data-site-theme='dark'] .footer-top>span,
html[data-site-theme='dark'] .footer-bottom { color: #a7b4cb; }

html[data-site-theme='dark'] .example-card[aria-pressed='true'] { border-color: #8fb1e6; box-shadow: 0 0 0 3px rgba(124, 159, 218, .17), 0 15px 34px rgba(0, 0, 0, .25); }
html[data-site-theme='dark'] .open-banner { color: #b5d1ff; }
html[data-site-theme='dark'] .banner-viewport { background: #070d19; }

@media (min-width: 640px) {
  .site-header { width: min(1192px, calc(100% - 150px)); transform: translateX(-45px); }
  .site-header.is-scrolled { width: min(1000px, calc(100% - 150px)); }
}
@media (max-width: 639px) {
  .site-header { margin-bottom: 68px; }
  .site-header { gap: 6px; padding-inline: 10px 8px; }
  .site-header .brand { gap: 6px; font-size: 18px; }
  .site-header .brand-mark { width: 29px; height: 29px; }
  .site-header .brand-mark img { width: 23px; height: 23px; }
  .site-header .header-cta { min-height: 40px; padding-inline: 9px; gap: 4px; font-size: 9px; }
  .site-header .header-cta .icon,
  .site-header .header-cta .order-arrow { width: 12px; height: 12px; }
  .site-header .menu-toggle { width: 36px; height: 40px; }
  .theme-switch { width: 50px; height: 38px; padding-inline: 5px; }
  .theme-switch::before { width: 30px; height: 30px; }
  .theme-switch .theme-glyph-wrap { width: 16px; height: 16px; }
  .theme-switch svg { width: 13px; height: 13px; }
  html[data-site-theme='dark'] .theme-switch::before { transform: translateX(14px); }
}
@media (prefers-reduced-motion: reduce) {
  .theme-switch,
  .theme-switch::before { transition: none; }
}
