/* Warm paper by day, charcoal by night. The lamp is the only animated light source. */
:root {
  --surface: #fffcf2;
  --field-surface: #fffcf260;
  --selected: #e9e1ac;
  --rule: #23241f40;
  --control-line: #76745e;
}
html[data-theme="dark"] {
  color-scheme: dark;
  --paper: #1c1e1a;
  --ink: #ece8d8;
  --orange: #eb976e;
  --muted: #b9b5a5;
  --surface: #292b25;
  --field-surface: #262821;
  --selected: #414233;
  --rule: #e5ddbd40;
  --control-line: #929180;
}
body { transition: background-color .3s, color .3s; }
.masthead { min-height: 145px; }
.header-controls { display: flex; align-items: center; gap: 20px; flex-shrink: 0; }
.theme-control { position: relative; isolation: isolate; }
.theme-toggle { position: relative; display: grid; place-items: center; width: 48px; height: 64px; padding: 0; border: 0; background: transparent; color: var(--ink); -webkit-tap-highlight-color: transparent; }
.theme-toggle::before { content: ''; position: absolute; width: 44px; height: 44px; top: 0; left: 0; z-index: -1; pointer-events: none; border-radius: 50%; background: radial-gradient(circle, #ffc15038 0%, #ffbd3410 43%, transparent 70%); box-shadow: 0 0 24px 12px #ffc15012; }
.sketch-bulb { width: 44px; height: 62px; overflow: visible; transform: rotate(6deg); }
.bulb-glass { fill: #ffdc79; filter: drop-shadow(0 0 6px #e5ad36a0); transition: fill .3s; }
.bulb-filament { stroke: #8f6114; }
.bulb-rays { color: #946217; }
.theme-toggle:hover .sketch-bulb { transform: rotate(0deg); }
.theme-hint { position: absolute; top: 69px; right: 12px; display: block; width: 190px; padding-right: 30px; font: 500 21px/1.03 Caveat, cursive; color: #9e4024; transform: rotate(-6deg); pointer-events: none; text-align: right; }
.theme-hint > svg { position: absolute; width: 48px; height: 42px; right: -13px; top: -23px; }
html[lang="hy"] .theme-hint { font: 400 12px/1.45 var(--sans); }
html[data-theme="dark"] .theme-toggle::before { background: radial-gradient(circle, #ffb95c27 0%, #e6a24513 32%, transparent 70%); box-shadow: 0 0 28px 17px #ffb95c12; animation: lamp-halo 9s ease-in-out infinite; }
html[data-theme="dark"] .bulb-glass { fill: #95714338; filter: drop-shadow(0 0 3px #eda84d42); animation: lamp-ember 9s ease-in-out infinite; }
html[data-theme="dark"] .bulb-filament { stroke: #bc9056; opacity: .72; animation: lamp-ember 9s ease-in-out infinite; }
html[data-theme="dark"] .bulb-outline { color: #b9b3a0; }
html[data-theme="dark"] .bulb-rays { color: #c1995c; opacity: .17; }
html[data-theme="dark"] .theme-hint { color: #d0ae85; }
@keyframes lamp-ember {
  0%, 27%, 42%, 100% { opacity: .7; }
  32%, 38% { opacity: .38; }
  35%, 74% { opacity: .57; }
  82% { opacity: .47; }
}
@keyframes lamp-halo {
  0%, 27%, 42%, 100% { opacity: .8; }
  32%, 38% { opacity: .44; }
  35%, 74% { opacity: .64; }
  82% { opacity: .5; }
}
.field-label { font-size: 13px; font-weight: 500; margin-bottom: 8px; }
.language-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin-top: 18px; }
.website-language { display: flex; align-items: center; gap: 8px; padding: 11px 9px; border: 1px solid var(--control-line); font-size: 12px; cursor: pointer; min-width: 0; }
.website-language input { width: 15px; height: 15px; flex-shrink: 0; accent-color: var(--ink); margin: 0; }
.website-language:has(input:checked) { background: var(--selected); border-color: var(--ink); }
.website-language:focus-within { outline: 2px solid var(--orange); outline-offset: 3px; }
.field-error { color: #a5321c; font-size: 12px; line-height: 1.5; margin-top: 10px; }
.field-error:empty { display: none; }
.launch-services { margin: 24px 0 30px; }
.launch-services h3 { font-size: 16px; font-weight: 600; margin-bottom: 8px; }
.launch-services > p { max-width: 460px; }
.estimate-language-list { font-size: 12px; line-height: 1.6; padding-bottom: 16px; }
.annual-renewal { margin-top: 15px; padding: 12px; border: 1px solid var(--rule); }
.rush-hint { margin-top: 12px; }
/* Adapt existing paper surfaces and their captions together. Images stay unaltered. */
html[data-theme="dark"] .studio-photo, html[data-theme="dark"] .photo-print,
html[data-theme="dark"] .instagram-print, html[data-theme="dark"] .estimate-sheet { background: var(--surface); box-shadow: 5px 7px 0 #080b0855; }
html[data-theme="dark"] .fine-print, html[data-theme="dark"] .instagram-profile p,
html[data-theme="dark"] .choice-content small, html[data-theme="dark"] .field-intro,
html[data-theme="dark"] .feature-choice > small, html[data-theme="dark"] .social-link small,
html[data-theme="dark"] .studio-photo figcaption, html[data-theme="dark"] .embed-placeholder .reset-button:disabled { color: var(--muted); }
html[data-theme="dark"] .field select, html[data-theme="dark"] .field input[type="text"],
html[data-theme="dark"] .field textarea { background: var(--field-surface); border-color: var(--control-line); }
html[data-theme="dark"] .field input::placeholder, html[data-theme="dark"] .field textarea::placeholder { color: var(--muted); }
html[data-theme="dark"] .choice-content { border-color: var(--control-line); }
html[data-theme="dark"] .choice input:checked + .choice-content { background: var(--selected); border-color: var(--ink); }
html[data-theme="dark"] .choice:hover .choice-content { border-color: var(--ink); }
html[data-theme="dark"] #project-form fieldset, html[data-theme="dark"] .instagram-section,
html[data-theme="dark"] .instagram-profile, html[data-theme="dark"] .feature-choice,
html[data-theme="dark"] .social-section { border-color: var(--rule); }
html[data-theme="dark"] .estimate-header, html[data-theme="dark"] .estimate-lines { border-color: var(--control-line); }
html[data-theme="dark"] .step-number, html[data-theme="dark"] .field-error { color: var(--orange); }
html[data-theme="dark"] .language-switch button:hover:not([aria-pressed="true"]) { background: var(--surface); }
html[data-theme="dark"] .button:hover { background: #d7d0b8; }
html[data-theme="dark"] .compare-label { background: var(--surface); color: var(--ink); }
html[data-theme="dark"] .compare-line { background: #ece8d8; }
html[data-theme="dark"] .instagram-embed { background: var(--surface); }
html[data-theme="dark"] .mobile-estimate { background: var(--surface); box-shadow: 0 4px 0 #080b0855; }
@media (min-width: 681px) and (max-width: 1050px) {
  .header-controls { gap: 10px; }
  .masthead { gap: 16px; }
  .masthead nav { gap: 14px; font-size: 12px; }
  .theme-hint { width: 172px; font-size: 19px; }
  .language-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .masthead { min-height: 0; padding-top: 18px; gap: 20px 8px; }
  .header-controls { grid-column: 2; grid-row: 1; gap: 8px; }
  .header-controls .language-switch button { min-width: 31px; padding-inline: 5px; }
  .theme-toggle { width: 40px; height: 54px; }
  .sketch-bulb { width: 37px; height: 53px; }
  .theme-hint { top: 63px; width: 175px; right: 5px; font-size: 19px; }
  .masthead nav { margin-top: 55px; }
  .language-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .website-language { font-size: 13px; padding: 12px; }
  html[lang="hy"] .theme-hint { font-size: 11px; }
}
@media (max-width: 360px) {
  .wordmark { font-size: 29px; }
  .wordmark span { font-size: 39px; }
  .header-controls { gap: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  body, .bulb-glass { transition: none; }
  html[data-theme="dark"] .theme-toggle::before,
  html[data-theme="dark"] .bulb-glass,
  html[data-theme="dark"] .bulb-filament { animation: none; }
}
