/* ==========================================================
   PAGE-BUILDER BLOCKS — extracted from app.css
   ========================================================== */

/* ==========================================================
   STATISTICS BLOCK
   ========================================================== */

.statistics-block {
    background-color: var(--gray-50);
}

.statistics-block__title {
    font-weight: var(--font-weight-bold);
}

.statistics-block__item {
    background-color: var(--white);
    border: none;
    box-shadow: var(--shadow-sm);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
}

.statistics-block__icon {
    width: 2.75rem;
    height: 2.75rem;
    object-fit: contain;
    flex-shrink: 0;
}

.statistics-block__number {
    font-size: var(--font-size-display-sm);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    line-height: var(--line-height-compact);
}

.statistics-block__label {
    font-size: var(--font-size-body-sm);
    color: var(--text-secondary);
}



/* ==========================================================
   QUICK LINKS BLOCK (colored tiles)
   ========================================================== */

/* Flexible layout: items wrap to a new line by themselves, and an incomplete last row
   is centred instead of sticking to the left. Works for any number of tiles. */
/* 100 equal-width columns: each tile gets its width from PHP as an inline
   "grid-column: span N" (N = percent), so tiles can differ (e.g. 50/50, then 40/30/30)
   and the grid wraps to a new row when a tile does not fit. Without Tile Width %,
   PHP splits the row evenly. */
.quick-links-block__grid {
    display: grid;
    grid-template-columns: repeat(100, minmax(0, 1fr));
    /* No "gap" here on purpose: with 100 virtual columns, a
       real grid "gap" would be counted 99 times (once between
       every pair of the 100 tracks), which massively overflows
       the container even though only a handful of tracks are
       actually used by real tiles. Visual spacing between tiles
       is done with padding on each .grid-item instead, combined
       with a matching negative margin here so the outer edges
       still line up flush with the container. */
    margin: -8px;
}

.quick-links-block__grid-item {
    min-width: 0;
    padding: 8px;
    box-sizing: border-box;
}

@media (max-width: 991.98px) {

    .quick-links-block__grid-item {
        grid-column: span 50 !important;
    }

}

@media (max-width: 767.98px) {

    .quick-links-block__grid-item {
        grid-column: span 100 !important;
    }

}

.quick-links-block__tile {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: calc(20px * var(--rs, 1));
    overflow: hidden;
    box-shadow: 0 4px 4px -3px rgba(141, 141, 141, .2);
    color: #fff;
    text-decoration: none;
    transition: .2s;
}

.quick-links-block__tile:hover {
    color: #fff;
    box-shadow: 0 1px 3px 0 rgba(6, 55, 40, .1), 1px 6px 6px 0 rgba(6, 55, 40, .09), 2px 13px 8px 0 rgba(6, 55, 40, .05), 4px 23px 9px 0 rgba(6, 55, 40, .01), 6px 37px 10px 0 rgba(6, 55, 40, 0);
}

/* Fon rəngi əl ilə seçilmir — reference saytdakı kimi, sayına
   görə avtomatik dövr edir (1-ci yaşıl, 2-ci qəhvəyi, 3-cü mavi,
   4-cü narıncı, sonra təkrar). */
.quick-links-block__grid-item:nth-child(4n+1) .quick-links-block__tile { background-color: var(--brand-accent); }
.quick-links-block__grid-item:nth-child(4n+2) .quick-links-block__tile { background-color: #C29D7E; }
.quick-links-block__grid-item:nth-child(4n+3) .quick-links-block__tile { background-color: #83A8C1; }
.quick-links-block__grid-item:nth-child(4n) .quick-links-block__tile   { background-color: var(--brand-cta-alt); }

.quick-links-block__tile-image {
    flex-shrink: 0;
    aspect-ratio: 2.4 / 1;
    overflow: hidden;
}

.quick-links-block__tile-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quick-links-block__tile-content {
    position: relative;
    flex-grow: 1;
    padding: 16px 24px;
}

.quick-links-block__tile-title {
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    padding-right: 56px;
}

.quick-links-block__tile-button {
    position: absolute;
    top: 26px;
    right: 24px;
    bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    background-color: #fff;
    color: #232323;
    border-radius: 50%;
    transition: all .3s;
}

.quick-links-block__tile:hover .quick-links-block__tile-button {
    background-color: var(--brand-accent);
    color: #fff;
    box-shadow: 0 1px 3px 0 rgba(21, 171, 123, .2), 0 5px 5px 0 rgba(21, 171, 123, .17), 0 10px 6px 0 rgba(21, 171, 123, .1);
}

@media (max-width: 1150px) {

    .quick-links-block__tile {
        flex-direction: row;
    }

    .quick-links-block__tile-content {
        width: 70%;
    }

    .quick-links-block__tile-image {
        width: 30%;
    }

    .quick-links-block__tile-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

}

@media (max-width: 768px) {

    .quick-links-block__tile {
        flex-direction: column;
    }

    .quick-links-block__tile-content {
        width: 100%;
    }

    .quick-links-block__tile-image {
        width: 100%;
    }

}

/* Display variant "Pills". */
.quick-links-block__pills-bar {
    position: relative;
    background-color: var(--brand-accent-t1);
    border-radius: calc(23px * var(--rs, 1));
    padding: 60px 60px;
    margin-block: 50px;
    overflow: hidden;
}

.quick-links-block__pills-bar--image-right {
    padding-right: 400px;
}

.quick-links-block__pills-bar--image-left {
    padding-left: 400px;
}

.quick-links-block__pills-content {
    max-width: 100%;
}

.quick-links-block__pills-description {
    color: #000;
    font-size: 18px;
    line-height: 1.5;
    margin: 0 0 30px;
    max-width: none;
}

.quick-links-block__pills-image {
    position: absolute;
    right: 0;
    bottom: 0;
    max-width: 320px;
    height: auto;
    display: block;
}

.quick-links-block__pills-bar--image-left .quick-links-block__pills-image {
    right: auto;
    left: 40px;
}



.quick-links-block__pills {
    display: flex;
    flex-wrap: wrap;
}

.quick-links-block__pill {
    cursor: pointer;
    display: inline-block;
    background-color: #fff;
    color: #000;
    height: 46px;
    line-height: 46px;
    padding: 0 24px;
    border-radius: calc(23px * var(--rs, 1));
    margin: 0 16px 16px 0;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    text-align: center;
    transition: background-color .2s, color .2s;
}

.quick-links-block__pill:hover {
    color: #fff;
    background-color: var(--brand-accent);
}

.quick-links-block__pill--active {
    color: #fff;
    background-color: var(--brand-accent);
}

/* Dark background (e.g. blue): text and pills turn light for contrast. */
.quick-links-block__pills-bar--dark .quick-links-block__pills-description {
    color: rgba(255, 255, 255, 0.92);
}

.quick-links-block__pills-bar--dark .quick-links-block__pill {
    background-color: rgba(0, 0, 0, .15);
    color: #fff;
}

.quick-links-block__pills-bar--dark .quick-links-block__pill:hover,
.quick-links-block__pills-bar--dark .quick-links-block__pill--active {
    background-color: #fff;
    color: #2772B3;
}

@media (max-width: 1024px) {

    .quick-links-block__pills-bar--image-right,
    .quick-links-block__pills-bar--image-left {
        padding-left: 60px;
        padding-right: 60px;
    }

    .quick-links-block__pills-image {
        display: none;
    }

}

@media (max-width: 575.98px) {

    .quick-links-block__pills-bar {
        padding: 20px;
    }

}

@media (max-width: 575.98px) {

    .quick-links-block__tile-content {
        max-width: 100%;
    }

    .quick-links-block__tile-image {
        width: 100%;
        opacity: 0.25;
    }

}



/* ==========================================================
   LEADERSHIP MESSAGE BLOCK
   ========================================================== */

.leadership-message-block__card {
    background-color: var(--primary-50);
    border-radius: var(--radius-lg);
    padding: var(--space-7);
}

.leadership-message-block__photo {
    width: 100%;
    aspect-ratio: 1;
    object-fit: contain;
    border-radius: var(--radius-md);
}

.leadership-message-block__heading {
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--space-4);
}

.leadership-message-block__message p {
    margin-bottom: var(--space-3);
}

.leadership-message-block__signature {
    margin-top: var(--space-4);
    padding-top: var(--space-4);
    border-top: var(--border-width-thin) solid var(--border-default);
}

.leadership-message-block__signature-image {
    max-height: 3rem;
    width: auto;
}



/* ==========================================================
   TEAM STATS BLOCK
   ========================================================== */

.team-stats-block__text-card {
    background-color: var(--gray-50);
    border-radius: var(--radius-lg);
    padding: var(--space-7);
}

.team-stats-block__heading {
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--space-4);
}

.team-stats-block__content p {
    margin-bottom: var(--space-3);
}

.team-stats-block__stat {
    background-color: var(--primary-50);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
    flex: 1;
}

.team-stats-block__stat-number {
    font-size: var(--font-size-display-sm);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    margin-bottom: var(--space-2);
}

.team-stats-block__stat-label {
    font-size: var(--font-size-body-sm);
    color: var(--text-secondary);
}



/* ==========================================================
   DOCUMENTS BLOCK
   ========================================================== */

/* Light, almost white wrapper box. */
.documents-block__box {
    padding: 20px;
    background-color: var(--brand-surface);
    border-radius: calc(23px * var(--rs, 1));
}

.documents-block__grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

/* Each item has no background, border or shadow of its own;
   it just takes its share of the box width. */
.documents-block__card {
    width: 23%;
    margin: 0 12px;
    padding-bottom: 30px;
    display: flex;
    flex-direction: column;
}

.documents-block__card-thumb-link {
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: calc(25px * var(--rs, 1));
}

.documents-block__card-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    transition: box-shadow .2s;
}

.documents-block__card-thumb-link:hover .documents-block__card-thumb {
    box-shadow: 0px 10px 20px rgba(78, 106, 88, 0.25);
}

.documents-block__card-body {
    padding: 16px 0;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.documents-block__card-title {
    font-size: 16px;
    font-weight: bold;
    color: #000;
    margin-bottom: 0;
}

.documents-block__card-type {
    font-size: 12px;
    font-weight: normal;
    color: #7D7D7D;
    margin-left: 8px;
}

.documents-block__card-description {
    font-size: 13px;
    color: #000;
    margin: 5px 0 20px;
}

.documents-block__card-description p {
    margin: 0 0 8px;
}

/* PDF button pinned to the bottom of the card (margin-top: auto),
   icon from ico-arrow.svg instead of a text arrow. */
.documents-block__card-download {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    align-self: flex-start;
    margin-top: auto;
    cursor: pointer;
    background-color: var(--brand-accent-t1);
    color: var(--brand-accent);
    height: 52px;
    padding: 6px 28px;
    border-radius: calc(26px * var(--rs, 1));
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    font-weight: 500;
    text-align: center;
    border: none;
    transition: background-color .2s, color .2s;
}

.documents-block__card-download:hover {
    color: #fff;
    background-color: var(--brand-accent);
}

.documents-block__card-download::after {
    content: '';
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background-image: url('../images/ico-arrow.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

.documents-block__card-download:hover::after {
    background-image: url('../images/ico-arrow-white.svg');
}

/* Doctor "Sənədlər" accordion item — same document-card pattern as the
   Licenses page, but each document gets its own contained card (not one
   shared background box), arranged in a fixed 3-column grid, with a
   small fixed-size thumbnail (horizontal layout) so document scans of
   wildly different aspect ratios never blow up the card. */
.doctor-single__documents.documents-block__box {
    background: transparent;
    padding: 0;
}

.doctor-single__documents .documents-block__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-8);
    align-items: stretch;
}

.doctor-single__documents .documents-block__card {
    width: 100%;
    max-width: 360px;
    justify-self: center;
    margin: 0;
    padding: var(--space-4);
    flex-direction: column;
    align-items: center;
    gap: 0;
    background-color: var(--white);
    border-radius: var(--radius-lg);
    text-align: center;
}

.doctor-single__documents .documents-block__card-thumb-link {
    display: block;
    width: 100%;
    max-width: 288px;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: calc(8px * var(--rs, 1));
    margin-top: calc((100% - 288px) / 2);
}

.doctor-single__documents .documents-block__card-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

.doctor-single__documents .documents-block__card-body {
    align-items: center;
    padding-top: var(--space-4);
    min-width: 0;
}

.doctor-single__documents .documents-block__card-title {
    font-size: 19px;
}

.doctor-single__documents .documents-block__card-type {
    font-size: 14px;
}

.doctor-single__documents .documents-block__card-description {
    font-size: 15px;
}

.doctor-single__documents .documents-block__card-download {
    align-self: center;
    font-size: 19px;
}

@media (max-width: 768px) {

    .doctor-single__documents .documents-block__grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 480px) {

    .doctor-single__documents .documents-block__grid {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 1400px) {

    .documents-block__box {
        padding: 10px;
    }

    .documents-block__grid {
        justify-content: center;
    }

    .documents-block__card {
        width: 29%;
        margin: 10px;
    }

}

@media (max-width: 1024px) {

    .documents-block__box {
        padding: 20px 10px;
    }

}

@media (max-width: 767.98px) {

    .documents-block__box {
        padding: 20px;
    }

    .documents-block__card {
        width: 100%;
        margin: 20px;
        padding-bottom: 0;
    }

}



/* ==========================================================
   FAQ BLOCK
   ==========================================================
   Akkordeonun öz stilləri götürüldü: forma, ayırıcı xətlər və
   «+/−» düyməsi indi app.css-dəki ümumi .accordion komponentindən
   gəlir ki, saytdakı bütün sual-cavab blokları eyni görünsün.
   ========================================================== */



/* ==========================================================
   BRANCHES BLOCK
   ========================================================== */

.branches-block__title {
    font-weight: var(--font-weight-bold);
}

.branches-block__list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
}

.branches-block__item {
    flex: 1 1 calc(50% - var(--space-4) / 2);
    min-width: 20rem;
    background-color: var(--brand-surface);
    border-radius: calc(23px * var(--rs, 1));
    padding: 40px;
}

.branches-block__photo {
    width: 100%;
    height: auto;
    border-radius: var(--radius-md);
}

.branches-block__name {
    font-size: 22px;
    font-weight: bold;
    color: #000;
    line-height: 1.4;
    margin-bottom: 20px;
}

.branches-block__divider {
    width: 60px;
    height: 3px;
    background-color: var(--brand-accent);
    border-radius: calc(2px * var(--rs, 1));
    margin-bottom: 24px;
}

.branches-block__meta {
    font-size: 16px;
    color: #000;
    line-height: 1.5;
    margin-bottom: 20px;
}

.branches-block__meta a {
    color: var(--brand-accent);
    text-decoration: underline;
}

.branches-block__management {
    font-size: 16px;
    font-style: italic;
    color: #000;
    line-height: 1.5;
    margin-top: 0;
}

@media (max-width: 767.98px) {

    .branches-block__item {
        flex: 1 1 100%;
    }

}



/* ==========================================================
   CONTACT DETAILS BLOCK
   ========================================================== */

.contact-details-block__title {
    font-weight: var(--font-weight-bold);
}

.contact-details-block__card {
    position: relative;
    background-color: var(--gray-50);
    border-radius: var(--radius-lg);
    border-top: 4px solid var(--color-primary);
    padding: var(--space-7);
    height: 100%;
}

.contact-details-block__card--alt {
    border-top-color: var(--brand-cta-alt);
}

.contact-details-block__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: var(--radius-round);
    background-color: var(--white);
    color: var(--color-primary);
    box-shadow: var(--shadow-sm);
    margin-bottom: var(--space-4);
}

.contact-details-block__card--alt .contact-details-block__icon {
    color: var(--brand-cta-alt);
}

.contact-details-block__icon .dashicons {
    font-size: 1.5rem;
    width: auto;
    height: auto;
}

.contact-details-block__label {
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    margin-bottom: var(--space-2);
}

.contact-details-block__value {
    font-size: var(--font-size-body);
    color: var(--text-primary);
    margin-bottom: var(--space-2);
}

.contact-details-block__value--big {
    font-size: var(--font-size-card-title);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--space-3);
}

.contact-details-block__value a {
    color: inherit;
    text-decoration: none;
}

.contact-details-block__value a:hover {
    color: var(--color-primary);
}

.contact-details-block__value--emergency a {
    color: var(--red-500);
    font-weight: var(--font-weight-semibold);
}

.contact-details-block__divider {
    height: 1px;
    background-color: var(--border-default);
    margin-block: var(--space-4);
}



/* ==========================================================
   SOCIAL BUTTONS BLOCK
   ========================================================== */

.social-buttons-block__title {
    font-weight: var(--font-weight-bold);
}

.social-buttons-block__list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
}

.social-buttons-block__item {
    display: inline-flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-4) var(--space-7);
    border-radius: var(--radius-pill, 999px);
    color: var(--white);
    text-decoration: none;
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-body);
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast), filter var(--transition-fast);
}

.social-buttons-block__item:hover {
    transform: translateY(-3px);
    filter: brightness(1.1);
    box-shadow: var(--shadow-md);
    color: var(--white);
}

.social-buttons-block__item .dashicons {
    font-size: 1.35rem;
    width: auto;
    height: auto;
}

.social-buttons-block__letter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    font-weight: var(--font-weight-bold);
}



/* ==========================================================
   MAP BLOCK
   ========================================================== */

.map-block__title {
    font-weight: var(--font-weight-bold);
}

.map-block__frame {
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.map-block__frame iframe {
    display: block;
}



/* ==========================================================
   FEEDBACK FORM BLOCK
   ========================================================== */

.feedback-form-block__card {
    position: relative;
    border-radius: var(--radius-lg);
    padding: var(--space-8) var(--space-7);
    padding-left: 3.5rem;
    padding-right: 220px;
    overflow: visible;
    background-position: 100% 101%;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjg4IiBoZWlnaHQ9IjkzIiB2aWV3Qm94PSIwIDAgMjg4IDkzIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTI0MiA0MS4zNkg0NkMyMC41OTQ5IDQxLjM2IDAgNjEuOTU0OSAwIDg3LjM2VjkyLjM2SDI2OEMyNzkuMDQ2IDkyLjM2IDI4OCA4My40MDU3IDI4OCA3Mi4zNlYwLjU1OTk1M0MyODggMS4zMDI3MyAyODggMS42NzQxMiAyODcuOTk1IDEuOTg4MjVDMjg3LjY1NiAyMy41ODc4IDI3MC4yMjggNDEuMDE1NyAyNDguNjI4IDQxLjM1NUMyNDguMzE0IDQxLjM2IDI0Ny45NDMgNDEuMzYgMjQ3LjIgNDEuMzZMMjQyIDQxLjM2WiIgZmlsbD0iIzEzQUI3QiIvPgo8L3N2Zz4K");
}

.feedback-form-block__content {
    position: relative;
    z-index: 1;
    max-width: 44rem;
}

.feedback-form-block__title {
    font-size: var(--font-size-display-sm);
    font-weight: var(--font-weight-bold);
    color: var(--text-primary);
    margin-bottom: var(--space-3);
}

.feedback-form-block__description {
    font-size: var(--font-size-body);
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: var(--space-5);
}

.feedback-form-block__card--dark .feedback-form-block__title,
.feedback-form-block__card--dark .feedback-form-block__description {
    color: var(--white);
}

.feedback-form-block__row {
    margin-bottom: var(--space-3);
}

.feedback-form-block__input {
    width: 100%;
    padding: 0.9rem 1.5rem;
    background-color: #fff;
    border: none;
    border-radius: var(--radius-pill, 999px);
    font-size: var(--font-size-body);
    color: var(--text-primary);
}

.feedback-form-block__input::placeholder {
    color: #7D7D7D;
}

.feedback-form-block__input:focus {
    outline: none;
    box-shadow: 0 0 0 2px var(--color-primary, var(--brand-accent));
}

.feedback-form-block__consent {
    display: flex;
    align-items: flex-start;
    gap: var(--space-2);
    margin-bottom: var(--space-5);
    cursor: pointer;
    font-size: var(--font-size-meta);
    color: var(--text-primary);
}

.feedback-form-block__card--dark .feedback-form-block__consent {
    color: var(--white);
}

.feedback-form-block__consent input[type="checkbox"] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    accent-color: var(--color-primary, var(--brand-accent));
}

.feedback-form-block__consent a {
    color: inherit;
    text-decoration: underline;
}

.feedback-form-block__submit {
    display: inline-flex;
    align-items: center;
    padding: 0.85rem 2.25rem;
    background-color: var(--color-secondary, var(--brand-cta-alt));
    color: #fff;
    font-weight: var(--font-weight-bold);
    border: none;
    border-radius: var(--radius-pill, 999px);
    font-size: var(--font-size-body);
    cursor: pointer;
    transition: filter .15s ease;
}

.feedback-form-block__submit:hover {
    filter: brightness(0.94);
}

.feedback-form-block__image {
    position: absolute;
    right: 40px;
    bottom: 0;
    width: 270px;
    height: 380px;
    object-fit: contain;
    object-position: bottom;
    z-index: 0;
}

@media (max-width: 991.98px) {

    .feedback-form-block__card {
        padding-right: var(--space-7);
    }

    .feedback-form-block__image {
        display: none;
    }

}

@media (max-width: 575.98px) {

    .feedback-form-block__card {
        padding: var(--space-6) var(--space-5);
    }

}



/* ==========================================================
   CONTENT CARDS BLOCK (universal, reusable)
   ========================================================== */

.content-cards-block__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: var(--space-4);
}

.content-cards-block__title {
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--space-2);
}

.content-cards-block__subtitle {
    color: var(--text-secondary);
}

.content-cards-block__subtitle p {
    margin: 0;
}

.content-cards-block__cta {
    flex-shrink: 0;
}

.content-cards-block__card {
    display: flex;
    flex-direction: column;
    gap: 20px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: calc(23px * var(--rs, 1));
    padding: 40px;
    height: 100%;
}

.content-cards-block__card-text {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

/* Şəkil başlığın solunda, kvadrat kiçik lövhə kimi — referensdəki
   kimi. Aşağıda duranda mətnlə əlaqəsi itirdi. */
.content-cards-block__card-head {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.content-cards-block__card-thumb {
    flex: 0 0 auto;
    width: 96px;
    height: 96px;
    border-radius: calc(12px * var(--rs, 1));
    overflow: hidden;
}

.content-cards-block__card-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.content-cards-block__card-heading {
    flex: 1 1 auto;
    min-width: 0;
}

.content-cards-block__card-heading .block-title {
    margin: 0;
}

/* Başlığın altındakı qısa xətt: referensdə mətni başlıqdan ayırır. */
 /* Başlığın altındakı xətt: uzunluğu başlığa yaxındır və tam
    görünür — yarımşəffaf olanda yaşıl fonda çirkli görünürdü. */
.content-cards-block__card-heading .block-divider {
    width: 120px;
    margin: 14px 0 0;
    border: 0;
    border-top: 3px solid currentColor;
    opacity: 1;
}

.content-cards-block__card-content > :first-child {
    margin-top: 0;
}

.content-cards-block__card-content > :last-child {
    margin-bottom: 0;
}

.content-cards-block__card-content p {
    margin: 0 0 12px;
    line-height: 1.6;
}

/* Siyahı: halqa işarəsi, referensdəki kimi — brauzerin nöqtəsi
   yaşıl fonda itirdi. */
.content-cards-block__card-content ul {
    margin: 0 0 12px;
    padding: 0;
    list-style: none;
}

.content-cards-block__card-content ul > li {
    position: relative;
    margin-bottom: 8px;
    padding-left: 28px;
    line-height: 1.5;
}

 /* Siyahı işarəsi yalnız həqiqi siyahıda: abzaslar toxunulmaz
    qalır. */
.content-cards-block__card-content ul > li::before {
    position: absolute;
    top: .45em;
    left: 0;
    width: 12px;
    height: 12px;
    border: 2px solid currentColor;
    border-radius: 50%;
    opacity: .7;
    content: "";
}

@media (max-width: 575.98px) {

    .content-cards-block__card {
        padding: 28px;
    }

    .content-cards-block__card-thumb {
        width: 72px;
        height: 72px;
    }
}

.content-cards-block__card-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    padding: 12px 28px;
    background-color: var(--brand-accent);
    border-radius: calc(40px * var(--rs, 1));
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: background-color .2s ease;
}

.content-cards-block__card-cta:hover {
    background-color: color-mix(in srgb, var(--brand-accent) 86%, #000);
    color: #fff;
}

/* Card's own background. With a fill the border is removed (it only smears the colour
   edge), and on a dark fill the text, divider and button switch to light. */
.content-cards-block__card--filled {
    border-color: transparent;
}

.content-cards-block__card--dark,
.content-cards-block__card--dark .block-title,
.content-cards-block__card--dark .content-cards-block__card-content,
.content-cards-block__card--dark .content-cards-block__card-content :is(p, li, strong) {
    color: var(--text-inverse);
}

.content-cards-block__card--dark .block-divider {
    background-color: rgba(255, 255, 255, .5);
}

.content-cards-block__card--dark .content-cards-block__card-content a {
    color: var(--text-inverse);
    text-decoration: underline;
}

.content-cards-block__card--dark .content-cards-block__card-cta {
    background-color: var(--white);
    color: var(--text-primary);
}

.content-cards-block__card--dark .content-cards-block__card-cta:hover {
    background-color: rgba(255, 255, 255, .88);
    color: var(--text-primary);
}

@media (max-width: 767.98px) {

    .content-cards-block__card {
        flex-direction: column;
    }

    .content-cards-block__card-image {
        align-self: center;
        max-width: 45%;
    }
}

.block-divider {
    width: 104px;
    height: 5px;
    margin: 16px 0;
    border: none;
    border-radius: calc(40px * var(--rs, 1));
    background-color: var(--brand-primary-dark);
}

/* Shared section/card title — used by Category Block, Equipment
   Showcase Block and Content Cards Block. Add ".block-title--spaced"
   when the title isn't immediately followed by a .block-divider (it
   needs its own bottom margin instead). Add
   ".block-title--reserve-lines" when the title sits beside sibling
   cards whose content length varies, so short one-line titles don't
   let the divider/content below drift up. */
.block-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    color: #000;
    margin: 0;
}

.block-title--spaced {
    margin: 0 0 24px;
}

.block-title--reserve-lines {
    min-height: calc(1.2em * 2);
}

@media (max-width: 767.98px) {

    .block-title {
        font-size: 24px;
    }

}

/* Shared round "arrow" accent inside a link — white circle by
   default, turns green on hover/focus. Matches the established
   Quick Links Block convention (tiles/list/circle/group already use
   this exact pattern). Positioning (static flex item vs.
   position:absolute) stays in each block's own modifier class next
   to this one. */
.block-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: #fff;
    color: #232323;
    transition: all .3s;
}

a:hover .block-arrow,
a:focus-visible .block-arrow {
    background-color: var(--brand-accent);
    color: #fff;
}

.content-cards-block__card-content p {
    font-size: 16px;
    color: #000;
    line-height: 1.7;
    margin-bottom: 22px;
}

.content-cards-block__card-content a {
    color: #000;
    text-decoration: none;
    transition: color .2s ease;
}

.content-cards-block__card-content a:hover,
.content-cards-block__card-content a:focus-visible {
    color: var(--brand-accent);
}

.content-cards-block__card-content ul {
    list-style: none !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}

 /* Bu qayda köhnə, link siyahıları üçün yazılmışdı və `!important`
    ilə maddələrin girintisini də sıfırlayırdı — işarə mətnin üstünə
    düşürdü. Girinti saxlanılır, qalan sıfırlamalar yerində qalır. */
.content-cards-block__card-content ul li {
    background: none !important;
    border-radius: 0 !important;
    padding: 0 0 0 28px !important;
    margin: 0 0 8px !important;
}

.content-cards-block__card-content ul li a,
.content-cards-block__card-content ul a {
    display: inline !important;
    background: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    color: #000 !important;
    font-weight: 400 !important;
    text-decoration: underline !important;
    transition: color .2s ease !important;
}

.content-cards-block__card-content ul a:hover,
.content-cards-block__card-content ul a:focus-visible {
    color: var(--brand-accent) !important;
}

/* Links on a dark (colored) card: the list-link rule above forces
   black with !important, which is unreadable on green. White,
   underlined, slightly bolder; hover dims instead of turning green. */
.content-cards-block__card--dark .content-cards-block__card-content a,
.content-cards-block__card--dark .content-cards-block__card-content ul a,
.content-cards-block__card--dark .content-cards-block__card-content ul li a {
    color: var(--text-inverse, #fff) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255, 255, 255, .6) !important;
    text-underline-offset: 3px;
}

.content-cards-block__card--dark .content-cards-block__card-content a:hover,
.content-cards-block__card--dark .content-cards-block__card-content a:focus-visible,
.content-cards-block__card--dark .content-cards-block__card-content ul a:hover,
.content-cards-block__card--dark .content-cards-block__card-content ul a:focus-visible {
    color: var(--text-inverse, #fff) !important;
    text-decoration-color: #fff !important;
    opacity: .85;
}

/* Same for the colored text half of a split Rich Content block
   (e.g. the green hero panel on hub pages). */
.rich-content-block__split-text .rich-content a {
    color: var(--text-inverse, #fff);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(255, 255, 255, .6);
    text-underline-offset: 3px;
}

.rich-content-block__split-text .rich-content a:hover,
.rich-content-block__split-text .rich-content a:focus-visible {
    color: var(--text-inverse, #fff);
    text-decoration-color: #fff;
    opacity: .85;
}



/* ==========================================================
   RICH CONTENT BLOCK (Page Builder — used for informational
   hub-page sections, e.g. "Xəstələr üçün məlumat")
   ========================================================== */

.rich-content-block__card {
    background: linear-gradient(0deg,var(--brand-surface-3),var(--brand-surface-3)),var(--brand-accent-d2);
    border-radius: var(--radius-lg);
    padding: var(--space-7) var(--space-6);
}

.rich-content-block__card h2 {
    padding-bottom: var(--space-4);
    border-bottom: var(--border-width-thin) solid var(--border-default);
}

.rich-content-block__split {
    display: flex;
    align-items: stretch;
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.rich-content-block__split-text {
    flex: 1 1 62%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--space-7) var(--space-6);
    color: #fff;
}

.rich-content-block__split-text h2 {
    color: #fff;
}

.rich-content-block__split-text .rich-content,
.rich-content-block__split-text .rich-content :is(p, li) {
    color: rgba(255, 255, 255, 0.92);
}

.rich-content-block__split-text .rich-content {
    font-size: 1.1875rem;
}

.rich-content-block__split-text .rich-content ul li::before {
    border-color: currentColor;
}

.rich-content-block__split-image {
    flex: 0 0 38%;
    max-width: 38%;
}

.rich-content-block__split-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Yaşıl dairə markerli siyahılar — WYSIWYG redaktorunda yazılan
   adi <ul> siyahıları üçün, "Diqqət!" bölməsindəki kimi (referans
   saytdakı yaşıl konturlu dairə markerlərinə bənzər). */
.rich-content {
    font-size: 1.0625rem;
}

.rich-content ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 1rem;
    column-count: 3;
    column-gap: 2rem;
}

.rich-content ul li {
    position: relative;
    padding-left: 1.75rem;
    margin-bottom: 0.6rem;
    break-inside: avoid;
}

@media (max-width: 991.98px) {

    .rich-content ul {
        column-count: 2;
    }

}

@media (max-width: 767.98px) {

    .rich-content ul {
        column-count: 1;
    }

}

.rich-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4em;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--color-primary, var(--brand-accent));
}

@media (max-width: 767.98px) {

    .rich-content-block__split {
        flex-direction: column;
    }

    .rich-content-block__split-image {
        min-height: 220px;
        order: -1;
    }

}

.toc-block__card {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-3) var(--space-6);
    background: linear-gradient(0deg,var(--brand-surface-3),var(--brand-surface-3)),var(--brand-accent-d2);
    border-radius: var(--radius-lg);
    padding: var(--space-6);
}

.toc-block__card--cols-2 {
    grid-template-columns: repeat(2, 1fr);
}

.toc-block__card--cols-4 {
    grid-template-columns: repeat(4, 1fr);
}

.toc-block__link {
    display: inline-block;
    justify-self: start;
    color: var(--text-primary);
    text-decoration: underline;
    padding: var(--space-1) var(--space-3);
    margin-inline: calc(-1 * var(--space-3));
    border-radius: var(--radius-pill, 999px);
    transition: background-color var(--transition-fast), color var(--transition-fast);
}

.toc-block__link:hover {
    background-color: var(--brand-accent);
    color: var(--white);
    text-decoration: none;
}

@media (max-width: 767.98px) {

    .toc-block__card,
    .toc-block__card--cols-3,
    .toc-block__card--cols-4 {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 480px) {

    .toc-block__card,
    .toc-block__card--cols-2,
    .toc-block__card--cols-3,
    .toc-block__card--cols-4 {
        grid-template-columns: 1fr;
    }

}

/* Həkim səhifəsindəki «Əlavə məlumat» akkordeonu da ümumi
   .accordion komponentindən istifadə edir — ayrıca şevron şəkli
   və boz kartlar artıq yoxdur. */



/* ==========================================================
   QUICK LINKS BLOCK — "List" display style
   ========================================================== */

.quick-links-block__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

@media (max-width: 991.98px) {

    .quick-links-block__list {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 575.98px) {

    .quick-links-block__list {
        grid-template-columns: 1fr;
    }

}

.quick-links-block__list-item {
    display: flex;
    align-items: center;
    height: 100px;
    background-color: var(--brand-surface);
    border-radius: calc(20px * var(--rs, 1));
    overflow: hidden;
    text-decoration: none;
    color: #232323;
    transition: box-shadow .3s ease;
}

.quick-links-block__list-item:hover {
    color: #232323;
    box-shadow: 6px 37px 10px 0 rgba(6, 55, 40, 0), 4px 23px 9px 0 rgba(6, 55, 40, .01), 2px 13px 8px 0 rgba(6, 55, 40, .05), 1px 6px 6px 0 rgba(6, 55, 40, .09), 0 1px 3px 0 rgba(6, 55, 40, .1);
}

.quick-links-block__list-item-image {
    flex-shrink: 0;
    width: 63px;
    height: 100px;
    object-fit: cover;
}

.quick-links-block__list-item-title {
    flex-grow: 1;
    min-width: 0;
    padding: 0 8px;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.3;
}

.quick-links-block__list-item-arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 16px 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #fff;
    color: #232323;
    transition: all .3s;
}

.quick-links-block__list-item:hover .quick-links-block__list-item-arrow {
    background-color: var(--brand-accent);
    color: #fff;
    box-shadow: 0 1px 3px 0 rgba(21, 171, 123, .2), 0 5px 5px 0 rgba(21, 171, 123, .17), 0 10px 6px 0 rgba(21, 171, 123, .1);
}

/* ==========================================================
   QUICK LINKS BLOCK — "Circle" display style
   (matches reference .b-service-tile-diagnostic exactly)
   ========================================================== */

.quick-links-block__circle {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

@media (max-width: 1024px) {

    .quick-links-block__circle {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 575.98px) {

    .quick-links-block__circle {
        grid-template-columns: 1fr;
    }

}

.quick-links-block__circle-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px;
    padding-right: 56px;
    border-radius: calc(20px * var(--rs, 1));
    background-color: var(--brand-surface);
    text-decoration: none;
    color: #232323;
    transition: box-shadow .3s ease;
}

.quick-links-block__circle-item:hover {
    color: #232323;
    box-shadow: 6px 37px 10px 0 rgba(6, 55, 40, 0), 4px 23px 9px 0 rgba(6, 55, 40, .01), 2px 13px 8px 0 rgba(6, 55, 40, .05), 1px 6px 6px 0 rgba(6, 55, 40, .09), 0 1px 3px 0 rgba(6, 55, 40, .1);
}

.quick-links-block__circle-item-photo {
    flex-shrink: 0;
    display: block;
    width: 74px;
    height: 74px;
    border-radius: 50%;
    overflow: hidden;
}

.quick-links-block__circle-item-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quick-links-block__circle-item-title {
    font-size: 18px;
    font-weight: 700;
}

.quick-links-block__circle-item-arrow {
    position: absolute;
    bottom: 24px;
    right: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #fff;
    color: #232323;
    transition: all .3s;
}

.quick-links-block__circle-item:hover .quick-links-block__circle-item-arrow {
    background-color: var(--brand-accent);
    color: #fff;
    box-shadow: 0 1px 3px 0 rgba(21, 171, 123, .2), 0 5px 5px 0 rgba(21, 171, 123, .17), 0 10px 6px 0 rgba(21, 171, 123, .1);
}

/* ==========================================================
   QUICK LINKS BLOCK — "Group" display style
   (matches reference .b-service-group exactly)
   ========================================================== */

.quick-links-block__group {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
}

@media (max-width: 1400px) {

    .quick-links-block__group {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }

}

@media (max-width: 768px) {

    .quick-links-block__group {
        grid-template-columns: repeat(2, 1fr);
    }

}

.quick-links-block__group-item {
    display: flex;
    align-items: center;
    background-color: var(--brand-surface);
    border-radius: calc(20px * var(--rs, 1));
    padding: 14px 80px 14px 24px;
    text-decoration: none;
    color: #232323;
    position: relative;
    transition: all .3s;
}

.quick-links-block__group-item:hover {
    color: #232323;
    box-shadow: 0 1px 3px 0 rgba(6, 55, 40, .1), 1px 6px 6px 0 rgba(6, 55, 40, .09), 2px 13px 8px 0 rgba(6, 55, 40, .05), 4px 23px 9px 0 rgba(6, 55, 40, .01), 6px 37px 10px 0 rgba(6, 55, 40, 0);
}

.quick-links-block__group-item-title {
    font-weight: 400;
}

.quick-links-block__group-item-arrow {
    position: absolute;
    top: 50%;
    right: 24px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #fff;
    color: #232323;
    transition: all .3s;
}

.quick-links-block__group-item:hover .quick-links-block__group-item-arrow {
    background-color: var(--brand-accent);
    color: #fff;
    box-shadow: 0 1px 3px 0 rgba(21, 171, 123, .2), 0 5px 5px 0 rgba(21, 171, 123, .17), 0 10px 6px 0 rgba(21, 171, 123, .1);
}

@media (max-width: 768px) {

    .quick-links-block__group-item {
        padding: 12px 36px 12px 12px;
        min-height: 52px;
        font-weight: 700;
    }

    .quick-links-block__group-item-arrow {
        top: 50%;
        right: 12px;
        transform: translateY(-50%);
        width: 8px;
        height: 12px;
        background-color: transparent;
        color: #232323;
    }

}

/* İki Quick Links Block bir-birinin ardınca gələndə (məsələn,
   yuxarıda Circle, aşağıda Group), aralarındakı boş sahəni
   azaltmaq üçün ikincinin yuxarı boşluğunu götürürük. */
.quick-links-block + .quick-links-block {
    padding-top: 0 !important;
}

/* ==========================================================
   FEATURES BLOCK — "numbered" layout style (additive only,
   doesn't touch grid/cards/icons styling used elsewhere)
   ========================================================== */

.features-block__numbered-item {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4);
    height: 100%;
}

.features-block__numbered-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: var(--color-primary, var(--brand-accent));
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
}

.features-block__numbered-text h5 {
    font-weight: 700;
    margin-bottom: 0.4rem;
}

.features-block__number-card {
    max-width: 320px;
    margin-inline: auto;
    padding: var(--space-7) var(--space-6);
    background-color: var(--brand-surface);
    border-radius: var(--radius-lg);
    box-shadow: 0 .25rem 1rem rgba(0, 0, 0, .05);
}

.features-block__number-card h5 {
    font-size: 1.25rem;
}

.features-block__number-card p {
    font-size: 1.0625rem;
}

.features-block--light {
    background-color: var(--brand-surface);
}

.features-block--light .features-block__number-card {
    background-color: #fff;
}

/* ==========================================================
   CATEGORY BLOCK
   ========================================================== */

.category-block {
    padding: var(--space-block) 0;
}

.category-block__card {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-5);
    background-color: var(--surface-card);
    border-radius: var(--radius-card);
    border: 1px solid rgba(0, 0, 0, .1);
    box-shadow: var(--shadow-card);
    padding: var(--space-6);
    overflow: hidden;
}

.category-block__picture {
    position: absolute;
    left: 0;
    width: 200px;
    z-index: 1;
    pointer-events: none;
}

.category-block__picture img {
    display: block;
    width: 100%;
    height: auto;
}

.category-block__content {
    flex: 0 1 50%;
    min-width: 280px;
}

.category-block__content--with-picture {
    padding-left: calc(200px + var(--space-4));
}

.category-block__stat {
    margin: 0;
    font-size: var(--font-size-body);
    line-height: 1.3;
}

.category-block__stat-value {
    font-size: var(--font-size-body-lg);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
}

.category-block__description {
    margin: 0;
    font-size: var(--font-size-body);
    line-height: 1.6;
    color: var(--text-primary);
}

.category-block__links {
    flex: 1 1 420px;
    display: grid;
    gap: var(--space-4);
    position: relative;
    z-index: 2;
}

.category-block__links--cols-1 { grid-template-columns: 1fr; }
.category-block__links--cols-2 { grid-template-columns: repeat(2, 1fr); }
.category-block__links--cols-3 { grid-template-columns: repeat(3, 1fr); }

.category-block__link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    min-height: 6rem;
    padding: var(--space-5) var(--space-5);
    background-color: var(--surface-section);
    border-radius: var(--radius-lg);
    color: var(--text-primary);
    font-weight: var(--font-weight-bold);
    text-decoration: none;
    transition: background-color .2s ease;
}

.category-block__link:hover {
    background-color: var(--brand-accent-t1);
    color: var(--text-primary);
}

@media (max-width: 991.98px) {

    .category-block__card {
        flex-direction: column;
        padding: var(--space-5);
    }

    .category-block__picture {
        position: static;
        width: 150px;
        margin: 0 auto var(--space-4);
    }

    .category-block__content,
    .category-block__content--with-picture,
    .category-block__links {
        width: 100%;
        padding-left: 0;
    }

    .category-block__links--cols-3 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767.98px) {

    .category-block {
        padding: var(--space-6) 0;
    }

    .category-block__links,
    .category-block__links--cols-2,
    .category-block__links--cols-3 {
        grid-template-columns: 1fr;
    }

    .category-block__link {
        min-height: auto;
        flex-direction: row;
        align-items: center;
        font-size: var(--font-size-body);
    }
}

/* ==========================================================
   EQUIPMENT SHOWCASE BLOCK
   (card WITHOUT "Equipment Title" -> diag pair-card;
    card WITH "Equipment Title" -> compact panel card)
   ========================================================== */

.equipment-showcase-block {
    padding: 50px 0;
}

.equipment-showcase-block__row {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    width: 100%;
}

.equipment-showcase-block__card {
    display: flex;
    background-color: #fff;
    border-radius: calc(20px * var(--rs, 1));
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .1);
}

/* --- Panel variant (single full-width card) --- */

.equipment-showcase-block__card--panel {
    flex: 1 1 100%;
}

.equipment-showcase-block__panel-links {
    width: 38%;
    flex-shrink: 0;
    padding: 24px;
    display: grid;
    gap: 16px;
    align-content: center;
}

.equipment-showcase-block__panel-link {
    position: relative;
    display: block;
    background-color: var(--brand-surface);
    border-radius: calc(20px * var(--rs, 1));
    padding: 16px 60px 16px 24px;
    color: #000;
    text-decoration: none;
    transition: background-color .3s ease;
}

.equipment-showcase-block__panel-link:hover {
    background-color: var(--brand-accent-t1);
}

.equipment-showcase-block__panel-link-title {
    font-size: 20px;
    font-weight: 700;
}

.equipment-showcase-block__panel-link-arrow {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.equipment-showcase-block__panel-content {
    width: 62%;
    display: flex;
    align-items: center;
    gap: 24px;
}

.equipment-showcase-block__panel-picture {
    flex-shrink: 0;
    align-self: flex-end;
    width: 380px;
}

.equipment-showcase-block__panel-picture img {
    display: block;
    width: 100%;
    height: auto;
}

.equipment-showcase-block__panel-text {
    flex: 1 1 auto;
    padding: 24px 24px 24px 0;
    min-width: 0;
}

.equipment-showcase-block__panel-description {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: #000;
}

@media (max-width: 1150px) {

    .equipment-showcase-block__card--panel {
        flex-direction: column;
    }

    .equipment-showcase-block__panel-links,
    .equipment-showcase-block__panel-content {
        width: 100%;
    }

    .equipment-showcase-block__panel-content {
        flex-direction: column;
    }

    .equipment-showcase-block__panel-picture {
        align-self: center;
        width: 220px;
    }

    .equipment-showcase-block__panel-text {
        padding: 0 24px 24px;
    }
}

/* --- Diagnosis variant (paired cards) --- */

.equipment-showcase-block__card--diag {
    flex: 1 1 320px;
    min-height: 400px;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(1) {
    flex: 1.6 1 320px;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(2) {
    flex: 0.85 1 220px;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(1) .equipment-showcase-block__diag-links {
    gap: 10px;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(1) .equipment-showcase-block__diag-link {
    padding: 10px;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(2) .equipment-showcase-block__diag-link {
    padding: 16px;
    max-width: 75%;
}

.equipment-showcase-block__row .equipment-showcase-block__card--diag:nth-child(2) .equipment-showcase-block__diag-picture {
    width: 210px;
}

.equipment-showcase-block__diag-content {
    flex: 1 1 auto;
    padding: 32px 24px;
    min-width: 0;
}

.equipment-showcase-block__diag-links {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.equipment-showcase-block__diag-links--cols-2 {
    grid-template-columns: repeat(2, 1fr);
}

.equipment-showcase-block__diag-link {
    display: block;
    padding: 20px;
    background-color: var(--brand-surface);
    border-radius: calc(20px * var(--rs, 1));
    color: #000;
    text-decoration: none;
    transition: background-color .2s ease;
}

.equipment-showcase-block__diag-link:hover {
    background-color: var(--brand-accent-t1);
}

.equipment-showcase-block__diag-link-title {
    font-size: 20px;
    font-weight: 700;
}

.equipment-showcase-block__diag-picture {
    position: relative;
    flex-shrink: 0;
    align-self: stretch;
    width: 180px;
    overflow: hidden;
}

.equipment-showcase-block__diag-picture img {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 1150px) {

    .equipment-showcase-block__card--diag {
        flex: 1 1 100%;
    }
}

@media (max-width: 767.98px) {

    .equipment-showcase-block__card--diag {
        flex-direction: column;
        min-height: 0;
    }

    .equipment-showcase-block__diag-links--cols-2 {
        grid-template-columns: 1fr;
    }

    .equipment-showcase-block__diag-picture {
        width: 100%;
        height: 180px;
    }

    .equipment-showcase-block__panel-link {
        padding: 16px 52px 16px 16px;
    }

    .equipment-showcase-block__panel-link-title {
        font-size: 17px;
    }
}

/* ==========================================================
   CTA BLOCK + STATISTICS BLOCK PAIRING
   page-hub.php wraps a CTA Block that's immediately followed
   by a Statistics Block in a shared ".cta-stats-pair" flex
   row (only for that exact adjacency — either block used
   alone, or next to anything else, renders completely
   unchanged). Real flexbox + align-items:stretch (the
   default) keeps both sides the same height automatically,
   no matter how their content changes later — no hand-tuned
   pixel heights to keep in sync.
   ========================================================== */

.cta-stats-pair {
    display: flex;
    align-items: stretch;
    gap: 48px;
    padding-block: var(--space-region);
}

.cta-stats-pair .cta > .container,
.cta-stats-pair .statistics-block > .container {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}

.cta-stats-pair .cta,
.cta-stats-pair .statistics-block {
    padding-top: 0;
    padding-bottom: 0;
    background-color: transparent;
}

.cta-stats-pair .cta {
    flex: 1 1 70%;
    display: flex;
    height: auto;
}

.cta-stats-pair .cta > .container {
    display: contents;
}

.cta-stats-pair .cta-container {
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    align-items: flex-start;
}

.cta-stats-pair .statistics-block {
    flex: 0 0 23%;
    display: flex;
    height: auto;
}

.cta-stats-pair .statistics-block > .container {
    display: contents;
}

.cta-stats-pair .statistics-block > .container > .row {
    flex: 1 1 auto;
    height: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 16px 0;
    width: 100%;
    margin-top: auto;
    background-color: var(--brand-accent-t1);
    border-radius: calc(20px * var(--rs, 1));
    padding: 24px;
    box-sizing: border-box;
}

.cta-stats-pair .statistics-block > .container > .row > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto;
}

.cta-stats-pair .statistics-block__item {
    height: auto;
    background-color: transparent;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
}

.cta-stats-pair .statistics-block__number {
    font-size: 36px;
    color: #000;
}

@media (max-width: 991.98px) {

    .cta-stats-pair {
        flex-direction: column;
    }

    .cta-stats-pair .cta,
    .cta-stats-pair .statistics-block {
        flex: 1 1 auto;
    }

}

/* ==========================================================
   QUICK LINKS BLOCK — "Haqqımızda" page override only
   Display Style stays "Tile" in the editor everywhere,
   including here — this block is not touched. This override
   is scoped to a single instance via its Section Name (id),
   and restyles that ONE section to match the reference
   site's dedicated .b-about-fmenu component exactly (fixed
   220px card height, photo absolutely positioned bottom-right
   at natural size behind the text, pill-shaped text button).
   Every other page using display_style = Tile is completely
   unaffected.
   Set this block's "Section Name" field to: quick-link-about
   ========================================================== */

#quick-link-about .quick-links-block__tile {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    height: 220px;
    border-radius: calc(20px * var(--rs, 1));
    overflow: hidden;
    box-shadow: none;
    box-sizing: border-box;
}

#quick-link-about .quick-links-block__tile:hover {
    box-shadow: none;
}

/* 5 fixed colours cycling in this exact order — matches the
   reference site's .b-about-fmenu palette, not the site-wide
   4-colour Tile cycle used elsewhere. */
#quick-link-about .quick-links-block__grid-item:nth-child(5n+1) .quick-links-block__tile { background-color: var(--brand-accent-d2); }
#quick-link-about .quick-links-block__grid-item:nth-child(5n+2) .quick-links-block__tile { background-color: #A08F7D; }
#quick-link-about .quick-links-block__grid-item:nth-child(5n+3) .quick-links-block__tile { background-color: #A76795; }
#quick-link-about .quick-links-block__grid-item:nth-child(5n+4) .quick-links-block__tile { background-color: #2772B3; }
#quick-link-about .quick-links-block__grid-item:nth-child(5n)   .quick-links-block__tile { background-color: #B79295; }

#quick-link-about .quick-links-block__tile-image {
    position: absolute;
    right: 0;
    bottom: 0;
    top: auto;
    left: auto;
    aspect-ratio: auto;
    flex-shrink: initial;
    z-index: 0;
    overflow: visible;
}

#quick-link-about .quick-links-block__tile-image img {
    display: block;
    max-width: 100%;
    max-height: 100%;
}

#quick-link-about .quick-links-block__tile-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
    max-width: 70%;
    padding: 24px 0 28px 28px;
    box-sizing: border-box;
}

#quick-link-about .quick-links-block__tile-title {
    font-size: 28px;
    font-weight: 400;
    line-height: 120%;
    padding-right: 0;
    margin: 0 0 10px;
}

#quick-link-about .quick-links-block__tile-description {
    font-size: 12px;
    font-weight: 400;
    line-height: normal;
    margin-top: 12px;
    color: #fff;
}

#quick-link-about .quick-links-block__tile-button {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    display: block;
    width: 134px;
    height: 34px;
    line-height: 34px;
    border-radius: calc(10px * var(--rs, 1));
    background-color: #fff;
    color: #000;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    padding: 0;
    margin: auto 0 0;
    flex-shrink: 0;
    box-shadow: 0 10px 20px rgba(78, 106, 88, .25);
}

#quick-link-about .quick-links-block__tile-button svg {
    display: none;
}

#quick-link-about .quick-links-block__tile-button::before {
    content: "Ətraflı";
}

#quick-link-about .quick-links-block__tile-button::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    width: 0;
    height: 0;
    margin-top: -6px;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 9px solid #000;
}

#quick-link-about .quick-links-block__tile:hover .quick-links-block__tile-button {
    background-color: var(--brand-surface);
}

@media (max-width: 1150px) {

    #quick-link-about .quick-links-block__tile {
        flex-direction: column;
    }

    #quick-link-about .quick-links-block__tile-content {
        width: auto;
    }

}

@media (max-width: 480px) {

    #quick-link-about .quick-links-block__tile {
        height: 290px;
        border-radius: calc(10px * var(--rs, 1));
    }

    #quick-link-about .quick-links-block__tile-content {
        padding: 10px 5px 15px 15px;
    }

}


/* ==========================================================
   INTRO BLOCK
   Coloured intro panel: text on a solid background, a photo in the other half,
   both sides the same height.
   ========================================================== */

.intro-block__panel {
    display: grid;
    grid-template-columns: 1fr var(--intro-image-width, 40%);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.intro-block__panel--full {
    grid-template-columns: 1fr;
}

.intro-block__text {
    padding: var(--space-8) var(--space-7);
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* The panel colour is set on the grid itself, but the text half gets its own background:
       otherwise, with an image narrower than 100%, the rest of the row would stay white. */
    background-color: inherit;
}

/* Markup order is always "text, then image" (screen readers, mobile). The "left"
   position swaps the columns with the grid, so the columns themselves change places. */
.intro-block__panel--image-left {
    grid-template-columns: var(--intro-image-width, 40%) 1fr;
}

.intro-block__panel--image-left .intro-block__text {
    grid-column: 2;
    grid-row: 1;
}

.intro-block__panel--image-left .intro-block__image {
    grid-column: 1;
    grid-row: 1;
}

.intro-block__title {
    margin-bottom: var(--space-5);
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-semibold);
}

.intro-block__content :last-child {
    margin-bottom: 0;
}

.intro-block__panel--dark,
.intro-block__panel--dark .intro-block__title,
.intro-block__panel--dark .intro-block__content,
.intro-block__panel--dark .intro-block__content :is(p, li, h2, h3, h4, strong) {
    color: var(--text-inverse);
}

.intro-block__panel--dark .intro-block__content a {
    color: var(--text-inverse);
    text-decoration: underline;
}

.intro-block__panel--dark .intro-block__content ul li::before {
    background-color: var(--text-inverse);
}

.intro-block__panel--light,
.intro-block__panel--light .intro-block__title,
.intro-block__panel--light .intro-block__content {
    color: var(--text-primary);
}

.intro-block__image {
    min-height: 100%;
}

.intro-block__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 767.98px) {

    .intro-block__panel,
    .intro-block__panel--image-left {
        grid-template-columns: 1fr;
    }

    .intro-block__panel--image-left .intro-block__text,
    .intro-block__panel--image-left .intro-block__image {
        grid-column: 1;
    }

    /* Image first, text below on phones. */
    .intro-block__panel .intro-block__image,
    .intro-block__panel--image-left .intro-block__image {
        grid-row: 1;
    }

    .intro-block__panel .intro-block__text,
    .intro-block__panel--image-left .intro-block__text {
        grid-row: 2;
    }

    .intro-block__text {
        padding: var(--space-7) var(--space-5);
    }

    .intro-block__image img {
        height: 260px;
    }

}


/* ==========================================================
   INFO CALLOUT BLOCK
   Light "what the service includes" panel: icon, title, divider and columns of short items.
   ========================================================== */

.info-callout-block__panel {
    border-radius: var(--radius-lg);
    padding: var(--space-8) var(--space-7);
    /* The icon sits left of the title and everything else aligns with the title, so its width
       plus gap is set once and reused by the divider, intro, columns and bottom paragraphs. */
    --info-indent: calc(2.5rem + var(--space-5));
}

.info-callout-block__header {
    display: flex;
    align-items: center;
    gap: var(--space-5);
}

.info-callout-block__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: var(--color-primary);
}

.info-callout-block__icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.info-callout-block__title {
    margin: 0;
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-semibold);
    color: var(--text-primary);
}

.info-callout-block__divider {
    margin: var(--space-5) 0 var(--space-5) var(--info-indent);
    border: 0;
    border-top: 2px solid var(--color-primary);
    opacity: 1;
}

.info-callout-block__intro,
.info-callout-block__footer {
    padding-left: var(--info-indent);
}

.info-callout-block__intro,
.info-callout-block__footer {
    color: var(--text-primary);
}

.info-callout-block__intro :last-child,
.info-callout-block__footer :last-child {
    margin-bottom: 0;
}

.info-callout-block__items {
    list-style: none;
    margin: var(--space-5) 0;
    /* A Bootstrap row keeps negative margins for the gutter,
       so the common offset is added as padding. */
    padding: 0 0 0 var(--info-indent);
}

.info-callout-block__item {
    display: flex;
    align-items: flex-start;
    gap: var(--space-3);
    color: var(--text-primary);
}

.info-callout-block__marker {
    flex-shrink: 0;
    width: 0.75rem;
    height: 0.75rem;
    margin-top: 0.35rem;
    border-radius: var(--radius-round);
    border: 2px solid var(--color-primary);
}

.info-callout-block__item-text :last-child {
    margin-bottom: 0;
}

.info-callout-block__footer {
    margin-top: var(--space-5);
}

@media (max-width: 767.98px) {

    /* On narrow screens the icon no longer defines a column: the offset collapses,
       otherwise little room is left for the text. */
    .info-callout-block__panel {
        padding: var(--space-6) var(--space-5);
        --info-indent: 0px;
    }

}


/* ==========================================================
   PRICE TABLE
   Shared price list look: used by the Pricing block and the doctor page,
   so the classes are deliberately not tied to either.
   ========================================================== */

.price-table__empty {
    background-color: var(--gray-100);
    border-radius: var(--radius-lg);
    padding: var(--space-6);
    color: var(--text-muted);
}

.price-table__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

/* The hidden part of the list joins the visible one;
   otherwise a double gap would appear when it opens. */
.price-table__more .price-table__list {
    margin-top: var(--space-3);
}

.price-table__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
    background-color: var(--brand-surface);
    border-radius: calc(50px * var(--rs, 1));
    padding: var(--space-3) var(--space-6);
}

.price-table__label {
    color: var(--text-primary);
}

.price-table__label--link {
    text-decoration: none;
}

.price-table__label--link:hover {
    color: var(--color-primary);
    text-decoration: underline;
}

.price-table__value {
    flex-shrink: 0;
    color: var(--text-primary);
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-body-lg);
    white-space: nowrap;
}

.price-table__toggle {
    display: inline-flex;
    align-items: center;
    gap: var(--space-3);
    margin-top: var(--space-5);
    padding: var(--space-3) var(--space-7);
    border: 0;
    border-radius: var(--radius-pill);
    background-color: var(--color-primary);
    color: var(--text-inverse);
    font-weight: var(--font-weight-semibold);
    cursor: pointer;
    transition: opacity var(--transition-fast);
}

.price-table__toggle:hover {
    opacity: 0.9;
}

.price-table__toggle-icon {
    display: inline-flex;
    transition: transform var(--transition-fast);
}

/* Label and arrow follow the state of the button itself; no JS is needed. */
.price-table__toggle[aria-expanded="true"] .price-table__toggle-icon {
    transform: rotate(180deg);
}

.price-table__toggle-less,
.price-table__toggle[aria-expanded="true"] .price-table__toggle-more {
    display: none;
}

.price-table__toggle[aria-expanded="true"] .price-table__toggle-less {
    display: inline;
}

/* Compact toggle, pushed to the right edge under the rows. */
.price-table__toggle {
    display: flex;
    width: fit-content;
    margin: var(--space-3) 0 0 auto;
    padding: 6px 18px;
    gap: 8px;
    font-size: 14px;
    line-height: 1.4;
}

/* "(+10)" after "Hamısına baxın" — how many rows are hidden. */
.price-table__toggle-count {
    opacity: .8;
    font-weight: var(--font-weight-regular, 400);
}

.price-table__pills {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    margin-bottom: var(--space-5);
}

.price-table__pill {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-3) var(--space-5);
    border-radius: var(--radius-pill, 999px);
    border: var(--border-width-thin) solid var(--border-default);
    background-color: var(--white);
    color: var(--text-primary);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    transition: border-color var(--transition-fast);
}

.price-table__pill:hover {
    border-color: var(--color-primary);
    color: var(--text-primary);
}

.price-table__pill-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: var(--radius-round);
    border: var(--border-width-thin) solid var(--brand-accent);
    color: var(--brand-accent);
    font-size: 0.9rem;
    font-weight: var(--font-weight-bold);
}

.price-table__disclaimer {
    margin-top: var(--space-5);
    color: var(--text-muted);
    font-size: var(--font-size-body-sm);
    line-height: 1.6;
}

.price-table__payment {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
    margin-top: var(--space-4);
}

.price-table__payment-badge {
    display: block;
    width: 67px;
    height: 46px;
}

.pricing-block__title {
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-semibold);
    color: var(--text-primary);
}

@media (max-width: 575.98px) {

    /* Keep the price on the same row as the service name; the name wraps instead. */
    .price-table__item {
        gap: var(--space-3);
        padding: var(--space-3) var(--space-4);
        border-radius: var(--radius-lg);
    }

    .price-table__label {
        flex: 1 1 auto;
        min-width: 0;
    }

}


/* ==========================================================
   Doctor Specialties Block
   ==========================================================
   Same A→Z index shape as the specialty archive
   (entities/specialty/style.css) — one visual language whether
   the list is the whole page or a section inside one.
   ========================================================== */

.doctor-specialties-block__title {
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-bold, 700);
}

.doctor-specialties-block__card {
    background: var(--surface-card, #fff);
    border: var(--border-width-thin, 1px) solid var(--border-light);
    border-radius: var(--radius-card, 0.75rem);
    box-shadow: var(--shadow-card);
    padding: var(--space-7, 2rem);
}

/*
 * Multi-column, not grid.
 *
 * As a grid, every letter is a cell and each row is as tall as its
 * tallest cell — "A" with seven entries forces a six-line hole
 * under "B" and "C" beside it. Columns flow instead: a group ends
 * and the next one starts immediately underneath, so the block is
 * packed regardless of how uneven the letters are.
 *
 * The trade-off is reading order. Grid reads left-to-right; columns
 * read top-to-bottom and then across, the way a dictionary index or
 * a phone book does. For an A→Z lookup that is the conventional
 * order, and it is the price of removing the gaps — CSS has no way
 * to get both until `grid-template-rows: masonry` ships.
 *
 * `columns: 220px` sets a column *width*, not a count, so the
 * number of columns follows the container with no media queries —
 * which matters because this block also appears inside narrower
 * page-builder layouts.
 */
.doctor-specialties-block__grid {
    columns: 220px;
    column-gap: var(--space-7, 2rem);
    column-fill: balance;
}

/*
 * Groups may break across columns. Keeping a whole letter in one
 * column made the columns uneven: one long letter ("U" with all the
 * children's specialties) filled a column on its own while the
 * others stayed short. Now only a single entry stays whole; the
 * same rule is dropped from entities/doctor/style.css.
 */
.doctor-specialties-block__group {
    margin-bottom: var(--space-6, 1.75rem);
}

.doctor-specialties-block__list li {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

/*
 * A group is a block-level column item, and its top margin would
 * otherwise push the first group in every column down by a
 * different amount.
 */
.doctor-specialties-block__group:first-child {
    margin-top: 0;
}

.doctor-specialties-block__letter {
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-bold, 700);
    font-size: 1.5rem;
    color: var(--color-primary);
    line-height: 1;
    margin-bottom: var(--space-3, 0.75rem);
    padding-bottom: var(--space-2, 0.5rem);
    border-bottom: var(--border-width-medium, 2px) solid var(--border-light);
}

.doctor-specialties-block__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.doctor-specialties-block__list li {
    margin-bottom: var(--space-2, 0.5rem);
}

/*
 * Link colours inside the index are reset for every state, not
 * just the default one.
 *
 * Something outside the theme (a page stylesheet or Customizer CSS
 * — the theme itself only sets an outline on :focus) recolours
 * these links and fills them green on focus, which left green text
 * on a green fill: unreadable exactly when the user needs to see
 * where they are. Since the competing rule isn't in the theme and
 * can't be edited from here, the reset is scoped as tightly as
 * possible — these two lists only — and marked !important so it
 * doesn't depend on out-guessing a selector we can't see.
 *
 * If that rule is ever tracked down and removed, the !important
 * here can go with it.
 */
.doctor-specialties-block__list a,
.doctor-specialties-block__list a:link,
.doctor-specialties-block__list a:visited,
.doctor-specialties-block__list a:active {
    color: var(--text-primary) !important;
    background-color: transparent !important;
    text-decoration: none;
    line-height: var(--line-height-body, 1.6);
}

.doctor-specialties-block__list a:hover {
    color: var(--color-primary) !important;
    background-color: transparent !important;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

/*
 * Focus fills the link with the brand green, so the label has to
 * flip to white — green-on-green was unreadable, which is the
 * opposite of what a focus state is for.
 *
 * The green pill is drawn with a box-shadow spread rather than
 * padding: padding would change the element's size and nudge every
 * item below it as focus moves down the list.
 *
 * Both :focus and :focus-visible, not just the latter — the fill
 * shows on click as well as on keyboard tabbing, and the text has
 * to be readable either way. Extra class on the front for
 * specificity, so this still wins over the site's own link colours.
 */
.doctor-specialties-block .doctor-specialties-block__list a:focus,
.doctor-specialties-block .doctor-specialties-block__list a:focus-visible {
    color: var(--text-inverse, #fff) !important;
    background-color: var(--color-primary) !important;
    border-radius: var(--radius-xs, 0.25rem);
    box-shadow: 0 0 0 0.25rem var(--color-primary);
    text-decoration: none;
    outline-color: var(--color-primary);
}

@media (max-width: 575.98px) {

    .doctor-specialties-block__card {
        padding: var(--space-5, 1.5rem);
    }

    .doctor-specialties-block__grid {
        column-gap: var(--space-5, 1.5rem);
    }
}

/* With a side picture: list on the left, picture on the right,
   picture hidden on phones where it would only push the list down. */
.doctor-specialties-block__card.has-image {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 30%);
    gap: var(--space-7, 2rem);
    align-items: end;
}

.doctor-specialties-block__card.has-image > .doctor-specialties-block__image {
    order: 2;
}

.doctor-specialties-block__card.has-image > :not(.doctor-specialties-block__image) {
    order: 1;
    min-width: 0;
}

.doctor-specialties-block__image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: var(--radius-card, 0.75rem);
}

@media (max-width: 991.98px) {

    .doctor-specialties-block__card.has-image {
        display: block;
    }

    .doctor-specialties-block__card.has-image > .doctor-specialties-block__image {
        display: none;
    }
}


/* ==========================================================
   CONSULTATION CTA
   ==========================================================
   Uzun tibbi səhifənin ortasındakı açıq-yaşıl kart: qısa çağırış,
   qaynar xətt nömrəsi və iki düymə. Ayrıca `parts/consultation-cta.php`
   faylındadır, ona görə stillər də burada — həm simptom, həm digər
   sürətlərdə eyni cür işləsin.
   ========================================================== */

.consultation-cta {
    padding-block: var(--space-6);
}

.consultation-cta__card {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--space-6);
    padding: var(--space-7);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.consultation-cta__content {
    flex: 1 1 auto;
    min-width: 0;
}

.consultation-cta__title {
    font-family: var(--font-family-heading);
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-bold);
    margin: 0 0 var(--space-4);
}

/*
 * Mətnin eni ağ panelin eni ilə üst-üstə düşür — referansda da
 * belədir. Ayrı `max-width` verilsəydi, iki blokun sağ kənarı
 * uyğunlaşmayacaq və kart səliqəsiz görünəcəkdi.
 */
.consultation-cta__description {
    margin: 0 0 var(--space-6);
    font-size: 1.0625rem;
    line-height: 1.7;
}

/* Ağ panel: nömrə və düymələr yaşıl fonun üstündə deyil, öz
   sahəsində dayanır — referansda da belədir və klikləniləcək
   yer aydın görünür. */
.consultation-cta__panel {
    background: var(--surface-card, #fff);
    border-radius: var(--radius-lg);
    padding: var(--space-6);
}

.consultation-cta__note {
    margin: 0 0 var(--space-4);
    font-size: 1.0625rem;
    font-weight: var(--font-weight-semibold);
    line-height: 1.5;
}

.consultation-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-4);
}

.consultation-cta__phone {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    color: var(--text-primary);
    font-size: 1.75rem;
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    white-space: nowrap;
}

.consultation-cta__phone-icon {
    flex: 0 0 auto;
    width: 1.75rem;
    height: 1.75rem;
    color: var(--color-primary);
}

.consultation-cta__phone:hover,
.consultation-cta__phone:focus-visible {
    color: var(--color-primary);
}

.consultation-cta__button {
    border: 0;
    border-radius: var(--radius-pill, 999px);
    padding: var(--space-3) var(--space-6);
    font-size: 1.0625rem;
    font-weight: var(--font-weight-medium);
    color: var(--text-inverse, #fff);
    cursor: pointer;
    transition: background-color var(--transition-fast);
}

.consultation-cta__button--callback {
    background: var(--color-primary);
}

.consultation-cta__button--callback:hover,
.consultation-cta__button--callback:focus-visible {
    background: var(--primary-700, var(--brand-primary-dark));
}

/* İkinci düymə narıncıdır — saytın yuxarısındakı «Qaynar xətt»
   düyməsi ilə eyni rəng. Səhifədə yeganə birbaşa qeydiyyat
   addımıdır və yaşıl fonda itməməlidir. */
.consultation-cta__button--appointment {
    background: var(--brand-cta-deep);
}

.consultation-cta__button--appointment:hover,
.consultation-cta__button--appointment:focus-visible {
    filter: brightness(.92);
}

/*
 * Şəkil kartın hündürlüyünü artırmır: mütləq yerləşdirilib və
 * aşağı kənara yapışdırılıb. Əks halda doktorun şəkli kartı
 * mətnin tələb etdiyindən hündür edirdi.
 */
.consultation-cta__media {
    position: absolute;
    right: var(--space-6);
    bottom: 0;
    width: 16rem;
    pointer-events: none;
}

.consultation-cta__card:not(.consultation-cta__card--plain) .consultation-cta__content {
    padding-right: 16rem;
}

.consultation-cta__image {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 1199.98px) {

    .consultation-cta__media {
        width: 12rem;
    }

    .consultation-cta__card:not(.consultation-cta__card--plain) .consultation-cta__content {
        padding-right: 13rem;
    }
}

/* Şəkil mətndən yer oğurlamağa başlayanda tamamilə gizlədilir:
   burada vacib olan nömrə və düymələrdir. */
@media (max-width: 991.98px) {

    .consultation-cta__media {
        display: none;
    }

    .consultation-cta__card:not(.consultation-cta__card--plain) .consultation-cta__content {
        padding-right: 0;
    }
}

@media (max-width: 575.98px) {

    .consultation-cta__card {
        padding: var(--space-5);
    }

    .consultation-cta__panel {
        padding: var(--space-4);
    }

    .consultation-cta__actions {
        gap: var(--space-3);
    }

    .consultation-cta__phone {
        font-size: 1.375rem;
    }

    .consultation-cta__phone-icon {
        width: 1.375rem;
        height: 1.375rem;
    }

    .consultation-cta__button {
        flex: 1 1 100%;
        text-align: center;
    }
}


/* ==========================================================
   ACTION STEPS — «Oxşar əlamətlər aşkar etmisinizsə, nə etməli?»
   ==========================================================
   Açıq-yaşıl fonun üstündə dörd ağ kart: üç nömrəli addım və
   əlaqə kartı. `parts/action-steps.php` ilə işləyir.
   ========================================================== */

.action-steps {
    padding-block: var(--space-4);
}

.action-steps__card {
    position: relative;
    overflow: hidden;
    background: var(--brand-accent-t1);
    border-radius: var(--radius-xl);
    padding: var(--space-7);
}

/*
 * Decor: soft shapes in the panel's tone behind the cards in the bottom right corner.
 * Path from this file: blocks/ -> assets/images/. Decoration only: pointer-events: none, no alt.
 */
.action-steps__card::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -5rem;
    width: 35rem;
    height: 29rem;
    background: url("../assets/images/decor-action-steps.svg") no-repeat right bottom / contain;
    pointer-events: none;
    z-index: 0;
}

/* Title and cards above the decor. */
.action-steps__title,
.action-steps__grid {
    position: relative;
    z-index: 1;
}

.action-steps__title {
    font-family: var(--font-family-heading);
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-bold);
    margin: 0 0 var(--space-6);
}

.action-steps__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-4);
    margin: 0;
    padding: 0;
    list-style: none;
}

.action-steps__item {
    display: flex;
    flex-direction: column;
    background: var(--surface-card, #fff);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
}

.action-steps__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    margin-bottom: var(--space-5);
    border-radius: var(--radius-sm, 0.375rem);
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
    font-size: 1.375rem;
    font-weight: var(--font-weight-semibold);
}

.action-steps__item-title {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-weight: var(--font-weight-semibold);
    line-height: 1.3;
    margin: 0 0 var(--space-4);
}

.action-steps__item-text {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.55;
}

/* Əlaqə kartı: nömrə əvəzinə ikon, altda telefon və iki düymə. */
.action-steps__contact-lead {
    margin: 0 0 var(--space-4);
    font-weight: var(--font-weight-semibold);
    line-height: 1.4;
}

.action-steps__phone {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    margin-bottom: var(--space-4);
    color: var(--color-primary);
    font-size: 1.5rem;
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    white-space: nowrap;
}

.action-steps__phone:hover,
.action-steps__phone:focus-visible {
    color: var(--primary-700, var(--brand-primary-dark));
}

.action-steps__phone-icon {
    flex: 0 0 auto;
}

.action-steps__button {
    width: 100%;
    border: 0;
    border-radius: var(--radius-pill, 999px);
    padding: var(--space-3) var(--space-4);
    font-weight: var(--font-weight-medium);
    color: var(--text-inverse, #fff);
    cursor: pointer;
    transition: background-color var(--transition-fast);
}

.action-steps__button + .action-steps__button {
    margin-top: var(--space-3);
}

.action-steps__button--callback {
    background: var(--color-primary);
}

.action-steps__button--callback:hover,
.action-steps__button--callback:focus-visible {
    background: var(--primary-700, var(--brand-primary-dark));
}

.action-steps__button--appointment {
    background: var(--brand-cta-deep);
}

.action-steps__button--appointment:hover,
.action-steps__button--appointment:focus-visible {
    filter: brightness(.92);
}

@media (max-width: 1199.98px) {

    .action-steps__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {

    .action-steps__card {
        padding: var(--space-5);
    }

    /* On phones the cards stack and cover almost all of the panel;
       decor would only get in the way. */
    .action-steps__card::after {
        display: none;
    }

    .action-steps__grid {
        grid-template-columns: 1fr;
    }

    .action-steps__phone {
        font-size: 1.375rem;
    }
}


/* ==========================================================
   COORDINATOR — «Həkim-koordinatorun pulsuz konsultasiyası»
   ==========================================================
   Xidmət səhifəsinin yuxarısındakı kart: solda şəkil, sağda mətn
   və narıncı düymə. Şəkil olmayanda mətn bütün eni tutur.
   `parts/coordinator-consultation.php` ilə işləyir.
   ========================================================== */

.coordinator {
    padding-block: var(--space-4);
}

.coordinator__card {
    display: grid;
    grid-template-columns: minmax(0, 22rem) minmax(0, 1fr);
    align-items: center;
    gap: var(--space-6);

    background: var(--brand-accent-t1);
    border-radius: var(--radius-xl);
    padding: var(--space-6) var(--space-7);
}

.coordinator__card--no-image {
    grid-template-columns: minmax(0, 1fr);
}

.coordinator__media {
    display: flex;
    justify-content: center;
}

.coordinator__image {
    max-width: 100%;
    height: auto;
}

.coordinator__badge {
    display: inline-block;
    margin: 0 0 var(--space-4);
    padding: var(--space-2) var(--space-5);
    background: var(--surface-card, #fff);
    border-radius: var(--radius-pill, 999px);
    color: var(--color-primary);
    font-weight: var(--font-weight-medium);
    font-size: var(--font-size-helper, 0.8125rem);
}

.coordinator__title {
    font-family: var(--font-family-heading);
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-bold);
    line-height: 1.2;
    margin: 0 0 var(--space-2);
}

.coordinator__subtitle {
    margin: 0 0 var(--space-5);
    font-weight: var(--font-weight-semibold);
    font-size: 1.0625rem;
}

.coordinator__text {
    margin: 0 0 var(--space-3);
    color: var(--text-secondary);
    line-height: 1.6;
}

.coordinator__text--lead {
    margin-bottom: var(--space-5);
    color: var(--text-primary);
    font-weight: var(--font-weight-semibold);
}

.coordinator__button {
    border: 0;
    border-radius: var(--radius-pill, 999px);
    padding: var(--space-3) var(--space-7);
    background: var(--brand-cta-deep);
    color: var(--text-inverse, #fff);
    font-weight: var(--font-weight-medium);
    cursor: pointer;
    transition: filter var(--transition-fast);
}

.coordinator__button:hover,
.coordinator__button:focus-visible {
    filter: brightness(.92);
}

@media (max-width: 767.98px) {

    .coordinator__card {
        grid-template-columns: minmax(0, 1fr);
        padding: var(--space-5);
    }

    /* Telefonda şəkil mətni aşağı itələməsin deyə daha kiçikdir. */
    .coordinator__image {
        max-width: 14rem;
    }
}


/* İxtisas göstəricisi: axtarış sətri və hərflər — xəstəliklər
   göstəricisindəki kimi. */
.doctor-specialties-block__controls {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: var(--space-3, 0.75rem);
    margin-bottom: var(--space-6, 1.75rem);
}

.doctor-specialties-block__search {
    flex: 0 1 16rem;
    min-width: 8rem;
}

.doctor-specialties-block__search-input {
    width: 100%;
    height: 2.75rem;
    padding: 0 var(--space-5, 1.5rem);
    background: var(--brand-surface);
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--text-primary);
}

.doctor-specialties-block__search-input:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: -2px;
}

/* Fon sətirdəki digər elementlərlə eynidir — referansda da belə.
   Seçilmiş vəziyyət rənglə deyil, mətnin rəngi və qalınlığı ilə
   göstərilir: yaşıl düymə sıranın tarazlığını pozurdu. */
.doctor-specialties-block__all {
    flex: 0 0 auto;
    height: 2.75rem;
    padding: 0 var(--space-5, 1.5rem);
    background: var(--brand-surface);
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--index-letter-color, var(--brand-muted));
    white-space: nowrap;
    cursor: pointer;
}

.doctor-specialties-block__all:hover {
    color: var(--color-primary);
}

.doctor-specialties-block__all.is-active {
    background: var(--brand-surface);
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold, 600);
}

/* Otuz iki hərf qalan yeri tutur və lazım gəldikdə sıxılır. */
.doctor-specialties-block__alphabet {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 2.75rem;
    padding-inline: var(--space-3, 0.75rem);
    background: var(--brand-surface);
    border-radius: var(--radius-pill, 999px);
}

.doctor-specialties-block__letter-btn {
    flex: 0 1 auto;

    /* Exactly centred in the strip: the button does not inherit the group title's
       margins and border, it has its own class. */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 2.25rem;
    margin: 0;
    padding: 0;
    background: none;
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--index-letter-color, var(--brand-muted));
    font-weight: var(--font-weight-medium);
    line-height: 1;
    cursor: pointer;
}

.doctor-specialties-block__letter-btn:hover:not(:disabled) {
    color: var(--color-primary);
}

.doctor-specialties-block__letter-btn.is-active {
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
}

/* Boş hərflər sıradan çıxarılmır və solğunlaşdırılmır: sıra hər
   səhifədə eyni görünməlidir, rəng fərqi isə nasazlıq təəssüratı
   yaradırdı. Onlar sadəcə klikə cavab vermir. */
.doctor-specialties-block__letter-btn.is-empty {
    cursor: default;
}

/* ==========================================================
   Siyahı — ixtisaslar səhifəsindəki kartla eyni
   ========================================================== */


.doctor-specialties-block__grid.is-filtered {
    columns: auto;
}

.doctor-specialties-block__grid.is-filtered .doctor-specialties-block__group {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4, 1rem);
    margin-bottom: var(--space-5, 1.5rem);
}

.doctor-specialties-block__grid.is-filtered .doctor-specialties-block__letter {
    flex: 0 0 1.75rem;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
    line-height: 1.9;
}

.doctor-specialties-block__grid.is-filtered .doctor-specialties-block__list {
    flex: 1 1 auto;
    min-width: 0;
    columns: 220px;
    column-gap: var(--space-7, 2rem);
}

.doctor-specialties-block__grid.is-filtered .doctor-specialties-block__item {
    break-inside: avoid;
}


/* ==========================================================
   WIKI INDEX — bir göstəricidə bir neçə bölmə
   ==========================================================
   Yuxarıda bölmə düymələri (xidmətlər arxivindəki kimi), sonra
   axtarış və hərflər. Hər şey səhifədədir — süzgəc ani işləyir.
   ========================================================== */

.wiki-index {
    padding-block: var(--space-7, 2rem);
}

.wiki-index__title {
    font-family: var(--font-family-heading);
    font-size: var(--font-size-section-title);
    font-weight: var(--font-weight-bold);
    margin: 0 0 var(--space-3, 0.75rem);
}

.wiki-index__lead {
    margin: 0 0 var(--space-5, 1.5rem);
    color: var(--text-secondary);
    line-height: 1.6;
}

.wiki-index__sections {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2, 0.5rem);
    margin-bottom: var(--space-5, 1.5rem);
}

.wiki-index__section {
    padding: var(--space-2, 0.5rem) var(--space-5, 1.5rem);
    border: 0;
    border-radius: var(--radius-pill, 999px);
    background: var(--brand-surface);
    color: var(--index-letter-color, var(--brand-muted));
    cursor: pointer;
}

.wiki-index__section:hover,
.wiki-index__section:focus-visible,
.wiki-index__section.is-active {
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
}

/* Bölmənin öz səhifəsinə keçid (Dərmanlar, Anatomiya …): düymə kimi görünür. */
.wiki-index__section--link {
    display: inline-flex;
    align-items: center;
    font: inherit;
    line-height: inherit;
    text-decoration: none;
}

.wiki-index__section--link:hover,
.wiki-index__section--link:focus-visible {
    text-decoration: none;
}

.wiki-index__empty {
    margin: var(--space-5, 1.5rem) 0 0;
    color: var(--text-secondary);
}

 /* Panel: axtarış, «hamısı», say siyahısı və hərflər. Dar ekranda
    sətirlərə bölünür — hərflər sıxılıb oxunmaz olmasın. */
.wiki-index__controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3, 0.75rem);
    margin-bottom: var(--space-6, 1.75rem);
}

.wiki-index__alphabet {
    flex: 1 1 100%;
}

.wiki-index__search {
    flex: 0 1 16rem;
    min-width: 8rem;
}

.wiki-index__search-input {
    width: 100%;
    height: 2.75rem;
    padding: 0 var(--space-5, 1.5rem);
    background: var(--brand-surface);
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--text-primary);
}

.wiki-index__search-input:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: -2px;
}

/* Fon sətirdəki digər elementlərlə eynidir — referansda da belə.
   Seçilmiş vəziyyət rənglə deyil, mətnin rəngi və qalınlığı ilə
   göstərilir: yaşıl düymə sıranın tarazlığını pozurdu. */
.wiki-index__all {
    flex: 0 0 auto;
    height: 2.75rem;
    padding: 0 var(--space-5, 1.5rem);
    background: var(--brand-surface);
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--index-letter-color, var(--brand-muted));
    white-space: nowrap;
    cursor: pointer;
}

.wiki-index__all:hover {
    color: var(--color-primary);
}

.wiki-index__all.is-active {
    background: var(--brand-surface);
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold, 600);
}

/* Otuz iki hərf qalan yeri tutur və lazım gəldikdə sıxılır. */
.wiki-index__alphabet {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 2.75rem;
    padding-inline: var(--space-3, 0.75rem);
    background: var(--brand-surface);
    border-radius: var(--radius-pill, 999px);
}

.wiki-index__letter {
    flex: 0 1 auto;
    min-width: 1.5rem;
    height: 2.25rem;
    padding: 0;
    background: none;
    border: 0;
    border-radius: var(--radius-pill, 999px);
    color: var(--index-letter-color, var(--brand-muted));
    font-weight: var(--font-weight-medium);
    line-height: 1;
    cursor: pointer;
}

.wiki-index__letter:hover:not(:disabled) {
    color: var(--color-primary);
}

.wiki-index__letter.is-active {
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
}

/* Boş hərflər sıradan çıxarılmır və solğunlaşdırılmır: sıra hər
   səhifədə eyni görünməlidir, rəng fərqi isə nasazlıq təəssüratı
   yaradırdı. Onlar sadəcə klikə cavab vermir. */
.wiki-index__letter.is-empty {
    cursor: default;
}

/* Telefonda 32 hərf bir sətrə sığmır və ekrandan çıxırdı:
   sıra bir neçə sətrə bölünür. */
@media (max-width: 575.98px) {

    .wiki-index__alphabet {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 0 var(--space-1, 0.25rem);
        height: auto;
        padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem);
        border-radius: var(--radius-card, 0.75rem);
    }

    .wiki-index__letter {
        min-width: 1.75rem;
    }
}

/* ==========================================================
   Siyahı — ixtisaslar səhifəsindəki kartla eyni
   ========================================================== */


 /* Hərf qrupu bütöv qalsın deyə sütun deyil, şəbəkə: uzun qrup
    özü daxilində sütunlara bölünür, qonşu qrupu isə parçalamır. */
.wiki-index__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
    gap: var(--space-5, 1.5rem) var(--space-7, 2rem);
    align-items: start;
}

.wiki-index__group {
    min-width: 0;
}

/* Bir hərfdə çox ad varsa, onun öz siyahısı sütunlara bölünür —
   səhifə bir neçə uzun sütuna çevrilmir. */
.wiki-index__group:has(.wiki-index__list > :nth-child(14)) {
    grid-column: 1 / -1;
}

.wiki-index__group:has(.wiki-index__list > :nth-child(14)) .wiki-index__list {
    columns: 16rem;
    column-gap: var(--space-7, 2rem);
}

.wiki-index__group:has(.wiki-index__list > :nth-child(14)) .wiki-index__item {
    break-inside: avoid;
}

.wiki-index__letter-heading {
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-bold, 700);
    font-size: 1.5rem;
    color: var(--color-primary);
    line-height: 1;
    margin-bottom: var(--space-3, 0.75rem);
    padding-bottom: var(--space-2, 0.5rem);
    border-bottom: var(--border-width-medium, 2px) solid var(--border-light);
}

.wiki-index__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wiki-index__item {
    margin-bottom: 0.125rem;
}
.wiki-index__grid.is-filtered {
    columns: auto;
}

.wiki-index__grid.is-filtered .wiki-index__group {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4, 1rem);
    margin-bottom: var(--space-5, 1.5rem);
}

.wiki-index__grid.is-filtered .wiki-index__letter-heading {
    flex: 0 0 1.75rem;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
    line-height: 1.9;
}

.wiki-index__grid.is-filtered .wiki-index__list {
    flex: 1 1 auto;
    min-width: 0;
    columns: 220px;
    column-gap: var(--space-7, 2rem);
}

.wiki-index__grid.is-filtered .wiki-index__item {
    break-inside: avoid;
}

/* Göstəricinin səhifələnməsi */
.wiki-index__pager,
.doctor-specialties-block__pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-4, 1rem);
    margin-top: var(--space-6, 1.75rem);
}

.wiki-index__pager-button,
.doctor-specialties-block__pager-button {
    width: 2.75rem;
    height: 2.75rem;
    border: 0;
    border-radius: 50%;
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}

.wiki-index__pager-button:disabled,
.doctor-specialties-block__pager-button:disabled {
    opacity: .35;
    cursor: default;
}

.wiki-index__pager-state,
.doctor-specialties-block__pager-state {
    color: var(--text-secondary);
    font-weight: var(--font-weight-semibold, 600);
}

/* Səhifədə neçə ad göstərilsin. Hərflərdən sonra, sətrin sağ
   kənarında: axtarış və hərflər bir işin parçasıdır, bu isə
   ayrıca tənzimləmədir. */
.wiki-index__per-page,
.doctor-specialties-block__per-page {
    flex: 0 0 auto;
    margin-left: auto;
}

.wiki-index__per-page select,
.doctor-specialties-block__per-page select {
    height: 2.75rem;
    padding: 0 var(--space-4, 1rem);
    border: 1px solid var(--border-light, #E2E8E5);
    border-radius: var(--radius-pill, 999px);
    background: var(--surface-card, #fff);
    color: var(--text-primary);
    cursor: pointer;
}

@media (max-width: 767.98px) {

    .wiki-index__per-page,
    .wiki-index__per-page select,
    .doctor-specialties-block__per-page,
    .doctor-specialties-block__per-page select {
        width: 100%;
    }
}


/* ==========================================================
   SERVICE CATEGORY
   ==========================================================
   Green card on the left, names in columns on the right. The list is read from the
   catalogue, so a new service appears here the same day.
   ========================================================== */

 /* Boz zolaq nəfəs alsın: mətn kənarlara yapışmasın, blok
    qonşularından aydın ayrılsın. */
.category-services {
    padding-block: var(--space-region, 5.5rem);
}

.category-services--muted {
    position: relative;
    z-index: 0;
}

.category-services--muted::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 50vw);
    z-index: -1;
    width: 100vw;
    background: var(--surface-muted, var(--brand-surface));
    content: "";
}

 /* Başlıq bloka giriş sayılır — bölmə başlığından bir qədər
    iridir. */
.category-services__title {
    font-family: var(--font-family-heading);
    font-size: clamp(1.75rem, 1.4rem + 1vw, 2.375rem);
    font-weight: var(--font-weight-bold);
    margin: 0 0 var(--space-7, 2rem);
}

.category-services__grid {
    display: grid;
    grid-template-columns: minmax(0, 19rem) minmax(0, 1fr);
    gap: var(--space-7, 2rem);
    align-items: start;
}

.category-services__grid--plain {
    grid-template-columns: minmax(0, 1fr);
}

.category-services__lead {
    background: var(--color-primary);
    color: var(--text-inverse, #fff);
    border-radius: var(--radius-card, .75rem);
    padding: var(--space-7, 2rem);
    font-size: 1.0625rem;
    line-height: 1.7;
}

.category-services__lead p {
    margin: 0 0 var(--space-3, .75rem);
}

.category-services__lead p:last-child {
    margin-bottom: 0;
}

.category-services__list {
    display: grid;
    grid-template-columns: repeat(var(--category-services-columns, 3), minmax(0, 1fr));
    gap: var(--space-4, 1rem) var(--space-6, 1.75rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

 /* Yığcam görünüşdə siyahı zolağın hündürlüyünü doldurur:
    ümumi 17rem burada az idi — sətirlər yuxarıda sıxılıb qalırdı. */
.category-services__list[data-expandable].is-collapsed {
    max-height: 26rem;
}

.category-services__list[data-expandable].is-collapsed::after {
    background: linear-gradient(to bottom, rgba(246, 248, 247, 0), var(--surface-muted, var(--brand-surface)));
}

.category-services__list a {
    color: var(--text-primary);
    font-size: 1.0625rem;
    font-weight: var(--font-weight-medium);
    line-height: 1.45;
    text-decoration: none;
}

.category-services__list a:hover,
.category-services__list a:focus-visible {
    color: var(--color-primary);
    text-decoration: underline;
}

@media (max-width: 1199.98px) {

    .category-services__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {

    .category-services {
        padding-block: 3.5rem;
    }

    .category-services__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .category-services__list {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* ==========================================================
   TILES BLOCK — colored link tiles (Analizlər hub top row)
   ========================================================== */

.tiles-block__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-5);
}

.tiles-block__tile {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--space-4);
    border-radius: calc(18px * var(--rs, 1));
    color: #fff;
    text-decoration: none;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}

a.tiles-block__tile:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.tiles-block__tile--small {
    min-height: 102px;
    padding: var(--space-4) var(--space-5);
}

.tiles-block__tile--large {
    grid-column: span 2;
    min-height: 340px;
    align-items: stretch;
    padding: var(--space-7) var(--space-7);
}

.tiles-block__icon {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.tiles-block__icon img {
    max-width: 100%;
    max-height: 100%;
}

.tiles-block__tile--small .tiles-block__tile-title {
    font-size: var(--font-size-body-lg);
    font-weight: var(--font-weight-semibold);
    line-height: 1.25;
}

.tiles-block__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    max-width: 55%;
}

.tiles-block__tile--large .tiles-block__tile-title {
    font-size: 2.25rem;
    font-weight: var(--font-weight-bold);
    line-height: 1.15;
}

.tiles-block__subtitle {
    margin-top: var(--space-7);
    font-size: var(--font-size-body);
    opacity: .95;
}

.tiles-block__button {
    align-self: flex-start;
    margin-top: auto;
    padding: 8px 20px;
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--text-primary);
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-semibold);
}

.tiles-block__image {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 100%;
    max-width: 55%;
    object-fit: contain;
    object-position: right bottom;
}

@media (max-width: 991.98px) {
    .tiles-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tiles-block__tile--large .tiles-block__tile-title { font-size: 1.75rem; }
}

@media (max-width: 575.98px) {
    .tiles-block__grid { grid-template-columns: 1fr; }
    .tiles-block__tile--large { grid-column: auto; min-height: 260px; }
    .tiles-block__image { max-width: 45%; height: 70%; }
    .tiles-block__body { max-width: 65%; }
}

/* ==========================================================
   NOTICE BLOCK — rounded info strip with "i" badge
   ========================================================== */

.notice-block__strip {
    display: flex;
    align-items: center;
    gap: var(--space-5);
    padding: var(--space-4) var(--space-5);
    border-radius: calc(60px * var(--rs, 1));
}

.notice-block__badge {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--notice-accent);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font: 700 1.6rem/1 Georgia, serif;
}

.notice-block__text { flex: 1; }

.notice-block__title {
    margin: 0;
    font-size: 1.5rem;
    font-weight: var(--font-weight-bold);
    color: var(--text-primary);
    line-height: 1.25;
}

.notice-block__note {
    margin: 4px 0 0;
    font-size: var(--font-size-helper);
    color: var(--text-primary);
}

.notice-block__button {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 24px;
    border-radius: var(--radius-pill);
    background: var(--notice-accent);
    color: #fff;
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-body-lg);
    text-decoration: none;
    transition: opacity .2s ease;
}

.notice-block__button:hover { color: #fff; opacity: .9; }

@media (max-width: 767.98px) {
    .notice-block__strip { flex-wrap: wrap; border-radius: calc(24px * var(--rs, 1)); }
    .notice-block__title { font-size: 1.2rem; }
    .notice-block__button { width: 100%; justify-content: center; }
}

/* ==========================================================
   LINK GROUPS BLOCK — "Populyar analizlər" cards
   ========================================================== */

.link-groups-block__grid {
    display: grid;
    grid-template-columns: repeat(var(--lg-cols, 4), minmax(0, 1fr));
    gap: var(--space-5);
}

.link-groups-block__card {
    background: var(--brand-surface);
    border-radius: calc(18px * var(--rs, 1));
    padding: var(--space-5);
}

.link-groups-block__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    padding-bottom: var(--space-4);
    margin-bottom: var(--space-4);
    border-bottom: 1px solid #D5DBD8;
    min-height: 60px;
}

.link-groups-block__card-title {
    margin: 0;
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-bold);
}

.link-groups-block__icon {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.link-groups-block__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.link-groups-block__list a {
    color: var(--text-primary);
    text-decoration: none;
    font-size: var(--font-size-meta);
}

.link-groups-block__list a:hover { color: var(--brand-accent); text-decoration: underline; }

@media (max-width: 991.98px) { .link-groups-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .link-groups-block__grid { grid-template-columns: 1fr; } }

/* ==========================================================
   LINK LIST BLOCK — "Laborator analizlərin növləri"
   ========================================================== */

.link-list-block {
    padding: var(--space-10) 0 0;
    overflow: hidden;
}

.link-list-block__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-7);
}

.link-list-block__inner--with-image {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    align-items: end;
}

.link-list-block__content { padding-bottom: var(--space-10); }

.link-list-block__title { margin-bottom: var(--space-5); }

.link-list-block__list {
    list-style: none;
    margin: 0;
    padding: 0;
    columns: var(--ll-cols, 2);
    column-gap: var(--space-8);
}

.link-list-block__list li {
    break-inside: avoid;
    padding: 9px 0;
}

.link-list-block__list a {
    color: var(--text-primary);
    text-decoration: none;
}

.link-list-block__list a:hover { color: var(--brand-accent); text-decoration: underline; }

.link-list-block__media img {
    display: block;
    width: 100%;
    max-width: 480px;
    margin-left: auto;
}

@media (max-width: 991.98px) {
    .link-list-block__inner--with-image { grid-template-columns: 1fr; }
    .link-list-block__media { display: none; }
}

@media (max-width: 575.98px) { .link-list-block__list { columns: 1; } }

/* ==========================================================
   GALLERY BLOCK — photo slider + full-screen viewer
   ========================================================== */

.gallery-block__card {
    background: var(--brand-surface);
    border-radius: calc(18px * var(--rs, 1));
    padding: var(--space-7) var(--space-7) var(--space-5);
}

.gallery-block__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 3 * 24px) / 4);
    gap: 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.gallery-block__track::-webkit-scrollbar { display: none; }

.gallery-block__item {
    display: block;
    scroll-snap-align: start;
    border-radius: calc(12px * var(--rs, 1));
    overflow: hidden;
    aspect-ratio: 3 / 2;
}

.gallery-block__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.gallery-block__item:hover img { transform: scale(1.04); }

.gallery-block__nav {
    display: flex;
    justify-content: center;
    gap: var(--space-5);
    margin-top: var(--space-5);
}

.gallery-block__arrow {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: var(--brand-accent);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity .2s ease;
}

.gallery-block__arrow:hover { opacity: .85; }

.gallery-viewer {
    position: fixed;
    inset: 0;
    z-index: 2000;
    background: rgba(10, 20, 15, .88);
    display: flex;
    align-items: center;
    justify-content: center;
}

.gallery-viewer[hidden] { display: none; }

.gallery-viewer__img {
    max-width: min(92vw, 1200px);
    max-height: 86vh;
    border-radius: calc(10px * var(--rs, 1));
}

.gallery-viewer__close,
.gallery-viewer__arrow {
    position: absolute;
    border: 0;
    background: rgba(255, 255, 255, .15);
    color: #fff;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
}

.gallery-viewer__close { top: 20px; right: 20px; }
.gallery-viewer__arrow--prev { left: 20px; top: 50%; transform: translateY(-50%); }
.gallery-viewer__arrow--next { right: 20px; top: 50%; transform: translateY(-50%); }

@media (max-width: 991.98px) { .gallery-block__track { grid-auto-columns: calc((100% - 24px) / 2); } }
@media (max-width: 575.98px) {
    .gallery-block__track { grid-auto-columns: 85%; }
    .gallery-block__card { padding: var(--space-5) var(--space-4); }
}


/* ==========================================================
   LAB CALCULATOR BLOCK — "Analiz kalkulyatoru"
   ========================================================== */

.lab-calc__layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: var(--space-5);
    align-items: start;
}

.lab-calc__aside {
    position: sticky;
    top: 110px;
    background: var(--brand-surface);
    border-radius: calc(18px * var(--rs, 1));
    padding: var(--space-4) var(--space-3);
    max-height: calc(100vh - 130px);
    overflow-y: auto;
}

.lab-calc__menu {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.lab-calc__menu-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    border: 0;
    background: none;
    text-align: left;
    padding: 9px 14px;
    border-radius: calc(10px * var(--rs, 1));
    font-size: var(--font-size-meta);
    color: var(--text-primary);
    cursor: pointer;
    transition: background .15s ease, color .15s ease;
}

.lab-calc__menu-item:hover { background: #fff; color: var(--brand-accent); }
.lab-calc__menu-item.is-active { background: #fff; color: var(--brand-accent); font-weight: var(--font-weight-semibold); }

.lab-calc__menu-item--popular {
    background: #fff;
    box-shadow: var(--shadow-sm);
    font-weight: var(--font-weight-bold);
    text-decoration: underline;
    margin-bottom: var(--space-3);
}

.lab-calc__menu-item--popular svg { color: var(--brand-accent); flex-shrink: 0; }
.lab-calc__menu-item--all { margin-top: var(--space-3); color: var(--brand-accent); font-weight: var(--font-weight-semibold); }

.lab-calc__search {
    display: flex;
    align-items: center;
    border: 2px solid var(--brand-accent);
    border-radius: var(--radius-pill);
    overflow: hidden;
    background: #fff;
}

.lab-calc__search-icon { padding-left: 16px; color: #6b7b74; display: inline-flex; }

.lab-calc__search-input {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: 0;
    padding: 12px 14px;
    font-size: var(--font-size-body);
    background: transparent;
}

.lab-calc__search-input::-webkit-search-cancel-button { cursor: pointer; }

.lab-calc__search-button {
    border: 0;
    background: var(--brand-accent);
    color: #fff;
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-body-lg);
    padding: 12px 28px;
    cursor: pointer;
}

.lab-calc__summary {
    margin-top: var(--space-5);
    background: #FDE9E8;
    border-radius: calc(18px * var(--rs, 1));
    padding: var(--space-5);
}

.lab-calc__summary-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3) var(--space-7);
    font-size: var(--font-size-meta);
}

.lab-calc__summary-item { display: inline-flex; align-items: center; gap: 8px; }
.lab-calc__summary-item strong { font-size: 1.3rem; }
.lab-calc__total { color: #F0544F; font-size: 1.6rem !important; }

.lab-calc__summary-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    margin-top: var(--space-4);
}

.lab-calc__clear,
.lab-calc__show {
    border: 0;
    border-radius: calc(8px * var(--rs, 1));
    padding: 7px 14px;
    font-size: var(--font-size-helper);
    cursor: pointer;
}

.lab-calc__clear { background: #fff; text-decoration: underline; color: var(--text-primary); }
.lab-calc__show { background: #F0544F; color: #fff; font-weight: var(--font-weight-semibold); }
.lab-calc__show:hover { opacity: .9; }

.lab-calc__empty { margin-top: var(--space-5); color: var(--text-secondary); }

.lab-calc__group { margin-top: var(--space-7); scroll-margin-top: 140px; }

.lab-calc__group-title {
    font-size: 1.35rem;
    font-weight: var(--font-weight-bold);
    padding-bottom: var(--space-4);
    margin-bottom: var(--space-4);
    border-bottom: 2px solid #EEF1EF;
}

.lab-calc__items {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-3);
}

.lab-calc__item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-height: 64px;
    padding: 12px 14px;
    border: 2px solid transparent;
    border-radius: calc(14px * var(--rs, 1));
    background: #F4F5F4;
    text-align: left;
    font-size: var(--font-size-meta);
    line-height: 1.35;
    color: var(--text-primary);
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease;
}

.lab-calc__item:hover { background: color-mix(in srgb, var(--brand-accent) 10%, #fff); }

.lab-calc__dot {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-top: 2px;
    border-radius: 50%;
    background: #D4D8D6;
    transition: background .15s ease, box-shadow .15s ease;
}

.lab-calc__item.is-selected { background: var(--brand-accent-t12); border-color: var(--brand-accent); }
.lab-calc__item.is-selected .lab-calc__dot { background: var(--brand-accent); box-shadow: inset 0 0 0 3px var(--brand-accent-t12); }

/* popup */
.lab-calc-popup {
    position: fixed;
    inset: 0;
    z-index: 2000;
    background: rgba(15, 25, 20, .55);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.lab-calc-popup[hidden] { display: none; }

.lab-calc-popup__box {
    position: relative;
    width: min(760px, 100%);
    max-height: 88vh;
    overflow-y: auto;
    background: #fff;
    border-radius: calc(20px * var(--rs, 1));
    padding: var(--space-7);
}

.lab-calc-popup__close {
    position: absolute;
    top: 14px;
    right: 18px;
    border: 0;
    background: none;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
    color: var(--text-secondary);
}

.lab-calc-popup__title { font-size: 1.5rem; margin-bottom: var(--space-5); }

.lab-calc-popup__table { width: 100%; border-collapse: collapse; font-size: var(--font-size-meta); }
.lab-calc-popup__table th { text-align: left; padding: 10px; background: var(--brand-accent); color: #fff; }
.lab-calc-popup__table th:first-child { border-top-left-radius: calc(10px * var(--rs, 1)); }
.lab-calc-popup__table th:last-child { border-top-right-radius: calc(10px * var(--rs, 1)); }
.lab-calc-popup__table td { padding: 10px; border-bottom: 1px solid #EEF1EF; vertical-align: top; }
.lab-calc-popup__table td a { color: var(--text-primary); text-decoration: none; }
.lab-calc-popup__table td a:hover { color: var(--brand-accent); text-decoration: underline; }
.lab-calc-popup__price { white-space: nowrap; font-weight: var(--font-weight-semibold); }
.lab-calc-popup__remove { border: 0; background: none; color: #F0544F; font-size: 20px; line-height: 1; cursor: pointer; }

.lab-calc-popup__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
    margin-top: var(--space-5);
}

.lab-calc-popup__sum { font-size: var(--font-size-body-lg); }
.lab-calc-popup__sum strong { color: #F0544F; font-size: 1.5rem; }

.lab-calc-popup__book {
    border: 0;
    border-radius: var(--radius-pill);
    background: var(--brand-cta);
    color: #fff;
    font-weight: var(--font-weight-semibold);
    padding: 10px 26px;
    cursor: pointer;
}

.lab-calc-popup__note, .lab-calc-popup__none { margin-top: var(--space-4); font-size: var(--font-size-helper); color: var(--text-secondary); }

@media (max-width: 1199.98px) { .lab-calc__items { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

@media (max-width: 991.98px) {
    .lab-calc__layout { grid-template-columns: 1fr; }
    .lab-calc__aside { position: static; max-height: none; padding: var(--space-3); }
    .lab-calc__menu { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; gap: 6px; }
    .lab-calc__menu-item { width: auto; white-space: nowrap; background: #fff; }
    .lab-calc__menu-item--popular, .lab-calc__menu-item--all { margin: 0; }
}

@media (max-width: 575.98px) {
    .lab-calc__items { grid-template-columns: 1fr; }
    .lab-calc__search-button { padding: 12px 18px; }
}


/* ==========================================================
   DIRECTIONS TABS BLOCK - directions on the left, services right
   ==========================================================
   Both columns have the same height (the column of directions).
   The links fill it; the rest is paged (script in the block).
   ========================================================== */

.dir-tabs { padding: var(--space-10) 0; }

.dir-tabs__title { margin-bottom: var(--space-4); }

.dir-tabs__description {
    max-width: 860px;
    margin-bottom: var(--space-7);
    color: var(--text-secondary, var(--brand-muted));
}

.dir-tabs__inner {
    display: grid;
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    gap: var(--space-7);
    align-items: start;
}

.dir-tabs__nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.dir-tabs__tab {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 12px 18px;
    border: 1px solid var(--brand-accent-t4);
    border-radius: calc(14px * var(--rs, 1));
    background: #fff;
    color: var(--text-primary);
    font-size: 1rem;
    text-align: left;
    line-height: 1.3;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.dir-tabs__tab:hover { border-color: var(--brand-accent); color: var(--brand-accent-d3); }

.dir-tabs__tab.is-active {
    background: var(--brand-accent);
    border-color: var(--brand-accent);
    color: #fff;
}

.dir-tabs__tab:focus-visible { outline: 3px solid rgba(var(--brand-accent-rgb), .35); outline-offset: 2px; }

.dir-tabs__tab-count {
    flex: 0 0 auto;
    min-width: 28px;
    padding: 2px 8px;
    border-radius: var(--radius-pill, 999px);
    background: var(--brand-accent-t9);
    color: var(--brand-accent-d3);
    font-size: .8125rem;
    font-weight: 700;
    text-align: center;
}

.dir-tabs__tab.is-active .dir-tabs__tab-count { background: rgba(255, 255, 255, .22); color: #fff; }

.dir-tabs__panel {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    padding: var(--space-6) var(--space-7);
    border-radius: calc(18px * var(--rs, 1));
    background: var(--brand-surface);
}

.dir-tabs__panel[hidden] { display: none; }

.dir-tabs__panel-title { margin: 0 0 var(--space-4); font-size: 1.375rem; }

.dir-tabs__list {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    column-gap: var(--space-8);
    list-style: none;
    margin: 0;
    padding: 0;
}

.dir-tabs__list li { padding: 8px 0; border-bottom: 1px dashed var(--brand-accent-t4); }

.dir-tabs__list li[hidden] { display: none; }

.dir-tabs__list a { color: var(--text-primary); text-decoration: none; }

.dir-tabs__list a:hover { color: var(--brand-accent); text-decoration: underline; }

.dir-tabs__pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: var(--space-5);
}

.dir-tabs__pager[hidden] { display: none; }

.dir-tabs__pager button {
    min-width: 38px;
    height: 38px;
    padding: 0 10px;
    border: 1px solid var(--brand-accent-t4);
    border-radius: var(--radius-pill, 999px);
    background: #fff;
    color: var(--text-primary);
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.dir-tabs__pager button:hover:not(:disabled) { border-color: var(--brand-accent); color: var(--brand-accent-d3); }

.dir-tabs__pager button.is-current { background: var(--brand-accent); border-color: var(--brand-accent); color: #fff; }

.dir-tabs__pager button:disabled { opacity: .4; cursor: default; }

.dir-tabs__page--arrow { font-size: 1.25rem; }

@media (max-width: 991.98px) {
    .dir-tabs__inner { grid-template-columns: minmax(220px, 280px) minmax(0, 1fr); }
    .dir-tabs__list { grid-template-columns: 1fr; }
}

@media (max-width: 767.98px) {
    .dir-tabs__inner { grid-template-columns: 1fr; gap: var(--space-5); }
    .dir-tabs__nav {
        flex-direction: row;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        padding-bottom: 6px;
        scrollbar-width: none;
    }
    .dir-tabs__nav::-webkit-scrollbar { display: none; }
    .dir-tabs__tab { width: auto; flex: 0 0 auto; white-space: nowrap; border-radius: var(--radius-pill, 999px); padding: 8px 14px; scroll-snap-align: start; }
    .dir-tabs__panel { padding: var(--space-5); height: auto !important; }
    .dir-tabs__list { overflow: visible; }
}

/* ==========================================================
   CONDITIONS A–Z BLOCK - «Nəyi müalicə edirik»
   ========================================================== */

.cond-az { padding: var(--space-10) 0; }

.cond-az__title { margin-bottom: var(--space-6); }

.cond-az__card {
    padding: var(--space-6) var(--space-7);
    border-radius: calc(18px * var(--rs, 1));
    background: var(--brand-surface);
}

.cond-az__body { position: relative; }

.cond-az__body.is-folded {
    max-height: var(--cond-az-fold, 420px);
    overflow: hidden;
}

.cond-az__body.is-folded::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 90px;
    background: linear-gradient(rgba(246, 248, 247, 0), var(--brand-surface));
    content: "";
    pointer-events: none;
}

.cond-az__grid { columns: 3 240px; column-gap: var(--space-8); }

.cond-az__group {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    margin-bottom: var(--space-5);
    break-inside: avoid;
}

.cond-az__letter { color: var(--brand-accent); font-size: 1.25rem; font-weight: 700; line-height: 1.6; }

.cond-az__list { list-style: none; margin: 0; padding: 0; }

.cond-az__list li { padding: 5px 0; }

.cond-az__list a { color: var(--text-secondary, var(--brand-muted)); text-decoration: none; }

.cond-az__list a:hover { color: var(--brand-accent); text-decoration: underline; }

.cond-az__toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: var(--space-5);
    padding: 8px 20px;
    border: 0;
    border-radius: var(--radius-pill, 999px);
    background: var(--brand-accent-t9);
    color: var(--brand-accent-d3);
    font-weight: 600;
    cursor: pointer;
}

.cond-az__toggle[hidden] { display: none; }

.cond-az__toggle-less { display: none; }

.cond-az__toggle[aria-expanded="true"] .cond-az__toggle-more { display: none; }

.cond-az__toggle[aria-expanded="true"] .cond-az__toggle-less { display: inline; }

@media (max-width: 575.98px) {
    .cond-az__card { padding: var(--space-5); }
}


/* ==========================================================
   Ana səhifə: hero, «Sizi nə maraqlandırır?», təkliflər, məlumat
   ========================================================== */

.home-hero { padding: var(--space-5, 1.5rem) 0 var(--space-6, 2rem); }
.home-hero__title { font-family: var(--font-family-heading); font-size: clamp(1.6rem, 2.6vw, 2.25rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); margin: 0 0 1.25rem; }
.home-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 1.5rem; }
.home-hero__card { display: flex; flex-direction: column; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); overflow: hidden; box-shadow: 0 6px 18px rgba(16, 60, 45, .08); }
.home-hero__card-media { aspect-ratio: 16 / 9; overflow: hidden; }
.home-hero__card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.home-hero__card-body { padding: 1.5rem 1.75rem 1.75rem; display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; flex: 1; justify-content: center; }
.home-hero__card-title { margin: 0; font-family: var(--font-family-heading); font-size: 1.5rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.home-hero__button { display: inline-flex; align-items: center; gap: .5rem; padding: .7rem 1.5rem; border-radius: var(--radius-pill, 999px); background: var(--color-primary, var(--brand-accent)); color: #fff; font-weight: var(--font-weight-semibold, 600); text-decoration: none; transition: filter var(--transition-fast, .15s); }
.home-hero__button:hover { color: #fff; filter: brightness(.93); }
.home-hero__button span { font-size: 1.3em; line-height: 1; }
.home-hero__side { display: flex; flex-direction: column; gap: 1.5rem; }
.home-hero__tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.home-hero__tile { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 5.25rem; height: 100%; padding: 1rem 1.25rem; border-radius: var(--radius-xl, 1.25rem); color: var(--text-primary); font-weight: var(--font-weight-bold, 700); font-size: 1.0625rem; line-height: 1.25; text-decoration: none; transition: transform var(--transition-fast, .15s), box-shadow var(--transition-fast, .15s); }
.home-hero__tile:hover { color: var(--text-primary); transform: translateY(-2px); box-shadow: 0 6px 16px rgba(16, 60, 45, .1); }
.home-hero__tile svg { flex: none; }
.home-hero__notice { flex: 1; display: flex; align-items: center; gap: 1rem; padding: 1.25rem 1.5rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); color: var(--text-primary); }
.home-hero__notice-icon { flex: none; color: var(--color-primary, var(--brand-accent)); }
.home-hero__notice-text { font-size: 1rem; line-height: 1.5; }
.home-hero__notice-text a { color: var(--color-primary, var(--brand-accent)); }

.home-explore, .home-offers, .home-press { padding: var(--space-6, 2rem) 0; }
.home-explore__title, .home-offers__title, .home-press__title { font-family: var(--font-family-heading); font-size: var(--font-size-section-title, 2rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); margin: 0 0 1.5rem; }
.home-explore__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 1.5rem; }
.home-explore__cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.home-explore__cards li.is-wide { grid-column: 1 / -1; }
.home-explore__card { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 1rem; min-height: 7.25rem; height: 100%; padding: 1.1rem 1.25rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); color: var(--text-primary); text-decoration: none; overflow: hidden; transition: background-color var(--transition-fast, .15s); }
.home-explore__card:hover { background: var(--brand-accent-t2); color: var(--text-primary); }
.is-wide .home-explore__card { min-height: 9rem; padding-right: 48%; }
.home-explore__card-title { position: relative; z-index: 1; font-weight: var(--font-weight-bold, 700); font-size: 1.0625rem; }
.home-explore__card-text { position: relative; z-index: 1; font-size: .9rem; color: var(--text-secondary); margin-top: -.5rem; }
.home-explore__arrow { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 50%; background: var(--color-primary, var(--brand-accent)); color: #fff; }
.home-explore__card-image { position: absolute; right: 0; top: 0; width: 46%; height: 100%; object-fit: cover; border-radius: 0 var(--radius-xl, 1.25rem) var(--radius-xl, 1.25rem) 0; }
.home-explore__map { position: relative; min-height: 24rem; border-radius: var(--radius-xl, 1.25rem); overflow: hidden; background: var(--brand-surface-2); display: flex; flex-direction: column; }
.home-explore__map iframe { flex: 1; width: 100%; min-height: 21rem; border: 0; display: block; }
.home-explore__map-button { position: absolute; top: 1rem; left: 1rem; z-index: 2; box-shadow: 0 4px 12px rgba(0, 0, 0, .12); }
.home-explore__address { margin: 0; padding: .9rem 1.25rem; font-weight: var(--font-weight-semibold, 600); color: var(--text-primary); }

.home-offers__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.5rem; }
.home-offers__small { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.home-offers__card { position: relative; display: flex; min-height: 10.5rem; padding: 1.1rem 1.25rem; border-radius: var(--radius-xl, 1.25rem); overflow: hidden; color: var(--text-primary); text-decoration: none; transition: transform var(--transition-fast, .15s); }
.home-offers__card:hover { color: var(--text-primary); transform: translateY(-2px); }
.home-offers__body { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; max-width: 62%; }
.home-offers__card-title { font-weight: var(--font-weight-bold, 700); font-size: 1rem; line-height: 1.3; }
.home-offers__text { font-size: .9rem; color: var(--text-secondary); }
.home-offers__button { margin-top: auto; padding: .45rem 1.25rem; border-radius: var(--radius-pill, 999px); background: #fff; font-weight: var(--font-weight-medium, 500); font-size: .95rem; }
.home-offers__image { position: absolute; right: 0; bottom: 0; width: 42%; height: 100%; object-fit: cover; object-position: center top; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 30%); mask-image: linear-gradient(to right, transparent 0, #000 30%); }
.home-offers__card--large { min-height: 22.5rem; padding: 2rem 2.25rem; }
.home-offers__card--large .home-offers__body { max-width: 58%; gap: 1rem; }
.home-offers__card--large .home-offers__card-title { font-size: clamp(1.4rem, 2vw, 1.85rem); }
.home-offers__card--large .home-offers__text { font-size: 1rem; }
.home-offers__card--large .home-offers__image { width: 48%; }
.home-offers__all { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1.5rem; padding: .6rem 1.4rem; border-radius: var(--radius-pill, 999px); background: var(--brand-surface-2); color: var(--text-primary); font-weight: var(--font-weight-semibold, 600); text-decoration: none; }
.home-offers__all:hover { background: var(--brand-accent-t2); color: var(--text-primary); }
.home-offers__all span { font-size: 1.3em; line-height: 1; }

.home-press__tabs { display: flex; flex-wrap: wrap; gap: .75rem; margin-bottom: 1.5rem; }
.home-press__tab { border: 0; padding: .6rem 1.5rem; border-radius: var(--radius-pill, 999px); background: var(--brand-surface-2); color: var(--text-primary); font-weight: var(--font-weight-semibold, 600); cursor: pointer; }
.home-press__tab.is-active { background: var(--color-primary, var(--brand-accent)); color: #fff; }
.home-press__cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.home-press__card { display: flex; flex-direction: column; align-items: flex-start; gap: .85rem; height: 100%; padding: 1.5rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); color: var(--text-primary); text-decoration: none; }
.home-press__card:hover { color: var(--text-primary); background: var(--brand-accent-t2); }
.home-press__date { align-self: flex-end; padding: .25rem .8rem; border-radius: var(--radius-pill, 999px); background: #fff; font-size: .85rem; font-weight: var(--font-weight-semibold, 600); }
.home-press__card-title { font-weight: var(--font-weight-bold, 700); font-size: 1.125rem; line-height: 1.35; }
.home-press__excerpt { font-size: .95rem; color: var(--text-secondary); }
.home-press__more { margin-top: auto; padding: .45rem 1.25rem; border-radius: var(--radius-pill, 999px); background: #fff; font-weight: var(--font-weight-semibold, 600); }

@media (max-width: 991.98px) {
    .home-hero__grid, .home-explore__grid, .home-offers__grid { grid-template-columns: 1fr; }
    .home-press__cards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767.98px) {
    .home-hero__tiles { grid-template-columns: 1fr 1fr; }
    .home-hero__tile { min-height: 4.25rem; font-size: 1rem; padding: .85rem 1rem; }
    .home-offers__small, .home-press__cards { grid-template-columns: 1fr; }
    .home-offers__card--large { min-height: 16rem; padding: 1.5rem; }
}
@media (max-width: 479.98px) {
    .home-hero__tiles, .home-explore__cards { grid-template-columns: 1fr; }
    .is-wide .home-explore__card { padding-right: 40%; }
}
/* Ana səhifə: kartlarda şəkillər (2-ci mərhələ) */
.home-press__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; width: 100%; }
.home-press__thumb { width: 8.5rem; height: 5.75rem; object-fit: cover; border-radius: calc(.75rem * var(--rs, 1)); flex: none; }
.home-press__top .home-press__date { align-self: flex-start; }
.home-explore__card.has-image { padding-right: 46%; }
.home-explore__cards li:not(.is-wide) .home-explore__card-image { width: 44%; }
@media (max-width: 479.98px) { .home-explore__card.has-image { padding-right: 42%; } }
/* Ana səhifə: hero kartında mərkəz keçidləri */
.home-hero__links { list-style: none; margin: -.25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.home-hero__links a { display: inline-flex; align-items: center; gap: .35rem; padding: .4rem .9rem; border-radius: var(--radius-pill, 999px); background: #fff; border: 1px solid var(--brand-accent-t3); color: var(--text-primary); font-size: .9375rem; font-weight: var(--font-weight-medium, 500); text-decoration: none; transition: border-color var(--transition-fast, .15s), color var(--transition-fast, .15s); }
.home-hero__links a:hover { border-color: var(--color-primary, var(--brand-accent)); color: var(--color-primary, var(--brand-accent)); }
.home-hero__links svg { color: var(--color-primary, var(--brand-accent)); }

/* Mərkəzlər bloku: səhifələnmə */
.centers-pager__page[hidden] { display: none !important; }
.centers-pager__nav { display: flex; justify-content: center; align-items: center; gap: .5rem; margin-top: 2rem; }
.centers-pager__btn { display: inline-flex; align-items: center; justify-content: center; min-width: 2.75rem; height: 2.75rem; padding: 0 .75rem; border: 1px solid var(--brand-accent-t3); border-radius: var(--radius-pill, 999px); background: #fff; color: var(--text-primary); font-weight: var(--font-weight-semibold, 600); cursor: pointer; transition: background-color var(--transition-fast, .15s), color var(--transition-fast, .15s); }
.centers-pager__btn:hover:not(:disabled) { border-color: var(--color-primary, var(--brand-accent)); color: var(--color-primary, var(--brand-accent)); }
.centers-pager__btn.is-active { background: var(--color-primary, var(--brand-accent)); border-color: var(--color-primary, var(--brand-accent)); color: #fff; }
.centers-pager__btn:disabled { opacity: .4; cursor: default; }
/* ==========================================================
   Image Cards Block - şəkilli kartlar (stasionar növləri və s.)
   ========================================================== */
.image-cards__title { font-family: var(--font-family-heading); font-size: var(--font-size-section-title, 2rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); margin: 0 0 1.5rem; }
.image-cards__grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.5rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.image-cards__grid--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.image-cards__grid--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.image-cards__card { display: flex; flex-direction: column; height: 100%; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); overflow: hidden; color: var(--text-primary); text-decoration: none; box-shadow: 0 4px 14px rgba(16, 60, 45, .06); transition: transform var(--transition-fast, .15s), box-shadow var(--transition-fast, .15s); }
a.image-cards__card:hover { color: var(--text-primary); transform: translateY(-3px); box-shadow: 0 10px 22px rgba(16, 60, 45, .12); }
.image-cards__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.image-cards__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.image-cards__body { display: flex; flex-direction: column; gap: .4rem; padding: 1rem 1.25rem 1.25rem; }
.image-cards__card-title { font-weight: var(--font-weight-bold, 700); font-size: 1.0625rem; }
.image-cards__text { font-size: .9375rem; color: var(--text-secondary); line-height: 1.45; }
@media (max-width: 991.98px) { .image-cards__grid, .image-cards__grid--cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .image-cards__grid, .image-cards__grid--cols-2, .image-cards__grid--cols-3 { grid-template-columns: 1fr; } }
.features-block__numbered-icon { flex: none; width: 3.75rem; height: 3.75rem; }

/* Hub səhifəsinin başlığı: sağda «Zəng sifariş et» düyməsi */
.page-header__title-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.page-header__title-row .page-header__title { margin-bottom: 0; }
.page-header__callback { border: 0; padding: .7rem 1.6rem; border-radius: var(--radius-pill, 999px); background: var(--color-primary, var(--brand-accent)); color: #fff; font-weight: var(--font-weight-semibold, 600); cursor: pointer; transition: filter .15s; }
.page-header__callback:hover { filter: brightness(.93); }
/* Addresses Block - ünvan kartları */
.addresses-block__panel { padding: 1.75rem 2rem 2rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-surface-2); }
.addresses-block__title { font-family: var(--font-family-heading); font-size: 1.375rem; font-weight: var(--font-weight-medium, 500); color: var(--text-primary); margin: 0 0 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid color-mix(in srgb, var(--brand-accent) 21%, #fff); }
.addresses-block__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.addresses-block__card { display: flex; align-items: flex-start; gap: .9rem; height: 100%; padding: 1.1rem 1.25rem; border-radius: var(--radius-lg, 1rem); background: #fff; color: var(--text-primary); text-decoration: none; font-size: .9375rem; line-height: 1.4; }
a.addresses-block__card:hover { color: var(--text-primary); box-shadow: 0 6px 16px rgba(16, 60, 45, .08); }
.addresses-block__pin { flex: none; color: var(--color-primary, var(--brand-accent)); }
.addresses-block__note { display: block; color: var(--text-secondary); }
@media (max-width: 991.98px) { .addresses-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .addresses-block__grid { grid-template-columns: 1fr; } .addresses-block__panel { padding: 1.25rem; } }
/* Contact Hero Block - hospitalizasiya kartı + şəkil */
.contact-hero__panel { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 1rem; padding: 1rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-accent-t1); }
.contact-hero__card { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 1.25rem; padding: 2rem 2.25rem; border-radius: var(--radius-lg, 1rem); background: #fff; }
.contact-hero__title { margin: 0; font-family: var(--font-family-heading); font-size: 1.5rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.contact-hero__phone { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem .75rem; margin: 0; }
.contact-hero__phone svg { color: var(--color-primary, var(--brand-accent)); }
.contact-hero__phone a { font-size: 1.6rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); text-decoration: none; }
.contact-hero__phone span { color: var(--text-secondary); font-size: .95rem; }
.contact-hero__button { border: 0; padding: .8rem 1.6rem; border-radius: var(--radius-pill, 999px); background: var(--brand-cta); color: #fff; font-weight: var(--font-weight-semibold, 600); cursor: pointer; }
.contact-hero__button:hover { filter: brightness(.95); }
.contact-hero__media { border-radius: var(--radius-lg, 1rem); overflow: hidden; min-height: 14rem; }
.contact-hero__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 767.98px) { .contact-hero__panel { grid-template-columns: 1fr; } .contact-hero__card { padding: 1.5rem; } }

/* Directions Cards Block - istiqamət kartları */
.dir-cards__title { font-family: var(--font-family-heading); font-size: var(--font-size-section-title, 2rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); margin: 0 0 1rem; }
.dir-cards__intro { color: var(--text-secondary); margin: 0 0 1.75rem; max-width: 72rem; }
.dir-cards__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: 1.25rem; align-items: start; }
.dir-cards__grid--no-image { grid-template-columns: 1fr; }
.dir-cards__media { border-radius: var(--radius-xl, 1.25rem); overflow: hidden; aspect-ratio: 3 / 4; }
.dir-cards__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dir-cards__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.dir-cards__card { display: flex; flex-direction: column; gap: .35rem; padding: 1.1rem 1.25rem; border: 1px solid color-mix(in srgb, var(--brand-accent) 17%, #fff); border-radius: var(--radius-lg, 1rem); background: #fff; }
.dir-cards__head { display: flex; justify-content: space-between; align-items: center; gap: .75rem; margin-bottom: .25rem; }
.dir-cards__card-title { font-weight: var(--font-weight-bold, 700); font-size: 1.0625rem; color: var(--text-primary); }
.dir-cards__arrow { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 1.9rem; height: 1.9rem; border-radius: 50%; background: var(--color-primary, var(--brand-accent)); color: #fff; }
.dir-cards__arrow:hover { color: #fff; filter: brightness(.93); }
.dir-cards__label { font-size: .85rem; font-weight: var(--font-weight-semibold, 600); color: var(--color-primary, var(--brand-accent)); }
.dir-cards__text { font-size: .9375rem; color: var(--text-secondary); line-height: 1.45; }
@media (max-width: 991.98px) { .dir-cards__grid { grid-template-columns: 1fr; } .dir-cards__media { aspect-ratio: 16 / 9; } }
@media (max-width: 575.98px) { .dir-cards__list { grid-template-columns: 1fr; } }
/* Split Hero Block - böyük yaşıl kart + iki kiçik kart */
.split-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.25rem; }
.split-hero__grid--single { grid-template-columns: 1fr; }
.split-hero__main { position: relative; display: flex; align-items: flex-end; min-height: 25rem; padding: 2.25rem; border-radius: var(--radius-xl, 1.25rem); background: var(--color-primary, var(--brand-accent)); color: #fff; overflow: hidden; }
.split-hero__main-body { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; max-width: 52%; }
.split-hero__title { margin: 0; font-family: var(--font-family-heading); font-size: clamp(1.4rem, 2.1vw, 1.9rem); font-weight: var(--font-weight-bold, 700); color: #fff; }
.split-hero__text { margin: 0; font-size: .95rem; line-height: 1.5; color: rgba(255, 255, 255, .92); }
.split-hero__button { border: 0; display: inline-block; padding: .75rem 1.6rem; border-radius: var(--radius-pill, 999px); background: var(--brand-cta); color: #fff; font-weight: var(--font-weight-semibold, 600); text-decoration: none; cursor: pointer; }
.split-hero__button:hover { color: #fff; filter: brightness(.95); }
.split-hero__main-image { position: absolute; right: 0; bottom: 0; width: 50%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 25%); mask-image: linear-gradient(to right, transparent 0, #000 25%); }
.split-hero__side { display: grid; grid-template-rows: 1fr 1fr; gap: 1.25rem; }
.split-hero__card { position: relative; display: flex; align-items: center; min-height: 11.5rem; padding: 1.5rem 1.75rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-accent-t1); overflow: hidden; }
.split-hero__card-body { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; max-width: 60%; }
.split-hero__card-title { margin: 0; font-family: var(--font-family-heading); font-size: 1.35rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.split-hero__card-text { margin: 0; font-size: .9rem; color: var(--text-secondary); line-height: 1.45; }
.split-hero__card-button { padding: .45rem 1.2rem; border-radius: var(--radius-pill, 999px); background: var(--color-primary, var(--brand-accent)); color: #fff; font-size: .9rem; font-weight: var(--font-weight-semibold, 600); text-decoration: none; }
.split-hero__card-button:hover { color: #fff; filter: brightness(.93); }
.split-hero__card-image { position: absolute; right: 0; top: 0; width: 38%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 30%); mask-image: linear-gradient(to right, transparent 0, #000 30%); }
@media (max-width: 991.98px) { .split-hero__grid { grid-template-columns: 1fr; } }
@media (max-width: 575.98px) { .split-hero__main { min-height: 22rem; padding: 1.5rem; } .split-hero__main-body { max-width: 100%; } .split-hero__main-image { width: 100%; opacity: .25; } .split-hero__card-body { max-width: 70%; } }

/* Pastel Links Block - rəngli kiçik plitələr */
.pastel-links__title { font-family: var(--font-family-heading); font-size: 1.6rem; font-weight: var(--font-weight-medium, 500); color: var(--text-primary); margin: 0 0 1.25rem; }
.pastel-links__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.pastel-links__grid--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pastel-links__grid--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pastel-links__tile { display: flex; align-items: center; height: 100%; min-height: 3.5rem; padding: .85rem 1.25rem; border-radius: var(--radius-lg, 1rem); color: var(--text-primary); font-weight: var(--font-weight-bold, 700); font-size: .95rem; text-decoration: none; }
a.pastel-links__tile:hover { color: var(--text-primary); filter: brightness(.97); }
@media (max-width: 991.98px) { .pastel-links__grid, .pastel-links__grid--cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479.98px) { .pastel-links__grid, .pastel-links__grid--cols-2, .pastel-links__grid--cols-3 { grid-template-columns: 1fr; } }

/* Bento Cards Block */
.bento-cards__title { font-family: var(--font-family-heading); font-size: 1.6rem; font-weight: var(--font-weight-medium, 500); color: var(--text-primary); margin: 0 0 1.25rem; }
.bento-cards__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; }
.bento-cards__main { display: flex; flex-direction: column; justify-content: center; padding: 2rem; border-radius: var(--radius-xl, 1.25rem); background: var(--brand-accent-t1); }
.bento-cards__main-title, .bento-cards__item-title { margin: 0 0 .5rem; font-family: var(--font-family-heading); font-size: 1.125rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.bento-cards__main-text { font-size: .95rem; color: var(--text-secondary); }
.bento-cards__main-text p:last-child { margin-bottom: 0; }
.bento-cards__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.bento-cards__item { padding: 1.1rem 1.5rem; border-radius: var(--radius-lg, 1rem); background: var(--brand-surface-2); }
.bento-cards__item-text { margin: 0; font-size: .9375rem; color: var(--text-secondary); line-height: 1.45; }
@media (max-width: 767.98px) { .bento-cards__grid { grid-template-columns: 1fr; } }

/* Addresses Block: şəkilli variant */
.addresses-block__panel--image { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 1.5rem; padding: 0; background: transparent; }
.addresses-block__panel--image .addresses-block__media { border-radius: var(--radius-xl, 1.25rem); overflow: hidden; min-height: 16rem; }
.addresses-block__panel--image .addresses-block__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.addresses-block__panel--image .addresses-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.addresses-block__panel--image .addresses-block__card { background: var(--brand-surface-2); padding: 1.4rem 1.5rem; }
.addresses-block__panel--image .addresses-block__title { border: 0; padding: 0; }
.addresses-block__footer { margin: 1.25rem 0 0; font-size: .95rem; color: var(--text-secondary); }
@media (max-width: 767.98px) { .addresses-block__panel--image { grid-template-columns: 1fr; } }

/* Başlıqda hap şəklində lövbərlər */
.page-header--pills .page-header__anchors { gap: .6rem; }
.page-header--pills .page-header__anchor { padding: .45rem 1.1rem; border-radius: var(--radius-pill, 999px); background: var(--brand-surface-2); color: var(--text-primary); text-decoration: none; font-size: .9rem; }
.page-header--pills .page-header__anchor:hover { background: var(--brand-accent-t2); color: var(--text-primary); }
.contact-hero__panel--single { grid-template-columns: 1fr; }
.contact-hero__panel--single .contact-hero__card { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; }

/* Lead + List Block - solda yaşıl lid, sağda keçidli siyahı */
.lead-list__title { font-family: var(--font-family-heading); font-size: var(--font-size-section-title, 2rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); margin: 0 0 1.5rem; }
.lead-list__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 2.5rem; }
.lead-list__grid--no-lead { grid-template-columns: 1fr; }
.lead-list__lead { margin: 0; font-weight: var(--font-weight-bold, 700); font-size: 1.0625rem; line-height: 1.5; color: var(--color-primary, var(--brand-accent)); }
.lead-list__intro, .lead-list__footer { margin: 0 0 1rem; color: var(--text-secondary); }
.lead-list__footer { margin: 1rem 0 0; }
.lead-list__items { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.lead-list__items li { position: relative; padding-left: 1.6rem; line-height: 1.5; color: var(--text-primary); }
.lead-list__items li::before { content: ""; position: absolute; left: 0; top: .4em; width: .75rem; height: .75rem; border: 2px solid var(--color-primary, var(--brand-accent)); border-radius: 50%; }
.lead-list__items a { color: var(--color-primary, var(--brand-accent)); text-decoration: underline; text-underline-offset: 3px; }
.lead-list__note { color: var(--text-secondary); }
@media (max-width: 767.98px) { .lead-list__grid { grid-template-columns: 1fr; gap: 1rem; } }
/* ---------- Result Block (procedure pages: <Nəticə>) ---------- */
.result-block__title { margin: 0 0 1.25rem; font-family: var(--font-family-heading); font-size: 1.75rem; font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.result-block__panel { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(14rem, 22rem); align-items: center; gap: 1.5rem 2rem; padding: 2.25rem 2.5rem; border-radius: var(--radius-xl, 1.25rem); background: var(--color-primary, var(--brand-accent)); color: #fff; }
.result-block__icon { color: #fff; align-self: start; }
.result-block__text { font-size: .95rem; line-height: 1.55; }
.result-block__text p { margin: 0 0 .75rem; }
.result-block__text p:last-child { margin-bottom: 0; }
.result-block__text a { color: #fff; text-decoration: underline; }
.result-block__card { display: flex; align-items: center; gap: .9rem; width: 100%; padding: 1.1rem 1.4rem; border: 0; border-radius: var(--radius-pill, 999px); background: #fff; color: var(--text-primary); text-align: left; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease; }
.result-block__card:hover { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(0, 0, 0, .12); }
.result-block__card-icon { flex: 0 0 auto; color: var(--color-primary, var(--brand-accent)); }
.result-block__card-text { display: flex; flex-direction: column; line-height: 1.25; }
.result-block__card-text strong { color: var(--color-primary, var(--brand-accent)); font-size: 1rem; }
.result-block__card-text small { color: var(--text-secondary); font-size: .85rem; }
@media (max-width: 991.98px) { .result-block__panel { grid-template-columns: auto minmax(0, 1fr); } .result-block__card { grid-column: 1 / -1; } }
@media (max-width: 575.98px) { .result-block__panel { grid-template-columns: 1fr; padding: 1.5rem; } }

/* ---------- Rich content helpers: multi-column lists, card photos ---------- */
.rich-content ul.list-cols-3, .content-card ul.list-cols-3 { columns: 3; column-gap: 2rem; }
.rich-content ul.list-cols-2, .content-card ul.list-cols-2 { columns: 2; column-gap: 2rem; }
.rich-content ul.list-cols-3 li, .rich-content ul.list-cols-2 li { break-inside: avoid; }
@media (max-width: 767.98px) { .rich-content ul.list-cols-3, .rich-content ul.list-cols-2 { columns: 1; } }
.content-cards-block img.card-photo { display: block; width: 100%; height: 15rem; object-fit: cover; border-radius: var(--radius-lg, 1rem); margin: 0 0 1.25rem; }
.rich-content ul.list-cols-1, .content-card ul.list-cols-1 { column-count: 1; columns: 1; }

/* Split panel: the photo follows the text height (portrait photos no longer stretch the panel) */
.rich-content-block__split-image { position: relative; min-height: 16rem; }
.rich-content-block__split-image img { position: absolute; inset: 0; }

/* ---------- Service Tiles Block (grey panel of white cards: icon + title + button) ---------- */
.service-tiles__title { margin: 0 0 1.25rem; font-family: var(--font-family-heading); font-size: var(--font-size-section-title, 2rem); font-weight: var(--font-weight-bold, 700); color: var(--text-primary); }
.service-tiles__panel { padding: 1.75rem; border-radius: var(--radius-xl, 1.25rem); background: #F2F4F3; }
.service-tiles__grid { display: grid; grid-template-columns: repeat(var(--st-cols, 4), minmax(0, 1fr)); gap: 1rem; }
.service-tiles__card { display: flex; flex-direction: column; align-items: flex-start; gap: .9rem; padding: 1.1rem 1.25rem 1.25rem; border-radius: var(--radius-lg, 1rem); background: #fff; color: var(--text-primary); text-decoration: none; transition: box-shadow .15s ease, transform .15s ease; }
.service-tiles__card:hover { box-shadow: 0 10px 24px rgba(17, 38, 30, .08); transform: translateY(-2px); color: var(--text-primary); }
.service-tiles__head { display: flex; align-items: center; gap: .7rem; }
.service-tiles__icon { flex: 0 0 auto; width: 2.25rem; height: 2.25rem; color: var(--color-primary, var(--brand-accent)); }
.service-tiles__icon svg { width: 100%; height: 100%; }
.service-tiles__name { font-weight: var(--font-weight-semibold, 600); font-size: .95rem; line-height: 1.3; }
.service-tiles__btn { margin-top: auto; display: inline-block; padding: .55rem 1.4rem; border-radius: var(--radius-pill, 999px); background: var(--color-primary, var(--brand-accent)); color: #fff; font-size: .85rem; font-weight: var(--font-weight-semibold, 600); }
.service-tiles__card:hover .service-tiles__btn { filter: brightness(.95); }
.service-tiles__text { margin-top: 1.5rem; color: var(--text-secondary); }
.service-tiles__text p:last-child { margin-bottom: 0; }
@media (max-width: 991.98px) { .service-tiles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .service-tiles__grid { grid-template-columns: 1fr; } .service-tiles__panel { padding: 1rem; } }

/* Lead + List: multi-column list and a solid green lead box */
.lead-list__items--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }
.lead-list__items--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 2rem; }
@media (max-width: 767.98px) { .lead-list__items--cols-2, .lead-list__items--cols-3 { grid-template-columns: 1fr; } }
.lead-list--box .lead-list__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); align-items: start; }
.lead-list--box .lead-list__lead { padding: 1.5rem; border-radius: var(--radius-lg, 1rem); background: var(--color-primary, var(--brand-accent)); color: #fff; font-weight: var(--font-weight-medium, 500); font-size: .95rem; }
@media (max-width: 767.98px) { .lead-list--box .lead-list__grid { grid-template-columns: 1fr; } }

/* ==========================================================
   HUB LOOKS (opt-in variants; defaults are unchanged)
   - statistics_block tile_style=green
   - contact_hero_block variant=pink
   - lead_list_block look=grey_panel
   - rich_content_block look=plain | box
   - columns_cards_block
   ========================================================== */

.statistics-block--green { background-color: #F2F4F3; margin-block: 0; }
.statistics-block--green > .container { padding-block: 1rem; }
.statistics-block--green .statistics-block__item { background-color: color-mix(in srgb, var(--brand-accent) 89%, #000); box-shadow: none; padding: 1rem 1.25rem; color: #fff; min-height: 4.5rem; }
.statistics-block--green .statistics-block__svg { flex: none; width: 2.5rem; height: 2.5rem; color: #fff; }
.statistics-block--green .statistics-block__number { color: #fff; }
.statistics-block--green .statistics-block__label { color: #fff; font-weight: 700; text-transform: uppercase; font-size: .8125rem; line-height: 1.25; letter-spacing: .01em; }
.statistics-block--green .statistics-block__number + .statistics-block__label { text-transform: none; font-weight: 500; }

.contact-hero__panel--pink { background: #FDE9EA; }
.contact-hero__panel--pink .contact-hero__card { align-items: flex-start; gap: 1.1rem; }
.contact-hero__text { margin: 0; color: var(--text-primary); font-size: .95rem; line-height: 1.5; }
.contact-hero__call { display: inline-flex; align-items: center; gap: .6rem; padding: .85rem 1.6rem; border-radius: var(--radius-pill, 999px); background: #F36B6F; color: #fff; font-weight: 700; font-size: 1.15rem; text-decoration: none; }
.contact-hero__call:hover { color: #fff; filter: brightness(.95); }
.contact-hero__panel--pink .contact-hero__media { background: transparent; }
.contact-hero__panel--pink .contact-hero__media img { object-fit: contain; object-position: right bottom; }

.lead-list--panel > .container { background: #F2F4F3; border-radius: var(--radius-xl, 1.25rem); padding: 2rem; }
.lead-list--panel .lead-list__title { margin-bottom: 1.5rem; }
.lead-list--panel .lead-list__items li { padding-left: 0; }
.lead-list--panel .lead-list__items li::before { display: none; }
.lead-list--panel .lead-list__items a { color: var(--text-primary); text-decoration: none; }
.lead-list--panel .lead-list__items a:hover { color: var(--color-primary, var(--brand-accent)); }
.lead-list--panel .lead-list__items { row-gap: 1.5rem; }

.rich-content-block__card--plain { background: transparent; padding-inline: 0; }
.rich-content-block__card--plain h2 { border-bottom: 0; padding-bottom: 0; }
.rich-content-block__card--box .rich-content { background: var(--color-primary, var(--brand-accent)); color: #fff; border-radius: var(--radius-lg, 1rem); padding: 1.5rem 1.75rem; font-size: .9375rem; }
.rich-content-block__card--box .rich-content :is(p, li, strong, em, a) { color: #fff; }
.rich-content-block__card--box .rich-content p:last-child { margin-bottom: 0; }

.columns-cards__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem; align-items: start; }
.columns-cards__title { color: var(--text-primary); margin: 0 0 1.5rem; }
.columns-cards__card { background: var(--brand-surface-3); border-radius: var(--radius-lg, 1rem); padding: 1.5rem 1.75rem; }
.columns-cards__card > :last-child { margin-bottom: 0; }
@media (max-width: 767.98px) { .columns-cards__grid { grid-template-columns: 1fr; gap: 1.5rem; } }
/* hub looks, round 2 */
.statistics-block--green { background-color: transparent; }
.statistics-block--green > .container > .row { background: #F2F4F3; border-radius: var(--radius-xl, 1.25rem); padding: .5rem; margin-inline: 0; }
.lead-list--panel > .container { background: transparent; padding: 0 var(--bs-gutter-x, .75rem); border-radius: 0; }
.lead-list--panel .lead-list__grid { background: #F2F4F3; border-radius: var(--radius-lg, 1rem); padding: 1.5rem; }
.rich-content-block__card--box h2 { border-bottom: 0; padding-bottom: 0; }
.rich-content-block__card--box .row { align-items: flex-start !important; }.contact-hero__panel--pink { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); align-items: stretch; }
.contact-hero__panel--pink .contact-hero__media { min-height: 0; height: 15rem; align-self: end; overflow: visible; }
.contact-hero__panel--pink .contact-hero__media img { height: 100%; width: 100%; object-fit: contain; object-position: center bottom; }
.contact-hero__panel--pink .contact-hero__card { padding: 1.75rem 2rem; }
@media (max-width: 767.98px) { .contact-hero__panel--pink { grid-template-columns: 1fr; } .contact-hero__panel--pink .contact-hero__media { height: 12rem; } }
/* round image (look=plain_round) */
.rich-content-block__card--round .col-lg-6:has(> img) { display: flex; justify-content: center; }
.rich-content-block__card--round img.img-fluid { width: min(100%, 18rem); aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50% !important; }
/* hub looks, round 3: contact_hero mint_card, shift_panels_block */
.contact-hero__mintcard { background: var(--brand-accent-t1); border-radius: var(--radius-xl, 1.25rem); padding: 2rem clamp(1rem, 7vw, 6.5rem) 2.25rem; }
.contact-hero__mintcard-title { margin: 0 0 1rem; color: var(--text-primary); }
.contact-hero__mintcard-text { margin: 0 0 1.5rem; color: var(--text-primary); }
.contact-hero__mintcard-card { background: #fff; border-radius: var(--radius-lg, 1rem); padding: 2rem 1.5rem; text-align: center; display: grid; gap: 1.1rem; justify-items: center; }
.contact-hero__mintcard-lead { margin: 0; font-weight: 700; color: var(--text-primary); max-width: 38rem; }
.contact-hero__mintcard-phone { display: inline-flex; align-items: center; gap: .6rem; color: var(--color-primary, var(--brand-accent)); text-decoration: none; }
.contact-hero__mintcard-phone:hover { color: var(--color-primary, var(--brand-accent)); filter: brightness(.9); }

.shift-panels__title { display: flex; align-items: center; gap: 1.5rem; margin: 0 0 2rem; text-align: center; color: var(--text-primary); }
.shift-panels__title::before, .shift-panels__title::after { content: ""; flex: 1; height: 1px; background: #cfd6d3; }
.shift-panels__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem; }
.shift-panels__panel { border-radius: var(--radius-lg, 1rem); padding: 1.5rem 2rem 2rem; color: #1a1a1a; }
.shift-panels__panel--grey { background: #EEEEEE; }
.shift-panels__panel--cyan { background: #D4F4FC; }
.shift-panels__head { display: flex; align-items: center; gap: 1rem; padding-bottom: .5rem; margin-bottom: 1.25rem; border-bottom: 3px solid #111; }
.shift-panels__head h3 { margin: 0; }
.shift-panels__list { list-style: none; margin: 0; padding: 0 0 0 1rem; display: grid; gap: 1.25rem; }
.shift-panels__list li { display: flex; align-items: center; gap: 1.1rem; }
.shift-panels__list a { color: inherit; text-decoration: none; }
.shift-panels__list a:hover { text-decoration: underline; }
.shift-panels__list svg { flex: none; }
@media (max-width: 767.98px) { .shift-panels__grid { grid-template-columns: 1fr; } .shift-panels__list li { } .contact-hero__mintcard { padding: 1.5rem 1rem; } }/* round 4: escort_form_block */
.escort-form-block__panel { background: #F0F2F1; border-radius: var(--radius-xl, 1.25rem); padding: 2rem clamp(1rem, 4vw, 3rem) 2.5rem; }
.escort-form-block__title { margin: 0 0 1.25rem; color: var(--text-primary); }
.escort-form-block__notice { display: flex; align-items: center; gap: 1rem; background: var(--brand-accent-t1); border-radius: var(--radius-pill, 999px); padding: .9rem 1.25rem; margin-bottom: 1.5rem; }
.escort-form-block__notice-icon { flex: none; width: 2.25rem; height: 2.25rem; border-radius: 50%; background: var(--brand-accent); color: #fff; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.escort-form-block__notice-text { flex: 1; margin: 0; font-size: .95rem; color: var(--text-primary); }
.escort-form-block__notice-button { flex: none; background: var(--brand-accent); color: #fff; border-radius: var(--radius-pill, 999px); padding: .6rem 1.5rem; font-weight: 700; text-decoration: none; }
.escort-form-block__notice-button:hover { color: #fff; filter: brightness(.92); }
.escort-form-block__card { background: #fff; border-radius: var(--radius-lg, 1rem); overflow: hidden; }
.escort-form-block__form { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.escort-form-block__side { background: color-mix(in srgb, var(--brand-accent) 21%, #fff); padding: 2rem; display: grid; gap: 1rem; align-content: start; }
.escort-form-block__side-title { margin: 0 0 .5rem; }
.escort-form-block__radio { display: flex; align-items: center; gap: .75rem; margin: 0; cursor: pointer; }
.escort-form-block__radio input { accent-color: var(--brand-accent); width: 1.1rem; height: 1.1rem; }
.escort-form-block__fields { padding: 2rem; display: grid; gap: 1rem; align-content: start; }
.escort-form-block__label { display: grid; gap: .3rem; margin: 0; font-size: .9rem; color: #5a6560; }
.escort-form-block__input { width: 100%; border: 1px solid #cfd6d3; border-radius: calc(.6rem * var(--rs, 1)); padding: .65rem .9rem; font: inherit; background: #fff; color: var(--text-primary); }
.escort-form-block__input--area { border-color: transparent; }
.escort-form-block__submit { justify-self: start; border: 0; background: var(--brand-cta); color: #fff; font-weight: 700; border-radius: var(--radius-pill, 999px); padding: .75rem 2rem; cursor: pointer; }
.escort-form-block__submit:hover { filter: brightness(.94); }
.escort-form-block__hint { margin: 0; font-size: .8rem; color: #7a847f; }
@media (max-width: 767.98px) { .escort-form-block__form { grid-template-columns: 1fr; } .escort-form-block__notice { flex-wrap: wrap; border-radius: calc(1.25rem * var(--rs, 1)); } }
/* round 5: home_press carousel (opt-in), rich look plain_round_left / tight */
.home-press__cards--carousel { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 3 * 1.5rem) / 4); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.home-press__cards--carousel.home-press__cards--pv3 { grid-auto-columns: calc((100% - 2 * 1.5rem) / 3); }
.home-press__cards--carousel::-webkit-scrollbar { display: none; }
.home-press__cards--carousel > li { scroll-snap-align: start; min-width: 0; }
.home-press__cards--carousel .home-press__top { flex-wrap: wrap; }
.home-press__cards--carousel .home-press__thumb { width: 100%; height: 7rem; }
.home-press__carousel .gallery-block__nav { margin-top: 1.25rem; }
@media (max-width: 991.98px) { .home-press__cards--carousel, .home-press__cards--carousel.home-press__cards--pv3 { grid-template-columns: none; grid-auto-columns: calc((100% - 1.5rem) / 2); } }
@media (max-width: 767.98px) { .home-press__cards--carousel, .home-press__cards--carousel.home-press__cards--pv3 { grid-template-columns: none; grid-auto-columns: 100%; } }
.rich-content-block__card--left .col-lg-6:has(> img) { justify-content: flex-start; }
.rich-content-block:has(.rich-content-block__card--tight) { padding-bottom: 0 !important; }
.rich-content-block__card--tight h2 { margin-bottom: 0 !important; }
.rich-content-block__card--tight { padding-bottom: 0; margin-bottom: 0; }
.gallery-block__arrow:disabled { opacity: .35; cursor: default; }
/* round 6: "steps" look, contacts tiles, compact hub spacing (all opt-in) */
.rich-content-block__card--step { background: transparent; padding-inline: 0; }
.rich-content-block__card--step .row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); align-items: center; margin: 0; gap: 0; }
.rich-content-block__card--step .row > [class*="col-"] { width: auto; max-width: none; flex: none; padding: 0; margin: 0; }
.rich-content-block__card--step .row > .col-lg-6:has(> img) { display: flex; justify-content: flex-start; }
.rich-content-block__card--step img.img-fluid { width: 190px; height: 190px; max-width: none; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50% !important; }
.rich-content-block__card--step h2 { border-bottom: 0; padding-bottom: 0; margin-bottom: 1rem !important; }
.rich-content-block__card--step .rich-content { max-width: 43rem; }
@media (max-width: 767.98px) { .rich-content-block__card--step .row { grid-template-columns: 1fr; row-gap: 1rem; } }
.service-tiles--contacts .service-tiles__panel { position: relative; padding: 2.25rem 1.5rem 1.5rem; }
.service-tiles--contacts .service-tiles__panel::before { content: ""; position: absolute; left: 1.5rem; right: 1.5rem; top: 1.1rem; height: 1px; background: #d3d8d6; }
.service-tiles--contacts .service-tiles__card { flex-direction: row; align-items: center; min-height: 2.75rem; padding: .7rem 1rem; }
.service-tiles--contacts .service-tiles__icon { width: 1.5rem; height: 1.5rem; }
.service-tiles--contacts .service-tiles__name { }
.hub-compact section.py-5 { padding-top: 2rem !important; padding-bottom: 2rem !important; }
.hub-compact .rich-content-block:has(.rich-content-block__card--tight) { padding-bottom: 0 !important; }
.hub-compact .columns-cards__card p { margin-bottom: .6rem; }
.hub-compact .rich-content-block__card--plain.rich-content-block__card--tight { padding: 0; }
.hub-compact .rich-content-block__card--box img.img-fluid { width: 100%; height: 14rem; object-fit: cover; }
.hub-compact .rich-content-block__card--box .row { align-items: center !important; }
.hub-compact .rich-content-block__card--plain, .hub-compact .rich-content-block__card--step { padding-top: .25rem; padding-bottom: .25rem; }
.hub-compact .rich-content-block__card--plain .rich-content ul { margin-bottom: .6rem; }
.hub-compact .rich-content-block__card--plain .rich-content p { margin-bottom: .7rem; }
.hub-compact .rich-content-block__card--plain h2 { margin-bottom: .9rem !important; }
/* round 7: bigger step photo, row-wise 3-column list (opt-in class list-grid-3) */
.rich-content-block__card--step img.img-fluid { width: min(100%, 17.5rem); height: auto; aspect-ratio: 1 / 1; object-position: center; }
.rich-content ul.list-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 2rem; row-gap: .5rem; }
@media (max-width: 767.98px) { .rich-content ul.list-grid-3 { grid-template-columns: 1fr; } }
.service-tiles--contacts .service-tiles__title { font-family: inherit; font-size: 2rem; font-weight: 600; line-height: 1.2; }

.media-feed { padding: var(--space-6, 2rem) 0; }
.media-feed__title { margin: 0 0 .75rem; }
.media-feed__title:has(+ .media-feed__grid) { margin-bottom: 1.5rem; }
.media-feed__lead { max-width: 60rem; margin: 0 0 1.5rem; color: var(--text-secondary); }
.media-feed__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.media-feed__grid > li { min-width: 0; }
.media-feed__all { display: inline-flex; align-items: center; margin-top: 1.5rem; padding: .7rem 1.75rem; border-radius: var(--radius-pill, 999px); background: var(--color-primary, var(--brand-accent)); color: var(--text-inverse, #fff); font-weight: var(--font-weight-semibold, 600); text-decoration: none; }
.media-feed__all:hover, .media-feed__all:focus-visible { background: var(--primary-700, var(--brand-accent-d1)); color: var(--text-inverse, #fff); }
@media (max-width: 1199.98px) { .media-feed__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .media-feed__grid { grid-template-columns: 1fr; } }
.press-cards__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 1.5rem; align-items: stretch; }
.press-cards__grid--single { grid-template-columns: 1fr; }
.press-cards__card { border-radius: var(--radius-xl, 1.25rem); padding: 2rem 2.25rem; }
.press-cards__card--main { display: flex; flex-direction: column; justify-content: center; background: #F4F6F5; }
.press-cards__card--aside { background: #fff; border: 1px solid #DDE5E2; box-shadow: 0 .25rem 1.25rem rgba(0, 0, 0, .06); }
.press-cards__icon { display: block; margin-bottom: .75rem; color: var(--color-primary, var(--brand-accent)); }
.press-cards__title { margin: 0 0 .75rem; font-size: 1.125rem; font-weight: var(--font-weight-bold, 700); }
.press-cards__content > :last-child { margin-bottom: 0; }
@media (max-width: 767.98px) { .press-cards__grid { grid-template-columns: 1fr; } .press-cards__card { padding: 1.5rem; } }


.clinic-docs__group-title {
    font-size: 22px;
    margin: 8px 0 20px;
}

.clinic-docs__group-title:not(:first-child) {
    margin-top: 40px;
}

.clinic-docs__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
}

.clinic-docs__card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: calc(20px * var(--rs, 1));
    overflow: hidden;
}

.clinic-docs__preview {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    background: var(--brand-surface);
    overflow: hidden;
    text-decoration: none;
}

.clinic-docs__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s;
}

a.clinic-docs__preview:hover .clinic-docs__img {
    transform: scale(1.03);
}

.clinic-docs__pdf {
    color: var(--brand-accent);
}

.clinic-docs__body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 16px 18px 18px;
}

.clinic-docs__title {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 8px;
}

.clinic-docs__meta {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
    font-size: 14px;
    color: #4B5563;
}

.clinic-docs__meta li + li {
    margin-top: 4px;
}

.clinic-docs__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: auto;
}

.clinic-docs__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 20px;
    border-radius: calc(20px * var(--rs, 1));
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    background: var(--brand-accent);
    color: #fff;
    border: 1px solid var(--brand-accent);
    transition: background-color .2s, color .2s;
}

.clinic-docs__btn--ghost {
    background: var(--brand-accent-t1);
    color: var(--brand-accent);
}

.clinic-docs__btn:hover {
    background: var(--brand-accent);
    color: #fff;
    opacity: .9;
}

.home-explore__grid--solo { grid-template-columns: 1fr; }
.home-explore__map--card { min-height: 0; justify-content: center; align-items: flex-start; gap: 1rem; padding: 1.75rem 2rem; background: var(--brand-accent-t2); }
.home-explore__pin { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 50%; background: var(--color-primary, var(--brand-accent)); color: #fff; }
.home-explore__map--card .home-explore__address { padding: 0; font-size: 1.125rem; line-height: 1.45; }
.home-explore__card-button { align-self: flex-start; }

/* ===== Center (surgery center layout): triggers / departments / green form / about / icon cards ===== */
.triggers-block { background: #F4F6F5; padding-block: 2.5rem; }
.triggers-block__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2.5rem; }
.triggers-block__item { display: flex; align-items: center; gap: 1.25rem; min-height: 6.25rem; padding: 1rem 1.25rem; border-radius: calc(1.25rem * var(--rs, 1)); background: var(--brand-accent); color: #fff; text-decoration: none; line-height: 1.3; transition: filter .2s; }
.triggers-block__item:first-child:not([style]) { background: var(--brand-cta); }
a.triggers-block__item:hover { color: #fff; filter: brightness(1.06); }
.triggers-block__icon { flex: none; display: inline-flex; width: 3.75rem; height: 3.75rem; }
.triggers-block__icon svg { width: 100%; height: 100%; stroke-width: 1.4; }
.triggers-block__sub { display: block; }
@media (max-width: 1199.98px) { .triggers-block__grid { gap: 1.25rem; } }
@media (max-width: 991.98px) { .triggers-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .triggers-block__grid { grid-template-columns: minmax(0, 1fr); } .triggers-block__item { min-height: 4.5rem; } .triggers-block__icon { width: 2.75rem; height: 2.75rem; } }

.dept-block { padding-block: 5rem; }
.dept-block__grid { display: grid; grid-template-columns: minmax(0, 29%) minmax(0, 1fr); gap: 4.5rem; align-items: start; max-width: 1440px; margin-inline: auto; padding-right: 1.25rem; }
.dept-block__grid--no-media { grid-template-columns: minmax(0, 1fr); padding-inline: 1.25rem; }
.dept-block__media { position: relative; margin-top: 3.5rem; }
.dept-block__photo { display: block; width: 100%; aspect-ratio: 415 / 330; object-fit: cover; border-radius: 0 calc(3rem * var(--rs, 1)) calc(3rem * var(--rs, 1)) 0; }
.dept-block__badge { position: absolute; right: 1.5rem; top: 1.5rem; width: 45%; min-width: 11rem; padding: 1.75rem 1rem 1.25rem; border-radius: calc(1.5rem * var(--rs, 1)); background: var(--brand-accent); color: #fff; text-align: center; }
.dept-block__badge-label { display: block; line-height: 1.3; }
.dept-block__badge-value { display: flex; align-items: center; justify-content: center; gap: .75rem; margin-top: 1.25rem; font-size: 2.75rem; line-height: 1; }
.dept-block__badge-value i { display: inline-block; width: 2px; height: 2.75rem; background: #fff; }
.dept-block__title { margin-bottom: 2.5rem; font-weight: 400; }
.dept-block__intro { margin-bottom: 2rem; }
.dept-block__stats { margin-bottom: 2.5rem; }
.dept-block__stats strong, .dept-block__stats a { color: var(--brand-accent); font-weight: 400; font-size: 1.625rem; text-decoration: none; border-bottom: 1px dashed currentColor; }
.dept-block__list { list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; gap: 1.25rem 2rem; }
.dept-block__list--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(var(--dept-rows, 7), auto); }
.dept-block__list--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(var(--dept-rows, 10), auto); }
.dept-block__list--cols-1 { grid-auto-flow: row; }
.dept-block__list a { color: inherit; text-decoration: none; }
.dept-block__list a:hover { color: var(--brand-accent); }
@media (max-width: 991.98px) {
    .dept-block { padding-block: 3rem; }
    .dept-block__grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; padding-inline: 0; }
    .dept-block__media { margin: 0 1.25rem 0 0; }
    .dept-block__body { padding-inline: 1rem; }
    .dept-block__list--cols-3, .dept-block__list--cols-2 { grid-auto-flow: row; grid-template-rows: none; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) { .dept-block__list--cols-3, .dept-block__list--cols-2 { grid-template-columns: minmax(0, 1fr); gap: .875rem; } .dept-block__badge-value { font-size: 2.25rem; } }

.green-form-block { background: var(--brand-accent); color: #fff; padding-block: 3.5rem 6rem; }
.green-form-block__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 5.5rem; }
.green-form-block__title { color: #fff; font-weight: 400; margin-bottom: 2.25rem; }
.green-form-block__form { max-width: 39rem; }
.green-form-block__input { display: block; width: 100%; height: 3.125rem; padding: 0 1.25rem; border: 0; border-radius: calc(1.5rem * var(--rs, 1)); background: rgba(255, 255, 255, .3); color: #fff; }
.green-form-block__input::placeholder { color: rgba(255, 255, 255, .75); }
.green-form-block__input:focus { outline: 2px solid #fff; outline-offset: 2px; }
.green-form-block__consent { display: flex; gap: .5rem; align-items: flex-start; margin: 1.25rem 0; font-size: .8125rem; }
.green-form-block__consent a { color: #fff; }
.green-form-block__submit { padding: .75rem 1.5rem; border: 0; border-radius: calc(1.5rem * var(--rs, 1)); background: rgba(255, 255, 255, .25); color: #fff; transition: background .2s; }
.green-form-block__submit:hover { background: #fff; color: var(--brand-accent); }
.green-form-block__notice { padding: 1rem 1.25rem; border-radius: calc(1rem * var(--rs, 1)); background: rgba(255, 255, 255, .2); }
.green-form-block__aside { padding-top: 2.75rem; }
.green-form-block__badge { display: inline-block; padding: .625rem 1.75rem; border-radius: calc(1.5rem * var(--rs, 1)); background: #fff; color: #111; font-weight: 700; }
.green-form-block__list { margin: 2.25rem 0 0; padding-left: 1.25rem; font-size: .875rem; }
.green-form-block__list li + li { margin-top: .625rem; }
@media (max-width: 991.98px) { .green-form-block { padding-block: 2.5rem 3rem; } .green-form-block__grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; } .green-form-block__aside { padding-top: 0; } }

.about-block { padding-block: 2.5rem 3rem; }
.about-block__grid { display: grid; grid-template-columns: minmax(0, 73%) minmax(0, 1fr); gap: 2rem; max-width: 1440px; margin-inline: auto; }
.about-block__grid--single { grid-template-columns: minmax(0, 1fr); padding-right: 1.25rem; }
.about-block__card { display: grid; grid-template-columns: minmax(0, 33%) minmax(0, 1fr); align-items: stretch; min-height: 25rem; border-radius: 0 calc(3rem * var(--rs, 1)) calc(3rem * var(--rs, 1)) 0; background: #F4F6F5; overflow: hidden; }
.about-block__card--no-photo { grid-template-columns: minmax(0, 1fr); padding-left: max(1.25rem, calc((100vw - 1400px) / 2)); }
.about-block__photo { align-self: end; width: 100%; max-height: 25rem; object-fit: contain; object-position: bottom center; }
.about-block__text { padding: 3.75rem 1rem 3rem 3.75rem; }
.about-block__card--no-photo .about-block__text { padding-left: 1.25rem; }
.about-block__title { margin-bottom: 2rem; font-weight: 700; }
.about-block__message p { margin-bottom: 1rem; }
.about-block__sign { margin: 1.5rem 0 0; }
.about-block__side img { display: block; width: 100%; height: 100%; min-height: 25rem; object-fit: cover; border-radius: calc(3rem * var(--rs, 1)) 0 0 calc(3rem * var(--rs, 1)); }
@media (max-width: 991.98px) {
    .about-block__grid { grid-template-columns: minmax(0, 1fr); }
    .about-block__card { grid-template-columns: minmax(0, 1fr); margin-right: 1.25rem; min-height: 0; }
    .about-block__photo { display: none; }
    .about-block__text { padding: 2rem 1.25rem; }
    .about-block__side { margin-left: 1.25rem; }
    .about-block__side img { min-height: 14rem; aspect-ratio: 16 / 10; }
}

.icon-cards-block { padding-block: 3rem 4.5rem; }
.icon-cards-block__title { font-weight: 400; margin-bottom: 2.25rem; }
.icon-cards-block__lead { max-width: 70rem; margin-bottom: 4rem; }
.icon-cards-block__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 2.25rem; }
.icon-cards-block__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.icon-cards-block__card { display: flex; gap: 2.5rem; align-items: flex-start; padding: 2.375rem 1.875rem; border-radius: calc(2.5rem * var(--rs, 1)); background: #F4F6F5; }
.icon-cards-block__icon { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 5rem; height: 5rem; border-radius: 50%; background: var(--brand-accent); color: #fff; }
.icon-cards-block__icon svg, .icon-cards-block__icon img { width: 2.75rem; height: 2.75rem; stroke-width: 1.4; }
.icon-cards-block__card-title { font-size: 1.25rem; font-weight: 400; margin-bottom: 1.25rem; }
.icon-cards-block__text { margin: 0; }
@media (max-width: 991.98px) { .icon-cards-block__grid, .icon-cards-block__grid--3 { grid-template-columns: minmax(0, 1fr); } .icon-cards-block__lead { margin-bottom: 2rem; } }
@media (max-width: 575.98px) { .icon-cards-block__card { gap: 1.25rem; padding: 1.5rem 1.25rem; border-radius: calc(1.5rem * var(--rs, 1)); } .icon-cards-block__icon { width: 3.5rem; height: 3.5rem; } .icon-cards-block__icon svg { width: 2rem; height: 2rem; } }

/* ===== Center (plastic surgery center layout): directions / promo cards / circle / media card / overlay / form card ===== */
.dirs-block { position: relative; z-index: 2; padding-bottom: 4rem; }
.center-banner-hero ~ .center-single__blocks > .dirs-block:first-child { margin-top: -5.75rem; }
.dirs-block__tab { display: inline-block; margin: 0; padding: .75rem 3.125rem; border-radius: calc(1.75rem * var(--rs, 1)) calc(1.75rem * var(--rs, 1)) 0 0; background: #fff; font-size: 1.125rem; font-weight: 700; position: relative; }
.dirs-block__tab::after { content: ""; position: absolute; right: -1.5rem; bottom: 0; width: 1.5rem; height: 1.5rem; background: radial-gradient(circle at 100% 0, transparent 1.5rem, #fff 1.5rem); }
.dirs-block__card { display: flex; flex-wrap: wrap; justify-content: center; gap: 2.75rem 0; padding: 2.75rem 2.5rem; border-radius: 0 calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)); background: #fff; box-shadow: 0 1.25rem 2.5rem rgba(60, 50, 40, .08); }
.dirs-block__item { display: flex; align-items: center; gap: 2.25rem; flex: 0 0 25%; padding-inline: 1.5rem; color: inherit; text-decoration: none; line-height: 1.3; }
.dirs-block__item:hover { color: var(--center-accent, var(--brand-accent)); }
.dirs-block__icon { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 5.375rem; height: 5.375rem; border-radius: 50%; background: #E9E2DA; color: #8B6F55; }
.dirs-block__icon svg { width: 2.75rem; height: 2.75rem; stroke-width: 1.3; }
@media (max-width: 1199.98px) { .dirs-block__item { flex-basis: 33.333%; gap: 1.25rem; } }
@media (max-width: 767.98px) { .center-banner-hero ~ .center-single__blocks > .dirs-block:first-child { margin-top: -2rem; } .dirs-block__card { padding: 1.5rem 1rem; gap: 1.25rem 0; border-radius: 0 calc(1.5rem * var(--rs, 1)) 0 calc(1.5rem * var(--rs, 1)); } .dirs-block__item { flex-basis: 50%; flex-direction: column; text-align: center; gap: .75rem; padding-inline: .5rem; } .dirs-block__icon { width: 4rem; height: 4rem; } .dirs-block__icon svg { width: 2rem; height: 2rem; } .dirs-block__tab { padding: .625rem 1.75rem; } }

.promo-cards-block { padding-block: 3rem 4rem; }
.promo-cards-block__title { font-weight: 400; margin-bottom: 2.5rem; }
.promo-cards-block__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.5rem; }
.promo-cards-block__card { display: flex; flex-direction: column; align-items: flex-start; min-height: 25.5rem; padding: 2.75rem 2.75rem 2.5rem; border-radius: calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)) 0; color: #111; }
.promo-cards-block__card--dark { color: #fff; }
.promo-cards-block__kicker { font-size: 2.5rem; font-weight: 700; text-transform: uppercase; line-height: 1.1; margin-bottom: 1.75rem; }
.promo-cards-block__name { max-width: 24rem; font-size: 1.5rem; line-height: 1.2; margin-bottom: 1rem; }
.promo-cards-block__date { font-size: .8125rem; font-weight: 700; }
.promo-cards-block__button { margin-top: auto; display: inline-block; min-width: 13rem; padding: .75rem 1.5rem; border-radius: calc(1.5rem * var(--rs, 1)); background: #fff; color: #111; text-align: center; text-decoration: none; box-shadow: 0 .75rem 1.5rem rgba(0, 0, 0, .08); }
.promo-cards-block__button:hover { color: var(--center-accent, var(--brand-accent)); }
.promo-cards-block__more { text-align: center; margin-top: 3.5rem; }
.promo-cards-block__all { display: inline-block; min-width: 13rem; padding: .75rem 1.5rem; border-radius: calc(1.5rem * var(--rs, 1)); background: #fff; color: #111; text-decoration: none; box-shadow: 0 .75rem 1.5rem rgba(0, 0, 0, .08); }
@media (max-width: 767.98px) { .promo-cards-block__grid { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; } .promo-cards-block__card { min-height: 16rem; padding: 1.75rem; border-radius: calc(1.75rem * var(--rs, 1)) 0 calc(1.75rem * var(--rs, 1)) 0; } .promo-cards-block__kicker { font-size: 1.75rem; margin-bottom: 1rem; } .promo-cards-block__name { font-size: 1.25rem; } }

.rc-circle { background: #F4F3F1; padding-block: 3rem; overflow: hidden; }
.rc-circle__grid { display: grid; grid-template-columns: minmax(0, 42%) minmax(0, 1fr); gap: 3rem; align-items: center; }
.rc-circle__grid--no-media { grid-template-columns: minmax(0, 1fr); }
.rc-circle__media { position: relative; aspect-ratio: 1; max-width: 36rem; margin-inline: auto; width: 100%; }
.rc-circle__halo { position: absolute; inset: 0; border-radius: 50%; background-image: radial-gradient(circle, var(--center-accent, var(--brand-accent)) 28%, transparent 32%); background-size: 1.25rem 1.25rem; -webkit-mask-image: radial-gradient(circle, transparent 54%, #000 56%, #000 64%, transparent 72%); mask-image: radial-gradient(circle, transparent 54%, #000 56%, #000 64%, transparent 72%); opacity: .55; }
.rc-circle__photo { position: absolute; inset: 18%; width: 64%; height: 64%; object-fit: cover; border-radius: 50%; border: 1.25rem solid #fff; box-shadow: 0 0 0 1.25rem #E9E2DA; }
.rc-circle__title { font-weight: 700; text-transform: uppercase; margin-bottom: 2.25rem; }
@media (max-width: 991.98px) { .rc-circle__grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; } .rc-circle__media { max-width: 22rem; } }

.rc-media { padding-block: 4.5rem; }
.rc-media__grid { display: grid; grid-template-columns: minmax(0, 45%) minmax(0, 1fr); gap: 2.25rem; align-items: center; }
.rc-media--right .rc-media__image { order: 2; }
.rc-media__grid--no-media { grid-template-columns: minmax(0, 1fr); }
.rc-media__image img { display: block; width: 100%; aspect-ratio: 644 / 362; object-fit: cover; border-radius: calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)) 0; }
.rc-media__title { font-size: 1.5rem; font-weight: 700; margin-bottom: 2rem; }
.rc-media .rc-btn, .rc-overlay .rc-btn { display: inline-block; margin-top: .5rem; padding: .5rem 1.25rem; border-radius: calc(1.5rem * var(--rs, 1)); background: var(--center-accent, var(--brand-accent)); color: #fff; text-decoration: none; }
.rc-media .rc-btn:hover, .rc-overlay .rc-btn:hover { color: #fff; filter: brightness(1.08); }
@media (max-width: 991.98px) { .rc-media { padding-block: 2.5rem; } .rc-media__grid { grid-template-columns: minmax(0, 1fr); } .rc-media--right .rc-media__image { order: 0; } .rc-media__image img { border-radius: calc(1.75rem * var(--rs, 1)) 0 calc(1.75rem * var(--rs, 1)) 0; } }

.rc-overlay { position: relative; padding-block: 7.5rem 7.5rem; background: #E9E2DA; overflow: hidden; }
.rc-overlay__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left center; }
.rc-overlay__inner { position: relative; display: flex; justify-content: flex-end; }
.rc-overlay__card { width: min(100%, 52.5rem); padding: 4.25rem 5.25rem 4rem; border-radius: calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)) 0; background: #fff; }
.rc-overlay__title { font-weight: 700; text-transform: uppercase; margin-bottom: 2rem; }
.rc-overlay__card h3 { font-size: 1.375rem; font-weight: 400; margin: 1.5rem 0 1rem; }
@media (max-width: 991.98px) { .rc-overlay { padding-block: 12rem 0; } .rc-overlay__bg { height: 16rem; } .rc-overlay__inner { padding-inline: 0; } .rc-overlay__card { padding: 2rem 1.25rem; border-radius: calc(1.75rem * var(--rs, 1)) calc(1.75rem * var(--rs, 1)) 0 0; } }

.form-card-block { padding-block: 3rem 4rem; background-color: #F4F3F1; background-image: radial-gradient(circle, rgba(0, 0, 0, .12) 1px, transparent 1.5px); background-size: 1.75rem 1.75rem; }
.form-card-block__title { font-weight: 400; margin-bottom: 2.75rem; }
.form-card-block__card { padding: 4.5rem 8.5rem 2.5rem; border-radius: calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)) 0; background: #fff; box-shadow: 0 1.25rem 2.5rem rgba(60, 50, 40, .08); text-align: center; }
.form-card-block__sentence { font-size: 1.375rem; margin-bottom: 2rem; }
.form-card-block__pill { display: inline-block; padding: 0 1.25rem; border-radius: calc(1.25rem * var(--rs, 1)); background: var(--center-accent, var(--brand-accent)); color: #fff; }
.form-card-block__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.25rem; }
.form-card-block__input { width: 100%; height: 3.75rem; padding: 0 1.875rem; border: 1px solid #ddd; border-radius: calc(1.875rem * var(--rs, 1)); background: #F4F3F1; }
.form-card-block__input:focus { outline: 2px solid var(--center-accent, var(--brand-accent)); outline-offset: 1px; }
.form-card-block__rule { margin: 3rem 0 3.25rem; opacity: .2; }
.form-card-block__note { font-size: .8125rem; color: #6b6b6b; margin-bottom: 3.5rem; }
.form-card-block__consent { display: inline-flex; gap: .5rem; align-items: center; font-size: .875rem; margin-bottom: .75rem; }
.form-card-block__consent a { color: var(--center-accent, var(--brand-accent)); }
.form-card-block__submit { display: block; width: min(100%, 28rem); margin: 0 auto; padding: .875rem 1.5rem; border: 0; border-radius: calc(1.875rem * var(--rs, 1)); background: var(--center-accent, var(--brand-accent)); color: #fff; font-size: 1.125rem; }
.form-card-block__submit:hover { filter: brightness(1.08); }
.form-card-block__notice { padding: 1rem; border-radius: calc(1rem * var(--rs, 1)); background: #F4F3F1; }
@media (max-width: 991.98px) { .form-card-block__card { padding: 2rem 1.25rem; border-radius: calc(1.75rem * var(--rs, 1)) 0 calc(1.75rem * var(--rs, 1)) 0; } .form-card-block__fields { grid-template-columns: minmax(0, 1fr); gap: 1rem; } .form-card-block__sentence { font-size: 1.125rem; line-height: 1.7; } .form-card-block__rule { margin: 1.75rem 0; } .form-card-block__note { margin-bottom: 1.5rem; } }

/* ===== Plastic surgery hubs: tabs / title banner / groups / figure card / tile cards ===== */
.tabs-nav-block { padding-top: .75rem; }
.tabs-nav-block__row { display: flex; justify-content: space-between; gap: .25rem; overflow-x: auto; scrollbar-width: none; }
.tabs-nav-block__row::-webkit-scrollbar { display: none; }
.tabs-nav-block__item { display: flex; align-items: center; gap: .625rem; flex: none; padding: .5rem 1rem; color: #111; font-size: .9375rem; text-decoration: none; white-space: nowrap; }
.tabs-nav-block__item:hover, .tabs-nav-block__item.is-active { background: #ECE9E6; color: #111; }
.tabs-nav-block__icon { position: relative; display: inline-flex; width: 1.75rem; height: 1.75rem; }
.tabs-nav-block__icon img { width: 100%; height: 100%; object-fit: contain; }
.tabs-nav-block__icon-on { position: absolute; inset: 0; opacity: 0; }
.tabs-nav-block__item:hover .tabs-nav-block__icon-on, .tabs-nav-block__item.is-active .tabs-nav-block__icon-on { opacity: 1; }
.tabs-nav-block__item:hover .tabs-nav-block__icon-off, .tabs-nav-block__item.is-active .tabs-nav-block__icon-off { opacity: 0; }

.title-banner { display: grid; grid-template-columns: minmax(0, 1fr); background: var(--title-banner-bg, var(--center-accent, var(--brand-accent))); color: #fff; }
.title-banner--offer { grid-template-columns: minmax(0, 55.5%) minmax(0, 1fr); }
.title-banner__left { display: flex; align-items: center; min-height: 8.75rem; }
.title-banner__left-inner { width: 100%; max-width: 1400px; margin-left: auto; padding: 1.5rem 1.25rem 1.5rem max(1.25rem, calc((100vw - 1400px) / 2 + 1.25rem)); }
.title-banner--offer .title-banner__left-inner { margin-left: 0; }
.title-banner__title { margin: 0; color: #fff; font-size: clamp(1.375rem, 2.2vw, 1.875rem); font-weight: 400; text-transform: uppercase; }
.title-banner__offer { position: relative; display: flex; align-items: center; min-height: 8.75rem; padding: 1rem 2.25rem; background: var(--title-banner-offer-bg, #CDBBA8); overflow: hidden; }
.title-banner__offer-image { position: absolute; right: 0; top: 0; height: 100%; width: auto; max-width: 70%; object-fit: cover; }
.title-banner__offer-text { position: relative; z-index: 1; max-width: 75%; color: #fff; font-size: .8125rem; line-height: 1.35; }
.title-banner__offer-text p { margin: 0 0 .25rem; }
.title-banner__offer-text strong { display: block; font-size: 1rem; text-transform: uppercase; }
.title-banner__offer-text .rc-btn { display: inline-block; margin-top: .75rem; padding: .3rem 2.5rem; border-radius: calc(1rem * var(--rs, 1)); background: #fff; color: #111; text-decoration: none; font-size: .8125rem; }
@media (max-width: 991.98px) { .title-banner--offer { grid-template-columns: minmax(0, 1fr); } .title-banner__left { min-height: 6rem; } .title-banner__left-inner { padding-left: 1.25rem; } }

.groups-block { padding-block: 3.5rem 2rem; }
.groups-block__heading { font-weight: 400; margin-bottom: 2rem; }
.groups-block__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem 1.25rem; }
.groups-block__item { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: 1.875rem; align-items: start; }
.groups-block__image { width: 8.5rem; height: 8.5rem; object-fit: cover; border-radius: 0 calc(2.25rem * var(--rs, 1)) 0 calc(2.25rem * var(--rs, 1)); }
.groups-block__title { display: block; padding: .5rem 0 1rem; color: var(--center-accent, var(--brand-accent)); font-size: 1.25rem; line-height: 1.25; text-decoration: none; }
a.groups-block__title:hover { text-decoration: underline; }
.groups-block__list { list-style: none; margin: 0; padding: .75rem 0 0; border-top: 1px solid #E3E0DC; font-size: .8125rem; }
.groups-block__list li { position: relative; padding: .4rem 1.5rem .4rem 0; }
.groups-block__list li::after { content: ""; position: absolute; right: .25rem; top: 50%; border: .3rem solid transparent; border-left-color: #9A9A9A; transform: translateY(-50%); }
.groups-block__list a { color: #111; text-decoration: none; }
.groups-block__list a:hover { color: var(--center-accent, var(--brand-accent)); }
@media (max-width: 1199.98px) { .groups-block__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767.98px) { .groups-block__grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; } .groups-block__item { grid-template-columns: 6rem minmax(0, 1fr); gap: 1rem; } .groups-block__image { width: 6rem; height: 6rem; border-radius: 0 calc(1.5rem * var(--rs, 1)) 0 calc(1.5rem * var(--rs, 1)); } .groups-block__title { font-size: 1.125rem; padding-top: 0; } }

.rc-figure { padding-block: 3rem; }
.rc-figure__card { display: grid; grid-template-columns: minmax(0, 32%) minmax(0, 1fr); gap: 2.5rem; min-height: 21rem; padding: 0 3.5rem 0 2.5rem; border-radius: 0 calc(3rem * var(--rs, 1)) 0 calc(3rem * var(--rs, 1)); background: #F4F3F1; overflow: hidden; }
.rc-figure__card--no-media { grid-template-columns: minmax(0, 1fr); padding: 2.5rem 3.5rem; }
.rc-figure__media { display: flex; align-items: flex-end; justify-content: center; padding-top: 1.5rem; }
.rc-figure__media img { display: block; width: 100%; max-height: 24rem; object-fit: contain; object-position: bottom center; }
.rc-figure__text { padding-block: 3rem; align-self: center; }
.rc-figure__title { font-weight: 700; margin-bottom: 1.25rem; }
.rc-figure .rc-btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 2rem; min-width: 13rem; margin-top: 2rem; padding: .625rem 1.5rem 0.625rem 3.5rem; border-radius: calc(1.5rem * var(--rs, 1)); background: var(--center-accent, var(--brand-accent)); color: #fff; text-decoration: none; }
.rc-figure .rc-btn::after { content: ""; border: .3rem solid transparent; border-left-color: #fff; }
.rc-figure .rc-btn:hover { color: #fff; filter: brightness(1.08); }
@media (max-width: 767.98px) { .rc-figure__card { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 0 1.25rem; border-radius: 0 calc(1.75rem * var(--rs, 1)) 0 calc(1.75rem * var(--rs, 1)); } .rc-figure__media img { max-height: 15rem; } .rc-figure__text { padding-block: 1.5rem 2rem; } }

.icon-cards-block__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.75rem 2.25rem; }
.icon-cards-block__grid--4 .icon-cards-block__card { flex-direction: column; gap: 1.25rem; padding: 1.75rem 1.875rem 2rem; border-radius: 0 calc(2.5rem * var(--rs, 1)) 0 0; }
.icon-cards-block__grid--4 .icon-cards-block__icon { width: 4.375rem; height: 4.375rem; background: var(--center-accent, var(--brand-accent)); }
.icon-cards-block__grid--4 .icon-cards-block__icon svg { width: 2.25rem; height: 2.25rem; }
.icon-cards-block__grid--4 .icon-cards-block__card-title { font-size: 1rem; margin: 0; line-height: 1.35; }
@media (max-width: 1199.98px) { .icon-cards-block__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .icon-cards-block__grid--4 { grid-template-columns: minmax(0, 1fr); } .icon-cards-block__grid--4 .icon-cards-block__card { flex-direction: row; align-items: center; } }

.dirs-block__icon img { width: 3rem; height: 3rem; object-fit: contain; }
.hub-accent .rich-content-block .rich-content h2 { text-transform: uppercase; font-weight: 400; }

/* Ana səhifə, telefon: mərkəz plitkaları 2 sütunda, yığcam */
@media (max-width: 575.98px) {
    .home-hero__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
    .home-hero__tile { min-height: 3rem; padding: .5rem .65rem; gap: .35rem; font-size: .9375rem; line-height: 1.2; overflow-wrap: anywhere; hyphens: auto; }
    .home-hero__tile svg { width: 14px; height: 14px; }
}

/* equipment_showcase_block: panel linked to an equipment record (cards.equipment_post) */
.equipment-showcase-block__panel-title-link {
    color: inherit;
    text-decoration: none;
}

.equipment-showcase-block__panel-title-link:hover {
    color: var(--brand-primary);
}

.equipment-showcase-block__panel-more {
    display: inline-block;
    margin-top: .75rem;
    color: var(--brand-primary);
    font-weight: 600;
    text-decoration: none;
}

/* partners_block: partner logos — endless strip (carousel) or tiles (grid) */
.partners-block {
    padding: 3rem 0;
}

.partners-block__head {
    margin-bottom: 1.5rem;
}

.partners-block__title {
    margin: 0;
}

.partners-block__text {
    margin: .5rem 0 0;
    color: var(--gray-600);
}

.partners-block__grid,
.partners-block__track {
    list-style: none;
    margin: 0;
    padding: 0;
}

.partners-block__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
    gap: 1rem;
}

.partners-block__viewport {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.partners-block__track {
    display: flex;
    gap: 1rem;
    width: max-content;
    animation: partners-scroll var(--partners-duration, 60s) linear infinite;
}

.partners-block__viewport:hover .partners-block__track,
.partners-block__viewport:focus-within .partners-block__track {
    animation-play-state: paused;
}

.partners-block--carousel .partners-block__cell {
    flex: 0 0 11rem;
}

@keyframes partners-scroll {
    to {
        transform: translateX(calc(-50% - .5rem));
    }
}

.partners-block__item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 6rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-lg, .75rem);
    background: #fff;
    text-decoration: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

a.partners-block__item:hover,
a.partners-block__item:focus-visible {
    border-color: var(--brand-accent-t6, var(--brand-primary));
    box-shadow: 0 .5rem 1.25rem rgba(0, 0, 0, .06);
}

.partners-block__logo {
    display: block;
    max-width: 100%;
    max-height: 3.5rem;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* White logo on its brand colour (field «Loqonun fonu»), as on the company's own site. */
.partners-block__item--filled .partners-block__name {
    color: #fff;
}

.partners-block__name {
    color: var(--gray-700);
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}

a.partners-block__item:hover .partners-block__name {
    color: var(--brand-primary);
}

@media (max-width: 767.98px) {

    .partners-block {
        padding: 2rem 0;
    }

    .partners-block__viewport {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .partners-block__track {
        animation: none;
    }

    .partners-block--carousel .partners-block__cell {
        flex-basis: 9rem;
        scroll-snap-align: start;
    }

    .partners-block__track .partners-block__cell:has([aria-hidden="true"]) {
        display: none;
    }

    .partners-block__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .partners-block__item {
        height: 5rem;
    }
}

@media (prefers-reduced-motion: reduce) {

    .partners-block__viewport {
        overflow-x: auto;
    }

    .partners-block__track {
        animation: none;
    }
}

/* ===== Icon cards as links (causes → detail pages) and the «timeline» features layout ===== */
.icon-cards-block__card--link { color: inherit; text-decoration: none; transition: background-color .15s ease, box-shadow .15s ease; }
.icon-cards-block__card--link:hover { color: inherit; background: color-mix(in srgb, var(--brand-accent) 11%, #fff); box-shadow: 0 .75rem 1.75rem rgba(19, 171, 123, .12); }
.icon-cards-block__more { display: inline-block; margin-top: 1rem; color: var(--center-accent, var(--brand-accent)); font-weight: 600; }

.timeline-block { padding-block: 3rem 4.5rem; background: #F4F6F5; }
.timeline-block__title { font-weight: 400; margin-bottom: 1.25rem; }
.timeline-block__lead { max-width: 70rem; margin-bottom: 3rem; }
.timeline-block__list { display: grid; grid-template-columns: repeat(var(--timeline-count, 5), minmax(0, 1fr)); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.timeline-block__step { position: relative; text-align: center; }
.timeline-block__step:not(:last-child)::after { content: ""; position: absolute; top: 2.75rem; left: calc(50% + 3.25rem); right: calc(-50% - 1.5rem + 3.25rem); border-top: 2px dashed var(--center-accent, var(--brand-accent)); opacity: .55; }
.timeline-block__marker { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 5.5rem; height: 5.5rem; margin-bottom: 1.25rem; border-radius: 50%; background: var(--center-accent, var(--brand-accent)); color: #fff; box-shadow: 0 0 0 .5rem #fff; }
.timeline-block__marker svg { width: 2.5rem; height: 2.5rem; stroke-width: 1.4; }
.timeline-block__num { position: absolute; top: -.25rem; right: -.25rem; display: inline-flex; align-items: center; justify-content: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; background: #fff; color: var(--center-accent, var(--brand-accent)); font-size: .875rem; font-weight: 700; box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .12); }
.timeline-block__step-title { font-size: 1.125rem; font-weight: 600; margin-bottom: .5rem; }
.timeline-block__text { margin: 0; font-size: .9375rem; color: #555; }
@media (max-width: 991.98px) {
    .timeline-block__list { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .timeline-block__step { display: flex; gap: 1.25rem; text-align: left; padding-bottom: 1.75rem; }
    .timeline-block__step:not(:last-child)::after { top: 4.5rem; bottom: 0; left: 2rem; right: auto; border-top: 0; border-left: 2px dashed var(--center-accent, var(--brand-accent)); }
    .timeline-block__marker { flex: none; width: 4rem; height: 4rem; margin: 0; }
    .timeline-block__marker svg { width: 1.875rem; height: 1.875rem; }
    .timeline-block__lead { margin-bottom: 2rem; }
}
/* ==== Dental looks: pastel_links «icon_tiles», rich_content «band» / «blob», kompleks_tiles «price», .skin-dental ==== */
.icon-tiles { padding: 3.5rem 0 2.5rem; }
.icon-tiles__title { text-align: center; margin: 0 0 2.5rem; }
.icon-tiles__track { display: grid; grid-auto-flow: column; grid-auto-columns: calc(25% - .1px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.icon-tiles__track::-webkit-scrollbar { display: none; }
.icon-tiles__item { scroll-snap-align: start; display: flex; flex-direction: column; align-items: center; gap: .5rem; padding: 1.25rem 1rem 1.5rem; border-right: 1px solid #E6EEF0; text-align: center; color: inherit; text-decoration: none; }
.icon-tiles__item:last-child { border-right: 0; }
.icon-tiles__icon { display: inline-flex; align-items: center; justify-content: center; width: 4.25rem; height: 4.25rem; margin-bottom: 1rem; border-radius: calc(.875rem * var(--rs, 1)); background: var(--dent-deep, #1E5A73); color: #fff; }
.icon-tiles__icon svg { width: 2.25rem; height: 2.25rem; }
.icon-tiles__icon img { width: 2.5rem; height: 2.5rem; object-fit: contain; }
.icon-tiles__name { font-weight: 700; font-size: .875rem; line-height: 1.3; color: #222; }
.icon-tiles__more { font-size: .8125rem; color: var(--center-accent, var(--brand-primary)); }
a.icon-tiles__item:hover .icon-tiles__more { text-decoration: underline; }
a.icon-tiles__item:hover .icon-tiles__icon { filter: brightness(1.15); }
.icon-tiles__nav { display: flex; justify-content: center; gap: .75rem; margin-top: 1.25rem; }
.icon-tiles__arrow { width: 1.75rem; height: 1.75rem; padding: 0; border: 0; border-radius: 50%; background: #F1E4EF; color: var(--dent-magenta, #A63A88); font-size: 1.25rem; line-height: 1; cursor: pointer; }
.icon-tiles__arrow--next { background: var(--dent-magenta, #A63A88); color: #fff; }
@media (max-width: 991.98px) { .icon-tiles__track { grid-auto-columns: calc(33.333% - .1px); } }
@media (max-width: 575.98px) { .icon-tiles__track { grid-auto-columns: calc(50% - .1px); } }

.rc-band { position: relative; overflow: hidden; margin: 1rem 0 2rem; background: var(--rc-band-bg, var(--center-accent, #389EAD)); color: #fff; }
.rc-band::before, .rc-band::after { content: ""; position: absolute; border-radius: calc(3rem * var(--rs, 1)); background: rgba(255, 255, 255, .07); transform: rotate(35deg); }
.rc-band::before { width: 26rem; height: 26rem; left: -8rem; top: -14rem; }
.rc-band::after { width: 34rem; height: 34rem; right: -10rem; bottom: -24rem; background: rgba(0, 40, 60, .12); }
.rc-band__inner { position: relative; z-index: 1; display: flex; align-items: center; gap: 3rem; padding-top: 2.75rem; padding-bottom: 2.75rem; }
.rc-band__tile { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 7.5rem; height: 7.5rem; border-radius: calc(1.75rem * var(--rs, 1)); background: #fff; transform: rotate(-14deg); box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .12); }
.rc-band__icon { display: inline-flex; align-items: center; justify-content: center; width: 4.75rem; height: 4.75rem; border-radius: calc(1rem * var(--rs, 1)); background: var(--dent-deep, #1E5A73); color: #fff; transform: rotate(14deg); }
.rc-band__icon svg { width: 2.75rem; height: 2.75rem; }
.rc-band__icon img { width: 3rem; height: 3rem; object-fit: contain; }
.rc-band__title { color: #fff; margin: 0 0 .75rem; }
.rc-band__content { font-size: .9375rem; line-height: 1.6; }
.rc-band__content p:last-child { margin-bottom: 0; }
@media (max-width: 767.98px) { .rc-band__inner { flex-direction: column; align-items: flex-start; gap: 1.5rem; } .rc-band__tile { width: 5.5rem; height: 5.5rem; } .rc-band__icon { width: 3.5rem; height: 3.5rem; } }

.rc-blob { padding: 3.5rem 0; }
.rc-blob--filled { position: relative; overflow: hidden; margin: 2rem 0; background: var(--rc-blob-bg); color: #fff; }
.rc-blob--filled::before { content: ""; position: absolute; width: 40rem; height: 40rem; left: -14rem; bottom: -26rem; border-radius: calc(6rem * var(--rs, 1)); background: rgba(0, 40, 60, .14); transform: rotate(30deg); }
.rc-blob__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.rc-blob--img-left .rc-blob__media { order: -1; }
.rc-blob__title { margin: 0 0 1.5rem; }
.rc-blob--filled .rc-blob__title, .rc-blob--filled .rc-blob__content, .rc-blob--filled .rc-blob__content a { color: #fff; }
.rc-blob--filled .rc-blob__content li::marker { color: #fff; }
.rc-blob__media { position: relative; justify-self: center; width: min(100%, 30rem); aspect-ratio: 1 / 1; }
.rc-blob__shape { position: absolute; inset: 4% 10% 14% 14%; border-radius: calc(3.5rem * var(--rs, 1)); background: var(--center-accent, #389EAD); transform: rotate(-12deg); }
.rc-blob--filled .rc-blob__shape { background: #fff; }
.rc-blob__frame { position: absolute; inset: 12% 4% 6% 8%; overflow: hidden; border-radius: calc(3rem * var(--rs, 1)); transform: rotate(4deg); box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, .12); }
.rc-blob__frame img { width: 100%; height: 100%; object-fit: cover; transform: rotate(-4deg) scale(1.1); }
.rc-blob__dot { position: absolute; border-radius: calc(.875rem * var(--rs, 1)); }
.rc-blob__dot--a { width: 4.5rem; height: 4.5rem; top: 3%; right: 0; background: #fff; box-shadow: 0 .75rem 1.5rem rgba(0, 60, 80, .15); transform: rotate(12deg); }
.rc-blob__dot--b { width: 2.25rem; height: 2.25rem; left: 4%; bottom: 8%; border-radius: calc(.5rem * var(--rs, 1)); background: var(--dent-magenta, #A63A88); transform: rotate(-12deg); }
@media (max-width: 991.98px) { .rc-blob__inner { grid-template-columns: 1fr; gap: 2rem; } .rc-blob--img-left .rc-blob__media { order: 0; } .rc-blob__media { width: min(100%, 22rem); } }

.kt-price__title { margin: 0 0 1.5rem; }
.kt-price__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; margin: 0; padding: 0; list-style: none; }
.kt-price__card { display: flex; flex-direction: column; height: 100%; padding: .75rem .75rem 1rem; border-radius: calc(1rem * var(--rs, 1)); background: #F2F6F7; color: inherit; text-decoration: none; transition: box-shadow .2s; }
a.kt-price__card:hover { box-shadow: 0 .5rem 1.5rem rgba(0, 60, 80, .12); }
.kt-price__media { display: block; aspect-ratio: 2 / 1; overflow: hidden; border-radius: calc(.75rem * var(--rs, 1)); background: #E3ECEE; }
.kt-price__media img { width: 100%; height: 100%; object-fit: cover; }
.kt-price__name { flex: 1 0 auto; margin: 1rem .25rem 1rem; text-align: center; font-weight: 700; font-size: .9375rem; line-height: 1.3; color: var(--center-accent, var(--brand-primary)); }
.kt-price__pill { align-self: stretch; padding: .5rem .75rem; border-radius: calc(.375rem * var(--rs, 1)); background: #fff; text-align: center; font-size: .8125rem; color: #222; }
.kt-price__pill b { font-size: 1rem; }
@media (max-width: 991.98px) { .kt-price__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .kt-price__grid { gap: .75rem; } .kt-price__name { font-size: .875rem; } }

.skin-dental { --dent-deep: #1E5A73; --dent-magenta: #A63A88; --dent-pink: #DE5CB5; }
.skin-dental .rich-content-block__card { background: #F2F6F7; border-radius: calc(1rem * var(--rs, 1)); }
.skin-dental .rich-content-block__card h2 { padding-bottom: 0; border-bottom: 0; font-size: 1.5rem; }
.skin-dental .rich-content-block { padding-top: 1rem !important; padding-bottom: 1rem !important; }
.skin-dental .rich-content li::marker { color: var(--dent-magenta); }
.skin-dental .form-card-block__submit, .skin-dental .callback-card button[type="submit"] { background: var(--dent-pink); }
.skin-dental .icon-cards-block__icon { background: var(--dent-deep); color: #fff; }
.skin-dental .icon-cards-block__card { background: #F2F6F7; }
.skin-dental .feedback-form-block__card { background: #fff !important; border-radius: calc(1.5rem * var(--rs, 1)); box-shadow: 0 .75rem 2.5rem rgba(0, 60, 80, .12); overflow: hidden; }
.skin-dental .feedback-form-block__card::before, .skin-dental .feedback-form-block__card::after { display: none; }
.skin-dental .feedback-form-block__input { background: #F2F6F7; border-color: transparent; }
.skin-dental .feedback-form-block__submit { background: var(--dent-pink); color: #fff; border: 0; }
.skin-dental .feedback-form-block__submit:hover { filter: brightness(1.08); }
.skin-dental .feedback-form-block__image { object-fit: contain; object-position: center bottom; }
.skin-dental .rc-blob .rich-content ul { columns: auto; column-count: 1; }
.rc-blob__media--plain { aspect-ratio: auto; }
.rc-blob__media--plain img { display: block; width: 100%; height: auto; }
.skin-dental .feedback-form-block__image { max-height: 22rem; width: auto; max-width: 100%; }

/* icon_tiles: larger cards (owner's request 23.10) */
.icon-tiles__track { gap: 1rem; grid-auto-columns: calc(25% - .75rem); padding: .25rem 0 .75rem; }
.icon-tiles__item { gap: .625rem; padding: 2rem 1.25rem 1.75rem; border-right: 0; border-radius: calc(1.25rem * var(--rs, 1)); background: #F4F8F9; transition: box-shadow .2s, background .2s; }
a.icon-tiles__item:hover { background: #fff; box-shadow: 0 .75rem 2rem rgba(0, 60, 80, .12); }
.icon-tiles__icon { width: 5.5rem; height: 5.5rem; border-radius: calc(1.25rem * var(--rs, 1)); margin-bottom: .75rem; }
.icon-tiles__icon svg { width: 3rem; height: 3rem; }
.icon-tiles__name { font-size: 1.0625rem; }
.icon-tiles__more { font-size: .9375rem; }
@media (max-width: 991.98px) { .icon-tiles__track { grid-auto-columns: calc(33.333% - .67rem); } }
@media (max-width: 575.98px) { .icon-tiles__track { grid-auto-columns: calc(50% - .5rem); } .icon-tiles__icon { width: 4.5rem; height: 4.5rem; } }

/* lead_list «price_card»: popular services with links */
.price-card-block { position: relative; overflow: hidden; margin: 1.5rem 0; padding: 4rem 0; background: #F2F6F7; }
.price-card-block::before { content: ""; position: absolute; width: 38rem; height: 34rem; left: -6rem; top: -4rem; border-radius: calc(6rem * var(--rs, 1)); background: #D6EDF1; transform: rotate(-24deg); }
.price-card-block__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: 3rem; align-items: center; }
.price-card-block__title { margin: 0 0 1.75rem; font-size: clamp(1.5rem, 2.4vw, 2rem); line-height: 1.3; }
.price-card-block__button { display: inline-block; padding: .875rem 2.5rem; border-radius: calc(2rem * var(--rs, 1)); background: var(--dent-magenta, #A63A88); color: #fff; font-weight: 600; text-decoration: none; }
.price-card-block__button:hover { color: #fff; filter: brightness(1.1); }
.price-card-block__list { margin: 0; padding: 1.25rem 2rem; list-style: none; border-radius: calc(1.25rem * var(--rs, 1)); background: #fff; box-shadow: 0 1rem 3rem rgba(0, 60, 80, .1); }
.price-card-block__row { display: flex; justify-content: space-between; align-items: baseline; gap: 1.5rem; padding: .875rem 0; border-bottom: 1px solid #E8EFF1; }
.price-card-block__row:last-child { border-bottom: 0; }
.price-card-block__name { font-size: 1.0625rem; color: #222; text-decoration: none; }
a.price-card-block__name { color: #222; border-bottom: 1px dashed transparent; }
a.price-card-block__name:hover { color: var(--center-accent, var(--brand-primary)); border-bottom-color: currentColor; }
.price-card-block__price { flex: 0 0 auto; font-size: 1.0625rem; white-space: nowrap; color: #222; }
.price-card-block__price b { color: var(--center-accent, var(--brand-primary)); font-size: 1.1875rem; }
@media (max-width: 991.98px) { .price-card-block__inner { grid-template-columns: 1fr; gap: 1.5rem; } .price-card-block__list { padding: .75rem 1.25rem; } .price-card-block__name, .price-card-block__price { font-size: 1rem; } }

/* feedback_form «teal»: appointment band with a doctor picture */
.teal-form { padding: 2rem 0; }
.teal-form__card { position: relative; overflow: hidden; display: flex; align-items: flex-end; min-height: 15rem; border-radius: calc(1.5rem * var(--rs, 1)); background: var(--center-accent, #389EAD); color: #fff; }
.teal-form__card::before { content: ""; position: absolute; width: 30rem; height: 30rem; right: 8rem; top: -18rem; border-radius: calc(5rem * var(--rs, 1)); background: rgba(255, 255, 255, .07); transform: rotate(30deg); }
.teal-form__card::after { content: ""; position: absolute; width: 22rem; height: 22rem; right: -4rem; bottom: -8rem; border-radius: calc(5rem * var(--rs, 1)); background: rgba(255, 255, 255, .9); transform: rotate(-20deg); }
.teal-form__body { position: relative; z-index: 1; flex: 1 1 auto; max-width: 46rem; padding: 2.25rem 2.5rem 2rem; align-self: center; }
.teal-form__title { margin: 0 0 .25rem; color: #fff; font-size: 1.5rem; }
.teal-form__note { margin: 0 0 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(255, 255, 255, .3); font-size: .875rem; opacity: .9; }
.teal-form__row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; align-items: end; }
.teal-form__field { display: flex; flex-direction: column; gap: .375rem; margin: 0; font-size: .8125rem; font-weight: 600; }
.teal-form__field input { width: 100%; padding: .75rem 1.125rem; border: 0; border-radius: calc(2rem * var(--rs, 1)); background: #fff; color: #222; }
.teal-form__submit { padding: .8rem 1.25rem; border: 0; border-radius: calc(2rem * var(--rs, 1)); background: var(--dent-pink, #DE5CB5); color: #fff; font-weight: 600; }
.teal-form__submit:hover { filter: brightness(1.08); }
.teal-form__consent { display: flex; gap: .5rem; align-items: center; margin: .875rem 0 0; font-size: .8125rem; }
.teal-form__consent a { color: #fff; text-decoration: underline; }
.teal-form__small { margin: .875rem 0 0; font-size: .75rem; line-height: 1.5; opacity: .85; }
.teal-form__notice { padding: .875rem 1rem; border-radius: calc(1rem * var(--rs, 1)); background: rgba(255, 255, 255, .15); }
.teal-form__image { position: relative; z-index: 1; flex: 0 0 auto; width: 18rem; max-height: 19rem; object-fit: contain; object-position: bottom; margin-right: 1.5rem; }
@media (max-width: 991.98px) { .teal-form__card { flex-direction: column; align-items: stretch; } .teal-form__row { grid-template-columns: 1fr; } .teal-form__image { display: none; } .teal-form__body { padding: 1.75rem 1.25rem; } .teal-form__card::after { display: none; } }
.rc-band--photo .rc-band__inner { padding-top: 2.25rem; padding-bottom: 2.25rem; gap: 2.5rem; }
.rc-band__photo { flex: 0 0 auto; width: min(34%, 22rem); }
.rc-band__photo img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: calc(1rem * var(--rs, 1)); box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .15); }
@media (max-width: 767.98px) { .rc-band__photo { width: 100%; } }
/* builder services share the hub skin */
.service-builder .page-header--pills .page-header__anchors a, .skin-dental .page-header--pills .page-header__anchors a { border-color: var(--center-accent); color: var(--center-accent); }
/* dental skin: text cards — one-column lists with magenta dots, numbered lists */
.skin-dental .rich-content ul { column-count: 1; columns: auto; }
.skin-dental .rich-content ul li { padding-left: 1.25rem; margin-bottom: .45rem; }
.skin-dental .rich-content ul li::before { top: .55em; width: 6px; height: 6px; border: 0; background: var(--dent-magenta, #A63A88); }
.skin-dental .rich-content ol { padding-left: 1.5rem; margin-bottom: 1rem; list-style: decimal; }
.skin-dental .rich-content ol li { margin-bottom: .45rem; padding-left: .25rem; }
.skin-dental .rich-content ol li::marker { color: var(--center-accent); font-weight: 700; }
.skin-dental .rich-content-block__card h2 { font-size: 1.375rem; margin-bottom: 1rem !important; }
.skin-dental .page-header .btn, .skin-dental .page-header a[class*="callback"], .skin-dental .page-header button { background: var(--dent-magenta, #A63A88); border-color: var(--dent-magenta, #A63A88); }
.service-builder { --dent-deep: #1E5A73; --dent-magenta: #A63A88; --dent-pink: #DE5CB5; }
/* icon_tiles as a paged slider (4 / 3 / 2 per page) + hub service tiles in 3 columns (owner 25.10) */
.icon-tiles__viewport { overflow: hidden; margin: 0 -.5rem; padding: .25rem 0 1rem; }
.icon-tiles__track { display: flex; gap: 0; padding: 0; overflow: visible; transition: transform .45s ease; grid-auto-flow: unset; grid-auto-columns: unset; }
.icon-tiles__slide { flex: 0 0 25%; padding: 0 .5rem; }
.icon-tiles__slide .icon-tiles__item { height: 100%; }
.icon-tiles__nav { display: flex; align-items: center; justify-content: center; gap: .75rem; margin-top: .5rem; }
.icon-tiles__nav[hidden] { display: none; }
.icon-tiles__dots { display: flex; gap: .5rem; }
.icon-tiles__dot { width: .625rem; height: .625rem; padding: 0; border: 0; border-radius: 50%; background: #CFE6EA; cursor: pointer; }
.icon-tiles__dot.is-active { background: var(--center-accent, #389EAD); }
@media (max-width: 991.98px) { .icon-tiles__slide { flex-basis: 33.333%; } }
@media (max-width: 575.98px) { .icon-tiles__slide { flex-basis: 50%; } }
.kt-price__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.kt-price__media { aspect-ratio: 404 / 204; }
@media (max-width: 991.98px) { .kt-price__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .kt-price__grid { grid-template-columns: 1fr; } }

/* dent2: FAQ in dental skin - teal instead of green */
.skin-dental .accordion-button{color:var(--center-accent,#389EAD)}
.skin-dental .accordion-button:not(.collapsed){color:var(--text-primary)}
.skin-dental .accordion-button.collapsed:hover{color:#2b7f8b}
.skin-dental .accordion-button::after{background-color:var(--center-accent,#389EAD)}
.skin-dental .accordion-button:focus-visible{outline-color:var(--center-accent,#389EAD)}

/* icon_tiles: all tiles at once, no pagination (owner 25.10) */
.icon-tiles__viewport { overflow: visible; }
.icon-tiles__track { flex-wrap: wrap; row-gap: 1rem; transform: none !important; }
.icon-tiles__nav { display: none !important; }


/* ==== DENTAL SKIN (25.10): design tokens on .skin-dental (center, hubs, service builder) ==== */
/* Design tokens only (colors, radii, shadows, type sizes, hover states);
   rules are mapped onto our classes. Font: Open Sans. */
.skin-dental {
  --dent-deep: #1b5773; --dent-teal: #389dac; --dent-magenta: #ad3d8c; --dent-magenta-h: #c359a6; --dent-pink: #db59b5;
  --dent-bg: #f3f7f8; --dent-bg-teal: #ecf6f7; --dent-quote: #e3f1f4; --dent-grey: #919586; --dent-sep: #f6cec1;
  --dent-text: #232323; --dent-r: 20px; --dent-r-pill: 30px; --dent-r-sm: 10px;
  --dent-shadow: -1px 16px 45px 2px rgba(201,229,233,.79); --dent-shadow-sm: 4px 8px 24px 2px rgba(34,60,80,.15);
  --center-accent: #389dac;
  color: var(--dent-text); font-family: "Open Sans", sans-serif;
}
/* type: section titles 28px/700 black, text 16px */
.skin-dental .rich-content-block h2, .skin-dental .faq-section .mb-5 h2, .skin-dental .pricing-block__title, .skin-dental .kt-price h2 {
  font-size: 28px; line-height: 1.2; font-weight: 700; color: #000;
}
.skin-dental .rich-content-block__card h2 { font-size: 28px; margin: 0 0 20px !important; }
.skin-dental .rich-content p, .skin-dental .rich-content li { font-size: 16px; line-height: 1.5; }
.skin-dental .rich-content a { color: var(--dent-deep); }
.skin-dental .rich-content a:hover { color: var(--dent-magenta); }
.skin-dental .rich-content strong, .skin-dental .rich-content b { font-weight: 700; }
.skin-dental .rich-content ul li::before { background: var(--dent-magenta); }
.skin-dental .rich-content ol li::marker { color: var(--dent-teal); }
.skin-dental .rich-content blockquote { border-left: 3px solid var(--dent-teal); background: var(--dent-quote); padding: 30px; margin: 0 0 15px; border-radius: 0; }
@media (max-width: 768px) {
  .skin-dental .rich-content-block h2, .skin-dental .faq-section .mb-5 h2, .skin-dental .pricing-block__title, .skin-dental .kt-price h2, .skin-dental .rich-content-block__card h2 { font-size: 20px; margin-bottom: 15px !important; }
}
/* text cards: #f3f7f8, radius 20px, padding 30px */
.skin-dental .rich-content-block__card { background: var(--dent-bg); border-radius: var(--dent-r); padding: 30px; box-shadow: none; border: 0; }
@media (max-width: 480px) { .skin-dental .rich-content-block__card { padding: 20px 15px; } }
.skin-dental .rich-content-block__card img { border-radius: var(--dent-r); }
/* breadcrumbs: grey text, links underlined deep-blue, current teal, peach separators */
.skin-dental .breadcrumbs__item, .skin-dental .breadcrumbs__link { color: var(--dent-grey); font-size: 15px; }
.skin-dental .breadcrumbs__link { text-decoration: none; border-bottom: 1px solid var(--dent-deep); }
.skin-dental .breadcrumbs__link:hover { border-bottom-color: transparent; color: var(--dent-magenta); }
.skin-dental .breadcrumbs__item:last-child, .skin-dental .breadcrumbs__item:last-child .breadcrumbs__link { color: var(--dent-teal); border-bottom: 0; }
.skin-dental .breadcrumbs__item:not(:last-child)::after { color: var(--dent-sep) !important; }
/* FAQ: grey pills radius 30px, hover teal/white, open = answer under thin rule, triangle arrow */
.skin-dental .faq-section .accordion { display: flex; flex-direction: column; gap: 10px; }
.skin-dental .faq-section .accordion-item { background: var(--dent-bg); border: 0 !important; border-radius: var(--dent-r-pill) !important; overflow: hidden; box-shadow: none; margin: 0; }
.skin-dental .faq-section .accordion-item:hover { box-shadow: none; }
.skin-dental .faq-section .accordion-header { margin: 0; font-size: 16px; }
.skin-dental .faq-section .accordion-button { background: transparent; color: #000; font-size: 16px; font-weight: 400; line-height: 1.4; padding: 15px 60px 15px 30px; border-radius: var(--dent-r-pill) !important; box-shadow: none !important; transition: background-color .2s, color .2s; }
.skin-dental .faq-section .accordion-button.collapsed:hover { background: var(--dent-teal); color: #fff; }
.skin-dental .faq-section .accordion-button:not(.collapsed) { background: #f2f6f7; color: #000; font-weight: 600; }
.skin-dental .faq-section .accordion-button::after { content: ""; position: absolute; right: 30px; top: 50%; width: 0; height: 0; margin: 0; transform: translateY(-50%); background: none !important; -webkit-mask: none; mask: none; border-style: solid; border-width: 8px 5px 0 5px; border-color: #000 transparent transparent transparent; }
.skin-dental .faq-section .accordion-button.collapsed:hover::after { border-width: 0 5px 8px 5px; border-color: transparent transparent #fff transparent; }
.skin-dental .faq-section .accordion-button:not(.collapsed)::after { border-width: 0 5px 8px 5px; border-color: transparent transparent var(--dent-teal) transparent; transform: translateY(-50%); }
.skin-dental .faq-section .accordion-body { padding: 0 30px 15px; color: #000; font-size: 16px; line-height: 1.4; letter-spacing: .25px; }
.skin-dental .faq-section .accordion-body > :first-child { padding-top: 20px; border-top: 1px solid #c1c5c5; margin-top: 0; }
/* price table: thin rows, hover magenta row with white text, price 20px */
.skin-dental .price-table__list { background: #fff; }
.skin-dental .price-table__item { margin: 0 0 10px; padding: 2px 15px; border: 0; border-bottom: 1px solid var(--dent-bg); border-radius: 0; background: transparent; transition: background-color .15s, color .15s; }
.skin-dental .price-table__item:hover { background: #ae3d8d; border-radius: var(--dent-r-sm); }
.skin-dental .price-table__label { font-size: 16px; line-height: 30px; font-weight: 400; color: #000; }
.skin-dental .price-table__value { font-size: 20px; line-height: 30px; font-weight: 400; color: #000; letter-spacing: .15px; white-space: nowrap; }
.skin-dental .price-table__item:hover .price-table__label, .skin-dental .price-table__item:hover .price-table__value, .skin-dental .price-table__item:hover a { color: #fff; }
@media (max-width: 768px) { .skin-dental .price-table__label { font-size: 15px; } .skin-dental .price-table__value { font-size: 18px; } }
@media (max-width: 480px) { .skin-dental .price-table__item { gap: 10px; } .skin-dental .price-table__label { font-size: 13px; line-height: 1.5; } .skin-dental .price-table__value { font-size: 15px; } }
/* price pills: white, radius 10px, soft shadow, hover teal */
.skin-dental .price-table__pill { background: #fff; color: #000; border: 0; border-radius: var(--dent-r-sm); padding: 10px 20px; font-size: 16px; letter-spacing: .25px; box-shadow: 0 4px 8px 2px rgba(34,60,80,.13); }
.skin-dental .price-table__pill:hover { background: var(--dent-teal); color: #fff; }
.skin-dental .price-table__pill-icon { background: var(--dent-magenta); color: #fff; }
/* price-card (center popular list): thin rows like a table */
.skin-dental .price-card-block__row { border-bottom-color: var(--dent-bg); }
.skin-dental .price-card-block__price { color: var(--dent-deep); font-weight: 700; }
.skin-dental .price-card-block__name { color: #000; }
.skin-dental .price-card-block__row:hover .price-card-block__name { color: var(--dent-magenta); }
/* service tiles: radius 30px, deep-blue icon 96px r23, hover: teal shadow + magenta icon/link */
.skin-dental .icon-tiles__item { border-radius: var(--dent-r-pill); background: var(--dent-bg); min-height: 200px; justify-content: center; transition: box-shadow .2s, background .2s; }
.skin-dental .icon-tiles__item:hover { background: #fff; box-shadow: var(--dent-shadow); }
.skin-dental .icon-tiles__icon { width: 96px; height: 96px; border-radius: calc(23px * var(--rs, 1)); background: var(--dent-deep); margin-bottom: 20px; transition: background .2s; }
.skin-dental .icon-tiles__item:hover .icon-tiles__icon { background: var(--dent-magenta-h); }
.skin-dental .icon-tiles__name { font-size: 14px; font-weight: 600; line-height: 1.6; color: #121127; }
.skin-dental .icon-tiles__more { font-size: 14px; color: var(--dent-deep); }
.skin-dental .icon-tiles__item:hover .icon-tiles__more { color: var(--dent-magenta-h); }
/* kompleks / price cards: #f3f7f8, radius 20px, title black -> magenta */
.skin-dental .kt-price__card { border-radius: var(--dent-r); background: var(--dent-bg); padding: 15px 15px 20px; transition: box-shadow .2s; }
.skin-dental .kt-price__card:hover { box-shadow: var(--dent-shadow); }
.skin-dental .kt-price__media { border-radius: var(--dent-r); }
.skin-dental .kt-price__name { color: #000; font-size: 17px; }
.skin-dental .kt-price__card:hover .kt-price__name { color: var(--dent-magenta); }
.skin-dental .kt-price__pill { border-radius: var(--dent-r-sm); background: var(--dent-teal); color: #fff; font-weight: 700; letter-spacing: .25px; }
.skin-dental .kt-price__pill b { color: #fff; }
/* image / icon cards */
.skin-dental .image-cards__card { border-radius: var(--dent-r); background: var(--dent-bg); box-shadow: none; transition: box-shadow .2s; }
.skin-dental .image-cards__card:hover { box-shadow: var(--dent-shadow); }
.skin-dental .image-cards__card:hover .image-cards__card-title { color: var(--dent-magenta); }
.skin-dental .icon-cards-block__card { border-radius: var(--dent-r); background: var(--dent-bg); }
.skin-dental .icon-cards-block__card--link:hover { background: #fff; box-shadow: var(--dent-shadow); }
.skin-dental .icon-cards-block__icon { background: var(--dent-deep); border-radius: calc(23px * var(--rs, 1)); }
/* buttons: pill (radius 30px), pink #db59b5 -> teal on hover; secondary = light teal pill */
.skin-dental .feedback-form-block__submit, .skin-dental .teal-form button[type="submit"], .skin-dental .sh-form button[type="submit"], .skin-dental .center-banner-hero__button, .skin-dental .page-header .btn, .skin-dental .licenses-block__button {
  background: var(--dent-pink) !important; border: 0 !important; border-radius: var(--dent-r-pill) !important; color: #fff !important; font-weight: 700; transition: background-color .2s, box-shadow .2s;
}
.skin-dental .feedback-form-block__submit:hover, .skin-dental .teal-form button[type="submit"]:hover, .skin-dental .sh-form button[type="submit"]:hover, .skin-dental .center-banner-hero__button:hover, .skin-dental .page-header .btn:hover, .skin-dental .licenses-block__button:hover {
  background: var(--dent-teal) !important; box-shadow: var(--dent-shadow-sm); filter: none;
}
.skin-dental .page-header--pills .page-header__anchors a { background: var(--dent-bg-teal); border-color: transparent; color: var(--dent-deep); border-radius: var(--dent-r-pill); }
.skin-dental .page-header--pills .page-header__anchors a:hover { background: var(--dent-magenta); color: #fff; }
/* form fields: radius 30px, border var(--brand-line), hover shadow; consent text teal 13px */
.skin-dental .feedback-form-block__input, .skin-dental .teal-form input[type="text"], .skin-dental .teal-form input[type="tel"], .skin-dental .sh-form input[type="text"], .skin-dental .sh-form input[type="tel"] { border-radius: var(--dent-r-pill); border: 1px solid var(--brand-line); transition: box-shadow .2s; }
.skin-dental .feedback-form-block__input:hover, .skin-dental .teal-form input:hover { box-shadow: var(--dent-shadow-sm); }
.skin-dental .feedback-form-block__consent, .skin-dental .feedback-form-block__consent a { color: var(--dent-teal); font-size: 13px; line-height: 15px; }
/* section rhythm: ~60px blocks; cards radius 20px everywhere */
.skin-dental .feedback-form-block__card { border-radius: var(--dent-r); }
.skin-dental .licenses-block .card, .skin-dental .licenses-block img { border-radius: var(--dent-r); }
/* ==== /DENTAL SKIN ==== */

/* dental skin, fixes: section titles bold 700; "show all" price toggle = light-teal pill */
.skin-dental .rich-content-block h2, .skin-dental .faq-section .mb-5 h2, .skin-dental .pricing-block__title, .skin-dental .kt-price h2, .skin-dental .rich-content-block__card h2 { font-weight: 700 !important; color: #000; }
.skin-dental .price-table__toggle { background: var(--dent-bg-teal) !important; color: var(--dent-deep) !important; border: 0 !important; border-radius: var(--dent-r-pill) !important; padding: 8px 24px; font-weight: 600; }
.skin-dental .price-table__toggle:hover { background: var(--dent-magenta) !important; color: #fff !important; }
.skin-dental .price-table__toggle-count { color: inherit; opacity: .8; }
/* ==== SKIN EKO (Ailə planlaşdırılması mərkəzi, 25.10): .skin-eko on center, its services and hub pages ==== */
.skin-eko {
  --eko-green: #13ab7b; --eko-green-d: #28926e; --eko-orange: #fe8b4b; --eko-orange-d: #e77d41;
  --eko-light: #f6f8f7; --eko-mint: #dbf0e9; --eko-cream: #f3f5d6; --eko-line: #e2e9e6; --eko-r: 20px;
  --center-accent: #13ab7b;
}
/* hero slider: cream band, black 900 title, green pill, bar dots */
.center-banner-hero--eko { background: var(--eko-cream, #f3f5d6); }
.center-banner-hero--eko .center-banner-hero__title { color: #000; font-weight: 900; line-height: 1.1; }
.center-banner-hero--eko .center-banner-hero__lead { color: #000; font-size: 1.25rem; }
.center-banner-hero--eko .center-banner-hero__image { object-fit: contain; object-position: right bottom; }
.center-banner-hero--eko .center-banner-hero__button { background: var(--brand-accent); color: #fff; border-radius: calc(40px * var(--rs, 1)); }
.center-banner-hero--eko .center-banner-hero__button:hover { background: var(--brand-accent-d1); color: #fff; }
.center-banner-hero--eko .center-banner-hero__dot { width: 30px; height: 5px; border-radius: calc(40px * var(--rs, 1)); background: rgba(32,32,32,.2); transition: width .2s, background .2s; }
.center-banner-hero--eko .center-banner-hero__dot.is-active { width: 80px; background: var(--brand-accent); }
/* section titles 32px 700 */
.skin-eko .rich-content-block h2, .skin-eko .faq-section .mb-5 h2, .skin-eko .pricing-block__title, .skin-eko .kt-price h2, .skin-eko .rich-content-block__card h2, .skin-eko .promo-cards-block__title, .skin-eko .image-cards__title, .skin-eko .features-block h2, .skin-eko .doctor-specialties-block__title { font-size: 32px; font-weight: 700 !important; color: #000; line-height: 1.2; }
@media (max-width: 768px) { .skin-eko .rich-content-block h2, .skin-eko .faq-section .mb-5 h2, .skin-eko .pricing-block__title, .skin-eko .kt-price h2, .skin-eko .rich-content-block__card h2, .skin-eko .promo-cards-block__title, .skin-eko .image-cards__title, .skin-eko .features-block h2, .skin-eko .doctor-specialties-block__title { font-size: 22px; } }
/* direction tiles: light grey r20, hover cream, green line icons */
.skin-eko .icon-tiles__item { background: var(--eko-light); border-radius: var(--eko-r); border: 0; transition: background .2s; }
.skin-eko .icon-tiles__item:hover { background: var(--eko-cream); box-shadow: none; }
.skin-eko .icon-tiles__icon { background: transparent; color: var(--eko-green); width: 72px; height: 72px; margin-bottom: .5rem; }
.skin-eko .icon-tiles__icon svg { width: 56px; height: 56px; stroke-width: 1.5; }
.skin-eko .icon-tiles__item:hover .icon-tiles__icon { background: transparent; color: var(--eko-green-d); }
.skin-eko .icon-tiles__name { color: #000; font-size: 16px; font-weight: 600; }
.skin-eko .icon-tiles__more { color: var(--eko-green); }
/* text cards: var(--brand-surface) r20, black dot bullets */
.skin-eko .rich-content-block__card { background: var(--eko-light); border-radius: var(--eko-r); box-shadow: none; border: 0; }
.skin-eko .rich-content-block__card img, .skin-eko .rc-band__photo img { border-radius: var(--eko-r); }
.skin-eko .rich-content ul li::before { background: #000; width: 5px; height: 5px; border: 0; top: .6em; }
.skin-eko .rich-content ol li::marker { color: var(--eko-green); font-weight: 700; }
.skin-eko .rich-content a:not(.btn) { color: var(--eko-green); }
.skin-eko .rich-content .btn-primary, .skin-eko .eko-intro-btn { display: inline-block; background: var(--eko-mint) !important; border: 0 !important; color: #000 !important; border-radius: calc(40px * var(--rs, 1)); padding: 10px 40px; min-width: 210px; text-align: center; transition: background .2s, color .2s; }
.skin-eko .rich-content .btn-primary:hover, .skin-eko .eko-intro-btn:hover { background: var(--eko-green) !important; color: #fff !important; }
.skin-eko .rc-band { background: var(--eko-light); }
.skin-eko .rc-band .eko-intro-btn { background: var(--eko-green) !important; color: #fff !important; }
.skin-eko .rc-band .eko-intro-btn:hover { background: var(--eko-green-d) !important; }
/* service menu groups */
.eko-menu { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.eko-menu__item { background: #fff; border-radius: calc(20px * var(--rs, 1)); padding: 24px 24px 12px; }
.eko-menu__item h3 { font-size: 20px; font-weight: 700; margin: 0 0 12px; }
.eko-menu__item ul { margin: 0; }
.skin-eko .eko-menu__item ul li::before { width: 12px; height: 12px; border: 2px solid var(--brand-accent); background: transparent; top: .35em; border-radius: 50%; }
.skin-eko .eko-menu__item ul li { padding-left: 24px; }
@media (max-width: 991px) { .eko-menu { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .eko-menu { grid-template-columns: 1fr; } }
/* expert opinion */
.skin-eko #ekspert .rich-content-block__card { background: var(--eko-mint); }
.eko-expert { position: relative; padding-left: 28px; border-left: 3px solid var(--brand-accent); }
.eko-expert__role { font-weight: 700; margin-top: 1rem; color: var(--brand-accent-d1); }
/* advantages: 4 cream cards r20 */
.skin-eko .features-block__number-card { background: var(--eko-cream); border-radius: var(--eko-r); box-shadow: none; }
.skin-eko .features-block__numbered-badge { background: var(--eko-green); color: #fff; }
@media (min-width: 992px) { .skin-eko .features-block .row > [class*="col-"] { flex: 0 0 25%; max-width: 25%; } }
/* callback forms: mint r20, white inputs r30, orange submit */
.skin-eko .feedback-form-block__card { background: var(--eko-mint) !important; border-radius: var(--eko-r); box-shadow: none; }
.skin-eko .feedback-form-block__input { background: #fff; border: 1px solid var(--eko-line); border-radius: calc(30px * var(--rs, 1)); }
.skin-eko .feedback-form-block__submit, .skin-eko .teal-form__submit { background: var(--eko-orange) !important; color: #fff !important; border: 0 !important; border-radius: calc(30px * var(--rs, 1)); font-weight: 700; }
.skin-eko .feedback-form-block__submit:hover, .skin-eko .teal-form__submit:hover { background: var(--eko-orange-d) !important; }
.skin-eko .teal-form__card { background: var(--eko-green); border-radius: var(--eko-r); }
/* promo cards: green */
.skin-eko .promo-cards-block__card, .skin-eko .promo-cards-block__card--dark { background: var(--eko-green); border-radius: var(--eko-r); }
/* FAQ */
.skin-eko .faq-section .accordion-item { background: var(--eko-light); border: 0 !important; border-radius: var(--eko-r) !important; overflow: hidden; margin-bottom: 10px; }
.skin-eko .faq-section .accordion-button { background: transparent; color: #000; box-shadow: none !important; }
.skin-eko .faq-section .accordion-button:hover, .skin-eko .faq-section .accordion-button:not(.collapsed) { color: var(--eko-green); }
.skin-eko .faq-section .accordion-button::after { background-color: var(--eko-green); }
/* prices */
.skin-eko .price-table__item:hover { background: var(--eko-mint); border-radius: calc(10px * var(--rs, 1)); }
.skin-eko .price-table__value { color: #000; font-weight: 600; }
.skin-eko .price-table__toggle { background: var(--eko-mint) !important; color: #000 !important; border: 0 !important; border-radius: calc(40px * var(--rs, 1)) !important; }
.skin-eko .price-table__toggle:hover { background: var(--eko-green) !important; color: #fff !important; }
.skin-eko .price-table__pill-icon { background: var(--eko-green); color: #fff; }
/* other directions cards */
.skin-eko .kt-price__card { background: var(--eko-light); border-radius: var(--eko-r); }
.skin-eko .kt-price__media { border-radius: calc(14px * var(--rs, 1)); }
.skin-eko .kt-price__name { color: #000; }
.skin-eko .kt-price__card:hover .kt-price__name { color: var(--eko-green); }
.skin-eko .kt-price__pill { background: var(--eko-green); color: #fff; border-radius: calc(40px * var(--rs, 1)); }
.skin-eko .kt-price__pill b { color: #fff; }
/* page header pills / callback button */
.skin-eko .page-header--pills .page-header__anchors a { border-color: var(--eko-green); color: var(--eko-green); border-radius: calc(40px * var(--rs, 1)); }
.skin-eko .page-header--pills .page-header__anchors a:hover { background: var(--eko-green); color: #fff; }
.skin-eko .page-header .btn, .skin-eko .page-header__callback { background: var(--eko-green); border-color: var(--eko-green); border-radius: calc(40px * var(--rs, 1)); color: #fff; }
/* specialties / image cards */
.skin-eko .doctor-specialties-block__card:hover { background: var(--eko-cream); }
.skin-eko .image-cards__card { border-radius: var(--eko-r); background: var(--eko-light); }
/* ==== /SKIN EKO ==== */

/* skin eko, fixes: hero: cut-out picture right, no mask, one-column lists */
.center-banner-hero--eko .center-banner-hero__slide { min-height: 31rem; }
.center-banner-hero--eko .center-banner-hero__image { width: 46%; right: 3%; object-fit: contain; object-position: center bottom; -webkit-mask-image: none; mask-image: none; }
.center-banner-hero--eko .center-banner-hero__title { font-size: clamp(2rem, 4vw, 3.75rem); }
@media (max-width: 991px) { .center-banner-hero--eko .center-banner-hero__image { width: 100%; right: 0; height: 15rem; } }
.skin-eko .rich-content ul { column-count: 1; columns: auto; }
.skin-eko .rich-content ul li { padding-left: 1.25rem; margin-bottom: .45rem; }
.skin-eko .rich-content h3 { font-size: 22px; font-weight: 700; margin: 1.25rem 0 .75rem; }
/* skin eko, fixes 2: dark text on light intro band, 4 advantage cards in a row, green promo card */
.skin-eko .rc-band, .skin-eko .rc-band__text, .skin-eko .rc-band__text p, .skin-eko .rc-band__content { color: #000 !important; }
.skin-eko .rc-band::before, .skin-eko .rc-band::after { opacity: .35; }
@media (min-width: 992px) { .skin-eko #ustunlukler .row > .col-lg-4 { flex: 0 0 25%; max-width: 25%; } }
.skin-eko .features-block__number-card { max-width: none; padding: 30px 20px; }
.skin-eko .features-block__number-card h5 { font-size: 20px; font-weight: 700; }
.skin-eko .promo-cards-block__card { background: var(--brand-accent) !important; color: #fff; border-radius: calc(20px * var(--rs, 1)) !important; }
.skin-eko .promo-cards-block__card * { color: #fff; }
.skin-eko .promo-cards-block__button { background: #fff !important; color: #000 !important; }
/* home-hero (owner 25.10): two shared rows — photo | center tiles, caption | working hours.
   Tiles stretch to the photo's bottom edge, the hours box ends level with the caption. */
@media (min-width: 992px) {
  .home-hero__grid { grid-template-rows: auto auto; row-gap: 0; }
  .home-hero__card { grid-column: 1; grid-row: 1 / span 2; display: grid; grid-template-rows: subgrid; }
  .home-hero__card-media { aspect-ratio: auto; min-height: 100%; }
  .home-hero__card-media img { height: 100%; min-height: 20rem; }
  .home-hero__side { display: contents; }
  .home-hero__tiles { grid-column: 2; grid-row: 1; grid-auto-rows: 1fr; align-self: stretch; }
  .home-hero__tile { min-height: 6.25rem; }
  .home-hero__notice { grid-column: 2; grid-row: 2; margin-top: 1.5rem; flex: none; align-self: stretch; padding: 1rem 1.5rem; }
}
/* statistics_block look «cabinet» (home, owner 25.10):
   2×2 counters on the left, mint «Şəxsi kabinet» card with a drawn phone on the right */
.stats-cabinet { padding: 1.5rem 0 2rem; }
.stats-cabinet__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.25rem; align-items: stretch; }
.stats-cabinet__stats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.stats-cabinet__stat { display: flex; flex-direction: column; justify-content: center; gap: .5rem; min-height: 10rem; padding: 1.75rem; border-radius: calc(1.75rem * var(--rs, 1)); background: var(--brand-surface); }
.stats-cabinet__number { font-size: clamp(1.9rem, 2.6vw, 2.5rem); line-height: 1.1; font-weight: 500; color: #111; }
.stats-cabinet__label { font-size: 1.125rem; color: #222; line-height: 1.35; }
.stats-cabinet__card { position: relative; display: flex; align-items: stretch; min-height: 21.25rem; padding: 2.5rem 0 0 3rem; border-radius: calc(1.75rem * var(--rs, 1)); background: var(--brand-accent-t1); overflow: hidden; }
.stats-cabinet__body { position: relative; z-index: 1; flex: 1 1 auto; max-width: 58%; align-self: center; padding-bottom: 2.5rem; }
.stats-cabinet__title { margin: 0 0 1rem; font-size: clamp(1.75rem, 2.6vw, 2.5rem); line-height: 1.15; font-weight: 500; color: #111; }
.stats-cabinet__lead { margin: 0 0 1.25rem; font-size: 1rem; color: #333; }
.stats-cabinet__buttons { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 1.5rem; }
.stats-cabinet__btn { display: inline-flex; align-items: center; justify-content: center; min-width: 8.75rem; padding: .85rem 1.75rem; border-radius: var(--radius-pill, 999px); color: #fff; font-weight: 700; font-size: 1.0625rem; text-decoration: none; transition: filter .15s, transform .15s; }
.stats-cabinet__btn:hover { color: #fff; filter: brightness(.94); transform: translateY(-1px); }
.stats-cabinet__btn--green { background: var(--color-primary, var(--brand-accent)); }
.stats-cabinet__btn--orange { background: var(--brand-cta); }
/* drawn phone */
.stats-cabinet__phone { position: absolute; right: 2.25rem; bottom: -2.5rem; width: 12.5rem; height: 21.5rem; padding: .5rem; border-radius: calc(2rem * var(--rs, 1)); background: #E46F2F; box-shadow: 0 1.25rem 2.5rem rgba(0, 60, 40, .22); transform: rotate(-4deg); }
.stats-cabinet__screen { height: 100%; border-radius: calc(1.6rem * var(--rs, 1)); background: #fff; overflow: hidden; font-size: .625rem; color: #222; }
.stats-cabinet__bar { display: flex; justify-content: space-between; padding: .45rem .9rem .25rem; font-weight: 700; font-size: .55rem; color: #fff; background: var(--color-primary, var(--brand-accent)); }
.stats-cabinet__app-head { padding: .3rem .9rem .7rem; background: var(--color-primary, var(--brand-accent)); color: #fff; font-weight: 700; font-size: .8rem; }
.stats-cabinet__hello { padding: .6rem .9rem .35rem; font-weight: 700; font-size: .75rem; }
.stats-cabinet__hello small { display: block; font-weight: 400; color: #888; font-size: .55rem; }
.stats-cabinet__row { position: relative; margin: 0 .7rem; padding: .5rem .2rem; border-bottom: 1px solid #EEF2F1; }
.stats-cabinet__row::after { content: "›"; position: absolute; right: .25rem; color: #aaa; }
.stats-cabinet__row--accent { margin: .2rem .7rem .4rem; padding: .55rem .6rem; border: 0; border-radius: calc(.6rem * var(--rs, 1)); background: color-mix(in srgb, var(--brand-accent) 11%, #fff); font-weight: 600; }
.stats-cabinet__row--accent i { font-style: normal; margin-left: .3rem; padding: .05rem .35rem; border-radius: calc(1rem * var(--rs, 1)); background: var(--brand-cta); color: #fff; font-size: .5rem; vertical-align: middle; }
.stats-cabinet__cta { margin: .7rem; padding: .5rem; border-radius: calc(1rem * var(--rs, 1)); background: var(--color-primary, var(--brand-accent)); color: #fff; text-align: center; font-weight: 700; }
@media (max-width: 1199.98px) { .stats-cabinet__phone { width: 10.5rem; height: 19rem; right: 1.25rem; } .stats-cabinet__body { max-width: 60%; } .stats-cabinet__card { padding-left: 2rem; } }
@media (max-width: 991.98px) { .stats-cabinet__grid { grid-template-columns: 1fr; } }
@media (max-width: 575.98px) {
  .stats-cabinet__stats { gap: .75rem; }
  .stats-cabinet__stat { min-height: 7.5rem; padding: 1.1rem; border-radius: calc(1.25rem * var(--rs, 1)); }
  .stats-cabinet__label { font-size: .9375rem; }
  .stats-cabinet__card { flex-direction: column; padding: 1.75rem 1.5rem 0; min-height: 0; }
  .stats-cabinet__body { max-width: none; padding-bottom: 1.25rem; }
  .stats-cabinet__phone { position: relative; right: auto; bottom: auto; align-self: center; margin-bottom: -4rem; transform: none; }
  .stats-cabinet__card { padding-bottom: 0; }
}
/* ------------------------------------------------------------------
 * Pricing Block look «catalog» (25.10): /qiymetler/ — search, «Hamısı»
 * + sections in a scrolling row, center select, page size, pager.
 * Same toolbar look as the center «Xidmətlər» block.
 * ------------------------------------------------------------------ */
.price-catalog { --pc-accent: var(--brand-primary, var(--brand-accent)); }
.price-catalog__toolbar { display: flex; align-items: center; gap: .75rem; margin-bottom: 1rem; min-width: 0; }
.price-catalog__search { flex: 0 0 13rem; min-width: 0; margin: 0; }
.price-catalog__search-input {
    width: 100%; height: 2.75rem; padding: 0 1.25rem 0 2.75rem;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%238A9A93' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 1rem 50%;
    border: 1px solid var(--brand-line); border-radius: var(--radius-pill, 999px); color: var(--text-primary, #222); box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.price-catalog__search-input:focus { border-color: var(--pc-accent); outline: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--pc-accent) 18%, transparent); }
.price-catalog__select { flex: 0 0 auto; margin: 0; min-width: 0; }
.price-catalog__select select {
    height: 2.75rem; max-width: 13.5rem; padding: 0 2.25rem 0 1rem; border: 1px solid var(--brand-line); border-radius: var(--radius-pill, 999px); background-color: #fff; color: var(--text-primary, #222); cursor: pointer;
    -webkit-appearance: none; appearance: none; text-overflow: ellipsis;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238A9A93' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right .9rem center;
}
.price-catalog__select select:focus { border-color: var(--pc-accent); outline: 0; }
.price-catalog__scroll { position: relative; flex: 1 1 auto; min-width: 0; display: flex; align-items: center; }
.price-catalog__chips {
    flex: 1 1 auto; min-width: 0; display: flex; flex-wrap: nowrap; gap: .5rem; margin: 0; padding: .25rem 0;
    overflow-x: auto; scroll-behavior: smooth; scrollbar-width: none; -ms-overflow-style: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 2rem, #000 calc(100% - 2rem), transparent 100%);
            mask-image: linear-gradient(90deg, transparent 0, #000 2rem, #000 calc(100% - 2rem), transparent 100%);
}
.price-catalog__chips.is-start { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 2rem), transparent 100%); mask-image: linear-gradient(90deg, #000 calc(100% - 2rem), transparent 100%); }
.price-catalog__chips.is-end { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 2rem); mask-image: linear-gradient(90deg, transparent 0, #000 2rem); }
.price-catalog__chips.is-start.is-end { -webkit-mask-image: none; mask-image: none; }
.price-catalog__chips::-webkit-scrollbar { display: none; }
.price-catalog__chip {
    flex: 0 0 auto; white-space: nowrap; height: 2.75rem; padding: 0 1rem; display: inline-flex; align-items: center;
    background: #fff; border: 1px solid var(--brand-line); border-radius: var(--radius-pill, 999px); color: var(--text-primary, #222); font-size: .9375rem; cursor: pointer;
    transition: background-color .15s, color .15s, border-color .15s;
}
.price-catalog__chip:hover:not(.is-active) { border-color: var(--pc-accent); color: var(--pc-accent); }
.price-catalog__chip.is-active { background: var(--pc-accent); border-color: var(--pc-accent); color: #fff; }
.price-catalog__arrow {
    position: absolute; top: 50%; z-index: 2; transform: translateY(-50%); width: 2.25rem; height: 2.25rem; padding: 0;
    border: 0; border-radius: 50%; background: #fff; color: var(--pc-accent); font-size: 1.5rem; line-height: 1; cursor: pointer; box-shadow: 0 2px 10px rgba(0, 40, 50, .15);
}
.price-catalog__arrow[hidden] { display: none; }
.price-catalog__arrow--prev { left: -.25rem; }
.price-catalog__arrow--next { right: -.25rem; }
.price-catalog__arrow:hover { background: var(--pc-accent); color: #fff; }

.price-catalog__count { margin: 0 0 .75rem; color: #6B7A74; font-size: .875rem; min-height: 1.25rem; }
.price-catalog__list { list-style: none; margin: 0; padding: .25rem 1.75rem; background: #fff; border: 1px solid var(--brand-line); border-radius: calc(1.5rem * var(--rs, 1)); }
.price-catalog__list[hidden] { display: none; }
.price-catalog:not(.is-ready) .price-catalog__item:nth-child(n+21) { display: none; }
.price-catalog__item { display: flex; align-items: baseline; justify-content: space-between; gap: 1.5rem; padding: 1rem 0; border-bottom: 1px solid #EEF2F0; }
.price-catalog__item:last-child, .price-catalog__item:has(~ .price-catalog__item[hidden]):not(:has(~ .price-catalog__item:not([hidden]))) { border-bottom: 0; }
.price-catalog__item[hidden] { display: none; }
.price-catalog__name { min-width: 0; color: var(--text-primary, #222); line-height: 1.4; }
.price-catalog__name a { color: inherit; text-decoration: none; }
.price-catalog__name a:hover { color: var(--pc-accent); text-decoration: underline; }
.price-catalog__cat { display: block; margin-top: .2rem; color: #8A9A93; font-size: .8125rem; }
.price-catalog__price { flex: 0 0 auto; white-space: nowrap; font-weight: 600; color: var(--text-primary, #222); }
.price-catalog__empty { margin: 0; padding: 2rem 1.75rem; background: var(--brand-surface); border-radius: calc(1.5rem * var(--rs, 1)); text-align: center; color: #6B7A74; }
.price-catalog__empty[hidden] { display: none; }
.price-catalog__pager { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .375rem; margin-top: 1.5rem; }
.price-catalog__pager[hidden] { display: none; }
.price-catalog__page {
    min-width: 2.5rem; height: 2.5rem; padding: 0 .75rem; border: 1px solid var(--brand-line); border-radius: var(--radius-pill, 999px); background: #fff;
    color: var(--text-primary, #222); font: inherit; cursor: pointer; transition: background-color .15s, color .15s, border-color .15s;
}
.price-catalog__page:hover:not(:disabled):not(.is-active) { border-color: var(--pc-accent); color: var(--pc-accent); }
.price-catalog__page.is-active { background: var(--pc-accent); border-color: var(--pc-accent); color: #fff; font-weight: 600; }
.price-catalog__page:disabled { opacity: .4; cursor: default; }
.price-catalog__page--arrow { font-size: 1.25rem; line-height: 1; }
.price-catalog__page-gap { padding: 0 .25rem; color: #8A9A93; }
.price-catalog-section .price-table__disclaimer { margin-top: 1.5rem; }
@media (max-width: 1199.98px) {
    .price-catalog__toolbar { flex-wrap: wrap; }
    .price-catalog__search { flex: 1 1 14rem; }
    .price-catalog__select--center { order: 1; }
    .price-catalog__select--per { order: 2; }
    .price-catalog__chip--all { order: 3; }
    .price-catalog__scroll { order: 4; flex: 1 1 calc(100% - 7rem); }
}
@media (max-width: 575.98px) {
    .price-catalog__search { flex-basis: 100%; }
    .price-catalog__select--center { flex: 1 1 auto; }
    .price-catalog__select--center select { width: 100%; max-width: none; }
    .price-catalog__list { padding: 0 1rem; border-radius: calc(1.25rem * var(--rs, 1)); }
    .price-catalog__item { gap: 1rem; padding: .85rem 0; }
}

/* Split panel on phones: the image takes the full width above the text (was squeezed to 38%). SVG illustrations are not cropped. */
@media (max-width: 767.98px) {
    .rich-content-block__split-image { flex: none; width: 100%; max-width: 100%; }
}
.rich-content-block__split-image img[src$='.svg'] { object-fit: contain; }
/* ==== CARDIO SKIN (27.10): colour variant of the dental skin (.skin-dental.skin-cardio) ==== */
/* Same layout rules as .skin-dental; only the tokens and a few fixed colours change:
   base red instead of teal, navy instead of magenta. */
.skin-dental.skin-cardio {
  --dent-deep: #7d1d2b; --dent-teal: #c8323f; --dent-magenta: #24456e; --dent-magenta-h: #2f5a8f; --dent-pink: #d93a4e;
  --dent-bg: #f7f3f4; --dent-bg-teal: #fbeff1; --dent-quote: #f8e4e7; --dent-sep: #f2c4ca;
  --dent-shadow: -1px 16px 45px 2px rgba(233,201,206,.79);
  --center-accent: #c8323f;
}
.skin-dental.skin-cardio .rich-content-block__card,
.skin-dental.skin-cardio .icon-cards-block__card,
.skin-dental.skin-cardio .feedback-form-block__input,
.skin-dental.skin-cardio .faq-section .accordion-button:not(.collapsed) { background: var(--dent-bg); }
.skin-dental.skin-cardio .icon-cards-block__card--link:hover { background: #fff; }
.skin-dental.skin-cardio .price-table__item:hover { background: var(--dent-magenta); }
.skin-dental.skin-cardio .accordion-button.collapsed:hover { color: #a3242f; }
.skin-dental.skin-cardio .faq-section .accordion-button.collapsed:hover { color: #fff; }
.skin-dental.skin-cardio .feedback-form-block__card { box-shadow: 0 .75rem 2.5rem rgba(80, 20, 30, .12); }
.skin-dental.skin-cardio .price-card-block { background: var(--dent-bg); }
.skin-dental.skin-cardio .price-card-block::before { background: var(--dent-quote); }
.skin-dental.skin-cardio .price-card-block__list { box-shadow: 0 1rem 3rem rgba(80, 20, 30, .1); }
.skin-dental.skin-cardio .price-card-block__row { border-bottom-color: #f1e6e8; }
.skin-dental.skin-cardio .leadership-message-block__card { background: var(--dent-bg); border-color: transparent; }
.skin-dental.skin-cardio .breadcrumbs__item:last-child, .skin-dental.skin-cardio .breadcrumbs__item:last-child * { color: var(--dent-teal) !important; }
/* ==== QADIN SKIN (28.10): women's health, colour variant of the dental skin (.skin-dental.skin-qadin) ==== */
/* Same layout rules as .skin-dental; only the tokens and a few fixed colours change:
   berry instead of teal, plum instead of magenta. */
.skin-dental.skin-qadin {
  --dent-deep: #6e1f45; --dent-teal: #b03a72; --dent-magenta: #4a2c6b; --dent-magenta-h: #5f3b88; --dent-pink: #d4558f;
  --dent-bg: #f8f3f6; --dent-bg-teal: #fbeff5; --dent-quote: #f6e1ec; --dent-sep: #efc3d8;
  --dent-shadow: -1px 16px 45px 2px rgba(232,200,218,.79);
  --center-accent: #b03a72;
}
.skin-dental.skin-qadin .rich-content-block__card,
.skin-dental.skin-qadin .icon-cards-block__card,
.skin-dental.skin-qadin .feedback-form-block__input,
.skin-dental.skin-qadin .faq-section .accordion-button:not(.collapsed) { background: var(--dent-bg); }
.skin-dental.skin-qadin .icon-cards-block__card--link:hover { background: #fff; }
.skin-dental.skin-qadin .price-table__item:hover { background: var(--dent-magenta); }
.skin-dental.skin-qadin .accordion-button.collapsed:hover { color: #8e2a5b; }
.skin-dental.skin-qadin .faq-section .accordion-button.collapsed:hover { color: #fff; }
.skin-dental.skin-qadin .feedback-form-block__card { box-shadow: 0 .75rem 2.5rem rgba(80, 20, 50, .12); }
.skin-dental.skin-qadin .price-card-block { background: var(--dent-bg); }
.skin-dental.skin-qadin .price-card-block::before { background: var(--dent-quote); }
.skin-dental.skin-qadin .price-card-block__list { box-shadow: 0 1rem 3rem rgba(80, 20, 50, .1); }
.skin-dental.skin-qadin .price-card-block__row { border-bottom-color: #f1e5ec; }
.skin-dental.skin-qadin .leadership-message-block__card { background: var(--dent-bg); border-color: transparent; }
.skin-dental.skin-qadin .breadcrumbs__item:last-child, .skin-dental.skin-qadin .breadcrumbs__item:last-child * { color: var(--dent-teal) !important; }
/* ==== KISI SKIN (28.10): men's health, colour variant of the dental skin (.skin-dental.skin-kisi) ==== */
/* Same layout rules as .skin-dental; only the tokens and a few fixed colours change:
   blue instead of teal, navy instead of magenta. */
.skin-dental.skin-kisi {
  --dent-deep: #163a5f; --dent-teal: #2368a8; --dent-magenta: #1d3557; --dent-magenta-h: #2a4a76; --dent-pink: #2f80c8;
  --dent-bg: #f2f6fa; --dent-bg-teal: #eaf2fa; --dent-quote: #dde9f5; --dent-sep: #c4d8ec;
  --dent-shadow: -1px 16px 45px 2px rgba(196,216,236,.79);
  --center-accent: #2368a8;
}
.skin-dental.skin-kisi .rich-content-block__card,
.skin-dental.skin-kisi .icon-cards-block__card,
.skin-dental.skin-kisi .feedback-form-block__input,
.skin-dental.skin-kisi .faq-section .accordion-button:not(.collapsed) { background: var(--dent-bg); }
.skin-dental.skin-kisi .icon-cards-block__card--link:hover { background: #fff; }
.skin-dental.skin-kisi .price-table__item:hover { background: var(--dent-magenta); }
.skin-dental.skin-kisi .accordion-button.collapsed:hover { color: #1b5389; }
.skin-dental.skin-kisi .faq-section .accordion-button.collapsed:hover { color: #fff; }
.skin-dental.skin-kisi .feedback-form-block__card { box-shadow: 0 .75rem 2.5rem rgba(15, 35, 60, .12); }
.skin-dental.skin-kisi .price-card-block { background: var(--dent-bg); }
.skin-dental.skin-kisi .price-card-block::before { background: var(--dent-quote); }
.skin-dental.skin-kisi .price-card-block__list { box-shadow: 0 1rem 3rem rgba(15, 35, 60, .1); }
.skin-dental.skin-kisi .price-card-block__row { border-bottom-color: #e3ebf3; }
.skin-dental.skin-kisi .leadership-message-block__card { background: var(--dent-bg); border-color: transparent; }
.skin-dental.skin-kisi .breadcrumbs__item:last-child, .skin-dental.skin-kisi .breadcrumbs__item:last-child * { color: var(--dent-teal) !important; }
/* ==========================================================
   PROMO OFFERS / PROMO TYPES BLOCKS (special offers section)
   Section heading, offer grid, filters, type tiles. The card
   itself is in entities/promotion/style.css.
   ========================================================== */

.promo-section-head {
    margin-bottom: var(--space-5);
}

.promo-section-head__title {
    margin: 0 0 var(--space-2);
    font-family: var(--font-family-heading);
    font-size: var(--font-size-subsection-title);
    font-weight: var(--font-weight-bold);
    color: var(--text-primary);
}

.promo-section-head__text {
    max-width: 48rem;
    margin: 0;
    color: var(--text-secondary);
    line-height: var(--line-height-body);
}

/* ---------- offers grid ---------- */

.promo-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-4);
}

.promo-offers__empty {
    margin: var(--space-4) 0;
    padding: var(--space-5);
    border-radius: var(--radius-card);
    background: var(--brand-primary-light);
    color: var(--text-primary);
}

.promo-offers__empty[hidden] {
    display: none;
}

.promo-offers__more {
    margin: var(--space-5) 0 0;
}

.promo-offers__all {
    color: var(--brand-primary-dark);
    font-weight: var(--font-weight-semibold);
}

/* ---------- filters ---------- */

.promo-filters {
    display: grid;
    gap: var(--space-3);
    margin-bottom: var(--space-5);
}

.promo-filters__label {
    display: block;
    margin-bottom: var(--space-2);
    color: var(--text-secondary);
    font-size: var(--font-size-meta);
    font-weight: var(--font-weight-semibold);
}

.promo-filters__pills {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.promo-filters__pill {
    padding: 0.4rem 1rem;
    border: var(--border-width-thin) solid var(--border-default);
    border-radius: var(--radius-pill, 999px);
    background: var(--surface-card);
    color: var(--text-primary);
    font: inherit;
    font-size: var(--font-size-meta);
    cursor: pointer;
    transition: background-color var(--transition-fast) ease, border-color var(--transition-fast) ease;
}

.promo-filters__pill:hover {
    border-color: var(--brand-primary);
}

.promo-filters__pill.is-active {
    border-color: var(--brand-primary);
    background: var(--brand-primary);
    color: var(--white);
}

/* ---------- type tiles ---------- */

/*
 * Design variant B (30.10.2026): every offer type has its own soft colour. The tile is tinted,
 * the illustrated picture (parts/promo-type-art.php) sits on a white rounded square, the name
 * and the number of offers are centred under it.
 *
 * Type palette: --pt-bg tile, --pt-main and --pt-soft the picture, --pt-accent its accent,
 * --pt-text the count. These are illustration colours, not brand tokens; a clinic overrides
 * them here (or in its own CSS by the same selectors). A type without its own palette uses
 * the brand green.
 */
.promo-type {
    --pt-bg: var(--brand-accent-t5);
    --pt-main: var(--brand-accent-d1);
    --pt-soft: var(--brand-accent-t8);
    --pt-accent: #FF8A4C;
    --pt-text: var(--brand-accent-d4);
}

.promo-type--guzestler            { --pt-bg: #E6F6EF; --pt-main: #0F8A63; --pt-soft: #BFE8D6; --pt-accent: #FF8A4C; --pt-text: #0B6B4D; }
.promo-type--xususi-qiymetler     { --pt-bg: #E7F0FC; --pt-main: #2563B8; --pt-soft: #C3D8F5; --pt-accent: #F59E0B; --pt-text: #1D4F94; }
.promo-type--kampaniyalar         { --pt-bg: #FDECE3; --pt-main: #C2501E; --pt-soft: #F8CDB6; --pt-accent: #2563B8; --pt-text: #9A3E15; }
.promo-type--kompleks-teklifler   { --pt-bg: #E3F3F5; --pt-main: #127A86; --pt-soft: #BCE3E8; --pt-accent: #FF8A4C; --pt-text: #0E5F69; }
.promo-type--loyalliq-proqramlari { --pt-bg: #FBF3DA; --pt-main: #A87A05; --pt-soft: #F3DE9C; --pt-accent: #C2501E; --pt-text: #7D5A03; }
.promo-type--aile-proqramlari     { --pt-bg: #FCE7EE; --pt-main: #B8336A; --pt-soft: #F5C3D5; --pt-accent: #F59E0B; --pt-text: #8E2752; }
.promo-type--korporativ-teklifler { --pt-bg: #ECEAFB; --pt-main: #5B45C2; --pt-soft: #D3CDF4; --pt-accent: #FF8A4C; --pt-text: #45339A; }
.promo-type--hediyye-xidmetler    { --pt-bg: #FDEBE6; --pt-main: #C43D3D; --pt-soft: #F6C9C0; --pt-accent: #0F8A63; --pt-text: #992E2E; }
.promo-type--hisse-hisse-odenis   { --pt-bg: #EAF5E1; --pt-main: #4C8A1E; --pt-soft: #CBE6B5; --pt-accent: #2563B8; --pt-text: #3A6B16; }

.promo-types__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
}

.promo-type {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0.875rem;
    padding: 2.25rem 1.5rem 2rem;
    border-radius: calc(1.5rem * var(--rs, 1));
    background: var(--pt-bg);
    color: var(--text-primary);
    text-align: center;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.promo-type:hover {
    color: var(--text-primary);
    box-shadow: 0 0.75rem 2rem rgba(31, 41, 51, 0.10);
    transform: translateY(-3px);
}

.promo-type:focus-visible {
    outline: 2px solid var(--pt-main);
    outline-offset: 3px;
}

.promo-type__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 8rem;
    height: 8rem;
    margin-bottom: 0.25rem;
    border-radius: calc(2rem * var(--rs, 1));
    background: var(--white);
    box-shadow: 0 0.5rem 1.25rem rgba(31, 41, 51, 0.08);
    color: var(--pt-main);
}

.promo-type__icon .promo-type-art {
    width: 5.5rem;
    height: 5.5rem;
}

/* A type without a picture shows its line icon in the type colour. */
.promo-type__icon--line svg {
    width: 3.5rem;
    height: 3.5rem;
}

.promo-type-art .pt-fm { fill: var(--pt-main); }
.promo-type-art .pt-fs { fill: var(--pt-soft); }
.promo-type-art .pt-fa { fill: var(--pt-accent); }
.promo-type-art .pt-sm { stroke: var(--pt-main); }
.promo-type-art .pt-sa { stroke: var(--pt-accent); }

.promo-type__name {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-weight: var(--font-weight-bold);
    line-height: 1.3;
}

.promo-type__count {
    font-size: 0.9375rem;
    font-weight: var(--font-weight-semibold);
    color: var(--pt-text);
}

/* No current offers: the tile keeps its place, but goes grey. */
.promo-type.is-soon {
    --pt-bg: var(--surface-section);
    --pt-main: var(--gray-500);
    --pt-soft: var(--gray-200);
    --pt-accent: var(--gray-400);
    --pt-text: var(--text-muted);
}

@media (max-width: 575.98px) {

    .promo-types__grid {
        gap: var(--space-3);
    }

    .promo-type {
        gap: 0.625rem;
        padding: 1.5rem 0.75rem 1.25rem;
    }

    .promo-type__icon {
        width: 5.75rem;
        height: 5.75rem;
        border-radius: calc(1.5rem * var(--rs, 1));
    }

    .promo-type__icon .promo-type-art {
        width: 4rem;
        height: 4rem;
    }

    .promo-type__name {
        font-size: 1rem;
    }
}
/* ---------- callback card: optional offer type select ---------- */

.feedback-form-block__select {
    padding-right: 3rem;
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: calc(100% - 1.6rem) 50%, calc(100% - 1.2rem) 50%;
    background-repeat: no-repeat;
    background-size: 0.4rem 0.4rem;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}

@media (min-width: 576px) {

    .promo-grid,
    .promo-types__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {

    .promo-grid--cols-3,
    .promo-types__grid--cols-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .promo-grid--cols-4,
    .promo-types__grid--cols-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .promo-filters {
        grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    }
}

/* Hub intro: the paragraph right under the page H1, as on the offer type pages. */
.rich-content-block.offers-intro {
    padding-top: 0 !important;
    padding-bottom: calc(16px * var(--rs, 1)) !important;
}

.rich-content-block.offers-intro .rich-content-block__card--plain {
    padding-top: 0;
    padding-bottom: 0;
}

/* Type tiles: the section heading is centred over the tiles, as on the center pages. */
.promo-types .promo-section-head {
    text-align: center;
}
