/* CHR completed editorial content routes: existing CHR brand system reused */
.chr-completion-main{background:#faf9f6;min-height:60vh;color:#203f3e}.chr-completion-hero{padding:78px max(4vw,24px) 64px;background:#123839;color:#fff;position:relative;overflow:hidden}.chr-completion-hero.has-photo{background-size:cover;background-position:center}.chr-completion-hero.has-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,39,42,.93),rgba(11,39,42,.76) 52%,rgba(11,39,42,.22))}.chr-completion-hero>*{position:relative;z-index:1}.chr-completion-hero-inner{max-width:1120px;margin:auto}.chr-completion-kicker{letter-spacing:.17em;text-transform:uppercase;font-size:12px;font-weight:600;color:#d2ad80}.chr-completion-hero h1{font:400 clamp(40px,5vw,66px)/1.08 Georgia,serif;max-width:870px;margin:19px 0 18px;letter-spacing:-.028em}.chr-completion-hero p{font-size:19px;line-height:1.6;max-width:740px;color:#eff1ed}.chr-completion-page{max-width:1160px;margin:0 auto;padding:50px 24px 86px;display:grid;grid-template-columns:minmax(0,740px) minmax(220px,300px);gap:60px}.chr-completion-body section{margin:0 0 36px;padding-bottom:24px;border-bottom:1px solid #dcded8}.chr-completion-body h2{font:400 clamp(26px,2.9vw,37px)/1.23 Georgia,serif;margin:0 0 15px;color:#1b3c3d}.chr-completion-body p,.chr-completion-body li{font-size:16px;line-height:1.78;color:#4c6060}.chr-completion-body p{margin:0 0 14px}.chr-completion-body .chr-completion-aside-note{padding:17px 20px;background:#eef2ec;border-left:3px solid #b68d54;font-size:14px}.chr-completion-side{align-self:start;position:sticky;top:94px;background:#f0f1eb;padding:27px;border-top:3px solid #c9a275}.chr-completion-side h2{font:27px Georgia,serif;margin:6px 0 16px}.chr-completion-side a{display:block;padding:12px 0;color:#18555b;border-bottom:1px solid #d9dfdb;text-decoration:none}.chr-completion-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 35px}.chr-completion-button{appearance:none;border:1px solid #123a3c;color:white;background:#123a3c;display:inline-flex;padding:15px 20px;border-radius:3px;text-decoration:none;font:600 13px/1.5 system-ui,sans-serif;cursor:pointer}.chr-completion-button.secondary{background:transparent;color:#123a3c}.chr-completion-dir{max-width:1170px;margin:auto;padding:46px 24px 95px}.chr-completion-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.chr-completion-directory article{padding:25px;border:1px solid #e3e4de;background:white;display:flex;gap:12px;flex-direction:column}.chr-completion-directory h2{font:23px/1.2 Georgia,serif;color:#193d40}.chr-completion-directory p{font-size:14px;line-height:1.65;color:#526868}.chr-completion-directory a{color:#0e5f73;margin-top:auto}.chr-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chr-planning-form{padding:24px;background:#f1f3ee;border:1px solid #dfe8e1;margin:25px 0}.chr-planning-form label{display:block;font-size:13px;font-weight:650;color:#244746;margin:13px 0}.chr-planning-form input,.chr-planning-form select,.chr-planning-form textarea{box-sizing:border-box;display:block;margin-top:7px;width:100%;padding:13px;border:1px solid #aebebb;background:#fff;border-radius:3px;font:16px/1.3 system-ui,sans-serif;color:#213b39}.chr-mini-note{font-size:12px!important;line-height:1.55!important}.chr-planning-form input:focus-visible,.chr-planning-form select:focus-visible,.chr-planning-form textarea:focus-visible{outline:3px solid #b3935d;outline-offset:2px}.chr-screenreader{position:absolute;clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden}@media(max-width:950px){.chr-completion-page{grid-template-columns:1fr}.chr-completion-side{position:static}.chr-completion-directory{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.chr-completion-hero{padding:60px 20px 46px}.chr-completion-page{padding:30px 18px 60px}.chr-fields,.chr-completion-directory{grid-template-columns:1fr}.chr-completion-hero h1{font-size:38px}}

/* CHR Beaches photo stories — current property-specific images */
.chr-photo-story{margin:18px 0 40px;padding:24px 0 34px;border-top:1px solid #d8ded9;border-bottom:1px solid #d8ded9}
.chr-photo-story-heading{margin:0 0 21px}.chr-photo-kicker{font-size:11px;font-weight:700;letter-spacing:.16em;color:#b08a57}
.chr-photo-story h2{font:400 clamp(25px,3vw,37px)/1.2 Georgia,serif;color:#183c3a;margin:8px 0 11px}.chr-photo-story p{font-size:15px;color:#526965;line-height:1.6;margin:0;max-width:670px}
.chr-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.chr-photo-tile{min-width:0;background:#fff;overflow:hidden;border:1px solid #e4e5df;margin:0}
.chr-photo-tile img{display:block;width:100%;height:auto;aspect-ratio:1500/795;object-fit:cover}
.chr-photo-tile figcaption{padding:13px 15px 15px;font-size:12px;line-height:1.5;color:#677a75}.chr-photo-tile figcaption strong{display:block;font:400 19px/1.3 Georgia,serif;color:#153d3b;margin-bottom:4px}.chr-photo-tile figcaption span{display:block}
.chr-photo-ctas{display:flex;flex-wrap:wrap;gap:11px;margin-top:20px}.chr-photo-ctas a{padding:12px 16px;font-size:13px;font-weight:650;text-decoration:none;background:#14393a;color:#fff;border:1px solid #14393a;border-radius:3px}
.chr-photo-ctas a:first-child{background:transparent;color:#14393a;border-color:#adbdb9}.chr-beaches-gallery{padding:24px 0 48px;background:#f8f6f1}
@media(max-width:650px){.chr-photo-grid{grid-template-columns:1fr}.chr-photo-ctas a{width:100%;text-align:center}.chr-photo-story{margin:15px 0 26px}}
/* CHR branded vacation inquiry panel */
.chr-native-inquiry{padding:28px;background:#f0f5f1;border:1px solid #d8e3db;border-left:4px solid #ba955d;margin:26px 0 28px}.chr-native-inquiry h2{font:400 29px/1.23 Georgia,serif;color:#173a39;margin:9px 0}.chr-native-inquiry p{font-size:14px;line-height:1.7;color:#526a65;max-width:650px}.chr-native-inquiry a{display:inline-flex;margin:12px 0}.chr-native-inquiry-note{font-size:12px!important}.chr-email-alternative{font:25px Georgia,serif;margin:27px 0 15px;color:#153a38}

/* CHR booking-first resort card CTA styling */
.chr-photo-resort-card .chr-photo-resort-links{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin-top:18px}
.chr-photo-resort-card .chr-photo-resort-links a{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:43px;padding:11px 15px;border-radius:5px;font-size:13px;font-weight:700;text-decoration:none;line-height:1.35}
.chr-photo-resort-card a.chr-resort-book-primary{background:#173f42;color:#fff!important;border:1px solid #173f42}
.chr-photo-resort-card a.chr-resort-book-primary:hover{background:#24595b;border-color:#24595b}
.chr-photo-resort-card a.chr-resort-ask-concierge{background:#fff;color:#21494b!important;border:1px solid #d2b88b}
.chr-photo-resort-card a.chr-resort-ask-concierge:hover{background:#f6f1e8}
.chr-photo-resort-card .chr-photo-resort-links a:focus-visible{outline:3px solid #bd985d;outline-offset:3px}
@media(max-width:560px){.chr-photo-resort-card .chr-photo-resort-links{flex-direction:column}.chr-photo-resort-card .chr-photo-resort-links a{width:100%}}
