/* =========================================================================
   doctor-tomas.ru — основной файл стилей сайта (дочерняя тема Impreza-child)

   Раньше эти правила жили инлайном: в шапке (us_header), в подвале и в блоке
   «Контакты» (us_page_block). Теперь это один кэшируемый файл.
   Подключается из functions.php в самом конце <head> — после стилей темы и
   Theme Options, то есть в том же месте каскада, где раньше стоял инлайн.

   Правьте этот файл напрямую. Номер версии в URL берётся из даты файла.
   ========================================================================= */

/* ---- Переменные, фон страницы, служебное ---- */
:root{--dta:#e2b8a2;--dtal:#f3d5c5;--dtg:#d4af37;--dtm:#a3a3a3;--dts:#e0e0e0;--dte:cubic-bezier(.22,.61,.36,1)}
html{background:#05010a;scroll-padding-top:96px}
body,.l-canvas,.l-main,.l-section,.l-footer{background:transparent!important}
.w-toplink{display:none!important}
body.dt-lock{overflow:hidden}

/* ---- Фоновое свечение (.dt-amb) ---- */
.dt-amb{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#05010a}
.dt-amb i{position:absolute;border-radius:50%;filter:blur(80px) saturate(1.3);will-change:transform;translate:0 calc(var(--sy,0)*var(--k,-.05)*1px)}
.dt-amb i:nth-child(1){--k:-.06;width:72vmax;height:72vmax;left:-24vmax;top:-30vmax;background:radial-gradient(circle,rgba(224,169,149,.34),rgba(224,169,149,.15) 38%,transparent 68%);animation:dta1 32s ease-in-out infinite alternate}
.dt-amb i:nth-child(2){--k:.05;width:58vmax;height:58vmax;right:-22vmax;top:8vmax;background:radial-gradient(circle,rgba(138,90,68,.42),rgba(138,90,68,.2) 40%,transparent 68%);animation:dta2 38s ease-in-out infinite alternate}
.dt-amb i:nth-child(3){--k:-.03;width:46vmax;height:46vmax;left:22vw;bottom:-26vmax;background:radial-gradient(circle,rgba(212,175,55,.22),rgba(212,175,55,.12) 40%,transparent 68%);animation:dta3 44s ease-in-out infinite alternate}
.dt-amb i:nth-child(4){--k:.08;width:36vmax;height:36vmax;left:-10vmax;top:55vh;background:radial-gradient(circle,rgba(224,169,149,.22),transparent 66%);animation:dta2 50s ease-in-out infinite alternate-reverse}
@keyframes dta1{to{transform:translate3d(9vmax,6vmax,0) scale(1.12)}}
@keyframes dta2{from{transform:scale(1.05)}to{transform:translate3d(-8vmax,7vmax,0) scale(.92)}}
@keyframes dta3{from{transform:scale(.95)}to{transform:translate3d(7vmax,-6vmax,0) scale(1.1)}}

/* ---- Типографские утилиты (eyebrow, lead, tag…) ---- */
.dt-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:var(--dta);font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.dt-eyebrow:before{content:"";width:32px;height:1px;background:linear-gradient(90deg,transparent,var(--dta))}
.dt-c{text-align:center}.dt-c .dt-eyebrow,.dt-eyebrow.dt-c{justify-content:center}
.dt-lead{font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.7;color:var(--dtm)}
.dt-lead.dt-soft{color:var(--dts)}
.dt-muted{color:var(--dtm)}
.dt-tag{display:block;margin-bottom:8px;color:var(--dta);font-size:.74rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.dt-arrow{color:var(--dta);font-size:.86rem;font-weight:600;letter-spacing:.06em}
.dt-arrow .w-text-h{display:inline-flex;align-items:center;gap:10px;transition:gap .3s}
.dt-svc:hover .dt-arrow .w-text-h{gap:16px}
.dt-grp-title{margin:0 0 20px;color:var(--dtm);font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}

/* ---- Секции hero / top ---- */
.l-section.dt-hero{padding-top:150px!important;padding-bottom:clamp(48px,7vw,96px)!important}
.l-section.dt-top{padding-top:150px!important;padding-bottom:20px!important}

/* ---- Стеклянные колонки и свечение ---- */
.dt-glass>.vc_column-inner{position:relative;height:100%;padding:clamp(24px,3vw,40px);background:rgba(255,255,255,.03);backdrop-filter:blur(16px) saturate(120%) brightness(.85);-webkit-backdrop-filter:blur(16px) saturate(120%) brightness(.85);border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,.3);transition:box-shadow .35s,border-color .35s}
.dt-glass-h>.vc_column-inner{background-image:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),rgba(226,184,162,.11),transparent 70%);background-repeat:no-repeat}
.dt-glass-h:hover>.vc_column-inner{border-color:rgba(226,184,162,.22);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 -2px 0 rgba(226,184,162,.55),0 12px 40px rgba(226,184,162,.08)}
.dt-glass.dt-sm>.vc_column-inner{padding:28px;border-radius:20px}
.dt-glow>.vc_column-inner{position:relative;isolation:isolate}
.dt-glow>.vc_column-inner:before{content:"";position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,rgba(224,169,149,.38),rgba(138,90,68,.2) 45%,transparent 70%);filter:blur(80px);z-index:-1;pointer-events:none}

/* ---- Изображения и карточки услуг ---- */
.dt-arch .w-image-h,.dt-frame .w-image-h{display:block;width:100%;overflow:hidden;border:1px solid rgba(226,184,162,.22);box-shadow:0 0 60px rgba(226,184,162,.16),0 8px 32px rgba(0,0,0,.3)}
.dt-arch .w-image-h{aspect-ratio:1/2;border-radius:999px 999px 24px 24px}
.dt-frame .w-image-h{aspect-ratio:2/3;border-radius:24px}
.dt-frame45 .w-image-h{aspect-ratio:4/5}
.dt-arch img,.dt-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 14%}
.dt-svcimg .w-image-h{display:block;overflow:hidden;aspect-ratio:4/5;border-radius:16px}
.dt-svcimg img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--dte)}
.dt-svc:hover .dt-svcimg img{transform:scale(1.06)}
.dt-svc{position:relative}
.dt-svc:before{content:"";position:absolute;inset:-6%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(226,184,162,.5),rgba(138,90,68,.28) 55%,transparent);filter:blur(36px);opacity:.2;transition:opacity .5s}
.dt-svc:hover:before{opacity:.8}

/* ---- Крупные цифры ---- */
.dt-num{font-family:"Cormorant Garamond",serif;font-size:clamp(2.4rem,4vw,3.4rem);line-height:1;margin:0 0 6px}
.dt-opn{font-family:"Cormorant Garamond",serif;font-size:clamp(3rem,6vw,5rem);line-height:1;color:rgba(226,184,162,.35);margin:0 0 8px}

/* ---- Появление при прокрутке (.dt-rv) ---- */
.dt-rv{}
.dt-js .dt-rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--dte),transform .8s var(--dte)}
.dt-js .dt-rv.is-in{opacity:1;transform:none}

/* ---- Цитата и таблицы ---- */
.dt-pull{position:relative;margin:48px 0;padding:32px 0 32px clamp(24px,4vw,44px);border-left:1px solid rgba(226,184,162,.5)}
.dt-pull:before{content:"\201C";position:absolute;top:-20px;left:clamp(20px,3.4vw,40px);color:rgba(226,184,162,.28);font-family:"Cormorant Garamond",serif;font-size:7rem;line-height:1}
.dt-pull p{max-width:24ch;margin:0;font-family:"Cormorant Garamond",serif;font-size:clamp(1.7rem,3.2vw,2.6rem);font-style:italic;line-height:1.2;color:#f5f5f5}
.dt-pull cite{display:block;margin-top:18px;color:var(--dtm);font-size:.82rem;font-style:normal;letter-spacing:.14em;text-transform:uppercase}
.dt-table{overflow-x:auto;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:rgba(255,255,255,.03);backdrop-filter:blur(16px);box-shadow:0 8px 32px rgba(0,0,0,.3)}
.dt-table table{width:100%;min-width:720px;border-collapse:collapse;border:0}
.dt-table th,.dt-table td{padding:20px 24px;text-align:left;vertical-align:top;border:0;border-bottom:1px solid rgba(255,255,255,.07);font-size:.94rem;line-height:1.6;color:var(--dts);background:none}
.dt-table thead th{font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:500;color:#f5f5f5;line-height:1.2}
.dt-table thead th span{display:block;margin-top:4px;color:var(--dta);font:600 .72rem Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.dt-table tbody th{width:20%;color:var(--dta);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.dt-table tr:last-child th,.dt-table tr:last-child td{border-bottom:0}

/* ---- Аккордеон (.dt-acc) ---- */
.dt-acc.w-tabs .w-tabs-section{margin:0 0 12px;background:rgba(255,255,255,.03);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08)!important;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.3);overflow:hidden;transition:border-color .35s}
.dt-acc.w-tabs .w-tabs-section.active{border-color:rgba(226,184,162,.28)!important}
.dt-acc.w-tabs .w-tabs-section-header{padding:22px 26px}
.dt-acc.w-tabs .w-tabs-section-title{font:600 1.05rem/1.4 Manrope,sans-serif;color:#f5f5f5}
.dt-acc.w-tabs .w-tabs-section-control{color:var(--dta)}
.dt-acc.w-tabs .w-tabs-section-content-h{padding:0 26px 26px;color:var(--dts)}
.dt-acc.dt-mini.w-tabs .w-tabs-section{background:none;box-shadow:none;border:0!important;border-top:1px solid rgba(255,255,255,.08)!important;border-radius:0;margin:20px 0 0}
.dt-acc.dt-mini.w-tabs .w-tabs-section-header{padding:16px 0 0}
.dt-acc.dt-mini.w-tabs .w-tabs-section-title{color:var(--dta);font-size:.86rem;letter-spacing:.06em}
.dt-acc.dt-mini.w-tabs .w-tabs-section-content-h{padding:16px 0 0}

/* ---- Таймлайн (.dt-tl) ---- */
.dt-tl .w-timeline-section-content{padding:24px 28px;background:rgba(255,255,255,.03);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:20px;transition:border-color .35s,box-shadow .35s}
.dt-tl .w-timeline-section-content:hover{border-color:rgba(226,184,162,.22);box-shadow:inset 0 -2px 0 rgba(226,184,162,.55)}
.dt-tl .w-timeline-section-content p{color:var(--dtm);font-size:.95rem}
.dt-tl .w-timeline-section.is-in .w-timeline-section-marker{background:var(--dta)!important;border-color:var(--dta)!important;box-shadow:0 0 16px 3px rgba(226,184,162,.6)}
.dt-tl .w-timeline-section-marker{transition:all .6s var(--dte)}

/* ---- Кнопки, выпадающее меню, шапка ---- */
.w-btn.us-btn-style_1{will-change:transform,box-shadow;animation:dtglow 3.6s ease-in-out infinite}
.w-btn.us-btn-style_1:hover{transform:translateY(-2px);animation:none}
@keyframes dtglow{0%,100%{box-shadow:0 0 15px rgba(226,184,162,.2),inset 0 0 18px rgba(226,184,162,.08)}50%{box-shadow:0 0 26px rgba(226,184,162,.38),0 0 48px rgba(212,175,55,.12),inset 0 0 18px rgba(226,184,162,.12)}}
.w-nav.type_desktop .w-nav-list.level_2{background:rgba(14,11,18,.9)!important;backdrop-filter:blur(16px) saturate(120%);border:1px solid rgba(255,255,255,.08);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.3)!important;padding:10px;min-width:310px}
.w-nav.type_desktop .w-nav-list.level_2 .w-nav-anchor{border-radius:10px}
.w-nav.type_desktop .w-nav-list.level_2 .w-nav-anchor:hover{background:rgba(226,184,162,.09)!important}
.l-header:not(.bg_transparent) .l-subheader.at_middle{backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.3)}

/* ---- Панель «Рассчитать цену» (.dt-bot) и плавающая кнопка (.dt-fab) ---- */
.dt-bot{position:fixed;inset:0;z-index:100000;visibility:hidden;transition:visibility .4s}
.dt-bot.is-open{visibility:visible}
.dt-bot__ov{position:absolute;inset:0;background:rgba(0,0,0,.6);opacity:0;transition:opacity .4s}
.dt-bot.is-open .dt-bot__ov{opacity:1}
.dt-bot__panel{position:absolute;inset:0 0 0 auto;width:min(100%,440px);padding:36px 32px;overflow-y:auto;background:rgba(12,9,16,.95);border-left:1px solid rgba(255,255,255,.08);color:var(--dts);transform:translateX(100%);transition:transform .45s var(--dte)}
.dt-bot.is-open .dt-bot__panel{transform:none}
.dt-bot__x{position:absolute;top:20px;right:20px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:none;color:#f5f5f5;font-size:1.5rem;line-height:1;cursor:pointer;transition:.25s}
.dt-bot__x:hover{color:var(--dta);border-color:rgba(226,184,162,.5)}
.dt-bot__t{margin:28px 0 14px;font:500 clamp(1.5rem,2.2vw,2rem)/1.15 "Cormorant Garamond",serif;color:#f5f5f5}
.dt-bot__list{display:grid;gap:12px;margin:28px 0 24px}
.dt-bot__c{display:flex;align-items:center;gap:16px;width:100%;padding:18px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#f5f5f5;font:600 1rem Manrope,sans-serif;text-align:left;text-decoration:none;cursor:pointer;transition:.3s}
.dt-bot__c:hover{border-color:rgba(226,184,162,.3);box-shadow:inset 0 -2px 0 rgba(226,184,162,.55);color:#fff}
.dt-bot__c svg{width:28px;height:28px;flex:none;fill:none;stroke:var(--dta);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.dt-bot__c small{display:block;color:var(--dtm);font-weight:400;font-size:.82rem}
.dt-bot__web{padding:18px 20px;border:1px dashed rgba(226,184,162,.4);border-radius:16px;color:var(--dtm);font-size:.9rem}
.dt-fab{position:fixed;right:16px;bottom:16px;z-index:9000;display:none;padding:16px 26px;border-radius:999px;border:1px solid rgba(226,184,162,.6);background:rgba(14,10,18,.88);backdrop-filter:blur(12px);color:#f7e8de;font:600 .86rem/1.2 Manrope,sans-serif;letter-spacing:.06em;cursor:pointer;animation:dtglow 3.6s ease-in-out infinite}
@media(max-width:1024px){.dt-fab{display:block}}

/* ---- Уменьшенное движение ---- */
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.dt-js .dt-rv{opacity:1;transform:none}}

/* ---- Контакты: список и карта ---- */
.dt-meta{margin:28px 0}
.dt-meta .wpb_wrapper>div{display:flex;gap:16px;margin:0 0 20px}
.dt-meta i{margin-top:5px;color:var(--dta);width:22px;text-align:center;flex:none}
.dt-meta small{display:block;margin-bottom:2px;color:var(--dtm);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
.dt-meta a{transition:color .25s}
.dt-meta a:hover{color:var(--dta)}
.dt-meta .dt-muted{font-size:.88rem}
.dt-map{position:relative;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.3);background:#0c0a10}
.dt-map .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.95) saturate(.45)}
.dt-map:after{content:"";position:absolute;inset:0;background:rgba(138,90,68,.12);mix-blend-mode:color;pointer-events:none;z-index:500}
.dt-map .leaflet-marker-icon{filter:drop-shadow(0 0 12px rgba(226,184,162,.95));animation:dtpin 2.6s ease-in-out infinite}
@keyframes dtpin{50%{filter:drop-shadow(0 0 22px rgba(226,184,162,1))}}
.dt-map .leaflet-control-attribution{background:rgba(5,1,10,.7)!important;color:#a3a3a3!important}
.dt-map .leaflet-control-attribution a{color:#e2b8a2!important}

/* ---- Компоненты: карточки, градиентный текст, центровка, отступы секций ---- */
.dt-card{position:relative;background:rgba(255,255,255,.03);backdrop-filter:blur(16px) saturate(120%) brightness(.85);-webkit-backdrop-filter:blur(16px) saturate(120%) brightness(.85);border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,.3);padding:clamp(24px,3vw,40px);transition:box-shadow .35s,border-color .35s}
.dt-card.dt-glass-h{background-image:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),rgba(226,184,162,.11),transparent 70%);background-repeat:no-repeat}
.dt-card.dt-glass-h:hover{border-color:rgba(226,184,162,.22);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 -2px 0 rgba(226,184,162,.55),0 12px 40px rgba(226,184,162,.08)}
.dt-card.dt-sm{padding:28px;border-radius:20px}
.dt-card .w-iconbox-title{margin-top:6px}
.dt-grad .w-text-value{background:linear-gradient(115deg,#f5f5f5 0%,#f0d2c2 38%,#e2b8a2 62%,#d4af37 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.dt-c,.dt-c .w-text,.dt-c .w-highlight-heading{text-align:center}
.dt-c .dt-eyebrow{justify-content:center}
.dt-c .w-btn-wrapper{justify-content:center}
.l-section.dt-nb{padding-bottom:0!important}
.l-section.dt-nt{padding-top:0!important}
.dt-nt>.l-section-h>.g-cols{margin-top:clamp(28px,4vw,52px)}
.dt-eq .wpb_column>.vc_column-inner{height:100%;display:flex;flex-direction:column}
.dt-eq .dt-card{flex:1}

/* ---- Подвал сайта ---- */
.dt-footer{background:linear-gradient(180deg,transparent,rgba(5,1,10,.8));border-top:1px solid rgba(255,255,255,.07)}
.dt-footer h6{color:var(--dtm);margin-bottom:18px}
.dt-fnav a{color:var(--dts)!important;transition:color .25s}
.dt-fnav a:hover{color:var(--dta)!important}
.dt-fc address{display:grid;gap:10px;font-style:normal;color:var(--dts)}
.dt-fc a{color:var(--dts);transition:color .25s}
.dt-fc a:hover{color:var(--dta)}
.dt-fc a span{color:var(--dtm)}
.dt-legal{font-size:.82rem;line-height:1.6;color:var(--dtm)}
.dt-legal a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.25)}
.dt-legal a:hover{color:var(--dta)}
.dt-footer-b>.l-section-h>.g-cols{border-top:1px solid rgba(255,255,255,.07);padding-top:32px}
.dt-fl img{opacity:.5;transition:opacity .3s;height:auto}
.dt-fl:hover img{opacity:.85}
.dt-dev{color:var(--dtm);font-size:.72rem;letter-spacing:.08em}

/* ---- Служебные ряды (раньше в них жил инлайновый <style>) ---- */
.l-section.dt-css-row{padding:0!important;height:0;overflow:hidden}

/* ---- Услуги, хлебные крошки, врезки, списки, адаптив ---- */
.dt-svccard>.vc_column-inner{padding:14px 14px 28px}
.dt-svcbody{padding:18px 12px 0}
.dt-svcbody p{margin:0;color:var(--dts);font-size:.92rem;line-height:1.55}
.dt-num-s{color:var(--dta);font-size:.8rem;font-weight:600;letter-spacing:.22em}
/* Узкая колонка с FAQ. Ширину задаём с селектором не слабее правила Impreza `.g-cols.via_grid>.vc_column_container{width:auto}`:
   иначе колонка в grid-сетке с auto-отступами сжималась по содержимому (закрытый аккордеон — 753px, раскрытый — 900px) */
.dt-narrow,.g-cols.via_grid>.vc_column_container.dt-narrow{width:100%;max-width:900px;margin-left:auto;margin-right:auto}
.dt-note{font-size:.8rem;color:var(--dtm)}
.dt-fact p,.dt-fact .w-text{margin:0}
.dt-fact-t{color:var(--dtm);font-size:.92rem;line-height:1.5}
.dt-offer h2{margin-bottom:24px}
.dt-offer p{color:var(--dts)}
.dt-hbtns{margin-top:8px}
.dt-c .w-hwrapper{justify-content:center}
.dt-svcgrid .w-grid-item-h{border-radius:20px}
.l-section.dt-nt0{padding-top:0!important}
.dt-fact-big{font-family:"Cormorant Garamond",serif;font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.08;margin:0 0 24px}
.dt-stack .dt-card{margin-bottom:16px}
.dt-stack .dt-card:last-child{margin-bottom:0}
.dt-svc>.vc_column-inner{position:relative;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;padding:28px 26px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 8px 32px rgba(0,0,0,.3);transition:border-color .35s,box-shadow .35s}
.dt-svc:hover>.vc_column-inner{border-color:rgba(226,184,162,.3)}
.dt-svc>.vc_column-inner:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,1,10,0) 25%,rgba(5,1,10,.55) 60%,rgba(5,1,10,.94));z-index:1;pointer-events:none}
.dt-svc>.vc_column-inner>*{position:relative;z-index:2}
.dt-svc>.vc_column-inner>.dt-svcbg{position:absolute;inset:0;z-index:0;margin:0}
/* Ссылка карточки лежит в колонке рядом с .vc_column-inner, а не внутри него, и раньше была ниже текста (z-index 1 против 2) —
   кликалась только свободная верхняя часть картинки. Поднимаем над всем содержимым: кликабельна вся карточка,
   включая «Подробнее»; сам текст не становится ссылкой по виду (не подчёркивается, цвет не меняется). */
.dt-svc>.vc_column-link{position:absolute;inset:0;z-index:3;border-radius:24px;cursor:pointer}
.dt-svc>.vc_column-link:focus-visible{outline:2px solid var(--dta);outline-offset:-2px}
.dt-svcbg .w-image-h{display:block;height:100%}
.dt-svcbg img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--dte)}
.dt-svc:hover .dt-svcbg img{transform:scale(1.06)}
.dt-svctext{color:var(--dts);font-size:.92rem;line-height:1.55;margin:0}
.dt-svc h3{margin:0}
.l-header.sticky .l-subheader.at_middle{backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.3)}
.dt-bc{margin:0 0 28px}.dt-bc ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;color:var(--dtm);font-size:.85rem}
.dt-bc li+li:before{content:"/";margin-right:8px;opacity:.5}.dt-bc a:hover{color:var(--dta)}
.dt-frame12 .w-image-h{aspect-ratio:1/2!important;border-radius:24px}
.l-section.dt-tight{padding-top:0!important;padding-bottom:20px!important}
.l-section.dt-tight-t{padding-top:0!important}
.dt-op-t{margin:0 0 14px}
.dt-op-short{margin:0;color:var(--dts)}
.dt-op-long p{max-width:76ch;color:var(--dts)}
.dt-callout>.vc_column-inner{border-left:2px solid rgba(226,184,162,.55)}
.dt-callout h3,.dt-callout h4{margin-bottom:10px}
.dt-callout p{color:var(--dtm);margin:0 0 .8em}
.dt-hero-lead{max-width:56ch;margin:28px 0 36px}
.dt-svc-hero .w-image-h{max-width:300px;margin:0 auto}
@media(max-width:1024px){.dt-svc-hero .w-image-h{max-width:240px}}
.dt-ba-grid .w-grid-item-h{border-radius:16px;overflow:hidden}
body{font-variant-numeric:lining-nums}
.dt-acc.dt-mini.w-tabs .w-tabs-section-header{background:none!important}
.dt-acc.dt-mini .w-tabs-section-control{color:var(--dta)}
.dt-name{margin-top:20px;color:var(--dtm);font-size:.86rem}
.dt-name strong{display:block;color:#f5f5f5;font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:500}
.dt-t2 table{min-width:560px}
.dt-t4 thead th{font-size:1.1rem}
.dt-t4 table{min-width:860px}
.dt-giftcard>.vc_column-inner{display:flex;align-items:center;justify-content:center;aspect-ratio:1.6;padding:32px;border-radius:24px;border:1px solid rgba(226,184,162,.4);background:linear-gradient(135deg,rgba(226,184,162,.26),rgba(138,90,68,.26) 60%,rgba(212,175,55,.16));box-shadow:0 0 60px rgba(226,184,162,.18),0 8px 32px rgba(0,0,0,.3)}
.dt-giftcard .w-image{width:min(70%,320px)}
.dt-list{margin:0 0 1em;padding:0;list-style:none}
.dt-list li{position:relative;padding-left:22px;margin:0 0 10px}
.dt-list li:before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--dta);box-shadow:0 0 8px var(--dta)}
.dt-sec h2{margin-bottom:.4em}
.dt-sec p{color:var(--dts)}
.dt-pills{margin-top:8px}
.dt-svcgrid .w-grid-item-title{font-family:"Cormorant Garamond",serif;font-weight:500;margin-top:14px}
@media(max-width:1024px){.l-section.dt-hero{padding-top:120px!important}}
@media(max-width:1024px){.dt-footer-b .w-hwrapper{justify-content:flex-start}}
@media(max-width:600px){.l-footer{padding-bottom:80px}}
@media(min-width:601px){.dt-fab{display:none!important}}
@media(min-width:601px) and (max-width:1024px){.dt-svcgrid .w-grid-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}.dt-svcgrid .w-grid-item-title{font-size:1.25rem!important}}

/* ---- Фильтр портфолио на мобильном ---- */
/* Префикс body поднимает специфичность: встроенные <style> Impreza для фильтра лежат ниже по странице
   (внутри body) и при равной специфичности перебили бы эту кнопку, раз файл стоит в <head>. */
body .w-filter.state_mobile .w-filter-opener{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border:1px solid rgba(226,184,162,.4);border-radius:999px;background:rgba(255,255,255,.03);color:#f5f5f5;font-weight:600;font-size:.9rem;letter-spacing:.04em}
.w-filter.state_mobile .w-filter-opener:hover{border-color:rgba(226,184,162,.7)}

/* ---- Правки после ревью (октябрь 2026) ---- */

/* Кнопку «Я онлайн, пишите!» от плагина чата не показываем: чат открывается из панели «Рассчитать цену» → «Веб-версия».
   Элемент остаётся в DOM — скрипт плагина и dt.js открывают чат программным кликом по нему. !important нужен,
   потому что плагин сам выставляет display инлайном при открытии/закрытии. */
#mnbg-widget-btn{display:none!important}

/* Главная: расстояние от шапки до начала первого экрана было 150px, стало 90px.
   Только главная (.home): на страницах услуг тот же .dt-hero остался прежним. */
body.home .l-section.dt-hero{padding-top:90px!important}
@media(max-width:1024px){body.home .l-section.dt-hero{padding-top:70px!important}}

/* Страница «Подготовка и FAQ»: больше воздуха между блоками 01–04 и под кнопками-якорями (было 20px, стало 56px) */
.l-section.dt-top.dt-spaced{padding-bottom:56px!important}
.l-section.dt-tight.dt-spaced{padding-bottom:56px!important}
/* Парное фото (4:5): лица смещены влево — подбираем точку обрезки, чтобы в кадр попали оба */
.dt-couple img{object-position:36% 30%}
/* На планшете и телефоне фото встаёт отдельной строкой — не растягиваем его на всю ширину экрана */
@media(max-width:1024px){.dt-couple .w-image-h{max-width:460px;margin-left:auto;margin-right:auto}}

/* Телефон: внизу страницы плавающая «Рассчитать цену» перекрывала строку с логотипом разработчика —
   оставляем под ней свободное место */
@media(max-width:600px){.l-section.dt-footer-b{padding-bottom:88px!important}}
