/* ADN Destination Atlas browser. Brand light theme. */
.adn-dest{--l:var(--color-line,#E6DFC8);font-family:var(--font-body,'IBM Plex Sans Arabic',system-ui,sans-serif)}
.adn-dest__toolbar{position:sticky;top:64px;z-index:20;background:var(--color-cream,#F5F1E1);padding-block:var(--space-4,16px);display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--l)}
.adn-dest__row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.adn-dest__search{flex:1 1 220px;min-width:180px}
.adn-dest__search input{width:100%;min-height:44px;border:1.5px solid var(--l);border-radius:999px;padding:9px 20px;font:inherit;background:#fff}
.adn-dest__search input:focus{border-color:var(--color-blue,#004CC7);outline:2px solid var(--color-sky,#6CA4FF);outline-offset:1px}
.adn-dest__sorts,.adn-dest__regions,.adn-dest__toggles{display:flex;flex-wrap:wrap;gap:8px}
.adn-dest__sep{flex:1 1 12px}
.dchip{border:1.5px solid var(--l);background:#fff;color:var(--color-ink,#0B0F1A);border-radius:999px;padding:8px 16px;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.dchip:hover{border-color:var(--color-blue,#004CC7)}
.dchip.is-on{background:var(--color-ink,#0B0F1A);color:#fff;border-color:var(--color-ink,#0B0F1A)}
.dchip--toggle.is-on{background:rgba(234,174,6,.16);color:#8a6400;border-color:var(--color-gold,#EAAE06)}
.adn-dest__meta{color:var(--color-muted,#6B7280);font-size:.9rem;margin-block:var(--space-5,24px) var(--space-4,16px)}

.adn-dest__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.dcard{background:#fff;border-radius:16px;box-shadow:var(--shadow-sm,0 1px 2px rgba(11,15,26,.06));overflow:hidden;transition:transform .18s,box-shadow .18s;color:inherit;display:flex;flex-direction:column}
.dcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg,0 20px 48px rgba(0,57,149,.18));color:inherit}
.dcard__media{position:relative;aspect-ratio:16/10;flex:none;background:linear-gradient(135deg,#004CC7,#1A455E);display:grid;place-items:center;color:rgba(255,255,255,.7);font-weight:600;overflow:hidden}
.dcard__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dcard__flag{position:absolute;inset-block-start:12px;inset-inline-start:12px;background:rgba(11,15,26,.6);color:#fff;border-radius:999px;padding:5px 12px;font-size:.82rem;font-weight:600;backdrop-filter:blur(4px);display:inline-flex;align-items:center;gap:6px;line-height:1}
.dcard__flag-em{font-size:1.05em;line-height:1;display:inline-block}
.dcard__score{position:absolute;inset-block-start:12px;inset-inline-end:12px;background:var(--color-gold,#EAAE06);color:var(--color-ink,#0B0F1A);border-radius:999px;padding:5px 11px;font-size:.82rem;font-weight:800}
.dcard__body{padding:18px;flex:1;display:flex;flex-direction:column}
.dcard__name{margin:0 0 6px;font-family:var(--font-display,'Alexandria',sans-serif);font-size:1.2rem}
.dcard__blurb{margin:0 0 14px;color:var(--color-slate,#475569);font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.dcard__stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--l);padding-top:12px;gap:6px;margin-top:auto}
.dstat{text-align:center}
.dstat__num{display:block;font-weight:800;color:var(--color-blue,#004CC7);font-variant-numeric:tabular-nums}
.dstat__label{font-size:.72rem;color:var(--color-muted,#6B7280)}

.adn-dest__empty{text-align:center;padding:48px 16px;color:var(--color-muted,#6B7280)}
.adn-dest__empty-emoji{font-size:2.5rem}
.adn-dest__empty h3{margin:8px 0}
.adn-dest [hidden]{display:none !important}
@media (max-width:768px){.adn-dest__toolbar{top:56px}}

/* AI matcher banner */
.dest-matcher-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  background:linear-gradient(120deg,#004CC7,#1A455E 55%,#B15F40);color:#fff;border-radius:20px;padding:20px 28px;margin-block-end:var(--space-5,24px)}
.dest-matcher-banner__text{display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex:1 1 auto;min-width:0}
.dest-matcher-banner__pill{display:inline-block;background:rgba(255,255,255,.16);border-radius:999px;padding:5px 14px;font-size:.78rem;font-weight:700;white-space:nowrap;flex:none}
.dest-matcher-banner h3{color:#fff;margin:0;font-family:var(--font-display,'Alexandria',sans-serif);font-size:1.25rem}
.dest-matcher-banner .btn{flex:none;white-space:nowrap}
@media (max-width:600px){.dest-matcher-banner{justify-content:center;text-align:center}.dest-matcher-banner__text{justify-content:center}}

/* Compare button on card */
.dcard__cmp{position:absolute;inset-block-start:52px;inset-inline-end:12px;width:34px;height:34px;border-radius:50%;border:0;
  background:rgba(255,255,255,.9);color:var(--color-blue,#004CC7);font-size:1rem;font-weight:800;cursor:pointer;box-shadow:var(--shadow-sm,0 1px 2px rgba(11,15,26,.06))}
.dcard__cmp.is-on{background:var(--color-blue,#004CC7);color:#fff}

/* Compare bar */
.dest-comparebar{position:fixed;inset-block-end:20px;inset-inline:0;z-index:44;margin-inline:auto;width:max-content;max-width:92vw;
  display:flex;align-items:center;gap:14px;background:#fff;border-radius:999px;box-shadow:var(--shadow-lg,0 20px 48px rgba(0,57,149,.18));padding:8px 8px 8px 20px}
.dest-comparebar__clear{background:none;border:0;color:var(--color-muted,#6B7280);cursor:pointer;font:inherit}

/* Compare overlay (bottom sheet) */
.dest-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-end;justify-content:center}
.dest-overlay__backdrop{position:absolute;inset:0;background:rgba(11,15,26,.6)}
.dest-overlay__sheet{position:relative;width:min(900px,100%);max-height:90vh;background:var(--color-cream,#F5F1E1);border-radius:24px 24px 0 0;overflow:auto;animation:dsheet .25s ease}
@keyframes dsheet{from{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}
.dest-overlay__head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;color:#fff}
.dest-overlay__head h3{color:#fff;margin:0}
.dest-overlay__clear{background:rgba(255,255,255,.15);border:0;color:#fff;border-radius:999px;padding:6px 14px;cursor:pointer;margin-inline-end:8px}
.dest-overlay__x{background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer}
.dest-overlay__body{padding:8px 16px 24px}
.dest-compare-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
.dest-compare-table th,.dest-compare-table td{padding:12px 14px;text-align:center;border-bottom:1px solid var(--l);font-size:.92rem}
.dest-compare-table thead th{background:var(--color-navy,#1A455E);color:#fff;font-family:var(--font-display,'Alexandria',sans-serif)}
.dest-compare-table tbody th{text-align:start;background:var(--color-cream,#F5F1E1);font-weight:700}
.dest-compare-table td.is-best{color:var(--color-success,#42DD51);font-weight:800;background:rgba(66,221,81,.08)}

/* Matcher modal */
.dest-matcher{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}
.dest-matcher__backdrop{position:absolute;inset:0;background:rgba(11,15,26,.6)}
.dest-matcher__card{position:relative;width:min(520px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:var(--shadow-lg,0 20px 48px rgba(0,57,149,.18))}
.dest-matcher__head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;color:#fff}
.dest-matcher__dots{display:flex;gap:8px}
.dest-matcher__dots span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.3)}
.dest-matcher__dots span.is-on{background:var(--color-gold,#EAAE06)}
.dest-matcher__dots span.is-done{background:rgba(255,255,255,.7)}
.dest-matcher__x{background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer}
.dest-matcher__body{padding:24px}
.dest-matcher__body h3{margin:0 0 16px}
.dest-matcher__foot{display:flex;justify-content:space-between;gap:12px;padding:16px 22px;border-top:1px solid var(--l)}
.dest-matcher__foot .btn{flex:0 0 auto}
.matcher-passports{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.matcher-pass{border:1.5px solid var(--l);background:#fff;border-radius:12px;padding:10px 6px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}
.matcher-pass.is-on{background:var(--color-blue,#004CC7);color:#fff;border-color:var(--color-blue,#004CC7)}
.matcher-budget__num{font-family:var(--font-display,'Alexandria',sans-serif);font-weight:800;font-size:1.8rem;color:var(--color-blue,#004CC7);text-align:center;margin-block-end:14px}
.matcher-budget input{width:100%}
.matcher-prefs{display:flex;flex-direction:column;gap:10px}
.matcher-pref{border:1.5px solid var(--l);background:#fff;border-radius:12px;padding:14px 16px;font:inherit;font-weight:600;cursor:pointer;text-align:start}
.matcher-pref.is-on{border-color:var(--color-gold,#EAAE06);background:rgba(234,174,6,.12)}
.matcher-results{display:flex;flex-direction:column;gap:10px}
.matcher-result{display:flex;align-items:center;gap:12px;border:1.5px solid var(--l);border-radius:14px;padding:12px 14px;color:inherit;text-decoration:none}
.matcher-result:hover{border-color:var(--color-blue,#004CC7);color:inherit}
.matcher-result__pct{background:var(--color-gold,#EAAE06);color:var(--color-ink,#0B0F1A);font-weight:800;border-radius:10px;padding:6px 10px;font-size:.9rem}
.matcher-result__body{flex:1;display:flex;flex-direction:column}
.matcher-result__body small{color:var(--color-muted,#6B7280)}
@media (max-width:520px){.matcher-passports{grid-template-columns:repeat(2,1fr)}}

