
/* Long Weekends NZ — visual system v2. Complements existing calendar and planner styles. */
:root{--ocean:#102f39;--ink:#173842;--teal:#216b72;--red:#bc5b38;--sand:#f8f4eb;--line:#dbe4e2;--muted:#506772;--gold:#eebd72}
html{scroll-behavior:smooth}
body{font-family:"Segoe UI",Arial,sans-serif;background:#fcfcf8;color:var(--ink);letter-spacing:-.12px}
h1,h2,h3{font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif}
h2{font-weight:800;letter-spacing:-1.1px}
a{text-underline-offset:4px}
a:hover{color:#9e4c32}
.wrap{max-width:1260px}
.topbar{background:#0a2932;color:#d5ebe6;font-weight:700;letter-spacing:1.3px}
.topbar .wrap{max-width:1260px}
header{background:#fffefa;box-shadow:0 5px 24px #092e3610}
.header{min-height:88px;gap:24px}
.brand{color:#103c42;font-size:23px;letter-spacing:-1.25px}
.brand small{color:#647974;font-weight:750}
.nav{gap:15px}
.nav a{font-size:13px;font-weight:750;color:#173842;transition:color .18s ease}
.nav a:hover{color:#ae5236}
.nav a[aria-current]{border-bottom-color:#e4a063}
.nav .button{background:#bb5839;padding:11px 16px;border-radius:100px;color:#fff}
.nav .button:hover{background:#963b27}
.button{background:#ba5b37;border-radius:10px}
.button:hover,button:hover{background:#9d482d}
.page-head{background:linear-gradient(130deg,#eff5ed,#fcf7ec 75%);padding:52px 0 54px;border-bottom:1px solid #e5e7df}
.page-head h1{font-size:clamp(34px,4.6vw,64px);letter-spacing:-2.4px;max-width:920px;margin:17px 0}
.page-head p{font-size:18px;max-width:720px}
.crumb a{text-decoration:none;font-weight:700}
.meta{font-size:12px;letter-spacing:.4px}
.content{padding-top:44px}
.footer{background:#0c2932}
.footer-grid{gap:45px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d26d45;outline-offset:3px}
button,.button{transition:background-color .18s ease,transform .18s ease}
@media(hover:hover){.button:hover{transform:translateY(-2px)}}
.experience-kicker{font-size:11px;font-weight:850;letter-spacing:2.3px;color:#b9603c}
.experience-hero{background:#0d3039;color:#f9fbf4;padding:54px 0 0;overflow:hidden}
.experience-hero-inner{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(28px,4vw,68px);align-items:center}
.experience-hero-copy{padding-bottom:50px}
.hero-overline{display:flex;align-items:center;gap:12px;letter-spacing:2.5px;font-weight:800;font-size:11px;color:#c8e2d9}
.hero-overline-mark{width:30px;height:2px;background:#e7ae69;display:inline-block}
.experience-hero h1{font-size:clamp(47px,5.4vw,82px);line-height:1.065;letter-spacing:-3.6px;color:#fff9eb;font-weight:900;max-width:680px;margin:26px 0}
.experience-hero h1 em{font-style:normal;color:#f2bb7b}
.experience-hero-copy>p{color:#d8e9e6;font-size:18px;line-height:1.7;max-width:510px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:32px 0 35px}
.hero-cta a{font-weight:800;text-decoration:none;border-radius:100px;padding:15px 22px;display:inline-flex;gap:20px;justify-content:space-between;align-items:center}
.hero-primary{background:#f2bb7b;color:#12323a}
.hero-primary:hover{background:#ffd29b;color:#12323a}
.hero-secondary{border:1px solid #8eb5b5;color:#f4fbf7}
.hero-secondary:hover{background:#22535a;color:#fff}
.hero-proof{border-top:1px solid #ffffff33;padding-top:19px;display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#c5ddd9;font-weight:650}
.hero-proof span:before{content:"✳";color:#eebd72;margin-right:7px}
.experience-hero-scene{position:relative;align-self:stretch;min-height:490px;display:flex;align-items:stretch}
.experience-hero-scene>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:140px 16px 0 0}
.hero-scene-sticker{position:absolute;right:25px;top:24px;background:#f5e8c9;color:#193944;width:153px;height:153px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(10deg);box-shadow:0 14px 24px #08252e35}
.hero-scene-sticker>span{font-size:9px;font-weight:900;letter-spacing:1px;max-width:95px}
.hero-scene-sticker strong{font-family:Georgia,serif;font-size:43px;line-height:1.2}
.hero-scene-sticker strong span{font-size:21px}
.hero-scene-caption{position:absolute;left:22px;bottom:20px;font-size:10px;font-weight:850;letter-spacing:2px;color:#f6f3df;text-shadow:0 2px 7px #000a}
.hero-bottom{border-top:1px solid #ffffff34;display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:24px;padding-bottom:25px}
.hero-bottom a{color:#ecf7f1;text-decoration:none;font-size:13px;font-weight:750}
.hero-bottom a:hover{color:#ffd29b}
.hero-next{display:flex;align-items:center;gap:15px}
.hero-next-icon{font-size:38px;color:#f2bb7b}
.hero-next small{display:block;letter-spacing:1.4px;font-size:10px;color:#b4d6d2;font-weight:850}
.hero-next strong{font-size:17px;display:block;line-height:1.4}
.experience-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;padding-top:28px;padding-bottom:50px}
.tool-tile{display:flex;flex-direction:column;min-height:258px;position:relative;border-radius:18px;padding:28px 28px 25px;text-decoration:none;overflow:hidden;box-shadow:0 7px 30px #0e383916}
.tool-tile:hover{color:inherit;transform:translateY(-3px)}
.tool-tile-green{background:#cfe2d4;color:#143c36}
.tool-tile-cream{background:#f0ddb9;color:#563a20}
.tool-tile-sky{background:#c8dfe7;color:#20465a}
.tool-tile .tile-number{font-weight:850;letter-spacing:1.8px;font-size:10px}
.tool-tile .tool-tile-icon{position:absolute;right:20px;top:13px;font-size:35px;font-weight:400}
.tool-tile h2{font-size:clamp(21px,2.2vw,30px);line-height:1.18;max-width:260px;margin:21px 0 8px}
.tool-tile p{font-size:14px;line-height:1.55;margin:0 0 18px;max-width:290px}
.tile-cta{margin-top:auto;font-size:13px;font-weight:850;text-decoration:underline;text-underline-offset:4px}
.school-home-link{background:#f7f5ee;border-block:1px solid #eae8df;margin-bottom:20px}
.school-home-link .button{border-radius:100px}
.strip{background:#153e47}
.home-calendars{padding-top:30px}
.home-calendar .section-title h2{font-size:clamp(25px,2.8vw,39px)}
.home-calendar .table-wrap{border-radius:15px;box-shadow:0 12px 30px #0e38390b;overflow:auto}
.home-calendar caption{font-size:18px;background:#e6efeb}
.home-calendar th:not([style]){background:#153d47;color:#f7faf5}
.home-calendar tbody tr:nth-child(even){background:#f6faf7}
.home-calendar tbody tr:hover{background:#fff8e9}
.home-calendar .table-note{font-size:13px}
.getaway-intro{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:35px;align-items:center;border-radius:24px;background:#123c46;color:#f8f7ec;padding:42px 48px;margin-bottom:65px}
.getaway-intro h2{font-size:clamp(32px,4vw,51px);line-height:1.12;letter-spacing:-2px;color:#fff6e7;max-width:720px;margin:14px 0 18px}
.getaway-intro p{max-width:700px;color:#deece5}
.getaway-intro .experience-kicker{color:#f3c78b}
.getaway-intro-aside{border-left:1px solid #ffffff35;padding-left:30px;display:flex;flex-direction:column;gap:0;line-height:1.25;color:#e4f3ec;font-size:11px;font-weight:800;letter-spacing:1.7px}
.big-type{font-size:clamp(80px,9vw,140px);font-family:Georgia,serif;line-height:1;color:#f2bc7b;letter-spacing:-9px}
.section-copy{max-width:760px;margin-bottom:30px}
.section-copy h2{font-size:clamp(30px,3.5vw,44px);line-height:1.16;margin:12px 0 14px}
.section-copy p{color:var(--muted);font-size:16px}
.getaway-finder-section{scroll-margin-top:30px}
.finder-panel{background:#e9f1ef;border:1px solid #cde0db;padding:25px;border-radius:22px;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:15px}
.finder-panel label,.budget-form label{font-size:12px;font-weight:850;letter-spacing:.35px}
.finder-panel select,.finder-panel input{background:#fff;border-radius:10px;padding:13px 12px;border:1px solid #a9c0bc;margin:7px 0 0;height:49px;font-size:14px}
.finder-clear{background:#19454d;height:49px;font-size:12px;padding:8px 16px;border-radius:10px;white-space:nowrap}
.finder-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 17px}
.finder-head p{font-size:17px;font-weight:850;color:#1d4950;margin:0}
.finder-head span{font-size:10px;font-weight:850;letter-spacing:1.6px;color:#6c837f}
.getaway-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.getaway-card{border:1px solid #e0e4dc;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 10px 32px #0c303911;transition:transform .2s ease,box-shadow .2s ease}
.getaway-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px #0c303924}
.getaway-card-link{text-decoration:none;color:inherit;display:block;height:100%}
.getaway-card-link:hover{color:inherit}
.getaway-card-art{position:relative;aspect-ratio:1.5;overflow:hidden;background:#265365}
.getaway-card-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.getaway-card:hover img{transform:scale(1.065)}
.card-art-label{position:absolute;left:16px;top:15px;padding:7px 10px;font-size:10px;letter-spacing:1.4px;font-weight:850;border-radius:100px;background:#fff9ee;color:#153b45}
.getaway-card-body{padding:22px 23px 25px}
.card-index{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#9d5b3d}
.getaway-card h3{font-size:29px;letter-spacing:-1.2px;margin:8px 0 10px;display:flex;justify-content:space-between;align-items:center}
.getaway-card h3 span{font-size:22px;color:#b15b3d}
.getaway-card p{font-size:14px;color:#526973;min-height:66px;line-height:1.55}
.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.tag-row span{font-weight:750;font-size:11px;text-transform:capitalize;padding:6px 12px;border-radius:100px;background:#e5efea;color:#26574f}
.finder-empty{padding:20px;background:#fff5e6;border:1px solid #ebcea6;border-radius:12px;font-weight:700}
.budget-lab{background:#123b45;color:#f7f6eb;border-radius:26px;margin:76px 0;padding:45px;scroll-margin-top:30px}
.budget-lab-heading{display:flex;justify-content:space-between;gap:40px;margin-bottom:28px}
.budget-lab h2{font-size:clamp(31px,3.6vw,48px);max-width:670px;line-height:1.14;letter-spacing:-1.8px;margin:10px 0 13px}
.budget-lab-heading p{max-width:750px;color:#d2e7e3}
.budget-lab .experience-kicker{color:#f4c88c}
.budget-stamp{font-size:10px;font-weight:900;letter-spacing:2px;color:#c3e0db;align-self:center;transform:rotate(7deg);white-space:nowrap;border:2px dashed #f3be79;border-radius:50%;width:135px;height:135px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.budget-stamp strong{font-size:17px;letter-spacing:0;color:#ffc787}
.budget-lab-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.85fr);gap:20px;align-items:stretch}
.budget-form{background:#fffdf6;border-radius:18px;padding:28px;color:#193b43;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.budget-form input{background:#fff;border:1px solid #aebfba;border-radius:10px;margin:7px 0 0;padding:12px;font-size:15px}
.budget-result{border:1px solid #67888a;background:#1b4d56;border-radius:18px;padding:31px;display:flex;flex-direction:column;justify-content:center}
.budget-result>span{font-size:11px;letter-spacing:2px;font-weight:850;color:#cce7df}
.budget-result>strong{font-size:clamp(34px,4vw,54px);font-weight:850;line-height:1.2;color:#ffd193;margin:17px 0 12px;overflow-wrap:anywhere}
.budget-result p{font-size:14px;color:#e6f2ec}
.budget-breakdown{padding-top:16px;margin:14px 0;border-top:1px solid #ffffff35;font-size:13px;line-height:1.9}
.budget-result small{font-size:11px;color:#cde0de;line-height:1.55}
.budget-result a{color:#ffcf92;font-weight:850;margin-top:24px;font-size:14px}
.experience-next{display:grid;grid-template-columns:1fr 280px;gap:40px;border-top:1px solid #d3ded7;padding-top:46px;margin:0 0 20px}
.experience-next h2{font-size:clamp(28px,3.4vw,43px);margin:10px 0}
.experience-next p{max-width:650px;color:var(--muted)}
.experience-next-actions{display:flex;flex-direction:column;gap:12px;justify-content:center}
.experience-next-actions a{padding:15px;border-radius:12px;border:1px solid #d9e5dc;background:#f4f8f2;font-weight:850;text-decoration:none}
.experience-next-actions a:hover{background:#e9f1e6}
.destination-hero{display:grid;grid-template-columns:1fr .95fr;gap:30px;align-items:center;margin-bottom:65px}
.destination-hero-art{border-radius:22px;overflow:hidden;background:#1f5362;box-shadow:0 20px 45px #10363b18}
.destination-hero-art img{width:100%;height:100%;display:block;aspect-ratio:1.33;object-fit:cover}
.destination-overview{padding:15px 10px}
.destination-overview h2{font-size:clamp(31px,3.9vw,50px);line-height:1.15;letter-spacing:-1.9px;margin:16px 0}
.destination-lead{font-size:22px;font-weight:800;line-height:1.4;color:#1b5156}
.destination-overview>p:not(.destination-lead){color:#536d72}
.destination-actions{display:flex;gap:11px;flex-wrap:wrap;margin:25px 0}
.destination-actions a{font-size:12px;padding:12px 16px;border-radius:100px;border:1px solid #adc9be;background:#ebf3ed;text-decoration:none;font-weight:800}
.destination-actions a:hover{background:#d3e4d8}
.itinerary{margin-bottom:50px}
.day-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.day-grid article{border:1px solid #dce4db;background:#f5f7f0;border-radius:18px;padding:28px}
.day-grid article:nth-child(2){background:#e4f0ec}
.day-grid article>span{font-weight:850;font-size:11px;letter-spacing:1.9px;color:#a45b38}
.day-grid h3{font-size:23px;margin:17px 0 11px}
.day-grid p{font-size:14px;line-height:1.72;color:#50666d}
.destination-advice{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:45px 0}
.destination-advice article{padding:34px;border-radius:20px;background:#f8e8d1}
.destination-advice article+article{background:#d8e8e9}
.destination-advice h2{font-size:27px;margin:16px 0}
.destination-advice p{font-size:15px}
.destination-essentials{max-width:850px;border-top:1px solid #dce5dd;padding-top:26px;margin-bottom:30px}
.destination-essentials h2{font-size:35px}
.destination-essentials h3{margin-top:30px}
.destination-disclaimer{font-size:13px;color:#587078;background:#f3f4ec;border-left:4px solid #cb9063;padding:13px 16px}
@media(max-width:1120px){
  .header{flex-wrap:wrap;padding-top:15px;padding-bottom:13px;gap:11px}
  .nav{width:100%;justify-content:space-between;gap:12px}
  .experience-hero h1{font-size:clamp(45px,5.7vw,70px)}
  .experience-hero-scene{min-height:400px}
  .finder-panel{grid-template-columns:repeat(3,1fr)}
  .finder-clear{grid-column:1/-1;justify-self:end}
}
@media(max-width:780px){
  .experience-hero-inner{grid-template-columns:1fr}
  .experience-hero-copy{padding-bottom:0}
  .experience-hero-scene{min-height:0;height:370px}
  .experience-hero-scene>img{border-radius:95px 12px 0 0}
  .experience-tools{grid-template-columns:1fr 1fr}
  .experience-tools .tool-tile:last-child{grid-column:1/-1;min-height:0}
  .getaway-intro{grid-template-columns:1fr;gap:8px;padding:32px}
  .getaway-intro-aside{border-left:none;border-top:1px solid #ffffff36;flex-direction:row;align-items:center;padding:15px 0 0;gap:20px}
  .getaway-intro-aside .big-type{font-size:70px;letter-spacing:-4px}
  .getaway-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .budget-lab-inner{grid-template-columns:1fr}
  .destination-hero{grid-template-columns:1fr}
  .destination-hero-art img{aspect-ratio:1.7}
  .experience-next{grid-template-columns:1fr}
}
@media(max-width:640px){
  html{scroll-behavior:auto}
  .wrap{padding-left:18px;padding-right:18px}
  .topbar{font-size:9px}
  .header{flex-wrap:wrap;min-height:0;padding-top:13px;padding-bottom:11px}
  .brand{font-size:20px}
  .header .nav{width:100%;display:flex;gap:16px;overflow-x:auto;white-space:nowrap;flex-wrap:nowrap;padding-bottom:7px;scrollbar-width:thin}
  .header .nav a{flex-shrink:0;font-size:12px}
  .header .nav .button{padding:8px 11px}
  .experience-hero{padding-top:39px}
  .experience-hero h1{font-size:clamp(43px,10.4vw,61px);letter-spacing:-2.4px;margin:20px 0}
  .experience-hero-copy>p{font-size:16px}
  .hero-overline{font-size:9px;letter-spacing:1.4px}
  .hero-cta{gap:10px}
  .hero-cta a{width:100%;padding:14px 20px}
  .hero-proof{gap:9px;font-size:10px}
  .experience-hero-scene{height:300px}
  .hero-scene-sticker{width:102px;height:102px;right:14px;top:15px}
  .hero-scene-sticker>span{font-size:7px}
  .hero-scene-sticker strong{font-size:31px}
  .hero-scene-caption{font-size:8px;letter-spacing:1px}
  .hero-bottom{align-items:stretch;flex-wrap:wrap;padding-top:17px;padding-bottom:20px;gap:14px}
  .hero-next{width:100%}
  .hero-next-icon{font-size:30px}
  .hero-next strong{font-size:15px}
  .hero-bottom a{font-size:11px}
  .experience-tools{grid-template-columns:1fr;padding-top:20px;padding-bottom:28px}
  .experience-tools .tool-tile:last-child{grid-column:auto}
  .tool-tile{min-height:205px;padding:23px}
  .tool-tile h2{font-size:24px;margin:15px 0 8px;max-width:310px}
  .page-head{padding:25px 0 29px}
  .page-head h1{font-size:clamp(30px,9vw,43px);letter-spacing:-1.7px}
  .page-head p{font-size:15px}
  .content{padding-top:28px}
  .getaway-intro{padding:24px;margin-bottom:43px}
  .getaway-intro h2{font-size:32px;letter-spacing:-1.2px}
  .getaway-intro p{font-size:14px}
  .section-copy h2{font-size:30px}
  .finder-panel{grid-template-columns:1fr;padding:20px;gap:12px}
  .finder-clear{grid-column:auto;width:100%}
  .finder-head{flex-direction:column;align-items:flex-start;gap:6px}
  .getaway-card-grid{grid-template-columns:1fr}
  .getaway-card-art{aspect-ratio:1.6}
  .getaway-card p{min-height:0}
  .budget-lab{margin:50px -6px;padding:23px 17px;border-radius:18px}
  .budget-lab-heading{margin-bottom:15px}
  .budget-lab h2{font-size:34px}
  .budget-stamp{display:none}
  .budget-form{grid-template-columns:1fr;padding:20px;gap:10px}
  .budget-result{padding:23px}
  .budget-result>strong{font-size:42px}
  .experience-next{gap:15px;padding-top:30px}
  .day-grid,.destination-advice{grid-template-columns:1fr}
  .destination-hero{gap:13px;margin-bottom:40px}
  .destination-hero-art img{aspect-ratio:1.4}
  .destination-overview{padding:10px 0}
  .destination-overview h2{font-size:32px}
  .destination-lead{font-size:19px}
  .day-grid article{padding:23px}
  .destination-advice article{padding:23px}
}
@media(prefers-reduced-motion:reduce){.getaway-card,.getaway-card-art img,.tool-tile,.button{transition:none!important}}
@media print{.experience-hero,.experience-tools,.getaway-intro-aside,.getaway-finder-section .finder-panel,.budget-lab,.hero-bottom{display:none!important}.getaway-card-grid,.day-grid{grid-template-columns:repeat(2,1fr)}.getaway-card,.day-grid article{box-shadow:none;break-inside:avoid}.destination-hero-art{display:none}}

/* A balanced six-field finder: two rows of three choices plus a clear action. */
@media(min-width:781px){.finder-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.finder-clear{grid-column:1/-1;justify-self:end}}
@media(max-width:780px) and (min-width:641px){.finder-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-clear{grid-column:1/-1;justify-self:end}}

.calendar-section-lead{padding-top:46px;padding-bottom:2px;border-top:1px solid #dbe5df}
.calendar-section-lead h2{font-size:clamp(29px,3.4vw,43px);margin:11px 0 12px;line-height:1.16}
.calendar-section-lead p{max-width:760px;color:var(--muted);font-size:15px}
@media(max-width:640px){.calendar-section-lead{padding-top:29px}}

/* Photo-first editorial system: locally hosted licensed NZ photography. */
.experience-hero-scene>img{object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.04)}
.experience-hero-scene{background:#153d4f}
.hero-scene-sticker{background:#fbecce}
.tool-tile{isolation:isolate;color:#fff!important;background:#244c53!important;min-height:290px;box-shadow:0 10px 28px #132c3450}
.tool-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#10242d52 0%,#10242d9c 65%,#09202aef 100%);z-index:-1}
.tool-tile .tool-tile-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;transition:transform .45s ease}
.tool-tile:hover .tool-tile-photo{transform:scale(1.055)}
.tool-tile .tile-number,.tool-tile h2,.tool-tile p,.tool-tile .tile-cta,.tool-tile .tool-tile-icon{color:#fff;position:relative;z-index:1;text-shadow:0 1px 5px #001b2569}
.tool-tile h2{font-size:clamp(23px,2.4vw,32px);max-width:295px}
.tool-tile .tile-cta{color:#ffe5af}
.getaway-intro-photographic{position:relative;isolation:isolate;overflow:hidden;background:#0e3443}
.getaway-intro-photographic:before{content:"";position:absolute;inset:0;background:linear-gradient(92deg,#112b38f5 1%,#112b38b9 62%,#112b3870);z-index:-1}
.getaway-intro-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.getaway-card-art{background:#dbe9e3}
.getaway-card-art img{filter:saturate(1.04);object-position:center}
.destination-hero-art{background:#e8ebe5}
.destination-hero-art img{object-position:center;filter:saturate(1.04)}
.destination-photo-journal{margin:52px 0;padding-top:40px;border-top:1px solid var(--line)}
.destination-photo-heading{max-width:750px}
.destination-photo-heading h2{margin:12px 0 10px;font-size:clamp(28px,3vw,42px)}
.destination-photo-heading p{color:var(--muted);margin-bottom:26px}
.destination-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.destination-photo-grid figure{margin:0;background:#f4f7f2;border:1px solid #dce5db;border-radius:18px;overflow:hidden}
.destination-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:920/640;object-fit:cover;background:#dce6df}
.destination-photo-grid figcaption{padding:13px 18px 18px;color:#536e70;font-size:12px;line-height:1.5}
.page-head.has-photo{padding:29px 0 35px}
.page-head-photo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:35px;align-items:center}
.page-head-copy{min-width:0}
.page-head.has-photo .page-head-copy h1{font-size:clamp(33px,4.1vw,57px);max-width:690px}
.page-head-photo{position:relative;margin:0;min-height:250px;border-radius:22px;overflow:hidden;background:#cfe1de;box-shadow:0 12px 36px #0a324522}
.page-head-photo img{display:block;width:100%;aspect-ratio:1.75;object-fit:cover;object-position:center;max-height:350px}
.page-head-photo figcaption{position:absolute;right:10px;bottom:8px;padding:4px 11px;border-radius:30px;background:#082d35bb;backdrop-filter:blur(4px);color:white;font-size:10px}
.page-head-photo figcaption a{color:white}
.photo-credits{max-width:1050px}
.photo-credit-list{padding-left:24px;columns:2;column-gap:40px}
.photo-credit-list li{break-inside:avoid;font-size:14px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #e1eae5}
.photo-credits a{font-weight:700}
@media(max-width:780px){
 .page-head-photo-layout{grid-template-columns:1fr;gap:20px}
 .page-head.has-photo{padding:23px 0 29px}
 .page-head-photo{min-height:0;max-width:740px}
 .page-head-photo img{aspect-ratio:1.85;max-height:310px}
 .tool-tile{min-height:260px}
 .photo-credit-list{columns:1}
}
@media(max-width:640px){
 .experience-hero-scene{height:300px}
 .tool-tile{min-height:230px}
 .tool-tile h2{font-size:25px}
 .destination-photo-grid{grid-template-columns:1fr}
 .destination-photo-grid figcaption{font-size:11px}
 .page-head.has-photo .page-head-copy h1{font-size:clamp(30px,8.3vw,42px)}
 .page-head-photo img{aspect-ratio:1.62}
 .getaway-intro-photographic:before{background:linear-gradient(90deg,#112b38f0,#112b38ad)}
}
@media(prefers-reduced-motion:reduce){.tool-tile .tool-tile-photo{transition:none}}
@media print{.tool-tile .tool-tile-photo,.getaway-intro-photo,.page-head-photo{display:none}.tool-tile{color:#111!important;background:white!important}.tool-tile:before{display:none}.destination-photo-grid{grid-template-columns:repeat(2,1fr)}}
