/* =====================================================================
   Humera · v17 · τυπογραφία Β «Καθαρή» (εγκρίθηκε 11/10): Geologica, μία οικογένεια
   Ρόλοι (όχι ίσοι τίτλοι): display αρχικής > τίτλος σελίδας > τίτλος ενότητας > όνομα λύσης
   > δήλωση > εισαγωγή > κείμενο > μικρή επικεφαλίδα > ετικέτα · χειριστήρια
   Το «Humera» (λογότυπο) και το πορτοκαλί μένουν ως έχουν.
   ===================================================================== */

/* ---------- Β · Καθαρή και σύγχρονη ---------- */
html[data-t="b"] {
  --f: 'Geologica', system-ui, sans-serif;
  --f-t: 'Geologica', system-ui, sans-serif;
  --fv-t: normal;
  --s-display: clamp(2.5rem, 1rem + 4.4vw, 4.75rem);  --w-display: 320; --lh-display: .96;  --tr-display: -.034em;
  --s-page:    clamp(2.25rem, 1.25rem + 3vw, 3.75rem); --w-page: 330;    --lh-page: 1;      --tr-page: -.03em;
  --s-section: clamp(1.75rem, 1.2rem + 1.7vw, 2.625rem); --w-section: 330; --lh-section: 1.05; --tr-section: -.024em;
  --s-sol:     clamp(1.375rem, 1.15rem + .7vw, 1.75rem); --w-sol: 400;   --lh-sol: 1.15;    --tr-sol: -.014em;
  --s-state:   clamp(1.25rem, 1.1rem + .45vw, 1.5rem);  --w-state: 330;  --lh-state: 1.26;
  --s-lead:    1.25rem;    --w-lead: 330;  --lh-lead: 1.42;
  --s-body:    1rem;       --w-body: 340;  --lh-body: 1.58;
  --s-h3:      1rem;       --w-h3: 460;
  --s-label:   .8125rem;   --w-label: 400;
  --s-ui:      .875rem;    --w-ui: 450;
  --tx-1: var(--ink); --tx-2: rgba(14, 26, 60, .68); --tx-3: rgba(14, 26, 60, .58);
  --gap-t: 16px; --measure: 54ch;
}
@media (max-width: 900px) {
  html[data-t="b"] { --s-display: clamp(2.125rem, 9vw, 2.625rem); --s-page: 2.125rem; --s-section: 1.75rem; --s-sol: 1.625rem; --s-state: 1.2rem; --s-lead: 1.125rem; --s-body: 1rem; }
}

/* ---------- Οι ρόλοι (ίδιοι κανόνες, οι προτάσεις αλλάζουν μόνο τις τιμές) ---------- */
html[data-t] body { font-family: var(--f); font-size: var(--s-body); font-weight: var(--w-body); line-height: var(--lh-body); color: var(--tx-1); }
html[data-t] :is(.word, .h-xl, .h-l, .h-m, .sol__name, .sx-pane__n, .sx-hero h1, .fm-note, .forms__note, .legend__k, .ncard h3) {
  font-family: var(--f-t); font-variation-settings: var(--fv-t); text-wrap: pretty; color: var(--tx-1); }

/* display της αρχικής */
html[data-t] .word, html[data-t] .word b { font-size: var(--s-display); font-weight: var(--w-display); line-height: var(--lh-display); letter-spacing: var(--tr-display); }
html[data-t] .word b { color: var(--ember-deep); }
/* τίτλος σελίδας */
html[data-t] :is(.h-xl, .sx-hero .sx-hero__text h1, .contact--top .contact__intro .h-l) {
  font-size: var(--s-page); font-weight: var(--w-page); line-height: var(--lh-page); letter-spacing: var(--tr-page); }
/* τίτλος ενότητας */
html[data-t] :is(.h-l, .contact__intro .h-l, .why__list .h-l, .why__intro .h-l):not(.contact--top .h-l) {
  font-size: var(--s-section); font-weight: var(--w-section); line-height: var(--lh-section); letter-spacing: var(--tr-section); }
/* όνομα λύσης */
html[data-t] :is(.sol__name, .sx-pane__n) { font-size: var(--s-sol); font-weight: var(--w-sol); line-height: var(--lh-sol); letter-spacing: var(--tr-sol); }
/* δήλωση */
html[data-t] :is(.h-m, .org__cap .h-m, .unite .h-m, .svc__main .h-m, .assure .h-m, .fm-note, .forms__note, .legend__k) {
  font-size: var(--s-state); font-weight: var(--w-state); line-height: var(--lh-state); letter-spacing: -.008em; text-transform: none; }
/* εισαγωγή */
html[data-t] :is(.lead, .sol__desc, .unite p.lead, .contact__intro .lead, .sx-pane__h) {
  font-size: var(--s-lead); font-weight: var(--w-lead); line-height: var(--lh-lead); color: var(--tx-1); letter-spacing: 0; max-width: 34rem; }
html[data-t] .sx-pane__h { max-width: 30rem; }
/* απόσταση τίτλου–περιγραφής */
html[data-t] :is(.h-xl, .h-l, .h-m, .sol__name, .sx-pane__n, .sx-hero h1) + :is(.lead, .sol__desc, p, .sx-pane__h) { margin-top: var(--gap-t); }
html[data-t] .sx-pane__n + .sx-pane__h { margin-top: calc(var(--gap-t) * .7); }
html[data-t] .sx-pane__h + p { margin-top: 14px; }
/* κείμενο */
html[data-t] :where(p, li, dd, .fm-cap, .legend__d, .row__desc) { font-weight: var(--w-body); }
html[data-t] :is(.sx-pane p:not([class]), .sx-more p, .how__step p, .whyB__col p, .fm-cap, .faq details p, .legend__d, .row__desc, .contact__next p:not(.eyebrow), .ncard p) {
  font-size: var(--s-body); line-height: var(--lh-body); color: var(--tx-2); max-width: var(--measure); }
html[data-t] .ncard p { color: #C9D0E2; font-size: calc(var(--s-body) * .94); }
/* μικρές επικεφαλίδες */
html[data-t] :is(.how__step h3, .whyB__col h3, .sx-more h3, .svc__block h3, .role h3, .ledger h3, .duo h3, .private h3) {
  font-family: var(--f-t); font-variation-settings: var(--fv-t); font-size: var(--s-h3); font-weight: var(--w-h3); line-height: 1.35; letter-spacing: 0; text-transform: none; color: var(--tx-1); }
/* ετικέτες: ήσυχες, χωρίς κεφαλαία */
html[data-t] :is(.eyebrow, .sx-pane__w, .how__step .k, .steps4 .k, .foot h4, .dg__cap, .dg__lab, .mini__top, .svc__num span, .sector, .ncard__top) {
  font-family: var(--f); font-size: var(--s-label); font-weight: var(--w-label); letter-spacing: 0; text-transform: none; color: var(--tx-3); }
html[data-t] .ncard__top, html[data-t] .private__panel .eyebrow { color: #AEB7CE; }
html[data-t] .dg__cap, html[data-t] .dg__lab { font-size: calc(var(--s-label) * .88); }
/* χειριστήρια */
html[data-t] :is(.hdr__nav a, .sheet a, .sx-tab, .fm-seg button, .sol__nav button, .sx-next button, .send, .chip, .sol__more, .lnk, .nous__corp, .svc__link, .sx-pick__t) {
  font-family: var(--f); font-weight: var(--w-ui); letter-spacing: 0; }
html[data-t] :is(.hdr__nav a, .sx-tab, .send, .sol__more, .lnk, .nous__corp, .svc__link) { font-size: var(--s-ui); }
html[data-t] .sx-map .sx-pick__t { font-size: calc(var(--s-ui) * 1.07); }
html[data-t] .sx-map .sx-pick__w { font-size: var(--s-label); color: var(--tx-2); font-weight: var(--w-body); }
html[data-t] :is(.sx-tab span, .sx-pick__n, .chips a span) { font-family: var(--f); font-weight: var(--w-label); }
/* ερωτήσεις, φόρμα, footer */
html[data-t] .faq summary { font-family: var(--f-t); font-variation-settings: var(--fv-t); font-size: calc(var(--s-lead) * .95); font-weight: var(--w-state); color: var(--tx-1); }
html[data-t] .field label { font-size: var(--s-label); font-weight: var(--w-ui); letter-spacing: 0; text-transform: none; color: var(--tx-1); }
html[data-t] :is(.field input, .field textarea) { font-family: var(--f); font-size: 1rem; font-weight: var(--w-body); }
html[data-t] .form__privacy { font-size: calc(var(--s-label) * .92); font-weight: var(--w-body); }
html[data-t] :is(.foot a, .foot li, .foot address) { font-size: calc(var(--s-body) * .97); font-weight: var(--w-body); color: var(--tx-1); }
html[data-t] .foot__brand small { font-size: var(--s-label); color: var(--tx-2); }
html[data-t] :is(.legal, .legal p) { font-size: .8125rem; color: var(--tx-3); }
html[data-t] .legal strong { font-weight: var(--w-ui); letter-spacing: 0; }
/* SVG διαγράμματα των Λύσεων */
html[data-t] :is(.fm-goallab, .fm-nglab) { font-family: var(--f); font-weight: var(--w-ui); }


/* αλλαγές γραμμής: στους τίτλους που δεν χωράνε στη στήλη, φυσικό ισορροπημένο σπάσιμο αντί για ορφανή λέξη */
html[data-t] :is(.sx-hero .sx-hero__text h1, .contact__intro .h-l) br.nb { display: none; }
html[data-t] :is(.sx-hero .sx-hero__text h1, .contact__intro .h-l) { text-wrap: balance; }
/* η εισαγωγή κάτω από τον τίτλο της σελίδας «Σχετικά» παίρνει τον ίδιο ρόλο με τις άλλες εισαγωγές */
html[data-t] .statement__body > p:first-child { font-size: var(--s-lead); font-weight: var(--w-lead); line-height: var(--lh-lead); color: var(--tx-1); max-width: 34rem; }
