/* daylightapp.app in the Daylight app's own look (WEBSITE-DAYLIGHT-GA-004): warm paper,
   ink text, lilac accents, DM Sans with Fraunces headings, white rounded cards. Colours,
   radii and fonts are the app's (daylight-app app/globals.css; fonts from production-web).
   Loaded after site.css on every Daylight page; every rule hangs off body.theme-daylight. */
@font-face { font-family: "Daylight DM Sans"; src: url("/_front/fonts/dm-sans.woff2") format("woff2"); font-display: swap; font-style: normal; font-weight: 100 1000; }
@font-face { font-family: "Daylight Fraunces"; src: url("/_front/fonts/fraunces.woff2") format("woff2"); font-display: swap; font-style: normal; font-weight: 100 900; }

.theme-daylight {
  --font-sans: "Daylight DM Sans", Arial, sans-serif;
  --font-serif: "Daylight Fraunces", Georgia, serif;
  --background: #fffdf9;
  --foreground: #20243b;
  --ink: #20243b;
  --muted: #5f6273;
  --faint: #6b6f82;
  --border: #e9eaf0;
  --surface: #ffffff;
  --violet: #7064d3;
  --violet-rgb: 112, 100, 211;
  --violet-bright: #5f56ae;
  --lilac: #f3f1ff;
  --mint: #43ba88;
  background-image: none;
}
.theme-daylight ::selection { background: #e6e1ff; color: var(--ink); }
.theme-daylight a { color: var(--violet-bright); }

/* Header and footer: the app's top bar, lowercase wordmark and its icon. */
.theme-daylight .site-header { background: rgba(255, 253, 249, .86); border-bottom-color: var(--border); }
.theme-daylight .brand { color: var(--ink); font-size: 20px; font-weight: 800; letter-spacing: -.7px; text-transform: lowercase; }
.theme-daylight .brand-mark {
  width: 26px; height: 26px; border: 0; border-radius: 7px; font-size: 0; color: transparent;
  background: #181b2c url("/_front/daylight-icon.svg") center / cover no-repeat;
}
.theme-daylight .site-header nav a { color: var(--muted); font-size: 14px; font-weight: 700; }
.theme-daylight .site-footer { background: transparent; border-top-color: var(--border); color: var(--faint); }
.theme-daylight .site-footer a { color: var(--faint); }

/* Type: Fraunces headlines, DM Sans for everything else. */
.theme-daylight h1, .theme-daylight h2 { font-family: var(--font-serif); font-weight: 500; letter-spacing: -.03em; color: var(--ink); }
.theme-daylight h1 { line-height: 1.02; }
.theme-daylight h2 { font-size: clamp(26px, 3.4vw, 36px); line-height: 1.1; }
.theme-daylight p, .theme-daylight li { color: var(--muted); }
.theme-daylight .lede { color: var(--ink); opacity: 1; }
.theme-daylight .badge { background: var(--lilac); border-color: #e3e0ef; color: #514a9d; }
.theme-daylight .badge::before { background: var(--mint); box-shadow: 0 0 0 4px #e0f5eb; }

/* Buttons: the app's ink button and its outlined one. */
.theme-daylight .button-link { min-height: 46px; padding: 0 20px; border-radius: 11px; background: var(--ink); color: #fff; font-weight: 800; font-size: 14px; }
.theme-daylight .button-link:hover { background: #393e59; }
.theme-daylight .button-link--quiet { background: #fff; border: 1px solid #dcd9e9; color: #4b4490; }
.theme-daylight .button-link--quiet:hover { background: var(--lilac); border-color: #aaa3df; }
.theme-daylight :focus-visible { outline-color: var(--violet); }

/* Hero: copy left, an example day card (the app's ring and goal bars) right. */
.theme-daylight .dl-hero { display: grid; gap: 40px; align-items: center; margin: 0 auto; }
.theme-daylight .dl-hero .badge { margin-bottom: 20px; }
.theme-daylight .dl-hero h1 { font-size: clamp(38px, 6vw, 62px); margin-bottom: 18px; text-wrap: balance; }
.theme-daylight .dl-hero .lede { margin: 0; max-width: 520px; font-size: 18px; line-height: 1.6; color: var(--muted); }
.theme-daylight .dl-hero .cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.theme-daylight .dl-hero .fine { margin: 20px 0 0; max-width: 520px; font-size: 13px; color: var(--faint); }
@media (min-width: 900px) { .theme-daylight .dl-hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 56px; } }

.theme-daylight .dl-example { padding: 26px; border: 1px solid var(--border); border-radius: 20px; background: #fff; box-shadow: 0 8px 24px #34386208; }
.theme-daylight .dl-eyebrow { margin: 0 0 8px; color: #6d67ad; font-size: 10px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; }
.theme-daylight .dl-example-top { display: flex; align-items: center; gap: 22px; }
.theme-daylight .dl-ring {
  flex: 0 0 auto; width: 120px; height: 120px; border-radius: 50%; display: grid; place-items: center;
  background: conic-gradient(#8175e8 0 33.33%, #3c8dff 0 58.33%, #3ebf8a 0 75%, #e575a8 0 79.17%, #f3a553 0 100%);
}
.theme-daylight .dl-ring > div { width: 101px; height: 101px; border-radius: 50%; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.theme-daylight .dl-ring strong { color: var(--ink); font-size: 22px; letter-spacing: -.8px; }
.theme-daylight .dl-ring span { color: var(--faint); font-size: 11px; margin-top: 2px; }
.theme-daylight .dl-example .dl-title { margin: 0; color: var(--ink); font-size: 18px; letter-spacing: -.55px; font-weight: 800; }
.theme-daylight .dl-example-top p { margin: 5px 0 0; font-size: 13px; }
.theme-daylight .dl-example-top .dl-title { margin: 0; }
.theme-daylight .dl-goals { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 15px; }
.theme-daylight .dl-goals li { margin: 0; padding: 0; border: 0; }
.theme-daylight .dl-goal-title { display: flex; align-items: center; gap: 7px; color: var(--ink); font-size: 12px; font-weight: 700; }
.theme-daylight .dl-goal-title i { width: 8px; height: 8px; border-radius: 50%; background: var(--c); flex: 0 0 auto; }
.theme-daylight .dl-goal-title span { margin-left: auto; color: var(--faint); font-weight: 500; }
.theme-daylight .dl-bar { height: 5px; margin-top: 8px; border-radius: 5px; background: #eff0f4; overflow: hidden; }
.theme-daylight .dl-bar b { display: block; height: 100%; border-radius: inherit; background: var(--c); }
.theme-daylight .dl-note { margin: 18px 0 0; font-size: 11px; color: var(--faint); }

/* Sections and cards. */
.theme-daylight .landing .narrow > h2:first-child { margin-top: clamp(64px, 9vw, 112px); }
.theme-daylight .narrow > p { font-size: 16px; }
.theme-daylight .tour { gap: 18px; }
.theme-daylight .tour-group { padding: 24px 26px; border: 1px solid var(--border); border-radius: 20px; background: #fff; box-shadow: 0 8px 24px #34386208; }
.theme-daylight .tour-group h3 { margin: 0 0 12px; color: #6d67ad; font-size: 11px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; }
.theme-daylight .tour-group li { border-top-color: #eff0f4; color: var(--muted); }
.theme-daylight .tour-group strong { color: var(--ink); font-weight: 700; }
.theme-daylight .tour-group p { color: var(--muted); }
.theme-daylight .tour-group .price { color: var(--ink); font-family: var(--font-serif); font-size: 30px; font-weight: 500; letter-spacing: -.03em; }

/* FAQ: the app's hairlines, ink questions. */
.theme-daylight .faq { border-top-color: var(--border); margin-top: 64px; }
.theme-daylight .faq h2 { margin-top: 32px; }
.theme-daylight .faq h3 { color: var(--ink); font-size: 16px; font-weight: 800; }
.theme-daylight .tour.tour--two { max-width: 728px; margin-left: auto; margin-right: auto; }
@media (min-width: 760px) { .theme-daylight .tour.tour--two { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.theme-daylight .kicker { color: #6d67ad; font-family: var(--font-sans); font-size: 11px; font-weight: 800; letter-spacing: 1.5px; }
