.reviews-page{overflow:hidden}.guest-hero{padding:clamp(4rem,7vw,7rem) 0;background:linear-gradient(130deg,#f0f7fa 0%,#fff 58%,#faf5e9 100%)}.guest-hero-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(2rem,5vw,5rem);align-items:center}.guest-hero-copy{max-width:660px}.guest-hero h1{font-size:clamp(3rem,5.8vw,5.7rem);margin:.65rem 0 1.1rem}.guest-hero p{max-width:54ch;color:var(--muted);font-size:1.1rem}.guest-hero .btn{margin:1rem 1rem 0 0}.guest-hero-link{display:inline-block;color:var(--blue-dark);font-weight:700}.guest-hero-link:hover{text-decoration:underline}.guest-hero-image{position:relative;min-width:0;aspect-ratio:4/4.2;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--blue-light)}.guest-hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center 43%}.guest-hero-badge{position:absolute;bottom:1.1rem;left:1.1rem;display:flex;align-items:center;gap:.55rem;padding:.55rem .8rem;border-radius:10px;background:rgba(255,255,255,.94);color:var(--navy);font:800 .76rem var(--font-ui);box-shadow:0 8px 25px #002a4660}.guest-hero-badge img{width:33px;height:33px;object-fit:contain}.guest-intro{padding-top:clamp(4rem,7vw,6rem);padding-bottom:1.3rem}.guest-intro h2{max-width:700px;margin:.5rem 0 1rem}.guest-intro p{max-width:65ch;color:var(--muted)}.guest-gallery-section{padding-bottom:clamp(4rem,7vw,6rem)}.guest-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.guest-filter-list{display:flex;gap:.55rem;flex-wrap:wrap}.guest-filter{border:1px solid var(--line);background:#fff;border-radius:99px;padding:.5rem .9rem;color:var(--ink);font:700 .82rem var(--font-ui);transition:background .2s,color .2s,border-color .2s}.guest-filter:hover,.guest-filter[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}.guest-count{margin:0;color:var(--muted);font-size:.84rem;white-space:nowrap}.guest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.guest-card{margin:0;min-width:0;border-radius:12px;overflow:hidden;background:var(--blue-light);box-shadow:0 4px 18px #092e4a14}.guest-card[hidden],.guest-empty[hidden],.guest-lightbox[hidden],.guest-more[hidden]{display:none!important}.guest-card-button{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:var(--navy)}.guest-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}.guest-card-button:hover img{transform:scale(1.04)}.guest-card-caption{display:flex;justify-content:space-between;align-items:center;padding:.65rem .8rem;font:700 .83rem var(--font-ui);background:#fff}.guest-more-wrap{text-align:center;margin-top:2rem}.guest-empty{color:var(--muted);padding:2rem 0}.guest-cta{background:var(--navy);color:#fff;padding:clamp(3.5rem,6vw,5rem) 0}.guest-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:2rem}.guest-cta h2{color:#fff;max-width:650px;margin:.55rem 0 1rem}.guest-cta p{max-width:60ch;color:#d2e2ec;margin:0}.guest-cta .eyebrow{color:#97d5f2}.guest-lightbox{position:fixed;z-index:10000;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;background:rgba(3,24,40,.94);padding:3rem 1rem 1rem}.guest-lightbox img{max-width:min(100%,1200px);max-height:calc(100vh - 6rem);object-fit:contain}.guest-lightbox p{color:#fff;margin:0}.guest-lightbox-close{position:absolute;right:1rem;top:.6rem;background:none;border:0;color:white;font-size:2.5rem;line-height:1;padding:.25rem .6rem}.guest-filter:focus-visible,.guest-card-button:focus-visible,.guest-more:focus-visible,.guest-lightbox-close:focus-visible{outline:3px solid #efad44;outline-offset:3px}@media(max-width:1000px){.guest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.guest-hero-layout{grid-template-columns:1fr}.guest-hero{padding:3.5rem 0}.guest-hero-image{aspect-ratio:5/4;max-height:390px}.guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-cta-inner{align-items:flex-start;flex-direction:column}.guest-hero h1{font-size:clamp(2.8rem,10vw,4.4rem)}}@media(max-width:480px){.guest-grid{gap:.7rem}.guest-card-caption{font-size:.73rem;padding:.55rem}.guest-filter{font-size:.75rem;padding:.45rem .65rem}.guest-toolbar{align-items:flex-start}.guest-hero-image{aspect-ratio:1/1}.guest-hero .btn{margin-bottom:.7rem}}
