/*
Theme Name: Swimming Pool
Theme URI: https://www.theclassictemplates.com/products/free-swimming-pool-wordpress-theme
Author: classictemplate
Author URI: https://www.theclassictemplates.com/
Description: Swimming Pool is an amazing WP theme with plenty of resources for creating a fine website representing pool cleaning and maintenance services, swimming pool construction companies, pool services, pool maintenance, pool installation, pool contractors, pool builders, pool design, water parks, spa services, pool repair, pool cleaning, pool equipment, aquatic centers, pool remodeling, pool supplies, pool landscaping etc. This free theme comes with a clean and sophisticated design that can also suit the various maintenance services, handyman services, swimming pool websites, and a lot more. With an elegant design complementing your business very well, you will get a retina-ready and responsive layout for a perfect display of content and imagery. Besides that, it is user-friendly making it absolutely easy for beginners to create a fine website without worrying about the coding stuff. Its intuitive theme options panel is very helpful and besides that, you will get social media icons and highly optimzed codes that make the design lightweight and deliver a faster page load time. Call to Action Button (CTA) will take care of the conversions and make sure that your visitors find your website engaging. With a lot of personalization options included, you will get to transform a few aspects of the theme with ease. This theme is designed using the Bootstrap framework and uses stunning CSS animations. The codes are also made SEO-friendly so that you won’t have to take extra effort for getting a high amount of traffic.
Version: 3.4.0
Tested up to: 6.9
Requires PHP: 5.6
Requires at least: 5.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: swimming-pool
Tags: blog, e-commerce, photography, one-column, two-columns, three-columns, four-columns, grid-layout, left-sidebar, right-sidebar, custom-logo, post-formats, featured-images, full-width-template, custom-colors, editor-style, flexible-header, footer-widgets, wide-blocks, custom-header, translation-ready, custom-background, custom-menu, sticky-post, threaded-comments, rtl-language-support, theme-options

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Swimming Pool WordPress Theme has been created by classictemplate (theclassictemplates.com), 2021.
Swimming Pool WordPress Theme is released under the terms of GNU GPL
*/

*{
  margin:0;
  padding:0;
}
:root {
  --first-theme-color: #00b9d5;
  --second-theme-color: #019ee2;
  --third-theme-color: #086ad9;
}
body{
  margin:0;
  padding:0;
  font-size:15px;
  color: #8c8c8c;
  font-family: 'Roboto', sans-serif;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
img{
  border:none;
  margin:0;
  padding:0;
  height:auto;
  max-width:100%;
}
a{
  color: #262626;
  word-wrap: break-word;
  text-decoration: none;
}
a:hover{
  color:#333;
  text-decoration:none;
}
ol,ul{
  margin:0;
  padding:0;
}
.wp-caption,
.wp-caption-text,
.sticky,
.gallery-caption,
.aligncenter{
  margin:0;
  padding:0;
  max-width:100% !important;
}
.sticky{
  background: #ededed;
}
.entry-content ol li,
.entry-content ul li{
  margin-left:15px;
}
ul li ul,
ul li ul li ul,
ol li ol, ol li ol li ol{
  margin-left:10px;
}
h1,h2,h3,h4,h5,h6{
  color:#1b1b1b;
  line-height:1.1;
  font-weight:bold;
  word-wrap: break-word;
}
h1{
  font-size:32px;
}
h2{
  font-size:30px;
}
h3{
  font-size:24px;
}
h4{
  font-size:20px;
}
h5{
  font-size:18px;
}
h6{
  font-size:14px;
}
.clear{
  clear:both;
}
.alignnone{
  width:100% !important;
}
img.alignleft, .alignleft{
  float:left;
  margin:0 15px 0 0;
  padding:5px;
  border:1px solid #cccccc;
}
img.alignright, .alignright{
  float:right;
  margin:0 0 0 15px;
  padding:5px;
  border:1px solid #cccccc;
}
.left{
  float:left;
}
.right{
  float:right;
}
#comment-nav-above .nav-previous,
#comment-nav-below .nav-previous{
  float:none !important;
  margin:10px 0;
}
ol.comment-list li{
  list-style:none;
  margin-bottom:5px;
}
input:focus{
  border:2px solid #000;
}
.boxlayout{
  width: 1140px;
  margin: 0 auto;
  background-color: #fff;
  position: relative;
  box-shadow: 0 -8px 8px #8e8e8e;
}
/* 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;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}
a:focus,input[type='submit']:focus,input[type='search']:focus,textarea:focus,input[type='name']:focus,input[type='email']:focus,.toggle-nav button:focus,a.close-button:focus,#commentform input#email:focus, #commentform input#url:focus,#commentform input#author:focus, #commentform textarea:focus, #commentform input#eazycfc_captcha:focus,.main-nav a:focus,.main-nav ul ul a:focus{
	outline: -webkit-focus-ring-color auto 1px;
}
.textwidget p a,.entry-content a,.entry-summary p a,ol.comment-list p a {
  text-decoration: underline;
}

/* = wide block css
-------------------------------------- */
/*.alignwide {
  margin-left  : -80px;
  margin-right : -80px;
}
.alignfull {
  margin-left  : calc( -100vw / 2 + 100% / 2 );
  margin-right : calc( -100vw / 2 + 100% / 2 );
  max-width    : 100vw;
}
.alignfull img {
  width: 100vw;
}
#footer .search-form label, #sidebar .search-form label{
  width: 100%;
}*/
/*block css*/
.site-main .alignfull, .site-main .alignwide, .postsec-list .alignfull, .postsec-list .alignwide{
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 20px;
}
.site-main .alignfull img, .postsec-list .alignfull img{
  width: 100% !important
}
.site-main .alignnone, .site-main .aligncenter, .postsec-list .alignnone, .postsec-list .aligncenter{
  width: auto !important;
}
.site-main .alignleft, .postsec-list .alignleft{
  margin-right: 10px;
}
.site-main .wp-block-button a:hover, 
.site-main .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover,
.postsec-list .wp-block-button a:hover, 
.postsec-list .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover{
  border:1px solid var(--third-theme-color);
  color: var(--third-theme-color);
  background: none;
}
.site-main .wp-block-button.is-style-squared a, .postsec-list .wp-block-button.is-style-squared a{
  border-radius: 0px !important;
}
.site-main .wp-block-button__link, .postsec-list .wp-block-button__link{
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  color:#fff !important;
  border-radius: 30px;
  border:1px solid var(--third-theme-color);
  margin-bottom: 10px;
}
.postsec-list .wp-block-button.is-style-outline a{
  background:none;
  border:1px solid var(--third-theme-color) ;
  color: var(--third-theme-color) ;
}
.site-main .wp-block-button.is-style-outline a{
  background:  var(--first-theme-color);
  color: #fff !important;
  background: linear-gradient(0deg, var(--third-theme-color), var(--first-theme-color) 80%) no-repeat;
  color: #fff !important;
  border-radius: 30px;
  border: 1px solid var(--third-theme-color);
}
.site-main .wp-block-button a:hover{
  color:  var(--first-theme-color) !important;
}
.site-main .wp-block-button__link{
  text-decoration: none;
}
.site-main img.alignleft, .site-main .alignleft, .site-main img.alignright, .site-main .alignright,
.postsec-list img.alignleft, .postsec-list .alignleft, .postsec-list img.alignright, .postsec-list .alignright{
  border:none;
}
.wc-block-cart__submit-button .wc-block-components-button__text{
  width: 100%;
}
.wc-block-cart__submit-container a{
  text-decoration: none;
}
/*post formate*/
.format-gallery .wp-block-gallery, .format-video figure{
  margin-bottom: 15px;
}
/* = pre loader css
-------------------------------------- */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  z-index: 999999;
}
#status {
  width: 200px;
  height: 200px;
  position: absolute;
  left: 50%;
  top: 50%;
  background-image: url(images/status.gif);
  background-repeat: no-repeat;
  background-position: center;
  margin: -100px 0 0 -100px;
}
/* = header css
-------------------------------------- */
.sticky-head {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  box-shadow: 2px 2px 10px 0px #2d2d2d;
  background: var(--first-theme-color);
  padding: 20px;
}
.admin-bar .sticky-head{
  top: 32px;
  background: var(--first-theme-color);
}
/* = top header css
-------------------------------------- */
h1.site-title, p.site-title{
  font-size: 35px;
  margin: 0;
  text-transform: uppercase;
}
h1.site-title a, p.site-title a{
  color: #fff;
  font-weight: bold;
  font-size: 24px;
}
h1.site-title a:hover {
  text-decoration: unset;
}
span.site-description{
  font-size: 16px;
  font-weight: 600;
  color: #222;
}
.listarticle h2 a:hover,#sidebar ul li a:hover{
  color: #262626;
}
.center-align{
  align-self: center;
}
.social-icons {
  text-align: right;
}
.social-icons i {
  color: #222;
  font-size: 20px;
}
.page-header {
  position: relative;
  z-index: 999;
  margin-bottom: 6%;
}
.page-header h1{
  color: #000;
  margin-bottom: 25px;
}
.page-header span,.page-header span a {
  font-size: 18px;
  font-weight: bold;
  color: #000;
}
/*scroll to top*/
#button{
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  color: #fff;
  cursor: pointer;
  width: fit-content;
  padding: 5px;
  padding-top: 22px;
  height: 60px;
  aspect-ratio: 1;
  text-align: center;
  position: fixed;
  border-radius: 50%;
  bottom: 60px;
  right: 20px;
  z-index: 9999;
  -moz-border-radius: 0;
  font-size: 15px;
  display: none;
}
/* = header css
-------------------------------------- */

.page-template-template-home-page .header,
.home.page .header {
  background: transparent;
  position: absolute;
  width: 100%;
  z-index: 9999;
  padding: 20px;
}
.header {
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  padding: 20px;
}
.header-top{
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.header-main{
  padding-top: 12px;
}
.header-main .main-menu{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
}
.woocommerce ul.products li.product .button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce a.button, .woocommerce button.button, .woocommerce #respond input#submit, #commentform input#submit, .woocommerce a.added_to_cart {
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  color: #fff;
  padding: 10px 25px;
  border-radius: 0;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
#commentform input#submit:hover,
.woocommerce a.added_to_cart:hover {
  background: #262626;
  color: #fff;
}
.woocommerce .posted_in a{
  color: var(--third-theme-color);
}
.woocommerce a.added_to_cart{
  margin-left: 5px;
  padding: 7px 25px;
}
.entry-summary .price ins, .posted_in a,
.woocommerce ul.products li.product .price ins {
  text-decoration: none !important;
}
.woocommerce div.product form.cart div.quantity {
    margin: 0 8px 0 0;
}
.woocommerce div.product form.cart {
    margin: 0.7em 0;
}
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover{
  background: var(--third-theme-color);
  color: #fff;
}
/* = menus css
-------------------------------------- */
#mySidenav {
  display: inline;
}
.main-menu {
  border-radius: 20px;
  background: rgb(255 255 255 / 60%);
  border: 1px solid #f1f1f1;
  padding: 10px;
}
.main-nav ul {
  margin: 0;
  padding: 0;
}
.main-nav li {
  display: inline-block;
  position: relative;
}
.main-nav a {
  color: #1f1f1f;
  padding: 10px 18px;
  font-size: 15px;
  display: block;
  font-weight: 500;
  text-transform: capitalize;
  position: relative;
  border-radius: 24px;
}
.main-nav .menu-item-has-children > a::after {
  content: '\f107';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; 
  display: inline-block;
  width: 0;
  height: 0;
  position: absolute;
  top: auto;
  right: auto;
  margin-left: 10px;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 12px;
}
.main-nav .menu-item-has-children.current-menu-parent > a::after,
.main-nav .menu-item-has-children.current-menu-ancestor > a::after,
.main-nav .menu-item-has-children.current_page_parent > a::after {
  transform: translateY(-50%) rotate(0deg);
}
.main-nav a:hover {
  color: var(--second-theme-color);
  background: rgba(255, 255, 255, 0.82);
}
.main-nav .current-menu-item > a,
.main-nav .current_page_item > a,
.main-nav .current-menu-parent > a{
  color: #fff;
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
}
.main-nav ul ul {
  position: absolute;
  background: #fff;
  min-width: 250px;
  z-index: 9999;
  top: 98%;
  line-height: 30px;
  opacity: 0;
}
.main-nav ul ul ul {
  left: 100%;
  top: 0%;
}
.main-nav ul ul a {
  color: #1f1f1f;
  border: none;
  padding: 10px;
  margin-top: 5px;
  border-radius: 0;
}
.main-nav ul ul li {
  float: none;
  display: block;
  text-align: left;
  border-left: none;
  border-right: none !important;
  padding: 0;
  border-bottom: solid 1px #f1f1f1;
}
.main-nav li ul {
  border-top: 3px solid var(--second-theme-color) !important;
  border: 1px solid #EEE;
  box-shadow: 0px 0px 12px -3px rgba(0, 0, 0, 0.4);
}
.main-nav .menu > ul > li.highlight {
  background-color: #006ccc;
}
.main-nav .menu > ul > li.highlight:hover {
  background: transparent;
}
.main-nav .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
.main-nav .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menum,
.main-nav .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
  opacity: 1;
}
.main-nav ul li:hover > ul {
  opacity: 1;
}
.main-nav li.menu-item-has-children:hover > ul,
.main-nav li.menu-item-has-children:focus > ul,
.main-nav li.menu-item-has-children.focus > ul {
  opacity: 1;
}
.main-nav .sub-menu {
  opacity: 0;
  left: -9999px;
  z-index: 99999;
  width: 200px !important;
}
ul.sub-menu ul.sub-menu {
  left: 200px !important;
}
.main-nav .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
.main-nav .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menum,
.main-nav .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
  display: block;
  left: 0;
  margin-top: 0;
  opacity: 1;
  width: auto;
  min-width: 100%;
}
ul.sub-menu ul.sub-menu {
  left: -9999px;
}
.toggle-nav,
a.close-button {
  display: none;
}

/* = slider section css
-------------------------------------- */
.slidesection img{
  object-fit: cover;
  height: 800px;
}
.slider-box {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 15%;
  right: 55%;
  text-align: center;
  z-index: 999;
}
.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}
.catwrapslider .owl-prev,
.catwrapslider .owl-next {
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  font-size:30px;
  right:2%;
  background: transparent;
  color: #fff;
  border: none;
}
.catwrapslider .owl-prev{
  right: auto;
  left: 2%;
}
.slider-box h1 a{
  font-size: 50px;
  color: #fff;
  text-transform: uppercase;
  font-family: 'Knewave', cursive;
  font-weight: normal;
}
.slider-box h1 a:hover{
  color: var(--second-theme-color);
}
.slider-box p {
  color: #fff;
  font-size: 16px;
}
.slide-btn a {
  color: #fff;
  padding: 6px 30px;
  font-size: 16px;
  font-weight: normal;
  border-radius: 30px;
  border: solid 3px #fff;
  display: inline-block;
}
.slide-btn a:hover, .service-btn a:hover {
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  border: 3px solid;
  color: #fff;
}

.slidesection .cover {
  background-color: #000000c2;
}
.slidesection svg.waves {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  overflow: hidden;
  z-index: 1;
  opacity: 1;
}
.slidesection .waves image {
  height: 100%;
  width: 50%;
  opacity: 1;
}
.slidesection svg.waves1 {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 100%;
  top: 0;
  opacity: 1;
  z-index: 1;
}
.slidesection .waves1 image {
  height: 100%;
  opacity: 1;
  width: 47%;
}
.slidesection svg.waves2 {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 100%;
  top: 0;
  opacity: 1;
  z-index: 1;
}
.slidesection .waves2 image {
  height: 100%;
  width: 49%;
  opacity: 0.5;
}

/* = Services css
-------------------------------------- */

.odd-even:nth-child(even) {background: var(--second-theme-color)}
.odd-even:nth-child(odd) {background: var(--first-theme-color)}

.services_inner_box h2 a {
  color: #fff;
  text-transform: uppercase;
  font-size: 22px;
}
.services_inner_box p{
  color: #fff;
}
.services_inner_box h2 a:hover{
  color: #000;
}
.service-btn a {
  background: #fff;
  padding: 10px;
  border-radius: 30px;
  font-size: 12px;
  font-weight: bold;
  color: #3ab9d5;
}

/* = Page lay out css
-------------------------------------- */
.postsec-list input.search-field,
.postsec-list input.search-submit {
  padding: 15px 10px;
}
.contentsecwrap{
  padding:25px 0;
  clear: both;
}
.contentsecwrap p{
  margin-bottom:20px;
}
.listarticle, #sidebar aside.widget{
  padding: 20px;
  border-radius: 5px;
}
.listarticle h2 a{
  color: #262626;
}
.postsec-list .listarticle {
    background: #ffffff none repeat scroll 0 0;
    box-shadow: 0 0 4px #cfcfcf;
    padding: 30px;
    position: relative;
    border-radius: 12px;
    margin-bottom: 30px;
}
.postsec-list .listarticle:hover{
    box-shadow: 0 0 20px #cfcfcf;
}
.single_title{
  margin-bottom: 15px;
  font-size: 20px;
}
.post-thumb{
  margin:0 0 15px 0;
}
.nav-links .page-numbers{
  padding:10px 15px;
  color:#111;
  border: 1px solid #111;
}
span.page-numbers.current, .nav-links .page-numbers:hover{
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  border: 1px solid var(--third-theme-color);
  color: #fff;
}
.nav-links{
  margin: 20px 0;
}
/* label css
---------------------------------------------- */
label{
  margin-bottom: 0;
}
#footer .search-form label, #sidebar .search-form label{
  width: 100%;
}
#footer aside h5{
  color: #fff;
  font-size: 28px;
}
aside.widget ul, .entry-summary li{
  list-style:none;
}
.listarticle .alignfull, .listarticle .alignwide{
  margin-left: 0;
  margin-right: 0;
}
#recentcomments li{
  background-image:none !important;
}
#recentcomments li a{
  padding-left:0px !important;
}
.textwidget select,table{
  width:100%;
}
nav.navigation.pagination {
    margin: 30px auto;
}
/*--------------------------------------------------------------
## Sidebar Style 
--------------------------------------------------------------*/
#sidebar input[type="text"],
#sidebar input[type="search"],
#footer input[type="search"]{
  border: solid 2px var(--second-theme-color);
  padding: 10px;
  width: 100%;
  margin-bottom: 10px;
}
#sidebar input.search-submit,
#footer input.search-submit,
form.woocommerce-product-search button {
  padding: 10px;
  width: 100%;
  border:none;
  background: var(--second-theme-color);
  font-size: 15px;
  text-transform: uppercase;
  color: #fff;
}
input.search-submit{
  background-color: var(--second-theme-color);
  color: #fff;
  border:none;
  padding: 16px 20px !important;
}
.widget-area .widget::after,
.widget-area .widget::before {
    clear: both;
    content: "";
    display: table;
}
 .entry-title h2:before{
 content: "\f185";
    display: inline-block;
    font-family: FontAwesome;
    margin-right: 5px;
}
#sidebar ul {
    list-style: outside none none;
    padding: 0;
    margin: 0;
}
#sidebar ul ul {
    border-bottom:none;
    padding-bottom: 0;
}
#sidebar ul li {
  padding: 5px;
  padding-left: 30px;
  padding-top: 5px;
  position: relative;
}
#sidebar ul li::before {
  color: var(--second-theme-color) !important;
  content: "\f192";
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 7px;
  left: 0;
  position: absolute;
  top: 6px;
  margin-left: 2px;
}
#sidebar .widget a,
#sidebar .widget a:visited {
    color: #9d9c9c;
}
#sidebar .widget a:hover,
#sidebar .widget a:active {
   color: var(--second-theme-color);
}
#sidebar .widget {
    padding: 20px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 0 4px #cfcfcf;
    border-bottom: 3px solid var(--second-theme-color);
    margin-bottom: 30px;
}
#sidebar .widget:hover{
    box-shadow: 0 0 20px #cfcfcf;
}
#sidebar .widget_nav_menu ul li{
  padding: 3px 15px 5px 13px;
}
#sidebar .widget_nav_menu ul li a{ 
  line-height: 2.5;
}
#sidebar input[type="search"]{
  margin-bottom: 0px;
}  
#sidebar .wp-block-search__label,
#sidebar .widget-title{
  font-size: 30px;
  color: #1b1b1b;
  line-height: 1.1;
  font-weight: bold;
  word-wrap: break-word;
  margin-bottom: 0.5rem;
}
#sidebar .wp-block-search__button{
  background-color: var(--second-theme-color);
}
/*calendar widget*/
.widget_calendar {
    text-align: center;
}
.widget_calendar  h3{
  text-align: left;
}
.widget_calendar caption {
    background: var(--second-theme-color) none repeat scroll 0 0;
    color: #ffffff;
    padding: 5px;
}
.widget_calendar .pad {
    background: #eeeeee none repeat scroll 0 0;
}
.widget_calendar #today {
    background: var(--second-theme-color) none repeat scroll 0 0;
    color: #ffffff;
}
.widget .tagcloud a {
    border: 1px solid #dddddd;
    color: #001837;
    display: inline-block;
    font-size: 16px !important;
    line-height: 1.5;
    margin-bottom: 5px;
    padding: 5px 15px;
}
.widget .tagcloud a:hover {
    border: 1px solid var(--second-theme-color);
    color: var(--second-theme-color);
}
.widget_categories li > a,
.widget_archive li > a {
    display: inline-block;
    min-width: 85%;
}
.search-form .search-submit:focus {
    box-shadow: inherit;
    outline: none;
}
dt {
    font-weight: bold;
}
dd {
    margin: 0 1.5em 1.5em;
}
img {
    height: auto;
    max-width: 100%;
}
table {
    margin: 0 0 1.5em;
    width: 100%;
}
td, th {
  border: 1px solid #ddd;
  padding: 5px;
  color:#252525;
}
#footer td, #footer th{
  color: #fff;
}
select {
    width: 100%;
    padding: 5px;
}
#footer .tagcloud a {
  border: solid 1px #fff;
  font-size: 12px !important;
  margin: 2px 0;
  display: inline-block;
  color: #fff !important;
  padding: 5px;
}
.tagcloud a:hover{
  background-color: var(--second-theme-color);
  border-color: var(--second-theme-color) !important;
  color: #fff !important;
}
/*footer*/
.footer-widget {
  background: #121212 none repeat scroll 0 0;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.75);
}
.footer-widget .widget-title{
  color: #fff;
}
#footer ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
#footer ul li {
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 3px 15px 3px 13px;
  position: relative;
  color: #fff;
}
#footer ul li::before {
  color: #fff;
  content: "\f105";
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 14px;
  left: 0;
  position: absolute;
  top: 3px;
}
#footer a .footer-widget-area {
  float: left;
  padding: 0 25px;
  width: 25%;
}
#footer a,
#footer p {
  color:#fff;
}
#footer a:hover {
  color:var(--second-theme-color);
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.postsec-list article.hentry {
    background: #ffffff none repeat scroll 0 0;
    box-shadow: 0 0 4px #cfcfcf;
    padding: 15px 15px;
    position: relative;
    border-radius: 12px;
    margin-bottom: 30px;
}
.postsec-list article.hentry:hover{
    box-shadow: 0 0 20px #cfcfcf;
}
/* = Footer css
------------------------------------------- */
#footer input.search-submit {
  background: var(--second-theme-color);
  color: #fff;
  border: none;
  padding: 10px;
  width: 100%;
}
#footer{
	background-color: #262626;
	color: #ffffff;
}
.ftr-4-box {
    width: 100%;
    float: left;
    margin: 0 4% 2% 0;
    box-sizing: border-box;
    padding: 20px;
}
.ftr-4-box h3,.ftr-4-box h2{
	font-size:25px;
	color:#fff;
	margin-bottom:25px;
	border-bottom:1px solid #303030;
	padding: 15px 0;
}
.ftr-4-box ul{
	margin:0;
	padding:0;
	list-style:inside disc;
}
.ftr-4-box ul li {
	display:block;
	padding:6px 0;
}
.ftr-4-box ul li a,.ftr-4-box a {
	color:#ffffff;
}
.ftr-4-box a:hover{
  color: var(--second-theme-color);
}
.ftr-4-box p{
	margin-bottom:15px;
}
#footer select{
  height: auto;
}
.copywrap {
	background-color: #262626;
	color: #fff;
  font-size: 18px;
	padding:15px 0;
}
.copywrap a{
  color: #fff;
}
.copywrap a:hover {
    color: var(--second-theme-color);
}
/*Clearing floats css*/
.page-links {
  float: unset !important;
  display: inline-flex;
  gap: 5px;
  align-items: center;
  margin:20px auto;
}
.page-links a, .page-links span{
  padding: 10px 15px;
  border:1px solid #000;
  background:none;
  color: #000;
}
.page-links .post-page-numbers.current, .page-links a:hover{
  background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  border: 1px solid var(--third-theme-color);
  color:#fff;
}
.entry-content .tags a{
  color:#fff !important;
}
.copywrap .copywrap-info{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.copywrap .copywrap-info.center-content {
  justify-content: center;
  text-align: center;
}
/* Mobile */
@media screen and (min-width: 320px) and (max-width: 520px) {
  .page-template-template-home-page .header,
  .home.page .header{
    position: static !important;
    background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
    border: none;
}
  .social-icons{
    text-align: center;
  }
  .slider-box h1 {
    font-size: 20px;
  }
  .slider-box {
    right: 10%;
    left: 10%;
    text-align: center;
  }
  h1.site-title{
    font-size: 28px;
  }
  .slide-btn a{
    margin-bottom: 5px;
    padding: 4px 20px;
  }
}

/* Mobile Portrait View */
@media screen and (max-width: 600px) {
	.admin-bar .sticky-head{
	top: 0px;
	}
} 
@media screen and (max-width: 767px) {
  .wpcf7 input[type="text"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="email"],
  .wpcf7 textarea {
    width: 100%;
  }
  .slider-box h1 a{
    font-size: 30px;
  }
  .slider-box p{
    display: none;
  }
  .page-header h1{
    text-align: center;
  }
  .ftr-4-box{
    width: 100%;
  }
  h1.site-title a, p.site-title a{
    font-size: 20px;
    display: inline-block;
  }
  .slider-img-color, .slidesection img{
    height: 300px;
  }
  span.site-description{
    display: block;
    margin-bottom: 10px;
  }
  .header{
    padding: 10px 30px;
  }
  tr.wc-block-cart-items__row {
  gap: 0.4em;
  }
  td.wc-block-cart-item__total{
  padding-left: 0px !important;
  }
  li.wc-block-grid__product{
  max-width:100% !important;
  float:none;
  }
  .boxlayout{
    width: 270px;
  }
  .copywrap .copywrap-info{
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  .copywrap .copywrap-info p,
  .copywrap .footer-social {
    flex: 1 1 100%; 
    justify-content: center;
    align-items: center;
  }
  .copywrap .footer-social{
    margin-top: 10px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .slider-box h1 {
    font-size: 25px;
  }
  .page-template-template-home-page .header,
  .home.page .header{
    position: static !important;
    background: linear-gradient(0deg,var(--third-theme-color),var(--first-theme-color) 80%) no-repeat;
  }
  .slider-box {
    left: 10%;
    right: 35%;
  }
  .header, .page-template-template-home-page .header, .home.page .header{
    padding: 10px;
  }
  tr.wc-block-cart-items__row {
  gap: 1em;
  }
  li.wc-block-grid__product{
  max-width: 48% !important;
  float: left;
  clear: both;
  margin: 0 1% 2.992em;
  flex: 1 0 48% !important;
  }
  .boxlayout{
    width: 650px;
  }
  .slidesection img{
    height: 500px;
  }
}

@media screen and (max-width: 1000px) {
  .main-nav ul ul, .main-nav .sub-menu{
    opacity: 1;
  }
  .main-nav .sub-menu{
      margin-left: 25px;
  }
  .main-nav li ul{
    border:none;
    box-shadow: none;
    border-top: none !important;
  }
  .main-nav .sub-menu li{
    border-bottom: none;
  }
  #mySidenav nav#site-navigation {
    background: transparent;
    text-align: left;
  }
  .toggle-nav button {
    font-weight: bold;
    background: #fff;
    border: none;
    color: #262626;
    font-size: 15px;
    padding: 16px;
    line-height: 1;
  }
  .sidenav {
    height: 100%;
    width: 100%;
    position: fixed;
    z-index: 99999;
    left: 0;
    top: -110%;
    overflow-x: hidden;
    transition: 0.5s top ease-in-out;
    overflow-y: scroll;
    background: var(--second-theme-color);
    opacity: 0.9;
    visibility: hidden;
  }
  body.show-main-menu .sidenav {
    visibility: visible;
    top: 0;
    transition: 0.5s top ease-in-out;
  }
  .sidenav .close-button {
    font-size: 36px;
    display: block !important;
    color: #fff;
  }
  .sidenav #site-navigation {
    width: 100%;
  }
  .toggle-nav span {
    font-size: 30px;
    cursor: pointer;
    text-align: right;
  }
  .main-nav ul ul li,
  .menubar .nav ul li,
  .toggle-nav {
    display: block;
  }
  .main-nav ul li a {
    padding: 8px;
    text-decoration: none;
    font-size: 15px;
    color: #fff;
    display: block;
    float: none;
    margin: 5px 0;
    border-right: none;
    border-radius: 0;
  }
  .main-nav ul li ul li a:before {
    content: "\00BB \00a0";
  }
  .main-nav ul.sub-menu a:hover {
    padding-left: 35px !important;
    color: #fff;
    background:none;
  }
  .main-nav ul ul {
    position: static;
    width: 100%;
    background: transparent;
    border-top-width: 0px;
    border-bottom-width: 0px;
    box-shadow: none;
  }
  .main-nav ul ul a {
    border-bottom: none;
    padding-left: 40px;
  }
  .main-nav ul ul ul.sub-menu a {
    padding-left: 40px;
  }
  .main-nav li {
    padding: 0 15px;
    display: block;
    border-bottom: solid 1px #fff;
  }
  .main-header-box {
    padding-bottom: 15px;
  }
  .main-menu {
    padding: 0em;
    background: transparent;
    border: none;
  }
  .header-main .main-menu{
    display: block;
  }
  .main-nav ul.sub-menu > li > a:before {
    content: unset;
  }
  .main-nav ul.sub-menu > li > a:hover:before {
    opacity: 0;
    left: 0px;
    width: 0px;
  }
  .breadcrumb a{
    margin-bottom: 10px;
  }
  .main-nav a:hover{
    color:#fff;
  }
}

@media screen and (min-width: 1024px) and (max-width: 1200px) {
  .slider-box {
    right: 30%;
    top: 60%;
  }
  tr.wc-block-cart-items__row {
    gap: 1em;
  }
  .boxlayout{
    width: 870px;
  }
}
@media screen and (max-width: 320px){
  .woocommerce ul.products li{
    width: 100% !important;
  }
}
@media screen and (min-width:1700px) and (max-width:1900px){
  .container{
    max-width: 1520px;
  }
}
@media screen and (min-width:1920px) {
  .container{
    max-width: 1620px;
  }
}

/* ===============
   Premium-Style Header + Hero (Original Implementation)
================== */
.site-header-modern {
  background: linear-gradient(92deg, var(--third-theme-color), var(--first-theme-color) 78%);
  padding: 0;
  position: relative;
  z-index: 9999;
}
.page-template-template-home-page .site-header-modern,
.home.page .site-header-modern {
  background: transparent;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.site-header-modern .header-utility {
  border-bottom: 1px solid rgba(255, 255, 255, 0.22);
}
.site-header-modern .site-description {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}
.site-header-modern .header-utility-right {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.site-header-modern .header-contact-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
}
.site-header-modern .header-contact-link i {
  font-size: 12px;
}
.site-header-modern .header-contact-link:hover,
.site-header-modern .header-contact-link:focus {
  color: #fff;
  opacity: 0.85;
}
.site-header-modern .header-social-icons {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.site-header-modern .header-social-icons a {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 12px;
}
.site-header-modern .header-social-icons a:hover,
.site-header-modern .header-social-icons a:focus {
  background: #fff;
  color: var(--second-theme-color);
}
.site-header-modern .header-main {
  padding: 14px 0;
}
.site-header-modern .site-branding-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
}
.site-header-modern .site-branding-wrap .custom-logo-link {
  display: inline-flex;
  align-items: center;
}
.site-header-modern .site-branding-wrap img {
  max-height: 64px;
  width: auto;
}
.site-header-modern .site-title,
.site-header-modern .site-title a {
  margin: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1.1;
}
.site-header-modern .header-navigation-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}
.site-header-modern .main-menu {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 38px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 8px;
  box-shadow: 0 10px 28px rgba(11, 26, 44, 0.18);
}
.site-header-modern .main-nav a {
  font-size: 14px;
  font-weight: 600;
  color: #122136;
  padding: 9px 16px;
}
.site-header-modern .main-nav a:hover,
.site-header-modern .main-nav .current-menu-item > a,
.site-header-modern .main-nav .current_page_item > a,
.site-header-modern .main-nav .current-menu-parent > a {
  color: #fff;
  background: linear-gradient(130deg, var(--third-theme-color), var(--first-theme-color));
}
.site-header-modern .header-cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 20px;
  border-radius: 32px;
  background: linear-gradient(130deg, #ff9c1d, #ffb347);
  color: #111;
  font-weight: 700;
  font-size: 14px;
  border: 1px solid transparent;
}
.site-header-modern .header-cta-btn:hover,
.site-header-modern .header-cta-btn:focus {
  color: #111;
  opacity: 0.9;
}
.site-header-modern .header-toggle-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 0;
  border-radius: 28px;
  background: #fff;
  color: #1d2a3e;
  padding: 10px 14px;
  font-weight: 600;
  font-size: 14px;
}

.home-hero-section .hero-slide {
  position: relative;
}
.home-hero-section .hero-slide-image {
  height: 780px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.home-hero-section .hero-slide-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(95deg, rgba(8, 28, 52, 0.78) 0%, rgba(8, 28, 52, 0.35) 50%, rgba(8, 28, 52, 0.15) 100%);
  display: flex;
  align-items: center;
}
.home-hero-section .hero-content-box {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  transform: none;
  z-index: 3;
  max-width: 640px;
  text-align: left;
}
.home-hero-section .hero-kicker {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.home-hero-section .hero-title {
  margin: 0 0 18px;
  line-height: 1.06;
}
.home-hero-section .hero-title a {
  font-size: clamp(30px, 5vw, 62px);
  font-weight: 800;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0;
}
.home-hero-section .hero-title a:hover,
.home-hero-section .hero-title a:focus {
  color: #fff;
}
.home-hero-section .hero-description {
  color: #f7f9ff;
  font-size: 17px;
  line-height: 1.6;
  max-width: 560px;
  margin-bottom: 30px;
}
.home-hero-section .hero-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 0 !important;
}
.home-hero-section .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 165px;
  padding: 12px 20px;
  border-radius: 32px;
  font-weight: 700;
  font-size: 14px;
  border: 2px solid transparent;
  text-transform: uppercase;
  letter-spacing: 0;
}
.home-hero-section .hero-btn-primary {
  background: linear-gradient(130deg, #ff9c1d, #ffb347);
  border-color: #ffb347;
  color: #111;
}
.home-hero-section .hero-btn-primary:hover,
.home-hero-section .hero-btn-primary:focus {
  color: #111;
  opacity: 0.9;
}
.home-hero-section .hero-btn-secondary {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.95);
  color: #fff;
}
.home-hero-section .hero-btn-secondary:hover,
.home-hero-section .hero-btn-secondary:focus {
  background: #fff;
  color: #1a2f4b;
}
.home-hero-section .home-hero-slider .owl-nav button.owl-prev,
.home-hero-section .home-hero-slider .owl-nav button.owl-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.4);
  background: rgba(8, 28, 52, 0.4) !important;
  color: #fff !important;
  font-size: 16px !important;
  margin: 0 !important;
}
.home-hero-section .home-hero-slider .owl-nav button.owl-prev {
  left: 24px;
}
.home-hero-section .home-hero-slider .owl-nav button.owl-next {
  right: 24px;
}
.home-hero-section .home-hero-slider .owl-nav button:hover {
  background: #fff !important;
  color: #0f2440 !important;
}
.home-hero-section .home-hero-slider .owl-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 22px;
  text-align: center;
}
.home-hero-section .home-hero-slider .owl-dots .owl-dot span {
  width: 11px;
  height: 11px;
  margin: 4px;
  background: rgba(255, 255, 255, 0.45);
}
.home-hero-section .home-hero-slider .owl-dots .owl-dot.active span,
.home-hero-section .home-hero-slider .owl-dots .owl-dot:hover span {
  background: #fff;
}

@media screen and (max-width: 1200px) {
  .site-header-modern .header-navigation-wrap {
    gap: 10px;
  }
  .site-header-modern .main-nav a {
    padding: 8px 12px;
  }
  .home-hero-section .hero-slide-image {
    height: 680px;
  }
}

@media screen and (max-width: 1000px) {
  .page-template-template-home-page .site-header-modern,
  .home.page .site-header-modern {
    position: static;
    background: linear-gradient(92deg, var(--third-theme-color), var(--first-theme-color) 78%);
  }
  .site-header-modern .header-utility-right {
    justify-content: center;
  }
  .site-header-modern .site-branding-wrap {
    justify-content: flex-start;
  }
  .site-header-modern .header-cta-wrap {
    display: none;
  }
  .site-header-modern .header-toggle-button {
    padding: 10px 12px;
  }
  .site-header-modern .header-toggle-button span {
    display: none;
  }
  .site-header-modern .sidenav {
    background: rgba(7, 34, 63, 0.96);
  }
  .site-header-modern .main-nav ul li a {
    color: #fff;
  }
  .home-hero-section .hero-slide-image {
    height: 560px;
  }
  .home-hero-section .hero-content-box {
    max-width: 100%;
    text-align: center;
  }
  .home-hero-section .hero-description {
    margin-left: auto;
    margin-right: auto;
  }
  .home-hero-section .hero-actions {
    justify-content: center;
  }
  .home-hero-section .home-hero-slider .owl-nav button.owl-prev {
    left: 10px;
  }
  .home-hero-section .home-hero-slider .owl-nav button.owl-next {
    right: 10px;
  }
}

@media screen and (max-width: 767px) {
  .site-header-modern .header-main {
    padding: 10px 0;
  }
  .site-header-modern .site-title,
  .site-header-modern .site-title a {
    font-size: 20px;
  }
  .site-header-modern .site-branding-wrap img {
    max-height: 54px;
  }
  .home-hero-section .hero-slide-image {
    height: 500px;
  }
  .home-hero-section .hero-kicker {
    font-size: 12px;
    margin-bottom: 8px;
  }
  .home-hero-section .hero-title a {
    font-size: clamp(25px, 9vw, 38px);
  }
  .home-hero-section .hero-description {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 20px;
  }
  .home-hero-section .hero-btn {
    min-width: 145px;
    padding: 10px 14px;
    font-size: 12px;
  }
}

html {
  scroll-behavior: smooth;
}

.home-content .sr-section {
  position: relative;
  padding: 68px 0;
  scroll-margin-top: 100px;
}
.home-content .sr-section p {
  color: #354a64;
}
.sr-section-intro {
  max-width: 760px;
  margin: 0 auto 30px;
}
.sr-section-subtext {
  margin-top: 12px;
}
.sr-kicker {
  margin: 0 0 12px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #018fce !important;
}
.sr-kicker-light {
  color: rgba(255, 255, 255, 0.84) !important;
}
.home-content .sr-section h2 {
  margin: 0;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.1;
  color: #0f2a46;
}
.home-content .sr-section h3 {
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.25;
  color: #123457;
}

.sr-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 22px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}
.sr-btn i {
  font-size: 16px;
}
.sr-btn:hover,
.sr-btn:focus {
  transform: translateY(-2px);
}
.sr-btn-primary {
  background: linear-gradient(130deg, #00b9d5, #0a72da);
  color: #fff;
  box-shadow: 0 12px 24px rgba(0, 126, 204, 0.24);
}
.sr-btn-primary:hover,
.sr-btn-primary:focus {
  color: #fff;
}
.sr-btn-dark {
  background: #0d2948;
  color: #fff;
}
.sr-btn-dark:hover,
.sr-btn-dark:focus {
  color: #fff;
}
.sr-btn-light {
  background: #fff;
  color: #0d2a47;
  box-shadow: 0 12px 24px rgba(9, 26, 47, 0.18);
}
.sr-btn-light:hover,
.sr-btn-light:focus {
  color: #0d2a47;
}
.sr-btn-light-outline {
  border-color: rgba(255, 255, 255, 0.65);
  background: transparent;
  color: #fff;
}
.sr-btn-light-outline:hover,
.sr-btn-light-outline:focus {
  border-color: #fff;
  background: #fff;
  color: #0d2a47;
}
.sr-section-actions {
  margin-top: 32px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}

.sr-card {
  border: 1px solid rgba(12, 53, 96, 0.09);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(9, 35, 63, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.sr-card:hover,
.sr-card:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 18px 36px rgba(6, 32, 58, 0.14);
}
.sr-icon-chip {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  color: #fff;
  background: linear-gradient(130deg, #00b3d6, #0a6fd7);
  margin-bottom: 18px;
}

.sr-about {
  background: linear-gradient(180deg, #f4fbff 0%, #eff8ff 100%);
}
.sr-about-grid {
  display: grid;
  gap: 36px;
  align-items: center;
}
.sr-about-visual {
  position: relative;
  padding: 8px;
}
.sr-about-photo-frame {
  position: relative;
  margin: 0;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(11, 50, 91, 0.18);
  box-shadow: 0 24px 44px rgba(8, 31, 54, 0.14);
}
.sr-about-photo-frame img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}
.sr-about-photo-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, rgba(8, 35, 69, 0.05) 0%, rgba(8, 35, 69, 0.48) 100%);
}
.sr-about-photo-frame figcaption {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  z-index: 2;
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.9);
}
.sr-shape {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  animation: sr-float 6s ease-in-out infinite;
}
.sr-shape-a {
  width: 92px;
  height: 92px;
  top: -18px;
  right: -10px;
  background: rgba(3, 180, 217, 0.22);
}
.sr-shape-b {
  width: 64px;
  height: 64px;
  left: -16px;
  bottom: 24px;
  background: rgba(255, 170, 61, 0.3);
  animation-delay: 0.8s;
}
.sr-about-content p {
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 1.7;
}
.sr-about-list-title {
  margin-bottom: 10px !important;
  font-weight: 700;
  color: #13375a !important;
}
.sr-check-list {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
}
.sr-check-list li {
  position: relative;
  margin: 0 0 10px;
  padding-left: 22px;
  line-height: 1.5;
  color: #29445e;
}
.sr-check-list li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #04acd8;
}

.sr-services {
  background: #fff;
}
.sr-service-grid {
  display: grid;
  gap: 16px;
}
.sr-service-card {
  height: 100%;
  padding: 26px 22px;
}
.sr-service-card p {
  margin: 0;
  line-height: 1.65;
}
.sr-highlight-text {
  margin-top: 14px !important;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #0d395f !important;
  background: rgba(4, 181, 218, 0.11);
}

.sr-why-choose {
  background: linear-gradient(180deg, #f8fcff 0%, #f1f8ff 100%);
}
.sr-feature-grid {
  display: grid;
  gap: 16px;
}
.sr-feature-card {
  padding: 24px 20px;
}
.sr-feature-card h3 {
  margin: 0;
  font-size: 20px;
}

.sr-journey {
  background: #fff;
}
.sr-journey-track {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(220px, 1fr);
  gap: 14px;
  overflow-x: auto;
  padding: 8px 2px 8px;
  scroll-snap-type: x mandatory;
}
.sr-journey-step {
  position: relative;
  scroll-snap-align: start;
  padding: 22px 18px;
  border: 1px solid rgba(11, 53, 95, 0.15);
  border-radius: 8px;
  background: #f6fbff;
}
.sr-step-icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  color: #fff;
  background: linear-gradient(130deg, #00afd2, #0b6fd8);
  box-shadow: 0 10px 24px rgba(8, 57, 102, 0.2);
  margin-bottom: 14px;
}
.sr-step-number {
  margin-bottom: 8px !important;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #018bc8 !important;
}
.sr-journey-step h3 {
  margin: 0;
  font-size: 19px;
  line-height: 1.35;
}

.sr-testimonials {
  background: linear-gradient(180deg, #f3f9ff 0%, #ffffff 100%);
}
.sr-testimonial-grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(250px, 1fr);
  gap: 16px;
  overflow-x: auto;
  padding: 4px 2px;
  scroll-snap-type: x mandatory;
}
.sr-testimonial-card {
  position: relative;
  scroll-snap-align: start;
  padding: 24px 20px;
}
.sr-quote-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  font-size: 16px;
  color: #fff;
  background: linear-gradient(135deg, #11a7d2, #1670d8);
}
.sr-testimonial-card p {
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 1.72;
}
.sr-testimonial-card h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}

.sr-faq {
  background: linear-gradient(180deg, #f8fcff 0%, #f2f9ff 100%);
}
.sr-faq-list {
  max-width: 860px;
  margin: 0 auto;
}
.sr-faq-item {
  border: 1px solid rgba(14, 56, 96, 0.16);
  border-radius: 8px;
  background: #fff;
  padding: 0;
  margin-bottom: 12px;
  overflow: hidden;
}
.sr-faq-item summary {
  cursor: pointer;
  list-style: none;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  color: #16385a;
  padding: 18px 20px;
}
.sr-faq-item summary::-webkit-details-marker {
  display: none;
}
.sr-faq-item summary::after {
  content: "+";
  float: right;
  color: #069fd3;
}
.sr-faq-item[open] summary::after {
  content: "-";
}
.sr-faq-item p {
  margin: 0;
  padding: 0 20px 18px;
  line-height: 1.65;
}

.sr-final-cta {
  background: transparent;
  padding-top: 20px;
  padding-bottom: 72px;
}
.sr-final-cta-inner {
  border-radius: 8px;
  padding: 42px 24px;
  background: linear-gradient(135deg, #0b2b4b 0%, #165cb8 56%, #1e7dd8 100%);
  box-shadow: 0 20px 40px rgba(7, 31, 55, 0.22);
}
.sr-final-cta-inner h2 {
  color: #fff !important;
}
.sr-final-cta-inner p {
  margin: 18px auto 0;
  max-width: 640px;
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 17px;
  line-height: 1.7;
}
.sr-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 28px;
}

.sr-footer {
  background: #071f37;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding: 56px 0 26px;
}
.sr-footer * {
  color: #d8e9ff;
}
.sr-footer a:hover,
.sr-footer a:focus {
  color: #70d9ff;
}
.sr-footer-grid {
  display: grid;
  gap: 34px;
}
.sr-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.sr-footer-logo-mark {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(130deg, #03afd5, #0f6ed7);
  color: #fff;
}
.sr-footer-logo-text {
  font-size: 23px;
  font-weight: 700;
  line-height: 1.2;
}
.sr-footer-tagline {
  margin: 18px 0 0;
  max-width: 350px;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(221, 236, 255, 0.84) !important;
}
.sr-footer-title {
  margin: 0 0 14px;
  font-size: 18px;
  color: #fff;
}
.sr-footer-nav ul,
.sr-footer-contact ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sr-footer-nav li,
.sr-footer-contact li {
  margin-bottom: 12px;
}
.sr-footer-contact li a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}
.sr-footer-social {
  margin-top: 8px;
  display: flex;
  gap: 8px;
}
.sr-footer-social a {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.12);
}
.sr-footer-bottom {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  text-align: center;
}
.sr-footer-bottom p {
  margin: 0;
  font-size: 13px;
  color: rgba(228, 240, 255, 0.8) !important;
}

.sr-whatsapp-float {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9998;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-radius: 999px;
  background: #25d366;
  color: #fff;
  box-shadow: 0 12px 28px rgba(15, 42, 63, 0.24);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}
.sr-whatsapp-float i {
  font-size: 20px;
}
.sr-whatsapp-float:hover,
.sr-whatsapp-float:focus {
  color: #fff;
  transform: translateY(-2px);
}

#button {
  bottom: 84px;
}

@keyframes sr-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}

@media screen and (min-width: 768px) {
  .home-content .sr-section {
    padding: 86px 0;
  }
  .sr-about-grid {
    grid-template-columns: minmax(0, 44%) minmax(0, 56%);
    gap: 42px;
  }
  .sr-service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sr-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sr-footer-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}

@media screen and (min-width: 1100px) {
  .sr-service-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sr-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sr-journey-track {
    overflow: visible;
    grid-auto-flow: initial;
    grid-auto-columns: initial;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding-top: 26px;
  }
  .sr-journey-track::before {
    content: "";
    position: absolute;
    top: 52px;
    left: 12.5%;
    right: 12.5%;
    height: 2px;
    background: linear-gradient(90deg, rgba(0, 176, 210, 0.35), rgba(0, 176, 210, 0.1));
    z-index: 0;
  }
  .sr-journey-step {
    background: #fff;
    z-index: 1;
  }
  .sr-testimonial-grid {
    overflow: visible;
    grid-auto-flow: initial;
    grid-auto-columns: initial;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (max-width: 767px) {
  .home-content .sr-section {
    padding: 56px 0;
  }
  .home-content .sr-section h2 {
    font-size: clamp(26px, 9vw, 36px);
  }
  .home-content .sr-section h3 {
    font-size: 20px;
  }
  .sr-about-photo-frame img {
    min-height: 300px;
  }
  .sr-faq-item summary {
    font-size: 16px;
  }
  .sr-final-cta {
    padding-bottom: 64px;
  }
  .sr-final-cta-inner {
    padding: 34px 16px;
  }
  .sr-final-cta-inner p {
    font-size: 15px;
  }
  .sr-whatsapp-float {
    width: 52px;
    height: 52px;
    justify-content: center;
    padding: 0;
  }
  .sr-whatsapp-float span {
    display: none;
  }
  #button {
    bottom: 76px;
    right: 14px;
  }
}

/* SwimRight Aquatics lightweight site refresh */
.sr-site-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid rgba(10, 68, 115, 0.12);
  box-shadow: 0 8px 24px rgba(9, 38, 68, 0.06);
}
.sr-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 82px;
}
.sr-header-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: #0d3154;
  font-weight: 800;
  line-height: 1.15;
}
.sr-header-logo img {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: contain;
  flex: 0 0 auto;
}
.sr-header-logo span {
  font-size: 18px;
  white-space: nowrap;
}
.sr-header-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
}
.sr-header-nav a {
  padding: 9px 12px;
  border-radius: 999px;
  color: #173b5e;
  font-size: 14px;
  font-weight: 700;
}
.sr-header-nav a:hover,
.sr-header-nav a:focus {
  background: #eaf7ff;
  color: #006aa7;
}
.sr-header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #18b760;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  white-space: nowrap;
  box-shadow: 0 10px 22px rgba(24, 183, 96, 0.22);
}
.sr-header-cta:hover,
.sr-header-cta:focus {
  color: #fff;
  background: #109f51;
}

.sr-home-hero {
  padding: 86px 0 72px;
  background: linear-gradient(180deg, #eef9ff 0%, #ffffff 100%);
}
.sr-home-hero-inner {
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}
.sr-home-hero-logo {
  width: 112px;
  height: 112px;
  border-radius: 50%;
  object-fit: contain;
  margin-bottom: 18px;
  box-shadow: 0 16px 32px rgba(13, 66, 108, 0.12);
}
.sr-home-hero h1,
.sr-page-hero h1 {
  margin: 0;
  color: #0b2f51;
  font-size: clamp(34px, 6vw, 58px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: 0;
}
.sr-home-hero-subheading,
.sr-page-hero p {
  max-width: 640px;
  margin: 18px auto 28px;
  color: #365470;
  font-size: 18px;
  line-height: 1.7;
}
.home-content .sr-section {
  padding: 64px 0;
}
.sr-feature-grid-four {
  grid-template-columns: 1fr;
}

.sr-community {
  background: #fff;
}
.sr-community-grid {
  display: grid;
  gap: 16px;
}
.sr-community-reels {
  margin-top: 18px;
}
.sr-community-card {
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid rgba(12, 53, 96, 0.1);
  background: #fff;
  box-shadow: 0 14px 30px rgba(9, 35, 63, 0.08);
}
.sr-community-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.sr-community-video-card video {
  display: block;
  width: 100%;
  aspect-ratio: 9 / 16;
  background: #08233e;
  object-fit: cover;
}
.sr-community-video-card figcaption {
  padding: 12px 14px;
  color: #173b5e;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
}

.sr-page {
  background: #fff;
}
.sr-page-hero {
  padding: 64px 0 38px;
  background: linear-gradient(180deg, #eef9ff 0%, #ffffff 100%);
  text-align: center;
}
.sr-page-section {
  padding: 42px 0 72px;
}
.sr-about-page-grid {
  display: grid;
  gap: 30px;
  align-items: center;
}
.sr-about-page-photo {
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid rgba(12, 53, 96, 0.12);
  box-shadow: 0 18px 36px rgba(9, 35, 63, 0.1);
}
.sr-about-page-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}
.sr-about-page-content h2 {
  margin: 0 0 16px;
  color: #0b2f51;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.12;
}
.sr-about-page-content p {
  margin: 0 0 16px;
  color: #365470;
  font-size: 16px;
  line-height: 1.75;
}
.sr-contact-grid {
  display: grid;
  gap: 16px;
}
.sr-contact-card {
  display: grid;
  gap: 8px;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid rgba(12, 53, 96, 0.1);
  background: #f8fcff;
  color: #173b5e;
  box-shadow: 0 12px 28px rgba(9, 35, 63, 0.06);
}
.sr-contact-card i {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #e2f5ff;
  color: #007bbb;
  font-size: 18px;
}
.sr-contact-card span {
  color: #55708a;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}
.sr-contact-card strong {
  color: #0b2f51;
  font-size: 18px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.sr-contact-card:hover,
.sr-contact-card:focus {
  transform: translateY(-2px);
  color: #173b5e;
}

.sr-footer-logo img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: contain;
}
.sr-footer-logo span {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.15;
}

@media screen and (min-width: 768px) {
  .sr-feature-grid-four,
  .sr-community-grid,
  .sr-contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sr-about-page-grid {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap: 44px;
  }
}

@media screen and (min-width: 1024px) {
  .sr-feature-grid-four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .sr-community-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sr-contact-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (max-width: 820px) {
  .sr-header-inner {
    min-height: auto;
    padding: 12px 0;
    flex-wrap: wrap;
  }
  .sr-header-logo {
    flex: 1 1 auto;
  }
  .sr-header-logo span {
    font-size: 16px;
  }
  .sr-header-nav {
    order: 3;
    width: 100%;
    justify-content: flex-start;
  }
  .sr-header-nav a {
    padding: 8px 10px;
    font-size: 13px;
  }
  .sr-header-cta {
    min-height: 38px;
    padding: 9px 12px;
    font-size: 13px;
  }
  .sr-home-hero {
    padding: 58px 0 52px;
  }
  .sr-home-hero-subheading,
  .sr-page-hero p {
    font-size: 16px;
  }
}
