/*
* Skeleton V1.2
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 6/20/2012
*/


/* Table of Content
==================================================
	#Reset & Basics
	#Basic Styles
	#Site Styles
	#Typography
	#Links
	#Lists
	#Images
	#Buttons
	#Forms
	#Misc */


/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, select{
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline; }
	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block; }
	body {
		line-height: 1; }
	ol, ul {
		list-style: none; }
	blockquote, q {
		quotes: none; }
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none; }
	table {
		border-collapse: collapse;
		border-spacing: 0; }

/* #Basic Styles
================================================== */
	body {
		background: #384645;
		font-family: 'PT Serif', serif;
		font-size: 14px;
		line-height:24px;
		color:#ffffff;
		overflow-x:hidden;
		-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
		text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
		-webkit-text-size-adjust: 100%;
 }
 html {
		overflow-x:hidden;
}

/* #Typography
================================================== */
	h1, h2, h3, h4, h5, h6 {
		color: #ffffff;
		font-family: 'PT Serif', serif;
		text-align:center;
	}
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1 { font-size: 40px; line-height:45px;text-transform:uppercase;font-weight: 400; }
	h2 { font-size: 38px; line-height:43px;text-transform:uppercase;}
	h3 { font-size: 36px; line-height: 41px;text-transform:capitalize;}
	h4 { font-size: 35px; line-height: 40px;text-transform:capitalize;}
	h5 { font-size: 30px; line-height: 35px;text-transform:capitalize;font-weight: 400;}
	h6 { font-size: 20px; line-height: 25px;}


	p { color: #ffffff; }
	p img { margin: 0; }
	p.lead { font-size: 21px; line-height: 27px; color: #ffffff;  }

	em { font-style: italic; }
	strong { font-weight: 600;}
	small { font-size: 80%; }
	


/*	Blockquotes  */
	blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #ffffff; }
	blockquote { margin: 0 0 20px; padding: 9px 20px 0 19px; }
	blockquote cite { display: block; font-size: 12px; color: #e0e0e0; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #e0e0e0; }

	hr { border: solid #323a3d; border-width: 1px 0 0; clear: both; margin:0 10px 0 10px; height: 0; position:relative;}


/* #Links
================================================== */
	a, a:visited { text-decoration: none; }
	a:hover, a:focus { color: #e74c3c;}
	p a, p a:visited { line-height: inherit; text-decoration: none;}
	a:focus{
	outline:none;
	}

/* #Lists
================================================== */
	ul, ol { }
	ul { list-style: none outside; }
	ol { list-style: decimal; }
	ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
	ul.square { list-style: square outside; }
	ul.circle { list-style: circle outside; }
	ul.disc { list-style: disc outside; }
	ul ul, ul ol,
	ol ol, ol ul { font-size: 90%;  }
	ul ul li, ul ol li,
	ol ol li, ol ul li {  }
	li { line-height: 18px; }
	ul.large li { line-height: 21px; }
	li p { line-height: 21px; }
/* #Buttons
================================================== */

	.button,
	button,
	input[type="submit"],
	input[type="reset"],
	input[type="button"] {
	background:#363636;	
	margin-top:10px;
	border:none;
	  color: #dfdfdf;
	  display: inline-block;
	  font-size: 16px;
	  cursor: pointer;
	  line-height: normal;
	  padding: 15px 25px;
	-webkit-transition : all 0.3s ease-out;
	-moz-transition : all 0.3s ease-out;
	-o-transition :all 0.3s ease-out;
	transition : all 0.3s ease-out; 
	width:100%}

	.button:hover,
	button:hover,
	input[type="submit"]:hover,
	input[type="reset"]:hover,
	input[type="button"]:hover {	
	  color: #e74c3c;
	background:#292929;	 }

	.button:active,
	button:active,
	input[type="submit"]:active,
	input[type="reset"]:active,
	input[type="button"]:active {	
	  color: #e74c3c;}

	.button.full-width,
	button.full-width,
	input[type="submit"].full-width,
	input[type="reset"].full-width,
	input[type="button"].full-width {
		width: 100%;
		padding-left: 0 !important;
		padding-right: 0 !important;
		text-align: center; }

	/* Fix for odd Mozilla border & padding issues */
	button::-moz-focus-inner,
	input::-moz-focus-inner {
    border: 0;
    padding: 0;
	}
/* #Images
================================================== */






/* #Misc
================================================== */
	.remove-bottom { margin-bottom: 0 !important; }
	.half-bottom { margin-bottom: 10px !important; }
	.add-bottom { margin-bottom: 20px !important; }

.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
::selection {
	background: rgba(0,0,0,.2); /* Safari */
	}
::-moz-selection {
	background: rgba(0,0,0,.2); /* Firefox */
}

/* ===== SECTION ===== */
.all-in-one-section {
  width: 100%;
  padding: 100px 5%;
  background-color: #384645;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  box-sizing: border-box;
  overflow: hidden;
  
}

/* ===== PHONE MOCKUPS ===== */
.mockup-group {
  flex: 1;
  display: flex;
  justify-content: center;
  gap: 20px;
}

.mockup-group img {
  max-width: 220px;
  height: auto;
  border-radius: 20px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

/* ===== CENTER CONTENT ===== */
.content-box {
  flex: 1;
  max-width: 520px;
  margin: 0 auto;
  text-align: center;
}

.content-box h2 {
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 30px;
}

.content-box p {
  font-size: 16px;
}



/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .all-in-one-section {
    flex-direction: column;
    padding: 80px 5%;
  }

  .mockup-group {
    order: 2;
  }

  .content-box {
    order: 1;
    margin-bottom: 40px;
  }
}


/* ===== SECTION BACKGROUND ===== */
.integrity-section {
  padding: 80px 0;
  z-index: 0;
}

/* ===== CONTAINER ===== */
.integrity-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 80px;
}

/* ===== TEXT ===== */
.integrity-text {
  flex: 1;
  max-width: 520px;
}

.integrity-text h2 {
  font-family: "Abril Fatface" cursive;
  font-size: 36px;
  font-weight: 600;
  margin-bottom: 25px;
  color: #ffffff;
  text-align: left;
}

.integrity-text p {
  font-size: 16px;
}



/* ===== IMAGE ===== */
.integrity-image {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.integrity-image img {
  width: 100%;
  max-width: 520px;
  border-radius: 14px;
  object-fit: cover;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 900px) {
  .integrity-container {
    flex-direction: column;
    gap: 50px;
  }

  .integrity-image {
    justify-content: center;
  }

  .integrity-text {
    text-align: center;
  }
  .integrity-text h2 {
	text-align: center;
  }
}


/* ===== ALT SECTION (IMAGE LEFT) ===== */
.integrity-section-alt {
  background-color: #384645;
  padding: 60px 0;
  padding-bottom: 100px;
}

.integrity-section-alt .integrity-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 80px;
}

/* Image */
.integrity-section-alt .integrity-image {
  flex: 1;
  display: flex;
  justify-content: flex-start;
}

.integrity-section-alt .integrity-image img {
  width: 100%;
  max-width: 520px;
  border-radius: 14px;
  object-fit: cover;
}

/* Text */
.integrity-section-alt .integrity-text {
  flex: 1;
  max-width: 520px;
}

.integrity-section-alt .integrity-text h2 {
  font-family: "Abril Fatface" cursive;
  font-size: 36px;
  font-weight: 600;
  margin-bottom: 25px;
  color: #ffffff;
}



/* ===== RESPONSIVE ===== */
@media (max-width: 900px) {
  .integrity-section-alt .integrity-container {
    flex-direction: column;
    gap: 50px;
  }

  .integrity-section-alt .integrity-image {
    justify-content: center;
  }

  .integrity-section-alt .integrity-text {
    text-align: center;
  }

  .integrity-section-alt .integrity-text h2 {
	text-align: center;
  }
}



/* ===== FINAL RESPONSIVE VIDEO (NO CROP) ===== */

#home {
  width: 100%;
  background: #384645;
}

#video_background {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 768px) {
  #home {
    /* aspect-ratio: 16 / 9; */
  }
}


@media (max-width: 768px) {

  #video_background {
    position: static !important;   /* removes absolute */
    min-height: unset !important;  /* removes min-height */
  }

}

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

  .home-text {
    height: auto !important;
  }

}

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

  .link-home {
    margin-top: 50px !important;
  }

}

@media only screen and (max-width: 767px) {
  .home-text h1 {
    margin-top: 30px;
    margin-bottom: 0px;
  }
}

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

  #about {
    margin-top: 0px !important;
  }

}

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

  .mockup-group {
    gap: 0 !important;
  }

}

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

  #video_background {
    position: static !important;   /* removes absolute */
    min-height: unset !important;  /* removes min-height */
  }

}



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

  .home-text {
    margin-top: 50px !important;
  }

}

/* hide mobile slider by default */
.mobile-only {
  display: none !important;
}

/* only show on mobile ≤ 767px */
@media only screen and (max-width: 767px) {
  .about-grid {
    display: none !important; /* hide desktop grid */
  }

  .mobile-only {
    display: block !important; /* show slider only on mobile */
  }

  .about-mobile-slider img {
    width: 100%;
    display: block;
    border-radius: 16px;
  }

  /* arrows */
  .swiper-button-next,
  .swiper-button-prev {
    width: 32px;
    height: 32px;
  }
  .swiper-button-next::after,
  .swiper-button-prev::after {
    font-size: 18px !important;
    color: #000 !important;
  }

  /* pagination dots */
  .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: #000 !important;
  }
  .swiper-pagination-bullet-active {
    background-color: #000 !important;
  }
}



