/*!
Theme Name: HPL
Theme URI: https://elcadia.com/
Author: Elcadia Design
Author URI: https://elcadia.com/
Description: Description
Version: 1.0.0
Tested up to: 6.3.2
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: elcadia-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap');
 html {
	 line-height: 1.15;
	 -webkit-text-size-adjust: 100%;
 }
 
 /* Sections
	  ========================================================================== */
 
 /**
  * Remove the margin in all browsers.
  */
 body {
	 margin: 0;
 }
 
 /**
  * Render the `main` element consistently in IE.
  */
 main {
	 display: block;
 }
 
 /**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Firefox, and Safari.
  */
 h1 {
	 font-size: 2em;
	 margin: 0.67em 0;
 }
 
 /* Grouping content
	  ========================================================================== */
 
 /**
  * 1. Add the correct box sizing in Firefox.
  * 2. Show the overflow in Edge and IE.
  */
 hr {
	 box-sizing: content-box;
	 height: 0;
	 overflow: visible;
 }
 
 /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
 pre {
	 font-family: monospace, monospace;
	 font-size: 1em;
 }
 
 /* Text-level semantics
	  ========================================================================== */
 
 /**
  * Remove the gray background on active links in IE 10.
  */
 a {
	 background-color: transparent;
 }
 
 /**
  * 1. Remove the bottom border in Chrome 57-
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
  */
 abbr[title] {
	 border-bottom: none;
	 text-decoration: underline;
	 text-decoration: underline dotted;
 }
 
 /**
  * Add the correct font weight in Chrome, Edge, and Safari.
  */
 b,
 strong {
	 font-weight: bolder;
 }
 
 /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
 code,
 kbd,
 samp {
	 font-family: monospace, monospace;
	 font-size: 1em;
 }
 
 /**
  * Add the correct font size in all browsers.
  */
 small {
	 font-size: 80%;
 }
 
 /**
  * Prevent `sub` and `sup` elements from affecting the line height in
  * all browsers.
  */
 sub,
 sup {
	 font-size: 75%;
	 line-height: 0;
	 position: relative;
	 vertical-align: baseline;
 }
 
 sub {
	 bottom: -0.25em;
 }
 
 sup {
	 top: -0.5em;
 }
 
 /* Embedded content
	  ========================================================================== */
 
 /**
  * Remove the border on images inside links in IE 10.
  */
 img {
	 border-style: none;
 }
 
 /* Forms
	  ========================================================================== */
 
 /**
  * 1. Change the font styles in all browsers.
  * 2. Remove the margin in Firefox and Safari.
  */
 button,
 input,
 optgroup,
 select,
 textarea {
	 font-family: inherit;
	 font-size: 100%;
	 line-height: 1.15;
	 margin: 0;
 }
 
 /**
  * Show the overflow in IE.
  * 1. Show the overflow in Edge.
  */
 button,
 input {
	 overflow: visible;
 }
 
 /**
  * Remove the inheritance of text transform in Edge, Firefox, and IE.
  * 1. Remove the inheritance of text transform in Firefox.
  */
 button,
 select {
	 text-transform: none;
 }
 
 /**
  * Correct the inability to style clickable types in iOS and Safari.
  */
 button,
 [type="button"],
 [type="reset"],
 [type="submit"] {
	 -webkit-appearance: button;
 }
 
 /**
  * Remove the inner border and padding in Firefox.
  */
 button::-moz-focus-inner,
 [type="button"]::-moz-focus-inner,
 [type="reset"]::-moz-focus-inner,
 [type="submit"]::-moz-focus-inner {
	 border-style: none;
	 padding: 0;
 }
 
 /**
  * Restore the focus styles unset by the previous rule.
  */
 button:-moz-focusring,
 [type="button"]:-moz-focusring,
 [type="reset"]:-moz-focusring,
 [type="submit"]:-moz-focusring {
	 outline: 1px dotted ButtonText;
 }
 
 /**
  * Correct the padding in Firefox.
  */
 fieldset {
	 padding: 0.35em 0.75em 0.625em;
 }
 
 /**
  * 1. Correct the text wrapping in Edge and IE.
  * 2. Correct the color inheritance from `fieldset` elements in IE.
  * 3. Remove the padding so developers are not caught out when they zero out
  *		`fieldset` elements in all browsers.
  */
 legend {
	 box-sizing: border-box;
	 color: inherit;
	 display: table;
	 max-width: 100%;
	 padding: 0;
	 white-space: normal;
 }
 
 /**
  * Add the correct vertical alignment in Chrome, Firefox, and Opera.
  */
 progress {
	 vertical-align: baseline;
 }
 
 /**
  * Remove the default vertical scrollbar in IE 10+.
  */
 textarea {
	 overflow: auto;
 }
 
 /**
  * 1. Add the correct box sizing in IE 10.
  * 2. Remove the padding in IE 10.
  */
 [type="checkbox"],
 [type="radio"] {
	 box-sizing: border-box;
	 padding: 0;
 }
 
 /**
  * Correct the cursor style of increment and decrement buttons in Chrome.
  */
 [type="number"]::-webkit-inner-spin-button,
 [type="number"]::-webkit-outer-spin-button {
	 height: auto;
 }
 
 /**
  * 1. Correct the odd appearance in Chrome and Safari.
  * 2. Correct the outline style in Safari.
  */
 [type="search"] {
	 -webkit-appearance: textfield;
	 outline-offset: -2px;
 }
 
 /**
  * Remove the inner padding in Chrome and Safari on macOS.
  */
 [type="search"]::-webkit-search-decoration {
	 -webkit-appearance: none;
 }
 
 /**
  * 1. Correct the inability to style clickable types in iOS and Safari.
  * 2. Change font properties to `inherit` in Safari.
  */
 ::-webkit-file-upload-button {
	 -webkit-appearance: button;
	 font: inherit;
 }
 
 /* Interactive
	  ========================================================================== */
 
 /*
  * Add the correct display in Edge, IE 10+, and Firefox.
  */
 details {
	 display: block;
 }
 
 /*
  * Add the correct display in all browsers.
  */
 summary {
	 display: list-item;
 }
 
 /* Misc
	  ========================================================================== */
 
 /**
  * Add the correct display in IE 10+.
  */
 template {
	 display: none;
 }
 
 /**
  * Add the correct display in IE 10.
  */
 [hidden] {
	 display: none;
 }
 
 /* Box sizing
 --------------------------------------------- */
 
 /* Inherit box-sizing to more easily change it's value on a component level.
 @link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
 *,
 *::before,
 *::after {
	 box-sizing: inherit;
 }
 
 html {
	 box-sizing: border-box;
 }
 
 /*--------------------------------------------------------------
 # Base
 --------------------------------------------------------------*/
 
 /* Typography
 --------------------------------------------- */
 body,
 button,
 input,
 select,
 optgroup,
 textarea {
	 color: #002349;
	 font-family: 'Lato', sans-serif;
	 font-size: 16px;
	 line-height: 1.6;
 }
 
 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
	 clear: both; margin: 0;
 }
 * > p:last-child{ margin-bottom: 0;}
 p {
	 margin:0 0 20px;
 }
 
 dfn,
 cite,
 em,
 i {
	 font-style: italic;
 }
 
 blockquote {
	 margin: 0 1.5em;
 }
 
 address {
	 margin: 0 0 1.5em;
 }
 
 pre {
	 background: #eee;
	 font-family: "Courier 10 Pitch", courier, monospace;
	 line-height: 1.6;
	 margin-bottom: 1.6em;
	 max-width: 100%;
	 overflow: auto;
	 padding: 1.6em;
 }
 
 code,
 kbd,
 tt,
 var {
	 font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
 }
 
 abbr,
 acronym {
	 border-bottom: 1px dotted #666;
	 cursor: help;
 }
 
 mark,
 ins {
	 background: #fff9c0;
	 text-decoration: none;
 }
 
 big {
	 font-size: 125%;
 }
 
 /* Elements
 --------------------------------------------- */
 body {
	 background: #fff;
 }
 
 hr {
	 background-color: #ccc;
	 border: 0;
	 height: 1px;
	 margin-bottom: 1.5em;
 }
 
 ul,
 ol {
	 margin: 0 0 1.5em 3em;
 }
 
 ul {
	 list-style: disc;
 }
 
 ol {
	 list-style: decimal;
 }
 
 li > ul,
 li > ol {
	 margin-bottom: 0;
	 margin-left: 1.5em;
 }
 
 dt {
	 font-weight: 700;
 }
 
 dd {
	 margin: 0 1.5em 1.5em;
 }
 
 /* Make sure embeds and iframes fit their containers. */
 embed,
 iframe,
 object {
	 max-width: 100%;
 }
 
 img {
	 height: auto;
	 max-width: 100%;
 }
 
 figure {
	 margin: 1em 0;
 }
 
 table {
	 margin: 0 0 1.5em;
	 width: 100%;
 }
 
 /* Links
 --------------------------------------------- */
 a {
	 color: #000; text-decoration: none;
 }
 
 a:visited {
	 color: #000;
 }
 
 a:hover,
 a:focus,
 a:active {
	 color: #009CDF;
 }
 
 a:focus {
	 outline:none;
 }
 
 a:hover,
 a:active {
	 outline: 0;
 }
 
 /* Forms
 --------------------------------------------- */
 button,
 input[type="button"],
 input[type="reset"],
 input[type="submit"] {
	 border: 1px solid;
	 border-color: #ccc #ccc #bbb;
	 border-radius: 3px;
	 background: #e6e6e6;
	 color: rgba(0, 0, 0, 0.8);
	 line-height: 1;
	 padding: 0.6em 1em 0.4em;
 }
 
 button:hover,
 input[type="button"]:hover,
 input[type="reset"]:hover,
 input[type="submit"]:hover {
	 border-color: #ccc #bbb #aaa;
 }
 
 button:active,
 button:focus,
 input[type="button"]:active,
 input[type="button"]:focus,
 input[type="reset"]:active,
 input[type="reset"]:focus,
 input[type="submit"]:active,
 input[type="submit"]:focus {
	 border-color: #aaa #bbb #bbb;
 }
 
 input[type="text"],
 input[type="email"],
 input[type="url"],
 input[type="password"],
 input[type="search"],
 input[type="number"],
 input[type="tel"],
 input[type="range"],
 input[type="date"],
 input[type="month"],
 input[type="week"],
 input[type="time"],
 input[type="datetime"],
 input[type="datetime-local"],
 input[type="color"],
 textarea {
	 color: #666;
	 border: 1px solid #ccc;
	 border-radius: 3px;
	 padding: 3px;
 }
 
 input[type="text"]:focus,
 input[type="email"]:focus,
 input[type="url"]:focus,
 input[type="password"]:focus,
 input[type="search"]:focus,
 input[type="number"]:focus,
 input[type="tel"]:focus,
 input[type="range"]:focus,
 input[type="date"]:focus,
 input[type="month"]:focus,
 input[type="week"]:focus,
 input[type="time"]:focus,
 input[type="datetime"]:focus,
 input[type="datetime-local"]:focus,
 input[type="color"]:focus,
 textarea:focus {
	 color: #111;
 }
 
 select {
	 border: 1px solid #ccc;
 }
 
 textarea {
	 width: 100%;
 }
 
 /*--------------------------------------------------------------
 # Layouts
 --------------------------------------------------------------*/
 
 /*--------------------------------------------------------------
 # Components
 --------------------------------------------------------------*/
 
 
 
 /* Posts and pages
 --------------------------------------------- */
 .sticky {
	 display: block;
 }
 
 .post,
 .page {
	 margin:0;
 }
 
 .updated:not(.published) {
	 display: none;
 }
 
 .page-content,
 .entry-content,
 .entry-summary {
	 margin:0;
 }
 
 .page-links {
	 clear: both;
	 margin:0;
 }
 
 /* Comments
 --------------------------------------------- */
 .comment-content a {
	 word-wrap: break-word;
 }
 
 .bypostauthor {
	 display: block;
 }
 
 /* Widgets
 --------------------------------------------- */
 .widget {
	 margin: 0 0 1.5em;
 }
 
 .widget select {
	 max-width: 100%;
 }
 
 /* Media
 --------------------------------------------- */
 .page-content .wp-smiley,
 .entry-content .wp-smiley,
 .comment-content .wp-smiley {
	 border: none;
	 margin-bottom: 0;
	 margin-top: 0;
	 padding: 0;
 }
 
 /* Make sure logo link wraps around logo image. */
 .custom-logo-link {
	 display: inline-block;
 }
 
 /* Captions
 --------------------------------------------- */
 .wp-caption {
	 margin-bottom: 1.5em;
	 max-width: 100%;
 }
 
 .wp-caption img[class*="wp-image-"] {
	 display: block;
	 margin-left: auto;
	 margin-right: auto;
 }
 
 .wp-caption .wp-caption-text {
	 margin: 0.8075em 0;
 }
 
 .wp-caption-text {
	 text-align: center;
 }
 
 /* Galleries
 --------------------------------------------- */
 .gallery {
	 margin-bottom: 1.5em;
	 display: grid;
	 grid-gap: 1.5em;
 }
 
 .gallery-item {
	 display: inline-block;
	 text-align: center;
	 width: 100%;
 }
 
 .gallery-columns-2 {
	 grid-template-columns: repeat(2, 1fr);
 }
 
 .gallery-columns-3 {
	 grid-template-columns: repeat(3, 1fr);
 }
 
 .gallery-columns-4 {
	 grid-template-columns: repeat(4, 1fr);
 }
 
 .gallery-columns-5 {
	 grid-template-columns: repeat(5, 1fr);
 }
 
 .gallery-columns-6 {
	 grid-template-columns: repeat(6, 1fr);
 }
 
 .gallery-columns-7 {
	 grid-template-columns: repeat(7, 1fr);
 }
 
 .gallery-columns-8 {
	 grid-template-columns: repeat(8, 1fr);
 }
 
 .gallery-columns-9 {
	 grid-template-columns: repeat(9, 1fr);
 }
 
 .gallery-caption {
	 display: block;
 }
 
 /*--------------------------------------------------------------
 # Plugins
 --------------------------------------------------------------*/
 
 /* Jetpack infinite scroll
 --------------------------------------------- */
 
 /* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
 .infinite-scroll .posts-navigation,
 .infinite-scroll.neverending .site-footer {
	 display: none;
 }
 
 /* Re-display the Theme Footer when Infinite Scroll has reached its end. */
 .infinity-end.neverending .site-footer {
	 display: block;
 }
 
 /*--------------------------------------------------------------
 # Utilities
 --------------------------------------------------------------*/
 
 /* Accessibility
 --------------------------------------------- */
 
 /* Text meant only for screen readers. */
 .screen-reader-text {
	 border: 0;
	 clip: rect(1px, 1px, 1px, 1px);
	 clip-path: inset(50%);
	 height: 1px;
	 margin: -1px;
	 overflow: hidden;
	 padding: 0;
	 position: absolute !important;
	 width: 1px;
	 word-wrap: normal !important;
 }
 
 .screen-reader-text:focus {
	 background-color: #f1f1f1;
	 border-radius: 3px;
	 box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	 clip: auto !important;
	 clip-path: none;
	 color: #21759b;
	 display: block;
	 font-size: 0.875rem;
	 font-weight: 700;
	 height: auto;
	 left: 5px;
	 line-height: normal;
	 padding: 15px 23px 14px;
	 text-decoration: none;
	 top: 5px;
	 width: auto;
	 z-index: 100000;
 }
 
 /* Do not show the outline on the skip link target. */
 #primary[tabindex="-1"]:focus {
	 outline: 0;
 }
 
 /* Alignments
 --------------------------------------------- */
 .alignleft {
 
	 /*rtl:ignore*/
	 float: left;
 
	 /*rtl:ignore*/
	 margin-right: 1.5em;
	 margin-bottom: 1.5em;
 }
 
 .alignright {
 
	 /*rtl:ignore*/
	 float: right;
 
	 /*rtl:ignore*/
	 margin-left: 1.5em;
	 margin-bottom: 1.5em;
 }
 
 .aligncenter {
	 clear: both;
	 display: block;
	 margin-left: auto;
	 margin-right: auto;
	 margin-bottom: 1.5em;
 }
 
 .elementor .she-header-yes{width: 100% !important;}
 .elementor .she-header{ min-height: 80px !important; }

 .arrow_pos.elementor-element img{ display: block;}
.arrow_pos.elementor-element .swiper .elementor-swiper-button{ top: auto; bottom: 0; left: auto; right: 0; background-color: #002349; width: 48px; height: 49px; color: #fff; transform: none; display: flex; align-items: center; justify-content: center;}
.arrow_pos.elementor-element .swiper .elementor-swiper-button-prev{ right: 48px;}
.arrow_pos.elementor-element .swiper .elementor-swiper-button:hover{ background-color: #1AA1BA;}

.line-width{ max-width: 150% !important; width: 150% !important;}


.slider-for img{ width: 100%;}
.tg_nav{ display: flex; justify-content: space-between;}
.tg_nav > div{ width: 40px; height:40px; display: flex; justify-content: center; align-items: center; border-radius: 50%; border:rgba(13, 75, 101, 0.2) solid 1px; cursor: pointer;}
.tg_nav > div:hover{ background-color: #0D4B65;}
.tg_nav > div:hover svg path{ fill: #fff;}

.slider-nav img{ cursor: pointer;}


.contact_form .form_wrap{ position: relative; display: block;}
.wpcf7 form .wpcf7-response-output, .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output 
{ margin: 15px 0 0; color: #fff; font-size: 14px; font-weight: 400; padding: 10px 12px;}
.form-row { display: grid; grid-template-columns: repeat(2, 1fr); gap:34px 76px; }
.form-row label{ display: block; font-size: 16px; font-weight: 700; color: #fff; line-height:20px;}
input.cust_field, .cust_field_textarea{ border: 0; border-radius: 0; border-bottom: 1px solid #fff; height: 33px; padding:0; color: #fff; font-size: 18px; font-weight: 400; width: 100%; background-color: transparent;}
.cust_field_textarea:focus-visible,
input.cust_field:focus{ color: #fff;}
.cust_field_textarea:focus-visible,
input.cust_field:focus-visible{ outline: 0;}

textarea.cust_field_textarea{ height:127px; border:1px solid #fff; padding: 10px; margin-top: 12px;}

.form_submit input[type="submit"]{ padding: 16px 42px; font-size: 16px; font-weight: 400; color: #fff; border: #fff solid 1px; border-radius: 0; background-color: transparent; text-transform: uppercase; line-height: normal; cursor: pointer;}
.form_submit input[type="submit"]:hover{ background-color: #1AA1BA; color: #002349; border-color:#1AA1BA;} 

.slider_wrap{ flex-direction:column;}
.img_section{ background-position: center; background-repeat: no-repeat; background-size: cover;}
.content_wrap{ padding: 92px 0 70px 50px; display:  flex; flex-direction: column; justify-content: space-between; height: 100%;}
.content_section { padding-right:20px;}
.content_section h4{ margin-bottom:18px; line-height: normal;}
.description{ font-size: 16px; font-weight: 400; color: rgba(0, 19, 30, 0.8); font-family: 'Inter', sans-serif; padding: 30px 0;}

.heading_line{ height: 1px; background-color: #B28E3B; position: relative; margin: 26px 0;}
.heading_line:after{ content:""; position: absolute; top:0; left: 0; width: 100%; height: 1px; transform: translateX(100%); background-color: #B28E3B;}

.content_wrap .tg_nav{ display: inline-flex; max-width: 170px; align-items: center;}
.content_wrap .tg_nav > div {width: 50px;height: 50px;border:#002349 solid 1px;}
.content_wrap .tg_nav > div > svg {width: 16px;height: 15px;}

.pagingInfo{font-family: 'Inter', sans-serif; color: #002349; font-size: 20px; font-weight: 300;}

.faq-icons .elementor-toggle-icon svg{ width: 24px !important; height: 24px !important;}

.custom_tab.elementor-widget-n-tabs .e-n-tabs-heading{flex-basis: 200px; background: #fff; padding:20px;}
.custom_tab.elementor-widget-n-tabs .e-n-tab-title{ justify-content: center;}
.custom_tab.elementor-widget-n-tabs .e-n-tabs{align-items: flex-start;}

.img_gallery_wrap .slick-slider .slick-track{ margin-right: 0;}


@media screen and (min-width:1240px){
	.custom_tab.elementor-widget-n-tabs .e-n-tabs-heading{flex-basis: 288px; padding:38px 46px;}
}

@media screen and (min-width:768px){
	.gallery_wrap{ display: flex; flex-direction: row-reverse; align-items: end;}
	.g_right{ width: calc(100% - 128px);}
	.g_left{ width: 128px; padding-right: 40px;}
	.form_submit{ display: inline-block; position: absolute; left: 0;bottom: 3px;}

	.slider_wrap{ display: flex; flex-direction: row;}
	.slider_wrap > div{ width: 50%;} 

	.content_section {max-width: 550px;}
}


@media screen and (max-width:1024px){
	.content_section h4 {margin-bottom: 12px;}
	.content_wrap {	padding:70px 0 70px 20px;}
	.heading_line{ margin: 15px 0;}
	.description{ padding: 15px 0;}
	.pagingInfo{ font-size: 18px;}
}

@media screen and (max-width:767px){
	.tg_nav{ max-width: 88px; margin:15px auto 0;}
	.form-row {grid-template-columns: repeat(1, 1fr); gap:25px 0; margin-bottom: 15px;}

	.content_wrap {	padding:50px 0 70px 20px;}
	.content_section {padding-right: 20px;}
	.content_wrap .tg_nav{ margin:20px 0 0;}
}