/* Дополнения к исходному оформлению. */
/* Шапка: логотип, свободное место для меню и телефон справа. */
@media(min-width:821px){
  .header{height:124px!important;grid-template-columns:minmax(190px,220px) minmax(0,1fr) auto!important;gap:24px!important;padding-left:max(24px,calc((100% - 1400px)/2))!important;padding-right:max(24px,calc((100% - 1400px)/2))!important}
  .header .logo-img{width:100%!important;max-width:220px!important;height:auto!important}
  .header .nav{justify-content:center!important;flex-wrap:wrap}
  .header .phonebox{width:auto!important;justify-self:end!important;text-align:center}
  .header .city{margin-left:0!important}
}
@media(min-width:1101px){
  .header .nav a{font-size:13px!important;padding:9px 7px!important}
  .header .nav{gap:clamp(12px,1.4vw,26px)!important}
}
/* Основные действия выровнены с карточками преимуществ. */
.hero .actions{justify-content:center!important;gap:18px!important}
.hero .actions .primary,.hero .actions .secondary{padding:14px 24px!important;min-height:48px!important;box-shadow:none!important;text-shadow:none!important;animation:none!important}
.hero .actions .primary{background:#c4a66c!important;border:1px solid #c4a66c!important;color:#191b15!important;-webkit-text-fill-color:#191b15!important}
.hero .actions .secondary{background:#181d18!important;border:1px solid #a48c60!important;color:#eee8dc!important}
.hero .actions .primary::after,.hero .actions .secondary::after{display:none!important}
.hero .actions .primary:hover{background:#d3b780!important}
.hero .actions .secondary:hover{background:#2a3026!important}
@media(min-width:821px){
  .hero .actions{width:calc(100% - 76px)!important;max-width:1160px!important;margin-left:auto!important;margin-right:auto!important}
}
.hero .stats.stats-pict{background:none!important;border:0!important;box-shadow:none!important}
/* Компактные карточки преимуществ без уменьшения подписей. */
.hero .stats.stats-pict .stat{padding:10px 12px!important;gap:12px!important}
.hero .stat-pict-icon{width:48px;height:48px;flex-basis:48px}
.hero .stat-pict-icon svg{width:42px;height:42px}
.hero .stats.stats-pict .stat-years-visual{padding:0!important}
.hero .stat-years-photo{height:160px;min-height:0!important}
.hero .stat-years-photo img{height:100%;min-height:0;object-fit:contain}
@media(min-width:821px){
  .hero .stats.stats-pict{max-width:1160px!important;margin-left:auto!important;margin-right:auto!important}
}
@media(max-width:820px){
  .hero .stats.stats-pict .stat{min-height:96px!important;padding:8px!important;gap:8px!important}
  .hero .stat-years-photo{height:104px}
  .hero .stat-pict-icon{width:36px;height:36px;flex-basis:36px}
  .hero .stat-pict-icon svg{width:34px;height:34px}
}
/* Слайдер ниже примерно на 20%: сокращаем свободное место, сохраняя размер кнопок. */
@media(min-width:1101px){
  .hero .hero-inner{min-height:200px!important}
  .hero .actions{margin-top:130px!important}
}
@media(min-width:821px) and (max-width:1100px){
  .hero .hero-inner{min-height:190px!important}
  .hero .actions{margin-top:115px!important}
}
@media(max-width:820px){
  .hero .hero-gallery{height:240px!important;min-height:240px!important;max-height:240px!important}
}
@media(max-width:430px){
  .hero .hero-gallery{height:208px!important;min-height:208px!important;max-height:208px!important}
}
@media(max-width:360px){
  .hero .hero-gallery{height:188px!important;min-height:188px!important;max-height:188px!important}
}
[hidden]{display:none!important}
/* Перекрывает старое правило #modal #result с display:block!important. */
#modal #result[hidden]{display:none!important}
:focus-visible{outline:3px solid #d49a47;outline-offset:5px}
.dialog-lock{overflow:hidden}
.site-footer{padding:24px;text-align:center;background:#080808;color:#ccc;font-size:14px;line-height:1.7}
/* Кнопка находится на фотографии, выше блока статистики и рядом с точками. */
.slider-pause{position:absolute;right:42px;top:190px;z-index:81;border:1px solid #d49a47;border-radius:20px;background:#080808b3;color:white;padding:8px 16px;font-size:12px}
.modal,.complex-modal{overflow-y:auto}
.dialog,.complex-modal-dialog{max-height:90dvh;overflow-y:auto}
/* Видимые кнопки закрытия и перенос длинных названий в узком окне. */
#modal #close{color:#dbc18e;min-width:44px;min-height:44px;border:1px solid #867044;border-radius:50%;background:#181c17;font-size:28px;line-height:1}
.complex-modal-item{overflow-wrap:anywhere;min-width:0}
.work-card-content small{max-width:calc(100% - 72px)!important}
.complex-modal-dialog .complex-phone-label{font-size:clamp(13px,3.7vw,20px);line-height:1.3}
.complex-modal-dialog .complex-phone-btn{justify-content:space-between}
.complex-modal-dialog{scrollbar-gutter:stable}
.complex-modal-dialog .complex-modal-close{position:sticky;float:right;top:0;right:0;z-index:2;background:#181c17}
.services-pop{max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;min-width:0!important}
.services-panel{min-height:0}
@media(min-width:821px) and (max-width:1100px){
  .header{grid-template-columns:minmax(130px,190px) minmax(0,1fr) auto!important;gap:12px!important}
  .header .logo-img{max-width:100%!important;height:auto!important}
  .header .phonebox{width:auto!important;min-width:0}
  .header .nav{gap:12px!important;flex-wrap:wrap;justify-content:center}
}
@media(max-width:820px){
  .work-complex-grid{grid-template-columns:minmax(0,1fr)!important}
  .work-service-card{min-width:0;width:100%;max-width:100%}
  .hero .hero-inner{min-height:0!important;height:0!important;padding:0!important;overflow:hidden!important}
  .hero .actions{width:calc(100% - 24px)!important;margin:12px!important}
  .complex-modal-dialog{width:calc(100% - 20px)!important}
  .hero .hero-clean-dots{top:210px!important;left:12px!important;right:12px!important;bottom:auto!important;transform:none!important;flex-direction:row!important;justify-content:center;gap:10px!important;width:auto!important}
  .slider-pause{top:120px;left:12px;right:auto}
  /* Круг остаётся маленьким, но область нажатия удобнее для пальца. */
  .hero .hero-clean-dots{gap:0!important;padding:3px 2px!important}
  .hero .hero-clean-dot{position:relative;width:24px!important;height:28px!important;flex:0 0 24px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}
  .hero .hero-clean-dot::before{content:"";position:absolute;width:11px;height:11px;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #fff;border-radius:50%;background:#ffffff38}
  .hero .hero-clean-dot.active::before{background:#d99a35;border-color:#d99a35;box-shadow:0 0 8px #d99a3580}
}
@media(max-width:430px){.hero .hero-clean-dots{top:173px!important}}
@media(max-width:430px){
  .stats.stats-pict .stat:last-child{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
  .stats.stats-pict .stat:last-child>div{min-width:0;max-width:100%}
  .stats.stats-pict .stat:last-child b{overflow-wrap:anywhere}
}
@media(max-width:360px){.hero .hero-clean-dots{top:158px!important}}
@media(max-width:360px){.complex-modal-list{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-real.active,.shimmer{animation:none!important}*{transition:none!important}}
