/* Contact page: reference-aligned two-column contact/form layout, EDEN branding. */
.eden-contact-page { color:#62452e;background:#fffdf9; }
.ec-title-band { background:linear-gradient(105deg,#f7f1e7,#eee1cd);border-top:1px solid #eee3d3;border-bottom:1px solid #e5d4b7;padding:44px 0; }
.ec-title-inner { display:flex;justify-content:space-between;gap:24px;align-items:center; }
.ec-title-band h1 { font-size:clamp(32px,3.8vw,48px);line-height:1.4;font-weight:700;margin:0; }
.ec-breadcrumb { display:flex;flex-wrap:wrap;gap:12px;font-size:14px;color:#977a56; }
.ec-content { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:start;padding-top:70px;padding-bottom:70px; }
.ec-info { padding:6px 0;min-width:0; }
.ec-kicker { color:#a17b49;font-size:12px;font-weight:600;letter-spacing:3px;margin-bottom:16px;display:block; }
.ec-intro { font-size:17px;line-height:1.9;color:#89755e;margin:0 0 38px;max-width:570px; }
.ec-info-block { display:grid;grid-template-columns:46px minmax(0,1fr);gap:20px;margin:0 0 30px; }
.ec-icon { width:46px;height:46px;border:1px solid #d1bb98;border-radius:50%;display:grid;place-items:center;color:#a27a46;background:#fcf8f1; }
.ec-icon svg { width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round; }
.ec-info h2 { font-size:19px;font-weight:600;line-height:1.6;margin:0 0 8px;color:#61432b; }
.ec-info p,.ec-info address { font-size:16px;line-height:1.85;font-style:normal;margin:0;color:#8d7a65;overflow-wrap:anywhere; }
.ec-info .ec-landmark { margin-top:8px;color:#a17c4e;font-size:14px; }
.ec-info a { text-decoration:none; }.ec-info a:hover { color:#6d4927;text-decoration:underline;text-underline-offset:4px; }
.ec-other-title { font-size:16px;font-weight:600;display:block;margin:38px 0 16px; }
.ec-socials { display:flex;gap:12px;flex-wrap:wrap; }
.ec-socials a { width:44px;height:44px;border:1px solid #c3a77d;border-radius:50%;display:grid;place-items:center;color:#977142;transition:background .2s,color .2s; }
.ec-socials a:hover { background:#8b6338;color:white; }.ec-socials svg { width:20px;height:20px;fill:currentColor; }
.ec-form-panel { background:#f7f2e9;border:1px solid #e7d9c3;border-radius:20px;padding:36px;min-width:0; }
.ec-form-panel h2 { font-size:25px;font-weight:700;line-height:1.65;color:#67482e;margin:0 0 28px; }
.ec-form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px; }
.ec-field { display:flex;flex-direction:column;gap:9px;min-width:0; }
.ec-field-full { grid-column:1/-1; }
.ec-field label { color:#856c50;font-size:14px;font-weight:500; }
.ec-field input,.ec-field select,.ec-field textarea { display:block;width:100%;min-width:0;background:#fffdfa;color:#61482f;border:1px solid #dbc8aa;border-radius:6px;font:400 15px var(--font);padding:12px 14px;min-height:48px;box-sizing:border-box; }
.ec-field textarea { resize:vertical;min-height:126px;line-height:1.7; }
.ec-field input:focus,.ec-field select:focus,.ec-field textarea:focus { outline:2px solid #b7986b;outline-offset:2px; }
.ec-field input::placeholder,.ec-field textarea::placeholder { color:#b3a48d; }
.ec-consent { display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.8;color:#967f61;margin-top:20px; }
.ec-consent input { margin-top:5px;accent-color:#8c6539;width:16px;height:16px;flex-shrink:0; }
.ec-submit { width:100%;padding:13px 24px;min-height:50px;margin-top:22px;border:1px solid #8a6235;border-radius:7px;background:linear-gradient(100deg,#79502c,#a6804c);color:#fff;font:600 16px var(--font);cursor:pointer; }
.ec-submit:hover { background:#79502c; }.ec-form-note { font-size:12px;line-height:1.75;color:#a18d70;margin:12px 0 0; }.ec-form-status { font-size:13px;line-height:1.8;color:#7d623e;margin:12px 0 0; }
.ec-location { text-align:center;margin:0 auto;padding-bottom:72px; }
.ec-location h2 { font-size:clamp(25px,2.7vw,35px);font-weight:700;line-height:1.5;margin:0 0 14px; }
.ec-location>p { margin:0 auto 30px;font-size:16px;line-height:1.9;color:#9b7b52;max-width:900px; }
.ec-location>p a { text-decoration:underline;text-underline-offset:5px; }
.ec-map-frame { border:1px solid #e3d4bd;border-radius:18px;overflow:hidden;background:#eee7da; }
.ec-map-frame iframe { display:block;width:100%;height:450px;border:0; }
.ec-map-actions { display:flex;flex-wrap:wrap;justify-content:center;gap:14px;align-items:center;margin-top:22px; }
.ec-map-actions>a { border:1px solid #b79a70;border-radius:40px;padding:10px 23px;font-size:14px;color:#8a6438; }
.ec-map-actions>a:hover { color:white;background:#8a6438; }
@media(max-width:1000px) { .ec-content { gap:35px; }.ec-form-panel { padding:26px; }.ec-form-grid { gap:18px 12px; }.ec-info-block { gap:14px; } }
@media(max-width:760px) { .ec-title-band { padding:28px 0; }.ec-title-inner { flex-direction:column;align-items:flex-start;gap:12px; }.ec-content { grid-template-columns:1fr;gap:32px;padding-block:40px; }.ec-intro { font-size:15px;margin-bottom:28px; }.ec-info-block { margin-bottom:24px; }.ec-info p,.ec-info address { font-size:15px; }.ec-info h2 { font-size:18px; }.ec-form-panel { padding:26px 20px; }.ec-form-panel h2 { font-size:23px;margin-bottom:24px; }.ec-location { padding-bottom:40px; }.ec-location>p { font-size:14px; }.ec-map-frame iframe { height:330px; } }
@media(max-width:420px) { .ec-form-grid { grid-template-columns:1fr; }.ec-field-full { grid-column:auto; }.ec-map-actions { flex-direction:column; }.ec-map-actions>a { width:100%;text-align:center; }.ec-info-block { grid-template-columns:40px minmax(0,1fr);gap:12px; }.ec-icon { width:40px;height:40px; } }

/* Keep intro spacing above the address; override the shared paragraph reset. */
.ec-info .ec-intro { margin:0 0 44px; }
@media(max-width:760px) { .ec-info .ec-intro { margin-bottom:32px; } }

/* Contact masthead with supplied real EDEN clinic photography. */
.ec-title-band.ec-photo-banner { position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:280px;padding:64px 0;background:#eee1cf; }
.ec-banner-photo { position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 52%; }
.ec-photo-banner:before { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f8f2e8 0%,#f8f2e8f5 23%,#f8f2e8c2 42%,#f8f2e83b 65%,#eee0cb0a 100%); }
.ec-photo-banner .ec-title-inner { min-width:0; }
.ec-photo-banner h1 { color:#604129;font-size:clamp(34px,4vw,54px);text-shadow:0 2px 18px #fff6; }
.ec-photo-banner .ec-breadcrumb { padding:11px 19px;border:1px solid #e9dfcf99;border-radius:40px;background:#fffaf0e8;color:#81613f;line-height:1.7;box-shadow:0 5px 25px #6d482014; }
@media(max-width:760px) {
 .ec-title-band.ec-photo-banner { min-height:230px;padding:38px 0; }
 .ec-banner-photo { object-position:64% center; }
 .ec-photo-banner:before { background:linear-gradient(90deg,#f8f2e8f7,#f8f2e8d9 35%,#f8f2e829 100%); }
 .ec-photo-banner .ec-title-inner { gap:22px; }
 .ec-photo-banner h1 { font-size:36px; }
 .ec-photo-banner .ec-breadcrumb { font-size:12px;padding:8px 14px; }
}
