/*
Theme Name: Carolinas Matchmaker
Description: Executive Matchmaking for Singles in the Carolinas
Author: Woland Web
Author URI: https://www.wolandweb.com
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/


/* ======================================== 
	HEADER & NAVIGATION 
======================================== */
.hmenu .menu-container .navbar-nav a {
	transition: all 0.3s ease;
}
/*Menu Button*/
.hmenu .menu-btn-cell .btn:not(.btn-custom-typo):not(.btn-inherit) {
	background-color: #980401;
	border-color: #980401;
	color: #fff;
    font-size: 16px;
    margin-bottom: 20px;
	text-transform:uppercase;
}
@media (min-width: 1024px) {
  .hmenu .menu-btn-cell .btn:not(.btn-custom-typo):not(.btn-inherit) {
    margin-bottom: 0;
  }
}
.hmenu .menu-btn-cell .btn:not(.btn-custom-typo):not(.btn-inherit):hover,
.hmenu .menu-btn-cell .btn:not(.btn-custom-typo):not(.btn-inherit):focus {
	background-color: transparent;
	color: #980401;
	transition: all 0.3s ease;
}

/* ======================================== 
	OVERALL STYLING
======================================== */
/*Longer buttons*/
.btn:not(.btn-custom-typo):not(.btn-inherit) {
	padding: 20px 30px !important;
	/*watch out for line height to match menu button height*/
        line-height:16px;
}
/* Make H1 smaller in blog posts */
body.single-post .post-body h1:not([class*="fontsize-"]) {
	font-size:20px;
	padding-bottom:20px;
}

/* Make all YouTube iframes responsive */
iframe[src*="youtube.com"] {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  display: block;
  max-width: 100%;
  padding-bottom:30px;
}

.recent-posts .widget-container ul li {
	margin-bottom:15px;
}


/* ======================================== 
   FOOTER
======================================== */

/* ===== Newsletter Signup Form Styling ===== */
.newsletter-signup form {
  display: flex;
  justify-content: center;   /* center horizontally */
  align-items: center;       /* align vertically */
  flex-wrap: wrap;
  gap: 10px;                 /* space between fields */
}

/* Center content inside wrapper */
.newsletter-signup .gform_body,
.newsletter-signup .gform_footer {
  margin: 0 auto;
  text-align: center;
}

/* Make the email field wider only inside the newsletter form */
.newsletter-signup .gform_wrapper.gravity-theme input[type="email"] {
  width: 280px !important;   /* force override GF inline/flex widths */
  max-width: 100%;           /* prevents overflow on smaller screens */
}

/* Adjust submit button spacing */
.newsletter-signup .gform_button {
  margin-left: 10px;
}

/* ===== Fix oversized submit container (new) ===== */
.newsletter-signup #field_submit {
  width: auto !important;      /* remove default 25% width */
  flex: 0 0 auto !important;   /* only as wide as button */
  padding: 0 !important;
  margin: 0 !important;
}

/* ===== Responsive (stack fields on mobile) ===== */
@media (max-width: 768px) {
  .newsletter-signup form {
    flex-direction: column;   /* stack vertically */
    align-items: stretch;     /* make inputs full width */
    max-width: 400px;
    margin: 0 auto;
  }
  .newsletter-signup .ginput_container input,
  .newsletter-signup .gform_button {
    width: 100%;
    margin-left: 0;
  }
  .newsletter-signup .gform_button {
    margin-top: 10px;
  }
  /* Make all fields equal width on mobile */
  .newsletter-signup .gform_wrapper.gravity-theme .ginput_container input[type="text"],
  .newsletter-signup .gform_wrapper.gravity-theme .ginput_container input[type="email"] {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* Tablet: keep email + submit on one line and preserve spacing */
@media (min-width: 769px) and (max-width: 1024px) {
  /* Make the row a single flex line with consistent gap */
  .newsletter-signup .gform_wrapper.gravity-theme .gform_fields,
  .newsletter-signup form {
    display: flex !important;
    flex-wrap: nowrap !important;       /* keep items on one line */
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;               /* spacing between items */
  }

/* Tablet: allow email field to fill available space next to Submit */
.newsletter-signup .gform_wrapper.gravity-theme input[type="email"] {
  flex: 1 1 auto !important;
  min-width: 180px !important;               /* ensures label fits */
  width: auto !important;
  max-width: calc(100% - 120px) !important;  /* make room for button but allow more space */
}


  /* Text inputs (first/last): keep reasonable width so layout stays balanced */
  .newsletter-signup .gform_wrapper.gravity-theme input[type="text"] {
    flex: 0 0 180px !important;         /* fixed-ish width for the name fields */
    width: 180px !important;
  }


  /* Submit container and button: only as wide as needed */
  .newsletter-signup .gform_wrapper.gravity-theme #field_submit,
  .newsletter-signup .gform_wrapper.gravity-theme .gfield--type-submit {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    width: auto !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .newsletter-signup .gform_wrapper.gravity-theme #gform_submit_button_1 {
    padding: 8px 20px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    width: auto !important;
  }

  /* Restore vertical spacing under the form if it was lost */
  .newsletter-signup .gform_wrapper.gravity-theme {
    padding-bottom: 30px !important; /* adjust value to match desktop look */
  }

  /* If individual input wrappers have bottom margins removed, ensure small spacing */
  .newsletter-signup .gform_wrapper.gravity-theme .ginput_container {
    margin-bottom: 0 !important;
  }
}


/* ===== Submit Button Styling ===== */
.newsletter-signup .style-dark input[type="submit"] {
  font-size: 16px;
  background-color: #ffffff;
  border-color: #ffffff;
  color: #0b1045;
  padding: 8px 19px;
  margin-top: 0px !important;
}

.newsletter-signup .style-dark input[type="submit"]:hover {
  background-color: transparent;
  opacity: 0.7;
  color: #ffffff;
}

/* Rounded button variation */
body.uncode-btn-round 
  .newsletter-signup input[type="submit"]:not(.btn-default-shape):not(.btn-square):not(.btn-circle) {
  font-weight: 700 !important;
  border-radius: 4px;
}

/* ===== Footer padding adjustments on mobile ===== */
@media (max-width: 959px) {
  .main-container .newsletter-signup .double-bottom-padding {
    padding-bottom: 0px;
  }
  .main-container .newsletter-signup .double-top-padding {
    padding-top: 32px;
  }
}
/* Strong override: make quarter-width fields auto-size inside the newsletter form */
.newsletter-signup .gform_wrapper.gravity-theme .gfield.gfield--width-quarter {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
}

/* Specifically shrink the submit field wrapper to the size of the button */
.newsletter-signup .gform_wrapper.gravity-theme #field_submit,
.newsletter-signup .gform_wrapper.gravity-theme .gfield--type-submit {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Make sure the button itself stays sized nicely */
.newsletter-signup .gform_wrapper.gravity-theme #gform_submit_button_1 {
  padding: 8px 20px !important;
  height: auto !important;
  margin-left: 0 !important;
}

/* FIX: Make the submit container wrap tightly around the button */
.newsletter-signup .gform_wrapper.gravity-theme #field_submit {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Remove the forced quarter width from the field container */
.newsletter-signup .gform_wrapper.gravity-theme .gfield--width-quarter {
  width: auto !important;
  flex: 0 0 auto !important;
}

/* Center everything horizontally */
.newsletter-signup .gform_wrapper.gravity-theme .gform_fields {
  justify-content: center !important;
}

/* Keep the button itself consistent */
.newsletter-signup .gform_wrapper.gravity-theme #gform_submit_button_1 {
  padding: 8px 20px !important;
  height: auto !important;
  margin: 0 !important;
}
/* === FIX oversized submit container (final version) === */
.newsletter-signup .gform_wrapper.gravity-theme #field_submit,
.newsletter-signup .gform_wrapper.gravity-theme .gfield--type-submit {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important; /* prevent residual width inheritance */
}

/* Explicitly neutralize the quarter-width class on the submit field */
.newsletter-signup .gform_wrapper.gravity-theme #field_submit.gfield--width-quarter {
  width: auto !important;
  flex: 0 0 auto !important;
  max-width: none !important;
}

/* Ensure the form’s field row is centered tightly */
.newsletter-signup .gform_wrapper.gravity-theme .gform_fields {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

/* Keep the button itself cleanly sized */
.newsletter-signup .gform_wrapper.gravity-theme #gform_submit_button_1 {
  padding: 8px 20px !important;
  height: auto !important;
  margin: 0 !important;
  white-space: nowrap !important;
}



/* Footer Columns */
footer .three-col-links .style-dark p,
footer .three-col-links ul li {
	font-size:15px !important;
}
footer .three-col-links .style-dark p {
	line-height:2;
}
footer .style-dark .menu li a  {
	line-height:2;
}
footer .style-dark a {
	transition: all 0.3s ease;
}
footer .style-dark a:hover {
	opacity:0.5;
}

/* ======================================== 
	OVERALL
======================================== */
/* Typography */
body, p, li, dt, dd, dl, address, label, pre, code {
	line-height: 1.5;
}
b, strong {
  font-weight: 700;
}

h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
  line-height: 1.5;
}
h6:not([class*="fontsize-"]), 
.h6:not([class*="fontsize-"]) {
	letter-spacing: 0.1em;
}
.text-small, 
.text-small > * {
	line-height: 1.3;
}

/* Links */
.style-dark a,
.style-light a {
	transition: all 0.3s ease;
}
/* Text Selection */
::selection {
  color: #ffffff;
  background-color: #666666;
}

/* Mobile Padding Fix */
@media (max-width: 959px) {
	.main-container .row-container.mobile-top-padding .double-top-padding {
		padding-top: 0px;
	}
	.main-container .row-container.mobile-bottom-padding .single-bottom-padding {
		padding-bottom: 0px;
	}
}

/* ======================================== 
  SHOME
======================================== */
@media (min-width: 959px) {
  .home-hero .row {
    min-height: 700px;
  }
}
.home .find-special-someone-boxes p {
    color:#08589b;
}
@media(max-width:959px) {
    .home .find-special-someone-boxes .text-lead:not(ul):not(ol) > * {
      line-height: 1.25;
      padding: 0px 10px 10px;
    }
    .home .find-special-someone-boxes h2 {
        padding-top:10px;
    }
}

.home .meet-boxes .btn-container {
    margin-top:10px !important;
}
.home .meet-boxes .btn, .meet-boxes .btn-link {
    font-size:15px;
    transition: all 0.3s ease;
}
.home .meet-boxes .btn:hover, .meet-boxes .btn-link:hover {
    opacity:0.6;
}
.home .meet-boxes p {
    padding-left:3px;
    padding-right:3px;
}
.home .awards-row .col-last {
    display:none;
}
@media(max-width:959px) {
 .home .about-the-founder > .row-inner > div:first-child {
    padding-top:0px !important;
 }
 .home .about-the-founder .double-block-padding {
    padding: 24px 36px 54px 36px;
  }
}
@media(min-width:959px) {
  .home .about-the-founder {
      min-height:450px;
  }
  .home .about-the-founder p {
    padding-right:40px;
  }
  .home .workbook p {
    padding-right:80px;
  }
}
@media(max-width:959px) {
  .home .workbook .text-left {
      text-align:center;
  }
}

/* Testimonials */
.home .testimonials blockquote p {
    font-size: 16px;
    line-height: 1.5;
    color: #31361D !important;
    letter-spacing:0!important;
}
.home .testimonials blockquote small {
    font-size: 14px;
    text-transform: uppercase;
    color: #31361D !important;
}
.home .testimonials blockquote.pullquote > p:first-of-type:before, 
.home  blockquote.pullquote > p:first-of-type:after {
  font-size: 20px;
  vertical-align: 1px;
  margin-right: 0;
}
.home .testimonials .t-entry-visual .gravatar img.avatar {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  border-radius: 10px; /* optional – adjust or remove */
  display: block;
}
.home .testimonials .t-entry-visual-cont,
.home .testimonials .t-entry-visual-tc,
.home .testimonials .t-entry-visual {
  height: auto !important;
  padding-top: 0 !important;
  overflow: visible !important;
}
.home .testimonials .tmb.tmb-carousel .t-inside {
  height: auto !important;
}

/* ======================================== 
  SECONDARY PAGES
======================================== */
/* TV */
.half-block-padding {
  padding: 0px 18px 18px 18px;
}

.tv-appearance-feed .tmb iframe[src*="youtube.com"],
.tv-appearance-feed .tmb iframe[src*="youtube-nocookie.com"],
.tv-appearance-feed .tmb iframe[src*="youtu.be"]{
  opacity:0!important;
  pointer-events:none!important;
}

.tv-appearance-feed .tmb .fluid-width-video-wrapper{
  display:block!important;
}

.tv-appearance-feed .tmb:hover img,
.tv-appearance-feed .tmb:hover .tmb-media img,
.tv-appearance-feed .tmb:hover .tmb-media picture,
.tv-appearance-feed .tmb:hover .tmb-media picture img{
  opacity:1!important;
  visibility:visible!important;
}

.tv-appearance-feed .tmb:hover .tmb-media,
.tv-appearance-feed .tmb:hover .tmb-media-inner{
  background:transparent!important;
}

.tv-appearance-feed .tmb:hover .t-overlay,
.tv-appearance-feed .tmb:hover .t-overlay-text,
.tv-appearance-feed .tmb:hover .t-overlay-wrap,
.tv-appearance-feed .tmb:hover .t-overlay-content{
  opacity:0!important;
}

.tv-appearance-feed .tmb .t-overlay,
.tv-appearance-feed .tmb .t-overlay-text,
.tv-appearance-feed .tmb .t-overlay-wrap,
.tv-appearance-feed .tmb .t-overlay-content{
  pointer-events:none!important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry .article__section_type_text h2,
.tv-appearance-feed .t-entry-text-tc .t-entry h3:not(.t-entry-title){
  margin:0 0 .6em !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  color:inherit !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry .article__section_type_text h2 span,
.tv-appearance-feed .t-entry-text-tc .t-entry h3:not(.t-entry-title) span{
  font-size:inherit !important;
  line-height:inherit !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry p{
  margin:0 0 .6em !important;
  line-height:1.35 !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry p:empty{
  display:none !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry p:has(> iframe){
  display:none !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry iframe{
  display:none !important;
}

.tv-appearance-feed .t-entry-text-tc .t-entry .article__section_type_text,
.tv-appearance-feed .t-entry-text-tc .t-entry .utility__text{
  margin:0 0 .6em !important;
}

.style-light .tv-appearance-feed  .btn-default:not(.btn-hover-nobg):not(.icon-animated):not(.btn-flat) {
  color: #FFFFFF;
}

.tv-appearance-feed .tmb .t-entry-visual-cont{
  position:relative;
}

.tv-appearance-feed .tmb .t-entry-visual-cont::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:56px;
  height:56px;
  transform:translate(-50%,-50%);
  border-radius:999px;
  background: #980401;
  box-shadow:0 10px 24px rgba(0,0,0,.25);
  z-index:20;
  pointer-events:none;
  transition: all 0.3s ease;
}
.tv-appearance-feed .tmb:hover .t-entry-visual-cont::before {
  transform:translate(-50%,-50%) scale(1.05);
}

.tv-appearance-feed .tmb .t-entry-visual-cont::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-34%,-50%);
  width:0;
  height:0;
  border-top:11px solid transparent;
  border-bottom:11px solid transparent;
  border-left:18px solid #fff;
  z-index:21;
  pointer-events:none;
  transition: all 0.3s ease;
}
.tv-appearance-feed .tmb:hover .t-entry-visual-cont::after {
  transform:translate(-34%,-50%) scale(1.05);
}
