@charset "UTF-8";

/* CSS Document */

/*
Theme Name: Delta Marine Construction
Theme URI: https://www.deltamarineconstruction.com/
Author: Consociate
Author URI: https://consociate.marketing
Text Domain: delta-marine
*/

/* GENERAL 
#################################################### */

html, body {
  overflow-x: hidden;
}

body { font-family: "Cabin", sans-serif; font-weight: 400; font-style: normal; font-size: 20px }

h1, h2, h3, h4, h5, h6 { font-family: "Lora", serif; font-weight: 700; line-height: 1.25em; margin-bottom: 1.25rem }
h1 { font-size: 52px }
h2 { font-size: 44px }
h3 { font-size: 36px }
h4 { font-size: 30px }
h5 { font-size: 26px }
h6 { font-size: 22px }

.left { text-align: left }
.right { text-align: right }
.center { text-align: center }

/* Fonts */

.norm { font-weight: 400; }
.semibold { font-weight: 600; }
b, strong, .bold { font-weight: 700; }

.caps { text-transform: uppercase }
.small, small { }

.sans { font-family: "Cabin", sans-serif }
.serif { font-family: "Lora", serif }

/* // <weight>: Use a value from 400 to 700
// <uniquifier>: Use a unique and descriptive class name */

.lora-reg {
  font-family: "Lora", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.cabin-reg {
  font-family: "Cabin", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

/* Colors */

.bg-red { background-color: #E60219 }

.txt-red { color: #E60219 }
.txt-white { color: #fff }

/* Header */

#header { background: url("images/delta-lake-dock-with-boathouse-and-boat-1920.jpg") center center no-repeat; background-size: cover; min-height: 95vh }

/* Nav */

.navbar { background: #000000; 
	background: linear-gradient(350deg, rgba(0, 0, 0, 0.85) 65%, rgba(255, 255, 255, 0.85) 100%); 
	padding: 15px 0 }
.navbar-brand { width: 200px }

.nav-item { border-right: 1px solid #666666 }
.nav-item.last { border-right: 0 }
.nav-link, 
 .navbar-nav .nav-link.active { color: #fff; font-size: 20px; font-weight: 400 }
.nav-link { text-decoration: none }
.nav-link:hover {  color: #ADADAD }
.navbar-expand-lg .navbar-nav .nav-link { padding-left: 25px; padding-right: 25px }

/* Home */

#subfooter { background: linear-gradient(0deg,rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.35) 30%, rgba(0, 0, 0, 0) 100%),
	     url('images/delta-waterfront-docks-with-boats-and-houses-1920.jpg') center / cover no-repeat; 
	 padding-bottom: 100px; color: #fff; border-top: 7px solid #E60219 }
#subfooter .info { padding-top: 400px; text-align: center}

/* Footer */

footer .company { background-image: 
    linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, .5), rgba(255, 255, 255, 1)), /* left → right */
    linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, .5), rgba(255, 255, 255, 1)), /* top → bottom */
    url('/wp-content/uploads/2026/08/delta-wooden-dock-waterfront-lush-greenery-1920.jpg'); /* base image */
  	background-size: cover;   /* scale image to fill */
  	background-position: center;
  	background-repeat: no-repeat;
	padding-top: 50px; padding-bottom: 25px; text-align: center; border-top: 10px solid #eeeeee }
footer img { width: 250px }
footer a { color: #E60219 }
footer i { font-size: 30px }
footer .ada { padding: 25px 15px; color: #fff; background-color: #E60219; text-align: center }
footer .ada a { color: #fff; font-weight: 700 }


/* Pages */

#page-header { padding-top: 400px; padding-bottom: 25px; border-bottom: 7px solid #E60219; color: #fff }

#content { padding-top: 100px; padding-bottom: 100px }

/*
####################################################
C O M P O N E N T S
####################################################
*/

/* IMAGES */

img { max-width: 100%; height: auto; }

.rotate { border: 10px solid #fff; rotate: 5deg;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px !important; }


/* LINKS */

a { text-decoration: none; transition: 200ms; font-weight: 700; color: #E60219 }
a:hover { color: #B50012; text-decoration: underline }

a img { transition: 200ms }
a img:hover { opacity: .8 }

/* BUTTONS */

.btn, .wp-block-button__link { background: #E60219; color: #fff; text-transform: uppercase; border-radius: 0; 
	padding: 0.65rem 1.15rem; font-size: 16px; font-weight: 700; }
.btn:hover { background: #B80012; color: #fff }

.btn-black { background: #000000; color: #ffffff }

.wp-block-button__link { 
	border: 2px solid transparent; font-weight: 700;
	transition: background-color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;  }
.wp-block-button__link:hover { 
    background-color: transparent !important; border: 2px solid #B80012 !important; color: #fff; text-decoration: none }

.submenu .wp-block-button__link:hover { color: #fff }

/* Shadows */

.shadowed { box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px !important; }
.shadow-text { text-shadow: -1px -1px 1px #fff, 1px 1px 1px rgba(0,0,0,.50) }

/* Rounded edges */

.round { border-radius: 25px }

/* Spacing */

.max-800, .max-1000, .max-1200, .max-w { margin-left: auto; margin-right: auto }
.max-800 { max-width: 800px }
.max-1000 { max-width: 1000px }
.max-1200 { max-width: 1200px }

.mar-0 { margin: 0 }
.mar-top-0 { margin-top: 0 !important }
.mar-btm-0 { margin-bottom: 0 !important }
.mar-btm-25 { margin-bottom: 25px }

.pad-25 { padding: 25px }

.flush { padding-left: 0; padding-right: 0 }

/* Positioning */

.pos-rel { position: relative !important }

/*
####################################################
E X T R A S
####################################################
*/

/* Anchor scroll sticky menu offset */
html {
  scroll-padding-top: 200px;
}

/* WP admin bar offset */
body.admin-bar .navbar {
    margin-top: 32px;
}

/* Nav scroll */

.navbar-fixed-top.scrolled  {
  padding: 10px 0;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
  transition: padding box-shadow 200ms ease
}
.navbar-fixed-top.scrolled .navbar-brand {
  width: 150px;
  transition: width 200ms ease
}

/* Full-width in WP Block Editor (Cover block) */
.alignfull {
    width:  100vw;
    max-width:  100vw;
    margin-left:  calc(50% - 50vw);
}
.wp-block-cover.alignfull {
    padding-top: 100px; padding-bottom: 100px; margin-top: 50px; margin-bottom: 75px
}

.wp-block-cover__inner-container { max-width: 1200px }

#XXX { overflow-x: hidden } /* Fix for PC horizontal scroll bars with .alignfull */

/* Image Wraps */

.wrap { height: 325px }
.wrap img { 
	object-fit: cover;
    width: 100%;
    height: 100% !important;
}

/* Nav dropdown on hover */
.dropdown:hover>.dropdown-menu {
  display: block;
}

.dropdown>.dropdown-toggle:active {
  /*Without this, clicking will make it sticky*/
    pointer-events: none;
}

/* HEADING LINES */

/* under + left */
.bordered { position: relative; display: inline-block; margin-bottom: 50px }
.bordered::after { 
	content: "";
	position: absolute;
	bottom: -15px; /* Aligns with bottom of parent */
	left: 0;   /* Starts at left */
	width: 150px;
	height: 10px; /* Adjust thickness as needed */
	background-color: #E60219; /* Adjust color */
}

.heading {
  position: relative;
  display: inline-block; /* keeps text width tight */
  text-align: center;
}
.heading::after {
  content: "";
  display: block;
  width: 100px; /* set your line width */
  height: 10px; /* thickness of the line */
  background-color: #D22630; /* color of the line */
  margin: 8px auto 0; /* centers line below text */
}

/* Line centered after text vertically */
.line {
  display:inline-block;
  padding: 10px 10px 15px; /* bottom padding should be higher to make up for pseudo border height */
  background: linear-gradient(90deg, transparent 25%, #fff 25%, #fff 75%, transparent 75%);
  background-size: 100% 5px;
  background-position: 0% 100%;
  background-repeat: no-repeat;
}

/* Line after text Horizontally */
#partners .heading-line { 
  display: flex;
  align-items: center;
  gap: 1em; /* space between text and line */ }
#partners .line { 
  flex-grow: 1;
  height: 10px;
  background-color: #64B9AE; /* line color */ }




/*
####################################################
M E D I A  Q U E R I E S
####################################################
*/

/*
::::::::::::::::::::::::::::::::::::::::::::::::::::
Bootstrap 4 breakpoints
*/

/* Custom */
@media (min-width: 1925px) {

}

/* Extra large devices (large desktops, 1200px and up)
 * No media query since this is the default in Bootstrap because it is "mobile first"
 */
@media (min-width: 1200px) {

}

/* Large devices (desktops, 992px and up) */
@media (max-width: 1199px) {

	.navbar-expand-lg .navbar-nav .nav-link { padding-left: 15px; padding-right: 15px }

}

/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (max-width: 991px) {
	
	.m-hide { display: none }
	.m-show { display: block }
	
	/* Breaks WP BLOCK columns early w/ tweaks */
	.wp-block-columns { display:block } 
	.wp-block-column:nth-child(2n),
		.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) { margin-left: 0 }
	
	/* Force columns to stack earlier */
	.wp-block-columns.stack-early {
		flex-direction: column !important;
	  }
	
	/*
	.navbar-expand-lg .navbar-nav .nav-link { color: #0A6399; font-size: 22px; font-weight: 700 }
	.offcanvas .navbar-nav .nav-link.active { border-bottom: 0 }
	*/
	
	.navbar-toggler { background-color: transparent; border-color: #fff; color: #fff; font-size: 25px }
	.navbar-toggler i { font-size: 24px; margin: 5px 0 }
	.offcanvas { background: 
		linear-gradient(180deg, rgba(0, 0, 0, .95) 0%, rgba(66, 0, 7, .9) 100%),
		url('/wp-content/uploads/2026/08/delta-marine-wooden-dock-with-boat-lift-1920.jpg') center / cover no-repeat }
	.offcanvas-title img { max-width: 200px }
	
	.nav-item { border-right: 0 }
	.nav-link, .navbar-nav .nav-link.active { font-size: 24px }
	
	#subfooter .info { padding-top: 200px; padding-bottom: 190px }
	
	footer img { margin-bottom: 35px }
	
	.icon img { margin-top: 0 !important }
	
	/* Fix nav search bar placement in offcanvas mobile menu */
	.is-menu.is-dropdown form { position: static !important }
	.search-close { right: 0 !important }
	
	/* spacing */
	.wp-block-cover.alignfull,
		#content { padding-top: 50px; padding-bottom: 50px }

}

/* Small devices (landscape phones, 544px and up) */
@media (max-width: 767px) {
	
	.reverse-mobile { flex-direction: column-reverse }
	
	.icon img { max-width: 100% !important; margin-top: -50px !important }
}

/* Extra small devices (portrait phones, less than 544px) */
@media (max-width: 543px) {

}

/*
::::::::::::::::::::::::::::::::::::::::::::::::::::
Custom media queries
*/

/* Set width to make card deck cards 100% width */
@media (max-width: 950px) {

}