/* Homepage destination collections only. Regional maps follow the listed states. */
#panelDom .region{--gallery-accent:#984565;--gallery-tint:#fbf0f4;margin-bottom:48px}
#panelDom .region[data-gallery-region=northeast]{--gallery-accent:#327258;--gallery-tint:#edf5ef}
#panelDom .region[data-gallery-region=north]{--gallery-accent:#496fa1;--gallery-tint:#eef3fa}
#panelDom .region[data-gallery-region=central]{--gallery-accent:#896512;--gallery-tint:#fbf6e6}
#panelDom .region[data-gallery-region=south]{--gallery-accent:#7653a2;--gallery-tint:#f5f0fb}
#panelDom .region[data-gallery-region=west]{--gallery-accent:#a84f31;--gallery-tint:#fcf0e9}
#panelDom .region[data-gallery-region=islands]{--gallery-accent:#137a8c;--gallery-tint:#eaf8fa}
#panelDom .region-hdr{border-bottom:1px solid #d9e2e9;gap:15px;padding-bottom:19px;margin-bottom:22px;align-items:center}
#panelDom .region-ico{width:64px;height:64px;flex:0 0 64px;border:1px solid color-mix(in srgb,var(--gallery-accent) 16%,white);background:linear-gradient(145deg,#fff,var(--gallery-tint));color:var(--gallery-accent);border-radius:18px;box-shadow:0 4px 12px #18354b06;font-size:0;transform:none;padding:5px}
#panelDom .region-ico::after{display:none}
#panelDom .region-map{display:block;width:100%;height:100%;overflow:visible;fill:currentColor;stroke:var(--gallery-tint);stroke-width:.65;stroke-linejoin:round;stroke-linecap:round}
#panelDom .region-map g:nth-of-type(3n+2){fill:color-mix(in srgb,var(--gallery-accent) 76%,white)}
#panelDom .region-map g:nth-of-type(3n+3){fill:color-mix(in srgb,var(--gallery-accent) 88%,white)}
#panelDom .region-map circle{stroke:none;fill:var(--gallery-accent)}
#panelDom .region-name{font-family:Inter,Arial,sans-serif;font-size:23px;font-weight:600;letter-spacing:-.7px;color:#18354b}
#panelDom .region-sub{font-weight:500;color:#798c9e;font-size:11px;margin-top:5px;line-height:1.6}
#panelDom .region-count{background:var(--gallery-tint);border:1px solid color-mix(in srgb,var(--gallery-accent) 12%,white);color:var(--gallery-accent);font-size:10px;font-weight:600;letter-spacing:0;padding:7px 11px}
#panelDom .dom-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
#panelDom .dcard{display:grid;grid-template-rows:185px 1fr;aspect-ratio:auto;min-height:0;background:#fff;border:1px solid #dce5ed;border-radius:20px;padding:7px;isolation:isolate;box-shadow:0 2px 3px #18354b03,0 9px 24px #18354b07;transition:box-shadow .35s,border-color .35s,translate .35s;overflow:hidden;opacity:1;transform:none}
#panelDom .dcard.rv{opacity:1;transform:none}
#panelDom .dcard::before,#panelDom .dcard::after{display:none}
#panelDom .dcard-img{position:relative;inset:auto;grid-row:1;grid-column:1;width:100%!important;height:100%!important;min-width:0;border-radius:14px;object-fit:cover;background-size:cover;background-position:center;z-index:0;will-change:auto;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}
#panelDom .dcard-ovl{position:relative;inset:auto;grid-row:1;grid-column:1;z-index:1;border-radius:14px;background:linear-gradient(180deg,transparent 55%,#102e3f48);pointer-events:none}
#panelDom .dcard-body{position:relative;inset:auto;grid-row:2;grid-column:1;display:flex;flex-direction:column;padding:18px 10px 4px;transform:none;transition:none;background:linear-gradient(180deg,#fff 65%,var(--gallery-tint));border-radius:0 0 13px 13px;z-index:2}
#panelDom .dcard-pkg{position:absolute;top:-35px;left:11px;align-self:flex-start;background:#fffffff0;backdrop-filter:blur(8px);border:1px solid #ffffffa6;border-radius:7px;color:#254454;font-family:Inter,Arial,sans-serif;font-size:9px;font-weight:700;letter-spacing:.55px;text-transform:uppercase;padding:5px 8px;margin:0;box-shadow:0 2px 7px #102e3f12}
#panelDom .dcard-name{font-family:Inter,Arial,sans-serif;font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.5px;color:#18354b;text-shadow:none;margin:0 0 6px;overflow-wrap:normal}
#panelDom .dcard-reg{display:flex;align-items:center;gap:5px;color:#697f90;font-family:Inter,Arial,sans-serif;font-weight:400;font-size:10px;letter-spacing:0;text-transform:none;margin:0 0 15px;line-height:1.5}
#panelDom .dcard-reg::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--gallery-accent);opacity:.6}
#panelDom .dcard-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:40px;margin-top:auto;padding:6px 8px 6px 10px;border:1px solid color-mix(in srgb,var(--gallery-accent) 14%,white);border-radius:10px;background:var(--gallery-tint);color:var(--gallery-accent);font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:600;opacity:1;transform:none;box-shadow:none;transition:color .25s,background .25s;overflow:visible}
#panelDom .dcard-btn::after{display:none}
#panelDom .dcard-btn svg{box-sizing:content-box;width:12px;height:12px;padding:6px;border-radius:50%;background:#fff;stroke:var(--gallery-accent);stroke-width:1.8;box-shadow:0 1px 4px #18354b08;transition:transform .3s}
#panelDom .dcard:hover .dcard-body,#panelDom .dcard:hover .dcard-btn{transform:none}
#panelDom .dcard:focus-visible{outline:2px solid #a78950;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 #panelDom .dcard:hover{translate:0 -5px;transform:none;border-color:color-mix(in srgb,var(--gallery-accent) 42%,white);box-shadow:0 14px 30px #18354b16}
 #panelDom .dcard:hover .dcard-img{transform:scale(1.025);filter:saturate(1.06)}
 #panelDom .dcard:hover .dcard-ovl{background:linear-gradient(180deg,transparent 55%,#102e3f48)}
 #panelDom .dcard:hover .dcard-btn svg{transform:translateX(2px)}
 #panelDom .dcard-btn:hover{transform:none!important;box-shadow:none;color:var(--gallery-accent)}
}
#panelDom .gallery-arrive .dcard-img{animation:gallery-photo-arrive .85s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:var(--gallery-delay,0ms)}
#panelDom .gallery-arrive .dcard-body{animation:gallery-copy-arrive .6s ease backwards;animation-delay:calc(var(--gallery-delay,0ms) + 60ms)}
@keyframes gallery-photo-arrive{from{opacity:.55;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}
@keyframes gallery-copy-arrive{from{opacity:.35;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){#panelDom .dom-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}#panelDom .dcard{grid-template-rows:170px 1fr}}
@media(max-width:700px){#panelDom .dom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#panelDom .dcard{grid-template-rows:155px 1fr}#panelDom .region-name{font-size:20px}#panelDom .region-sub{font-size:10px}}
@media(max-width:450px){#panelDom .region{margin-bottom:36px}#panelDom .region-hdr{gap:10px;flex-wrap:wrap;padding-bottom:16px;margin-bottom:18px}#panelDom .region-ico{width:50px;height:50px;flex-basis:50px;border-radius:14px;padding:3px}#panelDom .region-name{font-size:18px}#panelDom .region-sub{font-size:9px;max-width:200px}#panelDom .region-count{font-size:8px;padding:5px 7px;margin-left:auto}#panelDom .region-info{min-width:140px;flex:1}#panelDom .dom-grid{gap:13px}#panelDom .dcard{grid-template-rows:145px 1fr;border-radius:16px;padding:5px}#panelDom .dcard-img,#panelDom .dcard-ovl{border-radius:11px}#panelDom .dcard-body{padding:14px 6px 2px}#panelDom .dcard-name{font-size:16px;letter-spacing:-.35px}#panelDom .dcard-pkg{font-size:8px;letter-spacing:.35px;padding:4px 6px;top:-31px;left:7px}#panelDom .dcard-reg{font-size:9px;margin-bottom:12px}#panelDom .dcard-btn{font-size:10px;min-height:36px;padding:5px 6px 5px 8px}#panelDom .dcard-btn svg{width:11px;height:11px;padding:5px}}
@media(max-width:360px){#panelDom .region-count{margin-left:60px;margin-top:-3px}}
@media(max-width:340px){#panelDom .dom-grid{grid-template-columns:1fr}#panelDom .dcard{grid-template-rows:180px 1fr}#panelDom .dcard-name{font-size:20px}}
@media(prefers-reduced-motion:reduce){#panelDom .dcard,#panelDom .dcard-img,#panelDom .dcard-btn svg{animation:none!important;transition:none!important;translate:none!important}#panelDom .gallery-arrive .dcard-img,#panelDom .gallery-arrive .dcard-body{animation:none!important;opacity:1;transform:none}}

/* Keep destination grids stable instead of stacking scroll-reveal effects. */
#panelDom .region,#panelDom .dcard,#panelIntl .dcard{opacity:1!important;transform:none!important;transition-delay:0ms!important;animation:none!important;}
#panelDom .gallery-arrive .dcard-img,#panelDom .gallery-arrive .dcard-body{animation:none!important;}
@media(hover:none){#panelDom .dcard,#panelDom .dcard-img,#panelDom .dcard-body,#panelDom .dcard-btn{translate:none!important;transform:none!important;transition:none!important;}}
