/* Shared Jade Finance finish. Structure, interactions and the home hero stay intact. */
:root {
  --ink:#142f3d; --petrol:#315b60; --jade:#aeb8a0; --sky:#d7efff;
  --canvas:#f7f8f5; --surface:#fff; --action:#146851; --brand-green:#00c864;
  --muted-jade:#536e70; --border-jade:#dce5e2; --deep:#0e2731;
}
body, body:not(.hh-home), body.hh-lumora {
  --sans:'Golos Text',sans-serif; --bg:var(--canvas); --panel:var(--surface);
  --muted:var(--muted-jade); --line:var(--border-jade); --green:var(--action);
  font-family:'Golos Text',sans-serif; color:var(--ink); background:var(--canvas);
}
/* Existing page-specific rules use font shorthands and higher specificity. */
body :is(h1,h2,h3,h4,h5,h6),
body.hh-lumora main :is(h1,h2,h3),
body.hh-lumora footer :is(h1,h2,h3),
body.hh-hosting :is(h1,h2,h3),
#accountDialog :is(h1,h2,h3,h4,h5,h6),
body :is(.metric strong,.cloud-account-stat strong,.calc-slider-row strong,.partner-hero-rate strong,.partner-reward-card>strong) {
  font-family:'Geologica',sans-serif !important;
}
body :is(p,a,button,input,select,textarea,label,summary),
body.hh-lumora :is(p,a,button,input,select,textarea,label,summary),
body :is(.topnote,.eyebrow,.hh-kicker,.hh-index,.lum-hero-foot,.hh-media-duration),
body :is(.brand,.lum-brand,.lum-menu-head,.lum-menu-foot),
#accountDialog :is(button,input,select,textarea) {
  font-family:'Golos Text',sans-serif !important;
}
#accountDialog {
  font-family:'Golos Text',sans-serif !important;
  --ink:#142f3d; --canvas:#f7f8f5; --muted-jade:#536e70;
  --border-jade:#dce5e2; --action:#146851; --petrol:#315b60;
}

/* Keep the approved home hero image, layout, navigation shape and motion. */
body.hh-lumora { --lum-ink:#142f3d; --lum-muted:#536e70; --lum-surface:#edf3f0; --lum-line:#dce5e2; --lum-accent:#146851; }
body.hh-lumora main>section:not(.lum-hero):not(.hh-cloud-trial):not(.hh-contact) { color:var(--ink); }
body.hh-lumora main>section:not(.lum-hero) p { color:var(--muted-jade); }
body.hh-lumora .hh-direction { background:var(--ink); color:#fff; }
body.hh-lumora .hh-direction>i, body.hh-lumora .hh-calculators>a i { color:#bcd5ca; }
body.hh-lumora main>section:not(.lum-hero) .hh-direction p, body.hh-lumora .hh-calculators>a small { color:#d2e1df; }
@media(min-width:1151px) {
  body.hh-lumora main .hh-directions-intro h2 { font-size:clamp(28px,2.35vw,36px); }
}
body.hh-lumora .hh-calculators>a, body.hh-lumora .hh-calculators>a:nth-child(3) { background:var(--petrol); color:#fff; }
body.hh-lumora .hh-calculators>a:hover { background:var(--deep); }
body.hh-lumora .hh-calculators>div, body.hh-lumora .hh-useful-card { background:#edf3f0; }
body.hh-lumora .hh-product { background:#f1f6f3; border-color:var(--border-jade); }
body.hh-lumora main>section.hh-cloud-trial:not(.lum-hero), body.hh-lumora main>.hh-contact, body.hh-lumora .hh-footer { background:var(--deep); color:#f3f9f7; }
body.hh-lumora main>section.hh-cloud-trial p, body.hh-lumora .hh-contact p { color:#d0e1df; }
body.hh-lumora :is(.hh-inline-link,.hh-directions-intro>a,.hh-questions>a,.hh-useful-card a) { color:var(--action); }
body.hh-lumora :is(.hh-path>a,.hh-offers .hh-inline-link) { background:var(--ink); border-color:var(--ink); color:#fff; }
body.hh-lumora :is(.hh-path>a,.hh-offers .hh-inline-link):hover { background:var(--petrol); border-color:var(--petrol); }

/* Page-specific surfaces follow the same palette without changing their layout. */
body.hh-hosting .hosting-hero, body.hh-hosting .hosting-final, body.hh-partners .partner-example, body.hh-about .about-media { background:#edf3f0; }
body.hh-hosting .hosting-terms, body.hh-consultations .consultation-hero-panel,
body.hh-partners :is(.partner-hero-panel,.partner-network-visual),
body:not(.hh-home) :is(.btc-live-panel,.calc-parameters), #accountDialog .dashboard-tabs { background:var(--deep); }
body.hh-hosting .hosting-hero-copy>p, body.hh-hosting .hosting-section-heading p,
body.hh-hosting .hosting-prepare>div p, body.hh-hosting .hosting-questions>div>p { color:var(--muted-jade); }
body.hh-hosting .hosting-kicker, body.hh-hosting .hosting-hero-note { color:#436963; }
body.hh-hosting :is(.hosting-scope-card,.hosting-steps article,.hosting-prepare li,.hosting-faq details) { border-color:var(--border-jade); }
body.hh-hosting :is(.hosting-scope-card>i,.hosting-prepare li i), body.hh-about :is(.about-direction-top>i,.about-media-icon) { color:var(--action); }
body:not(.hh-home) :is(.home-sidebar,.calc-sidebar) { background:#edf3f0; }
body:not(.hh-home) :is(.cloud-sidebar,.catalog-sidebar,.calc-sidebar) a.is-current,
body:not(.hh-home) .calc-sidebar .active { background:#dcebe5; color:#174c40; }
body:not(.hh-home) :is(.page-hero h1,.page-section h2) { color:var(--ink); }
body:not(.hh-home) :is(.page-hero p,.page-section>p,.page-points) { color:var(--muted-jade); }
body:not(.hh-home) .darkfoot { background:var(--deep); color:#d9e8e5; }
body:not(.hh-home) .button { background:var(--ink); color:#fff; }
body:not(.hh-home) .button:hover { background:var(--petrol); }
body.hh-cloud .cloud-trial-teaser { background:#e3efeb; }
body.hh-cloud .cloud-teaser-link { gap:8px; padding-left:14px; padding-right:14px; }
body.hh-cloud #offers .cloud-example-grid { background:#eaf2ee; }
body.hh-cloud #offers .cloud-example-card.is-featured { background:var(--ink); border-color:var(--ink); }
body.hh-cloud #offers .cloud-example-action { background:var(--ink); border-color:var(--ink); }
body.hh-cloud #offers .cloud-example-card.is-featured .cloud-example-action { background:#edf3f0; border-color:#edf3f0; color:var(--ink); }
#accountDialog .account-head { background:var(--canvas); border-color:var(--border-jade); }
#accountDialog :is(.dashboard-card,.cloud-account-stat) { border-color:var(--border-jade); }
#accountDialog .dashboard-tabs button.active { background:var(--petrol); color:#fff; }
body :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid #178568; outline-offset:3px; }

/* Clearer routes: one set of home choices and one cloud page navigation. */
body.hh-lumora .hh-directions-links { display:flex; flex-wrap:wrap; gap:12px 20px; }
body.hh-lumora .hh-directions-links a { color:var(--action); font-size:14px; font-weight:600; }
body.hh-lumora .hh-directions-links a:hover { text-decoration:underline; text-underline-offset:3px; }
body.hh-cloud .cloud-layout { display:block; }
body.hh-cloud .cloud-hero-layout { display:block; }
body.hh-cloud .cloud-hero .cloud-hero-trial-note { margin:12px 0 0; color:#d8e9df; font-size:13px; line-height:1.5; }
body.hh-cloud .cloud-index { gap:8px; }
body.hh-cloud :is(#trial,#process,#formats,#offers,#cloud-calculator,#terms,#cloudTrialDemo) { scroll-margin-top:20px; }
@media(max-width:760px) {
  body.hh-lumora .hh-direction-grid { gap:10px; }
  body.hh-lumora .hh-direction {
    display:grid; grid-template-columns:28px minmax(0,1fr) 46px;
    grid-template-areas:'icon title badge' '. description description';
    align-items:start; gap:8px 12px; min-height:0; padding:18px;
  }
  body.hh-lumora .hh-direction>i { grid-area:icon; margin:0; font-size:25px; }
  body.hh-lumora .hh-direction h3 { grid-area:title; margin:0; font-size:19px; line-height:1.25; }
  body.hh-lumora .hh-direction:not(:has(.hh-test)) h3 { grid-column:2 / 4; }
  body.hh-lumora .hh-direction p { grid-area:description; margin:0; padding-right:22px; }
  body.hh-lumora .hh-direction>span[aria-hidden="true"] { position:absolute; right:18px; bottom:14px; margin:0; }
  body.hh-lumora .hh-direction .hh-test { grid-area:badge; position:static; justify-self:end; padding:4px 6px; }
  body.hh-cloud .cloud-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:visible; margin:0; padding:14px 0 0; }
  body.hh-cloud .cloud-index a { display:flex; align-items:center; justify-content:center; min-height:42px; padding:8px 4px; text-align:center; white-space:normal; line-height:1.25; }
  body.hh-cloud .cloud-hero { min-height:360px; }
}
@media(max-width:360px) {
  body.hh-lumora .lum-header { gap:8px; padding-left:12px; padding-right:12px; }
  body.hh-lumora .lum-brand { font-size:17px !important; }
  body.hh-lumora .navright { gap:4px; }
  body.hh-lumora .lang { padding-left:4px; padding-right:4px; }
}

/* Shared action roles: the home keeps its monochrome treatment in home-rest.css. */
:root {
  --hh-action-primary: #142f3d;
  --hh-action-primary-hover: #315b60;
  --hh-action-foreground: #fff;
  --hh-action-secondary-ink: #173d36;
  --hh-action-secondary-border: #93aaa0;
  --hh-action-secondary-hover: #e4efea;
  --hh-action-inverse: #f2f7f3;
  --hh-action-focus: #146851;
  --hh-action-radius: 999px;
  --hh-action-height: 44px;
}
/* Only named actions are styled: tabs, filters, sliders and icon controls keep their states. */
body:not(.hh-home) main .button,
body:not(.hh-home) main .page-action,
body:not(.hh-home) main :is(.hosting-secondary,.hosting-light-link),
body.hh-cloud main :is(.cloud-button-primary,.cloud-button-ghost,.cloud-inline-link,.cloud-format-link,.cloud-example-action),
#accountDialog .button {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: var(--hh-action-height); padding: 10px 18px;
  border: 1px solid transparent; border-radius: var(--hh-action-radius);
  font-size: 14px; font-weight: 600; line-height: 1.35; text-align: center; text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
body:not(.hh-home) main .button:not(:disabled),
body.hh-cloud #offers .cloud-example-action,
#accountDialog .button:not(:disabled),
#accountDialog:has(#dashboardView:not([hidden])) .button:not(:disabled) {
  background: var(--hh-action-primary); border-color: var(--hh-action-primary); color: var(--hh-action-foreground);
}
body:not(.hh-home) main .button:not(:disabled):hover,
body.hh-cloud #offers .cloud-example-action:hover,
#accountDialog .button:not(:disabled):hover,
#accountDialog:has(#dashboardView:not([hidden])) .button:not(:disabled):hover {
  background: var(--hh-action-primary-hover); border-color: var(--hh-action-primary-hover); color: var(--hh-action-foreground);
}
body:not(.hh-home) main :is(.page-action,.hosting-secondary,.hosting-light-link),
body.hh-cloud main :is(.cloud-inline-link,.cloud-format-link) {
  background: transparent; border-color: var(--hh-action-secondary-border); color: var(--hh-action-secondary-ink);
}
body:not(.hh-home) main :is(.page-action,.hosting-secondary,.hosting-light-link):hover,
body.hh-cloud main :is(.cloud-inline-link,.cloud-format-link):hover {
  background: var(--hh-action-secondary-hover); border-color: var(--hh-action-secondary-ink); color: var(--hh-action-secondary-ink);
}
/* Inverse actions stay legible on dark photographs, featured cards and results. */
body.hh-cloud .cloud-hero-actions .cloud-button-primary,
body.hh-cloud #offers .cloud-example-card.is-featured .cloud-example-action,
body.hh-cloud .cloud-final-actions .button:not(:disabled),
body.hh-cloud .cloud-result-panel .button:not(:disabled) {
  background: var(--hh-action-inverse); border-color: var(--hh-action-inverse); color: var(--hh-action-primary);
}
body.hh-cloud .cloud-hero-actions .cloud-button-primary:hover,
body.hh-cloud #offers .cloud-example-card.is-featured .cloud-example-action:hover,
body.hh-cloud .cloud-final-actions .button:not(:disabled):hover,
body.hh-cloud .cloud-result-panel .button:not(:disabled):hover {
  background: #dcebe5; border-color: #dcebe5; color: var(--hh-action-primary);
}
body.hh-cloud .cloud-hero-actions .cloud-button-ghost,
body.hh-cloud .cloud-final-actions .page-action,
body.hh-hosting .hosting-terms .hosting-light-link {
  background: transparent; border-color: #c4d6d0; color: #f2f7f3;
}
body.hh-cloud .cloud-hero-actions .cloud-button-ghost:hover,
body.hh-cloud .cloud-final-actions .page-action:hover,
body.hh-hosting .hosting-terms .hosting-light-link:hover {
  background: #f2f7f3; border-color: #f2f7f3; color: var(--hh-action-primary);
}
body:not(.hh-home) main .button:disabled,
#accountDialog .button:disabled { opacity: .55; cursor: not-allowed; }
body.hh-cloud .cloud-mode button[aria-pressed='true'] {
  background: #dcebe5; border-color: #a6c3b6; color: #173d36;
}
body.hh-cloud .cloud-mode button[aria-pressed='false'] {
  background: #fff; border-color: #dce5e2; color: #536e70;
}
body :is(.button,.page-action,.hosting-secondary,.hosting-light-link,.cloud-button):focus-visible {
  outline: 3px solid var(--hh-action-focus); outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  body:not(.hh-home) main :is(.button,.page-action,.hosting-secondary,.hosting-light-link,.cloud-button),
  #accountDialog .button { transition: none; }
}
