* {
  box-sizing: border-box;
}

body {
  overflow-x: hidden;
}

:root {
  --white: #ffffff;
  /* --green-light: #578f53;
  --green-medium: #1d3c26; */
  --green-light: #4781c6;
  --green-medium: #1c3b6f;
  --green-dark: #05080c;
  --primary-hover:#214582;
  --grey: #e2e2e2;

  --blue-btn: #3C7EF0;
  --blue-btn-hover: #3168C5;
}


.material-symbols-outlined {
  font-variation-settings:
  'FILL' 1,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}


.dropdown-item.active,
.dropdown-item:active {
  color: var(--green-dark);
  text-decoration: none;
  background-color: var(--grey) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

p,
li,
a,
button,
table {
  font-family: "Lato", sans-serif;
  line-height: 1.6;
  font-size: 1em;
}

.primary-button__custom{
  background-color: var(--blue-btn);
  border: currentColor;
  transition: .3s;
  font-size: 1.2rem;
  padding: 9px 30px;
  box-shadow:0 15px 35px rgba(0,0,0,0.08);
  color: var(--white);
}

.primary-button__custom:hover{
  background-color: var(--blue-btn-hover);
  color: var(--white);
}

@media only screen and (max-width: 768px) {
  .primary-button__custWidth{
    width: 100%;
  }
}

.rounded-section{
  border-radius: 6px;
  overflow: hidden;
  box-shadow:0 15px 35px rgba(0,0,0,0.08);
}

.section-drop-shadow{
  box-shadow:0 15px 35px rgba(0,0,0,0.08);
}

.rounded-table {
  border-radius: 0.5em;
  overflow: hidden; /* ensures the corners are clipped properly */
}

.img-border{
  border-radius: .5em;
}

.p1 {
  font-size: 1em;
  word-spacing: 1.7px;
  letter-spacing: 1.3px;
}

.p2 {
  font-size: 0.675em;
  font-weight: lighter;
  word-spacing: 2.2px;
  letter-spacing: 1.7px;
}

.img-restaurant {
  cursor: pointer;
}

/* ----- secondary navigation ----- */
.sec-nav {
  background-color: #578f53;
  color: white;
  box-shadow: 0px 0px 14px 0px #888888;
  height: 40px;
}

.sec-nav-link {
  color: var(--green-medium);
  text-decoration: none;
}

.sec-nav-link:hover {
  color: var(--green-dark);
}

.sec-nav p {
  margin: 0 !important;
}
/* ----- secondary navigation ----- */

/* homepage top links and social */
.top-nav {
  background-color: #e5e5e5;
}

.top-nav .container ul {
  margin: 0 !important;
}

.top-links {
  color: var(--green-medium);
  text-decoration: none;
}

.top-links:hover {
  color: var(--green-light);
}

#topList {
  list-style-type: none;
  padding: 4px 0;
}

.list-elements {
  display: inline;
  margin-right: 10px;
}

div .container #topList div {
  float: right;
}

div .container #topList div li {
  display: inline;
}
/* homepage top links and social */

#myVideo {
  position: relative;
  right: 0;
  bottom: 0;
  width: 100%;
}

.video-contain {
  padding: 0 !important;
  margin: 0 !important;
}

/* ----- home buttons ----- */
.home-btn-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.image {
  opacity: 1;
  display: block;
  width: 100%;
  height: auto;
  transition: 0.5s ease;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.middle {
  transition: 0.5s ease;
  /* opacity: 0; */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
  background: rgba(255, 255, 255, 0);
  color: var(--white);
  border-radius: 2.5px;
}

.home-btn-wrapper:hover .image {
  transform: scale(1.1);
  filter: brightness(50%);
}

.home-btn-wrapper:hover .middle {
  padding: 60px 120px;
  background: rgba(255, 255, 255, 0.75);
  color: var(--green-dark);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.25),
    0 3px 11px 5px rgba(0, 0, 0, 0.04) !important;
}

.text h2 {
  width: 100%;
  letter-spacing: 1px;
}

.text h2:hover {
  color: var(--green-dark);
}

.text hr,
.text p {
  color: var(--green-dark);
  font-size: 16px;
  width: 200px;
  display: none;
}

/* ----- home buttons ----- */

/* ------------ events and restaurant middle sections ------------- */
.area-row {
  background-color: var(--grey);
}

.area-info {
  display: flex;
  align-items: center;
  height: 100%;
}

.area-text {
  margin: 40px;
}

.area-line {
  width: 100px;
}

.area-btn {
  margin-top: 15px;
  background-color: var(--blue-btn);
  color: white;
  padding: 8px 32px;
  border-radius: 5px;
  transition: .5s;
}

.area-btn:hover {
  opacity: .8;
  color: white;
}

.area-p {
  position: relative;
  top: -10px;
}

.area-desktop {
  display: block;
}

.area-mobile {
  display: none;
}

/* ------------ events and restaurant middle sections ------------- */

/* -------  hero image background ------- */

.hero-background {
  min-height: 65vh;
  display: flex;
  align-items: center;

  background-image: linear-gradient(
      rgba(0,0,0,.45),
      rgba(0,0,0,.1)
    ),
    url("../img/events-hero.jpg");

  background-size: cover;
  background-position: center 25%;
  background-repeat: no-repeat;
}


.hero-box {
  max-width: 550px;
  color: white;
  background: rgba(0,0,0,.35);
  padding: 30px;
  border-radius: 6px;
}


/* @media only screen and (max-width: 768px) {
  .hero-background {
    background-position: center;
  }
} */

.restaurant-hero-background {
  min-height: 65vh;
  display: flex;
  align-items: center;

  background-image: linear-gradient(
      rgba(0,0,0,.45),
      rgba(0,0,0,.1)
    ),
    url("../img/restaurant-hero.jpg");

  background-size: cover;
  background-position: center 25%;
  background-repeat: no-repeat;
}

.golf-hero-background {
  min-height: 65vh;
  display: flex;
  align-items: center;

  background-image: linear-gradient(
      rgba(0,0,0,.45),
      rgba(0,0,0,.1)
    ),
    url("../img/golf-hero-3.png");

  background-size: cover;
  background-position: center 25%;
  background-repeat: no-repeat;
}

.contact-hero-background {
  /* Use "linear-gradient" to add a darken background effect to the image (photographer.jpg). This will make the text easier to read */
  background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("../img/contact-hero.jpg");

  /* Set a specific height */
  height: 65vh;

  /* Position and center the image to scale nicely on all screens */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.professional-hero-background {
  /* Use "linear-gradient" to add a darken background effect to the image (photographer.jpg). This will make the text easier to read */
  background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("../img/hero-1.jpg");

  /* Set a specific height */
  height: 65vh;

  /* Position and center the image to scale nicely on all screens */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.shop-hero-background {
  min-height: 65vh;
  display: flex;
  align-items: center;

  background-image: linear-gradient(
      rgba(0,0,0,.45),
      rgba(0,0,0,.1)
    ),
    url("../img/pro-shop-hero.jpg");

  background-size: cover;
  background-position: center 25%;
  background-repeat: no-repeat;
}

.membership-hero-background {
  /* Use "linear-gradient" to add a darken background effect to the image (photographer.jpg). This will make the text easier to read */
  background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)),
    url("../img/membership-hero.jpg");

  /* Set a specific height */
  height: 65vh;

  /* Position and center the image to scale nicely on all screens */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.history-hero-background {
  /* Use "linear-gradient" to add a darken background effect to the image (photographer.jpg). This will make the text easier to read */
  background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)),
    url("../img/history-hero.png");

  /* Set a specific height */
  height: 65vh;

  /* Position and center the image to scale nicely on all screens */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero-style {
  color: var(--white);
}

/* -------  hero image background ------- */

/* ----- contact form ----- */

.event-contain {
  margin-top: 7em;
  width: 60%;
}

input[type="submit"] {
  color: white;
  background-color: #212121 !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.25),
    0 3px 10px 2px rgba(0, 0, 0, 0.02);
  padding: 0.5rem 1.5rem;
  border-radius: 5px;
  float: right;
  font-family: "Roboto", sans-serif;
}



.sec-img {
  background-image: url("../img/events-contact.png");
  background-color: #cccccc;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 4em;
}

/* ----- contact form ----- */

/* background image for join geneva country club section */
.sec-img-restaurant {
  background-image: url("../img/restaurant-signup-img.jpg");
  background-color: #cccccc;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 4em;
  padding-top: 4em;
}

/* background image for join geneva country club section golf page */
.sec-img-golf {
  background-image: url("../img/golf-img.png");
  background-color: #cccccc;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 4em;
  padding-top: 4em;
}

/* ----------- golf holes ---------- */
.nav-pills {
  display: flex;
  justify-content: space-evenly;
  margin-top: 20px;
}

.container .row .col-sm-12 .nav .nav-item .nav-link {
  background-color: var(--green-light);
  background: -moz-linear-gradient(
    0deg,
    var(--green-medium) 0%,
    var(--green-light) 100%
  );
  background: -webkit-linear-gradient(
    0deg,
    var(--green-medium) 0%,
    var(--green-light) 100%
  );
  background: linear-gradient(
    0deg,
    var(--green-medium) 0%,
    var(--green-light) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#1f601a",endColorstr="#578f53",GradientType=1);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.25), 0 3px 3px 2px rgba(0, 0, 0, 0.02);
  border-radius: 5px;

  margin: 15px 15px;
}

.link-style {
  background-color: var(--blue-btn) !important;
  color: white;
  padding: 10px 40px;
}

.link-style:hover {
  background-color: var(--blue-btn-hover) !important;
  color: white;
}

#pillRow {
  /* border: solid 1px #e2e2e2; */
  border-radius: .5em;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.flexContainer {
  display: flex;
  flex-direction: row;
}

.flex-item-img {
  padding: 10px;
  flex: 60%;
}

.flex-item-info {
  padding: 10px;
  flex: 40%;
}

.tee-img {
  width: 100%;
  border-radius: 5px;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);
}
/* ----------- golf holes ---------- */

/* -------- accordion --------- */
.score-img {
  width: 300px;
}

.accordion {
  --bs-accordion-inner-border-radius: .5em !important;
  --bs-accordion-border-radius: none !important;
  --bs-accordion-border-width: 0 !important;
  border-bottom-right-radius: .5em !important;
  border-bottom-left-radius: .5em !important;
}

.accordion-item:first-of-type .accordion-button {
  border-bottom-right-radius: .5em !important;
  border-bottom-left-radius: .5em !important;
}

.accordion-button {
  background-color: var(--blue-btn) !important;
  color: var(--white) !important;
  display: block;
}

.accordion-button:focus {
  box-shadow: none;
  border-color: rgba(0, 0, 0, 0.125);
}

.accordion-button::after {
  display: none !important;
}

.accordion-button::after {
  color: var(--white) !important;
}

/* -------- accordion --------- */

.one-name {
  text-align: left;
  cursor: pointer;
  color: var(--green-dark);
}

.one-name-head {
  text-align: left;
  color: var(--green-dark);
}

.head-style-modal {
  border-bottom: none !important;
  color: var(--green-dark);
}

.tab-head-style {
  background: rgb(255, 255, 255);
  background: -moz-linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(226, 226, 226, 1) 100%
  );
  background: -webkit-linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(226, 226, 226, 1) 100%
  );
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(226, 226, 226, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#e2e2e2",GradientType=1);
  font-family: lato;
  font-weight: 900;
}

.contact-width {
  width: 800px;
}

.event-contain-contact {
  width: 60%;
}

.board-links {
  color: var(--green-dark);
}

.board-links:hover {
  color: var(--green-dark);
  opacity: 0.65;
}

/* .pro-text {
  width: 110ch;
} */


.pro-img {
  width: 200px;
  border-radius: .5em;
}

.pro-title {
  font-size: 0.75rem;
  opacity: 0.75;
}

.video-area {
  background-image: url("../img/video-area-bg.jpg");
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  object-fit: contain;
  padding: 3rem 0 4rem 0;
}

.video-area .row {
  margin-right: 0 !important;
}

.drone-video {
  width: 100%;
  border-radius: 8px;
  border: solid 0.5px silver;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07), 0 2px 4px rgba(0, 0, 0, 0.07),
    0 4px 8px rgba(0, 0, 0, 0.07), 0 8px 16px rgba(0, 0, 0, 0.07),
    0 16px 32px rgba(0, 0, 0, 0.07), 0 32px 64px rgba(0, 0, 0, 0.07);
}

.video-wrapper {
  width: 640px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.video-area-headline {
  text-align: center;
  font-family: "Lato", sans-serif;
  color: var(--white);
  font-size: 2rem;
}

.vid-overlay {
  --hcf-overlay-opacity: 0.7;
  --hcf-overlay-bg-color: var(--bs-black-rgb);
  position: relative;
}
.vid-overlay::after {
  display: block;
  content: "";
  position: absolute;
  height: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(
    var(--hcf-overlay-bg-color),
    var(--hcf-overlay-opacity)
  );
  z-index: 0;
}
.vid-overlay > * {
  position: relative;
  z-index: 1;
}
/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  #pillRow {
    margin: 0 25px;
  }
}

/* Medium devices (tablets, 768px and up) */
@media (max-width: 768px) {
  .area-desktop {
    display: none;
  }

  .area-mobile {
    display: block;
  }

  .event-contain {
    width: 90%;
  }

  .event-contain-contact {
    width: 90%;
  }

  #gallery-row-two {
    display: none;
  }

  .nav-pills {
    justify-content: center;
  }

  .link-style {
    margin: 10px 5px !important;
  }

  .flexContainer {
    flex-direction: column;
  }

  .contact-width {
    width: 100%;
  }

  .mobile-margin {
    margin: 0 15px;
  }

  .video-area {
    padding: 3rem 0 2.5rem 0;
  }
}

/* Large devices (desktops, 992px and up) */
@media (max-width: 992px) {
  .pro-img {
    width: 100%;
  }

}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
}





/* updates 3-15-2026 */

@media only screen and (max-width: 991px) {
  .golf-pro__flex{
    flex-direction: column;
  }

  .golf-pro-desc__mod{
    margin: 10px 0 0 0!important;
  }


}


/* gallery */
.photo-gallery {
  color:#313437;
  background-color:#fff;
}

.photo-gallery p {
  color:#7d8285;
}

.photo-gallery h2 {
  font-weight:bold;
  margin-bottom:40px;
  padding-top:40px;
  color:inherit;
}

@media (max-width:767px) {
  .photo-gallery h2 {
    margin-bottom:25px;
    padding-top:25px;
    font-size:24px;
  }
}

.photo-gallery .intro {
  font-size:16px;
  max-width:500px;
  margin:0 auto 40px;
}

.photo-gallery .intro p {
  margin-bottom:0;
}

.photo-gallery .photos {
  padding-bottom:20px;
}

.photo-gallery .item {
  padding-bottom:30px;
}

/* gallery */

.reciprocol-card img {
  object-fit: cover;
  height: 100%;
}

.reciprocol-card {
  height: 170px;
  white-space: nowrap;      /* Prevents text from wrapping to a new line */
  overflow: hidden;         /* Hides the overflowing text */
  text-overflow: ellipsis;  /* Displays an ellipsis (...) for the clipped text */
  transition: .5s;

}

.reciprocol-card:hover{
  transform: scale(1.02);
  opacity: 1;
}

.reciprocol-card:not(:hover){

  opacity: .8;
}

@media only screen and (max-width: 768px) {

  .reciprocol-card{
    width: 100%;
  }
  
}



