
html.uframe,
html.uframe body { margin: 0; padding: 0; background: transparent; }
html.uframe body { font-family: 'Commissioner', 'Segoe UI', Arial, sans-serif; color: #1d262c; }
.uframe-page { padding: 8px 20px 24px; }

.uframe-head { max-width: 1200px; margin: 0 auto 28px; padding-top: 16px; font-family: 'Commissioner', 'Segoe UI', Arial, sans-serif; }
.uframe-head__title { margin: 0; font-size: clamp(1.8rem, 3.2vw, 2.6rem); line-height: 1.1; letter-spacing: -.01em; font-weight: 700; color: hsl(358, 85%, 52%); }
.uframe-head__sub { margin: .35em 0 0; padding-bottom: .7em; font-size: 1.1em; font-weight: 600; color: #1d262c; background: linear-gradient(hsl(358, 85%, 52%), hsl(358, 85%, 52%)) left bottom / 56px 3px no-repeat; }
@media (max-width: 600px) { .uframe-page { padding: 4px 14px 20px; } }

.uprod {
    --up-red: hsl(358, 85%, 52%);       /* = --main основного сайту */
    --up-ink: #1d262c;
    --up-soft: #5b656e;
    --up-line: #e3e6ea;
    --up-alt: #f3f4f7;
    --up-font: 'Commissioner', 'Segoe UI', Arial, sans-serif;
    max-width: 1200px;
    margin: 0 auto;
    font-family: var(--up-font);
    color: var(--up-ink);
    font-size: 16px;
    line-height: 1.6;
    -webkit-text-size-adjust: 100%;
}
.uprod *,
.uprod *::before,
.uprod *::after { box-sizing: border-box; }
.uprod a { color: var(--up-red); text-decoration: none; }
.uprod a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Заголовок розділу з червоною рискою ---------- */
.uprod-h {
    margin: 0 0 1.1em;
    padding-bottom: .55em;
    font-family: var(--up-font);
    font-size: 1.4em;
    line-height: 1.25;
    font-weight: 700;
    color: var(--up-ink);
    background: linear-gradient(var(--up-red), var(--up-red)) left bottom / 56px 3px no-repeat;
}


/* ---------- Шапка сторінки продукту (.uprod-hero): сайт і фрейми агентів ----------
   Світла смуга: фото праворуч, плавно переходить у сіре тло, ліворуч H1 (назва продукту), під ним підпис «Страховий продукт».
   На сайті — на всю ширину, у фреймі — картка (html.uframe). Без фото теж працює. */
.uprod-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: #f3f4f7;
    font-family: 'Commissioner', 'Segoe UI', Arial, sans-serif;
}
.uprod-hero__img {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -2;
    display: block;
    width: 64%;
    height: 100%;
    margin: 0;
    object-fit: cover;
    object-position: center;
    background: #dfe3e8 center / cover no-repeat;
}
/* ФОТО БАНЕРА — шлях відносно цього файлу стилів, тому однаковий код працює всюди:
   основний сайт: /wa-data/public/site/themes/vega_extended/img/fon-85.jpg (вже є)
   ahent.ua:      /insurance-product/img/fon-85.jpg
   Нове фото для іншого продукту — новий клас за зразком нижче. */
.uprod-hero__img--fon85 { background-image: url("../img/fon-85.jpg"); }
.uprod-hero__img--fon11 { background-image: url("../img/fon11.jpg"); }
.uprod-hero::before {                   /* перехід фото → світло-сіре тло */
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, #f3f4f7 36%, rgba(243, 244, 247, .88) 46%, rgba(243, 244, 247, .35) 62%, rgba(243, 244, 247, 0) 78%);
}
.uprod-hero::after {                    /* тонка червона лінія знизу */
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, hsl(358, 85%, 52%) 0, hsl(358, 85%, 52%) 120px, #e3e6ea 120px);
}
.uprod-hero__in {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 240px;
    max-width: 50%;
    padding: 36px 0;
}
.uprod-hero__caption {
    display: flex;
    align-items: center;
    gap: .7em;
    margin: .9em 0 0;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #5b656e;
}
.uprod-hero__caption::before { content: ''; width: 28px; height: 2px; background-color: hsl(358, 85%, 52%); }
.uprod-hero__title {
    margin: 0;
    padding: 0;
    font-family: inherit;
    font-size: clamp(1.9rem, 3.4vw, 3rem);
    line-height: 1.08;
    letter-spacing: -.01em;
    font-weight: 800;
    color: #1d262c;
    overflow-wrap: anywhere;
}
.uprod-hero__sub { margin: .55em 0 0; font-size: 1.05rem; line-height: 1.4; font-weight: 600; color: #3b444c; }
.uprod-hero:not(:has(.uprod-hero__img)) .uprod-hero__in { max-width: none; }   /* без фото — назва на всю ширину */
/* у фреймі агентів шапка — картка в межах сторінки агента */
html.uframe .uprod-hero { max-width: 1200px; margin: 0 auto 32px; border-radius: 4px; }
.uframe-hero__box { padding: 0 clamp(20px, 4vw, 40px); }     /* стара розмітка — лишено для сумісності */
.uprod-hero__box { box-sizing: border-box; max-width: 1240px; margin: 0 auto; padding: 0 20px; }       /* основний сайт: рівно з контейнером */
html.uframe .uprod-hero__box { max-width: none; padding: 0 clamp(20px, 4vw, 40px); }
html:not(.uframe) .uprod-hero__sub { display: none; }                         /* назва компанії — лише у фреймі */
html:not(.uframe) .uprod-body { padding: 48px 20px 0; }                       /* основний сайт: відступи документів */
.uprod-page { padding-top: 48px; }      /* відступ від шапки до таблиці */
.uprod-page .uprod { max-width: none; } /* на ширину контейнера теми — рівно з шапкою */

@media (prefers-reduced-motion: no-preference) {
    .uprod-hero__img { animation: uprod-hero-img 1.4s cubic-bezier(.22, .61, .36, 1) both; }
    .uprod-hero__title, .uprod-hero__caption, .uprod-hero__sub { animation: uprod-hero-in .8s cubic-bezier(.22, .61, .36, 1) both; }
    .uprod-hero__caption, .uprod-hero__sub { animation-delay: .1s; }
    .uprod-hero::after { animation: uprod-hero-line 1s .2s cubic-bezier(.2, .7, .2, 1) both; transform-origin: left; }
}
@keyframes uprod-hero-img { from { opacity: 0; transform: scale(1.06); } to { opacity: 1; transform: none; } }
@keyframes uprod-hero-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes uprod-hero-line { from { transform: scaleX(0); } to { transform: none; } }

@media (max-width: 900px) {
    .uprod-hero__img { width: 75%; }
    .uprod-hero::before { background: linear-gradient(90deg, #f3f4f7 30%, rgba(243, 244, 247, .9) 45%, rgba(243, 244, 247, .4) 70%, rgba(243, 244, 247, .1) 100%); }
    .uprod-hero__in { max-width: 62%; min-height: 210px; }
}
@media (max-width: 600px) {             /* телефон: фото зверху, назва під ним */
    .uprod-hero__img { position: relative; width: 100%; height: 170px; }
    .uprod-hero::before { inset: 0 0 auto; height: 170px; background: linear-gradient(180deg, rgba(243, 244, 247, 0) 55%, #f3f4f7 100%); }
    .uprod-hero__in { max-width: none; min-height: 0; padding: 4px 0 28px; }
    .uprod-hero__title { font-size: 1.75rem; }
    .uprod-page { padding-top: 28px; }
    html:not(.uframe) .uprod-body { padding-top: 28px; }
    .uprod-hero__sub { font-size: .95rem; }
    html.uframe .uprod-hero { margin-bottom: 24px; }
}

/* ---------- Акордеон ---------- */
.uprod-acc {
    margin: 0 0 2.4em;
    border: 1px solid var(--up-line);
    border-radius: 4px;
    background-color: #fff;
    overflow: hidden;
    transition: border-color .25s ease, box-shadow .25s ease;
}
.uprod-acc[open] { border-color: transparent; box-shadow: 0 14px 36px rgba(29, 38, 44, .10); }
.uprod-acc__head {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.2em;
    padding: 1.25em 1.5em;
    list-style: none;
    cursor: pointer;
    background-color: var(--up-alt);
    transition: background-color .25s ease;
}
.uprod-acc__head::-webkit-details-marker { display: none; }
.uprod-acc__head::after {               /* червона лінія знизу, що прокреслюється при відкритті */
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: var(--up-red);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .45s cubic-bezier(.2, .7, .2, 1);
}
.uprod-acc[open] > .uprod-acc__head::after { transform: scaleX(1); }
.uprod-acc__head:hover { background-color: #eceef2; }
.uprod-acc__head:focus-visible { outline: 2px solid var(--up-red); outline-offset: -2px; }
.uprod-acc__title { margin: 0; font-family: var(--up-font); font-size: 1.12em; line-height: 1.35; font-weight: 700; color: var(--up-ink); }
.uprod-acc__icon {
    position: relative;
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: var(--up-red);
    transition: transform .3s ease;
}
.uprod-acc__icon::before,
.uprod-acc__icon::after { content: ''; position: absolute; left: 50%; top: 50%; width: 14px; height: 2px; background-color: #fff; transform: translate(-50%, -50%); }
.uprod-acc__icon::after { transform: translate(-50%, -50%) rotate(90deg); }
.uprod-acc[open] .uprod-acc__icon { transform: rotate(45deg); }
.uprod-acc__body { padding: .4em 1.5em 1.5em; animation: uprod-in .4s ease both; }
@keyframes uprod-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

/* ---------- Таблиця: без «вордівської» сітки, тонкі лінії, червоні номери ---------- */
.uprod-table { width: 100%; margin: 0; border-collapse: collapse; font-size: .95em; }
.uprod-table > thead > tr > th {
    padding: 1em .9em .8em;
    border-bottom: 2px solid var(--up-red);
    font-size: .72em;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    text-align: left;
    color: var(--up-soft);
    background: none;
}
.uprod-table > tbody > tr > td,
.uprod-table > tbody > tr > th {
    padding: 1.05em .9em;
    border: 0;
    border-bottom: 1px solid var(--up-line);
    vertical-align: top;
    text-align: left;
    background: none;
}
.uprod-table > tbody > tr { transition: background-color .2s ease; }
.uprod-table > tbody > tr:hover { background-color: #fafbfc; }
.uprod-table > tbody > tr:last-child > td,
.uprod-table > tbody > tr:last-child > th { border-bottom: 0; }
.uprod-table__n { width: 3.5em; text-align: center !important; }
.uprod-table > tbody > tr > td.uprod-table__n { font-family: var(--up-font); font-size: 1.15em; font-weight: 700; color: var(--up-red); }
.uprod-table__k { width: 30%; font-weight: 700; color: var(--up-ink); line-height: 1.45; }
.uprod-table__v { color: #3b444c; line-height: 1.6; }

/* ---------- Документи ---------- */
.uprod-docs { margin: 0 0 2.4em; }
.uprod-docs__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.uprod-docs__grid > :only-child { grid-column: 1 / -1; }
.uprod-doc {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 96px;
    padding: 18px 56px 18px 20px;
    border-radius: 4px;
    background-color: var(--up-alt);
    color: var(--up-ink) !important;
    text-decoration: none !important;
    overflow: hidden;
    transition: background-color .25s ease, box-shadow .25s ease;
}
.uprod-doc::before {                    /* червона лінія знизу при наведенні */
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: var(--up-red);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .45s cubic-bezier(.2, .7, .2, 1);
}
.uprod-doc::after {                     /* стрілка */
    content: '→';
    position: absolute;
    right: 22px;
    top: 50%;
    font-size: 1.3em;
    line-height: 1;
    color: var(--up-red);
    transform: translate(-6px, -50%);
    opacity: .55;
    transition: transform .3s ease, opacity .3s ease;
}
.uprod-doc:hover,
.uprod-doc:focus-visible { background-color: #fff; box-shadow: 0 12px 30px rgba(29, 38, 44, .10); }
.uprod-doc:hover::before,
.uprod-doc:focus-visible::before { transform: scaleX(1); }
.uprod-doc:hover::after,
.uprod-doc:focus-visible::after { transform: translate(0, -50%); opacity: 1; }
.uprod-doc:focus-visible { outline: 2px solid var(--up-red); outline-offset: 2px; }
.uprod-doc__icon { flex-shrink: 0; display: flex; color: var(--up-red); }
.uprod-doc__body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.uprod-doc__name { font-weight: 700; line-height: 1.4; color: var(--up-ink); transition: color .2s ease; }
.uprod-doc:hover .uprod-doc__name { color: var(--up-red); }
.uprod-doc__type { font-size: .72em; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--up-soft); }
.uprod-doc.is-archived .uprod-doc__icon { color: #9aa3ab; }
.uprod-doc.is-archived .uprod-doc__name { font-weight: 600; color: var(--up-soft); }   /* стара позначка — для сумісності */
/* «ДОКУМЕНТ PDF» — завжди по нижньому краю картки (картки в ряду різної висоти) */
.uprod-doc__body { align-self: stretch; }
.uprod-doc__type { margin-top: auto; padding-top: 4px; }

/* ---------- Статус документа: data-status="current" (чинний) / "archive" (архів) ----------
   У розмітці — лише характеристика; позначку і вигляд дає цей файл. */
.uprod-doc[data-status] .uprod-doc__type { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.uprod-doc[data-status] .uprod-doc__type::after {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 2px 9px 2px 8px;
    border-radius: 20px;
    font-size: .95em;
    letter-spacing: .06em;
    line-height: 1.5;
}
.uprod-doc[data-status="current"] .uprod-doc__type::after { content: '✓ Чинний'; background-color: #e7f4ec; color: #1d7044; }
.uprod-doc[data-status="archive"] .uprod-doc__type::after { content: '◷ Втратив чинність'; background-color: #e9ebee; color: #5b656e; }
.uprod-doc[data-status="archive"] .uprod-doc__icon { color: #9aa3ab; }
.uprod-doc[data-status="archive"] .uprod-doc__name { font-weight: 600; color: var(--up-soft); }
.uprod-doc[data-status="archive"]:hover .uprod-doc__name { color: var(--up-red); }



/* ---------- Вкладена таблиця (напр. страхові суми) і примітки ---------- */
.uprod-subtable-wrap { margin: .9em 0; overflow-x: auto; border: 1px solid var(--up-line); border-radius: 4px; -webkit-overflow-scrolling: touch; }
.uprod-subtable { width: 100%; min-width: 560px; margin: 0; border-collapse: collapse; font-size: .88em; line-height: 1.45; }
.uprod-subtable th,
.uprod-subtable td { padding: .7em .8em; border: 0; border-top: 1px solid var(--up-line); border-left: 1px solid var(--up-line); vertical-align: top; text-align: left; background: none; }
.uprod-subtable tr > :first-child { border-left: 0; }
.uprod-subtable thead tr:first-child th { border-top: 0; }
.uprod-subtable thead th { background-color: var(--up-alt); font-weight: 700; color: var(--up-ink); }
.uprod-subtable thead tr:nth-child(2) th:first-child { border-left: 1px solid var(--up-line); }
.uprod-subtable tbody th { font-weight: 700; color: var(--up-ink); }
.uprod-subtable td { color: #3b444c; }
.uprod-subtable tbody th { width: 30%; min-width: 11em; }
.uprod-subtable tbody tr:hover > * { background-color: #fafbfc; }
.uprod-note { margin: .6em 0 0; font-size: .86em; line-height: 1.55; color: var(--up-soft); }

/* ---------- Документи, що втратили чинність: згортання по роках ---------- */
.uprod-arch { margin: 0 0 10px; border: 1px solid var(--up-line); border-radius: 4px; background-color: #fff; }
.uprod-arch__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: .9em 1.2em;
    list-style: none;
    cursor: pointer;
    font-family: var(--up-font);
    font-weight: 700;
    color: var(--up-ink);
    transition: color .2s ease;
}
.uprod-arch__head::-webkit-details-marker { display: none; }
.uprod-arch__head::after {
    content: '';
    flex-shrink: 0;
    width: 9px;
    height: 9px;
    margin-right: 4px;
    border-right: 2px solid var(--up-red);
    border-bottom: 2px solid var(--up-red);
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform .3s ease;
}
.uprod-arch[open] > .uprod-arch__head::after { transform: rotate(-135deg) translate(-2px, -2px); }
.uprod-arch__head:hover { color: var(--up-red); }
.uprod-arch__head:focus-visible { outline: 2px solid var(--up-red); outline-offset: -2px; }
.uprod-arch__year { font-size: 1.05em; }
.uprod-arch > .uprod-docs__grid { padding: 0 1.2em 1.2em; animation: uprod-in .35s ease both; }


/* =====================================================================
   ПЕРЕЛІК СТРАХОВИХ ПРОДУКТІВ, КОРОТКИЙ ПЕРЕЛІК, ЗАГАЛЬНІ УМОВИ (ЗУСП)
   Блоки site.ins_products і site.ins_zusp — однаково на сайті і в агентів.
   ===================================================================== */
.ulist { padding-top: 8px; padding-bottom: 40px; }
html:not(.uframe) .ulist { padding: 48px 20px 56px; }                 /* основний сайт: сторінка без контейнера теми */
html:not(.uframe) .frame__container .ulist { padding: 8px 0 40px; }   /* сторінка всередині контейнера теми (Vega, ahent) */
.ulist--short { padding-top: 0 !important; }
.ulist [hidden] { display: none !important; }

/* ---------- Пошук ---------- */
.ulist__search { position: relative; margin: 0 0 28px; }
.ulist__label { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ulist__icon { position: absolute; left: 18px; top: 28px; display: flex; color: var(--up-soft); transform: translateY(-50%); pointer-events: none; }
.ulist .ulist__input {
    display: block;
    width: 100%;
    height: 56px;
    margin: 0;
    padding: 0 18px 0 52px;
    border: 1px solid var(--up-line);
    border-radius: 8px;
    background-color: #fff;
    box-shadow: none;
    font: inherit;
    font-size: 1rem;
    color: var(--up-ink);
    -webkit-appearance: none;
    appearance: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.ulist .ulist__input::placeholder { color: #8a939b; opacity: 1; }
.ulist .ulist__input:hover { border-color: #cfd4da; }
.ulist .ulist__input:focus { border-color: var(--up-red); outline: none; box-shadow: 0 0 0 3px hsla(358, 85%, 52%, .12); }
.ulist__count { min-height: 1.4em; margin: .55em 0 0; font-size: .85em; color: var(--up-soft); }
.ulist__empty { margin: 0; padding: 28px 20px; border: 1px dashed #cfd4da; border-radius: 4px; text-align: center; color: var(--up-soft); }
.ulist mark { padding: 0 1px; border-radius: 2px; background-color: hsla(358, 85%, 52%, .14); color: inherit; }

/* ---------- Картки продуктів ---------- */
.ulist__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.ulist__grid > li { margin: 0; padding: 0; }
.ulist__grid > li::before { content: none; }
.ulist__card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    height: 100%;
    min-height: 88px;
    padding: 16px 48px 16px 18px;
    border-radius: 4px;
    background-color: var(--up-alt);
    color: var(--up-ink) !important;
    text-decoration: none !important;
    overflow: hidden;
    transition: background-color .25s ease, box-shadow .25s ease;
}
.ulist__card::before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: var(--up-red); transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
.ulist__card::after { content: '→'; position: absolute; right: 18px; top: 50%; font-size: 1.2em; line-height: 1; color: var(--up-red); opacity: .5; transform: translate(-5px, -50%); transition: transform .3s ease, opacity .3s ease; }
.ulist__card:hover,
.ulist__card:focus-visible { background-color: #fff; box-shadow: 0 12px 30px rgba(29, 38, 44, .10); }
.ulist__card:hover::before,
.ulist__card:focus-visible::before { transform: scaleX(1); }
.ulist__card:hover::after,
.ulist__card:focus-visible::after { opacity: 1; transform: translate(0, -50%); }
.ulist__card:focus-visible { outline: 2px solid var(--up-red); outline-offset: 2px; }
.ulist__cap { font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--up-soft); }
.ulist__name { font-family: var(--up-font); font-weight: 700; line-height: 1.35; color: var(--up-ink); overflow-wrap: anywhere; transition: color .2s ease; }
.ulist__card:hover .ulist__name { color: var(--up-red); }

/* ---------- Загальні умови (ЗУСП): групи по продуктах ---------- */
.uzusp__group { padding: 28px 0; border-top: 1px solid var(--up-line); }
.uzusp__group:first-of-type { padding-top: 4px; border-top: 0; }
.uzusp__title { display: flex; flex-direction: column; gap: 4px; margin: 0 0 16px; font-family: var(--up-font); font-size: 1.15em; line-height: 1.3; font-weight: 700; color: var(--up-ink); }
.uzusp__name { overflow-wrap: anywhere; }

@media (max-width: 960px) {
    .ulist__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .ulist__grid { grid-template-columns: 1fr; gap: 10px; }
    .ulist__card { min-height: 0; padding: 14px 44px 14px 16px; }
    .ulist__card::after { right: 14px; }
    .ulist .ulist__input { height: 52px; font-size: 16px; }   /* 16px — iPhone не збільшує сторінку */
    .ulist__icon { top: 26px; }
    .uzusp__group { padding: 22px 0; }
}
@media (prefers-reduced-motion: reduce) {
    .ulist__card, .ulist__card::before, .ulist__card::after, .ulist .ulist__input { transition: none; }
}

/* ---------- Телефон: таблиця стає картками, без горизонтальної прокрутки ---------- */
@media (max-width: 720px) {
    .uprod-acc__head { padding: 1em 1.1em; }
    .uprod-acc__title { font-size: 1em; }
    .uprod-acc__body { padding: .2em .9em 1em; }
    .uprod-table > thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    .uprod-table,
    .uprod-table > tbody,
    .uprod-table > tbody > tr,
    .uprod-table > tbody > tr > td,
    .uprod-table > tbody > tr > th { display: block; width: auto; }
    .uprod-table > tbody > tr { position: relative; padding: 1.1em 0 1.1em 2.6em; border-bottom: 1px solid var(--up-line); }
    .uprod-table > tbody > tr:last-child { border-bottom: 0; }
    .uprod-table > tbody > tr > td,
    .uprod-table > tbody > tr > th { padding: 0; border: 0; }
    .uprod-table > tbody > tr > td.uprod-table__n { position: absolute; left: 0; top: 1.05em; width: auto; text-align: left !important; }
    .uprod-table__k { margin-bottom: .4em; }
    .uprod-docs__grid { grid-template-columns: 1fr; }
    .uprod-doc { padding: 16px 48px 16px 16px; gap: 14px; }
    .uprod-doc::after { right: 16px; }
    .uprod-arch > .uprod-docs__grid { padding: 0 .8em .8em; }
}
@media (prefers-reduced-motion: reduce) {
    .uprod-acc__body, .uprod-arch > .uprod-docs__grid { animation: none; }
    .uprod-acc, .uprod-acc__head, .uprod-acc__head::after, .uprod-acc__icon, .uprod-doc, .uprod-doc::before, .uprod-doc::after { transition: none; }
}

/* =====================================================================
   ЗАХИСТ ВІД ТИПОГРАФІКИ ТЕМИ
   Vega/ahent у вмісті сторінки (.page-one__content) задають усім h1–h6, p, ul
   відступ 30px і великі розміри шрифту. Тут — ті самі значення, що вище,
   але з вищою вагою селектора, щоб тема їх не перебивала.
   ===================================================================== */
.uprod-hero .uprod-hero__title { margin: 0; font-size: clamp(1.9rem, 3.4vw, 3rem); line-height: 1.08; }
.uprod-hero .uprod-hero__caption { margin: .9em 0 0; line-height: 1.4; }
.uprod-hero .uprod-hero__sub { margin: .55em 0 0; line-height: 1.4; }
.uprod .uprod-h { margin: 0 0 1.1em; font-size: 1.4em; line-height: 1.25; }
.uprod .uprod-acc__title { margin: 0; font-size: 1.12em; line-height: 1.35; }
.uprod .uzusp__title { margin: 0 0 16px; font-size: 1.15em; line-height: 1.3; }
.uprod .ulist__grid { margin: 0; padding: 0; }
.uprod .ulist__count { margin: .55em 0 0; line-height: 1.4; }
.uprod .ulist__empty { margin: 0; }
.uprod .uprod-note { margin: .6em 0 0; line-height: 1.55; }
.uprod .uprod-table__v p,
.uprod .uprod-table__v ul,
.uprod .uprod-table__v ol { margin: 0 0 .6em; line-height: 1.6; }
.uprod .uprod-table__v > :last-child { margin-bottom: 0; }
.uprod .uprod-table { margin: 0; }

/* Сторінка продукту всередині контейнера теми (основний сайт): шапка — картка */
.frame__container .uprod-hero { border-radius: 4px; }
html:not(.uframe) .frame__container .uprod-hero__box { max-width: none; padding: 0 clamp(24px, 4vw, 48px); }
html:not(.uframe) .frame__container .uprod-body { padding: 40px 0 0; max-width: none; }
@media (max-width: 720px) {
    .uprod .uprod-acc__title { font-size: 1em; }
}
@media (max-width: 600px) {
    .uprod-hero .uprod-hero__title { font-size: 1.75rem; }
    html:not(.uframe) .frame__container .uprod-hero__box { padding: 0 20px; }
    html:not(.uframe) .frame__container .uprod-body { padding-top: 28px; }
}

@media print {
    .uprod-acc__body { display: block; }
    .uprod-doc::after { content: none; }
}