:root{
    --max: 1200px;
    --gap: 24px;
    --radius: 16px;

    --bg: #ffffff;
    --bg-soft: #f6f7f9;
    --line: #e9edf2;

    --title: #0f172a;
    --muted: #6b7280;

    /* фирменные оттенки */
    --accent: #c4010c;
    --accent-weak: #fde4e5;
    --accent-line: #e17a7e;

    --shadow: 0 6px 20px rgba(15, 23, 42, .06);
}

/* layout */
.seatv2{}
.seatv2__head{margin:8px 0 18px}
.seatv2__title{margin:0 0 8px; font-size:36px; line-height:1.2; font-weight:800; color:var(--title); letter-spacing:-0.2px}
.seatv2__lead{color:var(--muted)}
.seatv2__grid{display:grid; grid-template-columns:1.22fr 0.78fr; gap:var(--gap)}
@media (max-width:1024px){.seatv2__grid{grid-template-columns:1fr}}
.seatv2__col--left > .card + .card{margin-top:var(--gap)}

.seatv2__col--right{display:flex; flex-direction:column; gap:var(--gap)}
.seatv2__col--right > .card + .card{margin-top:var(--gap)}

/* card */
.card{background:var(--bg); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden}
.card--pad .card__body{padding:18px 16px}
.card__hdr{display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--line); font-weight:700}
.card__hdr--price{gap:12px}
.card__body{padding:14px 16px}
.i{width:16px; height:16px; fill:#9aa3b2; flex:0 0 16px}
.muted{margin-left:auto; color:var(--muted); font-size:13px; font-weight:500; white-space:nowrap}
.badge{display:inline-block; border-radius:999px; padding:6px 12px; font-weight:700; font-size:13px; color:#7c1d1d; background:var(--accent-weak); border:1px solid #fdcece}
.frame-16x9{width:100%; aspect-ratio:16/9; border:0; border-radius:12px; background:var(--bg-soft)}

/* 3D placeholder */
.placeholder-3d{display:grid; gap:8px}
.placeholder-3d__box{height:260px; border-radius:12px; background:linear-gradient(90deg,#f1f5f9,#fff)}
.placeholder-3d__hint{color:var(--muted); font-size:13px}

/* gallery */
.gall__stage{position:relative}
.gall__stage img{width:100%; display:block; border-radius:12px; background:#f7f8fa}
.gall__nav{position:absolute; top:50%; transform:translateY(-50%); width:36px; height:36px; border-radius:10px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow); opacity:.96}
.gall__nav--prev{left:10px}
.gall__nav--next{right:10px}
.gall__thumbs{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin-top:10px}
@media (max-width:768px){.gall__thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}
.gall__thumb{padding:0; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; cursor:pointer}
.gall__thumb img{width:100%; display:block}
.gall__thumb.is-active{outline:2px solid var(--accent)}

/* buttons (локальные быстрые варианты) */
.btn{
    display:inline-flex; justify-content:center; align-items:center; gap:8px;
    min-height:48px; padding:0 18px; border-radius:12px; text-decoration:none; font-weight:700; border:1.5px solid transparent;
}
.btn--accent{background:var(--accent); color:#fff; border-color:var(--accent)}
.btn--outline{background:#fff; color:#7c1d1d; border-color:var(--accent-line); border-width:2px}
.btn--ghost{background:#fff; color:#0f172a; border-color:#dcdfe4}
.btn--sm{min-height:36px; padding:0 14px; font-weight:600; border-radius:10px}

.price__btns{display:grid; gap:10px}
.price__note{margin-top:10px; color:var(--muted); font-size:13px}
.price__call{margin-top:8px}

/* specs */
.specs__list{display:grid; gap:8px}
.specs__row{display:grid; grid-template-columns:1fr auto; gap:16px; padding:6px 0; border-bottom:1px dashed var(--line)}
.specs__row dt{color:#475569}
.specs__row dd{margin:0; font-weight:700}
.specs__row.is-hidden{display:none}
.specs.is-open .specs__row.is-hidden{display:grid}
.specs__toggle{margin-top:10px; background:none; border:0; color:#1f2937; text-decoration:underline; cursor:pointer; font-weight:600}

/* service */
.service__grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px; padding:16px}
.service__item{display:grid; place-items:center; border:1px dashed #e5e7eb; border-radius:12px; padding:16px}
.service__big{font-size:28px; font-weight:700; color: var(--accent)}
.service__text{color:var(--muted)}

/* realized projects */
.rel{display:grid; grid-template-columns:2fr 1fr; gap:16px}
@media (max-width:900px){.rel{grid-template-columns:1fr}}
.rel__img{width:100%; border-radius:12px; display:block; background:#f6f7f9}
.rel__title{margin:10px 0; font-size:18px; font-weight:800}
.rel__badges{display:grid; gap:10px}
.rel-badge{display:flex; gap:10px; align-items:flex-start; border:1px solid var(--line); border-radius:12px; padding:12px; background:#fff}
.rel-badge__ico{font-size:18px}
.rel-badge__title{font-weight:800}
.rel-badge__sub{font-size:13px; color:#6b7280}

/* detail */
.detail{display:grid; gap:12px; padding:18px 16px}
.detail__text{color:#0f172a}
.detail__list{margin:0; padding-left:18px}
.detail__list li{margin:6px 0}

/* misc */
.empty{padding:14px; color:#6b7280}

/* ===========================
   PRICE REQUEST (изолировано)
   =========================== */
.seatv2 .pr-card{
    --pr-radius: 12px;
    --pr-shadow: 0 6px 20px rgba(15,23,42,.06);
    --pr-border: #E9EDF2;

    /* фирменные — синхронизирован градиент */
    --pr-title:  #c4010c;
    --pr-muted:  #6B7280;
    --pr-accent: #d63939;   /* верх */
    --pr-accent-2:#c4010c;  /* низ */
    --pr-accent-line:#e17a7e;
    --pr-tag-line:#e17a7e;
    --pr-tag-text:#7f0006;

    background:#fff;
    border:1px solid var(--pr-border);
    border-radius:16px;
    box-shadow:var(--pr-shadow);
    overflow:hidden;
}

.seatv2 .pr-card__head{
    display:flex; align-items:flex-start; justify-content:space-between;
    padding:18px 16px 12px 16px;
}
.seatv2 .pr-card__title{
    margin:0 0 4px 0;
    font: 800 24px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
    color:var(--pr-title);
    letter-spacing:-0.2px;
}
.seatv2 .pr-card__subtitle{color:var(--pr-muted); font-size:14px}
.seatv2 .pr-card__tag{
    display:inline-block; padding:5px 12px; border:1.5px solid var(--pr-tag-line);
    border-radius:999px; color:var(--pr-tag-text); font-weight:600; white-space:nowrap; margin-left:16px;
}
.seatv2 .pr-card__divider{height:1px; background:var(--pr-border); margin:0 16px;}
.seatv2 .pr-card__body{ padding:14px 16px 18px 16px; }
.seatv2 .pr-card__btns{ display:grid; gap:10px; }

.seatv2 .pr-card__btn{
    position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px;
    min-height:48px; padding:0 18px; border-radius:var(--pr-radius);
    text-decoration:none; font-weight:700; border:2px solid transparent;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
    will-change: transform;
}
.seatv2 .pr-card__ico{ width:16px; height:16px; fill:currentColor; }

.seatv2 .pr-card__btn--primary{
    color:#fff;
    background:linear-gradient(180deg, var(--pr-accent) 0%, var(--pr-accent-2) 100%);
    border-color:var(--pr-accent-2);
    box-shadow:0 3px 8px rgba(196,1,12,.18);
}
.seatv2 .pr-card__btn--primary:hover{
    transform:translateY(-1px);
    box-shadow:0 5px 14px rgba(196,1,12,.22);
}
.seatv2 .pr-card__btn--primary:active{
    transform:translateY(0);
    filter:brightness(.97);
}

.seatv2 .pr-card__btn--outline{
    background:#fff; color:var(--pr-title);
    border-color:var(--pr-accent-line);
}
.seatv2 .pr-card__btn--outline:hover{ background:#fff5f5; }
.seatv2 .pr-card__btn--outline:active{ background:#ffecec; }

@media (max-width: 420px){
    .seatv2 .pr-card__head{ flex-direction:column; gap:8px; }
    .seatv2 .pr-card__tag{ align-self:flex-start; margin-left:0; }
}

/* Zoom */
.gall { position: relative; }
.gall__stage { position: relative; }
.gall__zoom-btn{
    position:absolute; right:12px; top:12px; width:36px; height:36px; border-radius:9999px;
    background:#ffffff; border:1px solid #e5e7eb; box-shadow:0 2px 6px rgba(0,0,0,.06); cursor:pointer;
}
.gall__zoom-btn:before{
    content:""; display:block; width:18px; height:18px; margin:9px auto;
    -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7" stroke="black" stroke-width="2" fill="none"/><line x1="20" y1="20" x2="16.65" y2="16.65" stroke="black" stroke-width="2"/></svg>') no-repeat center / contain;
    mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7" stroke="black" stroke-width="2" fill="none"/><line x1="20" y1="20" x2="16.65" y2="16.65" stroke="black" stroke-width="2"/></svg>') no-repeat center / contain;
    background:#111827;
}
.gall__zoom-btn:hover{ background:#f9fafb; }

/* компактная высота галереи */
.gall--compact { --gall-stage-h: 400px; }
.gall--compact .gall__stage{ height:var(--gall-stage-h); aspect-ratio:auto !important; }
.gall--compact [data-gallery-main]{ width:100%; height:100%; object-fit:contain; }
.gall--compact .gall__zoom-btn{ transform:scale(.9); top:8px; right:8px; }
.gall--compact .gall__nav{ top:50%; transform:translateY(-50%); }

/* 3D viewer */
.pc-3d__viewer { display:block; margin-inline:auto; }
.pc-3d__viewer--compact { max-width:225px; }
/* --- FIX: видимая рамка у outline-кнопки в прайс-блоке --- */
.seatv2 .pr-card__btn--outline,
.seatv2 .pr-card .pc-btn--outline,
.seatv2 .pr-card .btn--outline {
    border-width: 2px !important;
    border-style: solid !important;
    border-color: #e17a7e !important; /* та самая «акцентная» рамка */
    background: #fff;
    color: #c4010c;
    text-decoration: none !important;
}

.seatv2 .pr-card__btn--outline:hover,
.seatv2 .pr-card .pc-btn--outline:hover,
.seatv2 .pr-card .btn--outline:hover {
    background: linear-gradient(180deg, #d63939 0%, #c4010c 100%);
    color: #fff;
    border-color: #c4010c !important;
    box-shadow: 0 2px 8px rgba(196, 1, 12, .16);
}
.image_multiple {
     max-width: 100%!important;
    border: none!important;
}
.color-manager{
    border: 1px #c1bdbd solid;
    border-radius: 8px;
    padding:6px;
}
.color-manager:hover{
    cursor: pointer;
    border: 1px #cc1d1d solid;
}
