/*
Theme Name: RemontLodok
Theme URI: https://remontlodokkr.ru/
Description: Дочерняя тема Astra для лодочной мастерской RemontLodok. Боковая панель слева, крупная вёрстка справа.
Author: Денис Фирсанков
Template: astra
Version: 1.0
Text Domain: remontlodok
*/

/* =========================================================
   Вариант 6. Боковая панель
   Меню, телефон и адрес слева, справа крупная вёрстка
   ========================================================= */

/* Onest переменный: один файл на подмножество, веса от 300 до 900.
   latin-ext нужен ради знака рубля U+20BD, без него ₽ подставляется системным шрифтом. */
@font-face{
  font-family:'Onest';
  src:url(fonts/onest-cyrillic.woff2) format('woff2');
  font-weight:300 900;font-style:normal;font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
  font-family:'Onest';
  src:url(fonts/onest-latin-ext.woff2) format('woff2');
  font-weight:300 900;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Onest';
  src:url(fonts/onest-latin.woff2) format('woff2');
  font-weight:300 900;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --bg:#f8f8f5;
  --paper:#fff;
  --ink:#1a1c17;
  --mute:#646a5c;
  --line:#e2e3db;
  --olive:#434d33;
  --olive2:#36402a;
  --olive3:#4f5a3d;
  --onolive:#ccd4bd;      /* основной текст на оливковом */
  --onolive2:#b4c19c;     /* приглушённый текст на оливковом, контраст 4.6 */
  --sage:#9fb07a;
  /* терракота с обложек роликов Семрек, снята пипеткой с живого файла */
  --terra:#c14f2b;        /* черты, подчёркивания, крупные цифры */
  --terra-ink:#ad4521;    /* мелкий текст: контраст на светлом 5.3 */
  --terra-soft:#e8a079;   /* на оливковом фоне, где тёмная терракота тонет */
  --rail:300px;
  --gut:clamp(24px,4vw,64px);
  --bar:0px;              /* высота липкой шапки, на мобильном переопределяется */
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Onest',-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:700;line-height:1.06;letter-spacing:-0.035em;text-wrap:balance}
h1{font-size:clamp(38px,5.2vw,74px);font-weight:800}
h2{font-size:clamp(27px,3.1vw,42px)}
h3{font-size:21px;letter-spacing:-0.025em}
p{margin:0 0 1em;text-wrap:pretty}
p:last-child{margin-bottom:0}
:focus-visible{outline:3px solid var(--sage);outline-offset:3px}
[tabindex="-1"]:focus{outline:none}

.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--bg);padding:12px 20px;text-decoration:none;font-weight:600}
.skip:focus{left:12px;top:12px}
[id]{scroll-margin-top:calc(var(--bar) + 18px)}

.btn6{display:inline-flex;align-items:center;justify-content:center;padding:15px 28px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:inherit;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;border-radius:2px;transition:background-color .15s,color .15s,border-color .15s}
.btn6:hover{background:var(--olive);border-color:var(--olive)}
.btn6--o{background:transparent;color:var(--ink)}
.btn6--o:hover{background:var(--ink);color:var(--bg)}
.btn6--l{background:var(--bg);color:var(--olive2);border-color:var(--bg)}
.btn6--l:hover{background:var(--sage);border-color:var(--sage);color:var(--olive2)}
.btn6--f{width:100%}

/* ---------- каркас ---------- */

.shell{display:grid;grid-template-columns:var(--rail) minmax(0,1fr)}

.rail{
  position:fixed;top:0;left:0;bottom:0;width:var(--rail);
  background:var(--olive);color:var(--onolive);
  display:flex;flex-direction:column;gap:24px;
  padding:34px 30px 30px;overflow-y:auto;z-index:40;
}
.wm{text-decoration:none;line-height:1.1;flex-shrink:0}
.wm b{display:block;color:#fff;font-size:23px;font-weight:800;letter-spacing:-0.045em}
.wm span{display:block;font-size:13px;color:var(--onolive2);margin-top:4px}

/* телефон стоит сразу под названием, чтобы не уезжал вниз на коротком экране */
.call{flex-shrink:0}
.tel6{display:block;color:#fff;font-size:25px;font-weight:800;letter-spacing:-0.035em;text-decoration:none;white-space:nowrap}
.call small{display:block;font-size:13.5px;color:var(--onolive2);margin:4px 0 14px}

.rnav{flex-shrink:0}
.rnav ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.rnav a{display:block;text-decoration:none;font-size:17px;font-weight:500;color:#e2e8d6;padding:11px 0;border-bottom:1px solid var(--olive3);transition:color .15s}
.rnav li:first-child a,.rnav > a:first-child{border-top:1px solid var(--olive3)}
.rnav a:hover{color:#fff}
.rnav .current-menu-item > a,.rnav .current_page_item > a,.rnav a[aria-current="page"]{color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--sage);padding-left:12px}

.meta{margin-top:auto;font-size:14px;color:var(--onolive2);line-height:1.5;border-top:1px solid var(--olive3);padding-top:16px;flex-shrink:0}
.meta b{display:block;color:#e2e8d6;font-weight:500}
.meta p{margin-bottom:10px}

.main{grid-column:2;min-width:0}
.pad{padding-left:var(--gut);padding-right:var(--gut)}
.bar6{display:none}

/* ---------- первый экран ---------- */

.o1{padding-top:clamp(56px,7vw,96px);padding-bottom:46px}
.o1 h1{max-width:15ch}
.o1 .ld{font-size:21px;color:var(--mute);margin-top:24px;max-width:52ch}
.o1 .ac{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

.shot{margin:0;position:relative}
.shot img{width:100%;height:clamp(300px,46vw,560px);object-fit:cover}
.shot figcaption{font-size:14.5px;color:var(--mute);padding:10px var(--gut) 0}

.nums{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);margin-top:46px}
.nums div{padding:24px 24px 26px 0}
.nums b{display:block;font-size:30px;font-weight:800;letter-spacing:-0.04em;line-height:1}
.nums span{display:block;font-size:15px;color:var(--mute);margin-top:6px;line-height:1.35}

/* ---------- секции ---------- */

.s6{padding-top:clamp(56px,6vw,86px);padding-bottom:clamp(56px,6vw,86px)}
.s6--line{border-bottom:1px solid var(--line)}
.hd6{max-width:60ch;margin-bottom:42px}
.hd6 p{margin-top:14px;color:var(--mute);font-size:18.5px}

/* услуги списком */
.rows{border-top:1px solid var(--line)}
.rows article{
  display:grid;
  grid-template-columns:150px minmax(0,0.85fr) minmax(0,1.15fr);
  grid-template-areas:"th tx ds";
  gap:34px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start;
}
.rows .th{grid-area:th;aspect-ratio:1/1;overflow:hidden;background:var(--line)}
.rows .th img{width:100%;height:100%;object-fit:cover}
.rows .tx{grid-area:tx}
.rows .ds{grid-area:ds}
.rows h3{font-size:26px}
.rows .pc{margin-top:10px;font-size:15px;color:var(--olive);font-weight:600}
.rows .pc b{font-size:25px;font-weight:800;letter-spacing:-0.03em}
.rows p{color:var(--mute);font-size:16.5px}
.rows a.more{display:inline-block;margin-top:8px;padding:11px 0 5px;font-weight:600;font-size:16px;text-decoration:none;box-shadow:inset 0 -2px 0 var(--sage)}
.rows a.more:hover{box-shadow:inset 0 -2px 0 var(--olive);color:var(--olive)}

/* что чиним */
.two6{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
.two6 > div{padding:16px 0;border-bottom:1px solid var(--line)}
.two6 b{display:block;font-size:17.5px;font-weight:600;letter-spacing:-0.015em}
.two6 span{display:block;font-size:15.5px;color:var(--mute);margin-top:2px;line-height:1.45}
.off{margin-top:40px;background:var(--olive);color:var(--onolive);padding:34px 38px}
.off h3{color:#fff;margin-bottom:12px}
.off p{font-size:16.5px;max-width:68ch}

/* шаги */
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.g4 > div{border-top:1px solid var(--ink);padding-top:16px}
.g4 em{font-style:normal;font-size:14px;font-weight:600;color:var(--olive)}
.g4 h3{margin:8px 0 9px;font-size:20px}
.g4 p{font-size:16px;color:var(--mute)}

/* цены */
.tb6{width:100%;border-collapse:collapse;border-top:1px solid var(--line)}
.tb6 td{padding:19px 0;border-bottom:1px solid var(--line);vertical-align:baseline}
.tb6 td:first-child{font-weight:600;font-size:18.5px;letter-spacing:-0.015em}
.tb6 td:first-child span{display:block;font-size:15px;font-weight:400;color:var(--mute);margin-top:2px;letter-spacing:0}
.tb6 td:last-child{text-align:right;white-space:nowrap;font-size:23px;font-weight:800;letter-spacing:-0.035em;font-variant-numeric:tabular-nums;padding-left:20px}
.tb6 .q td:last-child{font-size:16.5px;font-weight:500;color:var(--mute);letter-spacing:0}
.nt{margin-top:36px;display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;border-left:3px solid var(--sage);padding:8px 0 8px 26px}
.nt p{color:var(--mute);max-width:68ch;margin-top:8px}

/* работы */
.ph6{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.ph6 a{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--line)}
.ph6 img{width:100%;height:100%;object-fit:cover}

/* заявка */
.ask6{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:56px;align-items:start}
.ask6--solo{grid-template-columns:minmax(0,720px)}
.ask6 form{display:grid;gap:15px}
.ask6 label{display:block;font-size:14.5px;color:var(--mute);margin-bottom:6px}
.ask6 input,.ask6 textarea{width:100%;border:1px solid var(--ink);background:var(--paper);border-radius:2px;font:inherit;font-size:16.5px;padding:13px 15px;color:var(--ink)}
.ask6 textarea{min-height:116px;resize:vertical}
.ask6 .rr{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.ask6 input[type=file]{border-style:dashed;padding:17px 15px;cursor:pointer;color:var(--mute)}
.ask6 input[type=file]::file-selector-button{background:var(--ink);color:var(--bg);border:0;border-radius:2px;font:inherit;font-size:15px;padding:8px 14px;margin-right:14px;cursor:pointer}
.ask6 small{font-size:13.5px;color:var(--mute)}
.agree{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--mute);cursor:pointer}
.agree input{width:19px;height:19px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--olive)}
.agree a{color:var(--olive)}
.sent{margin:0;padding:14px 18px;background:var(--olive);color:#fff;font-weight:600;font-size:16px}
.box p + p{margin-top:12px}
.box .tb6 + p{margin-top:14px}

.card6{background:var(--olive);color:var(--onolive);padding:32px 34px}
.card6 h3{color:#fff;margin-bottom:18px}
.card6 dl{margin:0;display:grid;gap:16px}
.card6 dt{font-size:14px;color:var(--onolive2)}
.card6 dd{margin:0;font-size:17.5px;font-weight:600;color:#fff}
.card6 dd a{text-decoration:none;white-space:nowrap;display:inline-block;padding:9px 0}
.card6 dd small{display:block;font-size:14.5px;font-weight:400;color:var(--onolive2);margin-top:2px}
.card6 .mp6{margin-top:24px;aspect-ratio:4/3;background:var(--olive2);display:flex;align-items:center;justify-content:center;color:var(--onolive2);font-size:15px;text-align:center;padding:12px}

/* статьи */
.rl{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.rl a{text-decoration:none;display:block}
.rl .im6{aspect-ratio:16/10;min-height:0;overflow:hidden;background:var(--line)}
.rl .im6 img{width:100%;height:100%;object-fit:cover}
.rl em{font-style:normal;display:inline-block;margin-top:14px;font-size:14px;color:var(--olive);font-weight:600}
.rl h3{margin-top:6px;font-size:19.5px;line-height:1.26}
.rl a:hover h3{color:var(--olive)}

/* подвал */
.ft6{border-top:1px solid var(--line);padding-top:40px;padding-bottom:36px;font-size:15.5px;color:var(--mute)}
.ft6 .cc{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
.ft6 .fmark{display:block;color:var(--ink);font-size:19px;font-weight:800;letter-spacing:-0.04em}
.ft6 .fmark + p{margin-top:12px}
/* отдельные кадры просят сдвинуть центр кропа вверх */
.crop-up{object-position:50% 28%}
.ft6 h3{color:var(--ink);font-size:15px;font-weight:600;margin:0 0 14px;letter-spacing:-0.01em}
.ft6 ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ft6 a{text-decoration:none}
.ft6 a:hover{color:var(--ink)}
.ft6 .lw{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 28px}

/* внутренняя страница */
.crumb{font-size:14.5px;color:var(--mute);margin-bottom:16px}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--olive)}
.doc{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;align-items:start}
.txt{max-width:72ch}
.txt h2{margin:48px 0 16px;font-size:clamp(25px,2.6vw,34px)}
.txt h3{margin:30px 0 10px}
.txt > :first-child{margin-top:0}
.txt figure{margin:28px 0}
/* у вертикальных кадров своя ширина, и фото в тексте было уже колонки.
   режем все иллюстрации в одну полосу, как главный кадр страницы */
.txt figure img{width:100%;height:clamp(260px,32vw,440px);object-fit:cover}
.txt figcaption{font-size:14.5px;color:var(--mute);margin-top:8px}
.txt ul{padding-left:0;list-style:none;margin:18px 0;display:grid;gap:10px}
.txt ul li{padding-left:24px;position:relative}
.txt ul li::before{content:'';position:absolute;left:2px;top:12px;width:9px;height:2px;background:var(--sage)}
.txt a{color:var(--olive);text-underline-offset:3px}
.side{position:sticky;top:calc(var(--bar) + 24px);display:grid;gap:18px}
.box{border:1px solid var(--line);background:var(--paper);padding:24px}
.box h2,.box h3{font-size:19px;letter-spacing:-0.02em;margin:0 0 12px}
.box p{font-size:15.5px;color:var(--mute)}
.box .tb6{border-top:0;margin-top:4px}
.box .tb6 td{padding:12px 0;font-size:16.5px}
.box .tb6 td:last-child{font-size:18px}
.box--olive{background:var(--olive);border-color:var(--olive);color:var(--onolive)}
.box--olive h2,.box--olive h3{color:#fff}
.box--olive p{color:var(--onolive2)}
.box--olive .tel6{font-size:23px;margin:4px 0 14px}

.dock6{display:none}

/* ---------- адаптив ---------- */

@media(max-width:1180px){:root{--rail:260px}}

@media(max-width:980px){
  :root{--bar:80px}
  .shell{grid-template-columns:1fr}
  .rail{
    position:sticky;top:0;bottom:auto;width:auto;min-height:var(--bar);
    flex-direction:row;align-items:center;gap:18px;
    padding:14px var(--gut);overflow:visible;
  }
  .meta{display:none}
  .call{margin-left:auto;display:flex;align-items:center;gap:14px}
  .call small{display:none}
  .tel6{font-size:19px}
  .call .btn6{padding:12px 20px;white-space:nowrap}

  .bar6{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #6b7757;background:transparent;cursor:pointer;border-radius:2px;flex-shrink:0}
  .bar6 i{display:block;width:18px;height:2px;background:#e2e8d6;box-shadow:0 -6px 0 #e2e8d6,0 6px 0 #e2e8d6}

  .rnav{
    display:none;
    position:absolute;top:100%;left:0;right:0;
    background:var(--olive);padding:4px var(--gut) 20px;
    box-shadow:0 18px 24px rgba(26,28,23,.18);
  }
  .rail.open .rnav{display:block}
  .rnav a{font-size:18px;padding:13px 0}

  .main{grid-column:1}
  .nums{grid-template-columns:1fr 1fr}
  .rows article{grid-template-columns:120px minmax(0,1fr);grid-template-areas:"th tx" "th ds";gap:10px 24px}
  .two6{grid-template-columns:1fr}
  .g4{grid-template-columns:1fr 1fr}
  .ask6{grid-template-columns:1fr;gap:40px}
  .doc{grid-template-columns:1fr;gap:40px}
  .side{position:static}
  .rl{grid-template-columns:1fr}
  .nt{grid-template-columns:1fr;gap:20px}
}

@media(max-width:760px){
  :root{--bar:66px}
  .rail{padding:11px var(--gut);gap:12px}
  .wm b{font-size:20px}
  .wm span{display:none}
  .tel6{font-size:17px;padding:9px 0}
  .call .btn6{display:none}
  .nums{grid-template-columns:1fr 1fr}
  .rows article{grid-template-columns:1fr;grid-template-areas:"th" "tx" "ds";gap:14px}
  .rows .th{aspect-ratio:16/9}
  .rows h3{font-size:23px}
  .g4{grid-template-columns:1fr}
  .ph6{grid-template-columns:1fr 1fr}
  .ask6 .rr{grid-template-columns:1fr}
  .off{padding:26px 24px}
  .ft6 .cc{grid-template-columns:1fr;gap:26px}
  .ft6{padding-bottom:96px}
  .dock6{display:grid;grid-template-columns:1fr 1fr;gap:1px;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--line);border-top:1px solid var(--ink)}
  .dock6 a{background:var(--paper);text-align:center;padding:15px 8px calc(15px + env(safe-area-inset-bottom));font-weight:600;font-size:16px;text-decoration:none}
  .dock6 a.d{background:var(--ink);color:var(--bg)}
}

@media(max-width:400px){
  .wm b{font-size:18px}
  /* на узких экранах телефон из шапки убираем: он всегда есть в нижней панели,
     иначе название, номер и кнопка меню не влезают в 320px */
  .call .tel6{display:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}

/* =========================================================
   WordPress: содержимое из редактора и форма Contact Form 7
   ========================================================= */

.txt img{max-width:100%;height:auto}
.txt p img{width:100%;height:auto;display:block}
.txt > p:first-child{font-size:18.5px}
.txt iframe,.txt video{max-width:100%}
.txt .ngg-galleryoverview{margin:24px 0}

.ask6 .wpcf7-form{display:grid;gap:15px}
.ask6 .wpcf7-form p{margin:0}
.ask6 .wpcf7-form .wpcf7-response-output{margin:0;padding:14px 18px;border:0;background:var(--olive);color:#fff;font-weight:600;font-size:16px;border-radius:2px}
.ask6 .wpcf7-not-valid-tip{color:#9a2f12;font-size:14px;margin-top:6px}
.ask6 .wpcf7-form input.wpcf7-not-valid,.ask6 .wpcf7-form textarea.wpcf7-not-valid{border-color:#9a2f12}
.ask6 .wpcf7-spinner{margin:0 0 0 12px}
.ask6 .wpcf7-list-item{margin:0}

/* шапка админки не должна прятать боковую панель */
body.admin-bar .rail{top:32px}
@media(max-width:980px){body.admin-bar .rail{top:32px}}
@media(max-width:782px){body.admin-bar .rail{top:46px}}

.ask6 .wpcf7-form textarea{height:116px;min-height:116px}

/* Картинки, вставленные в редакторе: обтекание и центрирование как в WordPress */
.txt img.alignright{float:right;width:42%;margin:4px 0 18px 26px}
.txt img.alignleft{float:left;width:42%;margin:4px 26px 18px 0}
.txt img.aligncenter{margin-left:auto;margin-right:auto}
.txt p{overflow:hidden}
@media(max-width:760px){
  .txt img.alignright,.txt img.alignleft{float:none;width:100%;margin:4px 0 18px}
}

/* Страховка под старое содержимое: на бронировании в тексте остался блок
   с жёсткой шириной 590px от прежней формы, на телефоне он растягивал страницу. */
.txt{min-width:0}
.txt *{max-width:100%}
.txt [style*="590px"]{height:auto}

/* В старом тексте бронирования абзацы выровнены по ширине. В узкой колонке
   без переносов это даёт дыры между словами, выравниваем по левому краю. */
.txt p[style*="justify"],.txt div[style*="justify"]{text-align:left!important}

/* =========================================================
   Остальной сайт: списки статей, старое содержимое страниц
   ========================================================= */

.rl h2,.rl h3{margin-top:6px;font-size:19.5px;line-height:1.26;font-weight:700;letter-spacing:-0.025em}
.rl a:hover h2,.rl a:hover h3{color:var(--olive)}

.pager{margin-top:40px;display:flex;flex-wrap:wrap;gap:8px}
.pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 14px;border:1px solid var(--line);background:var(--paper);text-decoration:none;font-weight:600;border-radius:2px}
.pager .page-numbers:hover{border-color:var(--olive);color:var(--olive)}
.pager .page-numbers.current{background:var(--olive);border-color:var(--olive);color:#fff}

/* Старые страницы: таблицы вёрстки, ролики, блоки с жёсткой шириной */
.txt table{width:100%;max-width:100%;border-collapse:collapse;margin:20px 0;display:block;overflow-x:auto}
.txt table td,.txt table th{padding:10px 14px;border:1px solid var(--line);vertical-align:top;text-align:left}
.txt table[border="0"] td,.txt table[border="0"] th{border:0}
.txt iframe{width:100%;max-width:100%;aspect-ratio:16/9;height:auto;border:0;margin:20px 0}
.txt [align="center"]{text-align:left}
.txt .dropshadowboxes-container,.txt .dropshadowbox{width:auto!important;max-width:100%!important;float:none!important;margin:20px 0!important}
.txt ul,.txt ol{padding-left:0;margin:18px 0}
.txt ol{padding-left:22px}
.txt ul{list-style:none;display:grid;gap:10px}
.txt ul li{padding-left:24px;position:relative}
.txt ul li::before{content:'';position:absolute;left:2px;top:12px;width:9px;height:2px;background:var(--sage)}
.txt ol li{margin-bottom:8px}
.txt strong,.txt b{font-weight:700}
.txt hr{border:0;border-top:1px solid var(--line);margin:28px 0}

/* Ссылки внутри текста страниц должны читаться как ссылки */
.txt a{color:var(--olive);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.txt a:hover{color:var(--ink);text-decoration-thickness:2px}
.txt .rl a,.rl a{text-decoration:none}


/* =========================================================
   Терракотовые штрихи. Только линии, подчёркивания и мелкие
   подписи, площади не красим.
   ========================================================= */

/* короткая черта над заголовком раздела, как на обложках роликов */
.hd6::before,.o1 .crumb + h1::before{
  content:'';display:block;width:44px;height:3px;background:var(--terra);margin-bottom:18px;
}
.o1 .crumb + h1::before{margin-bottom:14px}

/* цена «от» в строке услуги */
.rows .pc{color:var(--terra-ink)}
.rows .pc b{color:var(--terra)}

/* подчёркивания ссылок */
.rows a.more{box-shadow:inset 0 -2px 0 var(--terra)}
.rows a.more:hover{box-shadow:inset 0 -2px 0 var(--terra-ink);color:var(--terra-ink)}
.txt a{color:var(--terra-ink);text-decoration-color:var(--terra)}
.txt a:hover{color:var(--ink);text-decoration-color:var(--ink)}

/* мелкие подписи: шаги, рубрика статьи */
.g4 em,.rl em{color:var(--terra-ink)}
.g4 > div{border-top-color:var(--ink)}
.rl a:hover h2,.rl a:hover h3{color:var(--terra-ink)}

/* врезка с объяснением цены */
.nt{border-left-color:var(--terra)}

/* маркеры списков в тексте */
.txt ul li::before{background:var(--terra)}

/* на оливковой панели тёмная терракота не читается, берём светлый тон */
.rnav .current-menu-item > a,.rnav .current_page_item > a,.rnav a[aria-current="page"]{box-shadow:inset 3px 0 0 var(--terra-soft)}
.btn6--l:hover{background:var(--terra-soft);border-color:var(--terra-soft);color:#3a1a0d}

/* кнопки: основная остаётся тёмной, при наведении терракота */
.btn6:hover{background:var(--terra-ink);border-color:var(--terra-ink)}
.btn6--o:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* страница не найдена и поиск: та же черта */
.pager .page-numbers.current{background:var(--terra-ink);border-color:var(--terra-ink)}

/* если фото не кратно трём, ставим по две в ряд, чтобы не было сироты */
.ph6--2{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.ph6--2{grid-template-columns:1fr 1fr}}
