/* DKHL Modern v2.1: opt-in contact and other licence guides. Scoped to existing Flatsome layouts. */
.dkhlm-site .dkhl21-more-licences { scroll-margin-top: 100px; }
.dkhlm-site .dkhl21-more-licences .dkhlm-intro h2 { max-width: 760px; }
.dkhlm-site .dkhl21-license-card > .col-inner {
  background: #fff; border: 1px solid #dce6ef; border-radius: 18px;
  box-shadow: 0 10px 30px rgba(14, 38, 63, .05); padding: 26px;
  height: 100%; display: flex; flex-direction: column; gap: 10px; min-width: 0;
}
.dkhlm-site .dkhl21-license-card h3 { color: #092344; font-size: clamp(23px, 2.4vw, 29px); line-height: 1.3; }
.dkhlm-site .dkhl21-license-card p { color: #42566c; overflow-wrap: anywhere; }
.dkhlm-site .dkhl21-license-card .button { align-self: flex-start; white-space: normal; height: auto; min-height: 40px; line-height: 1.35; }
.dkhlm-site .dkhl21-license-disclaimer { color: #435a70; font-size: 13px; margin: 4px 0 20px; }
.dkhlm-site .dkhl21-channels { max-width: 100%; margin: 22px auto 6px; padding: 18px; background: #fff;
  border: 1px solid #d7e1ed; border-radius: 16px; box-shadow: 0 8px 30px rgba(13, 42, 71, .06); color: #143350; }
.dkhlm-site .dkhl21-channels-title { color: #092344; font-weight: 750; font-size: 17px; margin: 0 0 15px; }
.dkhlm-site .dkhl21-channels-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.dkhlm-site .dkhl21-channel { display: inline-flex; justify-content: center; align-items: center; gap: 9px;
  padding: 10px 15px; border: 1px solid #cfdeeb; border-radius: 10px; color: #173a5c;
  background: #f8fafc; font-size: 14px; line-height: 1.3; font-weight: 700;
  min-height: 44px; transition: background-color .15s, border-color .15s; }
.dkhlm-site .dkhl21-channel:hover, .dkhlm-site .dkhl21-channel:focus-visible { background: #edf4fb; border-color: #1262a5; color: #092344; }
.dkhlm-site .dkhl21-channel.dkhl21-phone { background: #0d365c; color: #fff; border-color: #0d365c; }
.dkhlm-site .dkhl21-channel.dkhl21-zalo { border-color: #a6d0fb; background: #eaf5ff; }
.dkhlm-site .dkhl21-channel.dkhl21-messenger { border-color: #bcbeff; background: #f3f3ff; }
.dkhlm-site .dkhl21-channel.dkhl21-facebook { border-color: #b7cce8; background: #edf3fa; }
.dkhlm-site .dkhl21-icon { display: inline-grid; place-items: center; min-width: 25px; height: 25px;
  border-radius: 7px; background: #e1eaf2; color: #13446e; font-weight: 800; }
.dkhlm-site .dkhl21-phone .dkhl21-icon { background: #d6e7f6; color: #123b60; }
.dkhlm-site .dkhl21-help { margin: 12px 0 0; font-size: 12px; color: #4f6478; line-height: 1.6; }
/* Admin preview should not rely on a front-end theme class. */
.wp-admin .dkhl21-channels { max-width: 800px; padding: 16px; background: #f5f8fb; border: 1px solid #d5e2ec; border-radius: 14px; }
.wp-admin .dkhl21-channels-title { font-weight: 700; font-size: 16px; margin: 0 0 10px; }
.wp-admin .dkhl21-channels-grid { display: flex; gap: 10px; flex-wrap: wrap; }
.wp-admin .dkhl21-channel { display: inline-flex; gap: 6px; align-items: center; padding: 10px 12px; border: 1px solid #c8d5e2; background: #fff; border-radius: 8px; }
.wp-admin .dkhl21-help { font-size: 12px; }
.dkhlm-site .dkhl21-dock { position: fixed; bottom: 20px; right: 20px; z-index: 1002; }
.dkhlm-site .dkhl21-dock-toggle { display: flex; align-items: center; gap: 8px; padding: 12px 17px;
  border: 0; border-radius: 100px; color: #092344; background: #e3ad3d; font-size: 14px; font-weight: 800;
  min-height: 48px; box-shadow: 0 8px 32px rgba(7, 28, 55, .25); letter-spacing: 0; text-transform: none; }
.dkhlm-site .dkhl21-dock-menu { position: absolute; bottom: calc(100% + 10px); right: 0; width: 195px;
  padding: 9px; background: #fff; border: 1px solid #d8e2ee; border-radius: 13px; box-shadow: 0 12px 50px rgba(9, 35, 68, .17); }
.dkhlm-site .dkhl21-dock-menu[hidden] { display: none; }
.dkhlm-site .dkhl21-dock-link { display: block; color: #092344; padding: 10px 12px; border-radius: 7px;
  font-size: 14px; line-height: 1.4; font-weight: 650; text-decoration: none; }
.dkhlm-site .dkhl21-dock-link:hover, .dkhlm-site .dkhl21-dock-link:focus-visible { background: #f0f5f9; }
@media(max-width: 780px) {
  .dkhlm-site .dkhl21-license-card > .col-inner { padding: 20px; }
  .dkhlm-site .dkhl21-channels-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dkhlm-site .dkhl21-channel { padding: 10px; font-size: 13px; text-align: center; }
}
@media(max-width: 480px) {
  .dkhlm-site .dkhl21-channels-grid { grid-template-columns: minmax(0,1fr); }
  .dkhlm-site .dkhl21-dock { bottom: 18px; right: 14px; }
}
/* V2.3: accessible, compact contact popup with trustworthy channels only. */
.dkhlm-site .dkhl21-dock-backdrop[hidden] { display:none!important; }
.dkhlm-site .dkhl21-dock-backdrop {position:fixed;inset:0;z-index:9996;background:rgba(4,22,43,.45);}
.dkhlm-site .dkhl21-dock {position:fixed;z-index:9997;right:max(14px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));}
.dkhlm-site .dkhl21-dock-toggle {min-height:52px;background:#e8b84e;color:#082849!important;border:1px solid #d6a12f;border-radius:999px;box-shadow:0 9px 28px rgba(9,35,68,.3);}
.dkhlm-site .dkhl21-dock-menu {width:min(310px,calc(100vw - 28px));max-height:min(460px,calc(100dvh - 120px));overflow:auto;border:1px solid #dbe6ee;border-radius:18px;padding:17px 15px 12px;background:white;box-shadow:0 16px 60px rgba(9,35,68,.28);}
.dkhlm-site .dkhl21-dock-header {display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:13px;}
.dkhlm-site .dkhl21-dock-title {font-size:17px;line-height:1.35;margin:0;color:#092344;font-weight:800;}
.dkhlm-site .dkhl21-dock-subtitle {margin:3px 0 0;color:#597086;font-size:12px;line-height:1.45;}
.dkhlm-site .dkhl21-dock-close {flex:0 0 34px;display:grid;place-items:center;border:1px solid #dce5ed;border-radius:50%;width:34px;height:34px;background:white;color:#123451;font-size:22px;line-height:1;padding:0;}
.dkhlm-site .dkhl21-dock-links {display:grid;grid-template-columns:minmax(0,1fr);gap:7px;}
.dkhlm-site .dkhl21-dock-link {display:flex;gap:11px;align-items:center;min-height:46px;padding:10px 12px;border-radius:10px;border:1px solid #e1e8ef;background:#f8fafc;color:#103458!important;font-weight:700;text-align:left;}
.dkhlm-site .dkhl21-dock-link.dkhl21-phone {background:#0b3459;color:white!important;border-color:#0b3459;}
.dkhlm-site .dkhl21-dock-link .dkhl21-icon {width:27px;height:27px;flex:0 0 27px;border-radius:7px;}
.dkhlm-site .dkhl21-dock-note {font-size:11.5px;line-height:1.5;color:#657b90;margin:12px 0 0;}
.dkhlm-site .dkhl21-dock :is(button,a):focus-visible {outline:3px solid #d9991e;outline-offset:3px;}
@media(max-width:599px) {
  body.dkhlm-site .dkhl21-dock-menu {width:min(336px,calc(100vw - 24px));right:0;bottom:calc(100% + 12px);padding:17px 14px 14px;}
  body.dkhlm-site .dkhl21-dock-toggle {font-size:14px;min-height:48px;padding:11px 17px;}
}

/* V2.4: responsive, native Flatsome card grid, no global selectors. */
.dkhlm-site .dkhl24-license-section .dkhl24-groups {align-items:stretch;}
.dkhlm-site .dkhl24-license-section .dkhl21-license-card .col-inner {gap:6px;}
.dkhlm-site .dkhl24-license-section .dkhl21-license-card .dkhlm-eyebrow {font-size:11px;}
.dkhlm-site .dkhl24-license-section .dkhl21-license-card h3 {font-size:clamp(20px,2.4vw,26px);margin:0 0 8px;}
.dkhlm-site .dkhl24-license-section .dkhl21-license-card p {line-height:1.55;margin-bottom:7px;}
.dkhlm-site .dkhl24-license-section .dkhl24-license-chips {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:11px 0 4px;}
.dkhlm-site .dkhl24-license-section .dkhl24-small-card .dkhl24-license-chips {grid-template-columns:repeat(2,minmax(0,1fr));}
.dkhlm-site .dkhl24-license-section .dkhl24-license-chip {display:flex;align-items:center;justify-content:center;text-decoration:none;color:#0b3153;background:#f2f7fb;border:1px solid #cadcea;border-radius:9px;min-width:0;min-height:43px;padding:8px 5px;font-weight:800;font-size:13px;letter-spacing:0;}
.dkhlm-site .dkhl24-license-section .dkhl24-license-chip:hover,.dkhlm-site .dkhl24-license-section .dkhl24-license-chip:focus-visible {color:#082b48;border-color:#d3a034;background:#fff7e5;outline-offset:2px;}
.dkhlm-site .dkhl24-license-section .dkhl24-license-chip.dkhl24-general {border-style:dashed;}
.dkhlm-site .dkhl24-footer-discover {background:#0b2440;color:#fff;padding:0 22px 18px;text-align:center;font-size:14px;}
.dkhlm-site .dkhl24-footer-discover a {color:#ffdf93;text-decoration:underline;text-underline-offset:4px;}
@media (max-width:599px) {
 body.dkhlm-site .dkhl24-license-section .dkhl24-groups {display:flex;flex-wrap:wrap;margin:0 -5px;}
 body.dkhlm-site .dkhl24-license-section .dkhl24-groups > .col.dkhl24-small-card {flex:0 0 50%;width:50%;max-width:50%;padding:0 5px 10px;}
 body.dkhlm-site .dkhl24-license-section .dkhl24-groups > .col.dkhl24-wide-card {flex:0 0 100%;width:100%;max-width:100%;padding:0 5px 10px;}
 body.dkhlm-site .dkhl24-license-section .dkhl21-license-card > .col-inner {padding:14px 12px;border-radius:13px;}
 body.dkhlm-site .dkhl24-license-section .dkhl21-license-card h3 {font-size:clamp(17px,4.7vw,22px);line-height:1.25;margin:0 0 7px;}
 body.dkhlm-site .dkhl24-license-section .dkhl21-license-card p {font-size:12.5px;line-height:1.42;}
 body.dkhlm-site .dkhl24-license-section .dkhl24-license-chips {grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:5px 0 0;}
 body.dkhlm-site .dkhl24-license-section .dkhl24-small-card .dkhl24-license-chips {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.dkhlm-site .dkhl24-license-section .dkhl24-license-chip {min-height:41px;padding:7px 3px;font-size:12.5px;}
 body.dkhlm-site .dkhl24-license-section .dkhl21-license-disclaimer {font-size:12px;margin-bottom:8px;}
}
