/* Two independent guest galleries on a decorative tropical beach background. */
.home-guest-story{padding:24px 4.4% 44px;background:#f9fcfd;color:#071b3b}
.home-guest-story *{box-sizing:border-box}
.home-guest-story__shell{max-width:1480px;margin:auto}
.home-guest-story__header{text-align:center;margin-bottom:24px}
body.home-test-page .home-guest-story .hpt-review-header{max-width:1200px;margin-bottom:24px}
body.home-test-page .home-guest-story .hpt-review-header h2{font-size:clamp(40px,4.8vw,76px);line-height:.95;letter-spacing:-.02em;margin:16px 0 8px}
body.home-test-page .home-guest-story .hpt-review-header>p:not(.hpt-review-eyebrow){max-width:1000px;font-size:clamp(17px,1.65vw,25px);line-height:1.45;margin:12px auto 0}
.home-guest-story__rating{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;font-size:17px;line-height:1.5}
.home-guest-story__score{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.home-guest-story__score strong{font-size:36px;line-height:1}
.home-guest-story__score>span{color:#e39b15;font-size:30px;letter-spacing:2px}
.home-guest-story__rating>a{color:#071b3b;text-decoration:underline;text-underline-offset:5px;border-left:1px solid #cb8c18;padding-left:30px;margin-left:12px}
.home-guest-story__cards{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}
.home-guest-story__card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;padding:18px;border:1px solid #e0e6eb;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 10px 34px #07192b08;min-width:0}
.home-guest-story__review{min-width:0;padding:6px;display:flex;flex-direction:column;align-items:flex-start}
.home-guest-story__stars{color:#e39b15;font-size:26px;letter-spacing:2px;line-height:1.3;white-space:nowrap}
.home-guest-story__quote{font-family:Georgia,serif;color:#e39b15;font-size:66px;line-height:.8;margin:18px 0 0}
.home-guest-story blockquote{font:400 clamp(15px,1.2vw,19px)/1.5 Manrope,Arial,sans-serif;color:#163254;padding:0;margin:0 0 24px;border:0;background:none}
.home-guest-story blockquote:before,.home-guest-story blockquote:after{content:none}
.home-guest-story .guest-review__author{border-top:1px solid #dee5e9;padding-top:18px;margin:auto 0 0;width:100%;gap:14px;align-items:flex-start}
.home-guest-story .guest-review__avatar{flex:0 0 58px;width:58px;height:58px}
.home-guest-story .guest-review__name{font-size:17px;line-height:1.3}
.home-guest-story .guest-review__source{font-size:12px;line-height:1.5;color:#173254}
.home-guest-story .guest-review__source[href]{display:block;text-decoration:underline;text-underline-offset:4px;margin-top:16px}
.home-guest-story__translation{font-size:12px;color:#61718c;line-height:1.5;margin:0 0 24px}
.home-guest-story .guest-review__photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(260px,2fr) minmax(120px,1fr);gap:6px;height:100%;min-width:0}
.home-guest-story .guest-review__photo{border-radius:9px;min-height:0;min-width:0}
.home-guest-story .guest-review__photo:first-child{grid-column:1/-1;grid-row:auto}
.home-guest-story .home-guest-story__card--nick .guest-review__photo:nth-child(4){display:none}
.home-guest-story .guest-review__photo img{width:100%;height:100%;object-fit:cover;display:block}
.home-guest-story .guest-review__view{color:#071b3b;border-radius:30px;font-size:12px;padding:10px 15px;text-align:center;bottom:12px;right:10px;left:auto;white-space:nowrap}
.home-guest-story .home-guest-story__card--pedro .guest-review__photos{grid-template-columns:minmax(0,1fr)}
.home-guest-story .home-guest-story__card--pedro .guest-review__photo:first-child img{object-position:50% 60%}
.home-guest-story .home-guest-story__card--pedro .guest-review__photo:last-child img{object-position:50% 28%}
.home-guest-story a:focus-visible{outline:3px solid #cb8c18;outline-offset:4px}
.home-guest-story__dots{display:flex;justify-content:center;gap:10px;margin:14px 0 32px}
.home-guest-story__dots span{width:11px;height:11px;border-radius:50%;background:#d8d8d8}
.home-guest-story__dots span:first-child{background:#dd9819}
.home-guest-story__more{text-align:center;margin:0}
.home-guest-story__more>a{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:56px;padding:14px 48px;border-radius:40px;background:#062348;color:#fff;font:700 17px/1.5 Manrope,Arial,sans-serif;text-decoration:none;box-shadow:0 7px 18px #07192b12}
.home-guest-story__more>a>span{font-size:25px;line-height:1}
.home-guest-story__tagline{display:flex;justify-content:center;align-items:center;gap:20px;text-align:center;margin:24px 0 0;text-transform:uppercase;color:#a66500;font-size:12px;letter-spacing:.28em;line-height:1.6}
.home-guest-story__tagline:before,.home-guest-story__tagline:after{content:'';height:1px;width:48px;background:#cb8c18;flex-shrink:0}
@media(max-width:1199px){.home-guest-story__cards{grid-template-columns:1fr}.home-guest-story__card{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.home-guest-story blockquote{font-size:17px}.home-guest-story__card--pedro .guest-review__photos{max-height:390px}.home-guest-story{background-size:auto 1100px;background-color:#faf8f2}}
@media(max-width:600px){.home-guest-story{padding:32px 14px;background-size:auto 780px}.home-guest-story__header{margin-bottom:22px}body.home-test-page .home-guest-story .hpt-review-header h2{font-size:37px;line-height:1.02}body.home-test-page .home-guest-story .hpt-review-header>p:not(.hpt-review-eyebrow){font-size:16px}.home-guest-story__rating{gap:8px 12px;font-size:14px}.home-guest-story__score strong{font-size:28px}.home-guest-story__score>span{font-size:23px;letter-spacing:1px}.home-guest-story__rating>a{flex-basis:100%;padding:0;margin:6px 0 0;border:0}.home-guest-story__card{grid-template-columns:1fr;padding:14px;gap:20px}.home-guest-story blockquote{font-size:15px}.home-guest-story .guest-review__photos{height:auto;grid-template-rows:auto 80px}.home-guest-story .guest-review__photo:first-child{aspect-ratio:4/3}.home-guest-story .home-guest-story__card--pedro .guest-review__photos{max-height:none;grid-template-rows:auto 140px}.home-guest-story .guest-review__view{font-size:11px;padding:10px 12px}.home-guest-story__more>a{width:100%;padding:14px 16px;font-size:14px;gap:12px}.home-guest-story__tagline{font-size:10px;letter-spacing:.15em;gap:10px}.home-guest-story__tagline:before,.home-guest-story__tagline:after{width:22px}}
/* Explicit gallery sizing prevents intrinsic image dimensions from stretching cards. */
.home-guest-story .guest-review__photos{height:clamp(420px,29vw,460px);grid-template-rows:minmax(0,2fr) minmax(0,1fr)}
.home-guest-story .guest-review__photo{height:100%;overflow:hidden}
@media(max-width:1199px){.home-guest-story .guest-review__photos{height:400px}.home-guest-story .home-guest-story__card--pedro .guest-review__photos{max-height:none}}
@media(max-width:600px){.home-guest-story .guest-review__photos{height:calc((100vw - 58px)*.75 + 86px);grid-template-rows:minmax(0,1fr) 80px}.home-guest-story .home-guest-story__card--pedro .guest-review__photos{height:calc((100vw - 58px)*.75 + 146px);grid-template-rows:minmax(0,1fr) 140px}.home-guest-story .guest-review__photo:first-child{aspect-ratio:auto}}
/* Keep the snorkeler's face in the shallow secondary thumbnail. */
.home-guest-story .home-guest-story__card--pedro .guest-review__photo:last-child img{object-position:50% 12%}

/* Quiet palm artwork reused from the large-group section, made more visible. */
.home-guest-story{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#edf7fb 0%,#fff 45%,#fbf7ef 100%)}
.home-guest-story__shell{position:relative;z-index:1}
.home-guest-story::before,.home-guest-story::after{content:"";position:absolute;z-index:0;width:420px;height:420px;background:url('../images/island-tree-480.webp') center/contain no-repeat;opacity:.2;pointer-events:none}
.home-guest-story::before{left:-120px;top:65px;transform:rotate(-18deg)}
.home-guest-story::after{right:-125px;bottom:40px;transform:scaleX(-1) rotate(-12deg);opacity:.16}
@media(max-width:600px){.home-guest-story::before,.home-guest-story::after{width:280px;height:280px}.home-guest-story::before{left:-130px;top:30px;opacity:.17}.home-guest-story::after{right:-135px;bottom:60px;opacity:.14}}
/* Keep decorative bounds inside the section on narrow screens. */
.home-guest-story::before{left:0;width:300px;background-size:420px;background-position:right center;transform:none}
.home-guest-story::after{right:0;width:300px;background-size:420px;background-position:right center;transform:scaleX(-1)}
@media(max-width:600px){.home-guest-story::before,.home-guest-story::after{width:150px;background-size:280px}}
