.stays-page { --stay-green:#536b58; --stay-dark:#25392d; }
.stays-page main h1,.stays-page main h2,.stays-page main h3,.stay-crosslink strong { font-family:'League Spartan','Arial Black',sans-serif;font-weight:800;letter-spacing:-.045em; }
.stays-page main h2 { font-size:clamp(42px,5.1vw,84px);line-height:1.02; }
.stays-page p { line-height:1.65; }
.stay-shell { width:min(1440px,calc(100% - 2 * var(--gutter)));margin-inline:auto; }
.stay-kicker { font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;line-height:1.5; }
.stay-hero { position:relative;isolation:isolate;margin:14px;min-height:660px;height:calc(100svh - 28px);max-height:1150px;border-radius:22px;overflow:hidden;color:#fff;background:#485447; }
.stay-hero-media,.stay-hero-shade { position:absolute;inset:0;z-index:-1; }
.stay-hero-media img { display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%;transform:scale(var(--stay-photo-scale,1.035)); }
/* Keep the stretched foreground below the hero frame in every layout. */
.apartments-page .stay-hero-media { bottom:-22%; }
.apartments-page .stay-hero-media img { object-position:50% 0;transform-origin:center top; }
.stay-hero-shade { background:linear-gradient(180deg,#1420173d,transparent 30%,#15201680 75%,#12221999); }
.stay-brand { position:absolute;left:calc(var(--gutter) - 14px);top:15px;width:108px;height:44px;display:flex;align-items:center; }
.stay-brand img { width:100%;filter:brightness(0) invert(1); }
.stay-hero-copy { position:absolute;bottom:52px;left:calc(var(--gutter) - 14px);right:calc(var(--gutter) - 14px); }
.stay-hero-copy .stay-kicker { font-size:14px;margin-bottom:20px; }
.stay-hero h1 { font-size:clamp(74px,10.5vw,172px);line-height:.91;margin:0;max-width:1100px; }
.apartments-page .stay-hero h1 { font-size:clamp(68px,9vw,152px); }
html[lang=en] .hotels-page .stay-hero h1 { max-width:none; }
html[lang=en] .apartments-page .stay-hero h1 { font-size:clamp(68px,14.7vw,280px);max-width:none;text-align:center; }
.stay-title-line { white-space:nowrap; }
@media(max-width:650px){html[lang=en] .hotels-page .stay-hero h1{font-size:clamp(32px,10.5vw,68px)}}
@media(max-width:650px){html[lang=en] .apartments-page .stay-hero-copy{left:12px;right:12px}html[lang=en] .apartments-page .stay-hero h1{font-size:calc(16vw - 6.4px)}}
.stay-hero-action { display:flex;align-items:center;gap:20px;width:fit-content;font-size:13px;margin-top:34px; }
.stay-round { border:1px solid #ffffff88;border-radius:50%;display:grid;place-items:center;width:44px;height:44px;line-height:0;flex:none;transition:transform .3s; }
.stay-round svg { display:block;width:24px;height:24px; }
.stay-hero-action:hover .stay-round { transform:translateY(4px); }
.stay-hero-caption { position:absolute;bottom:60px;right:calc(var(--gutter) - 14px);font-size:10px;letter-spacing:.1em; }
.stay-intro { padding-block:112px 76px;scroll-margin-top:100px; }
.stay-intro>.stay-kicker { color:var(--stay-green);margin-bottom:32px; }
.stay-intro-grid { display:grid;grid-template-columns:1.3fr .7fr;gap:8%;align-items:end; }
.stay-intro-grid p { font-size:17px;max-width:460px; }
.stay-external-arrow { display:block;width:24px;height:24px;flex:none; }
.stay-inline-link>.stay-external-arrow,.stay-service-list .stay-external-arrow { width:18px;height:18px; }
.stay-intro-grid .stay-inline-link { margin-top:24px; }
.stay-inline-link { display:inline-flex;align-items:center;gap:24px;font-size:13px;padding-bottom:8px;border-bottom:1px solid #58645277; }
.hotel-carousel { padding-bottom:104px;overflow:hidden; }
.hotel-carousel:focus-visible { outline-offset:-4px; }
.hotel-carousel-top { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:10px; }
.stay-carousel-controls { display:flex;align-items:center;gap:10px; }
.stay-carousel-controls>span { font-size:11px;letter-spacing:.07em;margin-right:16px;font-variant-numeric:tabular-nums; }
.stay-circle { width:44px;height:44px;border-radius:50%;border:1px solid #52635566;background:transparent;font-size:22px;transition:background .2s,color .2s; }
.stay-circle:hover:not(:disabled) { background:var(--stay-dark);color:#fff; }
.stay-circle:disabled { opacity:.28;cursor:default; }
.hotel-track { position:relative;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:0 0 24px;scrollbar-width:none;overscroll-behavior-x:contain; }
.hotel-track::-webkit-scrollbar { display:none; }
.hotel-slide { flex:0 0 min(62vw,880px);min-width:0;scroll-snap-align:center; }
.hotel-slide-body { transform:scale(var(--carousel-scale,1));transform-origin:center top; }
.hotel-image-link { position:relative;display:block;height:clamp(420px,45vw,620px);border-radius:20px;overflow:hidden;background:#70806d;color:#fff; }
.hotel-image-link>img { width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.hotel-image-link:hover>img { transform:scale(1.035); }
.hotel-image-veil { position:absolute;inset:0;background:linear-gradient(180deg,#17251918,transparent 40%,#16211899); }
.hotel-slide-number { position:absolute;top:25px;left:26px;font-size:12px;letter-spacing:.1em; }
.hotel-image-caption { position:absolute;bottom:32px;left:30px;width:calc(100% - 125px);font-family:'League Spartan',sans-serif;font-weight:650;font-size:clamp(26px,2.5vw,40px);line-height:1.05;letter-spacing:-.03em; }
.hotel-open { position:absolute;bottom:28px;right:28px;border:1px solid #fff8;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:27px; }
.hotel-slide-info { display:flex;align-items:end;justify-content:space-between;gap:20px;padding-top:25px; }
.hotel-slide-info .stay-kicker { color:var(--stay-green); }
.hotel-slide-info h3 { font-size:clamp(30px,2.7vw,43px);margin:9px 0 0;line-height:1; }
.hotel-slide-info .stay-inline-link { white-space:nowrap;font-size:11px; }
.hotel-index { display:flex;flex-wrap:wrap;gap:12px 32px;margin-bottom:28px; }
.hotel-index button { padding:10px 0;background:none;font-size:12px;color:#657466;border-bottom:2px solid transparent; }
.hotel-index button[aria-current=true] { color:var(--ink);border-color:var(--stay-green); }
.stay-moments { display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center;padding-block:40px 125px; }
.stay-moment-main img { display:block;width:100%;height:650px;object-fit:cover;border-radius:20px; }
.stay-moment-main figcaption { font-size:12px;line-height:1.5; }
.stay-moment-main figcaption>span { font-size:9px;letter-spacing:.08em;white-space:nowrap; }
.stay-moment-copy>.stay-kicker { color:var(--stay-green);margin-bottom:24px; }
.stay-moment-copy>p:not(.stay-kicker) { font-size:15px;margin-top:25px; }
.stay-service-list { list-style:none;padding:0;margin:30px 0 0; }
.stay-service-list li { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.4; }
.stay-service-list li:first-child { border-top:1px solid var(--line); }
.stay-service-list small { font-size:10px;opacity:.65; }
.stay-moment-copy>p.stay-small { font-size:11px;color:var(--muted);line-height:1.6;max-width:370px;margin-top:18px; }
.stay-crosslink { position:relative;display:block;min-height:620px;margin:0 14px;border-radius:22px;overflow:hidden;color:#fff;isolation:isolate; }
.stay-crosslink>div { position:absolute;inset:0;z-index:-2; }
.stay-crosslink>div>img { width:100%;height:100%;object-fit:cover;transition:transform 1.2s; }
.stay-crosslink:hover>div>img { transform:scale(1.035); }
.stay-crosslink:after { position:absolute;content:'';inset:0;background:linear-gradient(90deg,#161616aa,transparent);z-index:-1; }
.stay-crosslink-copy { display:flex;align-items:start;flex-direction:column;gap:30px;padding:85px calc(var(--gutter) - 14px); }
.stay-crosslink strong { font-size:clamp(55px,7.5vw,115px);line-height:1.02; }
.stay-crosslink-action { display:flex;align-items:center;gap:40px;border-bottom:1px solid #fff8;padding-bottom:12px;font-size:14px; }
.stay-crosslink-action svg,.stay-contact-link svg { width:24px;height:24px;flex-shrink:0; }
.stay-contact { padding-top:115px; }
.stay-contact>.stay-kicker { color:var(--stay-green);margin-bottom:34px; }
.stay-contact-grid { display:grid;grid-template-columns:1.1fr .9fr;gap:10%; }
.stay-contact-grid p { max-width:400px;font-size:16px; }
.stay-contact-link { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 16px;border-bottom:1px solid var(--line);font-size:clamp(24px,3vw,40px);letter-spacing:-.035em; }
.stay-phone { display:block;font-size:17px;margin-top:20px; }
.stay-footer-bottom { display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:28px 0;margin-top:105px;font-size:11px; }
.stay-footer-bottom img { display:block;width:105px;height:auto;filter:brightness(0) invert(.15); }
.apartment-gallery { display:grid;grid-template-columns:repeat(12,1fr);gap:80px 5%;padding-bottom:130px; }
.apartment-shot { min-width:0; }
.apartment-shot button { position:relative;display:block;width:100%;padding:0;background:#778471;border-radius:19px;overflow:hidden; }
.apartment-shot img { display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s; }
.apartment-shot button:hover img { transform:scale(1.04); }
.apartment-shot-1 { grid-column:1/8; }
.apartment-shot-1 button { aspect-ratio:1.2; }
.apartment-shot-2 { grid-column:9/13;padding-top:155px; }
.apartment-shot-2 button { aspect-ratio:.72; }
.apartment-shot-3 { grid-column:2/6; }
.apartment-shot-3 button { aspect-ratio:.8; }
.apartment-shot-4 { grid-column:7/13;padding-top:90px; }
.apartment-shot-4 button { aspect-ratio:1.1; }
.apartment-shot-5 { grid-column:1/8; }
.apartment-shot-5 button { aspect-ratio:1.25; }
.apartment-shot-6 { grid-column:9/13;padding-top:100px; }
.apartment-shot-6 button { aspect-ratio:.78; }
.apartment-shot figcaption { font-size:13px;padding-top:17px;line-height:1.5; }
.apartment-shot figcaption>span:last-child { font-size:10px;color:var(--stay-green); }
.gallery-expand { position:absolute;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;border:1px solid #fff9;background:#25392d66;color:#fff;display:grid;place-items:center;font-size:24px;backdrop-filter:blur(10px); }
.stay-included { padding:94px 0 110px;background:transparent;color:#252820; }
.stay-included .stay-kicker { color:#68716d;margin-bottom:38px; }
.stay-included-grid { display:grid;grid-template-columns:1.3fr .7fr;gap:8%; }
.stays-page main .stay-included h2 { font-size:clamp(48px,7vw,116px);line-height:.98; }
.stay-included-intro { font-size:16px;max-width:445px;color:#535b57; }
.stay-included .stay-service-list li { justify-content:start;border-color:#dfe3e1;font-size:17px;padding-block:21px; }
.stay-included .stay-service-list small { width:24px;flex-shrink:0; }
.stay-cities { padding-block:72px 80px;scroll-margin-top:90px; }
.stay-cities-heading { display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px; }
.stays-page main .stay-cities h2 { font-size:clamp(36px,4vw,62px); }
.stay-cities-heading .stay-kicker { color:var(--stay-green);margin-bottom:20px; }
.stay-city-count { display:flex;flex-direction:column;align-items:center;gap:10px; }
.stay-city-count strong { font-family:'League Spartan',sans-serif;line-height:.75;font-size:80px;letter-spacing:-.07em;font-weight:650;color:var(--stay-green); }
.stay-city-count>span { font-size:12px;line-height:1.6; }
.stay-city-list { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:32px;list-style:none;padding:0;margin:0; }
.stay-city-list li { border-bottom:1px solid var(--line);padding:13px 0;font-family:'League Spartan',sans-serif;font-size:clamp(23px,2vw,29px);font-weight:600;letter-spacing:-.025em;line-height:1.15; }
.stay-city-note { max-width:650px;font-size:13px;margin-top:22px;color:var(--muted); }
.stay-lightbox { width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;border:0;padding:60px 5vw 20px;background:#1f2a23;color:#fff; }
.stay-lightbox::backdrop { background:#1f2a23; }
.stay-lightbox button:focus-visible { outline-color:#dbeacb;outline-offset:4px; }
.stay-lightbox-close { position:absolute;top:16px;right:22px;width:42px;height:42px;border-radius:50%;background:#ffffff14;color:#fff;border:1px solid #fff5;font-size:30px; }
.stay-lightbox-image { width:100%;height:calc(100% - 80px);display:grid;place-items:center; }
.stay-lightbox-image img { width:100%;height:100%;object-fit:contain; }
.stay-lightbox-footer { display:flex;align-items:center;justify-content:space-between;gap:20px;height:80px;max-width:800px;margin-inline:auto; }
.stay-lightbox-footer>div { text-align:center;font-size:14px; }
.stay-lightbox-footer [data-photo-count] { font-size:10px;opacity:.6; }
.stay-lightbox-footer button { width:44px;height:44px;border:1px solid #fff5;border-radius:50%;background:none;color:#fff;font-size:24px; }
.stays-enhanced [data-reveal] { opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1); }
.stays-enhanced [data-reveal].is-visible { opacity:1;transform:none; }

@media(max-width:1000px){.stay-intro-grid{grid-template-columns:1.1fr .9fr;gap:5%}.stay-moment-main img{height:560px}.stay-city-list{grid-template-columns:repeat(3,minmax(0,1fr))}.stay-intro{padding-top:85px}.stay-hero{min-height:620px}.stay-moments{gap:6%}.stay-hero-caption{display:none}}
@media(max-width:650px){
  .stay-shell{width:calc(100% - 40px)}.stays-page main h2{font-size:clamp(38px,9.5vw,58px)}
  .stay-hero{margin:8px;border-radius:18px;min-height:570px;height:calc(92svh - 16px);max-height:850px}.stay-brand{left:16px;top:10px;width:88px}
  .stay-hero-copy{left:20px;right:20px;bottom:32px}.stay-hero-copy .stay-kicker{font-size:11px;margin-bottom:18px}.stay-hero h1{font-size:clamp(52px,13.5vw,86px);line-height:.97}.apartments-page .stay-hero h1{font-size:clamp(45px,11vw,70px);line-height:1.01}.stay-hero-action{font-size:12px;margin-top:25px}.stay-round{width:40px;height:40px}
  .hotels-page .stay-hero-media img{object-position:30% 55%}
  .hotel-image-link>img[src="/assets/stay-hotel-kuohu-studio.webp"]{object-position:35% 50%}
  .hotel-image-link>img[src="/assets/stay-hotel-frans-bedroom.webp"]{object-position:75% 50%}
  .hotel-image-link>img[src="/assets/stay-hotel-h28-double-detail.webp"]{object-position:70% 50%}
  .stay-intro{padding-block:66px 46px}.stay-intro>.stay-kicker{font-size:9px;margin-bottom:24px}.stay-intro-grid{grid-template-columns:1fr;gap:26px}.stay-intro-grid p{font-size:15px}.stay-intro-grid .stay-inline-link{margin-top:18px}
  .hotel-carousel{padding-bottom:58px}.hotel-carousel-top{margin-bottom:8px}.hotel-carousel-top>.stay-kicker{font-size:9px}.stay-carousel-controls{gap:7px}.stay-carousel-controls>span{font-size:10px;margin-right:4px}.stay-circle{width:38px;height:38px;font-size:19px}.hotel-track{padding-inline:0;scroll-padding-inline:0;gap:8px}.hotel-slide{flex-basis:74vw}.hotel-image-link{height:420px;max-height:65svh;border-radius:17px}.hotel-image-caption{left:22px;bottom:26px;font-size:30px;width:calc(100% - 90px)}.hotel-open{width:38px;height:38px;right:18px;bottom:24px;font-size:23px}.hotel-slide-number{left:22px;top:22px}.hotel-slide-info{gap:10px;align-items:start;flex-direction:column;padding-top:20px}.hotel-slide-info h3{font-size:32px}.hotel-slide-info .stay-kicker{font-size:10px}.hotel-slide-info .stay-inline-link{font-size:11px;margin-top:5px}.hotel-index{gap:8px 23px;margin-bottom:20px}.hotel-index button{font-size:11px}
  .stay-moments{grid-template-columns:1fr;gap:42px;padding-block:10px 65px}.stay-moment-main img{height:auto;aspect-ratio:1.1;border-radius:17px}.stay-moment-main figcaption{font-size:10px;gap:10px}.stay-moment-main figcaption>span{font-size:8px}.stay-moment-copy>.stay-kicker{font-size:10px}.stay-moment-copy>p:not(.stay-kicker){font-size:15px}
  .stay-crosslink{margin-inline:8px;min-height:480px;border-radius:18px}.stay-crosslink-copy{padding:60px 24px;gap:25px}.stay-crosslink strong{font-size:clamp(44px,12vw,65px)}.stay-crosslink .stay-kicker{font-size:10px}.stay-crosslink-action{font-size:12px;gap:22px;max-width:100%}.stay-crosslink:after{background:linear-gradient(90deg,#161616b0,#16161633)}
  .stay-contact{padding-top:65px}.stay-contact>.stay-kicker{font-size:10px;margin-bottom:26px}.stay-contact-grid{grid-template-columns:1fr;gap:32px}.stay-contact-grid p{font-size:15px}.stay-contact-link{font-size:29px;padding-top:18px}.stay-phone{font-size:16px}.stay-footer-bottom{margin-top:60px;padding-block:25px;gap:15px;flex-wrap:wrap;font-size:10px}.stay-footer-bottom img{width:85px}
  .apartment-gallery{grid-template-columns:repeat(6,1fr);gap:36px 12px;padding-bottom:65px}.apartment-shot-1,.apartment-shot-4,.apartment-shot-5{grid-column:1/7;padding-top:0}.apartment-shot-2{grid-column:2/7;padding-top:0}.apartment-shot-3{grid-column:1/6}.apartment-shot-6{grid-column:2/7;padding-top:0}.apartment-shot-1 button{aspect-ratio:1.05}.apartment-shot-2 button{aspect-ratio:.9}.apartment-shot-3 button{aspect-ratio:.95}.apartment-shot-4 button{aspect-ratio:1.05}.apartment-shot-5 button{aspect-ratio:1.05}.apartment-shot-6 button{aspect-ratio:.95}.apartment-shot button{border-radius:16px}.apartment-shot figcaption{font-size:12px;padding-top:12px}.gallery-expand{width:38px;height:38px;right:13px;bottom:13px}
  .stay-included{padding-block:65px}.stay-included .stay-kicker{font-size:10px;margin-bottom:27px}.stay-included-grid{grid-template-columns:1fr;gap:28px}.stay-included-intro{font-size:15px}.stay-included .stay-service-list li{font-size:15px;padding-block:19px}
  .stay-cities{padding-block:48px 54px}.stay-cities-heading{align-items:end;gap:20px;margin-bottom:24px}.stays-page main .stay-cities h2{font-size:32px}.stay-cities-heading .stay-kicker{font-size:9px;margin-bottom:16px}.stay-city-count{gap:7px;flex-shrink:0}.stay-city-count strong{font-size:60px}.stay-city-count>span{font-size:10px}.stay-city-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.stay-city-list li{font-size:23px;padding:10px 0}.stay-city-note{font-size:12px;margin-top:20px}.stay-lightbox{padding:62px 10px 12px}.stay-lightbox-footer>div{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.stays-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.stays-enhanced [data-reveal]{opacity:1;transform:none}.stay-hero-media img{transform:none}}

/* Let the opening photograph settle into the editorial introduction. */
/* Match the first CSS paint to the motion controller's opening rectangle. */
@media(prefers-reduced-motion:no-preference){
  .stay-hero{min-height:0;max-height:none;height:calc(100svh - 28px)}
}
@media(max-width:650px) and (prefers-reduced-motion:no-preference){
  .stay-hero{height:calc(100svh - 16px)}
}
.stay-hero-scroll { position:relative;z-index:1; }
.stay-hero-stage,.stay-hero-following { position:relative;display:flow-root; }
.stay-hero-viewport { position:absolute;width:0;height:100svh;visibility:hidden;pointer-events:none; }
.stay-hero-target { display:none; }
.stay-intro-copy>.stay-kicker { color:var(--stay-green);margin-bottom:32px; }
.stay-stage-brand { left:var(--gutter);top:29px;z-index:4; }
.has-motion .stay-hero-stage { position:sticky;top:0; }
.has-motion .stay-hero { position:absolute;z-index:2;inset:auto;margin:0;min-height:0;max-height:none;will-change:left,top,width,height; }
.has-motion .stay-hero-media img { animation:none;transform:scale(var(--stay-photo-scale,1.035)); }
.has-motion .stay-hero-shade { opacity:var(--stay-shade-opacity,1); }
.has-motion .stay-hero-copy { right:auto;transform-origin:left bottom;opacity:var(--stay-opening-opacity,1); }
.has-motion .stay-hero-caption { opacity:var(--stay-opening-opacity,1); }
.has-motion .stay-intro { display:grid;grid-template-columns:1fr 1.08fr;gap:8%;align-items:center;padding-block:130px 90px;min-height:690px; }
.has-motion .stay-intro-grid { display:block; }
.has-motion .stay-intro-grid p { margin-top:28px;font-size:16px; }
.has-motion .stay-intro-copy { opacity:var(--stay-intro-opacity,0); }
.has-motion .stay-intro h2 { font-size:clamp(40px,4.2vw,70px); }
.has-motion .stay-hero-target { display:block;width:100%;height:clamp(430px,64svh,700px);border-radius:20px; }
.has-motion .stay-stage-brand img { filter:brightness(0) invert(.15);transition:filter .2s; }
.has-motion .is-photo-behind-brand .stay-stage-brand img { filter:brightness(0) invert(1); }
.has-motion .is-photo-behind-brand .stay-stage-brand:focus-visible { outline-color:#fff; }
.has-motion .is-settled .stay-hero { will-change:auto; }
.has-motion .is-settled .stay-hero-copy { pointer-events:none; }
@media(max-width:1000px){
  .has-motion .stay-intro{gap:5%;grid-template-columns:1fr 1fr;padding-top:125px;}
  .has-motion .stay-intro h2{font-size:clamp(38px,4.8vw,60px)}
}
@media(max-width:650px){
  .stay-stage-brand{left:24px;top:18px}
  .stay-intro-copy>.stay-kicker{font-size:9px;margin-bottom:24px}
  .has-motion .stay-intro{grid-template-columns:1fr;gap:36px;padding-block:95px 55px;min-height:0}
  .has-motion .stay-hero-target{order:-1;height:clamp(280px,45svh,460px);border-radius:18px}
  .has-motion .stay-intro h2{font-size:clamp(38px,9.5vw,58px)}
  .has-motion .stay-intro-grid p{font-size:15px;margin-top:22px}
}

/* A compact pair for apartment locations and team accommodation. */
.stay-discovery { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;margin-top:64px; }
.stay-discovery .stay-cities { min-width:0;padding:clamp(28px,3vw,44px);border:1px solid #dfe3e1;border-radius:20px;background:#fffffff0;color:#252820;box-shadow:0 8px 28px #24282406; }
.stay-discovery .stay-cities-heading { align-items:start;gap:18px;margin-bottom:26px; }
.stays-page main .stay-discovery .stay-cities h2 { font-size:clamp(32px,3.2vw,48px);line-height:1.04; }
.stay-discovery .stay-cities-heading .stay-kicker { color:#68716d;font-size:10px;margin-bottom:18px; }
.stay-discovery .stay-city-count { flex-shrink:0;gap:8px;padding-top:4px; }
.stay-discovery .stay-city-count strong { color:#252820;font-size:64px; }
.stay-discovery .stay-city-count>span { color:#68716d;font-size:11px; }
.stay-discovery .stay-city-list { grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px; }
.stay-discovery .stay-city-list li { color:#252820;font-size:clamp(19px,1.6vw,24px);padding:9px 0;border-color:#dfe3e1; }
.stay-discovery .stay-city-note { color:#68716d;font-size:12px;line-height:1.55;margin-top:24px; }
.stay-discovery .stay-crosslink-projects { display:flex;min-width:0;min-height:0;margin:0;border-radius:20px;background:#e8e8e5;color:#fff; }
.stay-discovery .stay-crosslink-projects>div { bottom:-22%; }
.stay-discovery .stay-crosslink-projects>div>img { object-position:50% 0;transform-origin:center top; }
.stay-discovery .stay-crosslink-projects:after { background:linear-gradient(180deg,transparent 30%,#14141418 48%,#14141499 76%,#141414d9 100%); }
.stay-discovery .stay-crosslink-copy { flex:1;justify-content:flex-end;gap:24px;padding:clamp(28px,3vw,44px); }
.stay-discovery .stay-crosslink-copy>.stay-kicker { color:#fff;font-size:10px; }
.stay-discovery .stay-crosslink strong { font-size:clamp(40px,4vw,64px);line-height:1.03; }
.stay-discovery .stay-crosslink-action { width:100%;justify-content:space-between;gap:18px;font-size:12px;line-height:1.4;border-color:#ffffff66; }
.stay-discovery .stay-crosslink-action svg { flex-shrink:0; }
.stay-discovery .stay-crosslink:focus-visible { outline:3px solid #252820;outline-offset:5px; }
@media(max-width:1000px){
  .stay-discovery { grid-template-columns:1fr;gap:14px;margin-top:44px; }
  .stay-discovery .stay-crosslink-projects { min-height:330px; }
  .stay-discovery .stay-crosslink-copy { padding:32px; }
  .stay-discovery .stay-crosslink strong { font-size:clamp(40px,7vw,60px); }
}
@media(max-width:650px){
  .stay-discovery { width:calc(100% - 16px);margin-top:32px;gap:10px; }
  .stay-discovery .stay-cities { padding:26px 20px;border-radius:18px; }
  .stay-discovery .stay-cities-heading { gap:12px;margin-bottom:20px; }
  .stays-page main .stay-discovery .stay-cities h2 { font-size:clamp(27px,7.5vw,38px); }
  .stay-discovery .stay-cities-heading .stay-kicker { font-size:9px;margin-bottom:14px; }
  .stay-discovery .stay-city-count strong { font-size:50px; }
  .stay-discovery .stay-city-count>span { font-size:10px; }
  .stay-discovery .stay-city-list { grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px; }
  .stay-discovery .stay-city-list li { font-size:20px;padding:8px 0; }
  .stay-discovery .stay-city-note { margin-top:20px;font-size:12px; }
  .stay-discovery .stay-crosslink-projects { min-height:310px;border-radius:18px; }
  .stay-discovery .stay-crosslink-copy { padding:28px 24px;gap:22px; }
  .stay-discovery .stay-crosslink strong { font-size:clamp(36px,8.5vw,52px); }
}

@media(max-width:650px){.stays-page main .stay-included h2{font-size:clamp(38px,11.5vw,72px)}}
