.package-page{--pk-font-head:"Montserrat",sans-serif;--pk-font-body:"Lato",sans-serif;--pk-primary:#318f53;--pk-primary-hover:#256e3f;--pk-primary-tint:rgba(49,143,83,.1);--pk-accent:#c17a3d;--pk-grey:#61514d;--pk-white:#fff;--pk-cream:#faf8f5;--pk-warm-bg:#f5f3ef;--pk-light-gray:#eee;--pk-border:#e0e0e0;--pk-border-warm:#ddd8d1;--pk-text-dark:#2c2c2c;--pk-text-body:#555;--pk-text-light:#7a736e;--pk-text-inverse:#fff;--pk-shadow-card:0 2px 12px rgba(0,0,0,.06);--pk-shadow-hover:0 12px 32px rgba(0,0,0,.12);--pk-s1:4px;--pk-s2:8px;--pk-s3:12px;--pk-s4:16px;--pk-s5:20px;--pk-s6:24px;--pk-s7:32px;--pk-s8:40px;--pk-s9:60px;--pk-s10:80px;--pk-section-y:56px;--pk-radius-sm:8px;--pk-radius-md:10px;--pk-radius-lg:12px;--pk-radius-pill:30px;--pk-trans-fast:0.2s ease;--pk-trans-base:0.25s ease;--pk-trans-slow:0.35s cubic-bezier(0.25,0.46,0.45,0.94);--pk-container-max:1200px;--pk-container-px:24px;--pk-measure:760px;box-sizing:border-box;color:var(--pk-text-body);font-family:var(--pk-font-body);line-height:1.6}.package-page *,.package-page :after,.package-page :before{box-sizing:inherit}.package-page ol,.package-page ul{list-style:none;margin:0;padding:0}.package-page ol li,.package-page ul li{list-style:none!important;list-style-image:none!important;list-style-type:none!important}.package-page ol li::marker,.package-page ul li::marker{content:""!important}.pk-visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.pk-container{margin:0 auto;max-width:var(--pk-container-max);padding:0 var(--pk-container-px)}.pk-container--narrow{max-width:calc(var(--pk-measure) + var(--pk-container-px)*2)}.pk-overline{color:var(--pk-cream);display:block;font-family:var(--pk-font-head);font-size:13px;font-weight:600;letter-spacing:.1em;margin-bottom:var(--pk-s2);text-shadow:0 2px 4px rgba(0,0,0,.3);text-transform:uppercase}.pk-overline--dark{color:var(--pk-accent);text-shadow:none}.pk-section-head{margin:0 auto var(--pk-s7);max-width:760px;text-align:center}.pk-section-title{color:var(--pk-text-dark);font-family:var(--pk-font-head);font-size:clamp(24px,17px + 1.4vw,32px);font-weight:700;line-height:1.25;margin:0 0 var(--pk-s3)}.pk-section-sub,.pk-section-title--center{text-align:center}.pk-section-sub{color:var(--pk-text-light);font-size:17px;line-height:1.7;margin:0 auto;max-width:660px}.pk-btn{align-items:center;background:var(--pk-primary);border:2px solid var(--pk-primary);border-radius:var(--pk-radius-pill);color:var(--pk-text-inverse);cursor:pointer;display:inline-flex;font-family:var(--pk-font-head);font-size:14px;font-weight:600;gap:var(--pk-s2);justify-content:center;line-height:1.2;padding:13px var(--pk-s7);text-align:center;text-decoration:none;transition:background var(--pk-trans-base),border-color var(--pk-trans-base),color var(--pk-trans-base),gap var(--pk-trans-fast)}a.pk-btn:hover,button.pk-btn:hover{background:var(--pk-primary-hover);border-color:var(--pk-primary-hover);color:var(--pk-text-inverse);gap:14px}.pk-btn svg{flex-shrink:0;height:16px;width:16px}.pk-btn--ghost{background:transparent;border-color:hsla(0,0%,100%,.7);color:var(--pk-text-inverse)}a.pk-btn--ghost:hover{background:var(--pk-white);border-color:var(--pk-white);color:var(--pk-text-dark)}.pk-btn--quiet{background:transparent;border-color:var(--pk-border);color:var(--pk-text-dark)}a.pk-btn--quiet:hover,button.pk-btn--quiet:hover{background:var(--pk-primary-tint);border-color:var(--pk-primary);color:var(--pk-primary-hover)}.pk-hero{align-items:center;background:var(--pk-text-dark);display:flex;min-height:clamp(380px,54vh,540px);overflow:hidden;position:relative}.pk-hero-media{inset:0;position:absolute}.pk-hero-media img{display:block;height:100%;object-fit:cover;width:100%}.pk-hero-scrim{background:linear-gradient(180deg,rgba(0,0,0,.35) 0,rgba(0,0,0,.55) 70%,rgba(0,0,0,.66));inset:0;position:absolute;z-index:1}.pk-hero-inner{color:var(--pk-text-inverse);padding-bottom:var(--pk-s8);padding-top:var(--pk-s8);position:relative;text-align:center;width:100%;z-index:2}.pk-hero-title{color:var(--pk-white);font-family:var(--pk-font-head);font-size:clamp(29px,17.6px + 2.4vw,45px);font-weight:700;line-height:1.2;margin:0 auto var(--pk-s4);max-width:min(100%,clamp(420px,64vw,780px));text-shadow:0 2px 8px rgba(0,0,0,.4)}.pk-hero-sub{color:hsla(0,0%,100%,.9);font-size:17px;line-height:1.7;margin:0 auto var(--pk-s6);max-width:min(100%,clamp(420px,66vw,800px));text-shadow:0 1px 4px rgba(0,0,0,.3)}.pk-hero-actions{display:flex;flex-wrap:wrap;gap:var(--pk-s3);justify-content:center}.pk-intro{background:var(--pk-warm-bg)}.pk-booking{background:var(--pk-white)}.pk-rates{background:var(--pk-warm-bg)}.pk-gallery{background:var(--pk-white)}.pk-stays{background:var(--pk-warm-bg)}.pk-enquiry{background:var(--pk-cream)}.pk-booking,.pk-enquiry,.pk-gallery,.pk-intro,.pk-rates,.pk-stays{padding:var(--pk-section-y) 0}.pk-prose p{color:var(--pk-text-body);font-size:16px;line-height:1.75;margin:0 0 var(--pk-s4);text-align:center}.pk-prose p:last-child{margin-bottom:0}.pk-more{padding-top:var(--pk-s4)}.package-page.pk-js .pk-intro:not(.is-open) .pk-more{display:none}.pk-intro.is-open .pk-more{animation:pk-reveal .4s ease both}.pk-readmore{align-items:center;background:none;border:0;box-shadow:none;color:var(--pk-primary);cursor:pointer;display:flex;font-family:var(--pk-font-head);font-size:14px;font-weight:600;gap:var(--pk-s2);line-height:1.2;margin:var(--pk-s5) auto 0;padding:var(--pk-s2) 0;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1.5px;text-underline-offset:4px;transition:color var(--pk-trans-fast),text-decoration-color var(--pk-trans-fast);width:fit-content}.pk-readmore:hover{background:none;color:var(--pk-primary-hover);text-decoration-color:currentColor}.pk-readmore[hidden]{display:none}.pk-readmore svg{flex-shrink:0;height:16px;transition:transform var(--pk-trans-fast);width:16px}.pk-intro.is-open .pk-readmore-more,.pk-readmore-less{display:none}.pk-intro.is-open .pk-readmore-less{display:inline}.pk-intro.is-open .pk-readmore svg{transform:rotate(180deg)}.pk-booking-inner{align-items:center;background:var(--pk-white);border:1px solid var(--pk-border);border-radius:var(--pk-radius-lg);box-shadow:var(--pk-shadow-card);display:grid;gap:var(--pk-s7);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);padding:var(--pk-s7)}.pk-booking-cell{display:flex;flex-direction:column;min-width:0}.pk-booking-cell+.pk-booking-cell{border-left:1px solid var(--pk-border);padding-left:var(--pk-s7)}.pk-booking-overline{color:var(--pk-accent);letter-spacing:.12em;margin-bottom:var(--pk-s3)}.pk-booking-label,.pk-booking-overline{font-family:var(--pk-font-head);font-size:11px;font-weight:700;text-transform:uppercase}.pk-booking-label{color:var(--pk-grey);letter-spacing:.1em;margin-bottom:var(--pk-s2)}.pk-booking-amount{color:var(--pk-text-dark);font-family:var(--pk-font-head);font-size:clamp(32px,24px + 1.6vw,44px);font-weight:800;line-height:1}.pk-booking-unit{color:var(--pk-grey);font-family:var(--pk-font-head);font-size:12px;font-weight:600;letter-spacing:.08em;margin-top:var(--pk-s2);text-transform:uppercase}.pk-booking-note{color:var(--pk-text-light);font-size:14px;font-style:italic;margin-top:var(--pk-s2)}.pk-contact{margin:0}.pk-contact-row{align-items:baseline;border-bottom:1px solid var(--pk-border);display:flex;gap:var(--pk-s3);justify-content:space-between;padding:var(--pk-s2) 0}.pk-contact-row:last-child{border-bottom:none}.pk-contact dt{color:var(--pk-grey);flex-shrink:0;font-family:var(--pk-font-head);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.pk-contact dd{margin:0}.pk-contact a{color:var(--pk-text-dark);font-size:15px;font-weight:600;text-decoration:none;transition:color var(--pk-trans-fast);white-space:nowrap}.pk-contact a:hover{color:var(--pk-primary)}.pk-booking-actions{gap:var(--pk-s3)}.pk-booking-actions .pk-btn{width:100%}.pk-booking-download{font-size:13px;padding:11px var(--pk-s5)}.pk-rate-grid{display:grid;gap:var(--pk-s6);grid-template-columns:repeat(2,1fr)}.pk-rate-card{background:var(--pk-white);border:1px solid var(--pk-border);border-radius:var(--pk-radius-lg);box-shadow:var(--pk-shadow-card);display:flex;flex-direction:column;padding:var(--pk-s7)}.pk-rate-head{border-bottom:1px solid var(--pk-border);margin-bottom:var(--pk-s5);padding-bottom:var(--pk-s5);text-align:center}.pk-rate-kicker{color:var(--pk-accent);display:block;font-size:11px;letter-spacing:.12em;margin-bottom:var(--pk-s2);text-transform:uppercase}.pk-rate-kicker,.pk-rate-title{font-family:var(--pk-font-head);font-weight:700}.pk-rate-title{color:var(--pk-text-dark);font-size:20px;line-height:1.3;margin:0 0 var(--pk-s4)}.pk-rate-price{align-items:center;display:flex;flex-direction:column;gap:var(--pk-s1);margin:0 0 var(--pk-s2)}.pk-rate-amount{color:var(--pk-text-dark);font-size:clamp(30px,22px + 1.4vw,38px);font-weight:800;line-height:1}.pk-rate-amount,.pk-rate-unit{font-family:var(--pk-font-head)}.pk-rate-unit{color:var(--pk-grey);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.pk-rate-single{color:var(--pk-text-light);font-size:14px;margin:0}.pk-rate-subtitle{color:var(--pk-grey);font-family:var(--pk-font-head);font-size:11px;font-weight:700;letter-spacing:.12em;margin:0 0 var(--pk-s4);text-transform:uppercase}.pk-rate-list li{color:var(--pk-text-body);font-size:15px;line-height:1.65;margin-bottom:var(--pk-s3);padding-left:18px;position:relative}.pk-rate-list li:last-child{margin-bottom:0}.pk-rate-list li:before{background:var(--pk-primary);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:10px;width:6px}.pk-extra-grid{display:grid;gap:var(--pk-s6);grid-template-columns:repeat(3,1fr);margin-top:var(--pk-s6)}.pk-extra{background:var(--pk-white);border:1px solid var(--pk-border-warm);border-radius:var(--pk-radius-lg);padding:var(--pk-s6)}.pk-extra--upgrade{background:var(--pk-primary-tint);border-color:rgba(49,143,83,.28)}.pk-extra-title{color:var(--pk-text-dark);font-family:var(--pk-font-head);font-size:16px;font-weight:700;line-height:1.35;margin:0 0 var(--pk-s3)}.pk-extra-intro{color:var(--pk-text-light);font-size:14px;line-height:1.6;margin:0 0 var(--pk-s4)}.pk-extra-list li{color:var(--pk-text-body);font-size:15px;line-height:1.65;margin-bottom:var(--pk-s2);padding-left:18px;position:relative}.pk-extra-list li:last-child{margin-bottom:0}.pk-extra-list li:before{background:var(--pk-primary);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:10px;width:6px}.red li:before{background:red;content:""}.pk-upgrade-list li:before{content:none;list-style-type:none}.pk-upgrade-list li{align-items:baseline;border-bottom:1px solid rgba(0,0,0,.08);display:flex;gap:var(--pk-s3);justify-content:space-between;padding:var(--pk-s3) 0}.pk-upgrade-list li:last-child{border-bottom:none}.pk-upgrade-label{color:var(--pk-text-body);font-size:15px}.pk-upgrade-value{color:var(--pk-text-dark);font-family:var(--pk-font-head);font-size:15px;font-weight:700;text-align:right}.pk-upgrade-single{color:var(--pk-text-light);display:block;font-size:12px;font-weight:600}.pk-extra-link{align-items:center;color:var(--pk-primary);display:inline-flex;font-family:var(--pk-font-head);font-size:14px;font-weight:600;gap:var(--pk-s2);margin-top:var(--pk-s4);text-decoration:none;transition:color var(--pk-trans-fast),gap var(--pk-trans-fast)}.pk-extra-link svg{flex-shrink:0;height:15px;width:15px}.pk-extra-link:hover{color:var(--pk-primary-hover);gap:12px}.pk-gallery-grid{display:grid;gap:var(--pk-s4);grid-template-columns:repeat(4,1fr)}.pk-shot{margin:0}.pk-shot-btn{aspect-ratio:1/1;background:var(--pk-light-gray);border:none;border-radius:var(--pk-radius-lg);cursor:zoom-in;display:block;overflow:hidden;padding:0;transition:transform var(--pk-trans-slow),box-shadow var(--pk-trans-slow);width:100%}.pk-shot-btn img{display:block;height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.pk-shot-btn:hover{box-shadow:var(--pk-shadow-hover);transform:translateY(-3px)}.pk-shot-btn:hover img{transform:scale(1.06)}.package-page.pk-js .pk-gallery:not(.is-open) .pk-shot--extra{display:none}.pk-gallery-more{display:flex;justify-content:center;margin-top:var(--pk-s7)}.pk-gallery-toggle[hidden]{display:none}.pk-gallery-toggle svg{transition:transform var(--pk-trans-fast)}.pk-gallery.is-open .pk-gallery-toggle svg{transform:rotate(180deg)}.pk-stay-grid{display:grid;gap:var(--pk-s7);grid-template-columns:repeat(2,1fr)}.pk-stay-card{background:var(--pk-white);border:1px solid var(--pk-border);border-radius:var(--pk-radius-lg);display:flex;overflow:hidden;position:relative;transition:transform var(--pk-trans-slow),box-shadow var(--pk-trans-slow)}.pk-stay-card:hover{box-shadow:var(--pk-shadow-hover);transform:translateY(-4px)}.pk-stay-link{color:inherit;display:flex;flex-direction:column;text-decoration:none;width:100%}.pk-stay-media{background:var(--pk-light-gray);display:block;flex-shrink:0;height:240px;overflow:hidden}.pk-stay-media img{display:block;height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.pk-stay-card:hover .pk-stay-media img{transform:scale(1.05)}.pk-stay-body{display:flex;flex:1;flex-direction:column;gap:var(--pk-s2);padding:var(--pk-s6)}.pk-stay-tier{color:var(--pk-accent);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.pk-stay-tier,.pk-stay-title{font-family:var(--pk-font-head);font-weight:700}.pk-stay-title{color:var(--pk-text-dark);font-size:19px;line-height:1.3;transition:color var(--pk-trans-fast)}.pk-stay-card:hover .pk-stay-title{color:var(--pk-primary)}.pk-stay-text{color:var(--pk-text-body);flex:1;font-size:15px;line-height:1.6}.pk-stay-cta{align-items:center;color:var(--pk-primary);display:inline-flex;font-family:var(--pk-font-head);font-size:14px;font-weight:600;gap:var(--pk-s2);margin-top:auto;padding-top:var(--pk-s3);transition:color var(--pk-trans-fast),gap var(--pk-trans-fast)}.pk-stay-cta svg{flex-shrink:0;height:16px;transition:transform var(--pk-trans-fast);width:16px}.pk-stay-card:hover .pk-stay-cta{color:var(--pk-primary-hover);gap:14px}.pk-stay-card:hover .pk-stay-cta svg{transform:translateX(3px)}.pk-map{background:var(--pk-light-gray);display:block;line-height:0}.pk-map iframe{border:0;display:block;height:clamp(320px,42vh,520px);width:100%}.pk-enquiry{text-align:center}.pk-enquiry .pk-section-sub{margin-bottom:var(--pk-s7)}.pk-enquiry-actions{flex-wrap:wrap;gap:var(--pk-s3)}.pk-enquiry-actions,.pk-lightbox{display:flex;justify-content:center}.pk-lightbox{align-items:center;background:rgba(16,13,11,.92);gap:var(--pk-s4);inset:0;padding:var(--pk-s7);position:fixed;z-index:9999}.pk-lightbox[hidden]{display:none}.pk-lightbox-figure{display:flex;flex-direction:column;gap:var(--pk-s3);margin:0;max-height:100%;max-width:min(1100px,100%)}.pk-lightbox-img{border-radius:var(--pk-radius-sm);display:block;margin:0 auto;max-height:calc(100vh - 160px);max-width:100%;object-fit:contain}.pk-lightbox-caption{color:hsla(0,0%,100%,.82);font-size:14px;text-align:center}.pk-lightbox-close,.pk-lightbox-nav{align-items:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.35);border-radius:50%;color:var(--pk-white);cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;padding:0;transition:background var(--pk-trans-fast),border-color var(--pk-trans-fast);width:44px}.pk-lightbox-close:hover,.pk-lightbox-nav:hover{background:hsla(0,0%,100%,.2);border-color:var(--pk-white)}.pk-lightbox-close{position:absolute;right:var(--pk-s5);top:var(--pk-s5)}.pk-lightbox-close svg,.pk-lightbox-nav svg{height:20px;width:20px}@keyframes pk-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.package-page :focus:not(:focus-visible){box-shadow:none;outline:none}.package-page a:focus-visible,.package-page button:focus-visible{border-radius:var(--pk-radius-sm);outline:3px solid var(--pk-primary);outline-offset:2px}.pk-hero a:focus-visible{outline-color:var(--pk-white)}.pk-lightbox button:focus-visible{outline-color:var(--pk-white)}@media (prefers-reduced-motion:reduce){.package-page *,.package-page :after,.package-page :before{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (max-width:1024px){.pk-booking-inner{gap:var(--pk-s6);padding:var(--pk-s6)}.pk-booking-cell+.pk-booking-cell{padding-left:var(--pk-s6)}.pk-extra-grid{grid-template-columns:repeat(2,1fr)}.pk-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:860px){.pk-booking-inner{gap:var(--pk-s5);grid-template-columns:1fr;text-align:center}.pk-booking-cell{align-items:center}.pk-booking-cell+.pk-booking-cell{border-left:none;border-top:1px solid var(--pk-border);padding-left:0;padding-top:var(--pk-s5)}.pk-booking-actions,.pk-contact{max-width:340px;width:100%}.pk-extra-grid,.pk-rate-grid,.pk-stay-grid{grid-template-columns:1fr}.pk-stay-grid{gap:var(--pk-s6)}}@media (max-width:760px){.package-page{--pk-container-px:20px;--pk-section-y:40px}.pk-hero{min-height:clamp(380px,56vh,480px)}.pk-hero-scrim{background:linear-gradient(180deg,rgba(0,0,0,.45) 0,rgba(0,0,0,.62) 55%,rgba(0,0,0,.72))}.pk-hero-sub{font-size:15px}.pk-enquiry-actions,.pk-hero-actions{align-items:stretch;flex-direction:column}.pk-enquiry-actions .pk-btn,.pk-hero-actions .pk-btn{width:100%}.pk-rate-card{padding:var(--pk-s6)}.pk-gallery-grid{gap:var(--pk-s3);grid-template-columns:repeat(2,1fr)}.pk-stay-media{height:200px}.pk-lightbox{gap:var(--pk-s2);padding:var(--pk-s4)}.pk-lightbox-nav{height:38px;width:38px}.pk-shot-btn:hover,.pk-stay-card:hover{box-shadow:var(--pk-shadow-card);transform:none}}@media (max-width:420px){.pk-upgrade-list li{align-items:flex-start;flex-direction:column;gap:2px}.pk-upgrade-value{text-align:left}.pk-contact-row{align-items:flex-start;flex-direction:column;gap:2px}}