:root{
  --text_color:#262626;
  --text_color_lighten_10:#404040;
  --text_color_lighten_20:#595959;
  --text_color_lighten_30:#737373;
  --text_color_lighten_40:#8c8c8c;
  --text_color_lighten_50:#a6a6a6;
  --text_color_lighten_60:#bfbfbf;
  --text_color_lighten_70:#d9d9d9;
  --text_color_fade_10:rgba(38,38,38,.10);
  --text_color_fade_20:rgba(38,38,38,.20);
  --text_color_fade_60:rgba(38,38,38,.60);
  --text_color_fade_80:rgba(38,38,38,.80);
  --primary_color:#17a8d8;
  --primary_color_lighten_10:#38beea;
  --primary_color_lighten_20:#66cdef;
  --primary_color_darken_10:#1284aa;
  --primary_color_darken_20:#0d607c;
  --primary_color_fade_10:rgba(23,168,216,.10);
  --primary_color_fade_20:rgba(23,168,216,.20);
  --primary_color_fade_30:rgba(23,168,216,.30);
  --bg:#ffffff;
  --bg-alt:#f7fbfd;
  --container:1240px;
  --radius-sm:12px;
  --radius-md:16px;
  --radius-lg:20px;
  --shadow-sm:0 4px 16px rgba(23,168,216,.06);
  --shadow-md:0 8px 30px rgba(23,168,216,.08);
  --shadow-lg:0 16px 48px rgba(23,168,216,.12);
  --transition:0.25s cubic-bezier(.4,0,.2,1);
  --font-display:'Unbounded',system-ui,sans-serif;
  --font-body:'Golos Text',system-ui,sans-serif;
  --pad:clamp(16px,4vw,20px);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);
  color:var(--text_color);
  background:var(--bg);
  line-height:1.6;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--text_color)}
h1{font-size:clamp(28px,5vw,48px)}
h2{font-size:clamp(24px,4vw,40px);margin-bottom:12px}
h3{font-size:clamp(18px,2.5vw,22px)}
p{color:var(--text_color_lighten_20)}
a{color:inherit;text-decoration:none;transition:color var(--transition)}
img{max-width:100%;height:auto;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,textarea{font-family:inherit;font-size:inherit}
ul{list-style:none}

.container{max-width:var(--container);margin:0 auto;padding:0 var(--pad)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 24px;border-radius:var(--radius-sm);
  font-weight:500;font-size:15px;
  transition:all var(--transition);
  white-space:nowrap;cursor:pointer;
  border:1px solid transparent;
}
.btn-primary{background:var(--primary_color);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover{background:var(--primary_color_darken_10);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.btn-primary:active{transform:translateY(0)}
.btn-outline{background:transparent;color:var(--primary_color);border-color:var(--primary_color)}
.btn-outline:hover{background:var(--primary_color);color:#fff}
.btn-ghost{background:var(--primary_color_fade_10);color:var(--primary_color_darken_10)}
.btn-ghost:hover{background:var(--primary_color_fade_20)}

.icon-btn{
  width:44px;height:44px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  color:var(--text_color_lighten_20);
  transition:all var(--transition);
}
.icon-btn:hover{background:var(--primary_color_fade_10);color:var(--primary_color)}
.icon-btn svg{width:22px;height:22px}

section{padding:clamp(48px,8vw,96px) 0}
.section-head{text-align:center;margin-bottom:clamp(32px,5vw,56px)}
.section-head p{max-width:640px;margin:12px auto 0;font-size:clamp(15px,2vw,17px)}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease, transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* 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;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* 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;
}