/*!
Theme Name: ГарантБытовка
Theme URI: rostislav-borodin.ru
Author: Ростислав
Author URI: rostislav-borodin.ru
Description: Сайт для компании ГарантБытовка
Version: 1.0.0
Text Domain: landingbytovki
*/

:root{
  --bg:#FFFFFF; --bg-alt:#F8F9FA;
  --accent:#FF6B00; --accent-h:#E65C00; --accent-soft:#FFF1E6;
  --ink:#1A1A1A; --text:#4D4D4D; --muted:#6C757D; --border:#CED4DA;
  --navy:#1E2A3A; --dark:#2C2C2C;
  --fd:'Montserrat',system-ui,sans-serif;
  --fb:'Roboto',system-ui,sans-serif;
  --fm:'JetBrains Mono',monospace;
  --rad:10px;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{font:400 16px/1.6 var(--fb);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
body.lock{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--fd);color:var(--ink);line-height:1.22;font-weight:700}
button{font-family:inherit;cursor:pointer}
::selection{background:var(--accent);color:#fff}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.container{width:100%;max-width:1240px;margin:0 auto;padding:0 20px}
.container-catalog{width:100%;margin:0 auto;padding:0 20px}
.section{padding:64px 0}
@media(min-width:980px){.section{padding:96px 0}}
.ic{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px;flex:none}
.ic.f{fill:currentColor;stroke:none}
/* заголовки разделов */
.sec-label{display:inline-flex;align-items:center;gap:10px;font:600 12px/1 var(--fm);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.sec-label::before{content:"";width:26px;height:2px;background:var(--accent)}
.sec-title{font-size:clamp(26px,3.6vw,36px);margin:12px 0 12px}
.sec-sub{color:var(--muted);max-width:620px;font-size:16px}
.sec-head{margin-bottom:38px}

/* ============ КНОПКИ / ПОЛЯ ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font:600 16px/1 var(--fd);padding:15px 27px;border-radius:8px;border:2px solid transparent;text-decoration:none;color:#fff;background:var(--accent);transition:background .25s,color .25s,border-color .25s,transform .25s,box-shadow .25s;white-space:nowrap}
.btn:hover{background:var(--accent-h);transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(230,92,0,.6)}
.btn:active{transform:translateY(0)}
.btn-outline{background:transparent;color:var(--accent);border-color:var(--accent)}
.btn-outline:hover{background:var(--accent);color:#fff}
.btn-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-light:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06);transform:none;box-shadow:none}
.btn-sm{padding:11px 16px;font-size:14px}
.btn-block{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none}
.btn.loading{pointer-events:none;position:relative;color:transparent!important}
.btn.loading::after{content:"";position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.field{margin-bottom:14px;text-align:left}
.field label{display:block;font:600 13px var(--fd);color:var(--ink);margin-bottom:6px}
.field input,.field select{width:100%;background:#fff;border:1px solid var(--border);border-radius:6px;padding:12px 16px;font:400 16px var(--fb);color:var(--ink);transition:border-color .2s,box-shadow .2s}
.field input::placeholder{color:var(--muted)}
.field input:focus,.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,107,0,.16)}
.field.err input{border-color:#E5484D;box-shadow:0 0 0 3px rgba(229,72,77,.12)}
.field .fmsg{display:none;font-size:12px;color:#E5484D;margin-top:4px}
.field.err .fmsg{display:block}
/* ============ ПРОГРЕСС ПРОКРУТКИ + КНОПКА НА ВЕРХ ============ */
.sprog{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:200;transition:width .1s linear}
.totop{position:fixed;right:22px;bottom:22px;z-index:80;width:46px;height:46px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:grid;place-items:center;box-shadow:0 12px 26px -10px rgba(230,92,0,.7);opacity:0;transform:translateY(14px);pointer-events:none;transition:.3s}
.totop.show{opacity:1;transform:none;pointer-events:auto}
.totop:hover{background:var(--accent-h)}
.totop .ic{transform:rotate(180deg)}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}