.elementor-235 .elementor-element.elementor-element-ca0aad3{--display:flex;}.elementor-235 .elementor-element.elementor-element-e3fbd0e{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for shortcode, class: .elementor-element-9951b09 *//* ===================================================
   GRUNN CONTACT FORM — v2
   Prefix: .gcf
   Paste into: Appearance > Customize > Additional CSS
   Use shortcode [grunn_contact_form] on any page
   =================================================== */

.gcf-page {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 0;
  border: 1px solid #1c1a17;
  font-family: 'DM Sans', sans-serif;
  color: #1c1a17;
  background: #f6f4f0;
}

/* Left panel */
.gcf-intro {
  padding: 56px 48px;
  border-right: 1px solid #1c1a17;
  background: #1c1a17;
  color: #f6f4f0;
}
.gcf-eyebrow {
  font-size: 13px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #7a9683;
  font-weight: 600;
  margin-bottom: 20px;
}
.gcf-intro h2 {
  font-family: 'Libre Baskerville', serif;
  font-weight: 400;
  font-size: clamp(24px, 2.4vw, 30px);
  line-height: 1.25;
  margin: 0 0 16px;
}
.gcf-intro p {
  font-size: 15px;
  line-height: 1.65;
  color: #cfc9bd;
  margin: 0;
}
.gcf-intro-divider {
  height: 1px;
  background: #3a3730;
  margin: 36px 0;
}
.gcf-intro-alt-label {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #a8a297;
  margin-bottom: 10px;
}
.gcf-book-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #f6f4f0;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid #2d5a3d;
  padding-bottom: 3px;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.gcf-book-link:hover {
  color: #7a9683;
  border-color: #7a9683;
}
.gcf-trust-list {
  list-style: none;
  margin: 40px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gcf-trust-list li {
  font-size: 13px;
  color: #a8a297;
  padding-left: 20px;
  position: relative;
}
.gcf-trust-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 7px;
  width: 8px;
  height: 1px;
  background: #7a9683;
}

/* Right panel: form */
.gcf-wrap {
  padding: 56px 48px;
}

.gcf-notice {
  padding: 16px 20px;
  margin-bottom: 24px;
  font-size: 14px;
  border: 1px solid #1c1a17;
}
.gcf-notice-success {
  background: #eef3ee;
  border-color: #2d5a3d;
  color: #2d5a3d;
}
.gcf-notice-error {
  background: #f7ecec;
  border-color: #9a3b3b;
  color: #9a3b3b;
}

.gcf-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.gcf-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.gcf-field label {
  display: block;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5a5650;
  margin-bottom: 8px;
}
.gcf-required {
  color: #2d5a3d;
}

.gcf-field input,
.gcf-field textarea,
.gcf-field select {
  width: 100%;
  border: 1px solid #1c1a17;
  background: #ffffff;
  padding: 12px 14px;
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  color: #1c1a17;
  border-radius: 0;
  appearance: none;
}
.gcf-field select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231c1a17' stroke-width='1.5' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}
.gcf-field textarea {
  resize: vertical;
}
.gcf-field input:focus,
.gcf-field textarea:focus,
.gcf-field select:focus {
  outline: none;
  border-color: #2d5a3d;
  box-shadow: 0 0 0 1px #2d5a3d;
}

/* Honeypot field, hidden from real visitors, left visible to bots that ignore CSS */
.gcf-honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.gcf-submit {
  align-self: flex-start;
  background: #2d5a3d;
  color: #f6f4f0;
  border: 1px solid #2d5a3d;
  padding: 16px 32px;
  font-size: 15px;
  letter-spacing: 0.04em;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.gcf-submit:hover {
  background: #1c1a17;
  border-color: #1c1a17;
}

/* ===================================================
   RESPONSIVE
   =================================================== */

@media (max-width: 1024px) {
  .gcf-page {
    grid-template-columns: 1fr;
  }
  .gcf-intro {
    border-right: none;
    border-bottom: 1px solid #1c1a17;
  }
}

@media (max-width: 640px) {
  .gcf-intro,
  .gcf-wrap {
    padding: 36px 24px;
  }
  .gcf-row {
    grid-template-columns: 1fr;
  }
  .gcf-submit {
    width: 100%;
  }
  .gcf-trust-list {
    margin-top: 28px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a93d485 *//* =========================
   FOOTER v2 — CTA LED (GRUNN)
   ========================= */

.grunn-footer2{
  background:
    radial-gradient(900px 420px at 18% 10%, rgba(120,110,255,0.10), transparent 60%),
    #0c0d0f;
  padding: 70px 22px 0;
}

.grunn-footer2__inner{
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.25fr 0.85fr;
  gap: 44px;
  align-items: start;
}

/* Brand */
.grunn-footer2__name{
  font-size: 14px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.92);
}

.grunn-footer2__tag{
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.5;
  color: rgba(255,255,255,0.86);
}

.grunn-footer2__sub{
  margin-top: 8px;
  font-size: 14.5px;
  line-height: 1.6;
  color: rgba(255,255,255,0.70);
  max-width: 52ch;
}

/* CTA buttons */
.grunn-footer2__cta{
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.grunn-footer2__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 14px;
  line-height: 1;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.grunn-footer2__btn--primary{
  background: rgba(255,255,255,0.92);
  color: rgba(12,13,15,0.95);
  border: 1px solid rgba(255,255,255,0.30);
}

.grunn-footer2__btn--primary:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.98);
}

.grunn-footer2__btn--ghost{
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.16);
}

.grunn-footer2__btn--ghost:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.22);
}

/* Social pills */
.grunn-footer2__social{
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.grunn-footer2__pill{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.90);
  text-decoration: none;
  font-size: 13px;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.grunn-footer2__pill:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.22);
}

/* Links */
.grunn-footer2__links{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
}

.grunn-footer2__label{
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.70);
  margin-bottom: 12px;
}

.grunn-footer2__link{
  display: block;
  padding: 8px 0;
  text-decoration: none;
  color: rgba(255,255,255,0.86);
  transition: color 160ms ease;
}

.grunn-footer2__link:hover{
  color: rgba(255,255,255,1);
}

/* Bottom bar */
.grunn-footer2__bottom{
  margin-top: 46px;
  border-top: 1px solid rgba(255,255,255,0.10);
  padding: 18px 0;
}

.grunn-footer2__bottom-inner{
  max-width: 1180px;
  margin: 0 auto;
  color: rgba(255,255,255,0.62);
  font-size: 13px;
}

/* Mobile */
@media (max-width: 900px){
  .grunn-footer2{
    padding: 58px 16px 0;
  }

  .grunn-footer2__inner{
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .grunn-footer2__links{
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* Hard visibility lock for your site */
footer.grunn-footer2, footer.grunn-footer2 *{
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}
/* =========================
   FOOTER v2 — VISIBILITY FIX (PASTE LAST)
   ========================= */

footer.grunn-footer2,
footer.grunn-footer2 *{
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  text-shadow: none !important;
}

/* Column labels */
footer.grunn-footer2 .grunn-footer2__label{
  color: rgba(255,255,255,0.78) !important;
}

/* Links */
footer.grunn-footer2 .grunn-footer2__link{
  color: rgba(255,255,255,0.90) !important;
}

footer.grunn-footer2 .grunn-footer2__link:hover{
  color: rgba(255,255,255,1) !important;
}

/* Make sure the whole links area is not being dimmed */
footer.grunn-footer2 .grunn-footer2__links,
footer.grunn-footer2 .grunn-footer2__col{
  opacity: 1 !important;
}

/* Pills and ghost button need more contrast */
footer.grunn-footer2 .grunn-footer2__pill,
footer.grunn-footer2 .grunn-footer2__btn--ghost{
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(255,255,255,0.26) !important;
  color: rgba(255,255,255,0.92) !important;
}

/* Prevent any overlay pseudo elements from dimming content */
footer.grunn-footer2::before,
footer.grunn-footer2::after,
footer.grunn-footer2 *::before,
footer.grunn-footer2 *::after{
  opacity: 0.15 !important;
}/* End custom CSS */