/* FindCert / Document Detail
   Коммерческая страница сравнения: терминал цен, предложения, редакционный паспорт. */

body.page-document { overflow-x: clip; }
body.page-document .breadcrumbs .container { width: 100%; min-width: 0; }
body.page-document .breadcrumbs ul { min-width: 0; flex-wrap: wrap; }

body.page-document .main-content .fc-document-detail-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border-bottom: 1px solid #ededf0;
    background: #fff;
}

body.page-document .main-content .fc-document-detail-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(rgba(23, 23, 26, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23, 23, 26, .035) 1px, transparent 1px),
        radial-gradient(circle at 83% 42%, rgba(63, 63, 70, .105), transparent 29%);
    background-size: 32px 32px, 32px 32px, auto;
    mask-image: linear-gradient(90deg, transparent 0, #000 39%, #000 100%);
}

body.page-document .main-content .fc-document-detail-hero::after {
    content: "COMPARE / 04";
    position: absolute;
    top: 48px;
    right: max(40px, calc((100vw - 1200px) / 2 + 40px));
    color: #17171a;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22em;
    opacity: .17;
}

.fc-document-detail-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.13fr) minmax(380px, .87fr);
    gap: 68px;
    align-items: center;
    max-width: 1200px;
    min-height: 575px;
    margin: 0 auto;
    padding: 68px 40px 74px;
}

.fc-document-detail-copy { min-width: 0; animation: fcDetailRise .72s cubic-bezier(.22, .61, .36, 1) both; }
.fc-document-detail-eyebrow,
.fc-detail-section-kicker {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 19px;
    color: #686870;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .15em;
    line-height: 1.2;
    text-transform: uppercase;
}

.fc-document-detail-live {
    position: relative;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #17171a;
}
.fc-document-detail-live::after {
    content: "";
    position: absolute;
    inset: -4px;
    border: 1px solid rgba(23, 23, 26, .25);
    border-radius: inherit;
    animation: fcDetailPulse 2.2s ease-out infinite;
}

body.page-document .main-content .fc-document-detail-hero h1 {
    max-width: 760px;
    margin: 0;
    color: #17171a;
    font-size: clamp(45px, 4.8vw, 66px);
    font-weight: 800;
    letter-spacing: -.055em;
    line-height: .99;
    text-wrap: balance;
}

.fc-document-detail-lead {
    display: -webkit-box;
    max-width: 670px;
    margin: 26px 0 0;
    overflow: hidden;
    color: #686870;
    font-size: 16px;
    line-height: 1.68;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.fc-document-detail-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 29px; }
.fc-document-primary-action,
.fc-document-secondary-action {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 10px;
    padding: 12px 18px;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
.fc-document-primary-action { border: 1px solid #17171a; background: #17171a; color: #fff; }
.fc-document-secondary-action { border: 1px solid #dadaDE; background: #fff; color: #17171a; }
.fc-document-primary-action:hover { background: #303036; transform: translateY(-2px); }
.fc-document-secondary-action:hover { border-color: #17171a; transform: translateY(-2px); }

.fc-document-detail-stats {
    display: grid;
    grid-template-columns: .72fr 1.15fr 1fr;
    max-width: 680px;
    margin-top: 34px;
    border-top: 1px solid #dadaDE;
    padding-top: 23px;
}
.fc-document-detail-stats > div { position: relative; display: flex; min-width: 0; flex-direction: column; gap: 4px; padding: 0 20px; }
.fc-document-detail-stats > div:first-child { padding-left: 0; }
.fc-document-detail-stats > div:not(:last-child)::after { content: ""; position: absolute; top: 2px; right: 0; width: 1px; height: 41px; background: #ededf0; }
.fc-document-detail-stats strong { overflow: hidden; color: #17171a; font-size: 25px; font-weight: 800; letter-spacing: -.04em; line-height: 1.05; text-overflow: ellipsis; white-space: nowrap; }
.fc-document-detail-stats .is-region strong { font-size: 17px; line-height: 1.25; }
.fc-document-detail-stats span { color: #92929a; font-size: 10px; font-weight: 650; }

.fc-comparison-terminal {
    position: relative;
    min-height: 354px;
    overflow: hidden;
    border: 1px solid #28282e;
    border-radius: 26px;
    background:
        radial-gradient(circle at 76% 28%, rgba(255, 255, 255, .09), transparent 28%),
        #17171a;
    box-shadow: 0 28px 70px rgba(23, 23, 26, .18);
    color: #fff;
    animation: fcDetailRise .8s .08s cubic-bezier(.22, .61, .36, 1) both;
}
.fc-comparison-terminal::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .11) 1px, transparent 1.2px);
    background-size: 23px 23px;
    mask-image: linear-gradient(135deg, #000, transparent 72%);
    opacity: .3;
}
.fc-terminal-head,
.fc-terminal-foot { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; color: #777780; font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.fc-terminal-head { border-bottom: 1px solid rgba(255, 255, 255, .1); padding: 16px 20px; }
.fc-terminal-head span { display: inline-flex; align-items: center; gap: 7px; color: #c7c7cd; }
.fc-terminal-head i { width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(255, 255, 255, .08); }
.fc-terminal-foot { position: absolute; right: 20px; bottom: 16px; left: 20px; }
.fc-terminal-foot b { color: #c7c7cd; }

.fc-terminal-body { position: relative; z-index: 2; display: grid; grid-template-columns: 138px minmax(0, 1fr); gap: 24px; align-items: center; padding: 29px 25px 54px; }
.fc-terminal-document {
    position: relative;
    display: flex;
    width: 138px;
    height: 185px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 9px;
    padding: 16px;
    background: #f8f8fa;
    box-shadow: 14px 16px 0 rgba(255, 255, 255, .045), 0 20px 36px rgba(0, 0, 0, .24);
    color: #17171a;
    transform: rotate(-2deg);
}
.fc-terminal-document::after { content: ""; position: absolute; top: -1px; right: -1px; width: 31px; height: 31px; border-left: 1px solid #dadaDE; border-bottom: 1px solid #dadaDE; background: #ededf0; clip-path: polygon(100% 0, 100% 100%, 0 0); }
.fc-terminal-document img { width: 100%; height: 118px; object-fit: contain; }
.fc-terminal-document strong { font-size: 29px; letter-spacing: -.05em; }
.fc-terminal-document > span { margin: 3px 0 18px; color: #9999a1; font-size: 7px; font-weight: 700; letter-spacing: .13em; }
.fc-terminal-document > i { display: block; width: 100%; height: 3px; margin-bottom: 8px; border-radius: 3px; background: #dadaDE; }
.fc-terminal-document > i:nth-of-type(2) { width: 82%; }
.fc-terminal-document > i:nth-of-type(3) { width: 60%; }
.fc-terminal-document em { position: absolute; right: 12px; bottom: 11px; left: 12px; overflow: hidden; border-top: 1px solid #dadaDE; padding-top: 8px; color: #777780; font-size: 6px; font-style: normal; font-weight: 700; letter-spacing: .08em; text-overflow: ellipsis; white-space: nowrap; }

.fc-terminal-prices { min-width: 0; }
.fc-terminal-price-label { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 21px; }
.fc-terminal-price-label span { color: #92929a; font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.fc-terminal-price-label b { color: #fff; font-size: 18px; letter-spacing: -.03em; }
.fc-terminal-bars { display: grid; gap: 10px; }
.fc-terminal-bars > div { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 8px; align-items: center; }
.fc-terminal-bars span { color: #6f6f77; font-size: 7px; font-weight: 700; }
.fc-terminal-bars i { display: block; height: 7px; border-radius: 2px; background: linear-gradient(90deg, #fff, #7d7d86); box-shadow: 0 0 12px rgba(255, 255, 255, .08); animation: fcDetailBar 1s cubic-bezier(.22, .61, .36, 1) both; transform-origin: left; }
.fc-terminal-bars > div:first-child i { background: repeating-linear-gradient(90deg, #777780 0 5px, transparent 5px 8px); }
.fc-terminal-scale { display: flex; justify-content: space-between; margin: 15px 0 0 28px; color: #66666f; font-size: 7px; font-weight: 650; }

body.page-document .main-content .fc-document-detail-shell {
    width: 100%;
    max-width: 1200px;
    min-width: 0;
    padding-top: 68px;
    padding-bottom: 90px;
    overflow: clip;
}
body.page-document .main-content .fc-document-detail-shell .document-content { min-width: 0; margin: 0; }

body.page-document .main-content .fc-document-detail-shell .offers-section { margin: 0; }
body.page-document .main-content .fc-document-detail-shell .offers-section .section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin: 0 0 26px;
    border-bottom: 1px solid #dadaDE;
    padding: 0 0 22px;
}
.fc-offers-heading { min-width: 270px; }
.fc-offers-heading .fc-detail-section-kicker { margin-bottom: 9px; }
body.page-document .main-content .fc-document-detail-shell .offers-section .section-header h2 { margin: 0; color: #17171a; font-size: clamp(27px, 3vw, 38px); font-weight: 800; letter-spacing: -.045em; line-height: 1.05; }
.fc-offers-heading p { margin: 10px 0 0; color: #85858d; font-size: 12px; }

body.page-document .main-content .fc-document-detail-shell .section-header-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
body.page-document .main-content .fc-document-detail-shell .btn-selection,
body.page-document .main-content .fc-document-detail-shell .btn-download-pdf {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid #17171a !important;
    border-radius: 9px !important;
    padding: 9px 12px !important;
    box-shadow: none !important;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}
body.page-document .main-content .fc-document-detail-shell .btn-selection { background: #17171a; color: #fff; }
body.page-document .main-content .fc-document-detail-shell .btn-download-pdf { background: #fff !important; color: #17171a !important; }
body.page-document .main-content .fc-document-detail-shell .btn-selection-icon { display: none; }
body.page-document .main-content .fc-document-detail-shell .sorting { display: flex; align-items: center; gap: 8px; }
body.page-document .main-content .fc-document-detail-shell .sorting label { color: #85858d; font-size: 10px; font-weight: 650; }
body.page-document .main-content .fc-document-detail-shell .sorting select { min-height: 40px; border: 1px solid #dadaDE; border-radius: 9px; padding: 8px 30px 8px 10px; background: #fff; color: #3f3f46; font: inherit; font-size: 10px; }

body.page-document .main-content .fc-document-detail-shell .offers-list { display: grid; gap: 12px; }
body.page-document .main-content .fc-document-detail-shell .offer-item {
    position: relative;
    display: grid;
    grid-template-columns: 62px 76px minmax(220px, 1fr) minmax(145px, .42fr) minmax(150px, .46fr);
    gap: 18px;
    align-items: center;
    min-width: 0;
    min-height: 158px;
    overflow: hidden;
    border: 1px solid #e1e1e5;
    border-radius: 18px;
    padding: 0 20px 0 0;
    background: #fff;
    box-shadow: 0 9px 30px rgba(23, 23, 26, .035);
    transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
body.page-document .main-content .fc-document-detail-shell .offer-item::before { content: ""; position: absolute; top: 0; left: 0; z-index: 2; width: 100%; height: 3px; background: linear-gradient(90deg, #17171a 0 34%, #a9a9b0 34% 57%, #ededf0 57%); transform: scaleX(.12); transform-origin: left; transition: transform .3s ease; }
body.page-document .main-content .fc-document-detail-shell .offer-item:hover { border-color: #c7c7cd; box-shadow: 0 18px 44px rgba(23, 23, 26, .09); transform: translateY(-3px); }
body.page-document .main-content .fc-document-detail-shell .offer-item:hover::before { transform: scaleX(1); }

.fc-offer-rank { display: flex; align-self: stretch; flex-direction: column; align-items: center; justify-content: center; gap: 5px; border-right: 1px solid #ededf0; background: #fafafb; }
.fc-offer-rank span { color: #17171a; font-size: 14px; font-weight: 800; letter-spacing: .08em; }
.fc-offer-rank small { color: #a0a0a8; font-size: 6px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); }

body.page-document .main-content .fc-document-detail-shell .offer-company-logo { display: flex; width: 76px; height: 76px; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #e5e5e8; border-radius: 14px; padding: 9px; background: #fff; }
body.page-document .main-content .fc-document-detail-shell .offer-company-logo img { width: 100%; height: 100%; object-fit: contain; padding: 0; }
body.page-document .main-content .fc-document-detail-shell .offer-logo-placeholder { display: grid; width: 100%; height: 100%; place-items: center; border-radius: 8px; background: #f1f1f3; color: #686870; font-weight: 800; }
body.page-document .main-content .fc-document-detail-shell .offer-info { min-width: 0; }
body.page-document .main-content .fc-document-detail-shell .offer-company-title { margin: 0 0 7px; }
body.page-document .main-content .fc-document-detail-shell .offer-company-title a { color: #17171a; font-size: 19px; font-weight: 800; letter-spacing: -.03em; text-decoration: none; }
body.page-document .main-content .fc-document-detail-shell .offer-company-title a:hover { color: #4a4a52; text-decoration: none; }
body.page-document .main-content .fc-document-detail-shell .offer-company-rating { color: #777780; font-size: 11px; }
body.page-document .main-content .fc-document-detail-shell .fc-stars { color: #f59e0b; font-size: 12px; letter-spacing: .6px; }
body.page-document .main-content .fc-document-detail-shell .offer-brand-name { margin: 5px 0 0; color: #92929a; font-size: 10px; font-weight: 650; }
body.page-document .main-content .fc-document-detail-shell .offer-company-description { display: -webkit-box; margin: 8px 0 0; overflow: hidden; color: #73737b; font-size: 11px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

body.page-document .main-content .fc-document-detail-shell .offer-price-info { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; }
body.page-document .main-content .fc-document-detail-shell .offer-price-amount { color: #17171a; font-size: 23px; font-weight: 800; letter-spacing: -.04em; line-height: 1.05; }
body.page-document .main-content .fc-document-detail-shell .offer-price-badge { border-radius: 6px; padding: 4px 7px; font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
body.page-document .main-content .fc-document-detail-shell .offer-price-badge.best { border: 1px solid #17171a; background: #17171a !important; color: #fff !important; }
body.page-document .main-content .fc-document-detail-shell .offer-price-badge.good { border: 1px solid #dadaDE; background: #f1f1f3 !important; color: #3f3f46 !important; }

body.page-document .main-content .fc-document-detail-shell .offer-actions-compact { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
body.page-document .main-content .fc-document-detail-shell .offer-actions-compact .btn { display: inline-flex; min-height: 36px; align-items: center; justify-content: center; border: 1px solid #dadaDE; border-radius: 8px; padding: 8px 9px; background: #fff; color: #4a4a52; font-size: 9px; font-weight: 700; text-decoration: none; white-space: nowrap; }
body.page-document .main-content .fc-document-detail-shell .offer-actions-compact .btn-primary { border-color: #17171a; background: #17171a; color: #fff; }
body.page-document .main-content .fc-document-detail-shell .offer-actions-compact .offer-details-btn { grid-column: 1 / -1; }

/* Редакционный паспорт документа */
body.page-document .main-content .fc-document-detail-shell .document-description-html {
    min-width: 0;
    margin: 76px 0 0;
    border-top: 1px solid #dadaDE;
    padding: 68px 0 0;
    overflow: hidden;
}
.fc-document-content-heading { max-width: 900px; margin: 0 auto 28px; }
.fc-document-content-heading .fc-detail-section-kicker { margin-bottom: 9px; }
.fc-document-content-heading h2 { margin: 0; color: #17171a; font-size: clamp(30px, 4vw, 46px); font-weight: 800; letter-spacing: -.045em; line-height: 1.05; }
.fc-document-content-heading p { margin: 12px 0 0; color: #85858d; font-size: 13px; }
body.page-document .main-content .fc-document-detail-shell .document-html-content {
    width: 100%;
    max-width: 980px;
    min-width: 0;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid #e0e0e4;
    border-radius: 24px;
    padding: 54px;
    background: #fff;
    box-shadow: 0 16px 46px rgba(23, 23, 26, .045);
}
body.page-document .main-content .fc-document-detail-shell .document-html-content * { max-width: 100%; box-sizing: border-box; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-content { margin: 0; padding: 0; border: 0; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-hero { margin: 0 0 28px; border: 0; border-radius: 15px; padding: 25px; background: #f4f4f6; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-hero-subtitle { margin: 0 0 6px; color: #55555d; font-size: 14px; line-height: 1.6; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-highlight-box { margin: 28px 0; border: 0; border-radius: 16px; padding: 27px; background: #17171a; color: #d2d2d7; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-highlight-box p,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-highlight-box strong,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-highlight-box span { color: inherit !important; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-section { margin: 0; border-top: 1px solid #e1e1e5; padding: 43px 0; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-section:first-of-type { border-top: 0; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-section-title,
body.page-document .main-content .fc-document-detail-shell .document-html-content h2 { margin: 0 0 20px; color: #17171a; font-size: clamp(24px, 3vw, 34px); font-weight: 780; letter-spacing: -.035em; line-height: 1.16; }
body.page-document .main-content .fc-document-detail-shell .document-html-content h3 { margin: 28px 0 12px; color: #17171a; font-size: 19px; font-weight: 750; letter-spacing: -.02em; }
body.page-document .main-content .fc-document-detail-shell .document-html-content p,
body.page-document .main-content .fc-document-detail-shell .document-html-content li { color: #66666e; font-size: 14px; line-height: 1.76; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-benefits-grid,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-process-steps,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-documents-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-benefit-card,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-process-step,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-document-item { border: 1px solid #e1e1e5; border-radius: 13px; padding: 18px; background: #fafafb; box-shadow: none; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-benefit-card h3,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-process-step h3 { margin-top: 0; font-size: 15px; }
body.page-document .main-content .fc-document-detail-shell .document-html-content table,
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-info-table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
    border-radius: 12px;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}
body.page-document .main-content .fc-document-detail-shell .document-html-content th,
body.page-document .main-content .fc-document-detail-shell .document-html-content td { min-width: 130px; border: 1px solid #e1e1e5; padding: 13px 15px; color: #5e5e66; font-size: 12px; text-align: left; }
body.page-document .main-content .fc-document-detail-shell .document-html-content th { background: #17171a; color: #fff; font-weight: 700; }
body.page-document .main-content .fc-document-detail-shell .document-html-content img { height: auto; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-faq-item { border: 1px solid #e1e1e5; border-radius: 12px; padding: 0 17px; background: #fafafb; }
body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-faq-item summary { padding: 16px 0; color: #17171a; font-size: 14px; font-weight: 700; cursor: pointer; }

body.page-document .main-content .fc-document-detail-shell .ml-header { margin: 46px 0 0; border: 1px solid #dadaDE; border-radius: 15px; padding: 23px; background: #f4f4f6; text-align: left; }
body.page-document .main-content .fc-document-detail-shell .ml-header h2 { margin: 0 0 6px; color: #17171a; font-size: 20px; font-weight: 780; }
body.page-document .main-content .fc-document-detail-shell .ml-header p { color: #777780; font-size: 12px; }

body.page-document .main-content .fc-document-detail-shell .similar-documents {
    margin: 72px 0 0;
    border-top: 1px solid #dadaDE;
    padding: 62px 0 0;
}
body.page-document .main-content .fc-document-detail-shell .similar-documents > .fc-detail-section-kicker { margin-bottom: 9px; }
body.page-document .main-content .fc-document-detail-shell .similar-documents > h2 { margin: 0 0 27px; color: #17171a; font-size: clamp(28px, 3.5vw, 42px); font-weight: 800; letter-spacing: -.045em; }
body.page-document .main-content .fc-document-detail-shell .similar-cards-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 0; }
body.page-document .main-content .fc-document-detail-shell .similar-card { position: relative; overflow: hidden; border: 1px solid #e1e1e5; border-radius: 18px; background: #fff; box-shadow: 0 10px 34px rgba(23, 23, 26, .035); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
body.page-document .main-content .fc-document-detail-shell .similar-card:hover { border-color: #c8c8ce; box-shadow: 0 18px 44px rgba(23, 23, 26, .09); transform: translateY(-4px); }
body.page-document .main-content .fc-document-detail-shell .similar-card-image { height: 155px; border-bottom: 1px solid #ededf0; background: #f5f5f7; }
body.page-document .main-content .fc-document-detail-shell .similar-card-image img { width: 100%; height: 100%; object-fit: contain; }
body.page-document .main-content .fc-document-detail-shell .similar-card-content { padding: 20px; }
body.page-document .main-content .fc-document-detail-shell .similar-card-title { margin: 0 0 14px; }
body.page-document .main-content .fc-document-detail-shell .similar-card-title a { color: #17171a; font-size: 18px; font-weight: 780; letter-spacing: -.025em; text-decoration: none; }
body.page-document .main-content .fc-document-detail-shell .similar-card-stats { display: flex; justify-content: space-between; gap: 10px; }
body.page-document .main-content .fc-document-detail-shell .similar-price-tag { color: #17171a; font-size: 15px; font-weight: 800; }
body.page-document .main-content .fc-document-detail-shell .similar-offers-count { color: #92929a; font-size: 10px; }
body.page-document .main-content .fc-document-detail-shell .similar-btn { display: inline-flex; min-height: 34px; align-items: center; border: 1px solid #17171a; border-radius: 8px; padding: 8px 10px; background: #17171a; color: #fff; font-size: 10px; font-weight: 700; text-decoration: none; }
body.page-document .main-content .fc-document-detail-shell .relevance-badge { border: 1px solid #dadaDE; border-radius: 6px; background: #fff; color: #3f3f46; box-shadow: none; }

body.page-document .main-content .fc-document-detail-shell .related-articles-section { margin: 72px 0 0; border: 1px solid #e1e1e5; border-radius: 20px; padding: 42px; background: #f7f7f9; }
body.page-document .main-content .fc-document-detail-shell .related-articles-section h2 { margin: 0 0 28px; color: #17171a; font-size: 32px; font-weight: 800; letter-spacing: -.04em; text-align: left; }
body.page-document .main-content .fc-document-detail-shell .articles-grid { padding: 0; }
body.page-document .main-content .fc-document-detail-shell .article-card { border: 1px solid #e1e1e5; border-radius: 14px; box-shadow: none; }
body.page-document .main-content .fc-document-detail-shell .article-card:hover { border-color: #c8c8ce; box-shadow: 0 14px 32px rgba(23, 23, 26, .07); }
body.page-document .main-content .fc-document-detail-shell .article-card-title a { color: #17171a; }
body.page-document .main-content .fc-document-detail-shell .article-btn { border-radius: 8px; background: #17171a; color: #fff; }

@keyframes fcDetailRise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fcDetailPulse { 0% { opacity: .8; transform: scale(.7); } 75%, 100% { opacity: 0; transform: scale(1.55); } }
@keyframes fcDetailBar { from { transform: scaleX(0); opacity: .2; } to { transform: scaleX(1); opacity: 1; } }

@media (max-width: 1120px) {
    .fc-document-detail-hero-inner { gap: 40px; }
    body.page-document .main-content .fc-document-detail-shell .offer-item { grid-template-columns: 54px 68px minmax(190px, 1fr) 135px 145px; gap: 13px; padding-right: 15px; }
}

@media (max-width: 900px) {
    .fc-document-detail-hero-inner { grid-template-columns: minmax(0, 1fr); gap: 38px; padding-inline: 24px; }
    body.page-document .main-content .fc-document-detail-hero h1 { font-size: clamp(40px, 6vw, 56px); }
    .fc-comparison-terminal { width: min(100%, 620px); margin-inline: auto; }
    .fc-terminal-body { grid-template-columns: 112px minmax(0, 1fr); gap: 18px; padding-inline: 18px; }
    .fc-terminal-document { width: 112px; height: 164px; padding: 13px; }
    body.page-document .main-content .fc-document-detail-shell .offers-section .section-header { align-items: flex-start; flex-direction: column; }
    body.page-document .main-content .fc-document-detail-shell .section-header-actions { justify-content: flex-start; }
    body.page-document .main-content .fc-document-detail-shell .offer-item {
        grid-template-columns: 54px 70px minmax(0, 1fr) 145px;
        grid-template-areas: "rank logo info price" "rank actions actions actions";
        gap: 13px;
        padding: 16px 16px 16px 0;
    }
    body.page-document .main-content .fc-document-detail-shell .fc-offer-rank { grid-area: rank; }
    body.page-document .main-content .fc-document-detail-shell .offer-company-logo { grid-area: logo; width: 70px; height: 70px; }
    body.page-document .main-content .fc-document-detail-shell .offer-info { grid-area: info; }
    body.page-document .main-content .fc-document-detail-shell .offer-price-info { grid-area: price; }
    body.page-document .main-content .fc-document-detail-shell .offer-actions-compact { grid-area: actions; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    body.page-document .main-content .fc-document-detail-shell .offer-actions-compact .offer-details-btn { grid-column: auto; }
}

@media (max-width: 760px) {
    body.page-document .main-content .fc-document-detail-hero::before { mask-image: none; opacity: .7; }
    body.page-document .main-content .fc-document-detail-hero::after { display: none; }
    .fc-document-detail-hero-inner { min-height: 0; padding-block: 56px 60px; }
    .fc-comparison-terminal { display: none; }
    body.page-document .main-content .fc-document-detail-shell { padding-top: 42px; }
    body.page-document .main-content .fc-document-detail-shell .offer-item {
        grid-template-columns: 52px 68px minmax(0, 1fr);
        grid-template-areas: "rank logo info" "rank price price" "rank actions actions";
    }
    body.page-document .main-content .fc-document-detail-shell .offer-price-info { flex-direction: row; align-items: center; justify-content: space-between; border-top: 1px solid #ededf0; padding-top: 13px; }
    body.page-document .main-content .fc-document-detail-shell .document-html-content { padding: 34px; }
    body.page-document .main-content .fc-document-detail-shell .similar-cards-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
    .fc-document-detail-hero-inner { padding: 43px 24px 48px; }
    .fc-document-detail-eyebrow { margin-bottom: 16px; font-size: 10px; }
    body.page-document .main-content .fc-document-detail-hero h1 { font-size: clamp(37px, 11vw, 47px); }
    .fc-document-detail-lead { margin-top: 21px; font-size: 15px; -webkit-line-clamp: 5; }
    .fc-document-detail-actions { display: grid; grid-template-columns: 1fr; }
    .fc-document-primary-action, .fc-document-secondary-action { width: 100%; }
    .fc-document-detail-stats { grid-template-columns: .65fr 1.15fr 1fr; }
    .fc-document-detail-stats > div { padding: 0 10px; }
    .fc-document-detail-stats strong { font-size: 19px; }
    .fc-document-detail-stats .is-region strong { font-size: 13px; }
    .fc-document-detail-stats span { font-size: 8px; line-height: 1.25; }
    body.page-document .main-content .fc-document-detail-shell { padding-top: 30px; padding-bottom: 60px; }
    body.page-document .main-content .fc-document-detail-shell .offers-section .section-header { gap: 19px; }
    body.page-document .main-content .fc-document-detail-shell .section-header-actions { display: grid; width: 100%; grid-template-columns: 1fr 1fr; }
    body.page-document .main-content .fc-document-detail-shell .sorting { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr; }
    body.page-document .main-content .fc-document-detail-shell .sorting select { width: 100%; }
    body.page-document .main-content .fc-document-detail-shell .offer-item {
        grid-template-columns: 46px 60px minmax(0, 1fr);
        gap: 10px;
        padding: 14px 14px 14px 0;
    }
    body.page-document .main-content .fc-document-detail-shell .offer-company-logo { width: 60px; height: 60px; }
    body.page-document .main-content .fc-document-detail-shell .offer-company-title a { font-size: 17px; }
    body.page-document .main-content .fc-document-detail-shell .offer-company-description { display: none; }
    body.page-document .main-content .fc-document-detail-shell .offer-price-amount { font-size: 21px; }
    body.page-document .main-content .fc-document-detail-shell .offer-actions-compact { grid-template-columns: 1fr 1fr; }
    body.page-document .main-content .fc-document-detail-shell .offer-actions-compact .offer-details-btn { grid-column: 1 / -1; }
    body.page-document .main-content .fc-document-detail-shell .document-description-html { margin-top: 56px; padding-top: 48px; }
    .fc-document-content-heading h2 { font-size: 30px; }
    body.page-document .main-content .fc-document-detail-shell .document-html-content { border-radius: 18px; padding: 22px; }
    body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-benefits-grid,
    body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-process-steps,
    body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-documents-list { grid-template-columns: 1fr; }
    body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-section { padding: 34px 0; }
    body.page-document .main-content .fc-document-detail-shell .document-html-content .seo-section-title,
    body.page-document .main-content .fc-document-detail-shell .document-html-content h2 { font-size: 25px; }
    body.page-document .main-content .fc-document-detail-shell .similar-documents { margin-top: 55px; padding-top: 48px; }
    body.page-document .main-content .fc-document-detail-shell .similar-cards-grid { grid-template-columns: 1fr; }
    body.page-document .main-content .fc-document-detail-shell .related-articles-section { padding: 26px; }
}

@media (prefers-reduced-motion: reduce) {
    .fc-document-detail-copy,
    .fc-comparison-terminal,
    .fc-document-detail-live::after,
    .fc-terminal-bars i { animation: none !important; }
    body.page-document .main-content .fc-document-detail-shell .offer-item,
    body.page-document .main-content .fc-document-detail-shell .similar-card { transition: none; }
}
