/*!
Theme Name: coldairprostx
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: coldairprostx
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

coldairprostx is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */


html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
	line-height: 1.5;
}

.rounded-dynamic {
    border-radius: var(--roundedness);
}
.text-primary {
    --tw-text-opacity: 1;
    color: #061325;
}
.bg-primary {
    --tw-bg-opacity: 1;
    background: rgba(var(--primary-color), var(--tw-bg-opacity));
}
.border-primaryContrast {
    --tw-border-opacity: 1;
    border-color: rgba(var(--primary-contrast), var(--tw-border-opacity));
}
.grab-services-section {
    background-color: rgb(var(--primary-color));
}
.grab-services-title, .grab-services-intro {
    color: white;
}
.border-primary {
    --tw-border-opacity: 1;
    border-color: rgba(var(--primary-color), var(--tw-border-opacity));
}
.bg-secondary {
    --tw-bg-opacity: 1;
    background-color: rgba(var(--secondary-color), var(--tw-bg-opacity));
}
.hover\:bg-primary:hover {
    --tw-bg-opacity: 1;
    background-color: rgba(var(--primary-color), var(--tw-bg-opacity));
}
.border-primary\/70 {
    border-color: rgba(var(--primary-color), .7);
}
.section-intro {
    display: block;
    font-family: var(--font-pairing-secondary), ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: .875rem;
    font-weight: 500;
    letter-spacing: .3rem;
    line-height: 1.25rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    --tw-text-opacity: 1;
    color: rgba(var(--derivative-color-400), var(--tw-text-opacity));
}
.to-primary\/35 {
    --tw-gradient-to: rgba(var(--primary-color), 0.35) var(--tw-gradient-to-position);
}
.from-primary\/70 {
    --tw-gradient-from: rgba(var(--primary-color), 0.7) var(--tw-gradient-from-position);
    --tw-gradient-to: rgba(var(--primary-color), 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.via-primary\/50 {
    --tw-gradient-to: rgba(var(--primary-color), 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), rgba(var(--primary-color), 0.5) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.fill-primary\/80 {
    fill: rgba(var(--primary-color), .8);
}
.bg-primaryContrast {
    --tw-bg-opacity: 1;
    background-color: rgba(var(--primary-contrast), var(--tw-bg-opacity));
}
.border-primaryContrast {
    --tw-border-opacity: 1;
    border-color: rgba(var(--primary-contrast), var(--tw-border-opacity));
}
.grab-free-form-content-text ul{list-style:inherit;}
.to-primary\/60 {
    --tw-gradient-to: rgba(var(--primary-color), 0.6) var(--tw-gradient-to-position);
}
.from-primary\/30 {
    --tw-gradient-from: rgba(var(--primary-color), 0.3) var(--tw-gradient-from-position);
    --tw-gradient-to: rgba(var(--primary-color), 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.bg-gradient-to-br {
    background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.to-primary\/60 {
    --tw-gradient-to: rgba(var(--primary-color), 0.6) var(--tw-gradient-to-position);
}
.bg-primary\/20 {
    background-color: rgba(var(--primary-color), .2);
}
.to-primaryDarker {
    --tw-gradient-to: rgb(var(--primary-darker)) var(--tw-gradient-to-position);
}
.from-primaryLighter {
    --tw-gradient-from: rgb(var(--primary-lighter)) var(--tw-gradient-from-position);
    --tw-gradient-to: rgba(var(--primary-lighter), 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.to-primaryDarker {
    --tw-gradient-to: rgb(var(--primary-darker)) var(--tw-gradient-to-position);
}
.bg-gradient-radial {
    background-image: radial-gradient(var(--tw-gradient-stops));
}
.font-pairing-secondary h1, .font-pairing-secondary h2, .font-pairing-secondary h3, .font-pairing-secondary h4, .font-pairing-secondary h5, .font-pairing-secondary h6{
    font-family: "Montserrat", sans-serif;
}
.font-pairing-primary{font-family: "Archivo", sans-serif;}
@media (min-width: 768px) {
    .md\:rounded-dynamic {
        border-radius: var(--roundedness);
    }
	.headerlogo{width:130px;}
	.headerlogo>.w-fit{width: 100%;}
}

.grab-contact-form input[type="text"],
.grab-contact-form input[type="email"],
.grab-contact-form input[type="tel"],
.grab-contact-form textarea,
.grab-contact-form select {
  width: 100%;
  border-radius: 6px;
  outline: none;
  padding: 12px;
  border: 1px solid #e5e7eb;
  box-shadow: none;
  transition: border-color 0.15s;
  font-size: 15px;
  box-sizing: border-box;
}

.grab-contact-form input:focus,
.grab-contact-form textarea:focus,
.grab-contact-form select:focus {
  outline: none;
  border: 2px solid #111827;
  box-shadow: none;
}

.grab-contact-form input.border-red-600,
.grab-contact-form input[aria-invalid="true"] {
  border-color: #dc2626;
}

.grab-contact-form .gform_button {
  margin-top: 16px;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 6px;
  background-color: #061325;   /* replace with your brand color */
  padding: 12px 16px;
  font-size: 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s;
}

.grab-contact-form .gform_button:hover {
  background-color: #061325;  /* replace with darker shade */
}

.grab-contact-form-submit-btn:disabled {
  pointer-events: none;
  background-color: #d1d5db;
  color: #6b7280;
  cursor: not-allowed;
}

footer.to-primaryDarker {
    --tw-gradient-to: rgb(var(--primary-darker)) var(--tw-gradient-to-position);
}
footer.from-primary {
    --tw-gradient-from: rgb(var(--primary-color)) var(--tw-gradient-from-position);
    --tw-gradient-to: rgba(var(--primary-color), 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

footer.bg-gradient-to-b {
   background: linear-gradient(to bottom, #061325 0%, #000102 100%);
}

/* ── Backdrop ── */
.grab-header-popup {
  animation: popupFadeIn 0.2s ease;
}

.grab-header-popup-backdrop {
  background: rgba(10, 20, 40, 0.72);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

@keyframes popupFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ── Panel ── */
[data-popup-panel] {
  border-radius: 16px !important;
  padding: 40px 40px 32px !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.3) !important;
  animation: panelSlideUp 0.25s ease;
	    height: 90vh;
    overflow-y: auto;
    max-width: 600px;
    margin: 0 auto;
    background: #ffffff;
    flex-direction: column;
	align-items: start;
    justify-content: start;
	top: 5vh;
}
#grab-header-popup>button[aria-label="Close popup"]{display:none;}

@keyframes panelSlideUp {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Close button ── */
[data-popup-close] button,
button[aria-label="Close popup"] {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid #e5e7eb;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s, border-color 0.15s;
}

button[aria-label="Close popup"]:hover {
  background: #f3f4f6;
  border-color: #d1d5db;
}

/* ── Title ── */
#grab-header-popup-title {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #0c2340 !important;
  margin-bottom: 4px !important;
  font-family: Georgia, 'Times New Roman', serif !important;
}

/* ── Form wrapper ── */
.grab-header-popup-form {
  margin-top: 20px;
}

/* ── Field labels ── */
.grab-header-popup-form .gfield_label,
.grab-header-popup-form .gform-field-label {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #374151 !important;
  margin-bottom: 5px !important;
}

/* ── All inputs, textarea, select ── */
.grab-header-popup-form input[type="text"],
.grab-header-popup-form input[type="email"],
.grab-header-popup-form input[type="tel"],
.grab-header-popup-form textarea,
.grab-header-popup-form select {
  width: 100% !important;
  box-sizing: border-box !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 10px 13px !important;
  font-size: 14px !important;
  color: #111827 !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.15s, background 0.15s !important;
  -webkit-appearance: none;
  appearance: none;
}

/* ── Focus state ── */
.grab-header-popup-form input[type="text"]:focus,
.grab-header-popup-form input[type="email"]:focus,
.grab-header-popup-form input[type="tel"]:focus,
.grab-header-popup-form textarea:focus,
.grab-header-popup-form select:focus {
  border-color: #0ea5e9 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.12) !important;
}

/* ── Validation error state ── */
.grab-header-popup-form .gfield_error input,
.grab-header-popup-form .gfield_error textarea,
.grab-header-popup-form .gfield_error select {
  border-color: #dc2626 !important;
  background: #fff7f7 !important;
}

.grab-header-popup-form .validation_message {
  font-size: 12px !important;
  color: #dc2626 !important;
  margin-top: 4px !important;
}

/* ── Textarea ── */
.grab-header-popup-form textarea {
  min-height: 90px !important;
  resize: vertical !important;
	height:90px;
}

/* ── Gravity Forms field spacing ── */
.grab-header-popup-form .gfield {
  margin-bottom: 14px !important;
}

/* ── Address sub-labels ── */
.grab-header-popup-form .gform-field-label--type-sub {
  font-size: 10px !important;
  color: #9ca3af !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  margin-top: 4px !important;
}

/* ── Submit button ── */
.grab-header-popup-form .gform_button,
.grab-header-popup-form input[type="submit"] {
  width: 100% !important;
  background: #0c2340 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 13px 20px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  cursor: pointer !important;
  transition: background 0.2s, transform 0.1s !important;
  margin-top: 6px !important;
}

.grab-header-popup-form .gform_button:hover,
.grab-header-popup-form input[type="submit"]:hover {
  background: #1a3a5c !important;
}

.grab-header-popup-form .gform_button:active,
.grab-header-popup-form input[type="submit"]:active {
  transform: scale(0.98) !important;
}
.grab-navbar-variant-0 {
    background-color: transparent !important;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    box-shadow: none !important;
    transition: all 0.3s ease !important;
}
.grab-navbar-variant-0 .grab-navbar-variant-0-logo span, .grab-navbar-variant-0 .grab-navbar-variant-0-menu-items-list-item, .grab-navbar-variant-0 .grab-navbar-variant-0-mobile-menu-button {
    color: white !important;
    transition: color 0.3s ease !important;
}
.grab-navbar-variant-0 a[href*="tel:"] {
    background-color: transparent !important;
    border-color: white !important;
    color: white !important;
    transition: all 0.3s ease !important;
}
.grab-navbar-variant-0.scrolled {
    background-color: rgb(var(--primary-color)) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
}
.grab-hero-section {
    padding-top: 4rem;
}
.max-w-5xl {
    max-width: 64rem;
}
.grab-service-hero {
    height: 700px;
	 padding-top: 10rem;
    padding-bottom: 5rem;
}
.grab-contact-section, section.bg-primaryLighter.pb-36.pt-20 {
    padding-top: 10rem;
}
.grab-service-hero-container-content .grab-cta-buttons-primary{line-height:normal;}

/* ── Mobile ── */
@media (max-width:1024px){
	.grab-navbar-variant-0 .grab-navbar-variant-0-logo span, .grab-navbar-variant-0 .grab-navbar-variant-0-menu-items-list-item {
        --tw-text-opacity: 1;
    color: rgb(12 13 15 / var(--tw-text-opacity, 1)) !important;
    transition: color 0.3s ease !important;
}
	.grab-navbar-variant-0 #grab-mobile-menu a[href*="tel:"]{
		border-color: #000000 !important;
    color: #000000 !important;
	}
}
@media (max-width:640px){
	.grab-footer-container{padding-bottom: 7rem;}
}
@media (max-width: 480px) {
  [data-popup-panel] {
    padding: 28px 20px 24px !important;
    border-radius: 12px !important;
  }
  #grab-header-popup-title {
    font-size: 20px !important;
  }
}