/* Front page sections: destination showcase, gallery, confidence, property rows. */
.gr-home-destination-showcase{padding:48px 0 12px;color:#111827}
.gr-home--front .gr-home-destination-showcase{padding-top:18px}
.gr-home-destination-showcase h2{margin:0 0 20px;font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.03em}
.gr-home-destination-showcase__frame{position:relative;min-width:0}
.gr-home-destination-showcase__track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.gr-home-destination-showcase__track::-webkit-scrollbar{display:none}
.gr-home-destination-showcase--2 .gr-home-destination-showcase__track{display:grid;grid-template-columns:2fr 1fr;overflow:visible}
.gr-home-destination-showcase--1 .gr-home-destination-showcase__track{display:block;max-width:560px;overflow:visible}
.gr-home-destination-showcase__card{position:relative;display:block;flex:0 0 calc((100% - 48px)/4.4);min-width:0;aspect-ratio:1/1;overflow:hidden;border-radius:22px;background:linear-gradient(135deg,#075969,#028ba0);color:#fff;text-decoration:none;scroll-snap-align:start}
.gr-home-destination-showcase__card:first-child{flex-basis:calc((100% - 48px)/2.2);aspect-ratio:2/1}
.gr-home-destination-showcase__card::after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,26,.7),rgba(4,18,26,.14)),linear-gradient(0deg,rgba(4,18,26,.4),transparent 55%);content:''}
.gr-home-destination-showcase__image{display:block;width:100%;height:100%;object-fit:cover}
.gr-home-destination-showcase__content{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;align-items:flex-start;padding:22px}
.gr-home-destination-showcase__content strong{font-size:clamp(23px,2.3vw,31px);font-weight:700;line-height:1.06;letter-spacing:-.035em}
.gr-home-destination-showcase__description{display:-webkit-box;overflow:hidden;max-width:90%;margin-top:10px;font-size:14px;font-weight:500;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.gr-home-destination-showcase__cta{display:inline-flex;box-sizing:border-box;min-height:38px;align-items:center;gap:12px;margin-top:auto;padding:0 17px;border:1px solid #fff;border-radius:999px;background:transparent;color:#fff;font-size:13px;font-weight:650;line-height:1}
.gr-home-destination-showcase__cta span{font-size:19px;font-weight:500}
.gr-home-destination-showcase__dots{display:none}
.gr-home-destination-showcase__card:focus-visible{outline:3px solid #00a9bc;outline-offset:3px}
@media(min-width:901px) and (max-width:1100px){.gr-home-destination-showcase__content{padding:16px}.gr-home-destination-showcase__content strong{font-size:22px}.gr-home-destination-showcase__description{margin-top:6px;font-size:12px}.gr-home-destination-showcase__cta{min-height:32px;padding:0 13px;font-size:12px}}
@media(max-width:900px){
  .gr-home--front .gr-home-hero.has-destination-showcase{min-height:0;padding:0 0 12px;background:var(--gr-home-page-bg,#fafafa)}
  .gr-home--front .gr-home-hero__search-band{padding:20px 0 12px}
  .gr-home-hero.has-destination-showcase .gr-home-hero__inner{justify-content:flex-start}
  .gr-home-hero.has-destination-showcase .gr-mobile-home-search{margin-bottom:0}
  .gr-home-destination-showcase{display:block;width:100%;margin-top:24px;padding:0 0 12px;color:#111827;text-shadow:none}
  .gr-home-destination-showcase h2{margin:0 0 16px;font-size:22px;font-weight:700;line-height:1.22;letter-spacing:-.025em}
  .gr-home-destination-showcase__frame{position:relative;min-width:0}
  .gr-home-destination-showcase--1 .gr-home-destination-showcase__track{max-width:none}
  .gr-home-destination-showcase__track,.gr-home-destination-showcase--1 .gr-home-destination-showcase__track,.gr-home-destination-showcase--2 .gr-home-destination-showcase__track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .gr-home-destination-showcase__track::-webkit-scrollbar{display:none}
  .gr-home-destination-showcase__card{position:relative;display:block;box-sizing:border-box;flex:0 0 100%;min-width:0;aspect-ratio:1.75;min-height:190px;overflow:hidden;border-radius:22px;background:linear-gradient(135deg,#075969,#028ba0);color:#fff;text-decoration:none;scroll-snap-align:start}
  .gr-home-destination-showcase__card:first-child{flex-basis:100%;aspect-ratio:1.75}
  .gr-home-destination-showcase__card::after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,26,.74) 0%,rgba(4,18,26,.22) 72%),linear-gradient(0deg,rgba(4,18,26,.42),transparent 45%);content:''}
  .gr-home-destination-showcase__image{display:block;width:100%;height:100%;object-fit:cover}
  .gr-home-destination-showcase__content{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;align-items:flex-start;padding:22px 20px}
  .gr-home-destination-showcase__content strong{max-width:70%;font-size:clamp(25px,7vw,32px);font-weight:700;line-height:1.04;letter-spacing:-.035em}
  .gr-home-destination-showcase__description{display:-webkit-box;max-width:66%;overflow:hidden;margin-top:10px;font-size:14px;font-weight:500;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
  .gr-home-destination-showcase__cta{display:inline-flex;min-height:40px;align-items:center;gap:14px;margin-top:auto;padding:0 20px;border-radius:999px;background:transparent;color:#fff;font-size:14px;font-weight:650;line-height:1}
  .gr-home-destination-showcase__cta span{font-size:20px;font-weight:500}
  .gr-home-destination-showcase__dots{position:absolute;z-index:2;right:14px;bottom:14px;display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.38);backdrop-filter:blur(8px)}
  .gr-home-destination-showcase__dots button{display:block;width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#fff;opacity:.75;cursor:pointer}
  .gr-home-destination-showcase__dots button[aria-current="true"]{width:22px;opacity:1}
  .gr-home-destination-showcase__dots button:focus-visible,.gr-home-destination-showcase__card:focus-visible{outline:3px solid #00a9bc;outline-offset:3px}
  .gr-home[data-gr-search-surfaces] .gr-home-destinations{display:none}
}
@media(max-width:420px){.gr-home-destination-showcase__content{padding:19px 17px}.gr-home-destination-showcase__content strong{font-size:25px}.gr-home-destination-showcase__description{font-size:13px}}

.gr-home-destination-gallery{padding:clamp(28px,4vw,54px) 0 38px;background:var(--gr-home-page-bg,#fafafa)}
.gr-home-destination-gallery h2{margin:0 0 22px;color:#111827;font-size:clamp(25px,2.4vw,34px);font-weight:600;line-height:1.2;letter-spacing:-.03em}
.gr-home-destination-gallery__track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gr-home-destination-gallery__track::-webkit-scrollbar{display:none}
.gr-home-destination-gallery__card{display:block;min-width:0;flex:0 0 clamp(132px,10vw,180px);color:#111827;text-decoration:none;scroll-snap-align:start}
.gr-home-destination-gallery__media{display:block;aspect-ratio:1/1;overflow:hidden;border-radius:20px;background:#e9eef0}
.gr-home-destination-gallery__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.gr-home-destination-gallery__card:hover img{transform:scale(1.025)}
.gr-home-destination-gallery__card strong{display:block;overflow:hidden;margin-top:12px;font-size:18px;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.gr-home-destination-gallery__count{display:block;margin-top:4px;color:#667085;font-size:14px;line-height:1.35}
.gr-home-destination-gallery__card:focus-visible,.gr-home-destination-gallery__track:focus-visible{outline:3px solid #04acbf;outline-offset:3px}
@media(max-width:767px){.gr-home-destination-gallery{padding:32px 0 30px}.gr-home-destination-gallery h2{margin-bottom:18px;font-size:22px}.gr-home-destination-gallery__track{gap:12px;margin-right:calc(var(--gr-gutter) * -1);padding-right:var(--gr-gutter)}.gr-home-destination-gallery__card{flex-basis:calc(31.25% - 12px)}.gr-home-destination-gallery__media{border-radius:17px}.gr-home-destination-gallery__card strong{margin-top:10px;font-size:15px}.gr-home-destination-gallery__count{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gr-home-destination-gallery__media img{transition:none}}

.gr-home-travel-confidence{padding:30px 0 42px;background:var(--gr-home-page-bg,#fafafa)}
.gr-home-travel-confidence__panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:34px;border-radius:28px;background:#e5f7fa}
.gr-home-travel-confidence__item{display:flex;align-items:flex-start;gap:17px;min-width:0;color:#111827}
.gr-home-travel-confidence__icon{display:grid;width:58px;height:58px;flex:0 0 58px;border-radius:50%;background:#79ddec;color:#075968;place-items:center}
.gr-home-travel-confidence__icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.gr-home-travel-confidence__item h2{margin:0 0 6px;font-size:18px;font-weight:650;line-height:1.25}
.gr-home-travel-confidence__item p{margin:0;font-size:14px;line-height:1.5}
@media(max-width:900px){.gr-home-travel-confidence__panel{grid-template-columns:1fr;gap:26px;max-width:720px;margin:auto;padding:28px}}
@media(max-width:767px){.gr-home-travel-confidence{padding:20px 0 30px}.gr-home-travel-confidence__panel{gap:25px;padding:25px 19px;border-radius:22px}.gr-home-travel-confidence__item{gap:14px}.gr-home-travel-confidence__icon{width:47px;height:47px;flex-basis:47px}.gr-home-travel-confidence__icon svg{width:25px;height:25px}.gr-home-travel-confidence__item h2{margin-bottom:5px;font-size:16px;line-height:1.25}.gr-home-travel-confidence__item p{font-size:14px;line-height:1.42}}

.gr-home--front{--gr-home-page-bg:#fafafa;background:var(--gr-home-page-bg)}
.gr-home--front .gr-home-destinations{background:var(--gr-home-page-bg)}
.gr-home-property-rows{padding:28px 0 24px;background:var(--gr-home-page-bg,#fafafa)}
.gr-home-property-row{margin:0 0 52px}
.gr-home-property-row:last-child{margin-bottom:0}
.gr-home-property-row__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.gr-home-property-row__head h2{min-width:0;margin:0;color:#111827;font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.03em}
.gr-home-property-row__head h2 a{color:inherit;text-decoration:none}
.gr-home-property-row__head h2 a:hover{color:#078b99}
.gr-home-property-row__next{display:grid;width:38px;height:38px;flex:0 0 auto;padding:0;border:0;border-radius:50%;background:#edf1f2;color:#111827;font-size:23px;font-weight:400;line-height:1;cursor:pointer;place-items:center}
.gr-home-property-row__next[hidden]{display:none}
.gr-home-property-row__next:disabled{opacity:.35;cursor:default}
.gr-home-property-row__next:focus-visible,.gr-home-property-row__head h2 a:focus-visible,.gr-home-property-row__track:focus-visible{outline:3px solid #04acbf;outline-offset:3px}
.gr-home-property-row__track{display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.gr-home-property-row__track::-webkit-scrollbar{display:none}
.gr-home-property-row__track .gr-home-property-card{flex:0 0 calc((100% - 64px)/5);scroll-snap-align:start}
.gr-home-property-row .gr-home-property-card__media{aspect-ratio:1/1}
@media(min-width:901px) and (max-width:1180px){
  .gr-home-property-row__track .gr-home-property-card{flex-basis:calc((100% - 48px)/4)}
}
@media(max-width:900px){
  .gr-home-property-row__track .gr-home-property-card{flex-basis:36%}
}
@media(max-width:767px){
  .gr-home-property-rows{padding:16px 0 12px}
  .gr-home-property-row{margin-bottom:36px}
  .gr-home-property-row__head{margin-bottom:14px}
  .gr-home-property-row__head h2{font-weight:650}
  .gr-home-property-row__next{width:32px;height:32px;font-size:20px}
  .gr-home-property-row__track{gap:12px;margin-right:calc(var(--gr-gutter) * -1);padding-right:var(--gr-gutter)}
  .gr-home-property-row__track .gr-home-property-card{flex-basis:44%}
  .gr-home-property-row .gr-home-property-card__media{border-radius:15px}
  .gr-home-property-row .gr-home-property-card__body{padding:8px 1px 0}
  .gr-home-property-row .gr-home-property-card__title-row{gap:4px}
  .gr-home-property-row .gr-home-property-card h3{display:-webkit-box;overflow:hidden;font-size:12.5px;font-weight:650;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}
  .gr-home-property-row .gr-home-property-card__rating{font-size:10px}
  .gr-home-property-row .gr-home-property-card__rating small{display:none}
  .gr-home-property-row .gr-home-property-card p{margin-top:4px;font-size:10.5px}
  .gr-home-property-row .gr-home-property-card__capacity{margin-top:3px;font-size:10.5px}
  .gr-home-property-row .gr-home-property-card__price{margin-top:6px;font-size:12px}
  .gr-home-property-row .gr-home-property-card__price small{font-size:10px}
  .gr-home-property-row .gr-home-property-card__badge{top:8px;left:8px;padding:5px 7px;font-size:9px}
}
@media(max-width:370px){
  .gr-home-property-row__track .gr-home-property-card{flex-basis:46%}
}
@media(prefers-reduced-motion:reduce){.gr-home-property-row__track{scroll-behavior:auto}}
