/* Go Wild Expedition: homepage quote, scoped design. */
body.home .esn-cta-features { display:none !important; }
.gweq-section { position:relative; padding:clamp(46px,6vw,100px) 20px clamp(58px,6vw,100px); background:#fbfaf6; color:#243c2e; overflow:hidden; }
.gweq-section, .gweq-section * { box-sizing:border-box; }
.gweq-shell { position:relative; display:grid; grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr); gap:clamp(20px,3.1vw,48px); max-width:1238px; margin:0 auto; align-items:stretch; }
.gweq-welcome { position:relative; display:flex; flex-direction:column; isolation:isolate; min-height:742px; overflow:hidden; background:linear-gradient(162deg,#f3f5e9 0%,#edf2e5 53%,#e5eddb 100%); border:1px solid #e0e7d7; border-radius:25px; }
.gweq-welcome::before { content:"";position:absolute;z-index:-1;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(244,234,191,.57),rgba(244,234,191,0) 70%);top:15%;left:-16%;pointer-events:none; }
.gweq-welcome::after { content:""; position:absolute;left:0;right:0;bottom:0;height:145px;z-index:-1;background:linear-gradient(180deg,rgba(225,235,211,0),rgba(208,225,199,.8));pointer-events:none; }
.gweq-line { position:absolute; width:160px;height:1px;background:#b8c6aa;right:32px;top:40px;opacity:.6; }
.gweq-welcome-copy { position:relative;z-index:2;padding:clamp(32px,4vw,58px) clamp(28px,4.2vw,61px) 0;max-width:595px; }
.gweq-eyebrow { display:block;font-family:Raleway,Arial,sans-serif;font-size:11px;font-weight:800;color:#657d59;letter-spacing:2.1px;margin-bottom:19px; }
.gweq-welcome h2 { font-family:Georgia,'Times New Roman',serif;font-size:clamp(33px,3.2vw,49px);line-height:1.14;font-weight:500;letter-spacing:-1.5px;color:#204a31;margin:0 0 20px;max-width:490px; }
.gweq-promise { font-family:Georgia,serif;font-size:clamp(18px,1.7vw,24px);line-height:1.35;color:#466a45;margin:0 0 15px;max-width:420px;font-weight:500; }
.gweq-description { font-family:Raleway,Arial,sans-serif;font-size:15px;line-height:1.85;color:#3f5447;margin:0;max-width:460px;font-weight:500; }
.gweq-portrait { position:relative;margin-top:auto;min-height:365px;height:clamp(365px,34vw,475px);width:100%;display:flex;align-items:flex-end;justify-content:center;z-index:1; }
.gweq-portrait img { display:block;max-height:100%;max-width:100%;height:100%;width:auto;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 10px 20px rgba(35,57,29,.12)); }
.gweq-landscape { position:absolute;bottom:0;left:0;right:0;height:105px;opacity:.6;pointer-events:none;background:linear-gradient(160deg,transparent 53%,#c5d6b9 53.25%,#c5d6b9 54%,transparent 54.25%) 0 10px/75% 100% no-repeat,linear-gradient(24deg,transparent 51%,#a3bb96 51.25%,#a3bb96 52%,transparent 52.25%) right 20px/84% 100% no-repeat;z-index:0; }
.gweq-form-side { align-self:center;background:#ffffff;border:1px solid #e5eade;border-radius:25px;padding:clamp(27px,4vw,52px);box-shadow:0 15px 55px rgba(33,63,42,.045); }
.gweq-form-kicker { display:block;color:#7a9370;font:800 11px Raleway,Arial,sans-serif;letter-spacing:2px;margin-bottom:13px; }
.gweq-form-head h3 { margin:0 0 13px;font:500 clamp(26px,2.5vw,37px)/1.18 Georgia,serif;color:#214f34;letter-spacing:-.7px; }
.gweq-form-head p { margin:0 0 29px;color:#526656;line-height:1.75;font:500 15px/1.75 Raleway,Arial,sans-serif; }
.gweq-quote-fields, .gweq-form .wpcf7 { width:100%; }
.gweq-quote-row { display:grid;grid-template-columns:1fr 1fr;gap:17px; }
.gweq-quote-field { display:block;margin-bottom:19px;color:#294431;font:700 13px/1.55 Raleway,Arial,sans-serif; }
.gweq-quote-field>span[aria-hidden] {color:#a6583b;}
.gweq-quote-field .wpcf7-form-control-wrap {display:block;margin-top:8px;}
.gweq-form :is(input[type="text"],input[type="email"],textarea) { display:block;width:100%;max-width:100%;min-width:0;appearance:none;border:1px solid #d7e0d4 !important;border-radius:9px;background:#fbfcf9 !important;padding:14px 15px !important;min-height:50px;box-shadow:none !important;color:#233d2e !important;font:500 14px/1.5 Raleway,Arial,sans-serif !important;transition:border-color .2s,box-shadow .2s; }
.gweq-form :is(input[type="text"],input[type="email"],textarea)::placeholder { color:#829387;opacity:1;font-weight:400; }
.gweq-form textarea { resize:vertical; min-height:126px;max-height:420px; }
.gweq-form :is(input[type="text"],input[type="email"],textarea):focus { outline:2px solid transparent !important;border-color:#467a50 !important;box-shadow:0 0 0 3px rgba(70,122,80,.16) !important; }
.gweq-form .wpcf7-not-valid {border-color:#c05c49 !important;}
.gweq-form .wpcf7-not-valid-tip {font:600 12px/1.5 Raleway,Arial,sans-serif;color:#a33325;margin-top:6px;}
.gweq-form input.gwe-quote-submit { display:block;width:100%;min-height:55px;border:1px solid #205a37 !important;border-radius:9px;appearance:none;cursor:pointer;background:#205a37 !important;color:#fff !important;font:800 13px/1.2 Raleway,Arial,sans-serif !important;letter-spacing:.5px;text-transform:uppercase;padding:17px 24px;transition:background-color .2s,transform .2s; }
.gweq-form input.gwe-quote-submit:hover {background:#184b2d !important;transform:translateY(-1px);}
.gweq-form input.gwe-quote-submit:focus-visible {outline:3px solid #caa85f;outline-offset:3px;}
.gweq-form .wpcf7-spinner {margin:12px 0 0 12px;}
.gweq-form .wpcf7-response-output {margin:18px 0 0 !important;padding:13px 15px !important;border-radius:8px;line-height:1.55;font-size:13px;color:#274e34;border-width:1px !important;}
.gweq-privacy {text-align:center;font:500 12px/1.7 Raleway,Arial,sans-serif;color:#748276;margin:17px 2px 0;}
.gweq-privacy a {color:#215b38;text-decoration:underline;text-underline-offset:3px;}
@media (max-width:1000px) {.gweq-shell{grid-template-columns: minmax(0,.91fr) minmax(0,1.09fr);gap:18px}.gweq-welcome{min-height:780px}.gweq-welcome-copy{padding:35px 30px 0}.gweq-welcome h2{font-size:38px}.gweq-portrait{height:380px;min-height:380px}.gweq-form-side{padding:29px 27px}.gweq-quote-row{grid-template-columns:1fr;gap:0}}
@media (max-width:760px) {.gweq-section{padding:45px 16px 65px}.gweq-shell{grid-template-columns:1fr;gap:20px;max-width:540px}.gweq-welcome{min-height:0;border-radius:19px}.gweq-welcome-copy{padding:31px 27px 0}.gweq-welcome h2{font-size:clamp(32px,8vw,42px);letter-spacing:-1px}.gweq-promise{font-size:19px}.gweq-description{font-size:14px;line-height:1.8}.gweq-portrait{height:350px;min-height:350px;margin-top:14px}.gweq-form-side{border-radius:19px;padding:31px 24px}.gweq-form-head h3{font-size:31px}.gweq-quote-row{grid-template-columns:1fr;gap:0}}
@media (max-width:420px){.gweq-portrait{height:300px;min-height:300px}.gweq-form-side{padding:25px 19px}.gweq-welcome-copy{padding:28px 22px 0}.gweq-description{font-size:14px}.gweq-form-head h3{font-size:28px}.gweq-form :is(input[type="text"],input[type="email"],textarea){font-size:16px !important}}
@media(prefers-reduced-motion:reduce){.gweq-form input.gwe-quote-submit,.gweq-form :is(input[type="text"],input[type="email"],textarea){transition:none!important}.gweq-form input.gwe-quote-submit:hover{transform:none}}


/* 2026-10-11: Accessibility and desktop composition refinement.
 * Scoped exclusively to the homepage quotation section.
 * Preserve the original light palette, cards, layout and mobile composition.
 */
.gweq-welcome .gweq-eyebrow {
  color: #385b36;
  font-size: 14px;
  line-height: 1.5;
}
.gweq-welcome .gweq-promise { color: #35543a; }
.gweq-welcome .gweq-description {
  color: #3f5447;
  font-size: 16px;
  line-height: 1.85;
}
.gweq-form-side .gweq-form-kicker {
  color: #375c3d;
  font-size: 14px;
  line-height: 1.5;
}
.gweq-form-side .gweq-form-head p {
  color: #3e5142;
  font-size: 16px;
  line-height: 1.8;
}
.gweq-form .gweq-quote-fields,
.gweq-form .gweq-quote-row {
  display: block;
  width: 100%;
  min-width: 0;
}
/* Contact Form 7 inserts a paragraph around Name + Email. Do not
   let that paragraph become one half-width grid item. */
.gweq-form .gweq-quote-fields p {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  max-width: 100%;
}
.gweq-form .gweq-quote-fields br { display: none; }
.gweq-form .gweq-quote-field {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 0 20px;
  color: #294431;
  font-family: var(--esn-font-body, 'Raleway', sans-serif);
  font-weight: 700;
  font-size: 16px;
  line-height: 1.55;
}
.gweq-form .gweq-quote-field .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-top: 9px;
}
.gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea) {
  display: block;
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  min-height: 58px;
  padding: 16px 18px !important;
  border: 1px solid #768877 !important;
  border-radius: 12px;
  background: #fbfcf9 !important;
  color: #233d2e !important;
  font-family: var(--esn-font-body, 'Raleway', sans-serif) !important;
  font-size: 17px !important;
  font-weight: 500;
  line-height: 1.55 !important;
  box-shadow: none !important;
  transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea)::placeholder {
  color: #425747 !important;
  opacity: 1 !important;
  font-weight: 400;
}
.gweq-form .gweq-quote-field textarea {
  min-height: 194px;
  height: auto;
  resize: vertical;
}
.gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea):hover {
  border-color: #356447 !important;
  background: #ffffff !important;
}
.gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea):focus {
  border-color: #205a37 !important;
  outline: 2px solid #205a37 !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px rgba(32,90,55,.13) !important;
  background: #ffffff !important;
}
.gweq-form .gweq-quote-field .wpcf7-not-valid {
  border-color: #a33325 !important;
}
.gweq-form .wpcf7-not-valid-tip {
  color: #a33325;
  font-size: 16px;
  line-height: 1.6;
}
.gweq-form input.gwe-quote-submit {
  min-height: 60px;
  border-radius: 12px;
  font-size: 16px !important;
  line-height: 1.45;
  letter-spacing: .35px;
}
.gweq-form .wpcf7-response-output {
  color: #274e34;
  font-size: 16px;
  line-height: 1.65;
}
.gweq-form-side .gweq-privacy {
  color: #3e5142;
  font-size: 16px;
  line-height: 1.75;
}
.gweq-form-side .gweq-privacy a { color: #205a37; }
@media (min-width: 1001px) {
  .gweq-welcome .gweq-portrait {
    height: clamp(620px, 52vw, 735px);
    min-height: 620px;
  }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .gweq-welcome .gweq-portrait {
    height: clamp(505px, 58vw, 630px);
    min-height: 505px;
  }
}
@media (max-width: 760px) {
  .gweq-welcome .gweq-description { font-size: 16px; }
  .gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea) { font-size: 17px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .gweq-form .gweq-quote-field :is(input[type="text"], input[type="email"], textarea) { transition: none; }
}
