/* Figma new design, revised 2026-10-15. Desktop measurements are scaled to
   the agreed 1440px canvas (1920 × .75); phone measurements remain native.
   The agreed background, fixed navigation and filter placement are retained. */
.tu-catalog-hero.tu-catalog-hero--directory,
.tu-catalog-hero--directory .tu-catalog-hero__inner {
    min-height: 0;
}
.tu-catalog-hero--directory .tu-catalog-hero__inner {
    display: block;
    padding-top: 36px;
    padding-bottom: 36px;
}
.tu-catalog-hero--directory .tu-catalog-hero__content { width: 100%; }
.tu-catalog-hero.tu-catalog-hero--directory h1 {
    font-size: clamp(48px, 6.66667vw, 96px);
    max-width: 100%;
    margin: 12px 0 24px;
    line-height: 1.12;
}
.tu-catalog-hero--directory .tu-catalog-hero__copy {
    font-size: 15px;
    line-height: 1.5;
    max-width: 720px;
}
.tu-catalog-hero--directory .tu-catalog-hero__actions { margin-top: 30px; }
.tu-catalog-listing .tu-catalog-card { border: 1.5px solid #0781ef; }
.tu-catalog-card--featured:not(.tu-catalog-card--winner) { background: #f0f4ff; }
.tu-catalog-card__award {
    align-items: center;
    align-self: center;
    display: flex;
    flex-direction: column;
    gap: 8px;
    grid-area: award;
    min-width: 0;
}
.tu-catalog-card__award > span {
    align-items: center;
    border: 1px solid #0781ef;
    color: #0781ef;
    display: inline-flex;
    font: 500 10.5px/1.4 Involve, Arial, sans-serif;
    justify-content: center;
    line-height: 1;
    min-height: 18px;
    padding: 2px 4px 0;
    text-align: center;
    white-space: nowrap;
}
.tu-catalog-card__award img { display: block; height: 94px; width: 94px; max-width: 100%; object-fit: contain; }
.tu-directory__grid > .tu-catalog-insert {
    grid-column: 1 / -1;
    margin-inline: calc(-1 * var(--tu-page-x));
    max-width: none;
    width: calc(100% + 2 * var(--tu-page-x));
}
.tu-reading .tu-reading__header h1 { text-transform: uppercase; }
@media (min-width: 1024px) {
    .tu-catalog-card--with-award {
        grid-template-areas: "logo heading award facts action" "logo description award facts action";
        grid-template-columns: 122px minmax(0, 1.25fr) 120px minmax(180px, 1fr) minmax(160px, 226px);
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .tu-catalog-card--with-award {
        grid-template-areas: "logo heading award" "logo description award" "facts facts action";
        grid-template-columns: 100px minmax(0, 1fr) 160px;
    }
}
@media (max-width: 767px) {
    .tu-catalog-hero--directory .tu-catalog-hero__inner {
        padding-top: 32px;
        padding-bottom: 32px;
    }
    .tu-catalog-hero.tu-catalog-hero--directory h1 {
        font-size: 42px;
        line-height: 1.12;
        margin: 16px 0 24px;
    }
    .tu-catalog-hero--directory .tu-catalog-hero__copy { font-size: 14px; }
    .tu-catalog-hero--directory .tu-catalog-hero__actions { margin-top: 24px; gap: 8px; }
    .tu-catalog-hero--directory .tu-catalog-hero__actions .tu-button { font-size: 16px; min-height: 49px; padding: 12px 16px; }
    .tu-catalog-card--with-award {
        grid-template-areas: "logo heading award" "description description description" "facts facts facts" "action action action";
        grid-template-columns: 44px minmax(0, 1fr) 42px;
        column-gap: 10px;
    }
    .tu-catalog-card__award { align-self: start; gap: 0; }
    .tu-catalog-card__award > span { display: none; }
    .tu-catalog-card__award img { height: 42px; width: 42px; }
    .tu-directory__grid > .tu-catalog-insert { margin-block: 16px; }
}
/* The same text-only first screen is used by FAQ and advertising contacts. */
.tu-catalog-hero.tu-static-hero,
.tu-static-hero .tu-catalog-hero__inner,
.tu-catalog-hero.tu-contact-hero,
.tu-contact-hero .tu-catalog-hero__inner { min-height: 0; }
.tu-static-hero .tu-catalog-hero__inner,
.tu-contact-hero .tu-catalog-hero__inner { padding-block: 36px; }
.tu-static-hero h1,
.tu-contact-hero h1 { max-width: 100%; font-size: clamp(48px, 6.66667vw, 96px); }
@media (max-width: 767px) {
    .tu-static-hero .tu-catalog-hero__inner,
    .tu-contact-hero .tu-catalog-hero__inner { padding-block: 32px; }
    .tu-static-hero h1,
    .tu-contact-hero h1 { font-size: 42px; }
    .tu-knowledge.tu-section { min-height: 0; padding-block: 24px; }
    .tu-knowledge .tu-card-grid { gap: 16px; }
    .tu-knowledge .tu-article-card { flex: 0 0 calc(100% - 48px); }
    .tu-knowledge .tu-section-heading h2 { font-size: 36px; }
}
@media (min-width: 768px) {
    .tu-redesign-page { --tu-page-x: clamp(24px, 3.125vw, 45px); }
    .tu-redesign-page .tu-section-heading h2,
    .tu-testimonial-hero h1 { font-size: clamp(48px, 6.66667vw, 96px); }
    .tu-catalog-card .tu-catalog-card__title { font-size: 27px; }
    .tu-catalog-card .tu-catalog-card__description { font-size: 12px; }
    .tu-catalog-card .tu-catalog-card__payout { font-size: clamp(32px, 3.33333vw, 48px); }
}
.tu-contact-placements { border-top: 6px solid #0781ef; background: #f0f4ff; }
.tu-contact-placements__inner { display: grid; gap: 45px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
.tu-contact-placements__copy { min-width: 0; }
.tu-contact-placements__copy > p { color: #0781ef; font: 400 15px/1.5 Involve, Arial, sans-serif; max-width: 540px; }
.tu-contact-placements .tu-catalog-hero__actions { gap: 12px; margin-top: 30px; }
.tu-contact-placements .tu-button { min-width: 0; min-height: 44px; font-size: 12px; padding: 12px 16px; }
.tu-contact-placements__prices { background: #0a0e1a; color: #fff; padding: 24px; min-width: 0; }
.tu-contact-placements__prices table { border-collapse: collapse; table-layout: fixed; width: 100%; font: 400 13px/1.5 Involve, Arial, sans-serif; }
.tu-contact-placements__prices caption { caption-side: top; color: #0781ef; font-weight: 700; padding: 0 0 16px; }
.tu-contact-placements__prices :is(th,td) { padding: 12px 8px; vertical-align: top; overflow-wrap: anywhere; }
.tu-contact-placements__prices thead th { color: #0781ef; border-bottom: 1px solid #263044; }
.tu-contact-placements__prices tbody tr + tr { border-top: 1px solid #263044; }
.tu-contact-placements__prices :is(strong,small) { display: block; }
.tu-contact-placements__prices small { color: #9ca3af; font-weight: 400; margin-top: 6px; }
@media (max-width: 767px) {
    .tu-contact-placements__inner { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .tu-contact-placements .tu-section-heading h2 { font-size: 36px; }
    .tu-contact-placements__copy > p { font-size: 14px; }
    .tu-contact-placements__prices { padding: 16px; }
    .tu-contact-placements__prices table { font-size: 12px; }
}
@media (max-width: 767px) {
    .tu-catalog-listing.tu-section { padding-block: 16px; }
    .tu-catalog-listing .tu-section-heading { margin-bottom: 16px; }
    .tu-catalog-listing .tu-section-heading h2 { font-size: 28px; line-height: 1.36; margin: 0; }
}
/* FAQ questions are separate framed cards, including the expanded state. */
.tu-faq .tu-shell { display: grid; gap: 30px; }
.tu-faq__item,
.tu-faq__item:first-child { background: #f0f4ff; border: 1.5px solid #0781ef; }
.tu-faq__item button { background: transparent; min-height: 68px; padding: 18px; font-size: 27px; }
.tu-faq__item button b { font-size: 32px; }
.tu-faq__answer { padding: 0 18px 18px; }
@media (min-width: 768px) {
    .tu-testimonial-card { min-height: 438px; }
    .tu-testimonial-card__meta strong { font-size: 30px; }
    .tu-testimonial-card blockquote { font-size: 27px; line-height: 1.33; }
}
@media (max-width: 767px) {
    .tu-faq .tu-shell { gap: 16px; }
    .tu-faq__item button { min-height: 76px; padding: 16px; font-size: 18px; line-height: 1.4; }
    .tu-faq__item button b { font-size: 22px; }
    .tu-faq__answer { padding: 0 16px 16px; }
}
.tu-reading__telegram-note { margin: 0; color: #1f2937; font: 400 20px/1.5 Inter, Arial, sans-serif; }
.tu-reading__telegram-note a { color: #0781ef; text-decoration: underline; }
.tu-knowledge__hint { display: none; }
@media (max-width: 767px) {
    .tu-reading__telegram-note { font-size: 14px; line-height: 1.4; }
    .tu-knowledge__hint { display: block; color: #0781ef; font: 400 12px/1.4 Involve, Arial, sans-serif; margin: 0 0 16px; }
}
/* Article gallery follows the portrait-photo proportions of both frames. */
@media (min-width: 768px) {
    .tu-reading__gallery { justify-content: space-between; gap: 24px; }
    .tu-reading__gallery a { flex: 0 0 25.65%; }
    .tu-reading__gallery img { aspect-ratio: 396 / 604; }
}
@media (max-width: 767px) {
    .tu-reading__gallery { justify-content: flex-start; gap: 12px; }
    .tu-reading__gallery a { flex: 0 0 72.6257%; }
    .tu-reading__gallery img { aspect-ratio: 260 / 360; }
}
.tu-catalog-card__selection { display: none; }
@media (max-width: 767px) {
    .tu-catalog-card__selection { display: block; }
    .tu-catalog-card--with-award:not(.tu-catalog-card--winner) {
        grid-template-areas: "logo heading" "description description" "facts facts" "action action";
        grid-template-columns: 44px minmax(0, 1fr);
    }
    .tu-catalog-card--featured:not(.tu-catalog-card--winner) .tu-catalog-card__award { display: none; }
}
.tu-contact-hero .tu-button--blue,
.tu-static-hero .tu-button--blue { background: transparent; border: 1.5px solid #0781ef; color: #0781ef; }
.tu-contact-hero .tu-button--dark { background: #0781ef; border-color: #0781ef; color: #fff; }
@media (min-width: 768px) {
    .tu-catalog-hero.tu-editorial-hero .tu-catalog-hero__inner h1 { font-size: clamp(42px, 6.66667vw, 96px); }
    .tu-catalog-hero.tu-editorial-hero .tu-catalog-hero__copy { font-size: 15px; }
}
@media (max-width: 767px) {
    .tu-catalog-listing .tu-knowledge .tu-section-heading h2 { font-size: 36px; }
}
@media (min-width: 1024px) {
    .tu-catalog-card:where(:not(.tu-catalog-card--conference):not(.tu-catalog-card--job)) { grid-template-columns: 122px minmax(0, 1fr) minmax(172px, 226px); }
    .tu-catalog-card--with-facts { grid-template-columns: 122px minmax(0, 1fr) minmax(180px, 1fr) minmax(172px, 226px); }
    .tu-catalog-card--with-award {
        grid-template-columns: 122px minmax(0, 1.25fr) 120px minmax(180px, 1fr) minmax(160px, 226px);
    }
}

/* Selection awards also apply to service and traffic-source cards. */
@media (min-width: 1024px) {
    .tu-catalog-card--with-award:not(.tu-catalog-card--with-facts) {
        grid-template-areas: "logo heading award action" "logo description award action";
        grid-template-columns: 122px minmax(0, 1fr) 120px minmax(160px, 226px);
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .tu-catalog-card--with-award:not(.tu-catalog-card--with-facts) {
        grid-template-areas: "logo heading award" "logo description award" "action action action";
    }
}
@media (max-width: 767px) {
    .tu-catalog-card--with-award:not(.tu-catalog-card--with-facts) {
        grid-template-areas: "logo heading award" "description description description" "action action action";
    }
    .tu-catalog-card--with-award:not(.tu-catalog-card--winner):not(.tu-catalog-card--with-facts) {
        grid-template-areas: "logo heading" "description description" "action action";
    }
}

/* Keep outlined static-page CTAs readable against their transparent surface. */
body.tu-home-layout .tu-static-hero .tu-button--blue,
body.tu-home-layout .tu-contact-placements .tu-button--outline {
    color: #0781ef !important;
    background: transparent;
    border: 1.5px solid #0781ef;
}
body.tu-home-layout .tu-contact-placements .tu-button--outline:disabled {
    cursor: not-allowed;
    opacity: .65;
}
body.tu-home-layout .tu-static-hero .tu-button--blue:hover {
    background: #0781ef;
    color: #fff !important;
}

/* Full-width recommendations between the first four and remaining eight records. */
.tu-editorial__grid > .tu-catalog-insert {
    grid-column: 1 / -1;
    min-width: 0;
    margin-inline: calc(-1 * var(--tu-page-x));
    max-width: none;
    width: calc(100% + 2 * var(--tu-page-x));
}
