@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;0,900;1,400;1,700;1,900&display=swap');

@font-face {
    font-family: 'Lato-Medium';
    src: url('../fonts/Lato-MediumItalic.eot');
    src: url('../fonts/Lato-MediumItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Lato-MediumItalic.woff2') format('woff2'),
        url('../fonts/Lato-MediumItalic.woff') format('woff'),
        url('../fonts/Lato-MediumItalic.ttf') format('truetype'),
        url('../fonts/Lato-MediumItalic.svg#Lato-MediumItalic') format('svg');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Lato-Medium';
    src: url('../fonts/Lato-Medium.eot');
    src: url('../fonts/Lato-Medium.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Lato-Medium.woff2') format('woff2'),
        url('../fonts/Lato-Medium.woff') format('woff'),
        url('../fonts/Lato-Medium.ttf') format('truetype'),
        url('../fonts/Lato-Medium.svg#Lato-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

:root {
	--font-awesome: 'Font Awesome 6 Free';
	--loto:'Lato', sans-serif;
	--lato-medium:'Lato-Medium';
	--extra-bold:900;
	--font-bold: 700;
	--semi-bold: 600;
	--medium: 500;
	--regular: 400;
	--red-color:#F0162B;
	--white:#fff;
	--black:#000;
	--light-purple:#836A82;
	--purple:#77667C;
	--light:#EFEDF7;
	--light-blue: #5191CD;
	--dark-blue: #092E53;
	--common-transition: all 0.3s ease 0s;
}
/* @media only screen and (min-width: 1600px) {
	.container { max-width: 1520px; }
} */

/* ~-~-~-~-~-~-~-~-~-~ global adjustments ~-~-~-~-~-~-~-~-~-~ */
html { overflow-x: hidden; }
body { margin: 0; padding: 0; font-family: var(--lato-medium); font-size: 24px; color: var(--light-purple); overflow: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: var(--loto);  margin: 0 0 30px; padding: 0; }
h1 { font-size: 64px; font-weight: var(--extra-bold); text-transform: uppercase;}
h2 { font-size: 48px; font-weight: var(--extra-bold); text-transform: uppercase;}
h3 { font-size: 32px; font-weight: var(--extra-bold); text-transform: uppercase;}
h4 { font-size: 28px; }
h5 { font-size: 24px; }
p { line-height: 1.44; margin: 0 0 30px; padding: 0; }
.big-body-font p { font-size: 24px; }
@media only screen and (max-width: 1399px) {
	h1 { font-size: 45px;}
	h2 { font-size: 35px;}
	h3 { font-size: 26px;}
	body{ font-size: 20px;}	
}
@media only screen and (max-width: 991px) {
	h1 { font-size: 35px;}
	h2 { font-size: 28px;}
	h3 { font-size: 24px;}
	body{ font-size: 18px;}	
}
@media only screen and (max-width: 767px) {
	h1 { font-size: 28px;}
	h2 { font-size: 25px;}
	h3 { font-size: 20px;}
}
@media only screen and (max-width: 767px){
	h1, h2, h3, h4, h5, h6,p{ margin-bottom: 25px;}
}
@media only screen and (max-width: 575px) {
	h1 { font-size: 26px;}
	h2 { font-size: 23px;}
	h3 { font-size: 19px;}
}
@media only screen and (max-width: 419px) {
	h1 { font-size: 24px;}
	h2 { font-size: 22px;}
	h3 { font-size: 18px;}
	body{ font-size: 16px;}
}
/* --- form-control start --- */
.form-row { margin-bottom: 20px; }
.form-row p { margin-bottom: 0; }
.form-control { background: var(--white); border: 1px solid #776679; border-radius: 0; padding: 10px 20px; font-size: 16px; }
input.form-control { height: 60px; }
textarea.form-control { height: 155px; resize: none; padding: 20px;}
.form-control:focus { box-shadow: none; border-color: #776679; color: #66444C; }
.form-control::-moz-placeholder { color: #776679; opacity: 1;}
.form-control:-ms-input-placeholder { color: #776679; font-size: 16px;}
.form-control::-webkit-input-placeholder { color: #776679; font-size: 16px;}
input.form-control.wpcf7-not-valid{ border-color: var(--red-color);}
.wpcf7-not-valid-tip{ display: none;}
span.wpcf7-spinner { position: absolute; top: -28px; right: 0; left: 0; margin: 0 auto; }
.wpcf7-response-output { text-align: center; margin: 25px 0 0 !important; padding: 5px 15px !important; }

.form-control:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    transition: background-color 9999s ease-in-out 0s; -webkit-text-fill-color: #66444C;
} 
.input-text{ font-size: 16px;}
.woocommerce-page .input-text:-webkit-autofill, .woocommerce-page .input-text:-webkit-autofill:hover, .woocommerce-page .input-text:-webkit-autofill:focus, .woocommerce-page .input-text:-webkit-autofill:active{ transition: background-color 9999s ease-in-out 0s; -webkit-text-fill-color: #000; background-color: var(--white);;}
.input-text::-moz-placeholder { color: #CACACA; opacity: 1;}
.input-text:-ms-input-placeholder { color: #CACACA; font-size: 16px;}
.input-text::-webkit-input-placeholder { color: #CACACA; font-size: 16px;}
@media only screen and (max-width: 767px){
	input.form-control { height: 50px; }
}
/* --- form-control end --- */


img { max-width: 100%; }
.img img { width: 100%; }
a, img { border: 0; text-decoration: none; outline: none; }
a, a:link, a:visited, a:focus, a:hover { outline: none; text-decoration: none; transition: var(--common-transition); }
a:hover { text-decoration: none; }
ul { padding: 0; margin: 0; list-style: none;}
.align-items-center .col-lg-6 .info-wraper ul { list-style: disc; padding-left: 2rem; }
.align-items-center .col-lg-6 .info-wraper ul li{ padding-bottom: 15px;}
.common-padding { padding: 100px 0; }
.common-padding-top { padding-top: 100px; }
.common-padding-bottom { padding-bottom: 100px !important; }

.box-bg-outer{ position: relative; padding-left: 50px;}
.box-bg-outer.text-right{ padding-right: 50px; padding-left: 0;}
.box-bg-inner{ position: relative; z-index: 2;}
.box-bg { width: 235px; height: 210px; position: absolute; left: 0;}
.box-bg-outer.text-right .box-bg{ right: 0; left: auto;}
.bg-purple{ background: #776679;}
.bg-red{ background: var(--red-color);}
.section-title{ color: var(--red-color); margin-bottom: 40px;}
.section-title span{ color: #776679;}
@media only screen and (max-width: 1199px){
	.box-bg-outer{ padding-left: 30px;}
	.box-bg-outer.text-right{ padding-right: 30px;}
}
@media only screen and (max-width: 991px) {
	.common-padding { padding: 80px 0; }
	.common-padding-top { padding-top: 80px; }
	.common-padding-bottom { padding-bottom: 80px !important; }
	.section-title { margin-bottom: 30px; }
}
@media only screen and (max-width: 767px) {
	.common-padding { padding: 60px 0; }
	.common-padding-top { padding-top: 60px; }
	.common-padding-bottom { padding-bottom: 60px !important; }
	.box-bg-outer { padding-left: 15px; }
	.box-bg-outer.text-right { padding-right: 15px; }
	.box-bg{ width: 180px; height: 180px;}
	
}

/* --- button start --- */
.btn, .woocommerce-page .woocommerce-button.button { display: inline-block; position: relative; background: var(--red-color); border: 1px solid var(--red-color); border-radius: 0; text-align: center; text-transform: capitalize; color: var(--white); font-size: 20px; line-height: 1; padding: 15px 30px; margin: 0; transition: var(--common-transition);}
.btn:hover, .woocommerce-page .woocommerce-button.button:hover { background: transparent; border: 1px solid var(--red-color); color: var(--red-color); }
.btn:focus-visible, :not(.btn-check)+.btn:active { color: var(--red-color); border-color: var(--red-color); outline: inherit; box-shadow: none; }
/* .button { background: transparent !important; padding: 0 !important; color: var(--red-color) !important; text-decoration: underline !important; font-weight: 500 !important; } */

@media only screen and (max-width: 991px){
	.btn{ font-size: 18px;}
}
@media only screen and (max-width: 575px){
	.btn{ font-size: 16px;}
}

/* --- button end --- */

/* --- header start ------------------------------------------------------------------------------------------- */
/* ~~hamburger menu start~~ */
.hamburger-nav { display: none; vertical-align: top; width: 30px; height: 24px; position: relative; margin: 0 0 0 15px; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; margin-top: 0; z-index: 9; }
.hamburger-nav span { display: block; position: absolute; height: 2px; width: 100%; background: var(--red-color); border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
.hamburger-nav span:nth-child(1) { top: 0px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }
.hamburger-nav span:nth-child(2) { top: 10px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }
.hamburger-nav span:nth-child(3) { top: 20px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }
.hamburger-nav-close { vertical-align: top; width: 30px; height: 24px; position: relative; margin: 0 0 0 15px; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; margin-top: 0; z-index: 9; }
.hamburger-nav-close span { display: block; position: absolute; height: 2px; width: 100%; background: var(--red-color); border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
.hamburger-nav-close span:nth-child(1) { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); top: 10px; left: 3px; }
.hamburger-nav-close span:nth-child(2) { width: 0%; opacity: 0; }
.hamburger-nav-close span:nth-child(3) { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); top: 10px; left: 2px; }

.hamburger-menu{ flex: 0 0 auto; vertical-align: top; width: 30px; height: 24px; position: relative; margin: 0 0 0 35px; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; margin-top: 0; z-index: 9; }
.hamburger-menu span{ display: block; position: absolute; height: 2px; width: 100%; background: var(--red-color); border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
.hamburger-menu span:nth-child(1){ top: 0px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }
.hamburger-menu span:nth-child(2){ top: 10px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }
.hamburger-menu span:nth-child(3){  top: 20px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; }

.hamburger-menu-close { vertical-align: top; width: 30px; height: 24px; position: relative; margin: 0 0 0 auto; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; margin-top: 0; z-index: 9; }
.hamburger-menu-close span { display: block; position: absolute; height: 2px; width: 100%; background: var(--red-color); border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
.hamburger-menu-close span:nth-child(1) { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); top: 10px; left: 3px; }
.hamburger-menu-close span:nth-child(2) { width: 0%; opacity: 0; }
.hamburger-menu-close span:nth-child(3) { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); top: 10px; left: 2px; }


/* ~~hamburger menu end~~ */

.main-header { position: relative; z-index: 999; }
.main-header .logo-wrap { max-width: 380px; }

.main-header li { font-size: 20px; text-align: center; margin: 0 17px; }
.main-header li a { display: block; padding: 22px 0; color: var(--red-color);}
.main-header li img { width: 25px; height: 25px; padding: 0 !important; transition: var(--common-transition); }
.main-header li a:hover { color: var(--black); }
.main-header li a:hover img{ filter: grayscale(100%);}

.main-header .user-info { margin-left: 17px; color: var(--red-color);}
.main-header .user-info .icon-wrap{ display: flex; align-items: center; justify-content: center; width: 25px; height: 25px; margin: 0 auto; padding: 0 !important;  }
.main-header .user-info .icon-wrap img{ transition: var(--common-transition);}
.main-header .user-info a{ color: var(--red-color);}
.main-header .user-info a:hover{ color: var(--black);}
.main-header .user-info a:hover img{ filter: grayscale(100%);}


/* .main-header .menu-item-has-children>a { padding-right: 25px; }
.main-header .menu-item-has-children>a::before { position: absolute; content: ''; border: solid black; border-width: 0 2px 2px 0; display: inline-block; padding: 3px; transform: rotate(45deg); -webkit-transform: rotate(45deg); right: 5px; top: 15px; }
.main-header .button-row .btn { padding: 20px 35px 20px 55px; font-size: 18px; }
.main-header .button-row .btn span { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; background: var(--bs-white); border-radius: 50%; position: absolute; top: 50%; left: 15px; transform: translateY(-50%); transition: var(--common-transition); }
.main-header .button-row .btn span img { transition: var(--common-transition); }
.main-header .button-row .btn:hover span { background: var(--light-blue); }
.main-header .button-row .btn:hover span img { filter: brightness(0) invert(1); }
.current-menu-item a { color: var(--light-blue) !important; }
.main-header .menu-item-has-children .sub-menu { background: #FFF; box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.13); width: 210px; padding: 20px 30px; position: absolute; top: 50px; opacity: 0; visibility: hidden; transition: var(--common-transition); }
.main-header .menu-item-has-children .sub-menu a { display: block; padding: 5px 0; }
.main-header .menu-item-has-children:hover .sub-menu { top: 100px; opacity: 1; visibility: visible; } */
.mobile-menu { display: none; }

.hamburger-menu-wraper{ display: block; background: var(--dark-blue); width: 300px; height: 100vh; padding: 0 10px; position: fixed; top: 0; right: -100vw; overflow: hidden; z-index: 1000; transition: var(--common-transition);}
.hamburger-menu-wraper .top-row { padding: 30px 0 0; text-align: right; }
.hamburger-menu-wraper li a { display: flex !important; align-items: center; padding: 20px 0; color: var(--red-color); }
/* .hamburger-menu-wraper li a .icon { display: flex; align-items: center; justify-content: center; } */
.hamburger-menu-wraper .menu li a.menu-image-title-below img { width: 25px; height: 25px; margin: 0 10px 0 0 !important; padding: 0 !important; transition: var(--common-transition); }
/* .hamburger-menu-wraper li a:hover{ color: var(--black); }
.hamburger-menu-wraper li a:hover img{ filter: brightness(0);} */

.menu-show .hamburger-menu-wraper{ right: 0;}
/* ~~ header sticky start ~~ */
@keyframes slide-down {
	0% {
		opacity: 0;
		transform: translateY(-100%);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
.header-sticky .main-header { position: fixed; top: 0; width: 100%; background: var(--bs-white); box-shadow: 4px 4px 15px 0px rgb(0 0 0 / 10%); animation: slide-down 0.5s; transition: var(--common-transition); z-index: 999; }
/* ~~ header sticky end ~~ */

@media only screen and (min-width: 992px){
	.main-header .mobile-menu-item { display: none;}
}
@media only screen and (max-width: 1399px) {
	.main-header .logo-wrap { max-width: 260px; }
	.main-header li a{ padding: 15px 0;}
}
@media only screen and (max-width: 1199px){
	.main-header li{ font-size: 18px;}
}
@media only screen and (max-width: 991px) {
	.main-header{ padding: 15px 0;}
	.main-header .logo-wrap { max-width: 200px; }
	.desktop-menu { display: none; }
	.main-header .user-info{ display: none;}
	.hamburger-menu, .hamburger-menu-wraper{ display: none;}
	.hamburger-nav { display: block; }
	.mobile-menu { display: block; background: var(--dark-blue); width: 100vw; height: 100vh; position: fixed; top: 0; right: -100vw; overflow: hidden; z-index: 999; transition: var(--common-transition); }
	.mobile-menu .top-row { padding: 20px 0; }
	.mobile-menu .logo-wrap { max-width: 240px; }
	.mobile-menu li a { display: flex !important; align-items: center; padding: 15px 0; color: var(--red-color); }
	.mobile-menu .mobile-nav .menu-main-menu-container .menu li a img { width: 25px; height: 25px; margin: 0 10px 0 0 !important; padding: 0 !important; }
	.menu-open .mobile-menu { right: 0; }	
}
@media only screen and (max-width: 575px){
	.main-header .logo-wrap { max-width: 160px }
	.mobile-menu .logo-wrap { max-width: 180px; }
}
/* home-page start----------- */
.hero-banner { padding-bottom: 57%; }
.hero-banner .banner-bg { background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; }
.hero-banner .container-holder { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1;}
.hero-banner .banner-info {  position: relative; max-width: 880px; padding: 70px 45px; color: var(--white); margin: 0 auto; z-index: 2; }
.hero-banner .banner-info::before{ position: absolute; content: ''; background: #44444487; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);}

.hero-banner .banner-info .banner-info-inner { position: relative; z-index: 3; }
.hero-banner h1{ margin-bottom: 20px;}
.hero-banner p{ margin-bottom: 10px;}
.hero-banner .banner-info .banner-paragraph { max-width: 510px; font-weight: var(--extra-bold); margin: 0 auto; }
.hero-banner .button-wrap{ margin-top: 30px;}
.hero-banner .button-wrap li{ padding:10px;}
.hero-banner .btn:hover{ color: var(--white); border-color: var(--white);}

.common-bg-design{ position: relative;}
.common-bg-design::before { position: absolute; content: ''; background: url(../images/bg-design.png); background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.common-bg-design .container, .common-bg-design .container-fluid{ position: relative; z-index: 3;}


.teachers-section .image-outer { padding-top: 50px; padding-right: 45px;}
.teachers-section .image-outer .box-bg { top: 0;}
.teachers-section .teachers-info { margin-bottom: 60px; }
.teachers-section .info-image-outer{ padding-bottom: 50px;}
.teachers-section .info-image-outer .box-bg{ bottom: 0;}
.teachers-section .info-image-outer .info-image-inner { padding-bottom: 90%; }
.teachers-section img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.teachers-section .image-outer .image-inner{ padding-bottom: 130%;}

.registration-section{ background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important;}
.registration-section::after{ position: absolute; content: ''; background: #BE3633; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; opacity: 0.9; z-index: 1;}
.registration-section::before { position: absolute; content: ''; background: #F0172C; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; opacity: 0.55; z-index: 2; }
.registration-section .container{ position: relative; z-index: 3;}
.common-section .info-wraper { max-width: 940px; margin: 0 auto; color: var(--white); }
.common-section .info-wraper h2 { font-size: 72px; }
.common-section .info-wraper h3{ font-weight: var(--font-bold); text-transform: uppercase;}
.registration-section .info-wraper p { max-width: 890px; margin: 0 auto 20px; }
.common-section .info-wraper .btn{ background: var(--white); border-color: var(--white); color: var(--red-color); font-size: 32px; text-transform: uppercase; font-weight: var(--extra-bold);}
.common-section .info-wraper .btn:hover{ background: transparent; color: var(--white);}

.trophy-box { position: absolute; z-index: 2; bottom: 0; max-width: 250px; max-height: 250px; }
.left-trophy-box{ left: 0;}
.right-trophy-box{ right: 0;}

/* .howto-kenken-section .info-wraper { background: var(--light); margin-right: -100px; padding: 85px 115px 85px 85px; }
.howto-kenken-section .container-fluid{ padding: 0;}
.howto-kenken-section .image-wraper-outer { padding-top: 50px; }
.howto-kenken-section .image-wraper { position: relative; padding-bottom: 75%; }
.howto-kenken-section .image-wraper img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;} */

.howto-kenken-section .info-wraper { position: relative; background: var(--light); margin-right: -100px; padding: 85px 115px 85px 0; }
.howto-kenken-section .info-wraper::before { position: absolute; content: ""; background: var(--light); top: 0; right: 0; bottom: 0; width: 70vw; height: 100%; z-index: 1; }
.howto-kenken-section .info-wraper-inner{ position: relative; z-index: 3;}
.howto-kenken-section .info-wraper .section-title { margin-bottom: 30px; }
.howto-kenken-section .info-wraper-inner p:last-child{ margin-bottom: 0;}
.howto-kenken-section .image-wraper-outer { position: relative; z-index: 3; width: calc(100vw - 51vw); margin-top: 60px; }
.howto-kenken-section .image-wraper { position: relative; padding-bottom: 75%; }
.howto-kenken-section .image-wraper img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}


.main-footer{ position: relative; background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important;}
.main-footer::before { position: absolute; content: ''; background: var(--purple); top: 0; right: 0; bottom: 0; left: 0; z-index: 1; opacity: 0.99; }
.main-footer .top-footer { position: relative; z-index: 3; padding: 50px 0; }
.main-footer .logo-wrap { max-width: 380px; margin: 0 auto 20px; }
.main-footer .footer-menu{ max-width: 1025px; margin: 0 auto 20px;}
.main-footer .footer-menu li a{ display: block; padding: 15px 0; color: var(--white);}
.main-footer .footer-menu li a:hover{ color: var(--red-color);}
.social-icon li{ margin: 0 15px;}
.social-icon li:first-child{ margin-left: 0;}
.social-icon li:last-child{ margin-right: 0;}
.social-icon li a{ display: flex; align-items: center; justify-content: center; width: 40px; height: 40px;}
.social-icon li a img{ filter: brightness(0) invert(1); transition: var(--common-transition);}
.social-icon li a:hover img{ filter: inherit;}
.bottom-footer{ position: relative; z-index: 3; border-top: 1px solid var(--white); padding: 30px 0; font-size: 22px;}
.bottom-footer li{ border-right: 1px solid var(--white); padding: 0 15px; color: var(--white); line-height: 1;}
.bottom-footer li:first-child{ border-left: 0; padding-left: 0;}
.bottom-footer li:last-child{ border-right: 0; padding-right: 0;}
.bottom-footer li a{ color: var(--white);}
.bottom-footer li a:hover{ color: var(--red-color);}

@media only screen and (max-width: 1399px){
	.hero-banner .banner-info{ padding: 45px 25px;}
	.common-section .info-wraper h2 { font-size: 50px; }
	.common-section .info-wraper .btn{ font-size: 26px;}
	.trophy-box{ max-width: 160px;}
	.howto-kenken-section .info-wraper{ padding: 50px 115px 50px 0;}
	.main-footer .logo-wrap{ max-width: 260px;}
	.bottom-footer{ font-size: 20px;}
}
@media only screen and (max-width: 1199px){
	.hero-banner .button-wrap li{ padding: 7.5px;}
	.hero-banner .button-wrap li .btn{ font-size: 18px;}
	.teachers-section .image-outer { padding-top: 30px; padding-right: 15px; }
	.teachers-section .info-image-outer { padding-bottom: 30px; }
}
@media only screen and (max-width: 991px){
	.hero-banner { padding: 50px 0; }
	.hero-banner .container-holder{ position: relative;}
	.teachers-section .image-outer{ padding-right: 0; margin-bottom: 30px;}
	.teachers-section .teachers-info{ margin-bottom: 30px;}
	.common-section .info-wraper h2 { font-size: 35px; }
	.common-section .info-wraper .btn { font-size: 22px; }
	.trophy-box { max-width: 135px; }
	.howto-kenken-section .info-wraper { margin: 0; padding: 40px 30px; }
	.howto-kenken-section .image-wraper-outer{ width: 100%; margin-top: 30px;}
	.main-footer .logo-wrap { max-width: 200px; }
	.social-icon li { margin: 0 10px; }
}
@media only screen and (max-width: 767px){
	.hero-banner .banner-info { padding: 30px 15px; }
	.hero-banner .button-wrap li{ width: 100%; padding: 5px;}
	.hero-banner .button-wrap li .btn{ width: 100%; padding: 13px 20px; font-size: 16px;}
	.teachers-section .image-outer{ padding-top: 15px;}
	.teachers-section .info-image-outer { padding-bottom: 15px; }
	.registration-section .info-wraper { background: #ffffff4f; padding: 15px; }
	.common-section .info-wraper h2 { font-size: 28px; }
	.common-section .info-wraper .btn { font-size: 18px; }
	.bottom-footer { padding: 20px 0; font-size: 18px; }
}
@media only screen and (max-width: 575px){
	.hero-banner .banner-info { padding: 30px 15px; }
	.common-section .info-wraper h2 { font-size: 26px; }
	.howto-kenken-section .info-wraper { padding: 30px 15px; }
	.main-footer{ text-align: center;}
	.main-footer .top-footer{ padding: 40px 0;}
	.main-footer .footer-menu ul{ display: block !important;}
	.main-footer .footer-menu li a{ padding: 10px 0;}
}
@media only screen and (max-width: 419px){
	.hero-banner { padding: 30px 0; }
	.hero-banner .button-wrap { margin-top: 20px; }
	.hero-banner .button-wrap li .btn{ padding: 13px 15px; font-size: 15px;}
	.main-footer .logo-wrap { max-width: 170px; margin-bottom: 10px; }
	.bottom-footer { padding: 15px 0; font-size: 16px; }
	.bottom-footer li{ padding: 0 10px;}
}
/* home-page end----------- */

/* contact page start */
.inner-banner{ background: var(--light);}
.inner-banner h1{ font-weight: var(--medium); margin-bottom: 0;}

.contact-section .box-bg-outer{ padding-bottom: 50px;}
.contact-section .box-bg { bottom: 0; }
.contact-section .box-bg-inner{ padding-bottom: 90%;}
.contact-section .box-bg-inner img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.form-wraper .button-row { margin-top: 35px; position: relative;}
.form-wraper .btn{ width: 100%;}
@media only screen and (max-width: 1199px){
	.contact-section .box-bg-outer { padding-bottom: 30px; }
}
@media only screen and (max-width: 991px){
	.contact-section .box-bg-outer { margin-bottom: 30px;}
}
@media only screen and (max-width: 767px){
	.contact-section .box-bg-outer { padding-bottom: 15px; }
}
/* contact page end */

/* Registration page start */
.puzzle-section { padding-bottom: 70px;}
.puzzle-section .section-title h2{ margin-bottom: 20px;}
.puzzle-section .section-title p{ color: var(--black);}
.puzzle-section .row{ margin: 0 -25px;}
.puzzle-box-item{ margin-bottom: 30px; padding: 0 25px;}
.puzzle-box .puzzle-box-outer{ background: #776679; border-radius: 30px;  position: relative; padding-bottom: 100%; margin-bottom: 30px; overflow: hidden;}
.puzzle-box .puzzle-box-inner { display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%;  padding: 50px; text-align: center; }
.puzzle-box .image-outer { display: flex; align-items: center; justify-content: center; position: relative; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; padding: 20px 0; border-radius: 15px; background: #fff; }
.puzzle-box .puzzle-box-inner .image-wraper { position: relative; top: 0; right: 0; bottom: 0; left: 0; z-index: 2; padding-bottom: 65%; width: 100%; }
.puzzle-box .puzzle-box-inner .image-wraper img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: contain; }
.puzzle-box h4 { margin-bottom: 0; }
.puzzle-section .bottom-row h3{ color: #776679; margin-bottom: 0;}
.puzzle-section .bottom-row .price-wrap h3{ color: var(--red-color);}
.puzzle-section .bottom-row .price-wrap { flex: 0 0 auto; padding-left: 15px;}

.faq-item{ margin-bottom: 50px;}
.faq-item:last-child{ margin-bottom: 0;}
.faq-item .section-title{ margin-bottom: 30px;}
.faq-item .accordion-item{ border: 0 !important; margin-bottom: 20px;}
.faq-item .accordion-item:last-child{ margin-bottom: 0;}
.faq-item .accordion-item .accordion-button { background: var(--white); border: 1px solid #776679; border-radius: 0 !important; box-shadow: none; padding: 20px 55px 20px 25px; text-transform: uppercase; font-weight: var(--extra-bold); font-size: 20px; color: #776679; }
.faq-item .accordion-button::after { background: url(../images/plus.svg); position: absolute; top: 22px; right: 25px; background-size: 15px !important; background-position: center !important; background-repeat: no-repeat !important; }
.faq-item .accordion-item .accordion-body{ border: 1px solid #776679; border-top: 0; padding: 25px; color: #836A82;}
.faq-item .accordion-item .accordion-body p:last-child{ margin-bottom: 0;}

.faq-item .accordion-item .accordion-button:not(.collapsed){ background: var(--red-color); border-color: var(--red-color); color: var(--white);}
.faq-item .accordion-button:not(.collapsed)::after{ background: url(../images/minus.svg);}
@media only screen and (max-width: 1199px){
	.faq-item .accordion-item .accordion-button{ font-size: 18px;}
}
@media only screen and (max-width: 991px){
	.puzzle-section{ padding-bottom: 50px;}
	.puzzle-box .puzzle-box-outer{ padding-bottom: 85%; margin-bottom: 20px;}
	.puzzle-box .puzzle-box-inner{ padding: 50px 30px;}
	/* .puzzle-box .puzzle-box-inner .image-wraper{ padding-bottom: 75%;} */
	.faq-item { margin-bottom: 35px; }
}
@media only screen and (max-width: 767px){
	.puzzle-section{ padding-bottom: 30px;}
	.faq-item .accordion-item .accordion-button { font-size: 16px; }
}
@media only screen and (max-width: 575px){
	.puzzle-box .puzzle-box-inner{ padding: 25px;}
	.faq-item .accordion-item .accordion-button{ padding: 15px 45px 15px 15px; font-size: 15px;}
	.faq-item .accordion-button::after{ top: 15px; right: 15px; background-size: 12px !important;}
}
/* Tournaments page start */
.howto-play-section .box-bg-outer { padding-top: 50px; padding-right: 15px;}
.howto-play-section .box-bg-outer .box-bg { top: 0; }
.howto-play-section .box-bg-inner { padding-bottom: 120%;}
.howto-play-section .box-bg-inner img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.tournaments-section{ background: #D82435;}
.howto-play-section .info-wraper p:last-child{ margin-bottom: 0;}
.common-section .info-wraper .note-box { background: #EFEDF7; border: 3px solid #633F48; padding: 25px 115px; margin-bottom: 60px; }
.common-section .info-wraper .note-title { flex: 0 0 auto; margin-right: 65px; }
.common-section .info-wraper .note-box p{ color: #76657C; font-weight: var(--extra-bold); margin-bottom: 0; text-transform: uppercase; font-size: 18px;}

.puzzles .puzzle-item a{ color: var(--red-color);}
.navbar{ border-color: var(--red-color) !important;}
.navbar-nav>.active>a{ background: var(--red-color) !important; color: var(--white) !important;}
@media only screen and (max-width: 991px){
	.howto-play-section .box-bg-outer{ padding-top: 30px; padding-right: 0; margin-bottom: 30px;}
	.common-section .info-wraper .note-box{ padding: 20px 50px; margin-bottom: 30px;}
	.common-section .info-wraper .note-title{ margin-right: 40px;}
}
@media only screen and (max-width: 767px){
	.howto-play-section .box-bg-outer{ padding-top: 15px;}
	.common-section .info-wraper .note-box{ padding: 20px;}
	.common-section .info-wraper .note-box .note-row { display: block !important; }
	.common-section .info-wraper .note-title{ margin: 0 0 15px;}
}
@media only screen and (max-width: 575px){
	.common-section .info-wraper .note-box{ padding: 20px 15px;}
}
/* Tournaments page end */

/* woocommerce page start  ************************************************/ 
.header-sticky .woocommerce-custom{ padding-top: 99px; }
.dashboard-section { position: relative; border-top: 1px solid #776679; }
.dashboard-section::before { position: absolute; content: ''; background: url(../images/bg-design.png); background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.dashboard-section .container, .dashboard-section .container-fluid{ position: relative; z-index: 3;}
.dashboard-section .container > h1{ display: none;}
.dashboard-section .order-col-item{ margin-bottom: 10px; }
.dashboard-section .order-main-info{ background-color: var(--light); padding: 20px 20px 10px; }
.dashboard-section .order-main-info .order-info-box{ align-items: center; background-color: var(--white); padding: 10px; }
.order-main-info .order-info-box .prod-img{ flex: 0 0 auto; width: 80px; height: 80px; border: 1px solid var(--red-color); }
.order-main-info .order-info-box .prod-img img{ width: 100%; height: 100%; object-fit: cover; }
.order-main-info .order-info-box .prod-details{ width: calc(100% - 225px); padding: 0 12px; align-items: center; }
.order-main-info .order-info-box .prod-details h5{ font-weight: 800; color: var(--red-color); text-transform: uppercase; margin-bottom: 10px; }
.order-main-info .woocommerce-orders-table__cell-order-total{ font-size: 24px; line-height: 1.2; font-weight: 700; color: #76657C; margin: 0; }
.dashboard-section .wp-block-woocommerce-checkout .wc-block-checkout .wc-block-must-login-prompt a{ color: var(--red-color); }
.dashboard-section .order-main-info .order-info-box .play-now-btn{ flex:0 0 auto; }


 
/* woocommerce-shop  */
.woocommerce-shop .woocommerce-ordering select { height: 60px; padding: 10px 20px; }
.woocommerce-shop .products { display: flex; flex-wrap: wrap; margin: 0 -15px !important;}
.woocommerce-shop .products li.product { width: 25% !important; flex: 0 0 auto; padding: 0 15px !important; margin: 30px 0 0  !important; float: none !important; }
.woocommerce-shop .products li.product .woocommerce-loop-product__title{ color: var(--red-color);}
.woocommerce-shop .products li.product a.button{ display: block !important; background: var(--red-color) !important; border: 1px solid var(--red-color) !important; border-radius: 0 !important; width: 100%; position: relative; text-align: center !important; color: var(--white) !important; font-size: 20px !important; padding: 15px 30px !important; margin: 0; transition: var(--common-transition);}
.woocommerce-shop .products li.product a.button:hover{ background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important;}
.single-product .summary a{ color: var(--red-color);}
.single-product .dashboard-section .cart{ display:none; }
.single-product .dashboard-section .related .product .add_to_cart_button{ display:none; }



/* ======= */
/* .common-page.dashboard-section .wc_ppp_paywall p{ margin-bottom: 0; } */
.common-page.dashboard-section .wc_ppp_paywall p a{ color: var(--red-color); }
.common-page .woocommerce ul.products{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0 -15px;}
.common-page .woocommerce ul.products li.product a{ cursor: default; }

.common-page .woocommerce ul.products li.product .button { cursor: pointer; margin-top: 0; background-color: #F0162B; color: #fff; font-size: 22px; line-height: 1.2; }
.common-page .woocommerce ul.products li{ width: 25%; padding: 0 15px; margin: 0 0 20px;  }
.common-page ul.products li.product a br{ display: none; }
.common-page ul.products li.product h2{ color: #776679; }

.woocommerce-info{ border-top-color: var(--red-color) !important;}
.woocommerce-info::before{ color: var(--red-color) !important;}
@media only screen and (max-width: 1367px){
.order-main-info .order-info-box .prod-details h5{  font-size: 20px; }
.order-main-info .woocommerce-orders-table__cell-order-total{ font-size: 20px; }
.header-sticky .woocommerce-custom{ padding-top: 82px; }
}
@media only screen and (max-width: 991px){
	.woocommerce-shop .products li.product{ width: 33.33% !important;}
	.common-page .woocommerce ul.products li{ width: 50%; }
	.header-sticky .woocommerce-custom{ padding-top: 68.95px; }

}
@media only screen and (max-width: 767px){
	.woocommerce-shop .woocommerce-result-count{ float: none;}
	.woocommerce-shop .woocommerce-ordering { float: none;}
	.woocommerce-shop .woocommerce-ordering select{ width: 100%;}
	.woocommerce-shop .products li.product{ width: 50% !important;}
	.common-page .woocommerce ul.products li.product .button{ font-size: 18px; }
	.woocommerce-info .button{ display: block !important; width: fit-content; float: none !important;}
	.dashboard-section .order-main-info .order-info-box{ flex-wrap: wrap;}
	.order-main-info .order-info-box .prod-details{ width: calc(100% - 80px);}
	.dashboard-section .order-main-info .order-info-box .play-now-btn{ margin-top: 20px;}
}
@media only screen and (max-width: 575px){
	.woocommerce-shop .products li.product{ width: 100% !important;}
	.common-page .woocommerce ul.products li{ width: 100%; }
	.header-sticky .woocommerce-custom{ padding-top: 61.16px; }
}
/* woocommerce-shop  */

/* single-product */
.single-product .main-footer{ clear: both;}
.single-product button.button { display: block !important; background: var(--red-color) !important; border: 1px solid var(--red-color) !important; border-radius: 0 !important; width: 100%; position: relative; text-align: center !important; color: var(--white) !important; font-size: 20px !important; padding: 15px 30px !important; margin: 0; transition: var(--common-transition);}
.single-product button.button:hover{ background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important;}
.single-product .summary a{ color: var(--red-color);}
.single-product .summary a:hover{ color: var(--black);}
/* single-product */

/* checkout */
.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block { width: 55% !important; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step{ padding: 0 !important; margin-bottom: 30px !important;}
.woocommerce-checkout .wc-block-components-checkout-step__container:after{ display: none;}
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading { background: #776679; padding: 15px 15px 15px 70px; margin: 0 0 30px; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2{ color: var(--white); font-size: 24px;}
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::before { display: flex; align-items: center; justify-content: center; border: 5px solid #fff; border-radius: 50%; width: 45px; height: 45px; position: absolute; top: 5px; left: 32px; font-size: 20px; font-weight: 500; color: #fff; }
.woocommerce-checkout .wc-block-components-checkout-step__description{ color: var(--red-color); }
/* .woocommerce-checkout input[type=text]{} */
.woocommerce-checkout .wc-block-components-checkbox label{ align-items: center; }
.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{ border-radius: 0; margin-right: 12px; }

.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{ width: 20px; height: 20px; min-width: 20px; min-height: 20px; border-radius: 0; margin-right: 12px; }
.woocommerce-checkout .wc-block-checkout__terms{ margin: 15px 0; }
.woocommerce-checkout .wc-block-checkout__terms a{ color: var(--red-color); }
.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { height: 0.725em; margin: 0 0 0 2px; width: 0.725em; position: absolute; left: 0; right: 0; }

.wc-block-checkout .wc-block-components-text-input { display: flex; flex-wrap: wrap; flex-direction: column-reverse; }
.wp-block-woocommerce-checkout-billing-address-block .wc-block-components-checkout-step__description{ color: #776679 !important; }
.wc-block-checkout .wc-block-components-text-input input, .wc-block-checkout .components-base-control input{ font-size: 14px !important; font-weight: 400; color: #776679  !important; border-radius: 0 !important; height: 60px; padding: 0 25px!important; }
.wc-block-checkout .wc-block-components-text-input input:focus, .wc-block-checkout .wc-block-components-text-input input:hover, .wc-block-checkout .components-base-control input:focus, .wc-block-checkout .components-base-control input:hover{ color: #776679 !important; -webkit-text-fill-color:#776679 !important; }

.wc-block-checkout .wc-block-components-text-input label, .wc-block-checkout .components-base-control__label { font-size: 20px; color: #776679 !important;  transform: inherit !important; position: relative !important; display: block; left: 0 !important; width: 100% !important; flex: 0 0 auto; margin-bottom: 10px !important;  }
.wc-block-checkout .wc-block-components-validation-error{ display: none; }

.wc-block-checkout .components-base-control .components-combobox-control__suggestions-container input { background-image: url(../images/bottom-arrow.svg) !important; background-repeat: no-repeat !important; background-size: 20px !important; background-position: right 12px center !important; }


.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option{ background: var(--white); border: 1px solid #776679 !important; padding: 20px !important;}
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option{ cursor: inherit;}
.wc-block-checkout__actions_row{ flex-wrap: wrap;}
.wc-block-checkout__payment-method .wc-block-components-radio-control{ border: 0 !important;}
.woocommerce-checkout .wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block { border-top: 0 !important; padding: 0; }
.woocommerce-checkout .wc-block-checkout__add-note{ border-bottom: 0 !important;}
.woocommerce-checkout .wc-block-checkout__actions_row a.wc-block-components-checkout-return-to-cart-button{ margin-bottom: 10px; display: none; }
.woocommerce-checkout .wc-block-checkout__actions_row a.wc-block-components-checkout-return-to-cart-button:hover{  color: var(--red-color); }
.woocommerce-checkout .woocommerce-thankyou-order-received{ color: var(--red-color); }
.woocommerce-checkout button.wc-block-components-checkout-place-order-button{ display: block !important; background: var(--red-color) !important; border: 1px solid var(--red-color) !important; border-radius: 0 !important; width: 100%; position: relative; text-align: center !important; color: var(--white) !important; font-size: 20px !important; padding: 15px 30px !important; margin: 0; transition: var(--common-transition);}
.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover{ background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important;}
.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block { background: #EFEDF7; width: 45% !important; height: 100% !important; padding: 0; }
.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block .wc-block-components-totals-wrapper { border-top: 0; padding: 0; }
.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block .wc-block-components-panel { padding: 0 !important; }
.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block button.wc-block-components-panel__button { display: block; background: var(--red-color); padding: 15px 70px 15px 15px; color: var(--white);}
.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block button.wc-block-components-panel__button svg { right: 10px; width: 40px; height: 40px; }
.wc-block-components-order-summary__content{ padding: 0 16px;}
.woocommerce-checkout .wc-block-components-order-summary-item { padding: 15px 0 !important; }
.wc-block-components-order-summary-item .wc-block-components-order-summary-item__image { width: 80px !important; height: 80px !important; flex: 0 0 auto; }
.wc-block-components-order-summary-item .wc-block-components-order-summary-item__image img { max-width: 100% !important; width: 100% !important; height: 100%; }
.wc-block-components-order-summary-item .wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity { display: none; }
.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-name { color: var(--red-color); font-weight: var(--font-bold); text-transform: uppercase; }
.woocommerce-checkout .wc-block-components-order-summary-item__total-price{flex: 0 0 auto; padding-left: 10px; font-size: 20px;}
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block { padding: 0 16px !important; }
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item { border-top: 1px solid #D3CCD9; border-bottom: 1px solid #D3CCD9;; padding: 20px 0 !important; }
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item span{ font-size: 20px;}
.wc-block-components-totals-item.wc-block-components-totals-footer-item{ padding: 20px 16px !important; color: var(--red-color); font-size: 24px;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{ font-weight: var(--medium) !important;}
.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata__description p{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

.wc-block-components-spinner{ position: relative !important;}

.woocommerce-page.woocommerce-checkout form.woocommerce-cart-form{ display: none;}
.woocommerce-checkout form.woocommerce-checkout{ display: flex; flex-wrap: wrap; margin: 0 -20px;}
.checkout-form-col{ padding: 0 20px;}
.woocommerce-checkout form.woocommerce-checkout .woocommerce-NoticeGroup-checkout{ width: 100% !important; padding: 0 20px;}
.woocommerce-page.woocommerce-checkout .input-text, .woocommerce-page.woocommerce-checkout .select2-selection { border: 1px solid #776679 !important; height: 60px;}
.woocommerce-page.woocommerce-checkout .woocommerce-cart-form button, .woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .place-order button{ display: inline-block; background: var(--red-color); border: 1px solid var(--red-color) !important; border-radius: 0 !important; padding: 15px; color: var(--white); transition: var(--common-transition);}
.woocommerce-page.woocommerce-checkout .woocommerce-cart-form button:hover, .woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .place-order button:hover{ background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important;}
/* .woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment  */

.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment label.woocommerce-form__label-for-checkbox .required{ display: none;}
.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-privacy-policy-text{ margin-bottom: 20px;}

.woocommerce-page.woocommerce-checkout .select2-selection { background-image: url(../images/bottom-arrow.svg) !important; background-repeat: no-repeat !important; background-size: 20px !important; background-position: right 12px center !important; }

.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment{ background: transparent !important;}
.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .payment_methods{ padding: 20px 20px 20px 70px !important; border: 1px solid #776679 !important;}
.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .payment_methods .payment_box { background: transparent !important; padding: 0 !important; margin: 0 !important; }
.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .payment_methods .payment_box::before{ display: none !important;}
.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .form-row.place-order { margin-bottom: 0; }
.woocommerce-page.woocommerce-checkout .components-checkout-step__heading h3, .woocommerce-page.woocommerce-checkout .woocommerce-additional-fields h3{ background: #776679; 
	/* padding: 15px 15px 15px 70px; */ padding: 15px;
	 color: var(--white); position: relative; margin: 0 0 30px;}
.woocommerce-checkout-review-order .woocommerce-checkout-review-order-table{border-collapse: collapse !important; border: 0 !important;}
.woocommerce-checkout-review-order .woocommerce-checkout-review-order-table thead { background: var(--red-color); color: #fff; font-size: 24px; font-weight: 800; }
.woocommerce-checkout-review-order .woocommerce-checkout-review-order-table tbody, .woocommerce-checkout-review-order .woocommerce-checkout-review-order-table tfoot{ background: #EFEDF7;}
.woocommerce-checkout-review-order .woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order .woocommerce-checkout-review-order-tablet td{ padding: 22px 20px !important;}
.woocommerce-checkout-review-order .woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order .woocommerce-checkout-review-order-table .order-total td{ color: var(--red-color);}
.woocommerce-page.woocommerce-checkout .woocommerce-privacy-policy-text p, .woocommerce-page.woocommerce-checkout label.woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text{ font-size: 14px;}

@media only screen and (max-width: 992px){
	.woocommerce-checkout form.woocommerce-checkout .checkout-form-col { width: 100%; }
	.woocommerce-page.woocommerce-checkout .woocommerce-checkout-payment .payment_methods{ padding: 15px 15px 15px 35px !important;}
}
@media only screen and (max-width: 768px){
	.woocommerce-page.woocommerce-checkout .input-text, .woocommerce-page.woocommerce-checkout .select2-selection{ height: 50px;}
}

/* === cart===== */
.woocommerce-cart .wc-block-cart-item__wrap .wc-block-components-product-name{ color: var(--light-purple); font-weight: 700; }
.woocommerce-cart .wc-block-cart__submit-container .wc-block-cart__submit-button{ background-color: var(--red-color); color: var(--white); }

/* =========== 404 page =========== */
.error404 .error-info{ max-width: 900px; text-align: center; margin: 0 auto; }
.error404 .error-info input{ font-size: 18px;  border: 1px solid #776679; height: 50px; padding: 0 15px; }
.error404 .error-info .btn{ text-transform: uppercase; }

/* =========== 15-03-2024 =========== */

.woocommerce-lost-password .dashboard-section .success{ padding-bottom: 15px; }

.woocommerce-orders .register_msg.fail, .woocommerce-orders  .login_msg.fail { position: absolute; bottom: -50px; font-size: 17px; border: 1px solid red; padding: 2px 15px; }
.woocommerce-orders .register_msg.success, .woocommerce-orders .login_msg.success{ position: absolute; bottom: -50px; font-size: 17px; border: 1px solid #618f83; padding: 2px 15px; }


@media only screen and (max-width: 1599px){
.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { height: 0.725em; margin-left: 0.0875em; margin-top: -0.1375em; width: 0.725em; }

}

@media only screen and (max-width: 1399px){
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2{ font-size: 22px;}
.wc-block-components-totals-item.wc-block-components-totals-footer-item{ font-size: 20px;}
.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { margin-left: 0.0875em; width: 0.825em; }


}
@media only screen and (max-width: 1199px){
	.woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { margin-left: 0.1875em; width: 0.825em; }
 }

@media only screen and (max-width: 991px){
	.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block, .woocommerce-checkout .wp-block-woocommerce-checkout-totals-block { width: 100% !important; }
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading{ padding-left: 60px;}
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2{ font-size: 18px;}
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::before{ border: 3px solid #fff; width: 35px; height: 35px; top: 8px; font-size: 16px;}
	.wc-block-components-totals-item.wc-block-components-totals-footer-item{ font-size: 18px;}
	.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block{ margin-bottom: 30px !important;}
	.woocommerce-checkout .wc-block-checkout__add-note { margin: 0 !important; padding: 0 !important; }
}
@media only screen and (max-width: 767px){
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading { padding-left: 55px; }
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::before { position: absolute !important; top: 8px !important; left: 10px !important; }
	.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option{ padding: 0 !important;}
	.wc-block-components-order-summary .wc-block-components-order-summary-item__description{ padding-left: 15px; }
	.wc-block-checkout .wc-block-components-text-input input, .wc-block-checkout .components-base-control input{ padding: 0 15px !important; }
	.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item { padding: 10px 0 !important; }
	.wc-block-components-totals-item.wc-block-components-totals-footer-item{ padding: 10px 16px !important; }
	
}
@media only screen and (max-width: 575px){
	.woocommerce-checkout button.wc-block-components-checkout-place-order-button{ font-size: 16px !important;}
	/* .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::before{ left: 25px !important;} */
}
@media only screen and (max-width: 419px){
	.wc-block-components-totals-item.wc-block-components-totals-footer-item { font-size: 16px; }
}
/* checkout */

/* woocommerce-order-received */
.woocommerce-order-received .woocommerce-table--order-details { background: #fff; border-radius: 0 !important; }
.woocommerce-order-received .woocommerce-table--order-details td { font-weight: 500 !important; }
.woocommerce-order-received .woocommerce-table--order-details td a{ color: var(--red-color);}
.woocommerce-order-received .woocommerce-table--order-details td a:hover{ color: var(--black);}
.woocommerce-order-received .woocommerce-customer-details{ margin-bottom: 0;}
.woocommerce-order-received address { background: var(--white); padding: 20px !important; line-height: 1.7; }
@media only screen and (max-width: 1199px){
	.woocommerce-order-received ul.order_details li { margin: 0 15px 10px 0; padding-right: 15px; }
}
@media only screen and (max-width: 991px){
	.woocommerce-order-received ul.order_details { margin-bottom: 25px; }
}
/* woocommerce-order-received */

.u-columns#customer_login{ display: flex; flex-wrap: wrap; justify-content: space-between;}
.u-columns#customer_login .col-1, .u-columns#customer_login .col-2 { background: #EFEDF7; border: 0 !important; border-radius: 0 !important; padding: 30px !important; }
.u-columns#customer_login h2{ color: var(--red-color); text-align: center; margin: 0 0 25px;}
.woocommerce-account .u-columns#customer_login .col-1, .woocommerce-account .u-columns#customer_login .col-2{ max-width: 750px; width:100%; margin:0 auto; float: none; }
.woocommerce-account .u-columns#customer_login .woocommerce-form{ margin: 15px 0}
.woocommerce-account .u-columns#customer_login .woocommerce-form label { margin-bottom: 10px; font-size: 18px; line-height: 1; }
.woocommerce-account .u-columns#customer_login .woocommerce-form .woocommerce-button{ width:auto;}
.woocommerce-account .u-columns#customer_login .woocommerce-form p{ font-size: 14px; margin:0 0 20px;}
.woocommerce-account .u-columns#customer_login .col-1, .woocommerce-account .u-columns#customer_login .col-2 h2 { font-size: 40px; }
.woocommerce-account .u-columns#customer_login .btn, .woocommerce-account .u-columns#customer_login .woocommerce-button { display: block !important; max-width: 450px !important; width: 100% !important; margin: 0 auto !important; text-align: center !important; float: none !important; }

.woocommerce-account .woocommerce-form-register.register { display: flex; flex-wrap: wrap; margin: 0 -10px !important; }
.woocommerce-account .woocommerce-form-register.register p.form-row { width: 50%; padding: 0 10px; }
.woocommerce-account .woocommerce-privacy-policy-text{ width: 100%;}
.woocommerce-account .woocommerce-form-register.register .form-button-row { width: 100% !important; }

.woocommerce-form { border: 0 !important; padding: 0 !important;}
.woocommerce form .form-row{ padding: 0; margin: 0 0 30px;}
.woocommerce-page label { margin-bottom: 10px; }
.woocommerce-page .input-text { background: var(--white); border: 0 !important; height: 50px; padding: 5px 20px; }
.show-password-input { background: url(../images/password.svg); background-repeat: no-repeat !important; background-size: 100% !important; background-position: center !important; width: 20px; height: 20px; top: 20px !important; opacity: 0.4; transition: var(--common-transition);}
.show-password-input.display-password { opacity: 1; }
.show-password-input::after{display: none;}
label.woocommerce-form__label-for-checkbox { display: flex !important; margin-bottom: 20px !important; line-height: 1.44 !important;}
.woocommerce-form__label-for-checkbox input { flex: 0 0 auto; width: 20px; height: 20px; border: 1px solid #776679; margin: 0 15px 0 0 !important;}
.woocommerce-form .woocommerce-button { width: 100%;}
.lost_password { text-align: center; margin-bottom: 0; line-height: 1;}
.lost_password a{ display: block; width: fit-content; margin: 0 auto; color: var(--red-color); font-size: 16px;}
.lost_password a:hover{ color: var(--black);}
.woocommerce-form input[type="date" i]::-webkit-calendar-picker-indicator { background: url(../images/date.svg); background-repeat: no-repeat !important; background-size: 100% !important; background-position: center !important; width: 20px; height: 20px; padding: 0; cursor: pointer; }
.woocommerce-privacy-policy-text a, .woocommerce-terms-and-conditions-checkbox-text a{ color: var(--red-color);}
.woocommerce-privacy-policy-text a:hover, .woocommerce-terms-and-conditions-checkbox-text a:hover{ color: var(--black);}
form.woocommerce-ResetPassword .form-row .input-text{ border: 1px solid #776679 !important;}
.woocommerce-page form.woocommerce-ResetPassword .form-row button{ display: block !important; background: var(--red-color) !important; border: 1px solid var(--red-color) !important; border-radius: 0 !important; position: relative; text-align: center !important; color: var(--white) !important; font-size: 20px !important; padding: 15px 30px !important; margin: 0; transition: var(--common-transition); }
.woocommerce-page form.woocommerce-ResetPassword .form-row button:hover{ background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important;}

.woocommerce-MyAccount-navigation ul { background: var(--white); border: 1px solid #776679; padding: 0 20px; }
.woocommerce-MyAccount-navigation ul li{ border-bottom: 1px solid #776679; font-weight: var(--semi-bold);}
.woocommerce-MyAccount-navigation ul li:last-child{ border-bottom: 0;}
.woocommerce-MyAccount-navigation ul a { display: inline-flex; align-items: center; padding: 20px 0; color: #776679; }
.woocommerce-MyAccount-navigation ul a span { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; border: 1px solid #776679; border-radius: 50%; width: 40px; height: 40px; margin-right: 15px; }
.woocommerce-MyAccount-navigation ul a:hover{ opacity: 0.5;}

.woocommerce-MyAccount-content p a{ color: var(--red-color);}
.woocommerce-MyAccount-content p a:hover{ color: var(--black);}
.wc-block-components-notice-banner { background: #fff !important; border: 1px solid #776679 !important; margin-top: 0 !important; }
.wc-block-components-notice-banner svg{ background-color: var(--red-color) !important;}
.wc-block-components-notice-banner ul { margin: 0 !important; }
.woocommerce-page .woocommerce-MyAccount-content .wc-block-components-notice-banner a{ color: var(--red-color) !important;}

.woocommerce-MyAccount-content .woocommerce-orders-table{ background: var(--white); border-radius: 0 !important;}
.woocommerce-page .woocommerce-MyAccount-content .woocommerce-orders-table a.woocommerce-button { background: transparent; border: 0; padding: 5px 0; margin: 0 5px; font-size: 16px; color: var(--red-color); }
.woocommerce-page .woocommerce-MyAccount-content .woocommerce-orders-table a{ color: var(--red-color);}

.woocommerce-MyAccount-content  .woocommerce-Address{ border: 1px solid #776679; padding: 15px; }
.woocommerce-MyAccount-content  .woocommerce-Address a.edit{ color: var(--red-color); font-size: 16px;}
.woocommerce-MyAccount-content  .woocommerce-Address a.edit:hover{ color: var(--black);}
.woocommerce-address-fields, .woocommerce-EditAccountForm { background: #EFEDF7; border: 0 !important; border-radius: 0 !important; padding: 40px !important; }
.select2-selection { border: 0 !important; height: 60px !important; padding: 10px 20px;}
.select2-selection .select2-selection__rendered { line-height: unset !important; padding: 0 !important; }
.select2-selection span.select2-selection__arrow { display: none; top: 50% !important; right: 5px !important; transform: translateY(-50%); }
.woocommerce-page .woocommerce-address-fields button, .woocommerce-page .woocommerce-EditAccountForm button { display: block !important; background: var(--red-color) !important; border: 1px solid var(--red-color) !important; border-radius: 0 !important; width: 100%; position: relative; text-align: center !important; color: var(--white) !important; font-size: 20px !important; padding: 15px 30px !important; margin: 0; transition: var(--common-transition); }
.woocommerce-page .woocommerce-address-fields button:hover, .woocommerce-page .woocommerce-EditAccountForm button:hover { background: transparent !important; border: 1px solid var(--red-color) !important; color: var(--red-color) !important; }
.woocommerce-page .woocommerce-EditAccountForm .woocommerce-form-row--wide span em{ color: var(--red-color);}
.woocommerce-page .woocommerce-EditAccountForm legend{ color: var(--red-color); text-transform: uppercase;}


@media only screen and (max-width: 1199px){
	.woocommerce-MyAccount-content .woocommerce-Address h3 { font-size: 24px; margin-bottom: 20px; }
	.woocommerce-address-fields, .woocommerce-EditAccountForm{ padding: 30px 20px !important;}
	.u-columns#customer_login .col-1, .u-columns#customer_login .col-2 { padding: 30px !important; }
}
@media only screen and (max-width: 991px){
	.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content{ width: 100%;}
	.woocommerce-account .woocommerce-MyAccount-navigation{ margin-bottom: 30px;}
	.u-columns#customer_login .col-1, .u-columns#customer_login .col-2{ width: 100%; }
	.u-columns#customer_login .col-1{ margin-bottom: 25px; }
}
@media only screen and (max-width: 768px){
	.woocommerce-MyAccount-navigation ul{ padding: 0 15px;}
	.woocommerce-MyAccount-content .woocommerce-Address{ margin-bottom: 30px;}
	.woocommerce-MyAccount-content .woocommerce-Address:last-child{ margin-bottom: 0;}
	.woocommerce-page .input-text{ height: 50px;}
	.select2-selection{ height: 50px !important;}
	.woocommerce-account .woocommerce-form-register.register p.form-row{ width: 100%;}
}
@media only screen and (max-width: 575px){
	.woocommerce-MyAccount-content .woocommerce-Address h3{ font-size: 18px;}
	.woocommerce-address-fields, .woocommerce-EditAccountForm { padding: 25px 15px !important; }
	.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last{ width: 100% !important;}
}
.tournament-puzzle-section h3{ margin-bottom: 30px;}
.woocommerce-edit-account .display-name-field{ display: none;}


/* ~~~~~~~~~~ special adjustments ~~~~~~~~~~ */

.single-puzzles .common-page.dashboard-section h3{ text-align: center;}
.single-puzzles .common-page .woocommerce ul.products{ max-width: 1130px; margin: 0 auto;}
.single-puzzles .common-page .woocommerce ul.products li.product{ width: 50%; text-align: center;}
.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner{ background: #776679; border-radius: 30px; padding: 50px;}
.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner .image-outer{ background: #fff; border-radius: 15px; padding: 60px;}
.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner .image-wraper{ position: relative; padding-bottom: 100%;}
.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner .image-wraper img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover; margin: 0;}


@media only screen and (min-width: 1201px){
	.puzzle-section .container{ max-width: 1140px;}
}

.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::after{ content: ""; width: 5px; height: 5px; background: #776679; position: absolute; top: 32px; left: 37px;}

@media only screen and (max-width: 1199px){
	.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner .image-outer{ padding: 50px;}
}

@media only screen and (max-width: 991px){
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::after{ top: 29px;}
	.single-puzzles .common-page .woocommerce ul.products li.product{ width: 100%;}
}
@media only screen and (max-width: 767px){
	.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading h2::after{ left: 29px;}
	.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner{ padding: 25px;}
	.single-puzzles .common-page .woocommerce ul.products li.product .puzzle-box-inner .image-outer{ padding: 25px;}
}
/* ~~~~~~~~~~ special adjustments ~~~~~~~~~~ */