/* =========================================================
   TalkMoney — Contact Page Additions
   Extends style.css. Does not override any existing rules.
   ========================================================= */

/* =========================================================
   Background correction — Contact & Thank You pages only.
   Pulls the decorative currency/tech pattern to a soft,
   low-opacity fixed layer so it never sits directly behind
   text, cards, the form, the map, or the success message.
   Individual content sections get a clean, opaque backdrop.
   ========================================================= */
body{
  background-color:#FBF6EC;
  background-image:none;
}
.bg-decor{
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-color:#FBF6EC;
  background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0ODAiIGhlaWdodD0iNDIwIiB2aWV3Qm94PSIwIDAgNDgwIDQyMCI+CjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0UwQzY4RCIgc3Ryb2tlLXdpZHRoPSIxLjQiIG9wYWNpdHk9IjAuOSI+Cjx0ZXh0IHg9IjIwIiB5PSI0MCIgZm9udC1mYW1pbHk9IkFyaWFsIiBmb250LXNpemU9IjI2IiBmaWxsPSIjRTBDNjhEIiBzdHJva2U9Im5vbmUiPiQ8L3RleHQ+Cjx0ZXh0IHg9IjQyMCIgeT0iNzAiIGZvbnQtZmFtaWx5PSJBcmlhbCIgZm9udC1zaXplPSIyMiIgZmlsbD0iI0UwQzY4RCIgc3Ryb2tlPSJub25lIj4kPC90ZXh0Pgo8dGV4dCB4PSIyNTAiIHk9IjMwIiBmb250LWZhbWlseT0iQXJpYWwiIGZvbnQtc2l6ZT0iMjAiIGZpbGw9IiNFMEM2OEQiIHN0cm9rZT0ibm9uZSI+JTwvdGV4dD4KPHRleHQgeD0iMTIwIiB5PSIxODAiIGZvbnQtZmFtaWx5PSJBcmlhbCIgZm9udC1zaXplPSIyNCIgZmlsbD0iI0UwQzY4RCIgc3Ryb2tlPSJub25lIj4kPC90ZXh0Pgo8dGV4dCB4PSIzNDAiIHk9IjIxMCIgZm9udC1mYW1pbHk9IkFyaWFsIiBmb250LXNpemU9IjIwIiBmaWxsPSIjRTBDNjhEIiBzdHJva2U9Im5vbmUiPuKCpjwvdGV4dD4KPHRleHQgeD0iNjAiIHk9IjMyMCIgZm9udC1mYW1pbHk9IkFyaWFsIiBmb250LXNpemU9IjIyIiBmaWxsPSIjRTBDNjhEIiBzdHJva2U9Im5vbmUiPuKCrDwvdGV4dD4KPHRleHQgeD0iNDAwIiB5PSIzNTAiIGZvbnQtZmFtaWx5PSJBcmlhbCIgZm9udC1zaXplPSIyMiIgZmlsbD0iI0UwQzY4RCIgc3Ryb2tlPSJub25lIj4kPC90ZXh0Pgo8Y2lyY2xlIGN4PSIyNjAiIGN5PSIxNDAiIHI9IjE0Ii8+CjxwYXRoIGQ9Ik0yNTMgMTQwIGgxNCBNMjYwIDEzMyB2MTQiLz4KPHJlY3QgeD0iMjAiIHk9IjIzMCIgd2lkdGg9IjM0IiBoZWlnaHQ9IjI0IiByeD0iMyIvPgo8cGF0aCBkPSJNMjAgMjM4IGgzNCIvPgo8cG9seWxpbmUgcG9pbnRzPSIxODAsMjYwIDIwMCwyMzAgMjIwLDI0NSAyNDUsMjAwIDI3MCwyMTUiLz4KPHBhdGggZD0iTTE1MCA2MCBsMTAgLTE0IGwxMCAxNCBNMTUwIDQ2IHYxNCIvPgo8cGF0aCBkPSJNMzAwIDI2MCB2LTMwIE0yOTIgMjYwIHYtMjAgTTMwOCAyNjAgdi00MCIvPgo8Y2lyY2xlIGN4PSI0MDAiIGN5PSIxMjAiIHI9IjE4Ii8+CjxwYXRoIGQ9Ik0zOTIgMTIwIGgxNiIvPgo8cGF0aCBkPSJNNDAgMTAwIGExNiAxNiAwIDEgMSAwLjEgMCIvPgo8cGF0aCBkPSJNNDIwIDMwMCBsMTQgMTAgbC00IC0xNiBsMTIgLTEwIGwtMTYgLTIgbC02IC0xNCBsLTYgMTQgbC0xNiAyIGwxMiAxMCB6IiB0cmFuc2Zvcm09InNjYWxlKDAuNSkgdHJhbnNsYXRlKDQwMCwxODApIi8+CjxwYXRoIGQ9Ik0xMDAgMzgwIGgyODAiIHN0cm9rZS1kYXNoYXJyYXk9IjIsNiIvPgo8L2c+Cjwvc3ZnPg==');
  background-repeat:repeat;
  background-size:480px 420px;
  opacity:.14;
}

/* Clean opaque backdrops for every text / form / card zone.
   The soft pattern from .bg-decor only remains visible in the
   narrow gaps between these sections — i.e. the outer edges. */
.page-hero{background:#FFFCF5 !important;}
.clean-section{background:#FFFDF9;}
.dept-section-bg{background:#FFFCF4 !important;}

/* Contact info cards */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.contact-card{border:1px solid var(--border);border-radius:16px;padding:30px 26px;background:#fff;transition:.28s ease;position:relative;z-index:1;box-shadow:0 6px 18px rgba(20,20,20,.04);}
.contact-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(26,160,93,.16);border-color:#1AA05D;}
.contact-card .service-icon{margin:0 0 18px;}
.contact-card h4{font-size:15px;margin:0 0 6px;font-weight:700;}
.contact-card p{font-size:13.5px;color:var(--gray);margin:0;line-height:1.55;}
.contact-card .edit-note{display:block;font-size:11px;color:#C9A55A;margin-top:6px;font-weight:600;}

/* Department directory */
.dept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.dept-card{border:1px solid var(--border);border-radius:16px;padding:30px 22px;text-align:center;background:#fff;transition:.28s ease;position:relative;z-index:1;box-shadow:0 6px 18px rgba(20,20,20,.04);}
.dept-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(245,129,31,.2);border-color:var(--orange);}
.dept-card .service-icon{margin:0 auto 18px;}
.dept-card h3{font-size:15px;margin:0 0 8px;font-weight:700;}
.dept-card p{font-size:12.5px;color:var(--gray);line-height:1.55;margin:0;}

/* Contact form layout */
.contact-form-wrap{display:grid;grid-template-columns:1fr;gap:0;}
.form-box .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.form-box .full-btn{width:100%;justify-content:center;padding:15px 26px;font-size:15.5px;border-radius:8px;}

/* Google Map */
.map-wrap{border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:0 16px 40px rgba(0,0,0,.08);position:relative;z-index:1;background:#fff;}
.map-wrap iframe{width:100%;height:380px;border:0;display:block;}

/* Social follow cards */

/* Dark CTA banner (AI assistant) */
.cta-band-dark{background:linear-gradient(135deg,#1A1A1A,#2E2E2E);border-radius:16px;padding:44px;text-align:center;color:#fff;position:relative;z-index:1;}
.cta-band-dark h2{font-size:26px;margin:0 0 12px;font-weight:800;}
.cta-band-dark p{font-size:14px;opacity:.85;margin:0 auto 22px;max-width:620px;}
.cta-band-dark .btn-outline{background:transparent;border-color:#fff;color:#fff;}
.cta-band-dark .btn-outline:hover{background:#fff;color:#111;}
.cta-band-dark .badge-soon{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);color:#fff;font-size:12px;font-weight:700;padding:8px 16px;border-radius:20px;margin-bottom:16px;}

/* Thank-you page */
.success-icon{width:96px;height:96px;border-radius:50%;background:#E8F8EF;color:#1AA05D;display:flex;align-items:center;justify-content:center;font-size:40px;margin:0 auto 24px;box-shadow:0 0 0 10px rgba(26,160,93,.08),0 14px 34px rgba(26,160,93,.22);}
.thankyou-message{padding:56px 40px;}
.thankyou-actions{display:flex;gap:14px;justify-content:center;margin-top:30px;flex-wrap:wrap;}

/* Ensure content sections sit cleanly above the decorative background pattern */
.contact-info-item,.form-box,.cta-band,.cta-band-dark,.map-wrap,.dept-card,.contact-card,
@media(max-width:900px){
  .contact-grid,.dept-grid{grid-template-columns:1fr 1fr;}
  .form-box .form-row{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .contact-grid,.dept-grid{grid-template-columns:1fr;}
}
