:root{
  --primary-color: #E8E9E5;
  --button-color: #BC9C70;
  --dark-color: #574038;
  --gold-text: #BC9C70;
  --dark-text: #0d0d0d;
  --white-text: #ffffff;

  --size-12: 12px;
  --size-14: 14px;
  --size-16: 16px;
  --size-18: 18px;
  --size-20: 20px;
  --size-22: 22px;
  --size-24: 24px;
  --size-36: 36px;
  --size-46: 46px;
  --size-58: 58px;
  --size-72: 72px;
  --size-80: 80px;
  --size-100: 100px;

  --notos: 'Noto Serif Display', serif;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Manrope', sans-serif;
}

html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: 'Manrope', sans-serif;
  scroll-behavior: smooth;
}
a {
  text-decoration: none;
  color: inherit;
}
img {
  max-width: 100%;
  height: auto;
}

.maxgridrow{max-width: 1260px;padding:15px 0;margin: 0 auto;}

.prel{position: relative;}

.off-50{margin-top:-50px;}
.pos-40{object-position:40% center;}
.pos-80{object-position:80% center;}

.w-500{font-weight:500}

.thumb-holder{
  line-height: 0;
	padding-bottom: 66%;
	height: 0;
	position: relative;
}
.thumb-holder.stretched {
  padding-bottom: 220%;
}
.thumb-holder img{
  object-fit: cover;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.c2a-btns{display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
.btn{display: block;padding:10px 15px;color:var(--gold-text);border: 2px solid var(--gold-text);width:fit-content;background:transparent;cursor:pointer;font-weight:600}
.btn:hover{color:var(--white-text);background: var(--gold-text)}
.c2a-btns .btn{display:flex;align-items:flex-end;gap:5px;line-height:1;}
.c2a-btns .btn:hover svg path{fill:var(--white-text)}
.c2a-btns .btn:hover svg ellipse{fill:var(--white-text);stroke:var(--white-text)}

.full-banner {
  min-height: 500px;
  background-attachment: fixed;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
}
.full-width {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.section-title{font-size: var(--size-58);color: var(--gold-text);font-weight: 800;}

.notos{
  font-family: var(--notos);
}


/* Columns */
.cols{display:flex;}
.col{flex:none;padding:.75rem;}
.col.col-full{flex:none;width:100%;}
.col.col-half{flex:none;width:50%;}
.col.col-third{width:33.3333%;}
.col.col-two-thirds{width:66.6667%;}
.col.col-quarter{width:25%;}
.col.col-three-quarters{width:75%;}
.col.col-less-than-half{width:40%;}
.col.col-more-than-half{width:60%;}


/* Header */
.main-header{position:absolute;top:0;z-index:10;width:100%;}
.header-wrap{display:flex;align-items:flex-start;justify-content:space-between;}
.header-logo{max-width: 130px;background:var(--dark-color);clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 85%, 0 100%);padding-bottom:20px;margin-left: 150px;}
.header-nav ul{display:flex;align-items:center;list-style:none;gap:50px;font-size:var(--size-18);}
.header-nav ul li:last-of-type{background:var(--button-color);padding:30px 50px}
.header-nav a{color:var(--gold-text);}
.header-nav ul li:last-of-type a{display:flex;align-items:center;color:var(--white-text);}
.header-nav a:hover{border-bottom:3px solid var(--gold-text);}
.header-nav ul li:last-of-type a:hover{border-bottom-color:var(--white-text);}
.header-nav ul li:last-of-type:has(a:hover){padding:28.5px 50px;}
.header-nav a svg{margin-right:10px;}

.sticky-header {
  height: 0;
  overflow: hidden;
  z-index: 8;
  position: relative;
  opacity: 0;
  transition: all 0.2s ease;
  background-color: #fff;
  padding-block: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.sticky-header.scrolled{
  opacity: 1;
  height: auto;
  width: 100%;
  top: 0;
  position: fixed;
  transition: all 0.5s ease;
  border-bottom: 1px solid #ccc;
}
.sticky-header .header-logo{background:white;clip-path: none;padding-bottom:0;line-height: 0;max-width:75px;}

/* Hero */
.hero-section{height:100vh;}
.hero-section .hero-full{height:100%;}
.hero-section .hero-background{position: absolute;top:0;bottom:0;left:0;right:0;}
.hero-section .hero-background img{width:100%;height:100%;object-fit:cover;}
.hero-overlay{position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(0, 0, 0, 0.3);z-index:1;}
.hero-overlay .stamp-holder{position:absolute;bottom:0;right:0;max-width:400px;}
/* .hero-overlay .stamp-holder img{filter:invert(1);} */

/* Lead */
.home-lead-section{background:var(--primary-color);padding:50px 0;}
.horse-lead-section{padding-bottom:60px;}
.twin-images{display:flex;justify-content:center}
.twin-image{width:300px;}
.lead-text {padding-top: 40px;}
.lead-text h1,.lead-text p{padding-bottom: 20px;color: var(--dark-color);}
.lead-text h1{font-size:var(--size-58);line-height:1.2;font-weight:800}
.lead-text p{padding-left:40px;font-size: 18px;font-weight:500}
.lead-text .btn{margin-left: 40px;font-size: 18px}

/* Farmhouse */
.farmhouse-section {background: var(--primary-color);}
.farmhouse-section .full-banner{background-image:url("../imgs/farmhouse.jpg");}
.full-banner h1{font-family:var(--notos);font-size:var(--size-100);color:var(--white-text);font-weight:800;}
.experiences{padding:60px 0;}
.experiences li{list-style: none;display: flex;align-items:center;justify-content: flex-start;gap: 10px;margin-bottom:15px;color:var(--dark-color);}
.services h3{font-size:var(--size-36);color:var(--dark-color);font-weight:800;margin-bottom:20px;}
.services li span{font-weight:500}

.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:10;cursor:pointer;line-height: 0;border-radius: 50%;background: var(--button-color);padding:7px;}
.carousel-btn.prev{left:5px;}
.carousel-btn.next{right:5px;}
.carousel-inner .slick-dots{bottom:0}
.carousel-inner .slick-dots li button::before{color:var(--button-color);font-size:26px;opacity:0.5}
.carousel-inner .slick-dots li.slick-active button::before{color:var(--button-color);opacity:1}

/* Farm */
.farm-section{background:var(--primary-color);}
.farm-section .full-banner{background-image:url("../imgs/farm.jpg");background-position: center bottom;}
.about-farm-text{font-size:var(--size-22);max-width: 800px;margin: 0 auto;padding: 60px 0;text-align:center;}
.about-farm-text p{padding-bottom: 10px;}

.gallery-part{padding-bottom:60px;}
.gallery-title{text-align: center;margin-bottom: 30px;}
.gallery-container{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);grid-template-rows:masonry}
.gallery-container figure{margin:0;display:grid;grid-template-rows:1fr auto}
.gallery-container figure>img{grid-row:1/-1;grid-column:1}
.gallery-container figure a{color:#000;text-decoration:none}
.gallery-container figcaption{grid-row:2;grid-column:1;background-color:rgba(255,255,255,.5);padding:.2em .5em;justify-self:start}

.activities{display:flex;align-items:center;justify-content:center;gap:40px;flex-wrap:wrap;}
.white-part{background:var(--white-text);padding-bottom:60px;padding-top:60px;}
.activities article {
  position: relative;
  border-radius: 16px;
  box-shadow: none;
  background: #fff;
  transform-origin: center;
  transition: all 0.4s ease-in-out;
  overflow: hidden;
}
.activities .activity-wrap{
  max-width:350px;
  min-height: 460px;
  background: var(--primary-color);
}
.activities article h2 {
  margin: 0 0 18px 0;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.06em;
  transition: color 0.3s ease-out;
  color: var(--dark-color);
  min-height:65px;
}
.activities article h2::after {
  content: '';
  display: block;
  width: 50px;
  height: 3px;
  background: var(--gold-text);
  margin-top: 10px;
}
.activities figure {
  margin: 0;
  padding: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}
.activities article img {
  max-width: 100%;
  transform-origin: center;
  transform: scale(1);
  transition: transform 0.4s ease-in-out;
}
.activities article:hover img {
  transform: scale(1.2);
}
.activities .activity-body {
  padding: 24px;
  color: var(--dark-color);
}

/* Contact */
.map-section{padding-top: 30px;padding-bottom: 30px;}
.map-title{text-align:center;margin-bottom:30px;}
.form-group{display:flex;flex-direction:column;margin-bottom:20px;}
.form-group label{font-weight:600;}
.form-group input,.form-group textarea{padding:10px;}
input:focus-visible, textarea:focus-visible{outline:none;}
.map-wrap iframe{width:100%;}

/* Footer */
footer.main-footer{background:var(--dark-color);padding:30px 0;}
.footer-wrap .footer-main{margin-bottom:50px}
.footer-logo{max-width:80px;margin:0 auto}
.middle-col{border-left:1px solid var(--white-text);border-right:1px solid var(--white-text);}
.social-wrap{margin-bottom:20px;}
.social-wrap h2{color:var(--white-text);font-size:26px;font-weight:800;text-align:center;margin-bottom:20px}
.social-wrap ul{display:flex;align-items:center;justify-content:center;gap:20px;list-style:none}
.social-wrap li:not(.instagram-link) svg:hover path{fill:var(--gold-text);}
.social-wrap .instagram-link svg:hover{stroke:var(--gold-text)}
.contact-wrap{display:flex;justify-content:flex-end;}
.contact-wrap h2{color:var(--white-text);font-size:26px;font-weight:800;margin-bottom:20px;}
.contact-wrap li{color:var(--white-text);font-weight:600;margin-top:10px;list-style:none;}
.contact-wrap li a{color:var(--white-text)}
.contact-wrap li a:hover{color:var(--gold-text)}
.footer-text p{color:var(--white-text);text-align: center;font-weight:600}
.footer-text a{color:var(--gold-text);text-decoration:none}


@media screen and (max-width: 1024px){
  .maxgridrow{padding:0 12px}
  .header-logo{margin-left:60px}
  .header-nav ul li:last-of-type{padding:20px 30px}
  .sticky-header .header-logo{max-width:57px}

  .hero-overlay .stamp-holder{max-width:200px}

  .lead-text h1{font-size:40px}
  .lead-text p,.lead-text .btn{font-size:16px}
  .lead-text .btn{padding:8px 12px}

  .full-banner{min-height:380px}
  .full-banner h1{font-size:60px}

  footer .contact-wrap{justify-content:center;text-align:center}
  footer .social-wrap{margin-bottom:0}
}
@media screen and (max-width: 768px){
  .header-logo{margin-left:30px;max-width:100px}
  .header-nav ul{font-size:var(--size-16)}

  .mobile-reverse{display:flex;flex-direction:column-reverse}

  .section-title{font-size:40px;}
}
@media screen and (max-width: 600px){
  .is-hidden-600{display:none}
  .gallery-container{grid-template-columns:repeat(2,1fr)}
  /* .lead-text h1 {
      font-size: 20px;
  }
  .lead-text p{font-size: 12px;padding-left:0;}
  .full-banner h1 {
    font-size: 30px;
  }
  .services h3{font-size:20px;margin-bottom:10px;}
  .experiences li{font-size:14px;}
  .about-farm-text{font-size:16px;} */
}
@supports (-webkit-touch-callout: none) {
  .full-banner {
    background-attachment: scroll;
    background-position: center center;
  }
}

.activities.white-part{padding-bottom: 40px;}
.outdoor-activities.activities{
    display: block;
    padding-top: 0;
    padding-bottom: 20px;
}
.outdoor-activities .activity-row{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
  padding-bottom: 40px;
}
.outdoor-activities.activities .activity-wrap{
  min-height: unset;
}