/* Shared with the first section below the hero: Libre Baskerville / HP Text / Univers. */
.guest-reference{--guest-h2:clamp(34px,2.95vw,56px);--guest-home-k:calc((min(100vw,1900px) - max(clamp(40px,4.2vw,64px),calc((min(100vw,1900px) - 1400px)/2)))/1745);position:relative;isolation:isolate;width:min(1400px,100%);margin:80px auto 0;color:#073b57;font:400 20px/1.4 "HP Text",Arial,sans-serif;container-type:inline-size}
.guest-reference *{box-sizing:border-box}
.guest-reference :is(h2,p,ul,figure){padding:0;margin:0}
.guest-reference .guest-reference__art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;pointer-events:none;filter:brightness(1.01) contrast(.92) saturate(.98)}
.guest-reference::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--guest-fade-y),var(--guest-fade-x)}
.guest-reference .guest-reference__eyebrow{font:400 max(11px,calc(20.2 * var(--guest-home-k)))/1.4 "Univers Next",Arial,sans-serif;letter-spacing:.116em;text-transform:uppercase;color:#997347}
.guest-reference h2{font:700 var(--guest-h2)/1.14 "Libre Baskerville",Georgia,"Times New Roman",serif;letter-spacing:-.012em;color:#9d6e5c;font-style:normal;font-variation-settings:normal}
.guest-reference h2 span{font:inherit;font-weight:400;color:#a77a72d4}
.guest-reference .sgr__description,.guest-reference .srg__description{font:400 max(18px,calc(25.2 * var(--guest-home-k)))/max(24px,calc(32.7 * var(--guest-home-k))) "HP Text",Arial,sans-serif;color:#073b57;letter-spacing:normal}
.guest-reference .guest-reference__sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sgr{min-height:740px;padding:100px clamp(24px,6vw,84px);margin-top:80px;display:flex;align-items:center}
.sgr__copy{width:44%;margin-left:auto;position:relative}
.sgr .sgr__title{margin-top:16px}.sgr__title span{display:block}
.sgr .sgr__description{margin-top:24px;max-width:490px}
.sgr .sgr__features{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px;font:400 21px/1.3 "Libre Baskerville",Georgia,serif;text-align:center}
.sgr__features li{display:flex;align-items:center;flex-direction:column;gap:12px}
.sgr__icon{display:grid;place-items:center;width:100px;height:90px;color:#08788b;background:radial-gradient(ellipse,#a9dce1b0,#d8eee5a0 65%,rgba(216,238,229,0) 72%);border-radius:43% 56% 46% 50%}
.sgr__icon svg{width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sgr .sgr__rates{margin-top:34px;text-shadow:none;filter:none}
.sgr__mobile-photo-wrap{display:none}
.srg{padding:64px 4% 76px}
.srg__heading{position:relative;text-align:left;max-width:none;margin:0}
.srg .srg__title{margin-top:0;text-wrap:balance}
.srg .srg__description{max-width:770px;margin:24px 0 0;text-wrap:pretty}
.srg__carousel{position:relative;height:clamp(330px,37vw,520px);margin:44px auto 0;touch-action:pan-y;outline-offset:8px;border-radius:24px}
.srg .srg__slide{position:absolute;left:50%;top:50%;width:72%;height:100%;padding:10px;margin:0;background:#fff;border-radius:28px;box-shadow:0 14px 24px -10px #172f3847;transform:translate(-50%,-50%);z-index:2;transition:left .5s cubic-bezier(.22,.7,.2,1),width .5s cubic-bezier(.22,.7,.2,1),height .5s cubic-bezier(.22,.7,.2,1)}
.srg .srg__slide[data-position="previous"]{left:25%;width:50%;height:82%;z-index:1}
.srg .srg__slide[data-position="next"]{left:75%;width:50%;height:82%;z-index:1}
.srg__slide>img,.srg__slide>svg{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;border-radius:19px}
.srg .srg__pick{position:absolute;inset:0;width:100%;height:100%;border-radius:28px;background:none;border:0;cursor:pointer}
.srg .srg__pick[hidden]{display:none}
.srg .srg__arrow{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:56px;height:56px;padding:0;transform:translateY(-50%);border:1px solid #b59e8166;border-radius:50%;background:#f6ddd0;color:#6e3e2e;box-shadow:0 4px 12px #17303326;cursor:pointer;transition:background .2s}
.srg__arrow--prev{left:16%}.srg__arrow--next{right:16%}
.srg__arrow svg{width:22px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.srg__arrow--prev svg{transform:rotate(180deg)}
.srg .srg__arrow:hover{background:#fbe8dd}
.srg__pagination{position:relative;display:flex;justify-content:center;gap:4px;margin-top:22px}
.srg__pagination button{display:grid;place-items:center;width:32px;height:32px;border:0;background:none;padding:0;cursor:pointer;border-radius:50%}
.srg__pagination button::before{content:"";width:8px;height:8px;border:1px solid #9d6e5c;border-radius:50%;background:var(--cream);transition:background .2s}
.srg__pagination button[aria-current="true"]::before{background:#9d6e5c}
.srg .srg__features{position:relative;display:flex;justify-content:center;gap:clamp(24px,5vw,76px);list-style:none;border:0;padding:0;margin:22px auto 0;font:400 21px/1.3 "Libre Baskerville",Georgia,serif;color:#073b57}
.srg__features li{display:flex;align-items:center;gap:14px;white-space:nowrap}
.srg__features svg{width:34px;height:34px;flex:none;fill:none;stroke:#08788b;stroke-width:2.5}
.srg__features svg path+path{stroke-width:4.5}
.guest-reference button:focus-visible,.srg__carousel:focus-visible{outline:3px solid #08788b;outline-offset:4px}
@media(max-width:1150px){
 .sgr{padding:80px 4%;min-height:680px}
 .sgr__copy{width:48%}
 .sgr .sgr__features{gap:10px;font-size:18px}.sgr__icon{width:84px;height:78px}.sgr__icon svg{width:56px;height:56px}
 .guest-reference .sgr__description,.guest-reference .srg__description{font-size:24px;line-height:1.3}
 .guest-reference .guest-reference__eyebrow{font-size:12px;letter-spacing:.2em}
 .srg .srg__features{font-size:18px;gap:30px}
}
@media(max-width:900px){
 .guest-reference{--guest-h2:clamp(28px,7vw,44px);margin-top:56px}
 .sgr{display:block;min-height:0;padding:0 24px 40px;background:var(--cream)}
 .sgr>.guest-reference__art,.sgr::after{display:none}
 .sgr__mobile-photo-wrap{display:block;position:relative;width:min(660px,calc(100% + 48px));margin:0 auto 20px}
 .sgr__mobile-photo{display:block;width:100%;max-width:none;height:auto;max-height:500px;filter:brightness(1.01) contrast(.92) saturate(.98)}
 .sgr__mobile-photo-wrap::after{content:"";position:absolute;inset:0;background:var(--guest-fade-y),var(--guest-fade-x);pointer-events:none}
 .sgr__copy{width:100%;max-width:600px;margin:0 auto;text-align:center}
 .sgr .sgr__description{max-width:560px;margin:24px auto 0}
 .sgr .sgr__features{max-width:520px;margin:30px auto 0;font-size:19px;gap:18px}
 .sgr .sgr__rates{margin:30px auto 0}
 .srg{padding:48px 24px 44px}
 .srg .srg__description{max-width:620px}
 .srg .srg__title span{display:block}
 .srg__carousel{height:clamp(280px,52vw,420px);margin-top:32px}
 .srg .srg__slide{width:84%;padding:7px;border-radius:22px}
 .srg .srg__slide[data-position="previous"]{left:27%;width:54%;height:82%}
 .srg .srg__slide[data-position="next"]{left:73%;width:54%;height:82%}
 .srg__slide>img,.srg__slide>svg{border-radius:15px}
 .srg .srg__arrow{width:46px;height:46px}.srg__arrow--prev{left:9%}.srg__arrow--next{right:9%}
 .srg .srg__features{gap:18px;font-size:16px}.srg__features li{gap:8px}.srg__features svg{width:28px;height:28px}
}
@media(max-width:540px){
 .guest-reference .guest-reference__eyebrow{font-size:10px;letter-spacing:.19em}
 .guest-reference .sgr__description,.guest-reference .srg__description{font-size:21px;line-height:1.4}
 .sgr__mobile-photo-wrap{width:calc(100% + 48px);margin:0 -24px 20px}
 .sgr__mobile-photo-wrap::after{background:var(--guest-fade-y)}
 .sgr .sgr__features{font-size:16px;gap:8px;grid-template-columns:.9fr 1.2fr .9fr}.sgr__icon{width:80px;height:74px}.sgr__icon svg{width:52px;height:52px}
 .srg{padding-inline:16px}.srg__heading{padding-inline:0}
 .srg__carousel{height:280px}.srg .srg__slide{width:88%}.srg__arrow--prev{left:7%}.srg__arrow--next{right:7%}
 .srg .srg__features{display:grid;justify-content:center;gap:14px;margin-top:16px;font-size:17px}
}
@media(prefers-reduced-motion:reduce){.srg .srg__slide,.srg .srg__arrow,.srg__pagination button::before{transition:none}}

/* Exact homepage sand button; keep this rule scoped to the guest-room CTA. */
@font-face{font-family:"HBS Univers";src:url("../fonts/library/univers-next-paneuropean/univers-next-paneuropean-400.woff2") format("woff2");font-weight:400;font-display:swap}

:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  width:auto;
  min-width:0;
  max-width:100%;
  height:60px;
  min-height:0;
  padding:0 34px 0 38px;
  border:0;
  border-radius:2px;
  background-color:#F6DDD0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .98 0 0 0 0 .95 0 0 0 9 -5.6'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E"),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='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .43 0 0 0 0 .25 0 0 0 0 .17 0 0 0 1.9 -.98'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 45%,rgba(110,62,46,.06));
  background-size:220px 220px,180px 180px,100% 100%;
  background-blend-mode:multiply,multiply,normal;
  color:#6E3E2E;
  font:400 14px/1 "HBS Univers","Helvetica Neue",Arial,sans-serif;
  letter-spacing:.3em;
  text-transform:uppercase;
  text-decoration:none;
  white-space:nowrap;
  outline:1px solid rgba(110,62,46,.4);
  outline-offset:-6px;
  box-shadow:0 12px 28px -14px rgba(20,48,43,.4);
  transform:none;
  transition:transform .5s cubic-bezier(.22,.7,.2,1),box-shadow .5s cubic-bezier(.22,.7,.2,1),outline-offset .5s cubic-bezier(.22,.7,.2,1);
}
:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn::before,:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn::after{content:none}
:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn .sbtn__arrow{display:block;flex:none;width:22px;height:16px;margin:0;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s cubic-bezier(.22,.7,.2,1)}
:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn:hover{
  background-color:#F6DDD0;
  color:#6E3E2E;
  transform:translateY(-2px);
  outline-offset:-9px;
  box-shadow:0 16px 32px -14px rgba(20,48,43,.45);
}
:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn:hover .sbtn__arrow{transform:translateX(4px)}
:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn:focus-visible{outline:1px solid #B8705A;outline-offset:-6px;box-shadow:0 0 0 3px rgba(184,112,90,.45),0 12px 28px -14px rgba(20,48,43,.4)}

@media (max-width:900px){
  :is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn{height:56px;padding:0 28px 0 32px;font-size:13px;gap:14px}
}
@media (max-width:480px){
  :is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn{height:54px;padding:0 24px 0 28px;font-size:12px;letter-spacing:.26em}
}
@media (prefers-reduced-motion:reduce){:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn,:is(.sgr,.ssc,.spu,.pdh-coast,.bkx,.sgx) a:is(.sgr__rates,.ssc__rates,.spu__rates,.pdh-coast__book,.bkx__button,.sgx__attractions).sbtn .sbtn__arrow{transition:none}}

/* Broad smootherstep overlays from Park Site Design; veil is separate from image grading. */
.guest-reference{--guest-fade-y:linear-gradient(to bottom,rgba(250,246,239,1.000) 0%,rgba(250,246,239,0.990) 2.4%,rgba(250,246,239,0.940) 4.8%,rgba(250,246,239,0.840) 7.2%,rgba(250,246,239,0.680) 9.6%,rgba(250,246,239,0.500) 12%,rgba(250,246,239,0.320) 14.4%,rgba(250,246,239,0.160) 16.8%,rgba(250,246,239,0.060) 19.2%,rgba(250,246,239,0.010) 21.6%,rgba(250,246,239,0.000) 24%,rgba(250,246,239,0.000) 78%,rgba(250,246,239,0.010) 80.2%,rgba(250,246,239,0.060) 82.4%,rgba(250,246,239,0.160) 84.6%,rgba(250,246,239,0.320) 86.8%,rgba(250,246,239,0.500) 89%,rgba(250,246,239,0.680) 91.2%,rgba(250,246,239,0.840) 93.4%,rgba(250,246,239,0.940) 95.6%,rgba(250,246,239,0.990) 97.8%,rgba(250,246,239,1.000) 100%);--guest-fade-x:linear-gradient(to right,rgba(250,246,239,1.000) 0%,rgba(250,246,239,0.990) 2.2%,rgba(250,246,239,0.940) 4.4%,rgba(250,246,239,0.840) 6.6%,rgba(250,246,239,0.680) 8.8%,rgba(250,246,239,0.500) 11%,rgba(250,246,239,0.320) 13.2%,rgba(250,246,239,0.160) 15.4%,rgba(250,246,239,0.060) 17.6%,rgba(250,246,239,0.010) 19.8%,rgba(250,246,239,0.000) 22%,rgba(250,246,239,0.000) 78%,rgba(250,246,239,0.010) 80.2%,rgba(250,246,239,0.060) 82.4%,rgba(250,246,239,0.160) 84.6%,rgba(250,246,239,0.320) 86.8%,rgba(250,246,239,0.500) 89%,rgba(250,246,239,0.680) 91.2%,rgba(250,246,239,0.840) 93.4%,rgba(250,246,239,0.940) 95.6%,rgba(250,246,239,0.990) 97.8%,rgba(250,246,239,1.000) 100%)}
@media(min-width:541px) and (max-width:1000px){.guest-reference{--guest-fade-x:linear-gradient(to right,rgba(250,246,239,1.000) 0%,rgba(250,246,239,0.990) 2.8%,rgba(250,246,239,0.940) 5.6%,rgba(250,246,239,0.840) 8.4%,rgba(250,246,239,0.680) 11.2%,rgba(250,246,239,0.500) 14%,rgba(250,246,239,0.320) 16.8%,rgba(250,246,239,0.160) 19.6%,rgba(250,246,239,0.060) 22.4%,rgba(250,246,239,0.010) 25.2%,rgba(250,246,239,0.000) 28%,rgba(250,246,239,0.000) 72%,rgba(250,246,239,0.010) 74.8%,rgba(250,246,239,0.060) 77.6%,rgba(250,246,239,0.160) 80.4%,rgba(250,246,239,0.320) 83.2%,rgba(250,246,239,0.500) 86%,rgba(250,246,239,0.680) 88.8%,rgba(250,246,239,0.840) 91.6%,rgba(250,246,239,0.940) 94.4%,rgba(250,246,239,0.990) 97.2%,rgba(250,246,239,1.000) 100%)}}
@media(max-width:360px){.sgr .sgr__features{font-size:14px}.sgr__icon{width:68px;height:64px}.sgr__icon svg{width:48px;height:48px}}
