/* =========================================================
   MAKI GLOBAL TYPOGRAPHY SYSTEM — V59
   2026-10-06
   Central responsive type scale for public frontend only.
   Keep semantic heading levels in HTML; these rules define visual roles.
   ========================================================= */

:root{
    --maki-type-display: clamp(46px, 3.25vw, 60px);
    --maki-type-h1: clamp(46px, 3.15vw, 54px);
    --maki-type-h2: clamp(34px, 2.55vw, 42px);
    --maki-type-h3: clamp(24px, 1.75vw, 30px);
    --maki-type-body-lg: 17px;
    --maki-type-body: 16.5px;
    --maki-type-card: 15px;
    --maki-type-small: 13.5px;
    --maki-type-meta: 12px;
    --maki-type-cta: 15px;
    --maki-leading-body: 1.68;
    --maki-leading-compact: 1.52;
    --maki-weight-regular: 400;
    --maki-weight-medium: 500;
    --maki-weight-semibold: 600;
    --maki-weight-bold: 700;
}

html{
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body:not(.admin-body){
    font-family: var(--default-font), "Helvetica Neue", Arial, sans-serif;
    font-size: var(--maki-type-body-lg);
    font-weight: var(--maki-weight-regular);
    font-synthesis: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Core visual roles */
body:not(.admin-body) .section-title h1{
    font-size: var(--maki-type-h1);
    font-weight: var(--maki-weight-semibold);
    line-height: 1.06;
    letter-spacing: -.03em;
}

body:not(.admin-body) .section-title h2{
    font-size: var(--maki-type-h2);
    font-weight: var(--maki-weight-semibold);
    line-height: 1.08;
    letter-spacing: -.025em;
}

body:not(.admin-body) .page-header-box h1{
    font-size: clamp(38px, 2.8vw, 50px);
    font-weight: var(--maki-weight-semibold);
    line-height: 1.06;
    letter-spacing: -.03em;
}

body:not(.admin-body) :where(.page-single-content,.service-entry) h2{
    font-size: clamp(30px, 2.2vw, 38px);
    font-weight: var(--maki-weight-semibold);
    line-height: 1.1;
    letter-spacing: -.02em;
}

body:not(.admin-body) :where(.page-single-content,.service-entry) h3{
    font-size: var(--maki-type-h3);
    font-weight: var(--maki-weight-semibold);
    line-height: 1.15;
    letter-spacing: -.015em;
}

/* Eyebrows / upper labels: compact, but never hairline. */
body:not(.admin-body) :where(
    .section-sub-heading,
    .section-title .section-sub-title,
    .maki-approach-kicker,
    .maki-ref-kicker,
    .maki-service-intro-kicker,
    .maki-doctor-profile-kicker,
    .maki-doctor-journey-eyebrow
){
    font-weight: var(--maki-weight-semibold) !important;
}

/* Long-form copy stays calm; introductory/descriptive copy gets more optical weight. */
body:not(.admin-body) :where(
    .page-single-content p,
    .service-entry p,
    .team-member-content p
){
    font-size: var(--maki-type-body) !important;
    line-height: var(--maki-leading-body) !important;
    font-weight: var(--maki-weight-regular) !important;
}

body:not(.admin-body) :where(
    .section-title p,
    .section-title-content p,
    .maki-home-hero .maki-hero-title p,
    .maki-approach-editorial-copy > p,
    .maki-ref-copy p,
    .maki-ref-process-copy p,
    .maki-service-intro-content p,
    .maki-service-hero-description,
    .maki-service-hero-description p,
    .maki-doctors-intro > p,
    .maki-doctor-detail-intro > p,
    .maki-doctor-about-text p,
    .maki-doctor-journey-head p,
    #maki-hakkinda .maki-clinic-image-highlight p
){
    font-size: var(--maki-type-body) !important;
    line-height: var(--maki-leading-body) !important;
    font-weight: var(--maki-weight-medium) !important;
}

/* Lists and information points should read as content, not fine print. */
body:not(.admin-body) :where(
    .page-single-content li,
    .service-entry li,
    .section-footer-text li,
    .maki-doctor-work-item,
    .maki-doctor-work-item span
){
    font-size: 16px !important;
    line-height: 1.62 !important;
    font-weight: var(--maki-weight-medium) !important;
}

/* Card and process descriptions. */
body:not(.admin-body) :where(
    .service-item-content p,
    .why-choose-item-content p,
    .service-item-content-metal p,
    .maki-approach-flow-item p,
    .maki-ref-card p,
    .maki-ref-step p,
    .maki-process-band-intro p,
    .maki-process-step p,
    .maki-career-card p
){
    font-size: var(--maki-type-card) !important;
    line-height: 1.62 !important;
    font-weight: var(--maki-weight-medium) !important;
}

body:not(.admin-body) :where(
    .maki-approach-flow-item h3,
    .maki-ref-card h3,
    .maki-ref-step h4,
    .maki-process-step h4,
    .maki-career-card h4
){
    font-weight: var(--maki-weight-semibold) !important;
}

/* Interactive copy uses a reliable semibold face and consistent sizing. */
body:not(.admin-body) :where(
    .btn-default,
    .readmore-btn,
    .maki-service-intro-btn,
    .maki-ref-cta,
    .maki-mobile-header-booking,
    .slicknav_nav a
){
    font-family: var(--default-font), "Helvetica Neue", Arial, sans-serif !important;
    font-weight: var(--maki-weight-semibold) !important;
}

body:not(.admin-body) .btn-default{
    font-size: var(--maki-type-cta);
}

/* Homepage quick-access copy: this was one of the main low-legibility areas. */
body:not(.admin-body) .maki-home-quick-copy strong{
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: var(--maki-weight-semibold) !important;
}

body:not(.admin-body) .maki-home-quick-copy small{
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    font-weight: var(--maki-weight-medium) !important;
    opacity: 1 !important;
}

/* Contact/helper copy remains secondary without becoming fragile. */
body:not(.admin-body) :where(
    .maki-contact-quick-copy small,
    .maki-contact-quick-copy > em,
    .maki-quick-hours-line b
){
    font-size: max(12px, var(--maki-type-meta));
    font-weight: var(--maki-weight-medium) !important;
    line-height: 1.45;
}

/* Footer copy should remain readable on large screens. */
body:not(.admin-body) :where(
    .about-footer-content p,
    .footer-opening-hours li,
    .footer-links ul li,
    .footer-contact-info-list li
){
    font-weight: var(--maki-weight-regular);
    line-height: 1.58;
}

body:not(.admin-body) .maki-footer-bottom-links a{
    font-size: 13px;
    font-weight: var(--maki-weight-medium);
}

/* Doctor profile support copy had several 10–13px desktop declarations. */
body:not(.admin-body) .maki-doctor-journey-head p{
    font-size: 15.5px !important;
}

body:not(.admin-body) .maki-career-period{
    font-size: 12px !important;
    font-weight: var(--maki-weight-semibold) !important;
}

body:not(.admin-body) .maki-doctor-portrait-placeholder small,
body:not(.admin-body) .maki-doctor-journey-aside small{
    font-size: 12px !important;
    font-weight: var(--maki-weight-semibold) !important;
}

/* Tablet */
@media only screen and (max-width: 991px){
    :root{
        --maki-type-body-lg: 16px;
        --maki-type-body: 15.5px;
        --maki-type-card: 14.5px;
        --maki-type-small: 13px;
        --maki-type-cta: 14px;
    }

    body:not(.admin-body) .section-title h1{
        font-size: clamp(38px, 5.4vw, 46px);
    }

    body:not(.admin-body) .section-title h2{
        font-size: clamp(30px, 4.6vw, 37px);
    }

    body:not(.admin-body) .page-header-box h1{
        font-size: clamp(34px, 5vw, 44px);
    }
}

/* Mobile */
@media only screen and (max-width: 767px){
    :root{
        --maki-type-body-lg: 16px;
        --maki-type-body: 15.5px;
        --maki-type-card: 14.5px;
        --maki-type-small: 13px;
        --maki-type-meta: 12px;
        --maki-type-cta: 14px;
        --maki-leading-body: 1.64;
    }

    body:not(.admin-body) .section-title h1{
        font-size: clamp(32px, 8.2vw, 39px);
    }

    body:not(.admin-body) .section-title h2{
        font-size: clamp(27px, 7vw, 34px);
    }

    body:not(.admin-body) .page-header-box h1{
        font-size: clamp(30px, 7.6vw, 38px);
    }

    body:not(.admin-body) :where(.page-single-content,.service-entry) h2{
        font-size: clamp(26px, 6.5vw, 32px);
    }

    body:not(.admin-body) :where(.page-single-content,.service-entry) h3{
        font-size: clamp(21px, 5.4vw, 26px);
    }

    body:not(.admin-body) .maki-home-hero .maki-hero-title p{
        font-size: 15px !important;
        line-height: 1.62 !important;
    }

    body:not(.admin-body) :where(
        .page-single-content li,
        .service-entry li,
        .section-footer-text li,
        .maki-doctor-work-item,
        .maki-doctor-work-item span
    ){
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

    body:not(.admin-body) .maki-home-quick-copy strong{
        font-size: 13.5px !important;
    }

    body:not(.admin-body) .maki-home-quick-copy small{
        font-size: 12px !important;
        line-height: 1.42 !important;
    }

    body:not(.admin-body) :where(
        .maki-approach-flow-item p,
        .maki-ref-card p,
        .maki-ref-step p,
        .maki-process-step p,
        .maki-career-card p
    ){
        font-size: 14px !important;
        line-height: 1.58 !important;
    }

    body:not(.admin-body) .maki-approach-flow-no,
    body:not(.admin-body) .maki-approach-visual-mark,
    body:not(.admin-body) .maki-career-period{
        font-size: 11.5px !important;
        font-weight: var(--maki-weight-semibold) !important;
    }

    body:not(.admin-body) .maki-service-hero-description,
    body:not(.admin-body) .maki-service-hero-description p{
        font-size: 15px !important;
        line-height: 1.62 !important;
        font-weight: var(--maki-weight-medium) !important;
    }

    body:not(.admin-body) .maki-mobile-header-booking{
        font-size: 12.5px !important;
        font-weight: var(--maki-weight-semibold) !important;
        letter-spacing: 0 !important;
    }

    body:not(.admin-body) :where(
        .maki-hero-actions .btn-default,
        .maki-ref-actions .maki-ref-cta,
        .maki-contact-v5 .contact-form-btn .btn-default,
        .maki-service-intro-actions .btn-default,
        .maki-service-intro-btn
    ){
        font-size: 14px !important;
        font-weight: var(--maki-weight-semibold) !important;
    }

    body:not(.admin-body) .maki-doctor-journey-head p{
        font-size: 14.5px !important;
        line-height: 1.62 !important;
    }

    body:not(.admin-body) .maki-career-card p{
        font-size: 14px !important;
    }

    body:not(.admin-body) .maki-doctor-portrait-placeholder small,
    body:not(.admin-body) .maki-doctor-journey-aside small{
        font-size: 11.5px !important;
    }

    body:not(.admin-body) .maki-footer-bottom-row .maki-copyright-line p{
        font-size: 13.5px !important;
        line-height: 1.55 !important;
    }

    body:not(.admin-body) .maki-footer-bottom-links a{
        font-size: 12.5px !important;
    }
}

/* Very small phones: preserve the same readable floor instead of shrinking copy again. */
@media only screen and (max-width: 380px){
    body:not(.admin-body) .maki-home-quick-copy small{
        font-size: 12px !important;
    }

    body:not(.admin-body) .maki-home-hero .maki-hero-title p{
        font-size: 14.5px !important;
    }

    body:not(.admin-body) .maki-mobile-header-booking{
        font-size: 12px !important;
    }
}
