/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* RESPONSIVE BREAKS
@media (min-width: 460px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1024px) {
}
@media (min-width: 1200px) {
}
@media (min-width: 1480px) {
}
*/
/* PANEL RATIO */
.aspect-ratio-1-1-all {
aspect-ratio: 1 / 1;
display: grid;
}
.aspect-ratio-3-2-all {
aspect-ratio: 3 / 2;
}
.aspect-ratio-4-3-all {
aspect-ratio: 4 / 3;
}
.aspect-ratio-3-4-all {
aspect-ratio: 3 / 4;
}
.aspect-ratio-16-9-all {
aspect-ratio: 16 / 9;
}
@media (min-width: 768px) {
.aspect-ratio-1-1 {
aspect-ratio: 1 / 1;
}
.aspect-ratio-3-2 {
aspect-ratio: 3 / 2;
}
.aspect-ratio-4-3 {
aspect-ratio: 4 / 3;
}
.aspect-ratio-3-4 {
aspect-ratio: 3 / 4;
}
.aspect-ratio-16-9 {
aspect-ratio: 16 / 9;
}
}
/* TYPOGRAPHY STYLES - !!!IMPORTANT!!! CHANGE  ELEMENTOR KIT NUMBER */
.elementor-kit-18 .as-xlh1 h1, .elementor-kit-18 .as-xlh1 h2, .elementor-kit-18 .as-xlh1 h3, .elementor-kit-18 .as-xlh1 h4, .elementor-kit-18 .as-xlh1 h5, .elementor-kit-18 .as-xlh1 h6 {
font-size: 32px
}
.elementor-kit-18 .as-h1 h2, .elementor-kit-18 .as-h1 h3, .elementor-kit-18 .as-h1 h4, .elementor-kit-18 .as-h1 h5, .elementor-kit-18 .as-h1 h6 {
font-size: 26px
}
.elementor-kit-18 .as-h2 h1, .elementor-kit-18 .as-h2 h3, .elementor-kit-18 .as-h2 h4, .elementor-kit-18 .as-h2 h5, .elementor-kit-18 .as-h2 h6 {
font-size: 24px
}
.elementor-kit-18 .as-h3 h1, .elementor-kit-18 .as-h3 h2, .elementor-kit-18 .as-h3 h4, .elementor-kit-18 .as-h3 h5, .elementor-kit-18 .as-h3 h6 {
font-size: 20px
}
.elementor-kit-18 .as-h4 h1, .elementor-kit-18 .as-h4 h2, .elementor-kit-18 .as-h4 h3, .elementor-kit-18 .as-h4 h5, .elementor-kit-18 .as-h4 h6 {
font-size: 18px
}
.elementor-kit-18 .as-h5 h1, .elementor-kit-18 .as-h5 h2, .elementor-kit-18 .as-h5 h3, .elementor-kit-18 .as-h5 h4, .elementor-kit-18 .as-h5 h6 {
font-size: 16px
}
.elementor-kit-18 .as-h6 h1, .elementor-kit-18 .as-h6 h2, .elementor-kit-18 .as-h6 h3, .elementor-kit-18 .as-h6 h4, .elementor-kit-18 .as-h6 h5 {
font-size: 14px
}
@media (min-width: 768px) {
.elementor-kit-18 .as-xlh1 h1, .elementor-kit-18 .as-xlh1 h2, .elementor-kit-18 .as-xlh1 h3, .elementor-kit-18 .as-xlh1 h4, .elementor-kit-18 .as-xlh1 h5, .elementor-kit-18 .as-xlh1 h6 {
font-size: 44px
}
.elementor-kit-18 .as-h1 h2, .elementor-kit-18 .as-h1 h3, .elementor-kit-18 .as-h1 h4, .elementor-kit-18 .as-h1 h5, .elementor-kit-18 .as-h1 h6 {
font-size: 32px
}
.elementor-kit-18 .as-h2 h1, .elementor-kit-18 .as-h2 h3, .elementor-kit-18 .as-h2 h4, .elementor-kit-18 .as-h2 h5, .elementor-kit-18 .as-h2 h6 {
font-size: 28px
}
.elementor-kit-18 .as-h3 h1, .elementor-kit-18 .as-h3 h2, .elementor-kit-18 .as-h3 h4, .elementor-kit-18 .as-h3 h5, .elementor-kit-18 .as-h3 h6 {
font-size: 24px
}
.elementor-kit-18 .as-h4 h1, .elementor-kit-18 .as-h4 h2, .elementor-kit-18 .as-h4 h3, .elementor-kit-18 .as-h4 h5, .elementor-kit-18 .as-h4 h6 {
font-size: 20px
}
.elementor-kit-18 .as-h5 h1, .elementor-kit-18 .as-h5 h2, .elementor-kit-18 .as-h5 h3, .elementor-kit-18 .as-h5 h4, .elementor-kit-18 .as-h5 h6 {
font-size: 16px
}
.elementor-kit-18 .as-h6 h1, .elementor-kit-18 .as-h6 h2, .elementor-kit-18 .as-h6 h3, .elementor-kit-18 .as-h6 h4, .elementor-kit-18 .as-h6 h5 {
font-size: 15px
}
}
@media (min-width: 1024px) {
.elementor-kit-18 .as-xlh1 h1, .elementor-kit-18 .as-xlh1 h2, .elementor-kit-18 .as-xlh1 h3, .elementor-kit-18 .as-xlh1 h4, .elementor-kit-18 .as-xlh1 h5, .elementor-kit-18 .as-xlh1 h6 {
font-size: 52px
}
.elementor-kit-18 .as-h1 h2, .elementor-kit-18 .as-h1 h3, .elementor-kit-18 .as-h1 h4, .elementor-kit-18 .as-h1 h5, .elementor-kit-18 .as-h1 h6 {
font-size: 40px
}
.elementor-kit-18 .as-h2 h1, .elementor-kit-18 .as-h2 h3, .elementor-kit-18 .as-h2 h4, .elementor-kit-18 .as-h2 h5, .elementor-kit-18 .as-h2 h6 {
font-size: 32px
}
.elementor-kit-18 .as-h3 h1, .elementor-kit-18 .as-h3 h2, .elementor-kit-18 .as-h3 h4, .elementor-kit-18 .as-h3 h5, .elementor-kit-18 .as-h3 h6 {
font-size: 28px
}
.elementor-kit-18 .as-h4 h1, .elementor-kit-18 .as-h4 h2, .elementor-kit-18 .as-h4 h3, .elementor-kit-18 .as-h4 h5, .elementor-kit-18 .as-h4 h6 {
font-size: 24px
}
.elementor-kit-18 .as-h5 h1, .elementor-kit-18 .as-h5 h2, .elementor-kit-18 .as-h5 h3, .elementor-kit-18 .as-h5 h4, .elementor-kit-18 .as-h5 h6 {
font-size: 20px
}
.elementor-kit-18 .as-h6 h1, .elementor-kit-18 .as-h6 h2, .elementor-kit-18 .as-h6 h3, .elementor-kit-18 .as-h6 h4, .elementor-kit-18 .as-h6 h5 {
font-size: 16px
}
}
@media (min-width: 1480px) {
.elementor-kit-18 .as-xlh1 h1, .elementor-kit-18 .as-xlh1 h2, .elementor-kit-18 .as-xlh1 h3, .elementor-kit-18 .as-xlh1 h4, .elementor-kit-18 .as-xlh1 h5, .elementor-kit-18 .as-xlh1 h6 {
font-size: 62px
}
}
/STICKY HEADER - ADD CLASSES TO ELEMENTS - EXAMPLE AVOIR INTERIORS & AVOIR INTERIOR DESIGN FOR NO TOP BAR (MINUS MARGIN HEADER)/
/* Wrapper element height /
.sticky-header-wrapper {
background-color: rgba(255,255,255,0);
transition: background-color 0.25s linear, height 0.25s linear;
height: 79px;
}
.sticky-header-wrapper.elementor-sticky--active {
/ transition the background-color over 1s with a linear animation /
height: 50px;
background-color: rgba(255,255,255,1)
}
/ Shrink logo */
.elementor-sticky--active .header-logo img {
width: 60px !important;
margin-top: 46px;
}
/*MAIN MENU */
#main-menu-full .sub-menu {
min-width: 100% !important;
}
/* NAVIGATION DROPDOWN ARROW */
body .elementor-nav-menu .sub-arrow {
padding-left: 5px;
}
/* MOBILE SLIDER MENU. EXAMPLE: STAFFORD JOINERY*/
/* edit the hamburger and close icon colours here /
.lytbox-button {
--hamburger-color: #000;
--close-x-color: #000;
display: block;
height: 18px;
cursor: pointer;
position: relative;
z-index: 101;
}
/ change number to elementor template ID number to make the menu full width /
.elementor-49 {
width: 100%;
}
/ end editing /
.lytbox-navigation {
position: fixed;
top: 0;
left: 0;
transform: translateX(100%);
overflow: hidden;
transition: transform 0.2s;
width: 100%;
height: 100vh;
z-index: 100;
}
.lytbox-navigation {
display: flex;
justify-content: center;
align-items: center;
}
/ toggle hamburger*/
.lytbox-button .hamburguer {
position: relative;
}
.lytbox-button .hamburguer span{
display: block;
height: 2px;
width: 24px;
background: var(--hamburger-color);
transform-origin: 50% 50%;
transition: all 0.1s 0.2s ease, transform 0.2s ease;
}
.lytbox-button .hamburguer span:nth-child(2) {
transform: translate(0, 6px);
}
.lytbox-button .hamburguer span:nth-child(3) {
transform: translate(0, 12px);		
}
.lytbox-nav_control {
position: absolute;
left: -9999px;
width: 100%;
clip: rect(0, 0, 0, 0);
}
.lytbox-nav_control:checked~.lytbox-navigation {
transform: translateX(0);
opacity: 1;
transition: transform 0.3s, opacity 0.3s;
}
.lytbox-nav_control:checked~.lytbox-button .hamburguer {
transition: all 0.1s 0s ease;
}
/* closed X */
.lytbox-nav_control:checked~.lytbox-button .hamburguer span {
background: var(--close-x-color);
transition: all 0.1s ease, transform 0.1s 0.2s ease;
}
.lytbox-nav_control:checked~.lytbox-button .hamburguer span:first-child {
opacity: 0;
}
.lytbox-nav_control:checked~.lytbox-button  .hamburguer span:nth-child(2) {
transform: translate(0, 6px) rotate(45deg);
}
.lytbox-nav_control:checked~.lytbox-button .hamburguer span:nth-child(3) {
transform: translate(0, 4px) rotate(-45deg);
}
/* GENERAL STYLES*/
main ul, .ap-news-single-container ul {
padding-inline-start: 18px;
margin-bottom: 0.9rem;
}
main ol, .ap-news-single-container ol {
padding-inline-start: 24px;	
margin-bottom: 0.9rem;
}
.centre-list-mobile ul {
padding-inline-start: 0;
list-style-position: inside;
}
@media (min-width: 768px) {
.centre-list-mobile ul {
padding-inline-start: 18px;
list-style-position: outside;
}
}
.full-height-header {
min-height: calc(100vh - 200px);
min-height: calc(100svh - 200px)	
}
.full-height {
min-height: calc(100vh);
min-height: calc(100svh)	
}
@media (min-width: 768px) {
}
@media (min-width: 1024px) {
  .full-height-large-screen {
    min-height: calc(100vh);
    min-height: calc(100svh);
  }
}
@media (min-width: 1200px) {
}

body table tbody>tr:nth-child(odd)>td, body table tbody>tr:nth-child(odd)>th {
background-color: transparent;
}
body table tbody tr:hover>td, body table tbody tr:hover>th {
background-color: transparent;
}
/* CookieYes Privacy Policy Numbered lists like 1, 1.1, 2.2.1... /
.privacy-policy-ol ol {
padding-inline-start: 34px;
}
.privacy-policy-ol li {
display:block;
}
/ hide original list counter /
.privacy-policy-ol > li:first-child {
counter-reset: item;
}
/ reset counter /
.privacy-policy-ol > li {
counter-increment: item; position: relative;
}
/ increment counter /
.privacy-policy-ol > li:before {
content:counters(item, ".") ". "; position: absolute; margin-right: 100%; right: 10px;
} / print counter */
/* HIDE/SHOW ELEMENTS */
.hide-span-mobile {
display: none;
}
.hide-span-tablet {
display: none;
}
@media (min-width: 768px) {
.hide-span-mobile {
display: inline;
}
}
@media (min-width: 1024px) {
.hide-span-tablet {
display: inline;
}
}
/* ADDRESS */
.br-hide-mobile {
display: none;
}
.br-show-mobile {
display: block;
}
@media (min-width: 768px) {
.br-hide-mobile {
display: block;
}
.br-show-mobile {
display: none;
}		
}
/* CENTRE FORM */
.form-centred-content .elementor-field-type-acceptance {
justify-content: center;
}
.form-centred-content .elementor-field-type-html {
text-align: center
}
.form-centred-content .e-form__buttons {
margin: 0 auto;
}
/* SAME HEIGHT LOOP ITEM */
.same-height-container .e-loop-item {
display: flex;
}
.same-height-container .e-loop-item .same-height-loop {
flex: 1;
}
/* ELEMENTOR SCROLL BAR */
body:not(.elementor-editor-active) .overflow-scroll {
max-height: 136px;
overflow-x: hidden;
overflow-y: scroll;
}
.overflow-scroll::-webkit-scrollbar {
width: 4px;
border-radius: 1px;
}
.overflow-scroll::-webkit-scrollbar-track{
background: rgba(144, 144, 144, 0.4);
border-radius: 1px;
}
.overflow-scroll::-webkit-scrollbar-thumb {
background: rgba(144, 144, 144, 0.8);
border-radius: 1px;
}
/* WORDPRESS BLOGS */
body .blog-single-wrapper h2 {
font-size: 22px !important;
}
body .blog-single-wrapper h3 {
font-size: 19px;
}
body .blog-single-wrapper h4 {
font-size: 18px;
}
body .blog-single-wrapper h5 {
font-size: 17px;
}
body .blog-single-wrapper h6 {
font-size: 16px;
}
body .blog-single-wrapper ul {
margin-block-end: 1rem;
}
/* WORDPRESS GALLERY */
.gallery figure {
margin-block-start: 0;
margin-block-end: 0;
margin-inline-start: 0;
margin-inline-end: 0;
display: inline-block;
padding: 0 10px 10px 0;
width: 50%;
}
@media (min-width: 768px) {
.gallery.gallery-columns-1 figure {
width: 100%;
}
.gallery.gallery-columns-2 figure {
width: 50%;
}
.gallery.gallery-columns-3 figure {
width: 33.333333%;
}
.gallery.gallery-columns-4 figure {
width: 25%;
}
.gallery.gallery-columns-5 figure {
width: 20%;
}
.gallery.gallery-columns-6 figure {
width: 16.666666%;
}
.gallery.gallery-columns-7 figure {
width: 14.285714%;
}
.gallery.gallery-columns-8 figure {
width: 12.5%;
}
.gallery.gallery-columns-9 figure {
width: 11.111111%;
}
}
/* ELEMENTOR SCROLL BAR */
body:not(.elementor-editor-active) .overflow-scroll {
max-height: 136px;
overflow-x: hidden;
overflow-y: scroll;
}
.overflow-scroll::-webkit-scrollbar {
width: 4px;
border-radius: 1px;
}
.overflow-scroll::-webkit-scrollbar-track{
background: rgba(144, 144, 144, 0.4);
border-radius: 1px;
}
.overflow-scroll::-webkit-scrollbar-thumb {
background: rgba(144, 144, 144, 0.8);
border-radius: 1px;
}
/* POPUP BLUE LINK BORDER  & INITIAL LINK COLOUR*/
/* CHANGE ID */
#menu-1-6d90ded :focus,
#menu-1-20b23b6 :focus {
color: #fff;
outline: 0 !important;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#menu-1-6d90ded :hover:focus,
#menu-1-20b23b6 :hover:focus {
color: #8CC640;
}
.gallery figcaption {
display: none;
}
/* reCAPTACHA */
.grecaptcha-badge {
visibility: hidden;
}
/* HEADER */
.transparent-header.elementor-sticky--active {
	background-color: rgba(0, 0, 0, 0.8) !important;
}
.transparent-header-news.elementor-sticky--active {
	background-color: rgba(171, 184, 194, 0.94) !important;
}

/* ASPECT RATIO MOBILE DISPLAY FIX */
@media (max-width: 767px) {
    .aspect-ratio-fix-wrapper.e-con.e-flex {
		flex-wrap: nowrap;
    }
}

/* ELEMENTOR PRICE LIST SEPARATOR */
.elementor-price-list-separator {
  margin-top: 10px;
}

/* 10px PADDING LEFT & RIGHT */
.padding-lr > .e-con-inner {
  padding-left: 10px;
  padding-right: 10px;
}

/* PRICE TABLE */
.price-table .stratum-table__table tbody td {
  border-bottom: 1px solid #ABB8C3;
}

/* DUMMY BUTTON */
.dummy-button {
  font-size: 12px;
  text-transform: uppercase;
  border: 2px solid #fff;
  border-radius: 100px;
  padding: 10px 20px;
  color: #fff;
}
@media (min-width: 768px) {
.dummy-button {
    font-size: 13px;
    padding: 12px 24px;
  }
}
@media (min-width: 1024px) {
  .dummy-button {
    font-size: 14px;
    padding: 12px 24px;
  }
}

/* ========= Hover-card: heading colour change when the whole box (link wrapper) is hovered ========= /
/ 1) Add class "hover-card" to the container/column/section in Elementor (Advanced → CSS Classes) /
elementor-element.hover-card .elementor-heading-title,
.elementor-element.hover-card h1,
.elementor-element.hover-card h2,
.elementor-element.hover-card h3 {
transition: color .2s ease;
}
/ Hover with mouse, keyboard focus, and touch "active" /
.elementor-element.hover-card:hover .elementor-heading-title,
.elementor-element.hover-card:focus-within .elementor-heading-title,
.elementor-element.hover-card:active .elementor-heading-title,
.elementor-element.hover-card:hover h1,
.elementor-element.hover-card:hover h2,
.elementor-element.hover-card:hover h3,
.elementor-element.hover-card:focus-within h1,
.elementor-element.hover-card:focus-within h2,
.elementor-element.hover-card:focus-within h3,
.elementor-element.hover-card:active h1,
.elementor-element.hover-card:active h2,
.elementor-element.hover-card:active h3 {
color: #ffffff; / ← set your hover colour
} */
/* If your heading text itself is a link, inherit the colour when the box is hovered/focused /
.elementor-element.hover-card .elementor-heading-title a {
color: inherit;            / normal state follows heading colour /
text-decoration: none;     / optional /
}
.elementor-element.hover-card:hover .elementor-heading-title a,
.elementor-element.hover-card:focus-within .elementor-heading-title a,
.elementor-element.hover-card:active .elementor-heading-title a {
color: inherit;            / ensures hover colour applies
} */
/* ========= Optional: if you're greying the box via Background Overlay on hover ========= /
/ Keep the overlay transition smooth and independent of text colour /
.elementor-element.hover-card .elementor-background-overlay {
transition: opacity .2s ease;
}
/ Example grey-on-hover (tweak to taste or remove if you already set this in the editor) /
.elementor-element.hover-card:hover .elementor-background-overlay,
.elementor-element.hover-card:focus-within .elementor-background-overlay {
opacity: .5;
}
/ ========= Notes =========
- Works whether the container itself is an (link wrapper) or it has a full-size overlay inside it. :hover on the parent still triggers when hovering any descendant, including the overlay link.
- Add the "hover-card" class to each box you want this behaviour on.
- Change #ffffff to your brand hover colour.
- If your theme is very specific with colours, keep the .elementor-element.hover-card prefix for stronger specificity. /
  / ========= Hover-card faux button: heading colour change when the whole box (link wrapper) is hovered ========= /
  / 1) Add class "faux-button" to a h4 styled as a fake button with padding and a background colour title in Elementor (Advanced → CSS Classes) /
  .elementor-element.hover-card-button .elementor-heading-title,
  .elementor-element.hover-card-button h4 {
  transition: color .2s ease;
  }
  / Hover with mouse, keyboard focus, and touch "active" /
  .elementor-element.hover-card-button:hover h4,
  .elementor-element.hover-card-button:focus-within h4,
  .elementor-element.hover-card-button:active h4 {
  color: #ffffff; / ← set your hover colour
  } /
  .elementor-element.hover-card-button:hover .faux-button,
  .elementor-element.hover-card-button:focus-within .faux-button,
  .elementor-element.hover-card-button:active .faux-button {
  background-color: #9D9EA3;
  }
  / If your heading text itself is a link, inherit the colour when the box is hovered/focused /
  .elementor-element.hover-card-button .elementor-heading-title a {
  color: inherit;            / normal state follows heading colour /
  text-decoration: none;     / optional /
  background-color: inherit;
  }
  .elementor-element.hover-card-button:hover .elementor-heading-title a,
  .elementor-element.hover-card-button:focus-within .elementor-heading-title a,
  .elementor-element.hover-card-button:active .elementor-heading-title a {
  color: inherit;            / ensures hover colour applies
  background-color: inherit;
  }/
  / ========= Optional: if you're greying the box via Background Overlay on hover ========= /
  / Keep the overlay transition smooth and independent of text colour /
  .elementor-element.hover-card-button .elementor-background-overlay {
  transition: opacity .2s ease;
  }
  / Example grey-on-hover (tweak to taste or remove if you already set this in the editor) */
  .elementor-element.hover-card-button:hover .elementor-background-overlay,
  .elementor-element.hover-card-button:focus-within .elementor-background-overlay {
  opacity: .5;
  }
