/*
Theme Name: Фирматека
Author: OpenAI
Description: Каталог и рейтинг компаний по ремонту, недвижимости и строительству. Без ACF: компании, города, категории, рейтинги, реклама и заявки управляются штатными средствами темы.
Version: 1.12.1
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: domograf
*/

:root{
  --dg-bg:#f6f7f4;
  --dg-surface:#ffffff;
  --dg-text:#202923;
  --dg-muted:#707970;
  --dg-green:#276345;
  --dg-green-dark:#1d4b35;
  --dg-green-soft:#eaf2e8;
  --dg-chip:#f0f3ee;
  --dg-border:#dfe5dd;
  --dg-danger:#b42318;
  --dg-radius-xl:20px;
  --dg-radius-lg:16px;
  --dg-radius-md:12px;
  --dg-shadow:0 12px 40px rgba(29,75,53,.08);
  --dg-container:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dg-bg);color:var(--dg-text);font-family:Inter,Arial,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.dg-modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.dg-container{width:min(var(--dg-container),calc(100% - 48px));margin-inline:auto}
.dg-page{min-height:65vh;padding:44px 0 64px}
.dg-muted{color:var(--dg-muted)}
.dg-green{color:var(--dg-green)}
.dg-section{margin-top:34px}
.dg-section-title{font-size:28px;line-height:1.16;margin:0 0 18px;font-weight:600}
.dg-kicker{font-size:12px;font-weight:600;color:var(--dg-green);text-transform:uppercase;letter-spacing:.04em}
.dg-breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--dg-muted);font-size:12px;margin-bottom:24px}
.dg-breadcrumbs a:hover{color:var(--dg-green)}
.dg-breadcrumbs__sep{color:#a8afa9}
.dg-h1{font-size:46px;line-height:1.08;letter-spacing:-.025em;margin:0;font-weight:600}
.dg-lead{font-size:15px;color:var(--dg-muted);line-height:1.65;max-width:720px;margin:12px 0 0}
.dg-card{background:var(--dg-surface);border:1px solid var(--dg-border);border-radius:var(--dg-radius-lg)}
.dg-chip{display:inline-flex;align-items:center;gap:6px;background:var(--dg-chip);color:var(--dg-muted);border-radius:8px;padding:5px 9px;font-size:12px;line-height:1.1}
.dg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--dg-green);border-radius:999px;background:transparent;color:var(--dg-green);padding:10px 16px;font-weight:600;line-height:1;min-height:40px;transition:.18s ease}
.dg-btn:hover{background:var(--dg-green);color:#fff}
.dg-btn--solid{background:var(--dg-green);color:#fff}
.dg-btn--solid:hover{background:var(--dg-green-dark)}
.dg-btn--block{width:100%}
.dg-btn svg,.dg-icon svg{width:18px;height:18px;display:block}
.dg-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--dg-green)}
.dg-pill-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;background:var(--dg-chip);border-radius:99px;font-size:11px;color:var(--dg-muted)}

/* Header */
.dg-header{height:88px;background:#fff;border-bottom:1px solid var(--dg-border);position:sticky;top:0;z-index:100}
.admin-bar .dg-header{top:32px}
.dg-header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.dg-logo{display:inline-flex;align-items:center;gap:11px;font-size:25px;font-weight:700;white-space:nowrap}
.dg-logo__mark{width:34px;height:34px;border-radius:8px;background:var(--dg-green);padding:7px;display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:center}
.dg-logo__mark i{display:block;background:#fff;height:4px;border-radius:1px}
.dg-logo__mark i:nth-child(1){width:20px}.dg-logo__mark i:nth-child(2){width:14px}.dg-logo__mark i:nth-child(3){width:8px}
.dg-nav{display:flex;align-items:center;gap:32px;margin-left:auto;margin-right:auto}
.dg-nav>a,.dg-dropdown__trigger{font-size:14px;border:0;background:transparent;color:var(--dg-text);padding:10px 0;display:flex;align-items:center;gap:4px}
.dg-nav>a:hover,.dg-dropdown__trigger:hover{color:var(--dg-green)}
.dg-dropdown{position:relative}
.dg-dropdown::after{content:"";position:absolute;left:-10px;right:-10px;top:100%;height:14px}
.dg-dropdown__panel{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,4px);min-width:300px;background:#fff;border:1px solid var(--dg-border);border-radius:16px;padding:10px;box-shadow:var(--dg-shadow);opacity:0;visibility:hidden;pointer-events:none;transition:.16s ease;z-index:120}
.dg-dropdown:hover .dg-dropdown__panel,.dg-dropdown:focus-within .dg-dropdown__panel,.dg-dropdown.is-open .dg-dropdown__panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.dg-dropdown__panel a{display:block;padding:10px 12px;border-radius:10px;white-space:nowrap}
.dg-dropdown__panel a:hover{background:var(--dg-chip);color:var(--dg-green)}
.dg-menu-toggle{display:none;border:1px solid var(--dg-border);background:#fff;border-radius:12px;width:42px;height:42px;align-items:center;justify-content:center;color:var(--dg-text)}

/* Home */
.dg-home{padding:48px 0 56px}
.dg-steps{display:flex;align-items:center;gap:18px;color:var(--dg-muted);font-size:12px;margin-bottom:24px;overflow:auto;padding-bottom:2px}
.dg-steps strong{color:var(--dg-green);font-weight:600}
.dg-home-hero{display:grid;grid-template-columns:minmax(0,810px) minmax(280px,1fr);align-items:end;gap:48px;margin-bottom:32px}
.dg-home-hero h1{font-size:52px;line-height:1.07;letter-spacing:-.03em;margin:0;font-weight:600}
.dg-home-hero p{margin:0;color:var(--dg-muted);font-size:15px;line-height:1.65}
.dg-category-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dg-category-card{min-height:214px;background:#fff;border:1px solid var(--dg-border);border-radius:20px;padding:24px;display:grid;grid-template-columns:minmax(0,1fr) 184px;gap:24px;overflow:hidden}
.dg-category-card--wide{grid-column:1/-1;grid-template-columns:minmax(0,1fr) 480px}
.dg-category-card__content{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.dg-category-card h2{font-size:27px;line-height:1.14;margin:0 0 4px;font-weight:600}
.dg-category-card__count{font-size:12px;color:var(--dg-green);margin-bottom:10px}
.dg-category-card__desc{font-size:14px;color:var(--dg-muted);margin:0 0 14px;line-height:1.55}
.dg-category-card__image{width:100%;height:166px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#dde5d9,#cbd9cb);align-self:start}
.dg-category-card__image img{width:100%;height:100%;object-fit:cover}
.dg-category-card--wide .dg-category-card__image{height:166px}
.dg-category-card__tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;grid-column:1/-1}.dg-category-card__tags a.dg-chip:hover{background:var(--dg-green);color:#fff}
.dg-method-box{margin-top:32px;background:var(--dg-green-soft);border-radius:20px;padding:30px 32px;display:grid;grid-template-columns:1.1fr .8fr;gap:36px;align-items:center}
.dg-method-box h2{font-size:25px;margin:0 0 8px}.dg-method-box p{color:var(--dg-muted);margin:0 0 9px}
.dg-formula{background:#fff;border-radius:14px;padding:20px 22px}.dg-formula small{display:block;color:var(--dg-muted);font-size:10px;text-transform:uppercase;font-weight:600}.dg-formula strong{display:block;color:var(--dg-green);font-size:20px;margin:8px 0}

/* Ranking archive */
.dg-ranking-head{margin-bottom:24px}
.dg-city-row{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 10px}
.dg-city-link{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--dg-border);border-radius:12px;padding:11px 14px;font-weight:600;white-space:nowrap}
.dg-city-link.is-active,.dg-city-link:hover{background:var(--dg-green);border-color:var(--dg-green);color:#fff}.dg-city-link.is-active .dg-pill-count{background:rgba(255,255,255,.18);color:#fff}
.dg-city-more{margin:8px 0 22px;text-align:center}.dg-city-more button{background:none;border:0;color:var(--dg-green);font-weight:600}
.dg-city-row.is-collapsed .dg-city-link:nth-child(n+8){display:none}

.dg-service-filter{display:flex;align-items:flex-start;gap:14px;margin:4px 0 20px}
.dg-service-filter__label{font-size:12px;color:var(--dg-muted);font-weight:600;padding-top:9px;flex:0 0 auto}
.dg-service-filter__items{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.dg-service-filter__item{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:9px;background:var(--dg-chip);border:1px solid transparent;color:var(--dg-muted);font-size:12px;line-height:1;white-space:nowrap}
.dg-service-filter__item span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#fff;border:1px solid var(--dg-border);font-size:10px;color:var(--dg-muted)}
.dg-service-filter__item:hover,.dg-service-filter__item.is-active{background:var(--dg-green);border-color:var(--dg-green);color:#fff}
.dg-service-filter__item.is-active span,.dg-service-filter__item:hover span{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18);color:#fff}
.dg-tools{display:grid;grid-template-columns:1fr 220px;gap:14px;margin:16px 0 24px}
.dg-search{height:48px;background:#fff;border:1px solid var(--dg-border);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 14px}.dg-search input{border:0;outline:0;background:transparent;flex:1;min-width:0;color:var(--dg-text)}
.dg-sort{height:48px;background:#fff;border:1px solid var(--dg-border);border-radius:12px;padding:0 14px;color:var(--dg-text);outline:0;width:100%}
.dg-ranking-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:24px;align-items:start}
.dg-ranking-titlebar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.dg-ranking-titlebar h2{font-size:18px;margin:0}.dg-rating-help{font-size:12px;color:var(--dg-green);font-weight:600}
.dg-ad-sidebar{position:sticky;top:112px}
.dg-ad-placeholder{min-height:280px;border:1px solid var(--dg-green);border-radius:16px;padding:20px;background:#fff;display:flex;flex-direction:column}.dg-ad-placeholder h3{font-size:22px;line-height:1.1;margin:0 0 14px}.dg-ad-placeholder p{color:var(--dg-muted);margin:0 0 18px}.dg-ad-placeholder .dg-btn{margin-top:auto}
.dg-banner-image{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--dg-border);background:#fff}.dg-banner-image img{width:100%;height:auto}.dg-banner-label{font-size:10px;color:var(--dg-muted);margin:6px 4px 0}
.dg-company-list{display:flex;flex-direction:column;gap:12px}
.dg-company-card{background:#fff;border:1px solid var(--dg-border);border-radius:14px;padding:18px;display:grid;grid-template-columns:minmax(280px,1.4fr) 92px repeat(3,92px) 126px;gap:14px;align-items:center;position:relative}
.dg-company-card--sponsor{border-color:#cbd9cb}.dg-company-card__main{display:flex;gap:14px;align-items:center;min-width:0}.dg-rank{width:46px;height:46px;border-radius:11px;background:var(--dg-green-soft);display:grid;place-items:center;color:var(--dg-green);font-size:22px;font-weight:600;flex:0 0 auto}.dg-rank--sponsor{font-size:0}.dg-rank--sponsor:before{content:"★";font-size:18px}
.dg-company-card h3{font-size:18px;line-height:1.2;margin:0 0 4px;font-weight:600}.dg-company-card__excerpt{font-size:11px;color:var(--dg-muted);margin-bottom:6px}.dg-card-tags{display:flex;gap:6px;flex-wrap:wrap}.dg-card-tags .dg-chip{font-size:10px;padding:4px 7px}
.dg-card-score{text-align:center}.dg-card-score strong{display:block;font-size:31px;line-height:1;color:var(--dg-green);font-weight:600}.dg-card-score span{display:block;font-size:10px;color:var(--dg-muted);margin-top:5px}
.dg-source{text-align:center;min-width:0}.dg-source__label{display:flex;gap:5px;align-items:center;justify-content:center;font-size:11px;font-weight:600}.dg-source__dot{width:17px;height:17px;border-radius:6px;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:700}.dg-source--ya .dg-source__dot{background:#fc3f1d}.dg-source--g .dg-source__dot{background:#4285f4}.dg-source--2 .dg-source__dot{background:#5abf42}.dg-source strong{display:block;font-size:17px;margin-top:3px}.dg-source small{font-size:9px;color:var(--dg-muted)}
.dg-company-card__cta{justify-self:end}.dg-ad-mark{position:absolute;right:14px;bottom:7px;color:#9aa29b;font-size:8px}
.dg-empty{padding:34px;background:#fff;border:1px dashed var(--dg-border);border-radius:16px;text-align:center;color:var(--dg-muted)}

/* Single company */
.dg-company-top{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:28px}.dg-company-top__meta{margin-top:10px;color:var(--dg-muted);font-size:12px}.dg-badge{display:inline-flex;background:var(--dg-green-soft);color:var(--dg-green);padding:5px 8px;border-radius:7px;font-size:11px;margin-bottom:8px}
.dg-big-score{background:var(--dg-green-dark);color:#fff;border-radius:17px;padding:12px 22px;font-size:36px;line-height:1;font-weight:600;min-width:150px;text-align:center}.dg-big-score small{font-size:14px;font-weight:400;color:#cbd9cb}.dg-score-help{display:block;text-align:center;color:var(--dg-green);font-size:10px;margin-top:7px}
.dg-tabs{border-bottom:1px solid var(--dg-border);display:flex;gap:30px;margin-bottom:18px}.dg-tabs a{padding:12px 0;font-size:12px;color:var(--dg-muted);border-bottom:2px solid transparent}.dg-tabs a:hover,.dg-tabs a.is-active{color:var(--dg-green);border-color:var(--dg-green);font-weight:600}
.dg-company-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.dg-company-main{min-width:0}.dg-company-sidebar-inner{position:sticky;top:112px;display:grid;gap:16px}
.dg-info-card{padding:22px}.dg-info-card h2,.dg-info-card h3{margin:0 0 14px;font-size:20px}.dg-legal-grid{display:grid;grid-template-columns:150px 1fr;row-gap:10px}.dg-legal-grid dt{font-weight:600}.dg-legal-grid dd{margin:0;color:var(--dg-muted)}
.dg-contact-list{display:grid;gap:16px}.dg-contact-item{display:grid;grid-template-columns:20px 1fr;gap:10px}.dg-contact-item small{display:block;color:var(--dg-muted);font-size:10px}.dg-contact-item a,.dg-contact-item span{font-weight:500;overflow-wrap:anywhere}
.dg-services{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dg-service-card{padding:16px 18px;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:12px;font-weight:600;transition:border-color .18s ease,background .18s ease,transform .18s ease}.dg-service-card:hover{border-color:#b9c9be;background:var(--dg-green-soft);transform:translateY(-1px)}.dg-service-card__name{font-size:15px}.dg-service-card__arrow{display:grid;place-items:center;color:var(--dg-green);flex:0 0 auto}
.dg-map{min-height:360px;border:1px solid var(--dg-border);border-radius:20px;overflow:hidden;background:#edf1ec;position:relative}.dg-map img,.dg-map iframe{width:100%;height:360px;object-fit:cover;border:0}.dg-map__placeholder{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;color:var(--dg-muted);background-image:linear-gradient(#dde4dc 1px,transparent 1px),linear-gradient(90deg,#dde4dc 1px,transparent 1px);background-size:32px 32px}
.dg-source-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dg-source-card{padding:20px}.dg-source-card__head{display:flex;align-items:center;gap:8px;font-weight:600}.dg-source-card__numbers{display:flex;justify-content:space-between;align-items:end;margin-top:18px}.dg-source-card__numbers strong{font-size:30px;line-height:1}.dg-source-card__numbers span{font-size:27px;font-weight:600}.dg-source-card__labels{display:flex;justify-content:space-between;color:var(--dg-muted);font-size:9px;margin-top:3px}
.dg-review-filters{display:flex;gap:22px;border-bottom:1px solid var(--dg-border);margin:18px 0 12px}.dg-review-filter{border:0;background:transparent;padding:11px 0;color:var(--dg-muted);border-bottom:2px solid transparent}.dg-review-filter.is-active{color:var(--dg-green);border-color:var(--dg-green);font-weight:600}.dg-review-list{display:grid;gap:12px}.dg-review{padding:18px;display:grid;grid-template-columns:175px 1fr;gap:18px}.dg-review__rating{font-size:28px;font-weight:600}.dg-review__meta{font-size:10px;color:var(--dg-muted);margin-top:6px}.dg-review p{margin:0;color:#414942}.dg-sidebar-soft{background:var(--dg-green-soft);border:0}.dg-ratings-links{display:grid;gap:8px}.dg-ratings-links a{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(39,99,69,.12);color:var(--dg-green);font-weight:600}.dg-ratings-links a:last-child{border:0}

/* About / ads */
.dg-two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:28px}.dg-about-rating{background:var(--dg-green-soft);border-radius:20px;padding:32px}.dg-about-rating h2{font-size:27px;margin:0 0 10px}.dg-about-rating__top{display:grid;grid-template-columns:1.2fr .8fr;gap:28px}.dg-demo-rating{padding:22px;background:#fff;border-radius:14px}.dg-demo-rating h3{margin:5px 0 10px}.dg-demo-row{display:grid;grid-template-columns:1fr 50px 80px;gap:8px;padding:9px 0;border-bottom:1px solid var(--dg-border)}.dg-demo-row strong{text-align:center;color:var(--dg-green)}.dg-demo-row span:last-child{text-align:right;color:var(--dg-muted);font-size:11px}.dg-demo-total{display:flex;justify-content:space-between;align-items:end;margin-top:14px}.dg-demo-total strong:last-child{font-size:34px;color:var(--dg-green)}
.dg-explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;border-top:1px solid #d5e0d4;margin-top:22px;padding-top:20px}.dg-explain-grid h4{color:var(--dg-green);margin:0 0 5px}.dg-explain-grid p{margin:0;color:var(--dg-muted);font-size:12px}
.dg-content-panels{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:24px}.dg-content-panel{padding:24px}.dg-content-panel h2{margin:0 0 9px;font-size:23px}.dg-content-panel p{color:var(--dg-muted)}
.dg-ad-hero{display:flex;justify-content:space-between;gap:32px;align-items:flex-start}.dg-ad-formats{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dg-ad-format{padding:22px}.dg-ad-format h2{font-size:22px;margin:0 0 6px}.dg-ad-format p{color:var(--dg-muted)}.dg-ad-mock{height:240px;border-radius:14px;background:#ddd;display:grid;place-items:center;color:#555;margin-top:16px}.dg-notice{display:flex;gap:10px;align-items:flex-start;background:var(--dg-green-soft);padding:14px 16px;border-radius:10px;color:var(--dg-green);margin:18px 0}
.dg-price-table{background:#fff;border:1px solid var(--dg-border);border-radius:14px;overflow:hidden}.dg-price-row{display:grid;grid-template-columns:1fr 1.5fr 160px;gap:14px;padding:16px 18px;border-bottom:1px solid var(--dg-border);align-items:center}.dg-price-row:last-child{border:0}.dg-price-row--head{background:var(--dg-chip);font-size:10px;text-transform:uppercase;color:var(--dg-muted)}.dg-price-row strong:last-child{text-align:right;color:var(--dg-green);font-size:22px}
.dg-ad-selector{background:var(--dg-green-soft);border-radius:20px;padding:24px;margin-top:26px}.dg-ad-selector h2{margin:0 0 4px}.dg-ad-selector__grid{display:grid;grid-template-columns:1.15fr .8fr 1fr 1.05fr auto;gap:10px;margin-top:18px}.dg-field-select,.dg-field-input,.dg-field-textarea{width:100%;border:1px solid var(--dg-border);border-radius:10px;background:#fff;outline:0;padding:12px 14px;color:var(--dg-text)}.dg-field-select,.dg-field-input{height:48px}.dg-field-textarea{min-height:100px;resize:vertical}

/* Footer */
.dg-footer{background:#173e2d;color:#fff;padding:38px 0 24px}.dg-footer__grid{display:grid;grid-template-columns:1.1fr .7fr .7fr 1.1fr;gap:48px}.dg-footer .dg-logo{font-size:22px}.dg-footer p{color:#b8c7bd;font-size:12px;max-width:300px}.dg-footer h3{font-size:14px;margin:0 0 13px}.dg-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.dg-footer li,.dg-footer a{color:#c7d3cb;font-size:12px}.dg-footer a:hover{color:#fff}.dg-footer__bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;color:#a8b9ae;font-size:11px}

/* Modal */
.dg-modal{position:fixed;inset:0;background:rgba(16,28,20,.55);z-index:1000;display:none;align-items:center;justify-content:center;padding:24px}.dg-modal.is-open{display:flex}.dg-modal__dialog{width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(22,64,43,.35)}.dg-modal__head{padding:28px 32px 18px;position:relative}.dg-modal__head h2{font-size:31px;line-height:1.12;margin:0 46px 8px 0}.dg-modal__head p{margin:0;color:var(--dg-muted)}.dg-modal__close{position:absolute;right:22px;top:22px;width:38px;height:38px;border-radius:50%;border:0;background:var(--dg-chip);display:grid;place-items:center}.dg-modal__body{padding:4px 32px 26px}.dg-form-row{margin-top:18px}.dg-form-row label{display:block;font-weight:600;margin-bottom:7px}.dg-form-help{font-size:12px;color:var(--dg-muted);margin-top:6px}.dg-modal__foot{display:flex;justify-content:flex-end;gap:12px;padding:18px 32px 24px;border-top:1px solid var(--dg-border);background:#fbfcfa}.dg-rating-pair{display:grid;grid-template-columns:1fr 190px 36px;gap:10px;align-items:center;margin-top:8px}.dg-remove-pair{width:36px;height:36px;border:0;background:transparent;color:var(--dg-muted);display:grid;place-items:center}.dg-add-pair{border:0;background:transparent;color:var(--dg-green);font-weight:600;margin-top:12px;padding:6px 0;display:flex;gap:8px;align-items:center}.dg-form-message{display:none;margin-top:14px;padding:11px 13px;border-radius:9px;background:var(--dg-green-soft);color:var(--dg-green)}.dg-form-message.is-error{background:#fef0ee;color:var(--dg-danger)}

@media(max-width:1100px){
  .dg-company-card{grid-template-columns:minmax(250px,1.2fr) 86px repeat(3,78px) 110px;gap:10px;padding:14px}.dg-company-card__cta .dg-btn{padding:9px 11px;font-size:12px}
  .dg-home-hero{grid-template-columns:1fr .6fr}.dg-category-card--wide{grid-template-columns:1fr 330px}.dg-footer__grid{gap:26px}
}
@media(max-width:900px){
  .admin-bar .dg-header{top:46px}.dg-container{width:min(100% - 32px,var(--dg-container))}.dg-header{height:72px}.dg-nav{display:none;position:absolute;left:16px;right:16px;top:78px;background:#fff;border:1px solid var(--dg-border);border-radius:16px;padding:12px;box-shadow:var(--dg-shadow);flex-direction:column;align-items:stretch;gap:2px}.dg-nav.is-open{display:flex}.dg-nav>a,.dg-dropdown__trigger{padding:11px 12px}.dg-dropdown__panel{position:static;transform:none!important;box-shadow:none;border:0;background:var(--dg-chip);margin:2px 8px 8px;display:none;opacity:1;visibility:visible;pointer-events:auto}.dg-dropdown.is-open .dg-dropdown__panel{display:block}.dg-header__cta{display:none}.dg-menu-toggle{display:flex}.dg-logo{font-size:21px}.dg-logo__mark{width:31px;height:31px}
  .dg-page,.dg-home{padding-top:32px}.dg-home-hero{grid-template-columns:1fr;gap:18px}.dg-home-hero h1,.dg-h1{font-size:40px}.dg-category-grid{grid-template-columns:1fr}.dg-category-card--wide{grid-column:auto;grid-template-columns:minmax(0,1fr) 184px}.dg-method-box{grid-template-columns:1fr}
  .dg-tools{grid-template-columns:1fr}.dg-ranking-layout{grid-template-columns:1fr}.dg-ad-sidebar{position:static}.dg-ad-placeholder{min-height:auto}.dg-company-card{grid-template-columns:minmax(0,1fr) 92px 110px}.dg-company-card .dg-source{display:none}.dg-company-card__cta{justify-self:end}
  .dg-company-layout{grid-template-columns:1fr}.dg-company-sidebar-inner{position:static;grid-template-columns:1fr 1fr}.dg-source-cards{grid-template-columns:1fr 1fr 1fr}.dg-about-rating__top,.dg-two-col,.dg-content-panels{grid-template-columns:1fr}.dg-ad-selector__grid{grid-template-columns:1fr 1fr}.dg-ad-selector__grid .dg-btn{grid-column:1/-1}.dg-footer__grid{grid-template-columns:1fr 1fr}.dg-footer__brand{grid-column:1/-1}
}
@media(max-width:640px){
  .dg-container{width:min(100% - 24px,var(--dg-container))}.dg-home-hero h1,.dg-h1{font-size:34px}.dg-home-hero p{font-size:14px}.dg-steps{gap:10px}.dg-steps span:nth-of-type(n+3){display:none}
  .dg-category-card,.dg-category-card--wide{grid-template-columns:1fr;padding:18px}.dg-category-card h2{font-size:23px}.dg-category-card__image,.dg-category-card--wide .dg-category-card__image{height:180px;grid-row:1}.dg-category-card__content{grid-row:2}.dg-category-card__tags{grid-row:3}.dg-method-box{padding:22px}
  .dg-city-row{flex-wrap:nowrap;overflow:auto;padding-bottom:6px;margin-right:-12px}.dg-city-row.is-collapsed .dg-city-link:nth-child(n+8){display:inline-flex}.dg-city-more{display:none}.dg-tools{margin-top:14px}.dg-ranking-titlebar{align-items:flex-start;flex-direction:column;gap:5px}.dg-company-card{grid-template-columns:1fr;gap:12px}.dg-company-card__main{align-items:flex-start}.dg-card-score{text-align:left;display:flex;align-items:baseline;gap:7px}.dg-card-score strong{font-size:28px}.dg-card-score span{margin:0}.dg-company-card__cta{justify-self:start}.dg-ad-mark{position:static;margin-top:-4px}.dg-company-card .dg-btn{min-height:38px}
  .dg-company-top{display:block}.dg-big-score{display:inline-block;margin-top:18px}.dg-score-help{text-align:left}.dg-tabs{overflow:auto;gap:20px}.dg-company-sidebar-inner{grid-template-columns:1fr}.dg-services{grid-template-columns:1fr}.dg-source-cards{grid-template-columns:1fr}.dg-review{grid-template-columns:1fr;gap:10px}.dg-legal-grid{grid-template-columns:1fr}.dg-legal-grid dd{margin-bottom:8px}
  .dg-about-rating{padding:20px}.dg-about-rating__top,.dg-explain-grid{grid-template-columns:1fr}.dg-content-panels{grid-template-columns:1fr}.dg-ad-hero{display:block}.dg-ad-hero .dg-btn{margin-top:16px}.dg-ad-formats{grid-template-columns:1fr}.dg-price-row{grid-template-columns:1fr 100px}.dg-price-row>*:nth-child(2){display:none}.dg-price-row strong:last-child{font-size:18px}.dg-price-row--head{display:none}.dg-ad-selector__grid{grid-template-columns:1fr}
  .dg-footer__grid{grid-template-columns:1fr}.dg-footer__brand{grid-column:auto}.dg-footer__bottom{display:grid;gap:9px}.dg-modal{padding:10px;align-items:flex-end}.dg-modal__dialog{max-height:92vh;border-radius:20px 20px 0 0}.dg-modal__head{padding:22px 20px 14px}.dg-modal__head h2{font-size:26px}.dg-modal__body{padding:2px 20px 20px}.dg-modal__foot{padding:14px 20px 18px}.dg-rating-pair{grid-template-columns:1fr 36px}.dg-rating-pair select{grid-column:1}.dg-rating-pair .dg-city-select{grid-column:1}.dg-rating-pair .dg-remove-pair{grid-column:2;grid-row:1/3}
}


/* =========================================================
   Figma parity pass 1.1
   Source: Rating Firm / Domograf frames in the supplied file.
   ========================================================= */

/* Navigation dropdown: Figma 4467:25583 */
.dg-dropdown::after{height:20px}
.dg-dropdown__panel{
  top:calc(100% + 8px);left:50%;width:270px;min-width:270px;
  padding:8px 0;border:0;border-radius:12px;
  box-shadow:0 0 4px rgba(0,0,0,.14);background:#fff
}
.dg-dropdown__panel a{
  padding:10px 12px;border-radius:0;text-align:center;
  font-size:14px;font-weight:400;line-height:1.2;color:var(--dg-text)
}
.dg-dropdown__panel a:hover{background:#f6f7f4;color:var(--dg-green)}

/* Home: Figma 4467:24671 */
.dg-category-card__image.is-empty{background:linear-gradient(135deg,#edf1eb,#dce4da)}
.dg-category-card:nth-child(3),.dg-category-card:nth-child(4){min-height:319px}
.dg-category-card:nth-child(3) .dg-category-card__image,.dg-category-card:nth-child(4) .dg-category-card__image{height:188px}
.dg-method-box{min-height:207px;padding:32px;grid-template-columns:minmax(0,1fr) 500px;gap:36px}
.dg-method-box h2{font-size:26px;line-height:1.2;margin:0 0 10px}
.dg-method-box p{font-size:14px;line-height:1.6}
.dg-method-box .dg-formula{min-height:143px;padding:24px 22px;display:flex;flex-direction:column;justify-content:center}
.dg-method-box .dg-formula strong{font-size:20px}

/* Ranking page: Figma 4467:24819 */
.dg-ranking-page{padding:32px 0 56px}
.dg-ranking-page .dg-breadcrumbs{margin-bottom:28px}
.dg-ranking-page .dg-h1{font-size:44px;line-height:1.15;letter-spacing:-.02em}
.dg-ranking-head{margin-bottom:26px}
.dg-ranking-head .dg-lead{margin-top:12px}
.dg-city-row{height:47px;gap:12px;flex-wrap:nowrap;overflow:hidden;margin:0 0 12px}
.dg-city-link{height:47px;padding:12px 16px;border-radius:12px;font-size:16px;line-height:1;font-weight:600}
.dg-pill-count{height:24px;min-width:24px;padding:0 7px;border:1px solid var(--dg-border);font-size:12px;font-weight:600}
.dg-city-link.is-active .dg-pill-count{border-color:rgba(255,255,255,.2)}
.dg-city-more{height:17px;margin:0 0 24px;text-align:center;display:flex;align-items:center;justify-content:center}
.dg-city-more button,.dg-city-more span{display:inline-flex;align-items:center;gap:3px;background:none;border:0;color:var(--dg-green);font-size:12px;font-weight:600}
.dg-tools{grid-template-columns:minmax(0,1030px) 236px;gap:14px;margin:0 0 24px}
.dg-search{height:52px;padding:0 16px;border-radius:10px}
.dg-search input{font-size:13px}
.dg-sort-wrap{height:52px;display:flex;align-items:center;gap:8px;padding:0 12px;background:#fff;border:1px solid var(--dg-border);border-radius:10px;color:var(--dg-green)}
.dg-sort-wrap>svg:last-child{flex:0 0 auto}
.dg-sort{height:50px;border:0;border-radius:0;padding:0;background:transparent;font-size:13px;font-weight:600;appearance:none;-webkit-appearance:none}
.dg-ranking-layout{grid-template-columns:240px minmax(0,1016px);gap:24px}
.dg-ranking-titlebar{margin-bottom:14px;height:26px}
.dg-ranking-titlebar h2{font-size:18px;line-height:1.2}
.dg-ranking-city{font-size:12px;color:var(--dg-muted);font-weight:400;margin-left:8px}
.dg-ad-placeholder{min-height:295px;border-radius:12px;padding:20px}
.dg-ad-placeholder h3{font-size:22px;line-height:1.08;margin-bottom:16px}
.dg-ad-placeholder p{font-size:13px;line-height:1.55}
.dg-banner-image{border-radius:12px}
.dg-company-list{gap:12px}
.dg-company-card{min-height:134px;border-radius:12px;padding:18px;grid-template-columns:minmax(330px,1fr) 92px repeat(3,82px) 128px;gap:12px}
.dg-company-card--sponsor{min-height:142px}
.dg-rank{width:44px;height:44px;border-radius:10px;font-size:21px}
.dg-company-card h3{font-size:18px}
.dg-company-card__excerpt{font-size:11px}
.dg-card-score strong{font-size:31px}
.dg-company-card__cta{border-radius:9px}

/* Company page: Figma 4467:25181 / 4467:25223 */
.dg-company-page{padding:32px 0 56px}
.dg-company-page .dg-breadcrumbs{margin-bottom:28px}
.dg-company-page .dg-h1{font-size:48px;line-height:1.1;letter-spacing:-.025em}
.dg-company-top{margin-bottom:22px}
.dg-company-top__meta{margin-top:10px}
.dg-big-score{min-width:150px;border-radius:17px;padding:13px 22px;font-size:36px}
.dg-tabs{gap:32px;margin-bottom:16px}
.dg-tabs a{padding:12px 0 16px;font-size:14px}
.dg-company-layout{grid-template-columns:minmax(0,856px) 400px;gap:24px}
.dg-company-sidebar-inner{top:112px;gap:24px}
.dg-info-card{padding:24px}
.dg-legal-card{border-radius:12px;padding:24px}
.dg-info-card h2,.dg-info-card h3{margin:0 0 18px}
.dg-legal-card h2{font-size:26px;line-height:1.2}
.dg-legal-grid{grid-template-columns:180px 1fr;row-gap:12px;font-size:14px}
.dg-legal-action{margin:18px 0 0}
.dg-legal-action .dg-btn{border-radius:12px;padding:14px 20px}
.dg-company-copy{margin-top:40px}
.dg-company-copy .dg-section-title,.dg-company-main>.dg-section>.dg-section-title{font-size:26px;margin-bottom:16px}
.dg-company-copy .dg-lead{max-width:none;margin:0;font-size:15px;line-height:1.7}
.dg-company-main>.dg-section{margin-top:40px}
.dg-services{gap:12px}
.dg-service-card{padding:16px 18px;min-height:58px;border-radius:12px}
.dg-map{height:502px;min-height:502px;border-radius:32px}
.dg-map img,.dg-map iframe{height:100%}
.dg-contacts-card{padding:28px;border-radius:20px}
.dg-contacts-card h3{font-size:24px;line-height:1.2;margin-bottom:26px}
.dg-contact-list{gap:22px}
.dg-contact-item{grid-template-columns:20px 1fr;gap:14px}
.dg-contact-item small{font-size:12px;margin-bottom:5px}
.dg-contact-item a,.dg-contact-item span{font-size:15px;line-height:1.5}
.dg-contact-action{margin:26px 0 0}
.dg-contact-action .dg-btn{border-radius:8px}
.dg-sidebar-soft{padding:28px;border-radius:20px;background:#eaf1e9}
.dg-sidebar-title{display:flex;gap:12px;align-items:center}
.dg-sidebar-title h3{font-size:18px;margin:0}
.dg-sidebar-soft p{margin:12px 0 0;color:var(--dg-muted);font-size:13px;line-height:1.6}
.dg-rankings-card,.dg-feedback-card{border-radius:16px;padding:24px}
.dg-reviews-section{margin-top:32px}
.dg-reviews-section>.dg-section-title{font-size:26px;margin-bottom:18px}
.dg-source-cards{gap:16px}
.dg-source-card{padding:24px;border-radius:12px;min-height:132px}
.dg-review-filters{gap:28px;margin:18px 0 12px}
.dg-review{padding:20px;border-radius:12px;grid-template-columns:175px minmax(0,1fr);gap:22px}

/* About: Figma 4467:24486 */
.dg-about-page{padding:32px 0 40px}
.dg-about-page .dg-breadcrumbs{margin-bottom:20px}
.dg-about-intro .dg-h1{font-size:48px;line-height:1.1}
.dg-about-intro .dg-lead{max-width:1030px;margin-top:16px;font-size:16px;line-height:1.6}
.dg-about-rating{margin-top:28px;padding:32px;min-height:465px}
.dg-about-rating h2{font-size:26px;line-height:1.2;margin:0 0 16px}
.dg-about-rating__top{grid-template-columns:minmax(0,720px) minmax(0,1fr);gap:32px}
.dg-about-method-copy>p{font-size:14px;line-height:1.6;margin:0}
.dg-formula--about{min-height:171px;margin-top:16px;padding:24px;border-radius:12px}
.dg-formula--about strong{font-size:20px;margin:10px 0}
.dg-formula--about span{font-size:12px;line-height:1.55}
.dg-demo-rating{padding:24px;border-radius:12px;min-height:278px}
.dg-demo-rating h3{font-size:20px;line-height:1.2;margin:8px 0 10px}
.dg-demo-row{grid-template-columns:1fr 50px 82px;padding:9px 0}
.dg-demo-total{margin-top:14px}
.dg-demo-score{text-align:right}
.dg-demo-score strong{display:block;font-size:34px;line-height:1;color:var(--dg-green)}
.dg-demo-score span{display:block;color:var(--dg-muted);font-size:10px;margin-top:4px}
.dg-explain-grid{gap:40px;margin-top:24px;padding-top:24px}
.dg-content-panels{grid-template-columns:minmax(0,744px) minmax(0,520px);gap:16px;margin-top:24px}
.dg-content-panel{padding:24px;border-radius:16px}
.dg-content-panel h2{font-size:23px;line-height:1.2;margin-bottom:10px}
.dg-content-panel p{font-size:14px;line-height:1.6;margin:0 0 14px}
.dg-content-panel .dg-notice{margin:14px 0}
.dg-small-note{font-size:12px!important}
.dg-company-cta{height:39px;margin-top:28px;display:flex;justify-content:flex-end;align-items:center;gap:20px;color:var(--dg-muted);font-size:13px}

/* Advertising: Figma 4467:25426 */
.dg-ad-page{padding:32px 0 56px}
.dg-ad-page .dg-breadcrumbs{margin-bottom:28px}
.dg-ad-hero{gap:64px;align-items:center}
.dg-ad-hero>div:first-child{max-width:926px}
.dg-ad-hero .dg-h1{font-size:48px;line-height:1.1}
.dg-ad-hero .dg-lead{max-width:900px;margin-top:16px}
.dg-ad-hero__action{width:290px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.dg-ad-hero__action .dg-btn{border-radius:8px;padding:13px 18px}
.dg-ad-hero__action span{color:var(--dg-muted);font-size:12px}
.dg-ad-page .dg-section{margin-top:40px}
.dg-ad-page .dg-section-title{font-size:28px;margin-bottom:20px}
.dg-ad-formats{gap:18px}
.dg-ad-format{padding:24px;border-radius:20px}
.dg-ad-format h2{font-size:22px;line-height:1.2;margin-bottom:7px}
.dg-ad-format p{font-size:13px;line-height:1.6;margin:0}
.dg-ad-mock{height:303px;border-radius:14px;margin-top:16px;background:#ddd;color:#343936}
.dg-notice{padding:14px 16px;border-radius:10px;margin:18px 0;font-size:12px;line-height:1.5}
.dg-price-table{border-radius:12px}
.dg-price-row{min-height:68px;padding:15px 18px;grid-template-columns:1fr 1.5fr 160px}
.dg-price-row--head{min-height:34px;padding-top:9px;padding-bottom:9px}
.dg-price-row strong:last-child{font-size:22px}
.dg-price-note{margin:12px 0 0;color:var(--dg-muted);font-size:12px}
.dg-ad-selector{padding:32px;margin-top:48px;border-radius:20px}
.dg-ad-selector h2{font-size:26px;line-height:1.2;margin:0 0 5px}
.dg-ad-selector>p{margin:0;font-size:13px}
.dg-ad-selector__labels{display:grid;grid-template-columns:1.15fr .8fr 1fr 1.05fr auto;gap:10px;margin-top:18px;color:var(--dg-muted);font-size:10px;text-transform:uppercase}
.dg-ad-selector__grid{grid-template-columns:1.15fr .8fr 1fr 1.05fr auto;margin-top:6px}
.dg-ad-selector__grid .dg-btn{border-radius:8px;white-space:nowrap}
.dg-placement-requirements{margin-top:40px!important}
.dg-requirement-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.dg-requirement-card{padding:24px;border-radius:12px}
.dg-requirement-card h3{font-size:18px;margin:0 0 12px}
.dg-requirement-card p{color:var(--dg-muted);font-size:13px;line-height:1.6;margin:0}
.dg-ad-mark-example{margin-top:12px;color:var(--dg-green);font-size:12px}
.dg-faq{margin-top:40px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:start}
.dg-faq>h2{font-size:28px;line-height:1.2;margin:0}
.dg-faq__item{border-top:1px solid var(--dg-border);padding:16px 0}
.dg-faq__item h3{font-size:16px;line-height:1.25;margin:0 0 8px}
.dg-faq__item p{color:var(--dg-muted);font-size:13px;line-height:1.6;margin:0}

/* Modals: Figma 4467:24602 / 4467:24457 */
.dg-modal__dialog{border:1px solid var(--dg-border);border-radius:24px;box-shadow:0 16px 56px rgba(32,59,45,.1)}
.dg-modal__head{min-height:120px;padding:28px 32px 24px}
.dg-modal__head h2{font-size:28px;line-height:1.2;margin:0 52px 10px 0}
.dg-modal__head p{font-size:14px;line-height:1.55}
.dg-modal__close{right:32px;top:28px;width:36px;height:36px}
.dg-modal__body{padding:0 32px 24px}
.dg-form-row{margin-top:20px}
.dg-modal__body>.dg-form-row:first-of-type{margin-top:0}
.dg-form-row label{font-size:14px;margin-bottom:8px}
.dg-form-help{font-size:13px;line-height:1.45;margin-top:7px}
.dg-field-select,.dg-field-input,.dg-field-textarea{padding:12px 14px;border-radius:10px;font-size:14px}
.dg-field-textarea{min-height:88px}
.dg-form-label-line{display:flex;align-items:center;gap:8px}
.dg-form-label-line label{margin:0}
.dg-selected-count{display:inline-flex;align-items:center;background:var(--dg-chip);color:var(--dg-green);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600}
.dg-rating-head{display:grid;grid-template-columns:1fr 170px 36px;gap:12px;margin-top:14px;color:var(--dg-muted);font-size:12px}
.dg-rating-pair{grid-template-columns:1fr 170px 36px;gap:12px;margin-top:8px}
.dg-add-pair{margin-top:12px;font-size:14px}
.dg-modal__foot{min-height:94px;padding:20px 32px;align-items:center}
.dg-modal__foot .dg-btn{min-height:46px;padding:0 22px}
.dg-modal__dialog--ad .dg-modal__body{padding-bottom:24px}

/* Figma-aligned responsive behavior */
@media(max-width:1320px){
  .dg-tools{grid-template-columns:minmax(0,1fr) 236px}
  .dg-ranking-layout{grid-template-columns:220px minmax(0,1fr)}
  .dg-company-card{grid-template-columns:minmax(260px,1fr) 86px repeat(3,76px) 112px;gap:9px;padding:14px}
  .dg-company-layout{grid-template-columns:minmax(0,1fr) 360px}
  .dg-content-panels{grid-template-columns:1.2fr .8fr}
}
@media(max-width:1100px){
  .dg-method-box{grid-template-columns:1fr 410px}
  .dg-company-layout{grid-template-columns:minmax(0,1fr) 340px}
  .dg-ranking-layout{grid-template-columns:200px minmax(0,1fr)}
  .dg-company-card{grid-template-columns:minmax(230px,1fr) 78px repeat(3,68px) 104px}
  .dg-ad-selector__labels,.dg-ad-selector__grid{grid-template-columns:1fr .8fr 1fr 1fr;}.dg-ad-selector__grid .dg-btn{grid-column:1/-1}
}
@media(max-width:900px){
  .dg-dropdown__panel{width:auto;min-width:0;padding:5px 0;border-radius:12px;text-align:left}
  .dg-dropdown__panel a{text-align:left}
  .dg-method-box{grid-template-columns:1fr;min-height:0}
  .dg-ranking-page .dg-h1,.dg-company-page .dg-h1,.dg-about-intro .dg-h1,.dg-ad-hero .dg-h1{font-size:40px}
  .dg-city-row{height:auto;overflow:auto}
  .dg-tools,.dg-ranking-layout,.dg-company-layout,.dg-about-rating__top,.dg-content-panels{grid-template-columns:1fr}
  .dg-ad-sidebar{position:static}
  .dg-company-sidebar-inner{position:static;grid-template-columns:1fr 1fr}
  .dg-map{height:420px;min-height:420px}
  .dg-ad-hero{display:block}
  .dg-ad-hero__action{width:auto;align-items:flex-start;margin-top:20px}
  .dg-ad-selector__labels{display:none}
  .dg-ad-selector__grid{grid-template-columns:1fr 1fr}
  .dg-ad-selector__grid .dg-btn{grid-column:1/-1}
  .dg-requirement-grid{grid-template-columns:1fr}
  .dg-faq{grid-template-columns:1fr;gap:16px}
}
@media(max-width:640px){
  .dg-home{padding:28px 0 40px}
  .dg-home-hero{margin-bottom:24px}
  .dg-home-hero h1,.dg-ranking-page .dg-h1,.dg-company-page .dg-h1,.dg-about-intro .dg-h1,.dg-ad-hero .dg-h1{font-size:34px}
  .dg-category-card:nth-child(3),.dg-category-card:nth-child(4){min-height:0}
  .dg-category-card:nth-child(3) .dg-category-card__image,.dg-category-card:nth-child(4) .dg-category-card__image{height:180px}
  .dg-method-box{padding:22px}
  .dg-city-row{margin-right:-12px;padding-bottom:6px}
  .dg-company-sidebar-inner{grid-template-columns:1fr}
  .dg-map{height:300px;min-height:300px;border-radius:20px}
  .dg-tabs a{font-size:12px}
  .dg-source-cards{grid-template-columns:1fr}
  .dg-review{grid-template-columns:1fr}
  .dg-company-cta{height:auto;justify-content:flex-start;align-items:flex-start;flex-direction:column}
  .dg-ad-selector{padding:22px}
  .dg-ad-selector__grid{grid-template-columns:1fr}
  .dg-price-row{grid-template-columns:1fr 110px}
  .dg-ad-mock{height:220px}
  .dg-modal{padding:10px;align-items:flex-end}
  .dg-modal__dialog{border-radius:20px 20px 0 0;max-height:94vh}
  .dg-modal__head{min-height:0;padding:22px 20px 16px}
  .dg-modal__head h2{font-size:25px}
  .dg-modal__close{right:20px;top:20px}
  .dg-modal__body{padding:0 20px 20px}
  .dg-rating-head{display:none}
  .dg-rating-pair{grid-template-columns:1fr 36px;gap:8px}
  .dg-rating-pair .dg-city-select{grid-column:1}
  .dg-rating-pair .dg-remove-pair{grid-column:2;grid-row:1/3}
  .dg-modal__foot{min-height:auto;padding:14px 20px 18px}
}

/* =========================================================
   Mobile refinement + SEO landing page ergonomics 1.4
   Target widths: 768 / 430 / 375px.
   ========================================================= */
@media(max-width:900px){
  .dg-header__inner{gap:14px}
  .dg-nav{z-index:130;max-height:calc(100vh - 96px);overflow:auto}
  .dg-nav .dg-dropdown{width:100%}
  .dg-dropdown__trigger{width:100%;justify-content:space-between}
  .dg-dropdown__panel a{white-space:normal}
  .dg-ranking-layout{gap:20px}
  .dg-ad-sidebar{width:100%}
  .dg-banner-image{max-width:360px}
  .dg-company-card .dg-source{display:flex}
  .dg-tabs,.dg-review-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .dg-tabs::-webkit-scrollbar,.dg-review-filters::-webkit-scrollbar,.dg-city-row::-webkit-scrollbar{display:none}
}

@media(max-width:720px){
  .dg-container{width:calc(100% - 32px)}
  .dg-page{padding:28px 0 44px}
  .dg-breadcrumbs{margin-bottom:18px;white-space:nowrap;overflow:auto;flex-wrap:nowrap;padding-bottom:2px;scrollbar-width:none}
  .dg-breadcrumbs::-webkit-scrollbar{display:none}
  .dg-h1,.dg-home-hero h1,.dg-ranking-page .dg-h1,.dg-company-page .dg-h1,.dg-about-intro .dg-h1,.dg-ad-hero .dg-h1{font-size:36px;line-height:1.08}
  .dg-lead{font-size:14px;line-height:1.6}
  .dg-section-title,.dg-ad-page .dg-section-title{font-size:24px}

  .dg-home-hero{gap:14px;margin-bottom:24px}
  .dg-category-card,.dg-category-card--wide{grid-template-columns:1fr;padding:18px;gap:16px;min-height:0}
  .dg-category-card__content,.dg-category-card__image,.dg-category-card__tags{grid-row:auto;grid-column:1}
  .dg-category-card__image,.dg-category-card--wide .dg-category-card__image,.dg-category-card:nth-child(3) .dg-category-card__image,.dg-category-card:nth-child(4) .dg-category-card__image{height:190px}
  .dg-category-card h2{font-size:23px}
  .dg-category-card__tags{margin-top:0}
  .dg-method-box{padding:20px;gap:18px}
  .dg-method-box .dg-formula{min-height:0;padding:18px}
  .dg-method-box .dg-formula strong{font-size:17px;overflow-wrap:anywhere}

  .dg-ranking-page{padding-top:26px}

  .dg-service-filter{display:block;margin:4px -16px 18px}
  .dg-service-filter__label{display:block;padding:0 16px 8px}
  .dg-service-filter__items{flex-wrap:nowrap;overflow:auto;padding:0 16px 5px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .dg-service-filter__items::-webkit-scrollbar{display:none}
  .dg-ranking-head{margin-bottom:20px}
  .dg-city-row{margin:20px -16px 10px;padding:0 16px 7px;scroll-padding-inline:16px;scroll-snap-type:x proximity}
  .dg-city-link{scroll-snap-align:start;height:44px;font-size:14px;padding:10px 14px}
  .dg-tools{gap:10px;margin-bottom:20px}
  .dg-sort-wrap,.dg-search{height:48px}
  .dg-ranking-layout{gap:18px}
  .dg-ad-placeholder{min-height:0;padding:18px}
  .dg-ad-placeholder .dg-btn{margin-top:4px}
  .dg-banner-image{max-width:none}
  .dg-ranking-titlebar{height:auto;gap:8px}

  .dg-company-card{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px;min-height:0}
  .dg-company-card__main{grid-column:1/-1;align-items:flex-start}
  .dg-rank{width:42px;height:42px;font-size:18px}
  .dg-company-card h3{font-size:17px}
  .dg-company-card__excerpt{font-size:11px;line-height:1.45}
  .dg-card-score{grid-column:1/-1;text-align:left;display:flex;align-items:baseline;gap:8px;padding-top:2px}
  .dg-card-score strong{font-size:29px}
  .dg-card-score span{margin:0}
  .dg-company-card .dg-source{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-height:74px;padding:9px 5px;border-radius:10px;background:var(--dg-chip)}
  .dg-company-card .dg-source__label{min-height:17px}
  .dg-company-card .dg-source strong{font-size:16px;margin-top:4px}
  .dg-company-card .dg-source small{font-size:8px;text-align:center;line-height:1.25;margin-top:2px}
  .dg-company-card__cta{grid-column:1/-1;justify-self:stretch;width:100%}
  .dg-company-card__cta.dg-btn{width:100%}
  .dg-ad-mark{grid-column:1/-1;position:static;margin-top:-2px;font-size:9px}

  .dg-company-top{display:block}
  .dg-big-score{margin-top:16px;min-width:136px;font-size:32px}
  .dg-tabs{gap:22px;white-space:nowrap;margin-right:-16px;padding-right:16px}
  .dg-company-layout{gap:26px}
  .dg-company-sidebar-inner{grid-template-columns:1fr}
  .dg-info-card,.dg-legal-card{padding:20px}
  .dg-legal-card h2,.dg-company-copy .dg-section-title,.dg-company-main>.dg-section>.dg-section-title{font-size:23px}
  .dg-legal-grid{grid-template-columns:1fr;gap:3px}
  .dg-legal-grid dd{margin:0 0 10px}
  .dg-services{grid-template-columns:1fr}
  .dg-map{height:330px;min-height:330px;border-radius:20px}
  .dg-map iframe,.dg-map img{height:330px}
  .dg-source-cards{grid-template-columns:1fr}
  .dg-review-filters{gap:20px;overflow:auto;white-space:nowrap;margin-right:-16px;padding-right:16px}
  .dg-review{grid-template-columns:1fr}

  .dg-about-rating{padding:20px}
  .dg-demo-row{grid-template-columns:1fr 44px 70px;font-size:12px}
  .dg-explain-grid{grid-template-columns:1fr;gap:18px}
  .dg-content-panel{padding:20px}
  .dg-company-cta{justify-content:flex-start;height:auto;align-items:flex-start;flex-direction:column}

  .dg-ad-formats,.dg-requirement-grid{grid-template-columns:1fr}
  .dg-ad-format{padding:20px}
  .dg-ad-selector{padding:20px}
  .dg-price-row{grid-template-columns:1fr 100px;gap:10px;padding:14px}
  .dg-price-row>*:nth-child(2){display:none}
  .dg-price-row--head{display:none}
  .dg-faq{grid-template-columns:1fr}

  .dg-footer{padding-top:32px}
  .dg-footer__grid{grid-template-columns:1fr;gap:26px}
  .dg-footer__brand{grid-column:auto}
  .dg-footer__bottom{display:grid;gap:8px}

  .dg-modal__dialog{width:100%;max-height:94vh}
  .dg-modal__foot .dg-btn{flex:1}
}

@media(max-width:480px){
  .dg-container{width:calc(100% - 24px)}
  .dg-header{height:68px}
  .dg-header__inner{gap:10px}
  .dg-logo{font-size:20px;gap:9px}
  .dg-logo__mark{width:30px;height:30px;padding:6px}
  .dg-menu-toggle{width:40px;height:40px}
  .dg-nav{left:12px;right:12px;top:74px}
  .dg-home,.dg-page{padding-top:24px}
  .dg-h1,.dg-home-hero h1,.dg-ranking-page .dg-h1,.dg-company-page .dg-h1,.dg-about-intro .dg-h1,.dg-ad-hero .dg-h1{font-size:31px;letter-spacing:-.02em}
  .dg-steps{font-size:11px;margin-bottom:18px}
  .dg-category-card__image,.dg-category-card--wide .dg-category-card__image,.dg-category-card:nth-child(3) .dg-category-card__image,.dg-category-card:nth-child(4) .dg-category-card__image{height:170px}
  .dg-method-box{border-radius:16px}

  .dg-city-row{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
  .dg-ranking-titlebar h2{font-size:17px}
  .dg-company-card{padding:14px}
  .dg-company-card__main{gap:10px}
  .dg-rank{width:38px;height:38px;font-size:16px;border-radius:9px}
  .dg-card-tags{gap:4px}
  .dg-company-card .dg-source{min-height:70px;padding-inline:3px}
  .dg-company-card .dg-source small{max-width:72px}

  .dg-tabs,.dg-review-filters{margin-right:-12px;padding-right:12px}
  .dg-map{height:270px;min-height:270px}
  .dg-map iframe,.dg-map img{height:270px}
  .dg-source-card{padding:18px;min-height:0}
  .dg-source-card__numbers strong{font-size:27px}
  .dg-source-card__numbers span{font-size:24px}

  .dg-ad-selector__grid{grid-template-columns:1fr}
  .dg-ad-selector__grid .dg-btn{grid-column:auto;width:100%}
  .dg-ad-mock{height:200px}

  .dg-modal{padding:0;align-items:flex-end}
  .dg-modal__dialog{border-radius:20px 20px 0 0;max-height:96vh}
  .dg-modal__head{padding:20px 18px 14px}
  .dg-modal__head h2{font-size:24px;margin-right:42px}
  .dg-modal__close{right:16px;top:16px}
  .dg-modal__body{padding:0 18px 18px}
  .dg-modal__foot{padding:14px 18px calc(14px + env(safe-area-inset-bottom));gap:8px}
  .dg-modal__foot .dg-btn{padding-inline:12px}
  .dg-rating-pair{grid-template-columns:1fr 36px}
}

@media(max-width:380px){
  .dg-logo{font-size:19px}
  .dg-h1,.dg-home-hero h1,.dg-ranking-page .dg-h1,.dg-company-page .dg-h1,.dg-about-intro .dg-h1,.dg-ad-hero .dg-h1{font-size:29px}
  .dg-company-card{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .dg-company-card .dg-source__dot{width:16px;height:16px}
  .dg-company-card .dg-source strong{font-size:15px}
  .dg-company-card .dg-source small{font-size:7.5px}
}

/* Pre-launch 1.7: CF7, SEO copy and truly deferred map loading */
.dg-modal__body--cf7{padding-top:0;padding-bottom:28px}
.dg-cf7-wrap .wpcf7-form{display:grid;gap:16px}
.dg-cf7-wrap .wpcf7-form p{margin:0}
.dg-cf7-wrap .wpcf7-form label{display:grid;gap:7px;font-weight:600;color:var(--dg-text)}
.dg-cf7-wrap .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance):not(.wpcf7-hidden):not([type="hidden"]){width:100%;min-height:48px;border:1px solid var(--dg-border);border-radius:10px;background:#fff;color:var(--dg-text);font:inherit;padding:12px 14px;outline:none}
.dg-cf7-wrap textarea.wpcf7-form-control{min-height:112px;resize:vertical}
.dg-cf7-wrap .wpcf7-form-control:focus{border-color:var(--dg-green);box-shadow:0 0 0 3px rgba(39,99,69,.08)}
.dg-cf7-wrap .wpcf7-submit{min-height:46px;border:1px solid var(--dg-green);border-radius:999px;background:var(--dg-green);color:#fff;font:600 14px/1 Inter,sans-serif;padding:0 24px;cursor:pointer}
.dg-cf7-wrap .wpcf7-spinner{vertical-align:middle;margin:0 0 0 10px}
.dg-cf7-wrap .wpcf7-response-output{margin:0!important;padding:11px 13px!important;border-radius:9px!important;border:0!important;background:var(--dg-green-soft);color:var(--dg-green)}
.dg-cf7-wrap .wpcf7-not-valid-tip{font-size:12px;margin-top:5px;color:var(--dg-danger)}
.dg-rating-seo-copy{margin-top:40px;padding:28px 32px;color:var(--dg-muted);font-size:14px;line-height:1.75}
.dg-rating-seo-copy h2,.dg-rating-seo-copy h3{color:var(--dg-text);line-height:1.25;margin:1.4em 0 .55em}.dg-rating-seo-copy h2:first-child,.dg-rating-seo-copy h3:first-child{margin-top:0}
.dg-rating-seo-copy p:last-child{margin-bottom:0}
.dg-yandex-map{display:block;width:100%;height:100%;border:0;background:var(--dg-chip)}
@media(max-width:600px){.dg-rating-seo-copy{margin-top:28px;padding:22px 20px}.dg-cf7-wrap .wpcf7-submit{width:100%}}

/* Rating source links */
.dg-source-card__link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;color:var(--dg-green);font-size:12px;font-weight:600}
.dg-source-card__link:hover{text-decoration:underline}
.dg-source-card__link svg{width:14px;height:14px}
.dg-source-card__missing{margin-top:14px;color:var(--dg-muted);font-size:11px;line-height:1.45}

/* =========================================================
   Company cards: address + total reviews + only available sources (1.8.1)
   ========================================================= */
.dg-company-card__identity{min-width:0}
.dg-company-card__meta{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;margin:5px 0 8px;color:var(--dg-muted);font-size:11px;line-height:1.35}
.dg-company-card__meta>span{display:inline-flex;align-items:center;gap:5px;min-width:0}
.dg-company-card__meta .dg-icon{display:inline-flex;flex:0 0 auto;color:#8a938b}
.dg-company-card__address span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}
.dg-company-card__reviews{white-space:nowrap;color:var(--dg-text)}
.dg-company-card__excerpt{display:none}

/* Missing sources do not reserve empty columns. */
@media(min-width:901px){
  .dg-company-card.dg-sources-0{grid-template-columns:minmax(230px,1fr) 82px 118px}
  .dg-company-card.dg-sources-1{grid-template-columns:minmax(230px,1fr) 82px minmax(64px,82px) 118px}
  .dg-company-card.dg-sources-2{grid-template-columns:minmax(230px,1fr) 82px repeat(2,minmax(64px,82px)) 118px}
  .dg-company-card.dg-sources-3{grid-template-columns:minmax(230px,1fr) 82px repeat(3,minmax(64px,82px)) 118px}
}

/* Single company: 1/2/3 available review sources stretch naturally. */
.dg-source-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.dg-section-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.dg-section-title-row .dg-section-title{margin-bottom:0}
.dg-total-reviews{display:inline-flex;align-items:center;gap:6px;color:var(--dg-muted);font-size:12px;white-space:nowrap}

@media(max-width:900px) and (min-width:721px){
  .dg-company-card.dg-sources-0{grid-template-columns:minmax(0,1fr) 84px 110px}
  .dg-company-card.dg-sources-1{grid-template-columns:minmax(0,1fr) 84px 72px 110px}
  .dg-company-card.dg-sources-2{grid-template-columns:minmax(0,1fr) 84px repeat(2,72px) 110px}
  .dg-company-card.dg-sources-3{grid-template-columns:minmax(0,1fr) 84px repeat(3,72px) 110px}
  .dg-company-card .dg-source{display:flex;flex-direction:column;align-items:center;justify-content:center}
  .dg-company-card__address span:last-child{max-width:300px}
}

@media(max-width:720px){
  .dg-company-card.dg-sources-0,.dg-company-card.dg-sources-1{grid-template-columns:1fr}
  .dg-company-card.dg-sources-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dg-company-card.dg-sources-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dg-company-card__main,.dg-card-score,.dg-company-card__cta,.dg-ad-mark{grid-column:1/-1}
  .dg-company-card__meta{gap:6px 12px;margin-top:6px}
  .dg-company-card__address{width:100%}
  .dg-company-card__address span:last-child{max-width:none;white-space:normal;overflow:visible;text-overflow:clip}
  .dg-section-title-row{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:14px}
  .dg-source-cards{grid-template-columns:1fr}
}


/* v1.9.0 — динамика рейтинга и импортированные отзывы */
.dg-rank-wrap{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.dg-rank-trend{font-size:12px;line-height:1;font-weight:750;white-space:nowrap;min-width:14px;text-align:center}
.dg-rank-trend--up{color:#217a48}.dg-rank-trend--down{color:#c23b32}.dg-rank-trend--flat{color:#8a928b}
.dg-review__reply{margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--dg-green-soft)}
.dg-review__reply strong{display:block;font-size:13px}.dg-review__reply small{display:block;color:var(--dg-muted);margin-top:3px}.dg-review__reply p{margin:8px 0 0;font-size:13px;line-height:1.5}
@media(max-width:700px){.dg-rank-wrap{gap:6px}.dg-rank-trend{font-size:11px}}


/* 1.10 — compact specializations, review deltas and review sentiment filters. */
.dg-specialization-links{display:flex;align-items:center;gap:9px 22px;flex-wrap:wrap}
.dg-specialization-links a{color:var(--dg-green);font-size:15px;font-weight:600;text-decoration:underline;text-decoration-color:rgba(39,99,69,.26);text-underline-offset:4px;transition:.16s ease}
.dg-specialization-links a:hover{color:var(--dg-green-dark);text-decoration-color:currentColor}
.dg-review-delta{font-style:normal;font-weight:700;font-size:11px;line-height:1;white-space:nowrap}
.dg-review-delta--up{color:#217a48}.dg-review-delta--down{color:#c23b32}
.dg-company-card__reviews{display:inline-flex;align-items:center;gap:5px}
.dg-total-reviews .dg-review-delta{margin-left:2px}
.dg-reviews-heading{margin:26px 0 4px}
.dg-reviews-heading h3{font-size:19px;line-height:1.25;margin:0 0 5px;font-weight:600}
.dg-reviews-heading p{margin:0;color:var(--dg-muted);font-size:12px;max-width:760px}
.dg-review-filter-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--dg-border);margin:14px 0 12px}
.dg-review-filter-row .dg-review-filters{border:0;margin:0;flex:0 0 auto}
.dg-review-filter span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;margin-left:5px;padding:0 6px;border-radius:999px;background:var(--dg-chip);font-size:10px;color:var(--dg-muted)}
.dg-review-filter.is-active span{background:var(--dg-green-soft);color:var(--dg-green)}
.dg-review-source-filters{display:flex;gap:14px;overflow:auto;white-space:nowrap;padding-bottom:11px;scrollbar-width:none}
.dg-review-source-filters::-webkit-scrollbar{display:none}
.dg-review-source-filter{border:0;background:transparent;padding:0;color:var(--dg-muted);font-size:12px;font-weight:600;white-space:nowrap}
.dg-review-source-filter span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:var(--dg-chip);font-size:9px;color:var(--dg-muted)}
.dg-review-source-filter:hover,.dg-review-source-filter.is-active{color:var(--dg-green)}
.dg-review-source-filter.is-active span{background:var(--dg-green-soft);color:var(--dg-green)}
.dg-review__votes{display:flex;gap:10px;margin-top:8px;color:var(--dg-muted);font-size:11px}
@media(max-width:760px){.dg-review-filter-row{display:block}.dg-review-source-filters{padding:0 0 11px}.dg-review-filter-row .dg-review-filters{margin-right:-16px;padding-right:16px}.dg-specialization-links{gap:8px 18px}}

/* 1.10 — AJAX review pagination (10 per page). */
.dg-source-card__numbers>span{display:flex;align-items:baseline;gap:6px}
.dg-reviews-browser.is-loading .dg-review-list{opacity:.45;pointer-events:none}
.dg-review-list{transition:opacity .16s ease}
.dg-review-pagination{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px;min-height:38px}
.dg-review-page{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--dg-border);border-radius:10px;background:#fff;color:var(--dg-text);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:.16s ease}
.dg-review-page:hover:not(:disabled),.dg-review-page.is-active{border-color:var(--dg-green);color:var(--dg-green);background:var(--dg-green-soft)}
.dg-review-page.is-active{pointer-events:none}
.dg-review-page:disabled{opacity:.38;cursor:default}
@media(max-width:520px){.dg-review-pagination{gap:5px}.dg-review-page{min-width:33px;height:33px;padding:0 8px;border-radius:9px}}

/* =========================================================
   Contact Form 7 modal normalization (1.10.5)
   CF7 core CSS is disabled, therefore the theme also owns the small structural
   rules that CF7 normally supplies (screen-reader output, response visibility,
   acceptance layout and field rhythm).
   ========================================================= */
.dg-modal__body--cf7{padding-top:2px;padding-bottom:26px}
.dg-cf7-wrap,.dg-cf7-wrap .wpcf7,.dg-cf7-wrap .wpcf7-form{width:100%}
.dg-cf7-wrap .wpcf7-form{display:flex;flex-direction:column;gap:18px;margin:0}
.dg-cf7-wrap .wpcf7-form>br,
.dg-cf7-wrap .dg-form-row>br{display:none}
.dg-cf7-wrap .wpcf7-form p{margin:0;padding:0}
.dg-cf7-wrap .dg-form-row{display:flex;flex-direction:column;gap:7px;margin:0!important;padding:0}
.dg-cf7-wrap .dg-form-row label{display:block;margin:0!important;font-size:14px;line-height:1.35;font-weight:600;color:var(--dg-text)}
.dg-cf7-wrap .dg-form-row label .dg-muted{font-weight:400}
.dg-cf7-wrap .dg-form-help{margin:0;font-size:12px;line-height:1.45;color:var(--dg-muted)}
.dg-cf7-wrap .wpcf7-form-control-wrap{display:block;width:100%;margin:0;padding:0}
.dg-cf7-wrap input.wpcf7-form-control:not([type="hidden"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.dg-cf7-wrap select.wpcf7-form-control,
.dg-cf7-wrap textarea.wpcf7-form-control{display:block;width:100%;margin:0!important;box-sizing:border-box;border:1px solid var(--dg-border);border-radius:10px;background:#fff;color:var(--dg-text);font:inherit;outline:none}
.dg-cf7-wrap input.wpcf7-form-control:not([type="hidden"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.dg-cf7-wrap select.wpcf7-form-control{height:48px;min-height:48px;padding:0 14px}
.dg-cf7-wrap textarea.wpcf7-form-control{min-height:104px;padding:12px 14px;line-height:1.5;resize:vertical}
.dg-cf7-wrap .wpcf7-form-control:focus{border-color:var(--dg-green);box-shadow:0 0 0 3px rgba(39,99,69,.08)}
.dg-cf7-wrap .wpcf7-not-valid{border-color:#d93025!important}
.dg-cf7-wrap .wpcf7-not-valid-tip{display:block;margin:0!important;padding:0;font-size:12px;line-height:1.35;color:var(--dg-danger)}

/* CF7 normally hides this using its own stylesheet. Keep accessibility output
   available to assistive technology without rendering it as a visible bullet list. */
.dg-cf7-wrap .screen-reader-response{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.dg-cf7-wrap .screen-reader-response ul,
.dg-cf7-wrap .screen-reader-response p{margin:0!important;padding:0!important}

/* Response output must not occupy space before CF7 has anything to say. */
.dg-cf7-wrap .wpcf7-response-output{display:block;margin:0!important;padding:11px 13px!important;border:0!important;border-radius:9px!important;background:var(--dg-green-soft);color:var(--dg-green);font-size:13px;line-height:1.4}
.dg-cf7-wrap .wpcf7-response-output:empty,
.dg-cf7-wrap form.init .wpcf7-response-output,
.dg-cf7-wrap form.resetting .wpcf7-response-output,
.dg-cf7-wrap form.submitting .wpcf7-response-output{display:none!important}
.dg-cf7-wrap form.invalid .wpcf7-response-output,
.dg-cf7-wrap form.unaccepted .wpcf7-response-output,
.dg-cf7-wrap form.payment-required .wpcf7-response-output,
.dg-cf7-wrap form.failed .wpcf7-response-output,
.dg-cf7-wrap form.aborted .wpcf7-response-output{background:#fef0ee;color:var(--dg-danger)}

/* Acceptance checkbox: compact left-aligned row instead of a centered checkbox. */
.dg-cf7-wrap .dg-form-consent{gap:0;padding-top:2px}
.dg-cf7-wrap .wpcf7-acceptance{display:block}
.dg-cf7-wrap .wpcf7-acceptance .wpcf7-list-item{display:block;margin:0!important}
.dg-cf7-wrap .wpcf7-acceptance label{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;font-weight:500!important;line-height:1.4;cursor:pointer}
.dg-cf7-wrap .wpcf7-acceptance input[type="checkbox"]{flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:var(--dg-green)}
.dg-cf7-wrap .wpcf7-list-item-label{display:inline;min-width:0}

.dg-cf7-wrap .wpcf7-submit{align-self:flex-start;min-height:46px;margin:0;border:1px solid var(--dg-green);border-radius:999px;background:var(--dg-green);color:#fff;font:600 14px/1 Inter,sans-serif;padding:0 24px;cursor:pointer}
.dg-cf7-wrap .wpcf7-submit:disabled{opacity:.65;cursor:wait}
.dg-cf7-wrap .wpcf7-spinner{display:inline-block;vertical-align:middle;margin:0 0 0 10px}

/* CF7 wraps hidden system inputs in a fieldset.hidden-fields-container.
   With the plugin stylesheet disabled the fieldset itself becomes visible due
   to the browser default fieldset box, even though all inputs inside are hidden. */
.dg-cf7-wrap fieldset.hidden-fields-container,
.dg-cf7-wrap .hidden-fields-container{display:none!important;margin:0!important;padding:0!important;border:0!important;width:0!important;height:0!important;min-height:0!important}

/* Context/reCAPTCHA helpers are never visual form fields. This also protects
   against third-party CF7 integrations that insert technical controls directly
   into the form root. */
.dg-cf7-wrap input[type="hidden"],
.dg-cf7-wrap .wpcf7-hidden,
.dg-cf7-wrap input[name^="_wpcf7"],
.dg-cf7-wrap input[name="dg_page"],
.dg-cf7-wrap input[name="dg_category"],
.dg-cf7-wrap input[name="dg_city"],
.dg-cf7-wrap input[name="dg_service"],
.dg-cf7-wrap input[name="dg_format"],
.dg-cf7-wrap input[name="dg_company"],
.dg-cf7-wrap textarea[name="_wpcf7_recaptcha_response"],
.dg-cf7-wrap textarea[name="g-recaptcha-response"]{display:none!important;width:0!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important}

@media(max-width:600px){
  .dg-cf7-wrap .wpcf7-form{gap:16px}
  .dg-cf7-wrap textarea.wpcf7-form-control{min-height:96px}
  .dg-cf7-wrap .wpcf7-submit{width:auto;min-width:150px}
}

/* =========================================================
   Firmateka pre-launch refinements (1.11.0)
   ========================================================= */
/* Icons inside buttons must follow the button text color in every state. */
.dg-btn .dg-icon,.dg-btn .dg-icon svg{color:inherit!important;stroke:currentColor!important}
.dg-btn--solid .dg-icon,.dg-btn--solid .dg-icon svg{color:#fff!important}
.dg-btn--solid:hover .dg-icon,.dg-btn--solid:hover .dg-icon svg{color:#fff!important}

/* Footer now has brand, navigation and advertising only. */
.dg-footer__grid{grid-template-columns:1.2fr .8fr 1.05fr}
.dg-footer__bottom a{color:inherit}
.dg-footer__bottom a:hover{color:#fff}

/* Advertising quick selector no longer asks for specialization. */
.dg-ad-selector__labels,.dg-ad-selector__grid{grid-template-columns:1.15fr .9fr 1.05fr auto}

/* Expanded company application form. */
.dg-modal__dialog--company{width:min(920px,100%)}
.dg-form-section{padding-top:20px;margin-top:20px;border-top:1px solid var(--dg-border)}
.dg-modal__body>.dg-form-section:first-child{padding-top:0;margin-top:0;border-top:0}
.dg-form-section h3{font-size:17px;line-height:1.3;margin:0 0 2px}
.dg-form-grid{display:grid;gap:0 14px}
.dg-form-grid--2{grid-template-columns:1fr 1fr}
.dg-form-grid--1{grid-template-columns:1fr}
.dg-form-row--wide{grid-column:1/-1}
.dg-field-textarea--short{min-height:78px}

/* Privacy policy. */
.dg-privacy-content{max-width:960px;padding:32px}
.dg-privacy-content h2{font-size:21px;margin:28px 0 8px}
.dg-privacy-content h2:first-child{margin-top:0}
.dg-privacy-content p{color:#4d574f;margin:0 0 12px}
.dg-privacy-content a{color:var(--dg-green);text-decoration:underline;text-underline-offset:2px}

/* Cookie consent. */
.dg-cookie{position:fixed;left:24px;right:24px;bottom:24px;z-index:1400;max-width:1180px;margin:0 auto;padding:18px 20px;background:#fff;border:1px solid var(--dg-border);border-radius:18px;box-shadow:0 18px 60px rgba(20,50,34,.2);display:flex;align-items:center;justify-content:space-between;gap:28px;transition:opacity .2s ease,transform .2s ease}
.dg-cookie.is-hidden{opacity:0;transform:translateY(10px);pointer-events:none}
.dg-cookie__copy{min-width:0}.dg-cookie__copy strong{font-size:16px}.dg-cookie__copy p{margin:3px 0 4px;color:var(--dg-muted);font-size:12px;line-height:1.5}.dg-cookie__copy a{color:var(--dg-green);font-size:12px;font-weight:600}
.dg-cookie__actions{display:flex;gap:9px;flex:0 0 auto}
.dg-cookie__actions .dg-btn{min-width:105px}

@media(max-width:980px){
  .dg-ad-selector__labels,.dg-ad-selector__grid{grid-template-columns:1fr 1fr 1fr}.dg-ad-selector__grid .dg-btn{grid-column:1/-1}
  .dg-footer__grid{grid-template-columns:1fr 1fr}.dg-footer__brand{grid-column:1/-1}
}
@media(max-width:700px){
  .dg-form-grid--2{grid-template-columns:1fr}
  .dg-form-row--wide{grid-column:auto}
  .dg-ad-selector__labels{display:none}.dg-ad-selector__grid{grid-template-columns:1fr}
  .dg-footer__grid{grid-template-columns:1fr}.dg-footer__brand{grid-column:auto}
  .dg-cookie{left:12px;right:12px;bottom:12px;display:block;padding:16px}.dg-cookie__actions{margin-top:12px}.dg-cookie__actions .dg-btn{flex:1;min-width:0}
  .dg-privacy-content{padding:22px}
}
.dg-native-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:13px;line-height:1.45;font-weight:500;color:var(--dg-text)}
.dg-native-consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--dg-green);flex:0 0 auto}
.dg-native-consent a{color:var(--dg-green);text-decoration:underline;text-underline-offset:2px}

/* Multiple public company phones */
.dg-contact-item > div > a + a{display:block;margin-top:4px}

/* Automatic SEO copy 1.12 */
.dg-home-seo-copy{margin-top:34px}
