/* =====================================================================
   eVersum – typography layer (2026-08-27)
   Purpose: improve legibility and hierarchy without changing the visual
   identity (imagery, colour palette, Oswald display face all preserved).

   REVERSIBILITY
   -------------
   Everything in this file is additive and lives in this single stylesheet.
   To disable it completely, either
     a) remove the <link ... ev-typography.css> tag from the pages, or
     b) add class "no-ev-type" to <html> (all rules below are scoped out), or
     c) re-upload the backed-up HTML files from the rollback archive.
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

/* ---------- 1. Body copy: readable size, calmer rhythm ---------- */
html:not(.no-ev-type) body,
html:not(.no-ev-type) .ev-type-body {
  font-family: 'Inter', 'Mukta', sans-serif;
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html:not(.no-ev-type) p,
html:not(.no-ev-type) li,
html:not(.no-ev-type) dd,
html:not(.no-ev-type) dt,
html:not(.no-ev-type) td,
html:not(.no-ev-type) th,
html:not(.no-ev-type) blockquote,
html:not(.no-ev-type) label,
html:not(.no-ev-type) .text-block p,
html:not(.no-ev-type) .accordion-inner p {
  font-family: 'Inter', 'Mukta', sans-serif;
  font-size: 1rem;
  line-height: 1.65;
}

html:not(.no-ev-type) p { margin-bottom: 1.1em; }
html:not(.no-ev-type) p:last-child { margin-bottom: 0; }

/* Comfortable measure for long-form copy (~70–80 characters) */
html:not(.no-ev-type) .text-block p,
html:not(.no-ev-type) .accordion-inner p,
html:not(.no-ev-type) .ev-prose p,
html:not(.no-ev-type) .ev-prose li { max-width: 72ch; }

/* Form controls should never be smaller than body copy (iOS zoom guard) */
html:not(.no-ev-type) input,
html:not(.no-ev-type) textarea,
html:not(.no-ev-type) select,
html:not(.no-ev-type) button { font-family: 'Inter', 'Mukta', sans-serif; }
html:not(.no-ev-type) input[type="text"],
html:not(.no-ev-type) input[type="email"],
html:not(.no-ev-type) input[type="tel"],
html:not(.no-ev-type) input[type="number"],
html:not(.no-ev-type) textarea,
html:not(.no-ev-type) select { font-size: 16px; line-height: 1.5; }

/* ---------- 2. Headings: keep Oswald, tighten the scale ---------- */
html:not(.no-ev-type) h1,
html:not(.no-ev-type) h2,
html:not(.no-ev-type) h3,
html:not(.no-ev-type) h4,
html:not(.no-ev-type) h5,
html:not(.no-ev-type) h6 {
  font-family: 'Oswald', sans-serif;
  letter-spacing: .01em;
  text-wrap: balance;
}

html:not(.no-ev-type) .hero-section .section-title h1,
html:not(.no-ev-type) .hero-title .section-title h1,
html:not(.no-ev-type) .ms_title-wrap h1 {
  font-size: clamp(34px, 4.6vw, 58px);
  line-height: 1.12;
}
html:not(.no-ev-type) .fixed-column-wrap_title h1 {
  font-size: clamp(30px, 3.4vw, 45px);
  line-height: 1.15;
}
html:not(.no-ev-type) .section-title h2,
html:not(.no-ev-type) h2 {
  font-size: clamp(24px, 2.6vw, 34px);
  line-height: 1.2;
}
html:not(.no-ev-type) h3 { font-size: clamp(19px, 1.7vw, 23px); line-height: 1.3; }
html:not(.no-ev-type) h4 { font-size: 18px; line-height: 1.35; }
html:not(.no-ev-type) h5 { font-size: 16px; line-height: 1.4; }
html:not(.no-ev-type) h6 { font-size: 14px; line-height: 1.45; }

/* ---------- 3. Small UI text: floors and calmer tracking ---------- */
html:not(.no-ev-type) .nav-holder nav a,
html:not(.no-ev-type) .nav-holder nav li a {
  font-size: 13px;
  letter-spacing: 1.4px;
}
html:not(.no-ev-type) .footer-social li a,
html:not(.no-ev-type) .subfooter p,
html:not(.no-ev-type) .policy-box .cc-links a,
html:not(.no-ev-type) .cc-settings-fixed,
html:not(.no-ev-type) .horizonral-subtitle,
html:not(.no-ev-type) .left-panel_social li a {
  font-size: 12px;
  letter-spacing: 1.6px;
}
html:not(.no-ev-type) .btn,
html:not(.no-ev-type) a.btn,
html:not(.no-ev-type) button.btn {
  font-size: 13px;
  letter-spacing: 1.6px;
}
html:not(.no-ev-type) .ev-caption,
html:not(.no-ev-type) figcaption,
html:not(.no-ev-type) small { font-size: 13px; line-height: 1.5; letter-spacing: 0; }

/* ---------- 4. Small screens ---------- */
@media only screen and (max-width: 767px) {
  html:not(.no-ev-type) body { font-size: 15.5px; line-height: 1.62; }
  html:not(.no-ev-type) .hero-section .section-title h1,
  html:not(.no-ev-type) .hero-title .section-title h1,
  html:not(.no-ev-type) .ms_title-wrap h1 { line-height: 1.16; }
}

/* ---------- 5. Japanese locale ---------- */
html:not(.no-ev-type):lang(ja) body,
html[lang="ja"]:not(.no-ev-type) body,
html[lang="ja"]:not(.no-ev-type) p,
html[lang="ja"]:not(.no-ev-type) li,
html[lang="ja"]:not(.no-ev-type) td,
html[lang="ja"]:not(.no-ev-type) th,
html[lang="ja"]:not(.no-ev-type) label {
  font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', 'Inter', sans-serif;
  font-size: 16.5px;
  line-height: 1.9;
  letter-spacing: .02em;
}
html[lang="ja"]:not(.no-ev-type) h1,
html[lang="ja"]:not(.no-ev-type) h2,
html[lang="ja"]:not(.no-ev-type) h3,
html[lang="ja"]:not(.no-ev-type) h4,
html[lang="ja"]:not(.no-ev-type) h5,
html[lang="ja"]:not(.no-ev-type) h6 {
  font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', 'Oswald', sans-serif;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.4;
}
html[lang="ja"]:not(.no-ev-type) .nav-holder nav a,
html[lang="ja"]:not(.no-ev-type) .btn,
html[lang="ja"]:not(.no-ev-type) .subfooter p { letter-spacing: .06em; font-size: 13px; }

/* =====================================================================
   eVersum – header/footer typography rollback (2026-08-27)
   Keeps the larger body copy in the main content, but restores the
   original compact scale for the fixed chrome and footer contacts.
   Reversible: delete this block or add class "no-ev-type" to <html>.
   ===================================================================== */

/* --- Header chrome --- */
html:not(.no-ev-type) .header-contacts li,
html:not(.no-ev-type) .header-contacts li a {
  font-size: 10px !important;
  letter-spacing: 4px !important;
}
html:not(.no-ev-type) .menu-button-text {
  font-size: 10px !important;
  letter-spacing: 2px !important;
}
html:not(.no-ev-type) .horizonral-subtitle span {
  font-size: 10px !important;
  letter-spacing: 4px !important;
}
html:not(.no-ev-type) .nav-holder .sliding-menu a,
html:not(.no-ev-type) .nav-holder nav .sliding-menu a {
  font-size: 12px !important;
  letter-spacing: 2px !important;
}
html:not(.no-ev-type) .lang-links a {
  font-size: 14px !important;
  letter-spacing: normal !important;
}

/* --- Footer --- */
html:not(.no-ev-type) .main-footer p,
html:not(.no-ev-type) .main-footer .footer-box p,
html:not(.no-ev-type) .main-footer .footer_text p {
  font-size: 13px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}
html:not(.no-ev-type) .footer-contacts li,
html:not(.no-ev-type) .footer-contacts li a {
  font-size: 12px !important;
  letter-spacing: 2px !important;
  text-transform: none !important;
}
html:not(.no-ev-type) .footer-header {
  font-size: 11px !important;
  letter-spacing: 2px !important;
}
html:not(.no-ev-type) .subfooter p,
html:not(.no-ev-type) .policy-box,
html:not(.no-ev-type) .policy-box span,
html:not(.no-ev-type) .to-top-btn,
html:not(.no-ev-type) .to-top-btn a {
  font-size: 10px !important;
  letter-spacing: 2px !important;
}
html:not(.no-ev-type) .subcribe-form input.enteremail,
html:not(.no-ev-type) .subcribe-form input.enteremail::-webkit-input-placeholder,
html:not(.no-ev-type) .subcribe-form input.enteremail::placeholder {
  font-size: 12px !important;
}
html:not(.no-ev-type) .subcribe-form .subscribe-button {
  font-size: 10px !important;
  letter-spacing: 2px !important;
}

/* --- Japanese locale: keep the same compact chrome/footer scale --- */
html[lang="ja"]:not(.no-ev-type) .header-contacts li,
html[lang="ja"]:not(.no-ev-type) .header-contacts li a,
html[lang="ja"]:not(.no-ev-type) .footer-contacts li,
html[lang="ja"]:not(.no-ev-type) .footer-contacts li a {
  letter-spacing: .04em !important;
}
