/*
Theme Name: DomWeb Theme
Theme URI: https://example.com/my-unique-theme
Author: DomWeb
Author URI: https://dom-web.ru
Description: Краткое описание моей уникальной темы.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: my-unique-theme
*/

html, body {
    min-height: 100vh;
    height: auto !important;
        }

.editblock {
    display: inline-block;
}


/* 1. Убираем внутренние отступы и границы */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

 
html {
  /* Плавный скролл */
  scroll-behavior: smooth;
  
  /* Предотвращает изменение размера шрифта на iOS */
  -webkit-text-size-adjust: 100%;
}

/* 3. Наследование шрифтов для форм */
input,
button,
textarea,
select {
  font: inherit;
}

 

/* 5. Убираем подчеркивание у ссылок */
a {
  text-decoration: none;
  color: inherit;
 
  align-items: center;
}

/* 6. Убираем стандартные стили для кнопок */
button {
  background: none;
  border: none;
  cursor: pointer;
}

/* 7. Изображения responsive  */
.imgadapt {
  max-width: 100%;
  height: auto;
  display: block;
}

.nowraptxt {
    white-space: nowrap;
}

.video-container {
	  display: block;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto; /* для центрирования */
}

.responsive-video {
     width: auto;
    max-width: 100%;
    height: auto;
    display: block;
	  max-height: 70vh;
}

/* 8. Убираем стандартные стили для полей ввода */
input,
textarea {
  border: none;
  outline: none;
}

/* 9. Предотвращаем перетаскивание изображений */
img {
  -webkit-user-drag: none;
  user-select: none;
  width: 100%;
    height: auto;
}

/* 10. Убираем стрелки у input type="number" */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

/* 11. Базовые настройки для body */
body {
  /* Улучшает рендеринг шрифтов */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  
  /* Минимальная высота */
  min-height: 100vh;
  
  /* Строки не разрываются посередине слова */
  line-height: 1.5;
}

/* 12. Сброс стилей для таблиц */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 13. Скрываем элементы с hidden атрибутом */
[hidden] {
  display: none !important;
}

/* 14. Убираем стандартный фон у select в IE */
select::-ms-expand {
  display: none;
}

.rel { position:relative;}
.abs { position:absolute;}
.ovhidden { overflow:hidden;}
.zindex99 { z-index:99;}

/* 15. Доступность для скрытых элементов */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}


/* Базовая группа элементов для обнуления */
body, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, dl, dd, ol, ul,
figure, hr, fieldset, legend, li {
  margin: 0;
  padding: 0;
}

/* Для списков */
ul, ol {
  list-style: none;
  line-height: normal;
}

li {
line-height: inherit; /* наследует от родителя */
}

/* Для заголовков (опционально) */
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}


 

/* Улучшает читаемость текста */
body {
  text-rendering: optimizeSpeed;
}


/* Эффекты */
.grayscale {
    filter: grayscale(100%);
}


.upp {text-transform: uppercase;}

 /* Выравнивание */

.jc-start {justify-content: flex-start;}
.jc-end {justify-content: flex-end;}
.jc-center {justify-content: center;}
.jc-arround {justify-content: space-arround;}
.jc-between {justify-content: space-between;}
.jc-evenly {justify-content: space-evenly;}

.ac-start {align-content: flex-start;}
.ac-end {align-content: flex-end;}
.ac-center {align-content: center;}
.ac-arround {align-content: space-arround;}
.ac-between {align-content: space-between;}
.ac-stretch {align-content: stretch;}



.ai-start {align-items: flex-start;}
.ai-end {align-items: flex-end;}
.ai-center {align-items: center;}
.ai-stretch {align-items: stretch;}
.ai-baseline {align-items: baseline;}

.alignright {
    float: right;
    margin: 0.375em 0 0.375em 1.5em;
}

.alignleft {
    float: left;
    margin: 0.375em 1.5em 0.375em 0;
    clear: left;
}

.aligncenter {
    display: block;
    margin: 1.5em auto;
    text-align: center;
    clear: both;
}

.alignnone {
    margin: 0.375em 0 1.5em 0;
}

.center {
	text-align:center;
}

.icon_left, .icon_right, .icon_center { 
   position:relative;
   display: flex;
   align-items: center;
   align-content: center;
}

.icon_left:before, .icon_right:before, .icon_center:before {
	position:absolute;
    content: "";
    display: inline-block; 
    background-repeat: no-repeat;
    background-size: contain;
}

.icon_left:before {
    background-position: left center;
	left:0;  
}

.icon_right:before {
    background-position: right center;
	right:0;  
}

.icon_center:before {
    background-position: center;
	left:50%;  
	top:50%;
	transform: translate(-50%, -50%);
}




/* Колонки, контейнеры */

.row, .row_n {
	display:flex;
    box-sizing: border-box;	 
}

 
.col {
    box-sizing: border-box;   
	display:flex;
	flex-direction: column;
}

.col_rev {
	flex-direction: column-reverse;
}


/* Радиус блоков */

.rad5 { border-radius: 5px;}
.rad10 { border-radius: 10px;}
.rad20 { border-radius: 20px;}
.rad30 { border-radius: 30px;}
.rad40 { border-radius: 40px;}
.rad50 { border-radius: 50px;}
.rad60 { border-radius: 60px;}
.rad80 { border-radius: 80px;}
.rad100 { border-radius: 100px;}
.radcircle { border-radius: 50%;}

/* Отступы */

.wrap {flex-wrap:wrap !important;}
.nowrap {flex-wrap:nowrap !important;}

.vpadd5 {padding-top:5px; padding-bottom:5px;}
.vpadd10 {padding-top:10px; padding-bottom:10px;}
.vpadd20 {padding-top:20px; padding-bottom:20px;}
.vpadd30 {padding-top:30px; padding-bottom:30px;}
.vpadd40 {padding-top:40px; padding-bottom:40px;}
.vpadd50 {padding-top:50px; padding-bottom:50px;}
.vpadd60 {padding-top:60px; padding-bottom:60px;}
.vpadd70 {padding-top:70px; padding-bottom:70px;}
.vpadd80 {padding-top:80px; padding-bottom:80px;}
.vpadd90 {padding-top:90px; padding-bottom:90px;}
.vpadd100 {padding-top:100px; padding-bottom:100px;}
.vpadd110 {padding-top:110px; padding-bottom:110px;}
.vpadd120 {padding-top:120px; padding-bottom:120px;}
.vpadd130 {padding-top:130px; padding-bottom:130px;}
.vpadd140 {padding-top:140px; padding-bottom:140px;}
.vpadd150 {padding-top:150px; padding-bottom:150px;}
.vpadd160 {padding-top:160px; padding-bottom:160px;}


@media (max-width: 768px) { 
.vpadd60 {padding-top:30px; padding-bottom:30px;}
.vpadd70 {padding-top:30px; padding-bottom:30px;}
.vpadd80 {padding-top:40px; padding-bottom:40px;}
.vpadd90 {padding-top:40px; padding-bottom:40px;}
.vpadd100 {padding-top:50px; padding-bottom:50px;}
.vpadd110 {padding-top:50px; padding-bottom:50px;}
.vpadd120 {padding-top:60px; padding-bottom:60px;}
.vpadd130 {padding-top:70px; padding-bottom:70px;}
.vpadd140 {padding-top:80px; padding-bottom:80px;}
.vpadd150 {padding-top:90px; padding-bottom:90px;}
.vpadd160 {padding-top:100px; padding-bottom:100px;}
}

.gpadd5 {padding-left:5px; padding-right:5px;}
.gpadd10 {padding-left:10px; padding-right:10px;}
.gpadd20 {padding-left:20px; padding-right:20px;}
.gpadd30 {padding-left:30px; padding-right:30px;}
.gpadd40 {padding-left:40px; padding-right:40px;}
.gpadd50 {padding-left:50px; padding-right:50px;}
.gpadd60 {padding-left:60px; padding-right:60px;}
.gpadd70 {padding-left:70px; padding-right:70px;}
.gpadd80 {padding-left:80px; padding-right:80px;}
.gpadd90 {padding-left:90px; padding-right:90px;}
.gpadd100 {padding-left:100px; padding-right:100px;}
.gpadd110 {padding-left:110px; padding-right:110px;}
.gpadd120 {padding-left:120px; padding-right:120px;}
.gpadd130 {padding-left:130px; padding-right:130px;}
.gpadd140 {padding-left:140px; padding-right:140px;}
.gpadd150 {padding-left:150px; padding-right:150px;}
.gpadd160 {padding-left:160px; padding-right:160px;}

@media (max-width: 768px) { 
.gpadd60 {padding-left:30px; padding-right:30px;}
.gpadd70 {padding-left:30px; padding-right:30px;}
.gpadd80 {padding-left:40px; padding-right:40px;}
.gpadd90 {padding-left:40px; padding-right:40px;}
.gpadd100 {padding-left:50px; padding-right:50px;}
.gpadd110 {padding-left:50px; padding-right:50px;}
.gpadd120 {padding-left:60px; padding-right:60px;}
.gpadd130 {padding-left:70px; padding-right:70px;}
.gpadd140 {padding-left:80px; padding-right:80px;}
.gpadd150 {padding-left:90px; padding-right:90px;}
.gpadd160 {padding-left:100px; padding-right:100px;}
}

.vmarg5 {margin-top:5px; margin-bottom:5px;}
.vmarg10 {margin-top:10px; margin-bottom:10px;}
.vmarg20 {margin-top:20px; margin-bottom:20px;}
.vmarg30 {margin-top:30px; margin-bottom:30px;}
.vmarg40 {margin-top:40px; margin-bottom:40px;}
.vmarg50 {margin-top:50px; margin-bottom:50px;}
.vmarg60 {margin-top:60px; margin-bottom:60px;}
.vmarg70 {margin-top:70px; margin-bottom:70px;}
.vmarg80 {margin-top:80px; margin-bottom:80px;}

.gmarg5 {padding-top:5px; padding-bottom:5px;}
.gmarg10 {margin-left:10px; margin-right:10px;}
.gmarg20 {margin-left:20px; margin-right:20px;}
.gmarg30 {margin-left:30px; margin-right:30px;}
.gmarg40 {margin-left:40px; margin-right:40px;}
.gmarg50 {margin-left:50px; margin-right:50px;}
.gmarg60 {margin-left:60px; margin-right:60px;}
.gmarg70 {margin-left:70px; margin-right:70px;}
.gmarg80 {margin-left:80px; margin-right:80px;}

.vgap5 {row-gap:5px;}
.vgap10 {row-gap:10px;}
.vgap20 {row-gap:20px;}
.vgap30 {row-gap:30px;}
.vgap40 {row-gap:40px;}
.vgap50 {row-gap:50px;}
.vgap60 {row-gap:60px;}
.vgap70 {row-gap:70px;}
.vgap80 {row-gap:80px;}

.ggap5 {column-gap:5px;}
.ggap10 {column-gap:10px;}
.ggap20 {column-gap:20px;}
.ggap30 {column-gap:30px;}
.ggap40 {column-gap:40px;}
.ggap50 {column-gap:50px;}
.ggap60 {column-gap:60px;}
.ggap70 {column-gap:70px;}
.ggap80 {column-gap:80px;}
 
/* Интервалы */

.intrval20 {height:20px;}
.intrval30 {height:30px;}	
.intrval40 {height:40px;}
.intrval60 {height:60px;}
.intrval90 {height:90px;}
.intrval120 {height:120px;}
.intrval140 {height:140px;}
.intrval160 {height:160px;}
.intrval180 {height:180px;}
.intrval200 {height:200px;}

 

/*  Типография  */
 
.small { font-size:0.55rem; }
.small2 { font-size:0.75rem; }
.small3 { font-size:0.85rem; }
.middle { font-size:1rem; }
.middle2 { font-size:1.2rem; }
.middle3 { font-size:1.6rem; }
.large { font-size:2rem; }
.large2 { font-size:2.5rem; }
.large3 { font-size:3rem; }
.large4 { font-size:4rem; }
.large6 { font-size:6rem; }
.large8 { font-size:8rem; }

.italic { font-style:italic;}

@media (max-width: 768px) { 

 
.middle { font-size:0.85rem; }
.middle2 { font-size:1rem; }
.middle3 { font-size:1.3rem; }
.large { font-size:1.6rem; }
.large2 { font-size:2rem; }
.large3 { font-size:2.4rem; }
.large4 { font-size:2.6rem; }
.large6 { font-size:3rem; }
.large8 { font-size:4rem; }
}


ul.list-style {
	list-style-type: disc;
	margin-left:40px;
}

ol.list-style   {
    list-style: auto;
	margin-left:40px;
}


/*  Ширина  */

.width10, .width10_n { width:20%;}
.width20, .width20_n { width:20%;}
.width30, .width30_n { width:30%;}
.width40, .width40_n { width:40%;}
.width50, .width50_n { width:50%;}
.width70, .width60_n { width:70%;}
.width60, .width70_n { width:60%;}
.width80, .width80_n { width:80%;}
.width90, .width90_n { width:90%;}
.width100 { width:100%;}
.width_fit, .width_fit_n { width:fit-content;}


@media (max-width: 768px) {
	
	
	/* Отключает подсветку при тапе на мобильных */
  * {-webkit-tap-highlight-color: transparent;}
  
 .alignright, .alignleft {
        float: none;
        margin: 0.625em 0;
        display: block;
        clear: both;
		width: 100% !important;
		max-width: 100% !important;
    }  
	
	
   
  
  
  .row {
	  flex-direction: column;
	  
    
  }
  
  .col_rev_m {
	flex-direction: column-reverse;
}
  
  .width10, .width20, .width30, .width40, .width50, .width60, .width70, .width80, .width90  { width:100%;}

 .width_fit {width: 100%;text-align: center;}
  
  
}





