/* Shared public-site palette, aligned with the Dynus project showcase. */
:root {
  --bg: #f5f3eb;
  --ink: #293d4c;
  --muted: #4b6273;
  --line: #d8dfe4;
  --brand-sage: #edf0f2;
  --brand-lavender: #edf0f2;
  --brand-purple: #4b6273;
  --brand-coral: #a36750;
  --brand-lime: #edf0f2;
}
body { background: var(--bg); color: var(--ink); }
::selection { background: var(--brand-lime); color: #293d4c; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, summary:focus-visible { outline: 2px solid #738897; outline-offset: 4px; }
.logo-img { mix-blend-mode: multiply; }
.header.is-scrolled::before { background: #f5f3ebf5; backdrop-filter: blur(12px); }
.site-menu-panel { background: #fbfaf5; border-color: var(--line); box-shadow: 0 12px 30px #293d4c12; }
.site-menu-panel a:hover { background: var(--brand-sage); color: #293d4c; }
.eyebrow { color: #76513d; }
.footer { border-color: var(--line); }
.footer a:hover { color: var(--brand-coral); }
/* Homepage: color follows the story, from possibility to a practical next step. */
.hero { background: radial-gradient(ellipse at 87% 40%, #edf0f2 0, #edf0f270 24%, transparent 60%); }
.hero h1 { color: #4b6273; }
.hero-kicker { color: #80543c !important; }
.hero-link { color: var(--brand-coral); border-color: var(--brand-coral); }
.hero-video { border-radius: 12px; border-color: #d8dfe4; background: #4b6273; box-shadow: 16px 16px 0 #edf0f2; }
.hero-video video { filter: saturate(.85) contrast(1.04) brightness(.78); }
.hero-video::after { background: linear-gradient(180deg, transparent 25%, #293d4cd9); }
.hero-video figcaption span { color: #edf0f2; }
.capability-ticker { border-color: #d8dfe4; }
.capability-ticker article { background: var(--brand-sage); border-color: #d8dfe4; border-radius: 9px; color: #293d4c; }
.capability-ticker article:nth-child(3n+2) { background: var(--brand-lavender); border-color: #d8dfe4; color: #4b6273; }
.capability-ticker article:nth-child(3n) { background: #f5dfd1; border-color: #e8c8b6; color: #784532; }
.capability-ticker article:hover { background: #4b6273; color: #edf0f2; }
.workflow-map { border-radius: 12px; border-color: #d8dfe4; }
.workflow-node { background: #edf0f2; }
.workflow-node:nth-child(2) { background: #edf0f2; }
.workflow-node:nth-child(3) { background: #f5e3d8; }
.workflow-node::before { background: #4b6273; box-shadow: 0 0 0 7px #edf0f2; }
.workflow-node:nth-child(2)::before { background: #738897; box-shadow: 0 0 0 7px #edf0f2; }
.workflow-node:nth-child(3)::before { background: #a36750; box-shadow: 0 0 0 7px #f5e3d8; }
.workflow-node:nth-child(2)>strong { color: #4b6273; }
.workflow-node:nth-child(3)>strong { color: #864c36; }
.impact-story-grid { border-radius: 12px; overflow: hidden; border-color: #d8dfe4; }
.impact-story-card { background: #edf0f2; }
.impact-story-card:last-child { background: #edf0f2; }
.impact-story-card-dark { background: #4b6273; color: #edf0f2; }
.impact-story-card-dark h3 { color: #edf0f2; }
.impact-story-card-dark>span,.impact-story-card-dark .impact-story-label,.impact-story-card-dark>p:not(.impact-story-label),.impact-story-card-dark dt { color: #d8dfe4; }
.pricing-card { background: #4b6273; color: #fff; border-radius: 12px; box-shadow: 12px 12px 0 #edf0f2; }
.pricing-card>p,.pricing-card .pricing-label { color: #edf0f2; }
.pricing-card h3 { color: #f6e6d4; }
.pricing-card::after { border-color: #a9b7c2; }
.contact { border-top-color: #d8dfe4; }
.contact h2 { color: #4b6273; }
.proposal-chat { background: #edf0f2; border-color: #d8dfe4; border-radius: 12px; }
.proposal-mode-toggle { background: #edf0f2; border-color: #d8dfe4; border-radius: 8px; }
.proposal-mode-toggle button.active { background: #4b6273; color: white; }
.chat-message.assistant { background: #fffdf6; border-color: #edf0f2; }
.chat-message.user { background: #edf0f2; color: #4b6273; }
.quick-proposal-form input,.quick-proposal-form textarea { background: #fffdf8; border-color: #d8dfe4; }
.quick-proposal-form button,.chat-form button,.chat-draft,.request-delivery,.booking-form button[type=submit] { background: #4b6273; color: #fff; border-color: #4b6273; }
.proposal-result,.booking-panel { border-color: #d8dfe4; background: #fafcf6; }
/* About: retain editorial typography and bring the people and principles into color. */
.about-hero { background: radial-gradient(ellipse at 95% 35%, #edf0f2, transparent 65%); }
.about-hero h1 { color: #4b6273; }
.about-story h2 { color: #4b6273; }
.about-principles { background: #edf0f2; padding: 2.5rem; border-radius: 12px; border-color: #d8dfe4; }
.about-founder-photo { filter: none; border-radius: 10px; box-shadow: 12px 12px 0 #e7d9c8; }
.team-section>h2 { color: #765039; }
.about-cta { background: #4b6273; border-radius: 12px; }
.about-cta .eyebrow { color: #edf0f2; }
.about-cta h2 { color: #edf0f2; }
.about-cta a { color: #edf0f2; border-color: #d8dfe4; }
/* Scheduling: readable controls and unmistakable selection states. */
.book-header { border-bottom: 1px solid var(--line); }
.book-header>a:last-child { color: #80543c; }
.book-layout aside { background: radial-gradient(ellipse at 25% 30%, #edf0f2, transparent 70%); }
.book-layout h1 em { color: #a36750; }
.meeting-meta span { color: #4b6273; }
.scheduler { background: #edf0f2; border-color: #d8dfe4; box-shadow: 12px 12px 0 #edf0f2; }
.scheduler h2 { color: #4b6273; }
.scheduler button,.scheduler input,.scheduler select { background: #fffdf8; border-color: #d8dfe4; color: #293d4c; }
.scheduler button:not(:disabled):hover { background: #edf0f2; border-color: #738897; }
.scheduler button[aria-pressed=true],.scheduler button[aria-pressed=true]:hover,.scheduler .confirm,.scheduler .confirm:hover { background: #4b6273; border-color: #4b6273; color: #fff; }
#dates button:disabled { background: #edf0f2; color: #738897; border-color: #d8dfe4; }
.scheduler :focus-visible { outline-color: #738897; }
.booking-page { border-top: 5px solid #a9b7c2; padding-top: 2rem; }
.booking-page h1 { color: #4b6273; }
.show-reschedule { background: #4b6273; color: #fff; border-color: #4b6273; }
.cancel-booking { color: #9b382c; }
/* Opportunity intake. */
.onboarding-page { background: var(--bg); color: var(--ink); }
.ad-landing-hero { background: radial-gradient(ellipse at 95% 35%, #edf0f2, transparent 62%); }
.ad-landing-hero-copy h1 { color: #4b6273; }
.ad-landing-proof { border-color: #d8dfe4; background: #edf0f2; padding: 24px; border-radius: 10px; }
.ad-landing-primary { background: #4b6273; border-color: #4b6273; color: white; }
.ad-landing-primary:hover { background: #4b6273; color: white; }
.ad-landing-reel video { filter: saturate(.85); }
.ad-landing-value { background: #4b6273; color: #edf0f2; }
.ad-landing-value .eyebrow,.ad-landing-value-grid span { color: #edf0f2; }
.ad-landing-value-grid p { color: #d8dfe4; }
.ad-landing-value-grid,.ad-landing-value-grid article { border-color: #738897; }
.ad-landing-offer { background: #4b6273; border-radius: 10px; }
.ad-landing-offer span,.ad-landing-offer p { color: #d8dfe4; }
.ad-landing-intake-copy h2 { color: #4b6273; }
.onboarding-form,.onboarding-result,.onboarding-booking { background: #edf0f2; border-color: #d8dfe4; border-radius: 12px; }
.onboarding-form input,.onboarding-form textarea { background: #fffdf8; border-color: #d8dfe4; }
.onboarding-form input:focus,.onboarding-form textarea:focus { border-color: #738897; box-shadow: 0 0 0 1px #738897; }
.onboarding-form .app-primary,.onboarding-result .app-primary { background: #4b6273; color: #fff; border-color: #4b6273; }
.ad-landing-close { background: #edf0f2; color: #4b6273; }
.ad-landing-primary.light { color: #4b6273; border-color: #738897; }
.ad-landing-primary.light:hover { background: #4b6273; color: white; }
/* Legal pages: quiet color supports long-form reading. */
.legal-page h1 { color: #4b6273; }
.legal-lead { background: #edf0f2; padding: 1.5rem; border-left: 3px solid #738897; border-radius: 0 8px 8px 0; }
.legal-page h2 { color: #4b6273; }
.legal-page a { color: #765039; }
/* Sign-in and account setup use the same palette with a dark forest treatment. */
body.auth-page { background: radial-gradient(ellipse at 15% 10%, #4b6273, transparent 60%), #293d4c; color: #edf0f2; }
.auth-story h1 { color: #edf0f2; }
.auth-page .eyebrow { color: #edf0f2; }
.auth-story>p:not(.eyebrow),.auth-story-line,.auth-back { color: #d8dfe4; }
.auth-page .auth-card { background: #293d4c; border-color: #4b6273; box-shadow: 16px 16px 0 #a9b7c212; border-radius: 12px; }
.auth-card h2 { color: #edf0f2; }
.auth-page .auth-intro,.auth-form label,.auth-page .form-status { color: #d8dfe4; }
.auth-form input { background: #293d4c; color: #fff; border-color: #738897; border-radius: 6px; }
.auth-form input:focus { border-color: #a9b7c2; }
.auth-form button { background: #edf0f2; color: #4b6273; border-color: #edf0f2; border-radius: 6px; }
.auth-form button:hover { background: #edf0f2; color: #4b6273; border-color: #edf0f2; }
@media(max-width:640px) {
  .hero-video { box-shadow: 7px 7px 0 #edf0f2; }
  .pricing-card { box-shadow: 7px 7px 0 #edf0f2; }
  .about-principles { padding: 1.5rem; }
  .scheduler { box-shadow: 6px 6px 0 #edf0f2; }
  .auth-page .auth-card { box-shadow: 7px 7px 0 #a9b7c212; }
}
.chat-composer { background: #fffdf8; border-color: #d8dfe4; border-radius: 0 0 12px 12px; }
.chat-composer button { background: #4b6273; color: #fff; border-color: #4b6273; }
/* Consistent title color across the shared public interface. */
:root{--heading-ink:#4b6273}
h1,h2,h3,.hero h1,.about-hero h1,.about-story h2,.team-section>h2,.contact h2,.book-layout h1,.scheduler h2,.booking-page h1,.ad-landing-hero-copy h1,.ad-landing-intake-copy h2,.legal-page h1,.legal-page h2{color:var(--heading-ink)}
h1 em,h2 em,h3 em,.book-layout h1 em{color:inherit}
.hero-kicker{color:var(--heading-ink)!important}
.pricing-card h3,.about-cta h2,.impact-story-card-dark h3,.ad-landing-value h2,.ad-landing-value h3,.ad-landing-offer h3,.auth-story h1,.auth-card h2{color:#edf0f2}
/* Carry the project-page panel language into the main customer journeys. */
.book-layout aside{padding:32px;background:#edf0f2;border-radius:16px}
.book-layout .scheduler{border-radius:16px;background:#edf0f2;border-color:#d8dfe4;box-shadow:none}
.book-layout .meeting-meta{padding-top:20px;border-top:1px solid #d8dfe4}
.book-layout .scheduler .eyebrow{color:#4b6273}
.about-principles{border-radius:16px;background:#edf0f2}
.about-cta,.pricing-card{border-radius:16px;background:#4b6273;box-shadow:none}
.hero-video{border-radius:16px;box-shadow:none}
.impact-story-grid{gap:12px;background:transparent;border:0;border-radius:0}
.impact-story-card{border-radius:12px}
.ad-landing-proof{border-radius:16px;background:#edf0f2}
.ad-landing-offer{border-radius:12px;background:#4b6273}
.onboarding-form,.onboarding-result,.onboarding-booking{border-radius:16px;box-shadow:none}
@media(max-width:650px){.book-layout aside{padding:26px 22px}.book-layout h1{font-size:clamp(38px,10.5vw,48px)}.book-layout .scheduler{padding:24px 20px}.impact-story-grid{gap:14px}}
/* Spacious, focused presentation: neutral canvas, color contained in key panels. */
:root{--bg:#fafaf8;--line:#e0e3dd;--muted:#4b6273}
body:not(.auth-page){background:var(--bg)}
.header.is-scrolled::before{background:#fafaf8f5}
.hero,.about-hero,.ad-landing-hero{background:transparent}
.hero h1{font-size:clamp(2.65rem,5.4vw,4.3rem);line-height:1.08;letter-spacing:-.035em}
.hero{gap:4rem;padding-top:5.5rem;padding-bottom:6.5rem}
.hero-video{min-height:430px}
.pricing-card,.about-cta,.scheduler,.onboarding-form,.onboarding-result,.onboarding-booking{box-shadow:none}
.capability-ticker article{border:0}
.workflow-map{border:0;border-radius:16px;gap:7px;background:transparent}
.workflow-node{border-radius:10px}
.book-layout{gap:40px;margin-top:45px}
.book-layout aside{background:#edf0f2;padding:40px 34px;border-radius:20px}
.book-layout .scheduler{background:#fff;border:1px solid #edf0f2;border-radius:20px;padding:36px}
.book-layout h1{font-size:clamp(45px,4.8vw,65px);line-height:1.06}
.book-header{border-bottom:0}
.scheduler button,.scheduler input,.scheduler select{background:#fafbf8}
.scheduler button[aria-pressed=true],.scheduler button[aria-pressed=true]:hover,.scheduler .confirm,.scheduler .confirm:hover{background:#4b6273;border-color:#4b6273;color:#fff}
.ad-landing-proof{background:#edf0f2}
.onboarding-form,.onboarding-result,.onboarding-booking{background:#fff}
.legal-lead{background:#edf0f2}
@media(max-width:850px){.hero{gap:2.5rem}.book-layout{gap:24px}.book-layout aside{padding:30px 25px}.book-layout .scheduler{padding:28px}}
@media(max-width:650px){.hero{padding-top:2.7rem;padding-bottom:4rem;gap:2rem}.hero h1{font-size:2.8rem}.hero-video{min-height:350px}.book-layout{margin-top:10px}.book-layout aside{padding:28px 23px}.book-layout h1{font-size:clamp(37px,10.4vw,48px)}.book-layout .scheduler{padding:26px 20px}}
/* Keep the original motion; simplify the surfaces and accent palette. */
.capability-ticker{border-color:#edf0f2}
.capability-ticker article,.capability-ticker article:nth-child(3n+2),.capability-ticker article:nth-child(3n){background:#f0f3ed;border:1px solid #edf0f2;border-radius:8px;color:#4b6273;align-items:center}
.capability-ticker article:hover{background:#4b6273;border-color:#4b6273;color:#fff}
.capability-ticker:focus-within .capability-ticker-track,.capability-ticker:hover .capability-ticker-track{animation-play-state:paused}
.workflow-map{background:#fff;border:1px solid #edf0f2;border-radius:12px;gap:0}
.workflow-map::before{background:#d8dfe4;left:2.28rem}
.workflow-node,.workflow-node:nth-child(2),.workflow-node:nth-child(3){background:#fbfcf9;border-radius:0;border-bottom:1px solid #edf0f2;padding:1.3rem 1.3rem 1.3rem 4.55rem}
.workflow-node:last-child{border-bottom:0}
.workflow-node::before,.workflow-node:nth-child(2)::before,.workflow-node:nth-child(3)::before{width:.75rem;height:.75rem;left:1.93rem;top:1.65rem;background:#738897;box-shadow:0 0 0 5px #edf0f2;animation-name:dynus-workflow-pulse}
.workflow-node>strong,.workflow-node:nth-child(2)>strong,.workflow-node:nth-child(3)>strong{color:#4b6273}
.workflow-node>small{color:#738897}
@keyframes dynus-workflow-pulse{50%{transform:scale(1.12);box-shadow:0 0 0 8px #73889712}}
@media(prefers-reduced-motion:reduce){.workflow-node::before{animation:none}.capability-ticker-track{animation:none}}
/* Palette: ivory, charcoal, slate blue, and restrained bronze. */
:root{--bg:#faf9f6;--ink:#283139;--muted:#606b73;--line:#dce1e4;--brand-sage:#edf0f2;--brand-lavender:#eee8e1;--brand-purple:#354c60;--brand-coral:#977454;--brand-lime:#d8dfe4;--heading-ink:#283139}
body:not(.auth-page){background:var(--bg);color:var(--ink)}
h1,h2,h3,.hero h1,.about-hero h1,.about-story h2,.team-section>h2,.contact h2,.book-layout h1,.scheduler h2,.booking-page h1,.ad-landing-hero-copy h1,.ad-landing-intake-copy h2,.legal-page h1,.legal-page h2,.workflow-node>strong,.workflow-node:nth-child(2)>strong,.workflow-node:nth-child(3)>strong{color:#283139}
.hero-kicker{color:#283139!important}
.hero-video::after{background:linear-gradient(180deg,transparent 25%,#1d2e3cd9)}
.pricing-card,.about-cta,.impact-story-card-dark,.ad-landing-value,.ad-landing-offer{background:#354c60;color:#fff}
.pricing-card h3,.about-cta h2,.impact-story-card-dark h3,.ad-landing-value h2,.ad-landing-value h3,.auth-story h1,.auth-card h2{color:#f5f5ef}
body.auth-page{background:radial-gradient(ellipse at 15% 10%,#3e5669,transparent 60%),#202d39}
.auth-page .auth-card{background:#2d4051;border-color:#526679}
.auth-form input{background:#202f3d;border-color:#667989}
