/* ==========================================================================
   Karún Travel Group — v25 DESTINOS «Postales del Este»
   Section (#destinations) + body-level detail sheet (#k25-dd-root).
   Loaded after karun-v23.css. Selectors use `html .lm …` / `html body …`
   so they win over the Design runtime and the #ly-flush head block.
   All ambient motion is removed under prefers-reduced-motion (bottom).
   ========================================================================== */

/* ---------- section shell ---------- */
html .lm .k25-dest{
  --k25-sand:#f2ecdf;
  position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(56px,8vw,112px) 0 clamp(56px,7vw,96px);
  background:
    radial-gradient(1100px 520px at 88% -4%,rgba(122,212,224,.26),transparent 62%),
    radial-gradient(900px 520px at -6% 26%,rgba(247,227,207,.85),transparent 62%),
    linear-gradient(180deg,#f3efe4 0%,var(--k25-sand) 48%,#efe6d4 100%);
}
/* tide contour lines (drawn sand ripples) */
html .lm .k25-dest::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='140' viewBox='0 0 520 140'%3E%3Cg fill='none' stroke='%230e8fa0' stroke-opacity='.10' stroke-width='1.2'%3E%3Cpath d='M0 30 C 90 8 170 52 260 30 S 430 8 520 30'/%3E%3Cpath d='M0 72 C 90 50 170 94 260 72 S 430 50 520 72'/%3E%3Cpath d='M0 114 C 90 92 170 136 260 114 S 430 92 520 114'/%3E%3C/g%3E%3C/svg%3E");
  background-size:520px 140px;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 70%,transparent 100%);
          mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 70%,transparent 100%);
}
/* sand grain */
html .lm .k25-dest::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.32;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .55  0 0 0 0 .48  0 0 0 0 .36  0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
}
html .lm .k25-dest-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(20px,4vw,64px);align-items:end}
html .lm .k25-dest-head .k23-h2{max-width:15ch}
html .lm .k25-dest-lede{margin:0;font-size:clamp(15.5px,1.2vw,17.5px);line-height:1.65;color:var(--k-muted);font-weight:500;max-width:44ch}
html .lm .k25-dest-lede b{color:var(--k-ink);font-weight:800}
html .lm .k25-dest-palm{position:absolute;right:-40px;top:-30px;width:clamp(180px,22vw,320px);opacity:.14;pointer-events:none;z-index:-1;transform-origin:70% 100%;animation:k25-sway 9s ease-in-out infinite alternate}
html .lm .k25-dest-palm path{fill:none;stroke:#0a6b7c;stroke-width:3;stroke-linecap:round}
@keyframes k25-sway{from{transform:rotate(-2.5deg)}to{transform:rotate(2deg)}}

/* ---------- app host (JS-owned) ---------- */
html .lm .k25-dest-app{position:relative;min-height:clamp(560px,64vw,820px)}
html .lm .k25-dest-app[data-k25-on="1"]{min-height:0}
html .lm .k25-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}

/* ---------- STAGE ---------- */
html .lm .k25-stage{
  --k25-in:1;--k25-par:0;
  position:relative;isolation:isolate;overflow:hidden;
  width:min(1320px,100% - clamp(24px,4vw,64px));margin:clamp(30px,4vw,52px) auto 0;
  height:clamp(580px,min(80vh,60vw),780px);
  border-radius:calc(46px - var(--k25-in) * 12px);
  background:#0a3340;color:#f4f1e8;
  box-shadow:0 70px 120px -60px rgba(7,38,48,.75),0 24px 44px -26px rgba(7,38,48,.45),0 0 0 1px rgba(255,255,255,.06) inset;
  transform:scale(calc(.935 + var(--k25-in) * .065)) translateY(calc((1 - var(--k25-in)) * 36px));
  transform-origin:50% 0;will-change:transform;
}
html .lm .k25-st-media{position:absolute;inset:0;z-index:0;overflow:hidden;cursor:pointer}
html .lm .k25-st-layer{position:absolute;inset:-4% 0;overflow:hidden;transform:translateY(calc(var(--k25-par) * -26px))}
html .lm .k25-st-layer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none;
  animation:k25-kb 18s ease-in-out infinite alternate;transform-origin:60% 50%}
@keyframes k25-kb{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.5%)}}
/* tide wipe: new place washes in from the shoreline */
html .lm .k25-st-layer.is-enter{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 300' preserveAspectRatio='none'%3E%3Cpath d='M0 150 C 12 139 25 160 38 150 S 62 138 75 150 S 92 162 100 148 V300 H0Z' fill='%23000'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 300' preserveAspectRatio='none'%3E%3Cpath d='M0 150 C 12 139 25 160 38 150 S 62 138 75 150 S 92 162 100 148 V300 H0Z' fill='%23000'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 300%;mask-size:100% 300%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:0 0%;mask-position:0 0%;
  animation:k25-tide 1.15s cubic-bezier(.62,.02,.3,1) forwards;
}
html .lm .k25-st-layer.is-enter img{animation:k25-settle 1.4s cubic-bezier(.22,1,.36,1) both,k25-kb 18s 1.4s ease-in-out infinite alternate}
@keyframes k25-tide{from{-webkit-mask-position:0 0%;mask-position:0 0%}to{-webkit-mask-position:0 100%;mask-position:0 100%}}
@keyframes k25-settle{from{transform:scale(1.16) translateY(3%);filter:saturate(1.3) brightness(1.08)}to{transform:scale(1.03);filter:none}}

html .lm .k25-st-shade{position:absolute;inset:0;z-index:1;cursor:pointer;
  background:
    linear-gradient(90deg,rgba(6,34,42,.84) 0%,rgba(6,34,42,.55) 34%,rgba(6,34,42,.08) 64%,rgba(6,34,42,0) 80%),
    linear-gradient(0deg,rgba(6,34,42,.78) 0%,rgba(6,34,42,.2) 38%,rgba(6,34,42,0) 55%),
    linear-gradient(180deg,rgba(6,34,42,.42) 0%,rgba(6,34,42,0) 22%)}

html .lm .k25-st-top{position:absolute;z-index:4;left:clamp(20px,3.4vw,52px);top:clamp(20px,2.6vw,34px);display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:calc(100% - 380px)}
html .lm .k25-st-chip{display:inline-flex;align-items:center;gap:10px;padding:9px 16px 9px 12px;border-radius:100px;
  background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);
  font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff;white-space:nowrap}
html .lm .k25-st-chip i{width:8px;height:8px;border-radius:50%;background:var(--k-coral,#f2864b);box-shadow:0 0 0 0 rgba(242,134,75,.6);animation:k25-ping 2.4s ease-out infinite}
@keyframes k25-ping{0%{box-shadow:0 0 0 0 rgba(242,134,75,.55)}70%,100%{box-shadow:0 0 0 10px rgba(242,134,75,0)}}
html .lm .k25-st-play{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px 0 10px;border-radius:100px;border:1px solid rgba(255,255,255,.22);cursor:pointer;
  background:rgba(6,34,42,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font:700 12px/1 var(--f-body);letter-spacing:.02em}
html .lm .k25-st-play svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
html .lm .k25-st-play[aria-pressed="true"] svg{fill:currentColor;stroke-width:1.5}
html .lm .k25-st-play:hover{background:rgba(255,255,255,.2)}
html .lm .k25-st-play:focus-visible,html .lm .k25-st-arrow:focus-visible,html .lm .k25-btn:focus-visible,html .lm .k25-card:focus-visible,html .lm .k25-reg:focus-visible{outline:3px solid var(--k-aqua,#7ad4e0);outline-offset:3px}

/* copy block */
html .lm .k25-st-copy{position:absolute;z-index:4;left:clamp(20px,3.4vw,56px);bottom:clamp(92px,8.6vw,122px);width:min(740px,calc(100% - 40px));pointer-events:none}
html .lm .k25-st-copy>*{pointer-events:auto}
html .lm .k25-st-tag{margin:0 0 2px;font-family:var(--f-script);font-size:clamp(26px,2.5vw,38px);line-height:1.1;color:var(--k-aqua,#7ad4e0);transform:rotate(-3deg);transform-origin:0 100%;text-shadow:0 6px 24px rgba(4,30,36,.5)}
html .lm .k25-st-title{margin:0;font-family:var(--f-disp);font-weight:400;font-size:clamp(54px,7.6vw,118px);line-height:.92;letter-spacing:-.025em;color:#fff;filter:drop-shadow(0 12px 34px rgba(4,30,36,.5))}
html .lm .k25-st-title .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .02em .08em;margin-bottom:-.08em}
html .lm .k25-st-title .w>span{display:inline-block}
html .lm .k25-st-lede{margin:16px 0 0;max-width:52ch;font-size:clamp(14.5px,1.12vw,16.5px);line-height:1.6;font-weight:500;color:rgba(244,241,232,.88);text-shadow:0 2px 14px rgba(4,30,36,.5)}
html .lm .k25-facts{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
html .lm .k25-facts li{display:flex;flex-direction:column;gap:3px;padding:10px 16px 11px;border-radius:18px;min-width:108px;
  background:linear-gradient(160deg,rgba(255,255,255,.18),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2)}
html .lm .k25-facts b{font-family:var(--f-disp);font-weight:400;font-size:clamp(21px,1.8vw,27px);line-height:1;color:#fff;letter-spacing:-.01em;white-space:nowrap}
html .lm .k25-facts li>small{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,241,232,.72);max-width:19ch;line-height:1.3}
html .lm .k25-facts .k25-f-price b small,html body .k25-dd .k25-f-price b small{font-family:var(--f-script);font-size:.72em;color:var(--k-aqua,#7ad4e0);margin-right:4px;letter-spacing:0;text-transform:none;font-weight:400}
html .lm .k25-st-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
html .lm .k25-btn,html body .k25-dd .k25-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:100px;cursor:pointer;
  font:800 15px/1 var(--f-body);letter-spacing:.01em;text-decoration:none;border:0;transition:transform .35s var(--k-ease,ease),box-shadow .35s,background .25s,color .25s}
html .lm .k25-btn svg,html body .k25-dd .k25-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s var(--k-ease,ease)}
html .lm .k25-btn:hover svg,html body .k25-dd .k25-btn:hover svg{transform:translateX(4px)}
html .lm .k25-btn-sand{background:linear-gradient(170deg,#fffcf6,#f3e7cf);color:#0d3d4a;box-shadow:0 16px 30px -14px rgba(0,0,0,.55),inset 0 1px 0 #fff}
html .lm .k25-btn-sand:hover{transform:translateY(-2px);box-shadow:0 22px 36px -16px rgba(0,0,0,.6),inset 0 1px 0 #fff}
html .lm .k25-btn-glass{background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
html .lm .k25-btn-glass:hover{background:rgba(255,255,255,.18)}
/* copy entrance on change */
html .lm .k25-st-copy.is-in .w>span{animation:k25-rise .95s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--d) * 70ms + 180ms)}
html .lm .k25-st-copy.is-in .k25-st-tag{animation:k25-fade .8s .1s both}
html .lm .k25-st-copy.is-in .k25-st-lede{animation:k25-up .8s .42s both}
html .lm .k25-st-copy.is-in .k25-facts li{animation:k25-up .7s both}
html .lm .k25-st-copy.is-in .k25-facts li:nth-child(1){animation-delay:.5s}
html .lm .k25-st-copy.is-in .k25-facts li:nth-child(2){animation-delay:.58s}
html .lm .k25-st-copy.is-in .k25-facts li:nth-child(3){animation-delay:.66s}
html .lm .k25-st-copy.is-in .k25-st-cta{animation:k25-up .7s .72s both}
@keyframes k25-rise{from{transform:translateY(108%)}to{transform:none}}
@keyframes k25-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes k25-fade{from{opacity:0;transform:rotate(-3deg) translateX(-10px)}to{opacity:1;transform:rotate(-3deg)}}

/* mini coast locator */
html .lm .k25-loc{position:absolute;z-index:4;right:clamp(18px,2.6vw,36px);top:clamp(18px,2.6vw,34px);margin:0;width:clamp(230px,23vw,318px);padding:10px 10px 8px;border-radius:24px;
  background:linear-gradient(165deg,rgba(18,167,184,.55),rgba(10,51,64,.72));border:1px solid rgba(255,255,255,.2);
  box-shadow:0 26px 50px -24px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.25);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}
html .lm .k25-loc svg{display:block;width:100%;height:auto;border-radius:16px;overflow:hidden}
html .lm .k25-l-land{fill:#f3e7cf;stroke:#e3d2ae;stroke-width:1;stroke-linejoin:round}
html .lm .k25-l-foam{fill:none;stroke:rgba(255,255,255,.45);stroke-width:6;stroke-linejoin:round}
html .lm .k25-l-sea{font-family:var(--f-script);font-size:14px;fill:rgba(255,255,255,.6)}
html .lm .k25-l-route{fill:none;stroke:var(--k-coral,#f2864b);stroke-width:2.6;stroke-linecap:round}
html .lm .k25-l-boat{fill:none;stroke:#fff;stroke-width:2;stroke-dasharray:1 5;stroke-linecap:round}
html .lm .k25-lm .d{fill:#fff;stroke:#0a6b7c;stroke-width:1.6;transition:all .4s}
html .lm .k25-lm .r{transform-box:fill-box;transform-origin:center;fill:none;stroke:var(--k-coral,#f2864b);stroke-width:1.6;opacity:0}
html .lm .k25-lm.is-on .d{fill:var(--k-coral,#f2864b);stroke:#fff;stroke-width:1.8;r:5}
html .lm .k25-lm.is-on .r{opacity:1;transform-origin:center;animation:k25-ring 2.2s ease-out infinite}
@keyframes k25-ring{from{transform:scale(.4);opacity:.9}to{transform:scale(1.6);opacity:0}}
html .lm .k25-la rect{fill:#0a3340;opacity:.82}
html .lm .k25-la .ad{fill:#0a3340;stroke:#fff;stroke-width:1.4}
html .lm .k25-la.is-on .ad{fill:var(--k-teal,#0e8fa0)}
html .lm .k25-la text{font:800 8px/1 var(--f-body);letter-spacing:.06em;fill:#fff}
html .lm .k25-la.is-on rect{fill:var(--k-teal,#0e8fa0);opacity:1}
html .lm .k25-l-van circle{fill:#fff;stroke:var(--k-coral,#f2864b);stroke-width:2.4}
html .lm .k25-l-van{transition:transform 1.3s cubic-bezier(.22,1,.36,1)}
html .lm .k25-loc figcaption{display:flex;align-items:center;gap:6px;padding:8px 6px 2px;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff}
html .lm .k25-loc figcaption .pl svg{width:14px;height:14px;fill:#fff;display:block}
html .lm .k25-loc figcaption i{font-style:normal;color:var(--k-aqua,#7ad4e0)}
html .lm .k25-loc figcaption em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:600;opacity:.8}

/* stage nav */
html .lm .k25-st-nav{position:absolute;z-index:4;right:clamp(18px,2.6vw,36px);bottom:clamp(94px,8.6vw,124px);display:flex;align-items:center;gap:12px}
html .lm .k25-st-arrow{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;padding:0;
  background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.34);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .25s,transform .35s var(--k-ease,ease)}
html .lm .k25-st-arrow:hover{background:rgba(255,255,255,.24);transform:scale(1.06)}
html .lm .k25-st-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
html .lm .k25-st-count{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:6px;row-gap:6px;min-width:82px}
html .lm .k25-st-count b{font-family:var(--f-disp);font-weight:400;font-size:36px;line-height:1;color:#fff}
html .lm .k25-st-count span{font-weight:800;font-size:13px;color:rgba(255,255,255,.66)}
html .lm .k25-st-count i{grid-column:1 / -1;display:block;height:3px;border-radius:3px;background:rgba(255,255,255,.2);overflow:hidden}
html .lm .k25-st-count em{display:block;height:100%;width:100%;border-radius:inherit;background:linear-gradient(90deg,var(--k-aqua,#7ad4e0),#fff);transform:scaleX(0);transform-origin:0 50%}
html .lm .k25-dest-app.is-playing .k25-st-count em{animation:k25-bar 7s linear forwards}
@keyframes k25-bar{to{transform:scaleX(1)}}
html .lm .k25-st-credit{position:absolute;z-index:4;right:clamp(20px,2.8vw,40px);bottom:74px;font-size:10.5px;font-weight:600;color:rgba(255,255,255,.62);text-decoration:none;max-width:40%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html .lm .k25-st-credit:hover{color:#fff;text-decoration:underline}
/* shoreline at the foot of the stage */
html .lm .k25-st-tide{position:absolute;z-index:3;left:-4%;right:-4%;bottom:-1px;width:108%;height:clamp(52px,6vw,84px);pointer-events:none;animation:k25-drift 16s ease-in-out infinite alternate}
html .lm .k25-st-tide .a{fill:rgba(242,236,223,.42)}
html .lm .k25-st-tide .b{fill:var(--k25-sand,#f2ecdf)}
html .lm .k25-st-tide .f{stroke:rgba(255,255,255,.9);stroke-width:2.4;stroke-dasharray:14 10;stroke-linecap:round;animation:k25-dash 7s linear infinite}
@keyframes k25-drift{from{transform:translateX(0)}to{transform:translateX(-3%)}}
@keyframes k25-dash{to{stroke-dashoffset:-240}}

/* ---------- REGION CHIPS + POSTCARD RAIL ---------- */
html .lm .k25-rail-wrap{position:relative;z-index:5;margin-top:clamp(-40px,-3vw,-26px)}
html .lm .k25-regs{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:0 16px}
html .lm .k25-reg{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 16px 0 14px;border-radius:100px;border:0;cursor:pointer;
  background:var(--k-card,#fffcf7);color:var(--k-ink,#0d3d4a);font:800 13.5px/1 var(--f-body);box-shadow:var(--k-raise);transition:transform .35s var(--k-ease,ease),background .3s,color .3s}
html .lm .k25-reg i{width:9px;height:9px;border-radius:50%;background:var(--k25-rc,#0e8fa0)}
html .lm .k25-reg b{font-family:var(--f-disp);font-weight:400;font-size:17px;color:var(--k-muted);transition:color .3s}
html .lm .k25-reg:hover{transform:translateY(-2px)}
html .lm .k25-reg[aria-pressed="true"]{background:linear-gradient(150deg,var(--k-lagoon,#12a7b8),var(--k-deep,#0a6b7c));color:#fff}
html .lm .k25-reg[aria-pressed="true"] b{color:rgba(255,255,255,.8)}
html .lm .k25-reg[aria-pressed="true"] i{background:#fff}
html .lm [data-k25-reg="coco"],html .lm .k25-card[data-region="coco"]{--k25-rc:#0e8fa0}
html .lm [data-k25-reg="sur"],html .lm .k25-card[data-region="sur"]{--k25-rc:#f2864b}
html .lm [data-k25-reg="capital"],html .lm .k25-card[data-region="capital"]{--k25-rc:#2f8f6b}

html .lm .k25-rail{display:flex;gap:clamp(14px,1.6vw,22px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;
  padding:30px max(20px,calc((100% - 1240px) / 2)) 34px;scroll-padding-inline:max(20px,calc((100% - 1240px) / 2));
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%)}
html .lm .k25-rail::-webkit-scrollbar{display:none}
html .lm .k25-cardcell{flex:0 0 clamp(188px,16.4vw,232px);scroll-snap-align:center}
html .lm .k25-cardcell:nth-child(3n+1){--rot:-1.8deg}
html .lm .k25-cardcell:nth-child(3n+2){--rot:1.3deg}
html .lm .k25-cardcell:nth-child(3n){--rot:-.6deg}
html .lm .k25-card{position:relative;display:block;width:100%;aspect-ratio:3 / 4;padding:8px;border:0;border-radius:22px;cursor:pointer;text-align:left;color:var(--k-ink,#0d3d4a);
  background:linear-gradient(170deg,#fffdf8,#f8f1e3);box-shadow:0 22px 40px -24px rgba(60,55,30,.5),0 2px 0 rgba(255,255,255,.9) inset,0 0 0 1px rgba(13,61,74,.05);
  transform:rotate(var(--rot,0deg));transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s}
html .lm .k25-card:hover{transform:rotate(0) translateY(-8px);box-shadow:0 34px 50px -26px rgba(7,38,48,.55),0 2px 0 rgba(255,255,255,.9) inset}
html .lm .k25-card.is-on{transform:rotate(0) translateY(-12px);box-shadow:0 36px 54px -26px rgba(7,38,48,.6),0 0 0 2.5px var(--k25-rc,#0e8fa0),0 2px 0 rgba(255,255,255,.9) inset}
html .lm .k25-card-img{position:relative;display:block;height:calc(100% - 84px);border-radius:15px;overflow:hidden;background:#cfe5e3}
html .lm .k25-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
html .lm .k25-card:hover .k25-card-img img,html .lm .k25-card.is-on .k25-card-img img{transform:scale(1.07)}
html .lm .k25-card-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,34,42,.28),transparent 34%)}
html .lm .k25-card-stamp{position:absolute;z-index:2;top:16px;right:16px;width:48px;height:48px;border-radius:50%;display:grid;place-content:center;text-align:center;
  font-family:var(--f-disp);font-size:18px;line-height:.9;color:#fff;background:rgba(6,34,42,.26);border:2px dashed rgba(255,255,255,.85);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transform:rotate(-12deg)}
html .lm .k25-card-stamp span{display:block;font-family:var(--f-body);font-size:8.5px;font-weight:800;letter-spacing:.14em;opacity:.85}
html .lm .k25-card-cap{position:absolute;left:14px;right:48px;bottom:12px;display:flex;flex-direction:column;gap:4px}
html .lm .k25-card-name{font-family:var(--f-disp);font-size:clamp(19px,1.5vw,22px);line-height:1.05;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html .lm .k25-card-meta{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--k-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html .lm .k25-card-meta::before{content:"";flex:0 0 7px;height:7px;border-radius:50%;background:var(--k25-rc,#0e8fa0)}
html .lm .k25-card-go{position:absolute;right:12px;bottom:16px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--k25-rc,#0e8fa0);color:#fff;transform:scale(.7);opacity:0;transition:all .4s cubic-bezier(.22,1,.36,1)}
html .lm .k25-card-go svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
html .lm .k25-card:hover .k25-card-go,html .lm .k25-card.is-on .k25-card-go,html .lm .k25-card:focus-visible .k25-card-go{transform:none;opacity:1}
html .lm .k25-rail-arrows{position:absolute;top:0;right:max(20px,calc((100% - 1240px) / 2));display:flex;gap:8px}
html .lm .k25-rail-arrow{width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;padding:0;background:var(--k-card,#fffcf7);color:var(--k-ink,#0d3d4a);box-shadow:var(--k-raise);transition:transform .3s var(--k-ease,ease)}
html .lm .k25-rail-arrow:hover{transform:translateY(-2px)}
html .lm .k25-rail-arrow[disabled]{opacity:.4;cursor:default;transform:none}
html .lm .k25-rail-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
html .lm .k25-rail-arrow:focus-visible{outline:3px solid var(--k-teal,#0e8fa0);outline-offset:3px}
html .lm .k25-hint{margin:0;text-align:center;font-size:12.5px;font-weight:700;color:var(--k-muted);letter-spacing:.02em}

/* ---------- section foot ---------- */
html .lm .k25-dest-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 20px;margin-top:clamp(28px,4vw,48px);text-align:center}
html .lm .k25-dest-foot p{margin:0;font-family:var(--f-disp);font-size:clamp(22px,2.4vw,30px);color:var(--k-ink)}
html .lm .k25-dest-foot p em{font-family:var(--f-script);font-style:normal;color:var(--k-teal)}
html .lm .k25-dest-credits{flex:1 0 100%;margin:4px 0 0!important;font-family:var(--f-body)!important;font-size:11.5px!important;font-weight:600;color:var(--k-muted)!important;opacity:.85}

/* ---------- responsive (section) ---------- */
@media (max-width:1100px){
  html .lm .k25-loc{width:clamp(200px,26vw,250px)}
  html .lm .k25-st-top{max-width:calc(100% - 300px)}
}
@media (max-width:900px){
  html .lm .k25-dest-head{grid-template-columns:1fr;align-items:start}
}
@media (max-width:760px){
  html .lm .k25-stage{width:calc(100% - 24px);height:auto;min-height:clamp(600px,168vw,700px);border-radius:calc(34px - var(--k25-in) * 8px);margin-top:26px}
  html .lm .k25-st-shade{background:linear-gradient(0deg,rgba(6,34,42,.92) 0%,rgba(6,34,42,.66) 40%,rgba(6,34,42,.12) 64%,rgba(6,34,42,.36) 100%)}
  html .lm .k25-st-top{left:14px;top:14px;max-width:calc(100% - 150px);gap:8px}
  html .lm .k25-st-chip{font-size:9.5px;letter-spacing:.1em;padding:8px 12px 8px 10px;max-width:100%;min-width:0}
  html .lm .k25-st-chip span{overflow:hidden;text-overflow:ellipsis;min-width:0}
  html .lm .k25-st-play{position:absolute;left:0;top:46px;width:36px;padding:0;justify-content:center}
  html .lm .k25-st-play span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  html .lm .k25-loc{right:12px;top:12px;width:132px;padding:6px;border-radius:18px}
  html .lm .k25-loc svg{border-radius:12px}
  html .lm .k25-loc figcaption{font-size:9px;padding:5px 2px 1px;letter-spacing:.05em}
  html .lm .k25-l-sea{display:none}
  html .lm .k25-st-copy{left:18px;right:18px;width:auto;bottom:70px}
  html .lm .k25-st-tag{font-size:26px}
  html .lm .k25-st-title{font-size:clamp(44px,13.4vw,60px)}
  html .lm .k25-st-lede{font-size:14.5px;margin-top:10px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  html .lm .k25-facts{gap:8px;margin-top:14px}
  html .lm .k25-facts li{min-width:0;flex:1 1 0;padding:9px 11px 10px;border-radius:15px}
  html .lm .k25-facts b{font-size:19px}
  html .lm .k25-facts li>small{font-size:9px;letter-spacing:.08em}
  html .lm .k25-st-cta{margin-top:16px;gap:8px}
  html .lm .k25-st-cta .k25-btn{flex:1 1 auto;min-height:48px;padding:0 16px;font-size:14px}
  html .lm .k25-st-nav{left:58px;right:auto;bottom:auto;top:60px;flex-direction:row;gap:8px}
  html .lm .k25-st-arrow{width:36px;height:36px;border-width:1px}
  html .lm .k25-st-arrow svg{width:16px;height:16px}
  html .lm .k25-st-count{position:absolute;top:0;right:52px;min-width:0;display:none}
  html .lm .k25-st-credit{bottom:50px;top:auto;left:18px;right:18px;max-width:none;font-size:9.5px;text-align:left}
  html .lm .k25-st-tide{height:46px}
  html .lm .k25-rail-wrap{margin-top:-20px}
  html .lm .k25-regs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:6px 16px 4px}
  html .lm .k25-regs::-webkit-scrollbar{display:none}
  html .lm .k25-reg{flex:0 0 auto}
  html .lm .k25-rail-arrows{display:none}
  html .lm .k25-cardcell{flex-basis:clamp(158px,44vw,190px)}
  html .lm .k25-rail{padding:24px 18px 26px;scroll-padding-inline:18px}
  html .lm .k25-card-stamp{width:42px;height:42px;font-size:16px;top:14px;right:14px}
  html .lm .k25-dest-foot{padding:0 16px}
  html .lm .k25-dest-foot .btn{width:100%;justify-content:center}
}

/* ==========================================================================
   DETAIL SHEET — body-level, centered island on every screen size
   ========================================================================== */
html body .k25-dd{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;
  padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  font-family:var(--f-body);color:#0d3d4a;-webkit-font-smoothing:antialiased;overscroll-behavior:contain}
html body .k25-dd[hidden]{display:none}
html body .k25-dd *{box-sizing:border-box}
html body .k25-dd button{font-family:inherit}
html body .k25-dd-back{position:absolute;inset:0;background:radial-gradient(circle at var(--k25-ox,50vw) var(--k25-oy,60vh),rgba(18,167,184,.32),rgba(5,28,34,.74) 58%);
  backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);opacity:0;transition:opacity .35s ease}
html body .k25-dd[data-open="true"] .k25-dd-back{opacity:1}
html body .k25-dd-sheet{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);width:min(1140px,100%);height:min(780px,calc(100dvh - 36px));
  background:#fbf8f1;border-radius:34px;overflow:hidden;outline:none;
  box-shadow:0 70px 140px -50px rgba(3,20,26,.8),0 0 0 1px rgba(255,255,255,.55) inset;
  opacity:0;transform:translateY(28px) scale(.955);transition:opacity .35s ease,transform .6s cubic-bezier(.22,1,.36,1)}
html body .k25-dd[data-open="true"] .k25-dd-sheet{opacity:1;transform:none}
html body .k25-dd-x{position:absolute;z-index:8;top:16px;right:16px;width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;padding:0;
  background:#fffcf7;color:#0d3d4a;box-shadow:0 10px 24px -10px rgba(7,38,48,.45),inset 0 1px 0 #fff;transition:transform .35s cubic-bezier(.22,1,.36,1)}
html body .k25-dd-x:hover{transform:rotate(90deg)}
html body .k25-dd-x svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
html body .k25-dd button:focus-visible,html body .k25-dd a:focus-visible{outline:3px solid #0e8fa0;outline-offset:3px}
html body .k25-dd-sheet:focus-visible{outline:none}

/* gallery */
html body .k25-dd-gal{position:relative;overflow:hidden;background:#0a3340;min-height:0}
html body .k25-dd-slides{position:absolute;inset:0}
html body .k25-dd-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .8s ease;overflow:hidden}
html body .k25-dd-slide.is-on{opacity:1}
html body .k25-dd-slide img{width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}
html body .k25-dd-slide.is-on img{animation:k25-ddkb 9s ease-out both}
@keyframes k25-ddkb{from{transform:scale(1.02)}to{transform:scale(1.1) translate(-1%,-1%)}}
html body .k25-dd-gshade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(6,34,42,.78) 0%,rgba(6,34,42,0) 36%),linear-gradient(180deg,rgba(6,34,42,.35),transparent 20%)}
html body .k25-dd-garrow{position:absolute;z-index:3;top:50%;width:48px;height:48px;margin-top:-24px;border-radius:50%;display:grid;place-items:center;cursor:pointer;padding:0;color:#fff;
  background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.38);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .25s,transform .3s}
html body .k25-dd-garrow:hover{background:rgba(255,255,255,.28)}
html body .k25-dd-garrow.l{left:16px}html body .k25-dd-garrow.r{right:16px}
html body .k25-dd-garrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
html body .k25-dd-gfoot{position:absolute;z-index:3;left:18px;right:18px;bottom:18px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
html body .k25-dd-dots{display:flex;gap:8px;max-width:100%;overflow-x:auto;scrollbar-width:none;padding:4px}
html body .k25-dd-dots::-webkit-scrollbar{display:none}
html body .k25-dd-dots button{flex:0 0 auto;width:58px;height:42px;padding:0;border-radius:11px;overflow:hidden;cursor:pointer;border:2px solid rgba(255,255,255,.35);background:#0a3340;opacity:.72;transition:all .35s cubic-bezier(.22,1,.36,1)}
html body .k25-dd-dots button img{width:100%;height:100%;object-fit:cover;display:block}
html body .k25-dd-dots button[aria-current="true"]{opacity:1;border-color:#fff;transform:translateY(-3px);box-shadow:0 10px 20px -8px rgba(0,0,0,.6)}
html body .k25-dd-credit{font-size:10.5px;font-weight:600;color:rgba(255,255,255,.72);text-decoration:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .k25-dd-credit:hover{color:#fff;text-decoration:underline}
html body .k25-dd-prog{position:absolute;z-index:3;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.14)}
html body .k25-dd-prog span{display:block;height:100%;background:linear-gradient(90deg,#7ad4e0,#fff);transform:scaleX(0);transform-origin:0 50%}
html body .k25-dd.is-auto .k25-dd-prog span{animation:k25-bar 4.6s linear forwards}
html body .k25-dd.is-hold .k25-dd-prog span{animation-play-state:paused}
html body .k25-dd:not(.is-auto) .k25-dd-prog{opacity:0}
html body .k25-dd-tide{display:none}

/* body */
html body .k25-dd-body{position:relative;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:clamp(26px,3.4vw,46px) clamp(22px,3.2vw,44px) clamp(24px,3vw,40px);min-height:0;
  background:radial-gradient(520px 260px at 100% 0%,rgba(122,212,224,.18),transparent 70%),#fbf8f1}
html body .k25-dd-kick{display:flex;align-items:center;gap:10px;margin:0 60px 10px 0;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#0a6b7c}
html body .k25-dd-kick span{font-family:var(--f-disp);font-size:15px;letter-spacing:.04em;color:#0d3d4a;padding:5px 10px;border-radius:100px;background:#f3e7cf}
html body .k25-dd-title{margin:0;font-family:var(--f-disp);font-weight:400;font-size:clamp(40px,4.4vw,62px);line-height:.95;letter-spacing:-.02em;color:#0d3d4a;padding-right:40px}
html body .k25-dd-tag{margin:6px 0 0;font-family:var(--f-script);font-size:clamp(24px,2.2vw,30px);line-height:1.15;color:#0e8fa0;transform:rotate(-2deg);transform-origin:0 50%}
html body .k25-dd-lede{margin:16px 0 0;font-size:16px;line-height:1.66;font-weight:500;color:#3d5e65}
html body .k25-dd-h{display:flex;align-items:center;gap:8px;margin:24px 0 12px;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#0a6b7c}
html body .k25-dd-h svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html body .k25-dd-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
html body .k25-dd-list li{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:16px;background:#fffcf7;font-size:14px;line-height:1.4;font-weight:600;color:#0d3d4a;
  box-shadow:6px 6px 16px rgba(120,120,100,.16),-5px -5px 14px rgba(255,255,255,.9),inset 0 1px 0 #fff}
html body .k25-dd-list svg{flex:0 0 22px;width:22px;height:22px;fill:none;stroke:#0e8fa0;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:-1px}
html body .k25-dd-ride{position:relative;margin-top:24px;padding:20px 20px 18px;border-radius:26px;color:#f4f1e8;overflow:hidden;isolation:isolate;
  background:linear-gradient(155deg,#16a9ba 0%,#0e8fa0 30%,#0a6b7c 62%,#0a3340 100%);box-shadow:0 26px 50px -28px rgba(7,38,48,.7),inset 0 1px 0 rgba(255,255,255,.25)}
html body .k25-dd-ride::before{content:"";position:absolute;inset:auto -10% -40px -10%;height:120px;z-index:-1;opacity:.35;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30 C 60 10 120 50 200 30 S 340 10 400 30 V60 H0Z' fill='%237ad4e0'/%3E%3C/svg%3E") center bottom/100% 60px no-repeat}
html body .k25-dd-ride .k25-dd-h{margin:0 0 14px;color:#bfeff5}
html body .k25-dd-route{display:flex;align-items:center;gap:10px;margin-bottom:14px}
html body .k25-dd-route span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:100px;font-weight:800;font-size:13px;white-space:nowrap}
html body .k25-dd-route .o{background:#fbf8f1;color:#0d3d4a}
html body .k25-dd-route .o svg{width:15px;height:15px;fill:#0e8fa0}
html body .k25-dd-route .d{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;overflow:hidden;text-overflow:ellipsis;min-width:0}
html body .k25-dd-route i{position:relative;flex:1 1 auto;min-width:28px;height:2px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.7) 0 6px,transparent 6px 11px)}
html body .k25-dd-route em{position:absolute;top:50%;left:0;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#f2864b;box-shadow:0 0 0 4px rgba(242,134,75,.3);animation:k25-van 3.2s cubic-bezier(.45,0,.55,1) infinite}
@keyframes k25-van{0%{left:0}50%{left:calc(100% - 10px)}100%{left:0}}
html body .k25-dd-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
html body .k25-dd-facts li{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}
html body .k25-dd-facts b{font-family:var(--f-disp);font-weight:400;font-size:clamp(19px,1.6vw,23px);line-height:1.02;color:#fff}
html body .k25-dd-facts .k25-f-price b{white-space:nowrap}
html body .k25-dd-facts li>small{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,241,232,.72);line-height:1.3}
html body .k25-dd-why{margin:14px 0 0;font-size:14.5px;line-height:1.6;color:rgba(244,241,232,.92);font-weight:500}
html body .k25-dd-hotels{margin-top:14px}
html body .k25-dd-hotels small{display:block;margin-bottom:8px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#bfeff5}
html body .k25-dd-hotels ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
html body .k25-dd-hotels li{padding:6px 11px;border-radius:100px;background:rgba(255,255,255,.13);font-size:12.5px;font-weight:700;color:#fff}
html body .k25-dd-hotels li.more{background:transparent;border:1px dashed rgba(255,255,255,.45)}
html body .k25-dd-note{margin:12px 0 0;font-size:11px;font-weight:600;color:rgba(244,241,232,.62)}
html body .k25-dd-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
html body .k25-dd-cta .k25-btn{flex:1 1 auto}
html body .k25-btn-teal{background:linear-gradient(160deg,#16a9ba,#0e8fa0 45%,#0a6b7c);color:#fff;box-shadow:0 14px 26px -14px rgba(10,107,124,.8),inset 0 1px 0 rgba(255,255,255,.3)}
html body .k25-btn-teal:hover{transform:translateY(-2px)}
html body .k25-btn-line{background:#f3eee2;color:#0d3d4a;box-shadow:inset 0 0 0 1.5px rgba(13,61,74,.16)}
html body .k25-btn-line:hover{background:#ece4d2}
html body .k25-dd-pn{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;padding-top:18px;border-top:1.5px dashed rgba(13,61,74,.15)}
html body .k25-dd-pn button{display:flex;flex-direction:column;gap:4px;align-items:flex-start;padding:12px 14px;border-radius:16px;border:0;cursor:pointer;background:transparent;color:#0d3d4a;text-align:left;transition:background .25s}
html body .k25-dd-pn button:last-child{align-items:flex-end;text-align:right}
html body .k25-dd-pn button:hover{background:#f3eee2}
html body .k25-dd-pn small{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#5a7a80}
html body .k25-dd-pn small svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
html body .k25-dd-pn b{font-family:var(--f-disp);font-weight:400;font-size:21px;line-height:1.1}
html body .k25-dd-sheet.is-swap .k25-dd-body>*{animation:k25-up .55s cubic-bezier(.22,1,.36,1) both}
html body .k25-dd-sheet.is-swap .k25-dd-body>*:nth-child(2){animation-delay:.04s}
html body .k25-dd-sheet.is-swap .k25-dd-body>*:nth-child(3){animation-delay:.08s}
html body .k25-dd-sheet.is-swap .k25-dd-body>*:nth-child(n+4){animation-delay:.12s}

@media (max-width:860px){
  html body .k25-dd-sheet{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);display:flex;flex-direction:column;height:auto;max-height:calc(100dvh - 28px);border-radius:28px;width:min(620px,100%)}
  html body .k25-dd-gal{flex:0 0 auto;aspect-ratio:16 / 11;max-height:42dvh;width:100%}
  html body .k25-dd-body{flex:1 1 auto;padding:6px 20px 22px;margin-top:-1px}
  html body .k25-dd-tide{display:block;position:absolute;z-index:4;left:-4%;width:108%;bottom:-2px;height:34px;pointer-events:none}
  html body .k25-dd-tide .a{fill:rgba(251,248,241,.45)}
  html body .k25-dd-tide .b{fill:#fbf8f1}
  html body .k25-dd-tide .f{stroke:rgba(255,255,255,.95);stroke-width:2;stroke-dasharray:12 9}
  html body .k25-dd-gfoot{bottom:34px;left:14px;right:14px;gap:6px}
  html body .k25-dd-dots button{width:46px;height:34px;border-radius:9px}
  html body .k25-dd-garrow{width:40px;height:40px;margin-top:-30px}
  html body .k25-dd-garrow.l{left:10px}html body .k25-dd-garrow.r{right:10px}
  html body .k25-dd-x{top:12px;right:12px;width:42px;height:42px;background:rgba(255,252,247,.94)}
  html body .k25-dd-kick{margin-right:0}
  html body .k25-dd-title{font-size:clamp(34px,10vw,46px);padding-right:0}
  html body .k25-dd-lede{font-size:15px}
}
@media (max-width:480px){
  html body .k25-dd{padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))}
  html body .k25-dd-sheet{max-height:calc(100dvh - 20px);border-radius:24px}
  html body .k25-dd-list{grid-template-columns:1fr}
  html body .k25-dd-facts{gap:6px;grid-template-columns:1fr 1fr}
  html body .k25-dd-facts .k25-f-price{grid-column:1 / -1;flex-direction:row;align-items:baseline;gap:10px}
  html body .k25-dd-facts li{padding:9px 9px}
  html body .k25-dd-facts b{font-size:18px}
  html body .k25-dd-facts li>small{font-size:8.5px;letter-spacing:.06em}
  html body .k25-dd-route span{font-size:12px;padding:7px 10px}
  html body .k25-dd-cta .k25-btn{width:100%}
  html body .k25-dd-pn b{font-size:18px}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html .lm .k25-stage{transform:none!important;border-radius:34px}
  html .lm .k25-st-layer,html .lm .k25-st-layer img,html .lm .k25-st-layer.is-enter,html .lm .k25-st-layer.is-enter img{animation:none!important;transform:none!important;-webkit-mask:none!important;mask:none!important}
  html .lm .k25-st-copy .w>span,html .lm .k25-st-copy *{animation:none!important}
  html .lm .k25-st-chip i,html .lm .k25-lm.is-on .r,html .lm .k25-st-tide,html .lm .k25-st-tide .f,html .lm .k25-dest-palm,html .lm .k25-st-count em{animation:none!important}
  html .lm .k25-l-van,html .lm .k25-card,html .lm .k25-card-img img{transition:none!important}
  html body .k25-dd-slide,html body .k25-dd-sheet,html body .k25-dd-back{transition:none!important}
  html body .k25-dd-slide.is-on img,html body .k25-dd-route em,html body .k25-dd-prog span,html body .k25-dd-sheet.is-swap .k25-dd-body>*{animation:none!important}
  html body .k25-dd-route em{left:calc(50% - 5px)}
}
html .lm .k25-st-play[hidden]{display:none!important}
