/*
 Theme Name:   Art Division Child theme
 Theme URI:    https://artdivision.co.uk
 Description:  A child theme for the Art Division Parent Theme
 Author:       Art Division
 Author URI:   https://artdivision.co.uk
 Template:     art-division
 Version:      1.0.0
*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300..800&family=Outfit:wght@100..900&display=swap');

/*Variables*/

:root {
    --site-radius: 99px;
    --btn-fill: #499CEB;
    --btn-fill-alt: #499CEB;
    --lighter-header: #097abe;
    --content-section-1-bg: #f3f7fa;
    --text: #3f3f3f;
}
/*Variabled END*/
/*Global*/
html {
	scroll-behavior: smooth;
}
/*Global END*/
/*Typography*/
h1, h2, h3, h4, h5{
    font-family: 'Open Sans', sans-serif;
}
h1{
    font-weight: bold;
}
h2, .is-h2{
    font-weight:bold;
    font-size: 45px;
    font-weight: 500;
    color: var(--lighter-header);
}
@media(max-width:768px){
  h2, .is-h2 {
    font-size: 35px;
}
}
h3{
    color: var(--primary);
    font-size: 35px;
    font-weight: 500;
}
p {
    font-family: 'Outfit', sans-serif;
}
/*Typography END*/
/*Nav Logo*/
.nav-logo {
  opacity: 0;
  transform: translateX(-80px) scale(0.9);
  filter: blur(6px);
  transition: all 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.nav-logo.animate-in {
  opacity: 1;
  transform: translateX(0) scale(1);
  filter: blur(0);
}

/*Nav Logo End*/
/*Buttons*/

.art-btn.art-btn {
  border-radius: var(--site-radius);
  padding: 15px 10px;
  text-transform: capitalize;
  font-family: 'Outfit', sans-serif;
}

/*Buttons END*/
/*Navigation*/
.nav-logo-image img{
  transition: transform 0.5s ease;
}
.nav-logo-image img:hover{
  transform: scale(1.05);
}
.nav-logo-image--fixed img{
  transition: transform 0.5s ease;
}
.nav-logo-image--fixed img:hover{
  transform: scale(1.05);
}
.nav-buttons .a{
    border-radius: var(--site-radius);
    font-size: 18px;
}
.nav-link{
  font-weight: 500;
  font-size: 18px;
  font-family: 'Outfit', sans-serif;
}
.nav-link:hover{
  font-weight: 500;
  color: var(--btn-fill-alt)!important;
}
.header-two .sub-menu{
  background-color: var(--primary);
}
.top-nav-scrolled .header-two .sub-menu{
  background-color: white;
}
body:not(.art-transparent-header) .header-two .sub-menu{
  background-color: white;
}
body:not(.art-transparent-header) .header-two .sub-menu a{
  color: var(--primary);
}
#nav-top-menu .menu-item-has-children > a::after {
  content: "▼";
  font-size: 0.6em;
  margin-left: 6px;
  display: inline-block;
  transition: transform 0.2s ease;
}
#nav-top-menu .menu-item-has-children:hover > a::after {
  transform: rotate(180deg);
}
.art-transparent-header i.nav-link {
  font-family: "Font Awesome 6 Pro";
  color: var(--white);
  transform: scaleX(-1);
}
.art-fixed-header i.nav-link {
  font-family: "Font Awesome 6 Pro";
  color: var(--primary);
  transform: scaleX(-1);
}
.art-transparent-header .top-nav-scrolled i.nav-link {
  font-family: "Font Awesome 6 Pro";
  color: var(--primary);
  transform: scaleX(-1);
}
.nav-icons{
  font-family: "Font Awesome 6 Pro";
}
/* Hide above 1200 */
.nav-icons .hamburger-search-nav-icon {
    display: none;
}


/* Highlight ONLY the active menu item (not its children) */
.current-menu-item > .nav-link {
    color: var(--highlight);
}

/* Keep children inactive when viewing a parent page */
.current-menu-item .sub-menu .nav-link {
    color: var(--white); /* normal inactive colour for transparent nav */
}

.top-nav-scrolled .current-menu-item > .nav-link {
    color: var(--highlight); /* active stays highlighted */
}

/* Children of active parent — use RED instead of white */
.top-nav-scrolled .current-menu-item .sub-menu .nav-link {
    color: var(--primary); /* or var(--primary), or any visible colour */
}

/* Normal scrolled nav link colour */
.top-nav-scrolled .nav-link {
    color: var(--primary);
}

/* Show 1200 and under */
@media (max-width: 1200px) {
    .nav-icons .hamburger-search-nav-icon {
        display: inline-block;
        font-size: 40px;
    }
    .nav-hamburger-menu .nav-link{
      text-transform: uppercase;
    }
    .hamburger-search-content-nav a.nav-link{
        font-size: 25px;
    }
  }


/*Navigation END*/
/*Home Page Hero*/
.art-homepage-hero-img img{
  border-radius: 0px 0px 200px 0px;
  background-color: var(--content-section-1-bg);
}
.art-homepage-hero .art-homepage-hero-img:after {
  border-radius: 0px 0px 200px 0px;
  background: rgba(0, 0, 0, 0.35)!important;
}
.art-homepage-hero .art-container {
    row-gap: 0px;
}
.art-homepage-hero-img + .art-container.fade-left-stagger.art-txt-c.art-txt-d-l {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.art-homepage-hero-img + .art-container.fade-left-stagger.art-txt-c.art-txt-d-l p {
  order: -1;
  margin: 0;
}
.art-homepage-hero-img + .art-container.fade-left-stagger.art-txt-c.art-txt-d-l h1 {
  margin-bottom: 25px;
}
.art-homepage-hero .art-btn.art-btn:first-of-type {
  background-color: transparent;
  border: 2px solid white;
}
.art-homepage-hero .art-btn.art-btn:first-of-type:hover,
.art-homepage-hero .art-btn.art-btn:first-of-type:focus-visible {
  background-image: linear-gradient(90deg, #dfdfdf, #ffffff) !important;
  background-size: 100% 100%;
  color: #222 !important;
}
.art-homepage-hero .art-btn.art-btn:first-of-type:active {
  background-image: linear-gradient(90deg, #dfdfdf, #ffffff) !important;
  background-size: 100% 100%;
  color: #222 !important;
}
/*Home Page Hero END*/
/*Inner Page*/
.hero-module-image img{
  border-radius: 0px 0px 200px 0px;
}
.hero-module-image::after{
  border-radius: 0px 0px 200px 0px;
  background:rgba(0, 0, 0, 0.35)!important;
}
.hero-module .art-btn.art-btn:first-of-type {
  background-color: transparent;
  border: 2px solid white;
}
.hero-module .art-btn.art-btn:first-of-type:hover,
.hero-module .art-btn.art-btn:first-of-type:focus-visible {
  background-image: linear-gradient(90deg, #dfdfdf, #ffffff) !important;
  background-size: 100% 100%;
  color: #222 !important;
}
.hero-module .art-btn.art-btn:first-of-type:active {
  background-image: linear-gradient(90deg, #dfdfdf, #ffffff) !important;
  background-size: 100% 100%;
  color: #222 !important;
}
.art-module-multi .art-module-multi-header h3 {
    margin-bottom: 20px;
}
/*Inner Page END*/
/*Intro Paragraph*/
.art-module-multi {
  gap: 0px;
}
.art-module-multi h2{
  font-size: 25px;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--text);
  margin-bottom: 20px;
}
.intro-para.art-module-multi h2{
  font-size: 25px;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--text);
  margin-bottom: 0px;
}
.art-module-multi .art-module-multi-header h3 {
    color: var(--lighter-header);
}
.art-module-multi h3{
  color: var(--lighter-header);
  font-size:50px;
  font-weight: 500;
}
@media(max-width:768px){
  .art-module-multi h3{
  color: var(--lighter-header);
  font-size:35px;
  font-weight: 500;
}
}
.art-module-multi .art-module-multi-content-container{
  margin-top:0px;
}
.intro-para.art-module-multi .art-module-multi-content-txt h3{ /*Home Page Only*/
  color: var(--lighter-header);
  font-size: 50px;
  font-weight: 500;
  margin-top: 0px;
}
@media(max-width:768px){
  .intro-para.art-module-multi .art-module-multi-content-txt h3 {
    font-size: 35px;
}
}
.art-module-multi .art-module-multi-content-txt h3{
  color: var(--lighter-header);
  font-size: 20px;
  font-weight: 500;
  margin-bottom:20px;
}
.intro-para .art-module-multi-content-container.list-section{
  margin-top:0px;
}
.art-module-multi-content-container.list-section{
  margin-top:40px;
}
/*Intro Paragraph END*/
/*Inner Section Image Text 1*/
.blue-background{
    background-color: var(--content-section-1-bg);
    background-image: url('https://reddinconstruction-co-uk.stackstaging.com/wp-content/uploads/logo-large-bg.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-repeat: none;
}
.blue-background:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(243, 247, 250, 0.97); /* adjust color & opacity */
  z-index: 0;
}
/*Inner Section Image Text 1 END*/
/*Icon Section*/
.art-module-multi-content-icon i {
    font-size: 50px;
    color: var(--text);
}
.art-module-multi div[class*="columns-"] .art-module-multi-content-txt h2 {
    text-align: inherit;
    margin-top: 20px;
    color: var(--lighter-header);
}
/*Icon Section END*/
/*Button Hover Style*/
.art-btn.art-btn {
    position: relative;
    overflow: hidden;
    border-radius: var(--site-radius);
    padding: 15px 10px;
    text-transform: capitalize;
    font-family: 'Outfit', sans-serif;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 0% 100%;
    border:none;
    transition:
      background-size 0.5s ease,
      color 0.3s ease,
      transform 0.5s ease;
    will-change: background-size;

}
.art-btn-group > .art-btn.art-btn:nth-child(even) {
  --btn-fill: var(--btn-fill-alt);
}
.art-btn.art-btn::before,
.art-btn.art-btn::after { 
    content: none !important; 
}
.art-btn.art-btn:hover,
.art-btn.art-btn:focus-visible {
  background-image: linear-gradient(90deg, var(--btn-fill), var(--btn-fill)) !important;
  background-size: 100% 100%;
  color: #fff !important;
  transform: scale(1.05);
}
.art-btn.art-btn:active {
  background-image: linear-gradient(90deg, var(--btn-fill), var(--btn-fill)) !important;
  background-size: 100% 100%;
  color: #fff !important;
}
.art-btn.art-btn:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .art-btn.art-btn {
    transition: color .3s ease, border-color .3s ease;
  }
}
/*Button Hover Style END*/
/*Image Text (IMAGE RIGHT)*/
.content-image-right img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0px 0px 0px 200px;
}
.content-right::before {
  content: "";
  position: absolute;
  top: -20px;
  right: 0;
  width: 50%;
  height: 0;
  border-top: 20px solid var(--text);
}
.content-image-right::after {
  content: "";
  position: absolute;
  bottom: -20px;
  right: 0;
  width: 50%;
  height: 0;
  border-top: 20px solid var(--text);
}

.content-image-left {
  position: relative;
  overflow: visible;
}
.content-image-left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0 0 200px 0;
  position: relative;
  z-index: 1;
}
.content-image-left::after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 50%;
  height: 0;
  border-top: 20px solid var(--text);
  z-index: 0;
}
.content-left::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  width: 50%;
  height: 0;
  border-top: 20px solid var(--text);
  z-index: 0;
}
.content-image-left::after,
.content-left::before {
  pointer-events: none;
}
.content-left::before,
.content-right::before,
.content-image-left::after,
.content-image-right::after {
  pointer-events: none;
}
/*Image Text (IMAGE RIGHT) END*/
/*BG Image Box Text (IMAGE LEFT)*/
.full-width-back-text{
  background-size:contain;
  background-position: left;
  background-repeat: none;
  background-color: var(--text);
  border-radius: 0px 0px 200px 0px;
}
.full-width-back-text .art-module-multi-content-boxed{
  background-color: white;
  border:none;
  border-radius: 0px 0px 200px 0px;
}
@media(max-width:768px){
  .full-width-back-text{
    background-size:cover;
    border-radius: 0px;
}
.full-width-back-text .art-module-multi-content-boxed{
  background-color: white;
  border:none;
  border-radius: 0px 0px 200px 0px;
}
}
/*BG Image Box Text (IMAGE LEFT) END*/

/*Services Module*/
.art-services-item{
  margin-right:30px;
  border-radius: 0px 0px 50px 0px;
}
.art-services-item:last-child{
  margin-right:0px;
}
.art-services-item h3{
  font-family: 'Outfit', sans-serif;
  font-weight: 300;
  font-size: 20px;
}
@media(max-width:768px){
/* When stacked vertically */
.art-services-items.art-services--flex {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Force each item to take full width */
.art-services-item {
    width: 100%;
}

/* Make the image area always 4:3 */
.art-services-wrapper {
    width: 100%;
    aspect-ratio: 4 / 3;
    position: relative;
    overflow: hidden;
}

/* Make images fill the 4:3 container consistently */
.art-services-wrapper img.art-services-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
}


/*Services Module END*/
/*Blog Module*/
.blog-image{
  border-radius: 0px 0px 50px 0px;
}
.blog-content h3{
  font-family: 'Outfit', sans-serif;
}
.blog-content h3 a{
  color: var(--lighter-header);
  font-size:25px;
}
/*Blog Module END*/
/*Testimonial Modules*/
.swiper {
  position: relative;
  padding-bottom: 64px;
}
.swiper-button-next,
.swiper-button-prev {
  top: calc(100% - 56px) !important;
  bottom: auto;
  margin-top: 0;
  transform: none;
  z-index: 10;
}
.art-rep-testimonials.art-txt-c .split-testimonial__column1 > h2.split-testimonial__heading {
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align:left;
}
.swiper-button-prev {
  left: 50%;
  transform: translateX(-56px);
  color:white;
}
.swiper-button-next {
  left: 48%;
  transform: translateX(56px);
  color: white;
}
.swiper-button-prev:hover{
  color: var(--btn-fill-alt);
}
.swiper-button-next:hover{
  color: var(--btn-fill-alt);
}
@media (max-width: 768px) {
  .swiper {
    padding-bottom: 56px;
  }
  .swiper-button-prev { transform: translateX(-48px); }
  .swiper-button-next { transform: translateX(48px); }
}
figure.split-testimonial__figure {
    margin: 0px;
}
.split-testimonial__column1{
  order: 2;
  color: white;
  background-color: var(--text);
  border-radius: 0px 0px 200px 0px;
  padding: 80px;
}
@media(max-width:768px){
  .split-testimonial__column1 {
    padding: 20px;
}
}
.split-testimonial__column2{
  order: 1;
}
.split-testimonial__img {
    object-fit: cover;
    width: 100%;
    height: -webkit-fill-available;
    max-height: 900px;
}
.split-testimonial__text{
  color:white;
  text-align: left;
}
.split-testimonial__rating{
  text-align: left;
}
.split-testimonial__content .art-btn-group{
  display:none;
}
.swiper-backface-hidden .swiper-slide {
    text-align: left;
}
.split-testimonial__name{
  font-family: 'Outfit', sans-serif;
  font-size: 18px!important;
}
.split-testimonial__heading{
  color: white;
}

/*Testimonial Modules END*/
/*FAQ Section*/
.ac-main-text{
  font-size: 18px;
}
.faqs-splittable .ac .ac-trigger:is(:hover, :active) {
  color: var(--lighter-header);
}
.faqs-splittable .ac:has(.ac-panel:not([style*="visibility: hidden"])) 
  .ac-trigger:is(:focus) {
  color: var(--lighter-header);
}

/*FAQ Section END*/
/*Two Box Content*/
.rep-two-boxes .art-btn-group{
  margin:0;
}
.rep-two-boxes h2{
  font-size: 25px;
}
.rep-two-boxes p{
  font-size: 16px;
}
.rep-two-boxes-container{
  border-radius: 0px 0px 80px 0px;
}
.rep-two-boxes-container .content-overlay{
  border-radius: 0px 0px 80px 0px;
}
/*Two Box Content END*/
/*Contact Us Repeatable*/
#contact-container .row.no-margin {
  display:flex;
  background-color: var(--content-section-1-bg);
}
@media(max-width:992px){
  #contact-container .row.no-margin {
  display:flex;
  flex-direction: column;
  background-color: var(--content-section-1-bg);
}
    #contact-container .row.no-margin {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    /* Make both columns fill the container width */
    #contact-container .row.no-margin > .col-md-6 {
        width: 100%;
        flex: 1 1 100%;
    }
}
.row.no-margin { 
  align-items: stretch;
}
.contact-bg,
.contact-us-page {
  display: flex;
}
.contact-us-page .contact-featured {
  flex: 1;
  display: flex;
  align-items: center; 
  justify-content: center;
  padding: 20px;
}
.contact-us-map{
  z-index: 1;
}
.contact-featured img {
  aspect-ratio: 1 / 1;
  width: 80%;
  height: auto;
  max-width: 600px;
  object-fit: cover;
  border-radius: 0px 0px 80px 0px;
}
.opening-hours-logo i {
    font-size: 28px;
    color: var(--primary);
}
.contact-bg{
  background: none;
}
.contact_block h4 {
    color: var(--text);
}
.contact_block p {
    color: var(--text);
}
.contact_block a[href^="tel"], .contact_block a[href^="mailto"] {
    color: var(--text);
    font-size: 16px;
    font-weight:500;
}
.contact_block a[href^="tel"], .contact_block a[href^="mailto"]:hover {
    color: var(--btn-fill-alt);
    font-size: 16px;
    font-weight:500;
}
.contact-logo-wrapper i {
    color: var(--text);
}
.contact-address-container {
  background-color: white;
  padding:10px;
  border-radius:10px;
}
.contact-logo-wrapper{
  background: none;
  border-radius:0px;
  border-right: 1px solid #cfcfcf;
  margin-right: 20px;
}
.opening-hours-container {
  display: flex;
  padding: 10px;
  margin-top: 0px;
  border-radius:10px;
  background-color:white;
  max-width:none;
  margin-bottom:50px;
}
.opening-hours-logo{
  margin-right: 20px;
  min-width: 60px;
  padding: 10px;
  border-right: 1px solid #cfcfcf;
  background: none;
  border-radius:0px;
}
.opening-hours-logo i{
  color: var(--text);
  }
.contact_block .opening-hours-info h4 {
    color: var(--text);
}
.contact_block .art-btn-group > .art-btn.art-btn:nth-child(even) {
    --btn-fill: var(--btn-fill-alt);
    display: none;
}
/*Contact Us Repeatable END*/
/*Contact Us Page*/
#contact-container .col-md-12 {
  display:none;
}
@media(max-width: 992px){
  .page-id-307 .contact-padding {
   min-height: unset; 
  }
}
.contact_block a{
  color: var(--highlight);
}
#contact-container .footer{
  background-color: white!important;
}
.art-btn.office-head-office.art-modal-8{
  display:none;
}
/*Contact Us Page END*/
/*Blog Style*/
.archive .page-inner-default-section{
  padding: 0px;
}
.author-title{
  color: var(--lighter-header);
}
:is(.single-post) .container-blog .single_content :is(h2,h3,h4,h5,h6) {
    margin-top: 0px;
    margin-bottom: 10px;
    text-transform: capitalize;
}

:is(.single-post) .container-blog .single_content :is(h2){
  font-size: 30px;
}
.blog-archive{
  margin-bottom: 60px;
}
/*Blog Style END*/
/*Gravity Form Validation*/
body .gform_wrapper.gravity-theme .gfield_validation_message,
body .gform_wrapper.gravity-theme .validation_message {
    background: none;
    border: none;
    font-size: 14.992px;
    margin-block-start: 8px;
    padding: 0px;
}
.gform_validation_errors{
  margin-bottom: 40px;
}
/*Gravity Form Validation END*/
/*Footer*/
.footer a{
  color:white;
}
.footer ul li a{
  color:white;
}
.footer h3{
  color:white;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.footer-middle h3.widget-title{
  margin-bottom: 20px;
}
.art-block-office{
  color:white;
}
.footer-bottom a{
  color: var(--text);
}
.footer-bottom ul li a{
  color: var(--text);
}
.art-block-social-links-container{
  margin-top: 30px;
}
.art-block-social-link a > span:first-child {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text);
    background-color: white;
    width: 42px;
    height: 42px;
    border: 2px solid transparent;
}
.footer-area-one .wp-block-image{
  margin-top:30px;
  width: 100%;
  transition: transform 0.4s ease;
}
.footer-area-one .wp-block-image:hover{
  transform: scale(1.05);
}
.col-md-3.col-sm-6.footer-widget {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
/* Mobile only */
@media (max-width: 768px) {
    .footer-widget {
        display: flex;
        flex-direction: column;
    }

    /* Target ONLY the logo section */
    .footer-widget .footer-area:nth-of-type(2) {
        order: -1; /* Move logo to the top */
    }
}

/*Footer END*/
/*Error 404 Page*/
.container-404{
  padding:50px;
}

.links-block-404:nth-of-type(1),
.links-block-404:nth-of-type(2) {
    display: none !important;
}

.links-block-404 i{
  color: white!important;
}

.links-block-404{
  background-color:var(--highlight);
  border-color: var(--highlight)!important;
}

.links-block-404:hover{
  border-color: var(--theme-colour)!important;
}

.links-block-404 p{
  color:var(--white)!important;
}
/*Error 404 Page END*/

/* Privacy policy page */
.page-id-19346 h1 {
    padding-top: 40px;
}

/* Single post Quote */
.single-post blockquote p {
    font-size: 17px;
}
/* Single post FAQs */
.schema-faq.wp-block-yoast-faq-block .schema-faq-question {
    font-size: 16px;
}