@font-face {
	font-family: 'Roboto'; 
	src: url(fonts/Roboto-Regular.ttf); 
}
@font-face {
	font-family: 'Roboto-Light'; 
	src: url(fonts/Roboto-Light.ttf); 
}
@font-face {
	font-family: 'Roboto-Bold'; 
	src: url(fonts/Roboto-Bold.ttf); 
}
@font-face {
	font-family: 'Roboto-Black'; 
	src: url(fonts/Roboto-Black.ttf); 
}
body {
    font-family: 'Roboto';
	color: #655D54;
}
.uppercase {
	text-transform: uppercase;
}
.btn-gradient {
	color: #fefefe;
	border-radius: 10px;
	border: none;
	padding: 15px 40px;
	background: linear-gradient(
    to right,
    #0488d1 0%,
    #02b1a5 50%,
    #00da79 100%
  );    
}
.card-img-overlay::after {
    content: '';
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
    background: linear-gradient(to top, #0488d1 0%, #02b1a5 50%, #00da79 100%);
    opacity: 0.2;
}
.btn-gradient:hover {
	color: #fefefe;
	text-decoration: underline;
	transform: scale(0.3s);
}
h3 {
    font-family: 'Roboto-Bold'; 
    font-size: 3em;
    font-weight: 600;
    color: #655D54;
    text-transform: uppercase;
}
.decoration-left {
	position:absolute;
	width:50%;
	height:90px;
	left:0;
	z-index: 999;
	
}
.decoration-right {
	position:absolute;
	width:15%;
	height:90px;
	right:0;
	z-index: 999;
	
}
.decoration-right-100 {
	position:absolute;
	width:100%;
	height:90px;
	right:0;
	z-index: 999;
	
}
.creative-industries-section {
    padding: 40px 20px;
    max-width: 1170px;
    margin: 0 auto;
    position: relative;
}
.gradient-bar-left {
  content: '';
  position: absolute;
  top: 0;
  right: 90%;
  transform: translateY(50%);
  width: calc(100vw - 100% - 20px); /* отнимаем ширину контейнера + отступы */
  height: 80px;
  background: linear-gradient(90deg, #007bff, #00c853);
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  z-index: -1;

  /* Для адаптивности — если ширина меньше 768px, скрываем или переносим */
  @media (max-width: 768px) {
    display: none; /* или можно сделать под текстом — см. ниже */
  }
}

.gradient-bar-right {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  width: calc(100vw - 100% - 20px); /* отнимаем ширину контейнера + отступы */
  height: 40px;
  background: linear-gradient(90deg, #007bff, #00c853);
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  z-index: -1;

  /* Для адаптивности — если ширина меньше 768px, скрываем или переносим */
  @media (max-width: 768px) {
    display: none; /* или можно сделать под текстом — см. ниже */
  }
}
.decoration-right-50 {
	position:absolute;
	width:50%;
	height:90px;
	right:0;
	z-index: 999;
	
}
.bottom-line {
	border-bottom: 1px solid #3c3c3c;
}
.display-4 {
    font-family: 'Roboto-Bold';
    color: #fefefe;
	font-size:5em;
	text-transform: uppercase;
	line-height:1;
}  
.display-4 span {
    font-family: 'Roboto-Black';
    font-weight: normal;
    color: #fefefe;
	text-transform: uppercase;
	font-size: 0.5em;
	line-height:1;
	
}
.lead {
    
    color: #fefefe;
}
.navbar-brand.abs {
    position: absolute;
    width: auto;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}
.head {
    width: 100%;
}
.head-bg-l {
    position: relative;
    width: 100%;
    background: linear-gradient(
    to bottom,
    #0488d1 0%,
    #02b1a5 50%,
    #00da79 100%
  );    
}
.gradient {
	background: linear-gradient(
    to right,
    #0488d1 0%,
    #02b1a5 50%,
    #00da79 100%
  );   
}
.head-bg-b {
    position: relative;
    width: 100%;
	padding: 40px 0 100px 0;
}
.navbar {
background-color: transparent;
}
.nav-link {
color: #fff;
}
.nav-link:hover {
color: #D92424;
}
.btn-primary {
    font-family: 'Roboto';
    color: #fff;
    background-color: #D92424;
    border: #D92424;
}
.btn-primary:hover {
    background-color: #800;
}
.btn-primary:active {
    background-color: #800 !important;
}

.btn-primary {
    background-color: #D92424;
}

.btn-outline-primary {
    font-family: 'Roboto';
    font-weight: 600;
    color: #A79888;
    border: 2px solid #A79888;
}
.btn-outline-primary:hover {
    background-color: #A79888;
    color: #fff;
    border: 2px solid #A79888;
}
.btn-outline-primary:active {
    background-color: #A79888 !important;
    color: #fff;
    border: 2px solid #A79888 !important;
}
.head {
    background-color: #F2E7D4;

}
.first-section {
	margin-top: 40px;
	margin-bottom: 80px;
}
.first-section h2 {
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: right;
	font-size:5em;
	text-transform: uppercase;
	line-height:1;
}
.first-section span {
	display:block;
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: right;
	font-size:2em;
	text-transform: uppercase;
	line-height:1;
}
.service {
	line-height:1;
	margin-left:40px;
    color: #000;
}
.service p {
	font-weight: 600;
	padding: 0;
	margin: 0;
}
.service b {
	font-size: 1.5em;
	font-family: 'Roboto-Black';
}
.partners {
    position: relative;
    width: 100%;
    min-height: 30vh;
    background-image: url(img/sky-light.svg);
    background-repeat: no-repeat;
    background-size: 70%;
    background-position: bottom center;
}
.second-section {
	margin-top:40px;
	margin-bottom:40px;
}
.second-section h2 {
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: right;
	font-size: 5.2em;
	text-transform: uppercase;
	line-height:1;
}
.second-section span {
	display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: right;
	font-size:1.6em;
	text-transform: uppercase;
	line-height:1;
}
.section-title {
	text-align: center;
	margin-bottom: 30px;
	font-size: 2.5rem;
	font-weight: bold;
	color: #000;
}

.section-subtitle {
	text-align: center;
	margin-bottom: 30px;
	font-size: 1.2rem;
	color: #555;
}

.btn-help {
	display: inline-block;
	background: linear-gradient(90deg, #28a745, #007bff);
	color: white;
	padding: 12px 24px;
	border-radius: 30px;
	text-decoration: none;
	font-weight: bold;
	transition: all 0.3s ease;
}

.btn-help:hover {
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.3);
}
.btn-card {
  font-size: 14px;
  color: #fff;
  padding: .75rem 1.25rem;
  background: transparent; /* важно: фон изначально прозрачный */
  border: 1px solid #fff;
  border-radius: 10px;
  transition: color 0.3s ease;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  display: inline-block;
}
.card-title {
    color: #fff;
    font-family: 'Roboto';
    font-weight: 600;
    font-size: 1.2em;

}
/* Градиентный фон, изначально скрытый */
.btn-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #28a745, #007bff);
  border-radius: 10px;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* При наведении — показываем градиент и меняем цвет текста (если нужно) */
.btn-card:hover {
  color: #fff; /* можно оставить белым или изменить */
  border-color: transparent; /* опционально: убрать белую рамку при наведении */
}

.btn-card:hover::before {
  opacity: 1;
}
.second-section {
       .owl-carousel {
            position: relative;
        }

        .slide {
            height: 600px; /* Fixed height for all slides */
            min-height: 500px;
            overflow: hidden;
            position: relative;
        }

        .card-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .card-img-overlay {
            background: rgba(0, 0, 0, 0.7);
            padding: 20px;
            height: 100%;
        }

        .card-body {
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 0;
        }

        .cat-card {
            font-size: 10px;
            color: #fff;
            font-family: 'Roboto';
            
        }

        h5.card-title {
            font-size: 18px !important;
            color: #fff;
            font-family: 'Roboto' !important;
            font-weight: 600 !important;
        }

        .card-description {
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
        }

        .card-slug {
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto-Black';
            line-height: 1.4;
        }

        .card-text span {
            display: inline-block;
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
            text-transform: none;
        }
        .card-text {
            width: 100%;
        }
        .card-text ul {
            padding-left: 20px;
            margin-bottom: 0;
        }

        .card-text li {
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
            margin-bottom: 8px;
        }

        .btn-card {
            display: inline-block;
            padding: 10px 20px;
            background-color: transparent;
            color: white;
            border: 1px solid white;
            text-decoration: none;
            font-size: 12px;
            transition: all 0.3s ease;
        }

        .btn-card:hover {
            background-color: white;
            color: black;
        }

        /* Responsive adjustments */
        @media (max-width: 1200px) {
            .slide {
                height: 480px;
                min-height: 480px;
            }
        }

        @media (max-width: 992px) {
            .slide {
                height: 450px;
                min-height: 450px;
            }
        }

        @media (max-width: 768px) {
            .slide {
                height: 400px;
                min-height: 400px;
            }
            
            .card-body {
                padding: 15px !important;
            }
        }

        @media (max-width: 576px) {
            .slide {
                height: 350px;
                min-height: 350px;
            }
            
            .card-body {
                padding: 10px !important;
            }
            
            h5.card-title {
                font-size: 14px !important;
            }
        }
}
.third-section {
	margin-top:40px;
	margin-bottom:40px;
    color: #000;
    
}
.third-section h3 {
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: left;
	font-size: 3em;
	text-transform: uppercase;
	line-height:1;
}
.third-section span {
	display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: left;
	font-size:1.25em;
	line-height:1;
}
.third-section p {
    display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: left;
	font-size:1.25em;
	line-height:1;
}


.decoration-title {
    display: block;
    font-size: 4.2em !important;
    font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    position: relative;
}
.decoration-title::after {
    content: "";
    height: 68px;
    width: 100%;
    background: linear-gradient(to left, #28a745, #007bff);
    position: absolute;
    z-index: 1;
    top: 85%;
    left: 0;
}
.fourth-section {
    margin-top:40px;
	margin-bottom:40px;
}
.fourth-section h2 {
    font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: right;
	font-size:5em;
	text-transform: uppercase;
	line-height:1;
}
.fourth-section h3 {
    font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: left;
	font-size:2em;
	text-transform: uppercase;
	line-height:1;
}
.fourth-section span {
    display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: left;
	font-size:1.25em;
	line-height:1;
}
.first-card {
    max-height: 700px;
    overflow: hidden;
}
.card img {
    filter: blur(4px);
}
.secondary-card {
    max-height: 345px;
    min-height: 345px;
    overflow: hidden;
}
.card-body {
    position: relative;
    z-index: 999;
    height: 100%;
}
.fifth-section {
    margin-top:40px;
	margin-bottom:40px;
    color: #000;
}
.fifth-section h3 {
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: left;
	font-size: 3em;
	text-transform: uppercase;
	line-height:1;
}
.fifth-section p {
	display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: left;
	font-size:1.25em;
	line-height:1;
}
.sixth-section {
    margin-top:40px;
	margin-bottom:40px;
    color: #000;
}
.sixth-section h3 {
    display: block;
    position: relative;
	font-family: 'Roboto-Black';
    font-weight: 900;
    color: #000;
    text-align: left;
	font-size: 3em;
	text-transform: uppercase;
	line-height:1;
}
.sixth-section .decoration-right {
    width: 33%;
}
.sixth-section p {
	display:block;
	font-family: 'Roboto';
    font-weight: 400;
    color: #000;
    text-align: left;
	font-size:1.25em;
	line-height:1;
}

.sixth-section {
       .owl-carousel {
            position: relative;
        }

        .slide {
            height: 600px; /* Fixed height for all slides */
            min-height: 500px;
            overflow: hidden;
            position: relative;
        }

        .card-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .card-img-overlay {
            background: rgba(0, 0, 0, 0.7);
            padding: 20px;
            height: 100%;
        }

        .card-body {
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 0;
        }

        .cat-card {
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto';
            
        }

        h5.card-title {
            font-size: 18px !important;
            color: #fff;
            font-family: 'Roboto' !important;
            font-weight: 600 !important;
        }

        .card-description {
            font-size: 14px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
        }

        .card-slug {
            font-size: 14px;
            color: #fff;
            font-family: 'Roboto-Black';
            line-height: 1.4;
        }

        .card-text span {
            display: inline-block;
            font-size: 14px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
            text-transform: none;
        }
        .card-text {
            width: 100%;
        }
        .card-text ul {
            padding-left: 20px;
            margin-bottom: 0;
        }

        .card-text li {
            font-size: 12px;
            color: #fff;
            font-family: 'Roboto';
            line-height: 1.4;
            margin-bottom: 8px;
        }

        .btn-card {
            display: inline-block;
            padding: 10px 20px;
            background-color: transparent;
            color: white;
            border: 1px solid white;
            text-decoration: none;
            font-size: 12px;
            transition: all 0.3s ease;
        }

        .btn-card:hover {
            background-color: white;
            color: black;
        }

        /* Responsive adjustments */
        @media (max-width: 1200px) {
            .slide {
                height: 480px;
                min-height: 480px;
            }
        }

        @media (max-width: 992px) {
            .slide {
                height: 450px;
                min-height: 450px;
            }
        }

        @media (max-width: 768px) {
            .slide {
                height: 400px;
                min-height: 400px;
            }
            
            .card-body {
                padding: 15px !important;
            }
        }

        @media (max-width: 576px) {
            .slide {
                height: 350px;
                min-height: 350px;
            }
            
            .card-body {
                padding: 10px !important;
            }
            
            h5.card-title {
                font-size: 14px !important;
            }
        }
}
.instructors-section {
    .teacher-card {
      perspective: 1000px;
      height: 400px;
      margin: 15px auto;
      max-width: 320px;
    }

    .teacher-card-inner {
      position: relative;
      width: 100%;
      height: 100%;
      transition: transform 0.6s ease-in-out;
      transform-style: preserve-3d;
    }

    .teacher-card:hover .teacher-card-inner {
      transform: rotateY(180deg);
    }

    .teacher-card-front,
    .teacher-card-back {
      position: absolute;
      width: 100%;
      height: 100%;
      backface-visibility: hidden;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 6px 12px rgba(0,0,0,0.12);
    }

    .teacher-card-front {
      background: #fff;
    }

    .teacher-card-back {
      background: #fcfcfc;
      transform: rotateY(180deg);
      padding: 15px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .teacher-card img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .teacher-card h5 {
      font-weight: 600;
      color: #2c3e50;
    }

    .teacher-card p {
      font-size: 0.875rem;
      color: #555;
    }

    .teacher-card .btn {
      font-size: 0.8rem;
      padding: 4px 10px;
    }

}
footer {
    color: #fefefe;
    background:#1d2c3c;
    width: 100%;
    height: auto;
    position: relative;
}
footer .forms {
	position: relative;
    background: #fff;
    border-radius: 0px 0px 20px 20px;
}
footer .contacts span {
    display: inline-block;
	font-size:0.7em;
	line-height:1;
}

footer h4 {
    font-size: 1em;
    color: #fefefe;
    font-family: 'Roboto'; 
    text-transform: uppercase;

}
footer .contacts a {
	color:#fefefe;
	text-decoration:none;
	
}
.forms {
	color: #242424;

}
.forms h2 {
	text-transform:uppercase;
	font-family: 'Roboto-Black';
	font-size:.1.5em;
}
.forms span {
	display: block;
	font-family: 'Roboto';
	font-weight: 600;
	font-size: 0.8em;
	
}
.forms input, option, select {
	color: #666666;
}
.forms > .form-control:focus {
	border: none;
}
.forms a {
    color: #666666;
    text-decoration: none;

}
.forms a:hover {
    text-decoration: underline;
}
hr {
	color:#33414f;
}

.footer__sub-nav li {
    display: inline-block;
}
.footer__sub-nav a {
    color: #fefefe;
    text-decoration: none;
    padding: 0 15px;
}
.footer__sub-nav a:hover {
    text-decoration: underline;
}
.social a {
    font-size: 1.5em;
    color: #fefefe;
    text-decoration: none;
    font-weight: 600;
    padding: 0 15px;
}
.social a:hover {
    color: #fefefe;
}
@media (max-width: 1200px) {
    .container {
        max-width: 95%;
    }
    h3 {
        font-size: 2.5em;
    }
    .display-4 {
        font-size: 2.5rem;
    }
	.biography {
		font-size: 0.7rem;
		line-height: normal;
	}
	.biography span {
    color: #F2E7D4;
    font-family: 'CharisSIL';
    font-weight: 600;
    font-size: 1.5rem;
	}
	.poem__title {
		font-size: 1.5rem;
	}
	.poem__text {
		font-size: 0.7rem;
	}
}

@media (max-width: 992px) {
    .navbar-nav {
        flex-direction: column;
        width: 100%;
        text-align: center;
    }
    .nav-item {
        text-align: center;
    }
    .navbar-collapse {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
	.news_img {
		max-width: 100% !important;
	}
    .head-bg-l {
        background-size: 35%;
    }
    .head-bg-b {
        background-size: contain;
    }
	.biography {
		font-size: 0.7rem;
		line-height: normal;
	}
	.contacts {
        font-size: 1em;
        flex-direction: column;
    }
}

@media (max-width: 768px) {
    h3 {
        font-size: 2em;
    }
	.creation h3{
		font-size: 2em;
	}
    .display-4 {
        font-size: 1.5rem;
    }
	.display-4 span {
        padding-top: 20px;
        font-size: 2.5rem;
        display: block;
    }
	.text-muted {
		font-size: 0.9rem;
	}
	.biography span {
		font-size: 1rem !important;
	}
	.creation span {
		font-size: 0.8rem !important;
		display: block;
		padding: 15px 30px !important;
	}
    .container-fluid {
        padding: 0 15px;
    }
    .poems .col-3 {
        width: 100%;
    }
    .news .col-4 {
        width: 100%;
        margin-bottom: 20px;
    }
	
	.contacts {
        font-size: 1em;
        flex-direction: column;
    }
	.social {
        display: flex;
        justify-self: center;
    }
    .social a {
        font-size: 1.2em;
        padding: 0 10px;
    }
}

@media (max-width: 576px) {
    .display-4 span {
        font-family: 'GreatVibes';
        font-weight: normal;
        color: #D92424;
        font-size: 1.2em;
		padding-top: 10px;
	}
	.news_img {
		max-width: 100% !important;
	}
    .w-50 {
        width: 100% !important;
    }
    .creation img{
        width: 100%;
        height: auto;
    }
    .jury {
        background-image: none;
    }
    .jury h3 {
        font-size: 1.5em;
    }
    .committee h3 {
        font-size: 1.5em;
    }
    .news h3 {
        font-size: 1.5em;
    }
    .faq h3 {
        font-size: 1.5em;
    }
    .partners h3 {
        font-size: 1.5em;
    }
    footer h4 {
        font-size: 1.5em;
    }
    .btn-lg {
        font-size: 1rem;
        padding: 10px 20px;
    }
    .social {
        display: flex;
        justify-self: center;
    }
    .social a {
        font-size: 1.2em;
        padding: 0 10px;
    }
    .footer__sub-nav a {
        padding: 5px;
    }
    .contacts {
        font-size: 1em;
        flex-direction: column;
    }

}
