/* Shared holiday collections with travel-style-specific copy and photography. */
.pc-collection-nav label{display:flex;align-items:center;gap:12px;font-size:12px;color:#66715f}
.pc-collection-nav select{max-width:240px;min-width:0;padding:10px 30px 10px 12px;border:1px solid #d8dfd1;border-radius:4px;background:#fff;color:#344734;font:inherit}
@media(max-width:650px){.pc-collection-nav>div{flex-wrap:wrap}.pc-collection-nav label{flex-wrap:wrap;gap:6px}.pc-collection-nav select{max-width:220px}}
.collection-page { margin:0; padding-top:78px; background:#faf9f6; color:#26332c; font:14px/1.65 'Plus Jakarta Sans',sans-serif; -webkit-font-smoothing:antialiased; }
.collection-page * { box-sizing:border-box; }
.collection-page :is(h1,h2,h3,p,figure) { margin:0; }
.collection-page a { color:inherit; text-decoration:none; }
.collection-page :is(button,input,select) { font:inherit; }
.collection-page button { cursor:pointer; }
.collection-page [hidden] { display:none !important; }
.collection-page :is(a,button,input,select):focus-visible { outline:3px solid #9baf8d; outline-offset:4px; }
.collection-page section[id] { scroll-margin-top:100px; }
.pc-width { width:min(1280px,88%); margin-inline:auto; }
.pc-eyebrow { color:#7c826f; font-size:9px; font-weight:600; letter-spacing:.19em; line-height:1.7; }
.pc-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.56fr); gap:100px; align-items:center; padding-block:64px 62px; }
.pc-hero h1 { font:400 clamp(50px,5.5vw,80px)/1.02 Georgia,'Times New Roman',serif; letter-spacing:-.045em; margin-top:25px; }
.pc-hero h1 em { font-weight:400; }
.pc-intro { max-width:470px; margin-top:25px !important; color:#73776f; font-size:13px; line-height:1.9; }
.pc-hero-note { margin-top:32px !important; color:#7e8376; font-size:10px; letter-spacing:.015em; }
.pc-hero-photo { position:relative; height:360px; overflow:hidden; border-radius:2px; }
.pc-hero-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 63%; }
.pc-hero-photo figcaption { position:absolute; left:24px; bottom:23px; color:white; font-size:8px; letter-spacing:.19em; text-shadow:0 1px 8px #0008; }
.pc-collection-nav { display:flex; justify-content:space-between; gap:24px; align-items:center; min-height:68px; border-top:1px solid #e0e2da; border-bottom:1px solid #e0e2da; font-size:11px; }
.pc-collection-nav>div { display:flex; gap:28px; align-items:center; }
.pc-collection-nav a { padding-block:22px; color:#7b7f75; }
.pc-collection-nav a[aria-current] { color:#263d2c; box-shadow:inset 0 -2px #36523d; }
.pc-collection-nav>a { text-decoration:underline; text-underline-offset:5px; text-decoration-color:#b7beb0; }
.pc-catalog { padding-block:58px 56px; }
.pc-catalog-heading { display:flex; gap:30px; align-items:end; justify-content:space-between; margin-bottom:27px; }
.pc-catalog h2 { font:400 37px/1.2 Georgia,serif; letter-spacing:-.035em; margin-top:10px; }
#pc-count { font-size:10px; color:#848a7c; padding-bottom:4px; }
.pc-filters { display:flex; flex-wrap:wrap; gap:18px; align-items:end; padding:0 0 28px; }
.pc-filters label { display:grid; gap:7px; min-width:165px; color:#7b8172; font-size:9px; }
.pc-filters select { width:100%; min-height:43px; border:1px solid #dfe3d8; border-radius:2px; padding:9px 32px 9px 12px; background:#fffdf9; color:#44513f; font-size:11px; }
.pc-filters button { margin:0 0 11px auto; border:0; background:none; padding:0; color:#65735a; font-size:11px; text-decoration:underline; text-underline-offset:4px; }
.pc-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; align-items:stretch; }
.pc-card { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #e1e5da; border-radius:3px; overflow:hidden; }
.pc-card-photo { display:block; position:relative; aspect-ratio:3/2; overflow:hidden; background:#e4e6dd; }
.pc-card-photo img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.pc-card-photo:hover img { transform:scale(1.025); }
.pc-card-photo>span { position:absolute; left:15px; bottom:15px; padding:6px 9px; background:#fffef7f2; color:#43513d; border-radius:2px; font-size:8px; letter-spacing:.03em; }
.pc-card-body { padding:24px 23px 21px; display:flex; flex-direction:column; flex:1; }
.pc-card-place { font-size:8px; letter-spacing:.13em; text-transform:uppercase; color:#839075; }
.pc-card h3 { font:400 25px/1.18 Georgia,serif; letter-spacing:-.025em; margin-top:11px; }
.pc-card h3 a:hover { color:#6f805f; }
.pc-route { margin-top:14px !important; color:#7b8771; font-size:10px; line-height:1.7; }
.pc-card-description { margin-top:14px !important; color:#7b8075; font-size:11px; line-height:1.9; }
.pc-reasons { color:#637b58; font-size:9px; margin-top:18px !important; }
.pc-card-bottom { display:flex; justify-content:space-between; align-items:end; gap:12px; margin-top:auto; padding-top:26px; }
.pc-price>span { display:block; font-size:7px; color:#8d9684; letter-spacing:.07em; }
.pc-price strong { display:block; font-size:24px; font-weight:500; letter-spacing:-.045em; margin-top:4px; white-space:nowrap; }
.pc-price strong small { font-size:8px; font-weight:400; letter-spacing:0; color:#86917b; }
.pc-price .pc-price-quote { font:400 20px/1.3 Georgia,serif; white-space:normal; max-width:140px; letter-spacing:-.02em; margin-top:7px; }
.pc-button { display:inline-flex; align-items:center; justify-content:center; border:1px solid #a3af98; border-radius:2px; padding:11px 14px; color:#35472e; font-size:10px; font-weight:500; background:transparent; text-align:center; white-space:nowrap; }
.pc-button:hover { background:#eff2e9; }
.pc-button-dark { border-color:#2f4734; background:#2f4734; color:#fff; }
.pc-button-dark:hover { background:#415c45; }
.pc-card-enquire { display:block; color:#7c8b6e !important; font-size:9px; margin-top:16px; padding-top:15px; border-top:1px solid #edf0e7; }
.pc-card-enquire:hover { text-decoration:underline; text-underline-offset:4px; }
.pc-price-note { max-width:850px; color:#929887; font-size:9px; line-height:1.9; margin-top:25px !important; }
.pc-empty { grid-column:1/-1; padding:45px; background:#f0f2e9; border:1px solid #dde3d3; }
.pc-empty h3 { font:400 30px/1.2 Georgia,serif; }
.pc-empty p { color:#7c8770; font-size:12px; margin-top:14px; max-width:600px; }
.pc-empty button,.pc-empty a { margin-top:20px; }
.pc-empty button { border:0; background:transparent; color:#354e2b; padding:0; text-decoration:underline; }
.pc-family-notes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:60px; border-top:1px solid #dfe4d6; padding-block:38px 65px; }
.pc-family-notes article>span { display:block; color:#a4ad99; font-size:9px; margin-bottom:17px; }
.pc-family-notes h3 { font:400 24px/1.2 Georgia,serif; letter-spacing:-.02em; }
.pc-family-notes p { font-size:11px; line-height:1.9; color:#7f8976; margin-top:14px; max-width:310px; }
.pc-plan { background:#eef1e7; padding-block:68px; }
.pc-plan-layout { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:start; }
.pc-plan h2 { font:400 clamp(35px,3.6vw,52px)/1.08 Georgia,serif; letter-spacing:-.035em; margin-top:22px; }
.pc-plan-copy>p:not(.pc-eyebrow) { margin-top:22px; font-size:12px; line-height:1.9; color:#75816a; max-width:390px; }
.pc-plan-copy button { border:0; background:none; padding:0 0 4px; border-bottom:1px solid #9da992; color:#425b35; font-size:11px; margin-top:28px; }
.pc-plan-copy>a { display:block; margin-top:15px; font-size:10px; color:#7d8b71; }
.pc-fields { display:grid; grid-template-columns:1fr 1fr; gap:19px; }
.pc-fields label { display:grid; gap:8px; color:#5e7051; font-size:10px; }
.pc-field-wide { grid-column:1/-1; }
.pc-fields :is(input,select) { width:100%; min-width:0; min-height:45px; border:1px solid #d1dac7; background:#fafbf6; color:#344d29; border-radius:2px; padding:10px 12px; font-size:11px; }
.pc-fields input::placeholder { color:#99a38f; opacity:1; }
.pc-request-form>.pc-button { margin-top:23px; width:100%; min-height:45px; font-size:11px; }
.pc-form-note { color:#89967b; font-size:9px; line-height:1.8; margin-top:12px !important; }
#pc-request-status { color:#435d36; font-size:11px; margin-top:16px; }
#pc-request-status a { text-decoration:underline; }
.pc-footer { padding-block:32px; display:flex; gap:30px; align-items:center; justify-content:space-between; font-size:9px; color:#8a927e; }
.pc-footer>div { display:flex; flex-wrap:wrap; gap:16px 28px; }
@media(max-width:1050px) { .pc-hero { gap:50px; grid-template-columns:1.3fr .8fr; } .pc-hero h1 { font-size:60px; } .pc-hero-photo { height:330px; } .pc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .pc-plan-layout { gap:50px; } .pc-family-notes { gap:30px; } }
@media(max-width:650px) {
 .collection-page { padding-top:68px; }
 .pc-width { width:90%; }
 .pc-hero { display:block; padding-block:39px 35px; }
 .pc-hero h1 { font-size:clamp(43px,12vw,57px); margin-top:17px; }
 .pc-intro { font-size:12px; margin-top:20px !important; max-width:340px; }
 .pc-hero-note { font-size:9px; margin-top:23px !important; }
 .pc-hero-photo { height:210px; margin-top:28px; }
 .pc-hero-photo img { object-position:center 58%; }
 .pc-hero-photo figcaption { left:18px; bottom:16px; font-size:7px; }
 .pc-collection-nav { min-height:65px; gap:15px; font-size:10px; align-items:stretch; }
 .pc-collection-nav>div { gap:20px; }
 .pc-collection-nav>a { max-width:110px; text-align:right; align-self:center; font-size:9px; padding-block:15px; }
 .pc-catalog { padding-block:38px; }
 .pc-catalog-heading { align-items:start; gap:20px; margin-bottom:22px; }
 .pc-catalog h2 { font-size:30px; max-width:240px; }
 #pc-count { padding-top:28px; text-align:right; max-width:90px; font-size:9px; }
 .pc-filters { gap:12px; }
 .pc-filters label { flex:1 1 40%; min-width:0; }
 .pc-filters label:nth-child(3) { flex:1 1 100%; }
 .pc-filters select { font-size:16px; min-height:46px; }
 .pc-filters button { font-size:11px; margin:3px 0 0; }
 .pc-grid { grid-template-columns:1fr; gap:24px; }
 .pc-card-body { padding:24px; }
 .pc-card h3 { font-size:28px; }
 .pc-card-photo { aspect-ratio:3/2; }
 .pc-card-bottom { padding-top:25px; }
 .pc-price strong { font-size:27px; }
 .pc-price .pc-price-quote { font-size:23px; max-width:none; }
 .pc-button { min-height:42px; padding:12px 16px; font-size:11px; }
 .pc-card-enquire { font-size:10px; }
 .pc-family-notes { grid-template-columns:1fr; gap:28px; padding-block:30px 40px; }
 .pc-family-notes article { display:grid; grid-template-columns:24px 1fr; column-gap:14px; }
 .pc-family-notes article>span { padding-top:6px; grid-row:1/3; }
 .pc-family-notes h3 { font-size:24px; }
 .pc-family-notes p { margin-top:10px; }
 .pc-plan { padding-block:45px; }
 .pc-plan-layout { grid-template-columns:1fr; gap:32px; }
 .pc-plan h2 { font-size:40px; margin-top:17px; }
 .pc-fields { gap:15px; }
 .pc-fields :is(input,select) { font-size:16px; min-height:48px; }
 .pc-fields label { font-size:10px; }
 .pc-request-form>.pc-button { min-height:48px; font-size:12px; }
 .pc-footer { display:block; padding-block:25px; line-height:1.8; }
 .pc-footer>div { margin-top:16px; gap:22px; }
 .pc-empty { padding:28px; }
}
@media(prefers-reduced-motion:reduce) { .pc-card-photo img { transition:none; } }
