/* ============================================================
   Главная (front-page.php) — редизайн v2. Scope .ohm-home.
   Дизайн-остров (deliverable владельца, папка «редизайн/Главная-
   страница-v2»): светлая «канва» (rounded 36px) на тёмном фоне,
   ряды-карточки 340/1fr/300, галерея работ. Встроен в тему через
   get_header()/get_footer(); ГЛОБАЛЬНАЯ шапка и футер сайта НЕ
   трогаются (решение владельца) — своя шапка/футер из макета
   опущены. Шрифт Onest + этот CSS + assets/js/home-v2.js
   подключаются из functions.php по is_front_page().
   Картинки — Медиа-библиотека (attachment ID в шаблоне).
   Верх .ohm-home (первая секция) получает padding-top:92px от темы
   — зазор под плавающую шапку сайта. Санкц. исключение дизайн-
   системы: файл в assets/css/landings/ — авто-игнор линтера.
   ============================================================ */

.ohm-home {
    --dark: #1D1B1A;
    --canvas: #EFECE5;
    --white: #FFFFFF;
    --ink: #171514;
    --pink: #F8BFDC;
    --pink-deep: #F491C6;
    --yellow: #F4C752;
    --lilac: #CDB6EF;
    --lime: #CBDD70;
    --grey-t: #6E6963;
    --r-lg: 26px;
    --r-md: 20px;

    font-family: 'Onest', sans-serif;
    background: var(--dark);
    color: var(--ink);
    padding: 0 22px 26px;   /* top даёт тема (92px под плавающую шапку) */
    overflow-x: hidden;
}
.ohm-home * { margin: 0; padding: 0; box-sizing: border-box; }
.ohm-home img { max-width: 100%; display: block; }
.ohm-home a { color: inherit; text-decoration: none; }
.ohm-home .canvas {
    max-width: 1240px; margin: 0 auto; background: var(--canvas);
    border-radius: 36px; padding: 28px clamp(16px, 4vw, 48px) 40px; overflow: hidden;
}

/* ---------- хлебная крошка ---------- */
.ohm-home .crumb { font-size: 13px; color: var(--grey-t); font-weight: 500; margin: 18px 0 14px; }

/* ---------- ряды-карточки ---------- */
.ohm-home .row3 { display: grid; grid-template-columns: 340px 1fr 300px; gap: 16px; margin-bottom: 16px; }
@media (max-width: 1020px) {
    .ohm-home .row3 { grid-template-columns: 1fr 1fr; }
    .ohm-home .row3 .cost { grid-column: 1 / -1; }
}
@media (max-width: 660px) { .ohm-home .row3 { grid-template-columns: 1fr; } }
.ohm-home .card { border-radius: var(--r-lg); overflow: hidden; position: relative; }
.ohm-home .card-photo { background: var(--white); }
.ohm-home .card-photo img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4/5; }
@media (max-width: 660px) { .ohm-home .card-photo img { aspect-ratio: 4/3; } }
.ohm-home .card-about { padding: 30px 32px; }
.ohm-home .card-about h1,
.ohm-home .card-about h2 { font-size: clamp(24px, 2.6vw, 32px); font-weight: 700; letter-spacing: -.02em; margin-bottom: 14px; color: inherit; }
.ohm-home .card-about .lbl { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 10px; opacity: .75; }
.ohm-home .card-about p { font-size: 14.5px; line-height: 1.65; font-weight: 500; margin-bottom: 10px; }
.ohm-home .card-about ul { list-style: none; margin-top: 4px; }
.ohm-home .card-about li { font-size: 14.5px; line-height: 1.6; font-weight: 500; padding-left: 16px; position: relative; margin-bottom: 6px; }
.ohm-home .card-about li::before { content: "\00B7"; position: absolute; left: 2px; font-weight: 800; }
.ohm-home .bg-pink { background: var(--pink); }
.ohm-home .bg-lilac { background: var(--lilac); }
.ohm-home .bg-lime { background: var(--lime); }
.ohm-home .bg-yellow { background: var(--yellow); }
.ohm-home .bg-white { background: var(--white); }

.ohm-home .cost { background: var(--white); padding: 28px 28px 24px; display: flex; flex-direction: column; }
.ohm-home .cost h3 { font-size: 24px; font-weight: 700; letter-spacing: -.02em; margin-bottom: 16px; }
.ohm-home .cost .line { font-size: 14px; line-height: 1.55; font-weight: 500; margin-bottom: 10px; }
.ohm-home .cost .line b { font-weight: 700; }
.ohm-home .cost .muted { color: var(--grey-t); font-size: 12.5px; }
.ohm-home .cost .actions { margin-top: auto; display: flex; gap: 10px; align-items: center; padding-top: 18px; }
.ohm-home .go { display: inline-flex; align-items: center; justify-content: center; background: var(--ink); color: #fff; font-weight: 600; font-size: 14px; padding: 13px 28px; border-radius: 999px; transition: .2s; }
.ohm-home .go:hover { background: var(--pink-deep); color: var(--ink); }
.ohm-home .circ { width: 44px; height: 44px; border-radius: 50%; background: var(--ink); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 17px; transition: .2s; flex: none; cursor: pointer; }
.ohm-home .circ:hover { background: var(--pink-deep); color: var(--ink); }
.ohm-home .circ.ghost { background: transparent; border: 1.5px solid var(--ink); color: var(--ink); }
.ohm-home .circ.ghost:hover { background: var(--ink); color: #fff; }
.ohm-home .frm { display: inline-block; border: 1.5px solid var(--ink); border-radius: 10px; padding: 1px 9px; font-weight: 600; }

/* ---------- заголовки секций ---------- */
.ohm-home .sec-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 54px 0 22px; }
.ohm-home .sec-head h2 { font-size: clamp(26px, 3.4vw, 40px); font-weight: 600; letter-spacing: -.02em; }
.ohm-home .sec-head .arrows { display: flex; gap: 10px; }

/* ---------- галерея работ ---------- */
.ohm-home .gallery { display: flex; gap: 16px; overflow-x: auto; scroll-behavior: smooth; padding-bottom: 8px; scrollbar-width: none; }
.ohm-home .gallery::-webkit-scrollbar { display: none; }
.ohm-home .g-card { flex: 0 0 300px; background: var(--white); border-radius: var(--r-lg); overflow: hidden; }
.ohm-home .g-card img { width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.ohm-home .g-card .name { padding: 16px 20px; font-weight: 600; font-size: 16px; text-align: center; }
@media (max-width: 660px) { .ohm-home .g-card { flex-basis: 240px; } }

/* ---------- мобилка: боковой отступ тёмной рамки ---------- */
@media (max-width: 700px) { .ohm-home { padding: 0 10px 12px; } }
