/* Explore's place-first visual layer. Extends Foundation v1; no invented site photography. */
.explore-v1{max-width:820px;margin:0 auto;padding:13px 18px calc(104px + env(safe-area-inset-bottom));color:var(--ink)}
.explore-intro{margin:4px 2px 13px}
.explore-intro h1{font:400 clamp(30px,7vw,44px)/1.15 var(--serif);margin:5px 0 6px}
.explore-intro p{font-size:13px;color:var(--sub);line-height:1.55;margin:0}
.explore-search-row{display:flex;align-items:center;gap:7px;background:var(--glass-bg);
 border:1px solid var(--glass-edge);border-radius:15px;min-height:45px;
 box-shadow:var(--glass-shadow);padding:0 10px;margin:8px 1px 12px}
.explore-search-row input{display:block;flex:1;min-width:0;min-height:44px;font:400 14px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
 border:0;outline-offset:2px;color:var(--ink);background:transparent}
.explore-search-row button{flex:0 0 auto;min-width:44px;min-height:44px;color:var(--accent);border:0;background:transparent}
.explore-filter-frame{width:100%;overflow:hidden;margin:4px 0 13px}
.explore-categories{display:flex;flex-wrap:nowrap;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;
 scroll-snap-type:x proximity;padding-bottom:5px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.explore-categories::-webkit-scrollbar{display:none}
.explore-chip{flex:0 0 auto;min-height:44px;padding:10px 13px;border-radius:999px;
 background:var(--glass-bg);color:var(--sub);font-size:12px;font-weight:550;
 border:1px solid var(--glass-edge);scroll-snap-align:start}
.explore-chip[aria-pressed="true"]{background:linear-gradient(135deg,#dfbb80,var(--accent));
 border-color:transparent;color:#342718;font-weight:700}
.explore-places{display:grid;gap:12px}
.explore-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.explore-place,.explore-detail-scene{position:relative;isolation:isolate;overflow:hidden;
 border-radius:var(--surface-radius);box-shadow:var(--surface-shadow);background:#31677a;color:#fff9eb}
.explore-place .explore-scene,.explore-detail-scene .explore-scene{position:absolute;inset:0;pointer-events:none;
 background:radial-gradient(ellipse 75% 60% at 78% 17%,rgba(245,218,161,.69),transparent 80%),
 radial-gradient(ellipse 105% 95% at 5% 93%,rgba(47,138,149,.6),transparent 78%),
 linear-gradient(162deg,#a2cacc 0%,#4f8e9c 53%,#153c55 100%)}
.explore-scene::before{content:"";position:absolute;inset:23% -23% -19%;border-top:1px solid rgba(250,240,205,.29);
 border-radius:50%;transform:rotate(-8deg)}
.explore-scene::after{content:"";position:absolute;top:12%;right:13%;width:22%;max-width:135px;
 aspect-ratio:1;border-radius:50%;border:1px solid rgba(245,230,195,.38);
 box-shadow:0 0 48px rgba(254,207,129,.24)}
.explore-kind-beach .explore-scene{background:radial-gradient(ellipse 65% 55% at 80% 8%,rgba(255,232,178,.7),transparent 90%),
 linear-gradient(166deg,#b8e1df 0%,#79bbbc 39%,#336c80 62%,#dac2a0 100%)}
.explore-kind-wellness .explore-scene{background:radial-gradient(ellipse 75% 70% at 24% 5%,rgba(232,222,191,.55),transparent 89%),linear-gradient(153deg,#a7bcb0,#426c74 65%,#19384e)}
.explore-kind-evening .explore-scene{background:radial-gradient(ellipse 74% 56% at 79% 12%,rgba(234,161,94,.4),transparent 81%),linear-gradient(153deg,#305c69,#172f49 55%,#111b30)}
.explore-kind-pool .explore-scene,.explore-kind-lagoon .explore-scene{background:radial-gradient(ellipse 80% 65% at 79% 11%,rgba(248,233,194,.76),transparent 88%),linear-gradient(163deg,#b7d7d6,#6db0b5 43%,#24657a 69%,#143e5c)}
body[data-period="evening"] .explore-place .explore-scene,body[data-period="evening"] .explore-detail-scene .explore-scene{
 filter:brightness(.75) saturate(.8)}
.explore-place::after,.explore-detail-scene::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
 background:linear-gradient(0deg,rgba(9,23,35,.86) 0%,rgba(9,23,35,.3) 46%,transparent 77%)}
.explore-place-button{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;
 justify-content:flex-end;width:100%;height:100%;min-height:160px;gap:7px;padding:16px 17px;
 text-align:left;color:#fff9ef;background:transparent;border:0;cursor:pointer}
.explore-place-button strong{font:400 clamp(21px,5.7vw,31px)/1.14 var(--serif);overflow-wrap:anywhere}
.explore-place-overline{font-size:9px;letter-spacing:1.7px;font-weight:750;color:#f3d29d;text-transform:uppercase}
.explore-place-cue{font-size:12px;line-height:1.55;color:#f5e6d1;max-width:37em}
.explore-place-affordance{font-size:11px;color:#fff7eb;line-height:1.45;font-weight:650}
.explore-feature .explore-place-button{min-height:clamp(265px,39svh,395px);padding:20px 22px;gap:11px}
.explore-feature .explore-place-button strong{font-size:clamp(30px,8vw,46px)}
.explore-secondary .explore-place:first-child:nth-last-child(odd){grid-column:1/-1}
.explore-more,.explore-next,.explore-back{display:block;min-height:44px;margin:15px 0;border:1px solid var(--glass-edge);
 color:var(--accent);background:var(--glass-bg);padding:10px 18px;border-radius:14px;font-size:13px;font-weight:600}
.explore-more{width:100%}
.explore-small-note{font-size:11px;line-height:1.55;color:var(--sub);margin:11px 3px}
.explore-empty{padding:22px 9px;color:var(--sub);font-size:13px;line-height:1.55}
.explore-back{margin:0 0 12px}
.explore-detail-scene{min-height:clamp(300px,45svh,475px);display:flex;flex-direction:column;justify-content:flex-end}
.explore-detail-copy{position:relative;z-index:1;padding:22px 20px 23px;text-shadow:0 2px 13px rgba(0,0,0,.36)}
.explore-detail-copy .eyebrow{color:#f0ce99}
.explore-detail-copy h1{font:400 clamp(30px,7.7vw,50px)/1.12 var(--serif);margin:10px 0 6px;overflow-wrap:anywhere}
.explore-detail-copy p{font-size:13px;line-height:1.55;color:#f4e8d6}
.explore-place-status{margin:15px 4px;color:var(--sub);font-size:12px;line-height:1.4}
.explore-place-choices h2{font:400 clamp(24px,6vw,33px)/1.2 var(--serif);margin:12px 2px 9px}
.explore-intro-note{color:var(--sub);font-size:12px;line-height:1.55;margin:5px 2px 12px}
.explore-offerings{padding:0;list-style:none;margin:0 0 14px;display:grid;gap:8px}
.explore-offerings li{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;
 border:1px solid var(--glass-edge);border-radius:13px;padding:12px 13px;background:var(--glass-bg)}
.explore-service-name{font-size:13px;font-weight:650;color:var(--ink);text-transform:capitalize}
.explore-service-info{font-size:11px;line-height:1.5;color:var(--sub)}
.explore-routes{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0}
.explore-route,.explore-here,.explore-list-link{flex:1 1 160px;min-height:48px;border-radius:15px;
 border:1px solid var(--glass-edge);background:var(--glass-bg);padding:13px 16px;
 font-size:13px;font-weight:650;color:var(--ink)}
.explore-route:first-child{background:linear-gradient(125deg,#e8c58d,#c89d61);color:#30271b;border-color:transparent}
.explore-here{width:100%;margin:4px 0 14px;color:var(--accent)}
.explore-saved{margin:14px 0;padding:15px;border:1px solid var(--glass-edge);border-radius:17px;background:var(--glass-bg)}
.explore-saved h3{font:400 21px/1.2 var(--serif)}
.explore-saved p{font-size:12px;line-height:1.5;color:var(--sub)}
.explore-saved .explore-list-link{width:100%;margin-top:10px}
.explore-source-details{margin:23px 0 17px;border:1px solid var(--glass-edge);border-radius:15px;
 background:var(--glass-bg);padding:13px;color:var(--sub);font-size:11px;line-height:1.6}
.explore-source-details summary{cursor:pointer;color:var(--ink);font-size:12px;min-height:30px;font-weight:650}
.explore-source-details p{margin:10px 0}
.explore-source-details li{overflow-wrap:anywhere;margin:5px 0}
@media(max-width:360px){.explore-v1{padding:8px 12px calc(102px + env(safe-area-inset-bottom))}
 .explore-secondary{gap:8px}.explore-place-button{padding:12px}
 .explore-place-button strong{font-size:19px}.explore-feature .explore-place-button{min-height:260px;padding:18px}
 .explore-feature .explore-place-button strong{font-size:30px}
 .explore-detail-copy{padding:18px 15px}.explore-detail-copy h1{font-size:32px}}
@media(min-width:950px) and (orientation:landscape){.explore-v1{max-width:930px;padding:13px 23px 75px}
 .explore-places{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:stretch}
 .explore-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
 .explore-feature .explore-place-button{min-height:470px}
 .explore-secondary .explore-place:first-child:nth-last-child(odd){grid-column:auto}
 .explore-detail-scene{min-height:430px}}
@media(prefers-reduced-motion:reduce){.explore-categories{scroll-behavior:auto}}
@media(prefers-reduced-transparency:reduce){.explore-chip,.explore-offerings li,.explore-source-details,.explore-search-row{background:var(--paper)}}
