/* 0.4.18 — Service-specific opt-in for GTranslate, independent of Marketing cookies. */
.ifs-dah-translate-gate { display: inline-flex; align-items: center; gap: .2rem; padding: 2px; border: 1px solid #d9e2d0; border-radius: 999px; background: #f8faf6; font: 700 12px/1.3 system-ui, sans-serif; }
.ifs-dah-translate-gate__current, .ifs-dah-translate-gate__button { border-radius: 999px; padding: 4px 7px; }
.ifs-dah-translate-gate__current { background: #315627; color: #fff; }
.ifs-dah-translate-gate__button { background: transparent; border: 0; color: #315627; cursor: pointer; font: inherit; }
.ifs-dah-translate-gate__button:hover, .ifs-dah-translate-gate__button:focus-visible { background: #e5ebdf; }
body.ifs-dah-translate-dialog-open { overflow: hidden; }
.ifs-dah-translate-modal[hidden] { display: none !important; }
.ifs-dah-translate-modal { position: fixed; z-index: 2147483200; inset: 0; display: flex; justify-content: center; align-items: center; padding: 22px; font: 400 15px/1.55 system-ui, -apple-system, Segoe UI, sans-serif; color: #263721; }
.ifs-dah-translate-modal__backdrop { position: absolute; inset: 0; background: rgba(18, 27, 17, .58); }
.ifs-dah-translate-modal__panel { box-sizing: border-box; position: relative; width: min(100%, 600px); max-height: min(85vh, 760px); overflow-y: auto; background: #fff; border-radius: 15px; border: 1px solid #dce3d7; padding: clamp(20px, 4vw, 38px); box-shadow: 0 25px 80px rgba(0,0,0,.24); }
.ifs-dah-translate-modal__icon { display: inline-flex; justify-content: center; align-items: center; width: 52px; height: 52px; border-radius: 14px; background: #edf3e6; color: #3f622f; margin-bottom: 13px; }
.ifs-dah-translate-modal__icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.ifs-dah-translate-modal__panel h2 { font: 700 clamp(22px, 4vw, 28px)/1.27 system-ui, sans-serif; color: #24371c; margin: 0 30px 14px 0; }
.ifs-dah-translate-modal__panel h2 small { font-size: .62em; font-weight: 600; color: #697962; }
.ifs-dah-translate-modal__body p { margin: 0 0 12px; line-height: 1.6; }
.ifs-dah-translate-modal__info { font-size: 13px; color: #5c6857; padding-top: 8px; }
.ifs-dah-translate-modal__info a { color: #315627; text-decoration: underline; }
.ifs-dah-translate-modal__actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
.ifs-dah-translate-modal__actions button { box-sizing: border-box; cursor: pointer; font: 700 14px/1.3 system-ui, sans-serif; border-radius: 7px; padding: 12px 18px; min-height: 45px; }
.ifs-dah-translate-modal__allow { background: #41652f; border: 1px solid #41652f; color: #fff; }
.ifs-dah-translate-modal__allow:hover { background: #2b4d21; }
.ifs-dah-translate-modal__cancel { background: #fff; border: 1px solid #d6dcd0; color: #374632; }
.ifs-dah-translate-modal__close { position: absolute; right: 15px; top: 12px; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid #dce3d7; border-radius: 8px; color: #3b4b37; background: #fff; font: 700 32px/1 system-ui, sans-serif; cursor: pointer; }
.ifs-dah-translate-modal__close:hover { color: #223d1e; background: #f0f4ec; border-color: #91ab80; }
.ifs-dah-translate-modal :focus-visible { outline: 3px solid #83a768; outline-offset: 3px; }
.ifs-dah-translation-settings { background: none; border: 0; color: #315627; padding: 0; font: inherit; text-decoration: underline; cursor: pointer; }
@media(max-width: 540px) { .ifs-dah-translate-modal { padding: 12px; } .ifs-dah-translate-modal__panel { padding: 24px 19px; } .ifs-dah-translate-modal__actions button { width: 100%; } }

/* Independent of Elementor/Hello button font resets: large visible close icon. */
.ifs-dah-translate-modal .ifs-dah-translate-modal__close { width: 46px !important; height: 46px !important; min-width: 46px; min-height: 46px; padding: 0 !important; color: #314b2b !important; }
.ifs-dah-translate-modal__close svg { display: block; width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; }
