/* New Guest Reviews reference: sunset artwork, shell paper, native copy and slider. */
@font-face{font-family:"Guest Reviews Bodoni";src:url("../fonts/library/bauer-bodoni/bauer-bodoni-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Guest Reviews Newsreader";src:url("../fonts/hero/newsreader-var.woff2") format("woff2");font-weight:200 800;font-display:swap}
.gr{--gr-rail:170px;--gr-ink:#073f53;--gr-teal:#0b5154;position:relative;isolation:isolate;overflow:hidden;padding:150px 0 160px;background:#fcf6ec;color:var(--gr-ink)}
.gr__art{position:absolute;z-index:-1;left:50%;top:0;bottom:0;width:min(100%,1900px);transform:translateX(-50%);pointer-events:none;overflow:hidden}
.gr__art img{position:absolute;left:0;top:-95px;display:block;width:100%;height:auto;max-width:none;object-fit:fill;-webkit-mask:url("../img/guest-reviews-reference/art-mask.svg?v=4") center/100% 100% no-repeat;mask:url("../img/guest-reviews-reference/art-mask.svg?v=4") center/100% 100% no-repeat}
.gr__frame{position:relative;max-width:1900px;margin-inline:auto;padding-inline:var(--gr-rail)}
.gr__layout{display:grid;grid-template-columns:33% 60%;column-gap:7%;align-items:start;container-type:inline-size;min-height:440px}
.gr__intro{position:relative;padding-top:0}
.gr__kicker{display:flex;align-items:center;gap:17px;white-space:nowrap;margin:0 0 6px;color:#75888a;font:400 clamp(11px,1.02cqw,15px)/1.2 "Univers Next",Arial,sans-serif;letter-spacing:.28em;text-transform:uppercase}
.gr__kicker i{display:block;flex-shrink:0;width:85px;height:1px;background:#b9936c}
.gr__title{margin:0;color:var(--gr-ink);font:400 clamp(75px,8cqw,125px)/.92 "Guest Reviews Bodoni",Georgia,serif;letter-spacing:-.05em}
.gr__title span,.gr__title em{display:block}
.gr__title em{margin:-.2em 0 0;color:#a0805d;font:400 1.08em/.94 "SP Accent Hand",cursive;font-style:normal;letter-spacing:0}
.gr__subtitle{margin:6px 0 0;color:#75888a;font:400 clamp(10px,.96cqw,15px)/1.4 "Univers Next",Arial,sans-serif;letter-spacing:.25em;text-transform:uppercase;white-space:nowrap}
.gr__rating{display:flex;align-items:center;gap:23px;width:max-content;margin-top:20px;color:var(--gr-teal);text-decoration:none}
.gr__rating b{font:400 clamp(65px,6.1cqw,96px)/1 "Guest Reviews Bodoni",Georgia,serif;letter-spacing:-.055em}
.gr__rating>span{font:400 clamp(20px,1.8cqw,28px)/1 Georgia,serif;letter-spacing:2px;color:#dc951e;white-space:nowrap}
.gr__rating i{font-style:normal;color:transparent;background:linear-gradient(90deg,#dc951e 40%,#e9dfcd 40%);background-clip:text;-webkit-background-clip:text}
.gr__rating:focus-visible,.gr .rv-slider__arrow:focus-visible,.gr .rv-slider__dot:focus-visible{outline:3px solid #0b575b;outline-offset:5px}
.gr__carousel.rv-slider{position:relative;inset:auto;width:100%;min-width:0;padding:0 85px 0 0;outline:none;--rv-dot-on:#0b5154;--rv-dot:#bccfd2}
.gr__paper{position:relative;isolation:isolate;min-height:425px;filter:drop-shadow(0 12px 12px #66513a26)}
.gr__paper::before{content:"";position:absolute;z-index:-1;top:-28px;left:-34px;right:0;bottom:-6px;background:url("../img/intro-v2/review-paper.webp") center/100% 100% no-repeat;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 4px),transparent 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 4px),transparent 100%)}
.gr .rv-slider__viewport{position:relative;inset:auto;width:100%;max-width:100%;height:auto;overflow:hidden;touch-action:pan-y;-webkit-mask-image:none;mask-image:none}
.gr .rv-slider__track{display:flex;align-items:stretch;width:100%;height:auto;gap:0;min-height:425px}
.gr .rv-slide{display:flex;flex-direction:column;justify-content:center;flex:0 0 100%;min-width:0;margin:0;padding:37px 60px 43px 88px;background:none;border:0;box-sizing:border-box}
.gr .rv-slide__mark{display:block;width:48px;height:45px;margin:0 0 4px;background:none;color:#b4976f;font:400 91px/.85 "Guest Reviews Newsreader",Georgia,serif;flex-shrink:0}
.gr .rv-slide__mark::before{content:"“"}
.gr .rv-slide__quote{margin:0;padding:0;border:0}
.gr .rv-slide__quote p{margin:0;max-width:560px;width:auto;white-space:normal;color:var(--gr-ink);font:400 clamp(20px,1.65cqw,26px)/1.36 "Guest Reviews Newsreader",Georgia,serif;letter-spacing:0}
.gr .rv-slide__by{display:flex;align-items:center;gap:21px;margin:23px 0 0;color:var(--gr-teal)}
.gr .rv-slide__avatar{display:block;width:68px;height:68px;flex-shrink:0;border-radius:50%;object-fit:cover;margin:0}
.gr .rv-slide__by b{display:block;color:var(--gr-teal);font:450 clamp(18px,1.43cqw,23px)/1.2 "Guest Reviews Newsreader",Georgia,serif;-webkit-text-stroke:0}
.gr .rv-slide__by small{display:block;margin-top:7px;color:#66777b;font:400 clamp(15px,1.22cqw,20px)/1.25 "Guest Reviews Newsreader",Georgia,serif}
.gr .rv-slider__arrow{position:absolute;top:187px;width:63px;height:63px;display:grid;place-items:center;transform:translateY(-50%);background:#fff;color:#0b5154;border:0;border-radius:50%;box-shadow:0 4px 14px #1b50552b}
.gr .rv-slider__arrow:hover{transform:translateY(-50%) scale(1.05)}
.gr .rv-slider__arrow--prev{left:-94px;right:auto}
.gr .rv-slider__arrow--next{right:0;left:auto}
.gr .rv-slider__arrow svg{width:27px;height:27px;display:block}
.gr .rv-slider__dots{position:relative;inset:auto;display:flex;align-items:center;justify-content:center;gap:11px;width:100%;margin-top:28px;transform:none}
.gr .rv-slider__dot{position:relative;width:17px;height:17px;border-radius:50%;background:var(--rv-dot);border:0;flex:none}
.gr .rv-slider__dot.is-active{background:var(--rv-dot-on)}
.gr .rv-slider__dot::after{content:"";position:absolute;inset:-9px}
@media(max-width:1450px){.gr{--gr-rail:clamp(80px,8.947vw,170px)}.gr__layout{grid-template-columns:33% 60%;gap:7%}.gr__kicker{font-size:11px;letter-spacing:.23em;gap:13px}.gr__kicker i{width:58px}.gr__subtitle{font-size:10px;letter-spacing:.22em}.gr__carousel.rv-slider{padding-right:73px}.gr .rv-slider__arrow{width:57px;height:57px;top:200px}.gr .rv-slider__arrow--prev{left:-72px}.gr__paper{min-height:440px}.gr .rv-slider__track{min-height:440px}.gr .rv-slide{padding:36px 34px 39px 47px}.gr .rv-slide__quote p{font-size:21px;line-height:1.4}.gr .rv-slide__by{gap:16px;margin-top:23px}.gr .rv-slide__avatar{width:60px;height:60px}}
@media(min-width:901px) and (max-width:1200px){.gr__layout{grid-template-columns:29% 64%;gap:7%}.gr__title{font-size:7.7cqw}.gr__subtitle{white-space:normal;max-width:270px;font-size:10px;line-height:1.8}.gr__kicker{font-size:10px;letter-spacing:.15em;gap:10px}.gr__kicker i{width:25px}.gr__rating{gap:15px}.gr__rating b{font-size:68px}.gr__rating>span{font-size:21px;letter-spacing:0}.gr__carousel.rv-slider{padding-right:63px}.gr .rv-slider__arrow{width:50px;height:50px}.gr .rv-slider__arrow--prev{left:-58px}.gr .rv-slide{padding:34px 25px 34px 35px}.gr .rv-slide__quote p{font-size:20px}.gr .rv-slide__by{gap:13px}.gr .rv-slide__avatar{width:51px;height:51px}.gr .rv-slide__by b{font-size:18px}.gr .rv-slide__by small{font-size:15px}}
@media(max-width:900px){.gr{--gr-rail:24px;padding-bottom:95px}.gr__layout{display:block;min-height:0}.gr__intro{max-width:620px}.gr__kicker{font-size:12px;letter-spacing:.25em;gap:18px;margin-bottom:26px}.gr__kicker i{width:65px}.gr__title{font-size:clamp(73px,12cqw,98px);line-height:.95}.gr__title em{font-size:1.03em;margin-top:3px}.gr__subtitle{font-size:12px;letter-spacing:.22em;white-space:normal;margin-top:26px}.gr__rating{gap:22px;margin-top:20px}.gr__rating b{font-size:76px}.gr__rating>span{font-size:25px}.gr__carousel.rv-slider{width:100%;padding:0;margin-top:65px}.gr__paper{min-height:385px}.gr__paper::before{left:-15px;top:-30px;right:-4px;bottom:-4px}.gr .rv-slider__track{min-height:385px}.gr .rv-slide{padding:42px 44px 42px 45px}.gr .rv-slide__quote p{font-size:23px;line-height:1.43}.gr .rv-slide__by b{font-size:22px}.gr .rv-slide__by small{font-size:18px}.gr .rv-slide__avatar{width:62px;height:62px}.gr .rv-slider__arrow{top:auto;bottom:-65px;width:48px;height:48px;transform:none}.gr .rv-slider__arrow:hover{transform:scale(1.05)}.gr .rv-slider__arrow--prev{left:0}.gr .rv-slider__arrow--next{right:0}.gr .rv-slider__arrow svg{width:23px;height:23px}.gr .rv-slider__dots{margin-top:29px;min-height:36px;gap:13px}.gr .rv-slider__dot{width:15px;height:15px}.gr__art img{width:180%;height:auto;left:-50%;top:50px;object-fit:fill;opacity:.46}}
@media(max-width:540px){.gr{padding-bottom:95px}.gr__kicker{font-size:10px;letter-spacing:.22em;gap:13px}.gr__kicker i{width:47px}.gr__title{font-size:clamp(76px,23cqw,93px)}.gr__title em{font-size:.98em}.gr__subtitle{font-size:10px;letter-spacing:.18em;line-height:1.8;max-width:300px}.gr__rating b{font-size:71px}.gr__rating>span{font-size:23px;letter-spacing:1px}.gr__carousel.rv-slider{margin-top:60px}.gr .rv-slide{padding:37px 25px 33px 25px}.gr .rv-slide__mark{font-size:80px;height:39px;width:40px;margin-bottom:6px}.gr .rv-slide__quote p{font-size:20px;line-height:1.42}.gr .rv-slide__by{margin-top:24px;gap:12px}.gr .rv-slide__avatar{width:49px;height:49px}.gr .rv-slide__by b{font-size:19px}.gr .rv-slide__by small{font-size:15px;line-height:1.35;margin-top:5px}.gr__paper::before{top:-23px;left:-12px;right:-3px}.gr .rv-slider__arrow{width:43px;height:43px;bottom:-62px}.gr .rv-slider__arrow svg{width:22px;height:22px}.gr .rv-slider__dots{margin-top:27px;min-height:35px}.gr__art img{width:420%;left:-290%;top:0;opacity:.24}}
@media(prefers-reduced-motion:reduce){.gr .rv-slider__track,.gr .rv-slider__arrow,.gr .rv-slider__dot{transition:none}}

/* Match the beach section's height, then dissolve the artwork into its paper
   color. Fade the image itself as well as its container so its natural bottom
   edge cannot leave a horizontal line inside the section. */
.gr{
  min-height:var(--gr-section-height,calc(min(100vw,1900px) * 821 / 1916 + 300px));
  background:#faf6ef;
  border:0;
}
.gr__art{
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%);
}
.gr__art img{
  -webkit-mask-image:url("../img/guest-reviews-reference/art-mask.svg?v=4"),linear-gradient(to bottom,transparent 0,#000 100px,#000 calc(100% - 140px),transparent 100%),linear-gradient(to right,transparent 0,#000 45px,#000 calc(100% - 45px),transparent 100%);
  -webkit-mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-composite:source-in;
  mask-image:url("../img/guest-reviews-reference/art-mask.svg?v=4"),linear-gradient(to bottom,transparent 0,#000 100px,#000 calc(100% - 140px),transparent 100%),linear-gradient(to right,transparent 0,#000 45px,#000 calc(100% - 45px),transparent 100%);
  mask-size:100% 100%;
  mask-repeat:no-repeat;
  mask-composite:intersect;
}
/* Keep the complete review and controls comfortable inside the matching
   section height on narrow screens, with the requested 150px top inset. */
@media(max-width:640px){
  .gr{padding-bottom:30px}
  .gr__kicker{margin-bottom:20px}
  .gr__title{font-size:clamp(70px,21cqw,82px)}
  .gr__subtitle{margin-top:20px}
  .gr__rating b{font-size:66px}
  .gr__carousel.rv-slider{margin-top:42px}
  .gr .rv-slide{padding:30px 25px 25px}
  .gr .rv-slide__quote p{font-size:18px;line-height:1.44}
  .gr .rv-slide__by{margin-top:18px}
  .gr .rv-slider__arrow{bottom:0}
}

/* Top inset: the shell and paper card overhang their box by 28px (.gr__paper::before top:-28px), so they are the first thing seen in this section.
   Push the content down by that overhang so the first visible element sits exactly 150px below the section top (the heading leads on phones/tablets, already 150px). */
@media(min-width:901px){.gr{padding-top:218px}}
/* then 40px lower again at the client's request (178 -> 218; phones/tablets 150 -> 190) */
@media(max-width:900px){.gr{padding-top:190px}}

/* The whole section (artwork + content) sits 60px lower: space between it and the beach section above. Its height still follows the beach section (JS reads .bsf height, margin excluded). */
.gr{margin-top:60px}
