/* The original guest-review colours and type, reshaped into a compact rail. */
.review-rail{width:min(330px,calc(100% - 40px));margin:24px 25px 20px auto;color:#294532}
.rail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:0 2px 9px}
.rail-heading>div{display:flex;flex-direction:column;gap:2px}
.rail-eyebrow{color:#708071;font:700 9px/1.3 var(--sans);letter-spacing:.12em}
.rail-heading strong{font:500 25px/1 var(--serif);white-space:nowrap}
.rail-heading strong span{color:#a7804e;font:12px/1 var(--sans);letter-spacing:.08em;vertical-align:middle}
.rail-heading>a{color:#385743;font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.review-rail .review-grid{display:grid;grid-template-columns:1fr;gap:7px}
.review-rail .review-grid blockquote{min-height:0;margin:0;padding:10px 13px 11px;border:1px solid #d4c8b3;border-radius:13px;background:#e9e5db;box-shadow:0 8px 24px #19301d12}
.review-rail .review-grid blockquote:nth-child(2){background:#dfe3d7}
.review-rail .review-stars{font-size:9px;letter-spacing:.12em;line-height:1.2}
.review-rail .review-grid blockquote p{font:500 17px/1.12 var(--serif);letter-spacing:-.015em;color:#253f2e;margin:4px 0 5px}
.review-rail .review-grid blockquote footer{margin:0;font-size:9px;line-height:1.2;color:#344c3a}
.review-rail .review-grid blockquote footer span{color:#788274;font-weight:400}
.review-rail .review-book{display:flex;min-width:0;width:100%;min-height:43px;margin-top:8px;padding:11px 14px;border-radius:12px;font-size:10px;letter-spacing:.1em}
.review-rail .rail-source{max-width:none;margin:8px 2px 0;color:#667969;font-size:9px;line-height:1.4}
.review-rail .rail-source a{text-decoration:underline;text-underline-offset:2px}
.review-rail a:focus-visible{outline:3px solid #c3a775;outline-offset:3px}
@media(min-width:1101px){
 main#main-content{position:relative}
 .review-rail{position:absolute;z-index:4;top:135px;right:clamp(30px,5vw,75px);width:clamp(245px,21vw,290px);margin:0}
 .review-rail .rail-heading{padding:8px 11px;border-radius:13px;background:#e6e2d6;border:1px solid #c9b996}
 .review-rail .rail-source{color:#fff;background:#10261dd9;padding:6px 9px;border-radius:8px}
 main>.hero .hero-content{right:clamp(350px,32vw,470px);max-width:none}
 main>.policy-hero{min-height:535px}
 main>.policy-hero .section-wrap{padding-right:390px}
}
@media(max-width:520px){
 .review-rail{width:min(320px,calc(100% - 40px));margin:20px 20px 15px auto}
 .review-rail .review-grid blockquote{padding:10px 12px}
 .review-rail .review-grid blockquote p{font-size:17px}
}
/* Keep the home-page reviews on the photograph at tablet and phone widths too. */
@media (max-width:1100px){
 body[data-page="home"] main#main-content{position:relative}
 body[data-page="home"] .review-rail{position:absolute;z-index:4;top:145px;right:clamp(16px,3vw,28px);width:clamp(185px,27vw,265px);margin:0}
 body[data-page="home"] .review-rail .rail-heading{padding:8px 10px;border-radius:12px;background:#e6e2d6;border:1px solid #c9b996}
 body[data-page="home"] .review-rail .rail-source{color:#fff;background:#10261dd9;padding:6px 9px;border-radius:8px}
 body[data-page="home"] .hero-content{left:clamp(24px,5vw,55px);right:calc(clamp(185px,27vw,265px) + 50px);max-width:none}
 body[data-page="home"] .hero h1{font-size:clamp(3rem,6.2vw,5rem)}
}
@media (max-width:600px){
 body[data-page="home"] .review-rail{top:138px;right:14px;width:min(42vw,170px)}
 body[data-page="home"] .rail-heading{gap:4px;padding:6px 7px}
 body[data-page="home"] .rail-eyebrow{font-size:7px;letter-spacing:.06em}
 body[data-page="home"] .rail-heading strong{font-size:19px}
 body[data-page="home"] .rail-heading strong span{font-size:9px}
 body[data-page="home"] .rail-heading>a{font-size:8px}
 body[data-page="home"] .review-rail .review-grid{gap:5px}
 body[data-page="home"] .review-rail .review-grid blockquote{padding:7px 8px}
 body[data-page="home"] .review-rail .review-grid blockquote p{font-size:12px;line-height:1.15;margin:3px 0}
 body[data-page="home"] .review-rail .review-grid blockquote footer{font-size:8px}
 body[data-page="home"] .review-rail .review-stars{font-size:8px}
 body[data-page="home"] .review-rail .review-book{min-height:36px;padding:8px;font-size:9px}
 body[data-page="home"] .review-rail .rail-source{font-size:8px;line-height:1.25}
 body[data-page="home"] .hero-content{left:23px;right:calc(min(42vw,170px) + 28px);bottom:12%}
 body[data-page="home"] .hero .eyebrow{font-size:9px;letter-spacing:.09em;margin-bottom:14px}
 body[data-page="home"] .hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.02;margin-bottom:16px}
 body[data-page="home"] .hero-copy{font-size:13px;line-height:1.45;margin-bottom:18px}
 body[data-page="home"] .hero-actions{align-items:flex-start;flex-direction:column;gap:12px}
 body[data-page="home"] .hero-actions .button{width:100%;min-width:0;max-width:100%;padding:11px;font-size:9px;gap:4px}
 body[data-page="home"] .hero-secondary{font-size:10px}
}

/* The longer home headline needs a stable start below the navigation. */
@media (min-width:1101px){
 body[data-page="home"] .hero-content{top:clamp(155px,18vh,190px);bottom:auto}
 body[data-page="home"] .hero h1{font-size:clamp(3.8rem,5.2vw,6rem);line-height:1.04;margin-bottom:22px}
 body[data-page="home"] .hero .eyebrow{margin-bottom:16px}
}
@media (max-width:1100px){
 body[data-page="home"] .hero-content{top:155px;bottom:auto}
}
@media (max-width:600px){
 body[data-page="home"] .hero-content{top:145px}
}
