.contact-hero{position:relative;display:flex;align-items:flex-end;min-height:535px;padding-bottom:30px;overflow:hidden;background:linear-gradient(90deg,#ad8459 0 50%,#070403 50%);text-align:center}.contact-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgb(0 0 0/.5),rgb(0 0 0/.5)),var(--contact-hero-image, none) center -29px/min(100%,1440px) auto no-repeat;pointer-events:none}.contact-hero::after{content:"";position:absolute;top:69px;bottom:0;left:50%;width:min(100% - (2 * var(--gutter)),var(--container));transform:translateX(-50%);border-inline:1px solid rgb(255 255 255/.4);pointer-events:none}.contact-hero__content{height: 100%; position:relative;display:flex;justify-content: flex-end; flex-direction:column;align-items:center;gap:16px;width:min(100% - (2 * var(--gutter)),var(--container))}.contact-hero .eyebrow{margin:0;padding-top:1px;line-height:1.3}.contact-hero h1{font-size:40px;line-height:1.3;margin:0}.contact-hero .accent-rule{width:200px;margin:0}.contact-hero__content>p:last-child{width:100%;margin:0;color:var(--silver);font-size:18px;font-weight:500;line-height:1.5}.inquiry{background:var(--ink)}.inquiry h2{margin:0}.inquiry .accent-rule{width:200px;margin:8px 0 24px}.inquiry__intro{display:grid;grid-template-columns:743px 481px;gap:56px;align-items:start}.inquiry__intro>div>p:not(.eyebrow){max-width:524px;color:var(--silver)}.inquiry__promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;list-style:none;padding:0;margin:24px 0 0}.inquiry__promises li{display:flex;gap:12px;color:var(--silver);font-size:16px}.inquiry__promises span{color:var(--green);font-size:24px}.inquiry__quote{margin:0;padding:32px;border:1px solid rgb(255 255 255/.3);border-radius:8px;background:rgb(255 255 255/.07);backdrop-filter:blur(30px); display: flex; flex-direction: column; align-items: center; min-height: auto !important; text-align: center;}.inquiry__quote p{margin:24px 0 32px}.inquiry__signature{display:block;width:123px;height:auto}.inquiry__form{display:grid;gap:32px;margin-top:48px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-field{display:grid;gap:8px}.inquiry__form label{display: inline-block; font-size:16px;font-weight:500; line-height: 150%; padding-bottom: 8px;}.inquiry__form input,.inquiry__form select,.inquiry__form textarea{width:100%;padding:16px 24px;border:1px solid #3b3b3b;border-radius:8px;background:#1c1c1c;color:var(--off);font-size:14px;font-weight:500}.inquiry__form textarea{min-height:201px;resize:vertical}.form-actions{display:flex;flex-direction:column;align-items:center;gap:16px}.form-actions .button{align-self:center}.form-actions p{margin:0;color:var(--silver);font-size:14px}.footer__thanks{color:var(--green)!important;font-weight:700}
@media(max-width:1024px){.inquiry__intro{grid-template-columns:minmax(0,1fr) 380px;gap:48px}.inquiry__promises{grid-template-columns:1fr}.contact-hero{min-height:535px}.contact-hero::before{background:linear-gradient(rgb(0 0 0/.5),rgb(0 0 0/.5)),var(--contact-hero-image, none) center/cover no-repeat}.inquiry__form input,.inquiry__form select,.inquiry__form textarea{font-size:16px}}
@media(max-width:900px){.inquiry__intro{grid-template-columns:1fr}.inquiry__quote{order:2}.inquiry__promises{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:768px){.contact-hero{min-height:430px}.contact-hero h1{font-size:32px}.form-row{grid-template-columns:1fr}.inquiry__promises{grid-template-columns:1fr}.footer__links{overflow-wrap:anywhere}}
@media(max-width:480px){.contact-hero{min-height:390px;padding-bottom:24px}.contact-hero h1{font-size:28px}.contact-hero .accent-rule{width:120px}.contact-hero__content>p:last-child{font-size:16px}.inquiry__quote{padding:24px}.form-actions{text-align:center}.form-actions .button{width:100%;justify-content:center}}
.inquiry__intro>*{min-width:0}
@media(min-width:1025px) and (max-width:1439px){.inquiry__intro{grid-template-columns:minmax(0,1fr) minmax(380px,481px);gap:min(56px,4vw)}}
.inquiry{padding-bottom:120px}.inquiry__promises img{width:auto;height:40px;flex:none}.inquiry__quote img.inquiry__quote-mark{width:42px;height:32px}.footer__links{padding-block:60px}.copyright{padding-block:13px}
html{--promo-height:40px}body>.promo{min-height:40px;padding-block:0}

/* Figma 21638:7949 — exact inquiry typography and component rhythm. */
.inquiry__intro .eyebrow {
    color: #387820;
}
.inquiry h2 .dot {
    color: #387820;
}
.inquiry__intro>div>p:not(.eyebrow){
  margin:16px 0 0;
  font-size:18px;
  font-weight:500;
  line-height:1.5;
}
.inquiry__promises li{
  align-items:center;
  font-weight:500;
  line-height:1.5;
  position: relative;
}
.inquiry__promises li:not(:last-child)::after {
    content: '';
    width: 1px;
    height: 100%;
    background-color: #FFFFFF1A;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -24px;
}
.inquiry__quote{min-height:275px}
.inquiry__quote p{
  color:var(--off);
  font-weight:500;
  line-height:1.3;
}
.inquiry__form select{appearance:auto}
.inquiry__form select option{
  background:#1c1c1c;
  color:var(--off);
}

.inquiry__form input::placeholder, .inquiry__form select, .inquiry__form textarea::placeholder,
.inquiry__form input:focus {
	color: #C0C1C3;
}

.inquiry__form select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 20px 20px;
    padding-right: 50px;
}

.form-actions p{
  font-weight:500;
  line-height:1.5;
}

.form-field p {
    margin-bottom: 0;
}

@media(max-width:1366px){
	.contact-hero {
		height: 550px !important;
		min-height: 550px !important;
	}
	.inquiry__intro>div>p:not(.eyebrow),
	.inquiry__quote p,
	.contact-hero__content > p:last-child {
		font-size: 17px !important;
	}
	.inquiry__promises {
		gap: 24px;
	}
	.inquiry__promises img {
		height: 34px;
	}
	.inquiry__promises li:not(:last-child)::after {
		right: -14px;
	}
	.inquiry__promises li {
		font-size: 15px;
	}
}

@media(max-width:1295px) {
	.inquiry__promises li:nth-child(2)::after {
		content: unset;
	}
}

@media(max-width:906px) {
	.inquiry__promises li:first-child::after {
		content: unset;
	}
}

@media(max-width:1199px){
	.inquiry__promises li {
		font-size: 14px;
	}
	.contact-hero {
		height: 550px !important;
		min-height: 550px !important;
	}
}

@media(max-width:768px){
	.inquiry__promises img {
		height: 28px;
	}
  	.inquiry__quote p{font-size:20px}
	.inquiry__form input, .inquiry__form select, .inquiry__form textarea {
		padding: 12px 20px;
		font-size: 15px;
	}
	.inquiry__form label {
		font-size: 15px;
		padding-bottom: 6px;
	}
	.inquiry__form {
		gap: 20px;
		margin-top: 40px;
	}
	.form-row {
		gap: 20px;
	}
}
@media(max-width:480px){
	.inquiry h2 {
		font-size: 24px;
	}
   .inquiry__quote p {font-size:18px}
	.inquiry__intro>div>p:not(.eyebrow), .inquiry__quote p {
		font-size: 16px !important;
	}
	.inquiry {
		padding-bottom: 48px;
	}
}

/* Keep the responsive banner below the hero navigation and preserve Danny's
   head by anchoring the image crop to its top edge. */
.contact-hero{margin-top:var(--hero-header-height)}
@media(max-width:1024px){
  .contact-hero::before{background-position:center top}
}

/* The Figma header frame includes its 80px navigation overlay. Since this
   build renders navigation as a separate row, subtract it from each tier. */
.contact-hero{min-height:600px}
.contact-hero::after{top:0}
@media(max-width:768px){.contact-hero{min-height:350px}}
@media(max-width:480px){.contact-hero{min-height:310px}}


/* Dynamic Contact-page collections and Contact Form 7 states. */
.inquiry__promises{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
.inquiry__form .wpcf7-form-control-wrap{display:block}
.inquiry__form .wpcf7-not-valid-tip{margin-top:8px;color:#ff8b8b;font-size:14px;line-height:1.4}
.inquiry__form .wpcf7-response-output{margin:0;padding:16px 24px;border-radius:8px;color:var(--off)}
.inquiry__form.submitting .wpcf7-submit{opacity:.65;pointer-events:none}
@media(max-width:768px){.inquiry__promises{grid-template-columns:1fr}}


/* =========================================================
   CONTACT HERO
   Figma node: 22125:984
   Master desktop frame: 1440 × 606
   ========================================================= */

.contact-hero {
	position: relative;
	display: block;
	margin-top: var(--hero-header-height);
	padding: 0;
	overflow: hidden;
	background: #000;
	text-align: left;
	isolation: isolate;
}

/* Dynamic SCF background image */
.contact-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: var(--contact-hero-image, none);
	background-repeat: no-repeat;
	pointer-events: none;
}

/* Remove the old vertical border and overlay */
.contact-hero::after {
	display: none;
	content: none;
}

/* Content wrapper */
.contact-hero__content {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
    max-width: none;
    margin-inline: auto;
    text-align: left;
}

/* Eyebrow */
.contact-hero .eyebrow {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	margin: 0 0 16px;
	padding: 0;
	color: #4bbf19;
	font-family: "Montserrat", sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	text-transform: uppercase;
}

/* Eyebrow green dot */
.contact-hero .eyebrow::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	flex: 0 0 12px;
	border-radius: 50%;
	background: #387820;
}

/* Heading */
.contact-hero h1 {
	width: 563px;
	max-width: 100%;
	margin: 0;
	color: #f7f7f7;
	font-family: "Montserrat", sans-serif;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
	text-align: left;
}

/* Preserve the intentional heading line break */
.contact-hero h1 br {
	display: block;
}

/* Accent line */
.contact-hero .accent-rule {
	display: block;
	width: 63px;
	height: 3px;
	flex: 0 0 3px;
	margin: 16px 0 12px;
	border: 0;
	border-radius: 2px;
	background: #387820;
}

/* Hero description */
.contact-hero__content > p:last-child {
	width: 549px;
	max-width: 100%;
	margin: 0;
	color: #f0f0f0;
	font-family: "Montserrat", sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0;
	text-align: left;
}

/* =========================================================
   DESKTOP
   Use the 1440px Figma composition for every desktop width.
   ========================================================= */

@media (min-width: 1025px) {
	.contact-hero {
		height: 606px;
		min-height: 606px;
	}

	.contact-hero::before {
		background-position: center center;
		background-size: cover;
	}
}

/*
 * Wider than the Figma frame:
 * keep the artwork at 1440 × 606 instead of enlarging it.
 */
/* Image always covers the full browser width */
.contact-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: var(--contact-hero-image, none);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	pointer-events: none;
}

/* Text remains positioned according to the 1440px Figma frame */
@media (min-width: 1025px) {
	.contact-hero {
		height: 606px;
		min-height: 606px;
	}
}

/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 769px) and (max-width: 1024px) {
	.contact-hero {
		height: 460px;
		min-height: 460px;
	}

	.contact-hero::before {
		background-position: 62% center;
		background-size: cover;
	}

	.contact-hero__content {
		box-sizing: border-box;
		width: 100%;
		padding: 0 40px 0;
	}

	.contact-hero .eyebrow {
		margin-bottom: 14px;
		font-size: 18px;
	}

	.contact-hero .eyebrow::before {
		width: 10px;
		height: 10px;
		flex-basis: 10px;
	}

	.contact-hero h1 {
		width: 500px;
		font-size: 36px;
	}

	.contact-hero .accent-rule {
		margin: 14px 0 12px;
	}

	.contact-hero__content > p:last-child {
		width: 520px;
		font-size: 17px;
	}
}

/* =========================================================
   SMALL TABLET
   ========================================================= */

@media (min-width: 481px) and (max-width: 768px) {
	.contact-hero {
		height: 420px !important;
		min-height: 420px !important;
	}

	.contact-hero::before {
		background-position: 68% center;
		background-size: cover;
	}

	.contact-hero__content {
		box-sizing: border-box;
		width: 100%;
		padding: 0 20px 0;
	}

	.contact-hero .eyebrow {
		margin-bottom: 12px;
		font-size: 16px;
	}

	.contact-hero .eyebrow::before {
		width: 9px;
		height: 9px;
		flex-basis: 9px;
	}

	.contact-hero h1 {
		width: 420px;
		font-size: 32px;
	}

	.contact-hero .accent-rule {
		margin: 12px 0;
	}

	.contact-hero__content > p:last-child {
		width: 420px;
		font-size: 16px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 480px) {
	.contact-hero {
		height: 390px !important; 
		min-height: 390px !important;
	}

	.contact-hero::before {
		background-position: 80% center;
		background-size: cover;
	}

	.contact-hero__content {
		box-sizing: border-box;
		width: 100%;
		padding: 0 20px 0;
	}

	.contact-hero .eyebrow {
		gap: 8px;
		margin-bottom: 10px;
		font-size: 14px;
	}

	.contact-hero .eyebrow::before {
		width: 8px;
		height: 8px;
		flex-basis: 8px;
	}

	.contact-hero h1 {
		width: 100%;
		font-size: 28px;
		line-height: 1.25;
	}

	.contact-hero .accent-rule {
		width: 63px;
		margin: 12px 0;
	}

	.contact-hero__content > p:last-child {
		width: 100%;
		font-size: 16px !important;
		line-height: 1.5;
	}
}
