.hv2{--orange: #e68438;
 --terracotta: #d25030;
 --green: #436650;
 --green-dark: #436650;
 --ink: #333136;
 --cream: #f5e8d5;
 --paper: #ffffff;
 --white: #fff;
 --line: rgba(51, 49, 54, .18);
 --serif: 'Sofia Sans', Georgia, serif;
 --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;}
.hv2, .hv2 *{box-sizing: border-box;}
.hv2{scroll-behavior: auto;}
.hv2{margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); line-height: 1.55;}
.hv2 img{display: block; width: 100%;}
.hv2 a{color: inherit; text-decoration: none;}
.hv2 button{font: inherit;}
.hv2 [id]{scroll-margin-top: 1.5rem;}
.hv2 a:focus-visible,.hv2 button:focus-visible,.hv2 input:focus-visible,.hv2 textarea:focus-visible{outline: 3px solid var(--orange); outline-offset: 3px;}
.hv2 .sr-only{position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap;}
.hv2 .skip-link{position: fixed; z-index: 100; top: -5rem; left: 1rem; padding: .75rem 1rem; background: var(--white); color: var(--ink);}
.hv2 .skip-link:focus{top: 1rem;}
.hv2 .site-header{position: absolute; z-index: 20; inset: 0 0 auto; color: var(--ink);}
.hv2 .header-topbar{min-height: 34px; background: var(--green); color: rgba(255,255,255,.86);}
.hv2 .header-topbar-inner{width: min(100% - 2.5rem, 1500px); min-height: 34px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 2rem; font-size: .64rem; letter-spacing: .035em;}
.hv2 .header-topbar-inner p{margin: 0;}
.hv2 .header-contact{display: flex; align-items: center; gap: 1.25rem;}
.hv2 .header-contact a{transition: color .2s ease;}
.hv2 .header-contact a:hover{color: var(--white);}
.hv2 .header-main{width: 100%; min-height: 86px; padding: .65rem clamp(1.25rem, 3vw, 3.5rem); display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; border-bottom: 1px solid rgba(51,49,54,.1); background: rgba(245,232,213,.96); backdrop-filter: blur(18px);}
.hv2 .brand{display: inline-flex; flex: 0 0 auto; align-items: center;}
.hv2 .brand-logo{width: clamp(120px, 10vw, 154px); height: auto; max-height: 68px; object-fit: contain;}
.hv2 .site-nav{display: flex; flex: 1; align-items: center; justify-content: flex-end; gap: clamp(.9rem, 1.7vw, 1.8rem); font-size: .72rem; letter-spacing: .025em;}
.hv2 .nav-core,.hv2 .nav-actions{display: flex; align-items: center;}
.hv2 .nav-core{gap: clamp(.65rem, 1.25vw, 1.25rem);}
.hv2 .nav-actions{gap: .75rem; margin-left: clamp(.2rem, 1.3vw, 1.25rem);}
.hv2 .nav-link,.hv2 .nav-trigger,.hv2 .nav-guide{position: relative; padding: .65rem 0; border: 0; border-bottom: 1px solid transparent; background: transparent; color: inherit; font: inherit; cursor: pointer;}
.hv2 .nav-link:hover,.hv2 .nav-link:focus-visible,.hv2 .nav-trigger:hover,.hv2 .nav-trigger:focus-visible,.hv2 .nav-guide:hover,.hv2 .nav-guide:focus-visible{border-bottom-color: var(--terracotta);}
.hv2 .nav-trigger{display: inline-flex; align-items: center; gap: .3rem;}
.hv2 .nav-trigger span{color: var(--hv2-ember); font-size: .76rem; transition: transform .2s ease;}
.hv2 .nav-group{position: relative;}
.hv2 .nav-group.open .nav-trigger span{transform: rotate(180deg);}
.hv2 .mega-menu{position: absolute; z-index: 30; top: calc(100% + 1rem); left: 50%; width: min(850px, 84vw); padding: 1.7rem; display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; background: var(--white); border: 1px solid rgba(51,49,54,.1); box-shadow: 0 22px 60px rgba(32,31,34,.16); transform: translateX(-24%);}
.hv2 .nav-group.open .mega-menu{display: grid;}
.hv2 .mega-menu::before{content: ""; position: absolute; top: -1rem; left: 0; right: 0; height: 1rem;}
.hv2 .mega-menu-tours{transform: translateX(-40%);}
.hv2 .mega-menu-compact{width: 520px; grid-template-columns: repeat(2, minmax(0, 1fr)); transform: translateX(-30%);}
.hv2 .mega-menu-single{width: 310px; grid-template-columns: 1fr; transform: translateX(-30%);}
.hv2 .mega-menu-right{right: 0; left: auto; transform: none;}
.hv2 .mega-column{display: flex; flex-direction: column; align-items: stretch;}
.hv2 .mega-column + .mega-column{padding-left: 1.5rem; border-left: 1px solid var(--line);}
.hv2 .mega-column > p{margin: 0 0 .75rem; color: var(--hv2-ember); font-size: .58rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.hv2 .mega-column a{padding: .47rem 0; color: rgba(51,49,54,.76); line-height: 1.35; transition: color .2s ease, transform .2s ease;}
.hv2 .mega-column a:hover,.hv2 .mega-column a:focus-visible{color: var(--ink); transform: translateX(3px);}
.hv2 .mega-column a strong{display: block; color: var(--green); font-size: .58rem; letter-spacing: .08em; text-transform: uppercase;}
.hv2 .mega-featured{margin: -1.7rem; margin-left: 0; padding: 1.7rem !important; border-left: 0 !important; background: var(--cream);}
.hv2 .mega-featured a{padding: .68rem 0; border-bottom: 1px solid rgba(51,49,54,.12);}
.hv2 .mega-featured a:last-child{border-bottom: 0;}
.hv2 .mega-featured a span{display: block; margin-bottom: .2rem; color: var(--hv2-ember); font-size: .56rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;}
.hv2 .mega-column .mega-all-link{margin-top: .65rem; padding-top: .8rem; border-top: 1px solid var(--line); color: var(--green); font-weight: 800;}
.hv2 .nav-guide{color: var(--hv2-ember); font-weight: 800;}
.hv2 .site-nav .nav-cta{min-width: 112px; padding: .78rem 1.05rem; background: var(--green); color: var(--white); font-weight: 800; text-align: center; transition: background .2s ease, transform .2s ease;}
.hv2 .site-nav .nav-cta:hover,.hv2 .site-nav .nav-cta:focus-visible{background: var(--terracotta); transform: translateY(-1px);}
.hv2 .menu-button{display: none; border: 0; background: transparent; color: inherit; padding: .5rem;}
.hv2 .menu-button > span:not(.sr-only){display: block; width: 24px; height: 1px; background: currentColor; margin: 5px 0; transition: transform .2s ease, opacity .2s ease;}
.hv2 .menu-button[aria-expanded="true"] > span:nth-child(1){transform: translateY(6px) rotate(45deg);}
.hv2 .menu-button[aria-expanded="true"] > span:nth-child(2){opacity: 0;}
.hv2 .menu-button[aria-expanded="true"] > span:nth-child(3){transform: translateY(-6px) rotate(-45deg);}
.hv2 .hero{min-height: 800px; height: min(940px, 100svh); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: var(--cream); color: var(--ink); overflow: hidden;}
.hv2 .hero-copy{align-self: stretch; padding: 7.5rem clamp(2rem, 4vw, 5rem) 2.25rem clamp(1.5rem, 6vw, 7rem); position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center;}
.hv2 .eyebrow{margin: 0 0 1.15rem; color: var(--hv2-ember); font-size: .72rem; letter-spacing: .19em; text-transform: uppercase; font-weight: 800;}
.hv2 .eyebrow.light{color: var(--cream);}
.hv2 .hero h1,.hv2 h2{font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; line-height: .99;}
.hv2 .hero h1{max-width: 690px; margin: 0 0 1.55rem; font-size: clamp(4.5rem, 6.6vw, 8.25rem); line-height: .92;}
.hv2 .hero h1 > span,.hv2 .hero h1 > em{display: block;}
.hv2 .hero h1 > span{white-space: nowrap;}
.hv2 .hero h1 em{color: var(--hv2-ember); font-weight: 400;}
.hv2 .hero-intro{max-width: 530px; color: rgba(51,49,54,.72); font-size: clamp(1rem, 1.1vw, 1.16rem);}
.hv2 .button-row{display: flex; align-items: center; gap: 1.8rem; margin: 1.9rem 0 2.25rem;}
.hv2 .button{display: inline-flex; align-items: center; justify-content: space-between; gap: 2.2rem; padding: 1rem 1.2rem; min-width: 230px; font-size: .82rem; font-weight: 800; letter-spacing: .03em; transition: transform .25s ease, background .25s ease;}
.hv2 .button:hover{transform: translateY(-2px);}
.hv2 .button-primary{color: var(--ink); background: var(--orange);}
.hv2 .button-light{color: var(--ink); background: var(--cream);}
.hv2 .text-link{display: inline-flex; gap: .75rem; align-items: center; font-size: .8rem; font-weight: 750; border-bottom: 1px solid rgba(51,49,54,.35); padding-bottom: .35rem;}
.hv2 .text-link.dark{border-color: var(--line);}
.hv2 .hero-credentials{display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 0; color: rgba(51,49,54,.82); font-size: .68rem; font-weight: 700;}
.hv2 .hero-credentials span{display: inline-flex; align-items: center; gap: .55rem;}
.hv2 .hero-credentials span::before{content: "✦"; color: var(--hv2-ember);}
.hv2 .hero-proof{display: grid; grid-template-columns: .65fr 1.35fr 1.4fr; max-width: 620px; margin: 0; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.22);}
.hv2 .hero-proof div{padding-right: 1rem;}
.hv2 .hero-proof dt{opacity: .55; text-transform: uppercase; letter-spacing: .13em; font-size: .57rem;}
.hv2 .hero-proof dd{margin: .3rem 0 0; font-size: .73rem; font-weight: 700;}
.hv2 .hero-visual{position: relative; min-width: 0; min-height: 0; overflow: hidden;}
.hv2 .hero-frame{position: absolute; inset: 7.5rem 0 0; width: auto; height: auto; min-height: 0; overflow: hidden; border-radius: 0;}
.hv2 .hero-frame img{height: 100%; object-fit: cover; object-position: center 60%;}
.hv2 .vertical-caption{position: absolute; z-index: 2; right: 1.2rem; bottom: 8%; color: rgba(51,49,54,.82); font-size: .61rem; letter-spacing: .16em; text-transform: uppercase; writing-mode: vertical-rl;}
@media (min-width: 1181px) and (max-height: 820px){.hv2 .hero{min-height: 720px; height: 100svh;}
.hv2 .hero-copy{padding-top: 7.5rem; padding-bottom: 1.5rem;}
.hv2 .hero h1{margin-bottom: 1rem; font-size: clamp(3.8rem, 5.3vw, 6.2rem);}
.hv2 .hero-intro{font-size: .94rem;}
.hv2 .button-row{margin: 1.3rem 0 1.5rem;}
.hv2 .hero-visual{padding: 0;}
.hv2 .hero-frame{min-height: 0;}}
.hv2 .trust-band{display: grid; grid-template-columns: repeat(5, 1fr); padding: 0 clamp(1.5rem, 6vw, 7.5rem); background: var(--white); color: var(--ink); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.hv2 .trust-band > div{min-height: 116px; padding: 1.4rem clamp(.8rem, 2vw, 2rem); display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--line);}
.hv2 .trust-band > div:first-child{border-left: 1px solid var(--line);}
.hv2 .trust-band strong{font-family: var(--serif); font-size: clamp(1.2rem, 2vw, 2rem); font-weight: 400;}
.hv2 .trust-band span{margin-top: .2rem; color: rgba(51,49,54,.82); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase;}
.hv2 .section-pad{padding: clamp(5rem, 9vw, 9rem) clamp(1.5rem, 6vw, 7.5rem);}
.hv2 .intro-section{max-width: none; margin: 0; display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(3rem, 9vw, 11rem); align-items: center; background: var(--terracotta); color: var(--white);}
.hv2 .section-number{color: var(--hv2-ember); font-family: var(--serif); font-size: 1rem; padding-top: .5rem;}
.hv2 .intro-title h2,.hv2 .section-heading h2,.hv2 .difference-copy h2,.hv2 .community h2,.hv2 .people h2,.hv2 .answers h2,.hv2 .contact-section h2{margin: 0; font-size: clamp(2.8rem, 5vw, 5.5rem);}
.hv2 .intro-body{max-width: 610px; padding-top: 0;}
.hv2 .lead{font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 2rem); line-height: 1.35;}
.hv2 .intro-body p:last-child{color: rgba(255,255,255,.92);}
.hv2 .community-copy > p:not(.eyebrow):not(.lead){color: rgba(51,49,54,.82);}
.hv2 .travel-modes{background: var(--white);}
.hv2 .travel-modes .section-heading{margin-bottom: clamp(2rem, 4vw, 4rem);}
.hv2 .travel-mode-grid{max-width: 1450px; margin: 0 auto; display: grid; gap: 1.25rem;}
.hv2 .travel-mode-card{min-height: 540px; display: grid; grid-template-columns: 1.08fr .92fr; overflow: hidden; color: var(--ink); background: var(--cream);}
.hv2 .travel-mode-card > img, .hv2 .travel-mode-card > picture > img{position: static; height: 100%; min-height: 540px; object-fit: cover; transition: transform .8s cubic-bezier(.2,.8,.2,1);}
.hv2 .travel-mode-card:first-child > img, .hv2 .travel-mode-card:first-child > picture > img{object-position: 42% center;}
.hv2 .travel-mode-card::after{display: none;}
.hv2 .travel-mode-card:hover > img, .hv2 .travel-mode-card:hover > picture > img{transform: scale(1.035);}
.hv2 .travel-mode-copy{position: static; z-index: 2; padding: clamp(2.2rem, 5vw, 5rem); max-width: none; display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
.hv2 .travel-mode-copy > span{font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--hv2-ember);}
.hv2 .travel-mode-copy h3{margin: .65rem 0 .8rem; font-family: var(--serif); font-size: clamp(2.4rem, 4vw, 4.5rem); line-height: 1; font-weight: 400;}
.hv2 .travel-mode-copy p{max-width: 540px; color: rgba(51,49,54,.82);}
.hv2 .travel-mode-copy .button{margin-top: 1rem;}
.hv2 .group-mode{grid-template-columns: .92fr 1.08fr; background: var(--green); color: var(--white);}
.hv2 .group-mode > img, .hv2 .group-mode > picture > img{order: 2;}
.hv2 .group-mode .travel-mode-copy{order: 1;}
.hv2 .group-mode .travel-mode-copy > span{color: var(--orange);}
.hv2 .group-mode .travel-mode-copy p{color: rgba(255,255,255,.92);}
.hv2 .journeys{background: var(--cream);}
.hv2 .section-heading{display: flex; justify-content: space-between; align-items: end; gap: 3rem; max-width: 1450px; margin: 0 auto clamp(2.5rem, 5vw, 5rem);}
.hv2 .section-heading > p{max-width: 380px; color: rgba(51,49,54,.82);}
.hv2 .journey-grid{max-width: 1450px; margin: 0 auto; display: grid; grid-template-columns: 1.15fr .85fr .85fr; grid-template-rows: 390px 390px; gap: 1rem;}
.hv2 .journey-card{position: relative; overflow: hidden; background: var(--green); color: var(--white);}
.hv2 .journey-card-wide{grid-row: span 2;}
.hv2 .journey-card img{height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.8,.2,1);}
.hv2 .journey-card:hover img{transform: scale(1.035);}
.hv2 .card-overlay{position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(22,31,27,.78));}
.hv2 .card-index{position: absolute; top: 1.3rem; right: 1.3rem; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; width: 34px; height: 34px; display: grid; place-items: center; font-size: .64rem;}
.hv2 .card-copy{position: absolute; left: clamp(1.4rem, 3vw, 2.5rem); right: 1.5rem; bottom: clamp(1.5rem, 3vw, 2.5rem); display: grid;}
.hv2 .card-copy small{font-size: .64rem; letter-spacing: .15em; text-transform: uppercase; margin-bottom: .45rem;}
.hv2 .card-copy strong{max-width: 520px; font-family: var(--serif); font-size: clamp(1.6rem, 2.7vw, 3.2rem); line-height: 1.05; font-weight: 400;}
.hv2 .card-copy > span{margin-top: .75rem; font-size: .7rem; opacity: .85;}
.hv2 .journey-card-trekking img{object-position: center 52%;}
.hv2 .journey-card-luxury img{object-position: center 58%;}
.hv2 .journey-card-luxury .card-copy > span{display: flex; justify-content: space-between; padding-top: .75rem; border-top: 1px solid rgba(255,255,255,.42);}
.hv2 .experiences{background: var(--green-dark); color: var(--white); overflow: hidden;}
.hv2 .experiences-heading{max-width: 1450px; margin: 0 auto clamp(2.5rem, 5vw, 4.8rem); display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(3rem, 8vw, 9rem); align-items: end;}
.hv2 .experiences-heading h2{max-width: 900px; margin: 0; font-size: clamp(3rem, 5.6vw, 6.2rem);}
.hv2 .experiences-heading > div > p{max-width: 560px; margin: 0; color: rgba(255,255,255,.92); font-size: 1rem;}
.hv2 .experiences-actions{margin-top: 1.8rem; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;}
.hv2 .experiences-actions .text-link{color: var(--white); border-color: rgba(255,255,255,.38);}
.hv2 .experience-controls{display: flex; gap: .65rem;}
.hv2 .experience-controls button{width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.32); background: transparent; color: var(--white); cursor: pointer; font: inherit; font-size: 1.25rem; transition: background .2s ease, color .2s ease, opacity .2s ease;}
.hv2 .experience-controls button:hover:not(:disabled){background: var(--orange); color: var(--ink);}
.hv2 .experience-controls button:disabled{opacity: .28; cursor: default;}
.hv2 .experience-rail{width: calc(100vw - clamp(1.5rem, 6vw, 7.5rem)); max-width: 1700px; margin-left: max(0px, calc((100vw - 1700px) / 2)); display: flex; gap: 1rem; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; scrollbar-width: none; outline: none;}
.hv2 .experience-rail::-webkit-scrollbar{display: none;}
.hv2 .experience-rail:focus-visible{box-shadow: 0 0 0 2px var(--orange);}
.hv2 .experience-card{position: relative; flex: 0 0 min(30vw, 420px); height: 560px; overflow: hidden; scroll-snap-align: start; background: var(--ink);}
.hv2 .experience-card:first-child{flex-basis: min(41vw, 570px);}
.hv2 .experience-card img{width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.8,.2,1);}
.hv2 .experience-card:hover img{transform: scale(1.035);}
.hv2 .experience-card-portrait img{object-position: center 58%;}
.hv2 .experience-card-birdwatching img{object-position: 55% center;}
.hv2 .experience-card-prewedding img{object-position: center center;}
.hv2 .experience-card-helicopter img{object-position: 47% center;}
.hv2 .experience-card-celebration img{object-position: 52% center;}
.hv2 .experience-card-meditation img{object-position: 38% center;}
.hv2 .experience-shade{position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(21,28,24,.88));}
.hv2 .experience-card > div{position: absolute; left: clamp(1.4rem, 3vw, 2.3rem); right: clamp(1.4rem, 3vw, 2.3rem); bottom: clamp(1.5rem, 3vw, 2.4rem);}
.hv2 .experience-card > div > span{display: block; margin-bottom: .8rem; color: var(--orange); font-size: .68rem; font-weight: 800; letter-spacing: .15em;}
.hv2 .experience-card h3{max-width: 460px; margin: 0; font-family: var(--serif); font-size: clamp(1.8rem, 2.8vw, 3rem); font-weight: 400; line-height: 1.05;}
.hv2 .experience-card p{max-width: 420px; margin: .9rem 0 0; color: rgba(255,255,255,.92); font-size: .78rem;}
.hv2 .why-section{background: var(--white);}
.hv2 .why-heading{max-width: 1450px; margin: 0 auto clamp(3rem, 6vw, 6rem); display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(3rem, 8vw, 10rem); align-items: end;}
.hv2 .why-heading h2{margin: 0; font-size: clamp(3rem, 5.6vw, 6.2rem);}
.hv2 .why-heading p{max-width: 540px; margin: 0 0 .6rem; color: rgba(51,49,54,.82); font-size: 1.02rem;}
.hv2 .why-grid{max-width: 1450px; margin: auto; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line);}
.hv2 .why-grid article{min-height: 270px; padding: clamp(1.5rem, 3vw, 2.8rem); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.hv2 .why-grid article > span{color: var(--hv2-ember); font-family: var(--serif); font-size: .75rem;}
.hv2 .why-grid h3{margin: 3.2rem 0 .6rem; font-family: var(--serif); font-size: clamp(1.45rem, 2vw, 2.2rem); font-weight: 400; line-height: 1.1;}
.hv2 .why-grid p{margin: 0; color: rgba(51,49,54,.82); font-size: .82rem;}
.hv2 .difference{display: grid; grid-template-columns: 1fr 1fr; gap: clamp(4rem, 8vw, 10rem); align-items: center; background: var(--white);}
.hv2 .difference-photo{position: relative; max-width: 700px;}
.hv2 .difference-photo img{height: min(720px, 70vw); object-fit: cover;}
.hv2 .difference-photo p{position: absolute; right: -3rem; bottom: 2.5rem; margin: 0; padding: 1.3rem 1.5rem; background: var(--orange); color: var(--ink); font-family: var(--serif); font-size: 1.25rem; line-height: 1.3; transform: rotate(-3deg);}
.hv2 .difference-copy{max-width: 700px;}
.hv2 .pillar-list{margin: 3rem 0; border-top: 1px solid var(--line);}
.hv2 .pillar-list article{display: grid; grid-template-columns: 50px 1fr; gap: 1rem; padding: 1.35rem 0; border-bottom: 1px solid var(--line);}
.hv2 .pillar-list article > span{color: var(--hv2-ember); font-family: var(--serif); font-size: .8rem;}
.hv2 .pillar-list h3{margin: 0 0 .3rem; font-family: var(--serif); font-size: 1.35rem; font-weight: 400;}
.hv2 .pillar-list p{margin: 0; color: rgba(51,49,54,.82); font-size: .88rem;}
.hv2 .festival-feature{min-height: 760px; position: relative; display: flex; align-items: end; overflow: hidden; color: var(--white); padding: clamp(3rem, 7vw, 7rem);}
.hv2 .festival-feature > img, .hv2 .festival-feature > picture > img,.hv2 .festival-shade{position: absolute; inset: 0; height: 100%; object-fit: cover;}
.hv2 .festival-shade{background: linear-gradient(90deg, rgba(20,34,27,.88), rgba(20,34,27,.12) 75%), linear-gradient(0deg, rgba(0,0,0,.25), transparent 45%);}
.hv2 .festival-copy{position: relative; z-index: 2; max-width: 680px;}
.hv2 .festival-copy h2{margin: 0 0 1.5rem; font-size: clamp(3.4rem, 6vw, 7rem);}
.hv2 .festival-copy p:not(.eyebrow){max-width: 560px; color: rgba(255,255,255,.82); font-size: 1.05rem;}
.hv2 .festival-copy .button{margin-top: 1.2rem;}
.hv2 .festival-label{position: absolute; z-index: 2; right: clamp(2rem, 6vw, 7rem); top: 10%; writing-mode: vertical-rl; letter-spacing: .14em; text-transform: uppercase; font-size: .63rem;}
.hv2 .festival-label span{color: var(--orange); margin-bottom: 1.2rem;}
.hv2 .drukair-section{display: grid; grid-template-columns: 1.25fr .75fr; background: var(--cream);}
.hv2 .drukair-copy{padding: clamp(4.5rem, 8vw, 9rem) clamp(1.5rem, 7vw, 8rem);}
.hv2 .drukair-logo{width: min(270px, 58vw); height: 70px; object-fit: contain; object-position: left center; margin-bottom: 2.5rem;}
.hv2 .drukair-copy h2{max-width: 850px; margin: 0 0 1.5rem; font-size: clamp(3rem, 5.4vw, 6rem);}
.hv2 .drukair-copy > p{max-width: 720px; color: rgba(51,49,54,.82); font-size: 1rem;}
.hv2 .drukair-links{margin-top: 2.2rem; display: flex; flex-wrap: wrap; align-items: center; gap: 1.6rem;}
.hv2 .drukair-proof{display: grid; grid-template-rows: minmax(280px, .9fr) auto; background: var(--orange); color: var(--ink);}
.hv2 .drukair-flight-photo{height: 100%; min-height: 280px; object-fit: cover; object-position: center;}
.hv2 .drukair-proof-copy{padding: clamp(3rem, 5vw, 5rem);}
.hv2 .drukair-proof-copy > strong{display: block; font-family: var(--serif); font-size: clamp(5rem, 9vw, 10rem); line-height: .8; font-weight: 300;}
.hv2 .drukair-proof-copy > span{display: block; max-width: 340px; margin-top: 1.5rem; font-family: var(--serif); font-size: 1.5rem; line-height: 1.2;}
.hv2 .drukair-proof-copy ul{list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; font-size: .72rem;}
.hv2 .drukair-proof-copy li{padding-top: .8rem; border-top: 1px solid rgba(51,49,54,.34);}
.hv2 .story-section{max-width: 1600px; margin: auto;}
.hv2 .story-heading{display: grid; grid-template-columns: .62fr 1.5fr auto; gap: clamp(2rem, 6vw, 7rem); align-items: end; margin-bottom: clamp(2.5rem, 5vw, 5rem);}
.hv2 .story-heading h2{margin: 0; font-size: clamp(2.8rem, 5vw, 5.5rem);}
.hv2 .rating{color: var(--hv2-ember); letter-spacing: .08em;}
.hv2 .rating strong{display: block; color: var(--ink); font-family: var(--serif); font-size: 3rem; letter-spacing: 0;}
.hv2 .story-heading > div:first-child > p:last-child{margin: 0; font-size: .75rem; color: rgba(51,49,54,.82);}
.hv2 .review-controls{display: flex; align-items: center; gap: .7rem;}
.hv2 .review-controls button{width: 52px; height: 52px; border: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); cursor: pointer; font-family: var(--serif); font-size: 2rem; line-height: 1; transition: background .2s ease, color .2s ease;}
.hv2 .review-controls button:hover{background: var(--green); color: var(--white);}
.hv2 .review-controls span{min-width: 58px; text-align: center; color: rgba(51,49,54,.82); font-size: .68rem; font-weight: 700; letter-spacing: .08em;}
.hv2 .review-carousel{overflow: hidden; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.hv2 .review-track{display: flex; transition: transform .55s cubic-bezier(.22,.75,.24,1);}
.hv2 .review-slide{flex: 0 0 100%; min-width: 100%; min-height: 340px; margin: 0; padding: clamp(3rem, 6vw, 6rem) 0; display: grid; grid-template-columns: 1.55fr .45fr; gap: clamp(3rem, 8vw, 9rem); align-items: end;}
.hv2 .review-slide blockquote{margin: 0; max-width: 1050px; font-family: var(--serif); font-size: clamp(2.2rem, 4vw, 4.7rem); line-height: 1.12;}
.hv2 .review-slide figcaption{display: flex; flex-direction: column; gap: .3rem; padding-bottom: .6rem; font-size: .76rem;}
.hv2 .review-slide figcaption span{color: rgba(51,49,54,.82);}
.hv2 .story-link{display: inline-flex; align-items: center; gap: .7rem; margin: 2rem 0 3.5rem; padding-bottom: .35rem; border-bottom: 1px solid rgba(51,49,54,.35); font-size: .78rem; font-weight: 800;}
.hv2 .story-link span{color: var(--hv2-ember);}
.hv2 .review-platforms{width: 100%; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line);}
.hv2 .review-platform{min-height: 128px; padding: 1.4rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .75rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .25s ease, transform .25s ease;}
.hv2 .review-platform:hover{background: var(--cream); transform: translateY(-2px);}
.hv2 .review-platform img{width: auto; max-width: 165px; height: 46px; object-fit: contain;}
.hv2 .review-platform span{color: rgba(51,49,54,.82); font-size: .7rem;}
.hv2 .review-platform b{color: var(--hv2-ember); margin-left: .35rem;}
.hv2 .community{display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(4rem, 9vw, 10rem); align-items: center; background: var(--cream); overflow: hidden;}
.hv2 .community-copy{max-width: 620px;}
.hv2 .community-copy .text-link{margin-top: 1.5rem;}
.hv2 .community-images{position: relative; min-height: 650px;}
.hv2 .community-main{position: absolute; top: 0; right: 0; width: 78%; height: 78%; object-fit: cover;}
.hv2 .community-detail{position: absolute; bottom: 0; left: 0; width: 42%; height: 47%; object-fit: cover; border: 10px solid var(--cream);}
.hv2 .mice-section{min-height: 760px; display: grid; grid-template-columns: 1.08fr .92fr; background: var(--terracotta); color: var(--white);}
.hv2 .mice-image{min-height: 680px; overflow: hidden;}
.hv2 .mice-image img{width: 100%; height: 100%; object-fit: cover; object-position: center;}
.hv2 .mice-copy{padding: clamp(4.5rem, 8vw, 8rem); display: flex; flex-direction: column; align-items: flex-start; justify-content: center;}
.hv2 .mice-copy h2{max-width: 760px; margin: 0; font-size: clamp(3rem, 5vw, 5.6rem);}
.hv2 .mice-copy .lead{max-width: 680px; margin: 1.6rem 0 1rem;}
.hv2 .mice-copy > p:not(.lead){max-width: 640px; color: rgba(255,255,255,.92);}
.hv2 .mice-copy ul{width: 100%; max-width: 680px; margin: 1.2rem 0 2.2rem; padding: 0; display: grid; grid-template-columns: 1fr 1fr; list-style: none; border-top: 1px solid rgba(255,255,255,.3);}
.hv2 .mice-copy li{padding: .8rem 0; border-bottom: 1px solid rgba(255,255,255,.3); font-size: .78rem;}
.hv2 .mice-copy li:nth-child(odd){padding-right: 1rem;}
.hv2 .mice-copy li:nth-child(even){padding-left: 1rem; border-left: 1px solid rgba(255,255,255,.3);}
.hv2 .people{background: var(--green-dark); color: var(--white);}
.hv2 .people .section-heading > p{color: rgba(255,255,255,.92);}
.hv2 .people-row{max-width: 1450px; margin: auto; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid rgba(255,255,255,.2);}
.hv2 .people-row > *{min-height: 220px; padding: 1.4rem; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); display: flex; flex-direction: column; justify-content: end;}
.hv2 .people-row > div img{width: 104px; height: 104px; margin-bottom: auto; border-radius: 50%; object-fit: cover; background: var(--cream);}
.hv2 .people-row strong{font-family: var(--serif); font-size: 1.3rem; font-weight: 400;}
.hv2 .people-row small{color: rgba(255,255,255,.92); margin-top: .2rem;}
.hv2 .people-row > a{grid-column: span 2; background: var(--orange); color: var(--ink);}
.hv2 .people-row > a span{margin-bottom: auto; font-size: 2rem;}
.hv2 .people-row > a small{color: rgba(51,49,54,.82);}
.hv2 .answers{background: var(--paper);}
.hv2 .answers-heading{max-width: 1450px; margin: 0 auto clamp(2.8rem, 6vw, 5.5rem); display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(2rem, 8vw, 9rem); align-items: end;}
.hv2 .answers-heading p{max-width: 470px; margin: 0 0 .45rem; color: rgba(51,49,54,.82); font-size: 1.02rem;}
.hv2 .answer-grid{max-width: 1450px; margin: auto; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line);}
.hv2 .answer-grid article{min-height: 330px; padding: clamp(1.6rem, 3.5vw, 3.5rem); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; align-items: flex-start;}
.hv2 .answer-grid article > span{color: var(--hv2-ember); font-family: var(--serif); font-size: .76rem;}
.hv2 .answer-grid h3{max-width: 590px; margin: 2.7rem 0 .8rem; font-family: var(--serif); font-size: clamp(1.8rem, 2.8vw, 3rem); font-weight: 400; line-height: 1.08;}
.hv2 .answer-grid p{max-width: 620px; margin: 0; color: rgba(51,49,54,.82); font-size: .88rem;}
.hv2 .answer-grid a{margin-top: auto; padding-top: 2rem; color: var(--green); border-bottom: 1px solid rgba(67,102,80,.35); font-size: .75rem; font-weight: 800;}
.hv2 .answer-grid a b{margin-left: .45rem; color: var(--hv2-ember);}
.hv2 .contact-section{display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(3rem, 7vw, 8rem); padding: clamp(5rem, 9vw, 9rem) clamp(1.5rem, 6vw, 7.5rem); background: var(--green); color: var(--white);}
.hv2 .contact-copy{padding: 1rem 0; align-self: center;}
.hv2 .contact-copy h2{max-width: 800px;}
.hv2 .contact-copy > p:first-of-type{max-width: 530px; margin: 1.6rem 0 1.8rem; color: rgba(255,255,255,.92); font-size: 1.03rem;}
.hv2 .contact-reassurance{max-width: 430px; margin: 0; padding: 1rem 0; border-top: 1px solid rgba(255,255,255,.22); border-bottom: 1px solid rgba(255,255,255,.22); color: var(--cream); font-family: var(--serif); font-size: 1.2rem;}
.hv2 .contact-alternative{margin-top: 2rem; font-size: .76rem; color: rgba(255,255,255,.92);}
.hv2 .contact-alternative a{color: var(--white); border-bottom: 1px solid rgba(255,255,255,.65);}
.hv2 .enquiry-form{padding: clamp(2.2rem, 5vw, 5rem); background: var(--cream); color: var(--ink); display: flex; flex-direction: column; justify-content: center; gap: 1.35rem; border-radius: 1.2rem; box-shadow: 0 30px 80px rgba(20,34,27,.24);}
.hv2 .enquiry-form label{display: grid; gap: .5rem; font-size: .65rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase;}
.hv2 .enquiry-form input,.hv2 .enquiry-form textarea{width: 100%; border: 1px solid rgba(51,49,54,.18); padding: 1rem 1.1rem; background: rgba(255,255,255,.62); color: var(--ink); border-radius: .35rem; font: inherit; font-size: .96rem; outline: none; resize: vertical;}
.hv2 .enquiry-form textarea{min-height: 145px;}
.hv2 .enquiry-form input::placeholder,.hv2 .enquiry-form textarea::placeholder{color: rgba(51,49,54,.4);}
.hv2 .enquiry-form input:focus,.hv2 .enquiry-form textarea:focus{border-color: var(--terracotta);}
.hv2 .enquiry-form .button{width: 100%; border: 0; margin-top: .6rem; cursor: pointer;}
.hv2 .enquiry-note,.hv2 .enquiry-status{margin: 0; color: rgba(51,49,54,.82); font-size: .68rem;}
.hv2 .enquiry-status{min-height: 1.1rem; color: var(--green); font-weight: 700;}
.hv2 .guide-teaser{display: grid; grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr); min-height: 560px; background: var(--cream);}
.hv2 .guide-image{min-height: 560px; position: relative; overflow: hidden; background: #18261f; color: var(--white);}
.hv2 .guide-image img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center;}
.hv2 .guide-image::after{content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(12,21,17,.03) 38%, rgba(12,21,17,.34) 100%);}
.hv2 .guide-image-copy{position: absolute; z-index: 2; right: clamp(1.4rem, 3vw, 2.5rem); bottom: clamp(1.4rem, 3vw, 2.5rem); left: clamp(1.4rem, 3vw, 2.5rem); padding: clamp(1.25rem, 2.5vw, 2rem); background: rgba(24,38,31,.9); text-align: left; box-shadow: 0 18px 45px rgba(12,21,17,.24); backdrop-filter: blur(7px);}
.hv2 .guide-image-copy strong{display: block; font-size: clamp(2.7rem, 4.3vw, 5rem); line-height: .85; letter-spacing: .035em; text-transform: uppercase;}
.hv2 .guide-image-copy p{max-width: 460px; margin: .75rem 0 0; font-family: var(--serif); font-size: clamp(.95rem, 1.25vw, 1.25rem); line-height: 1.35;}
.hv2 .guide-copy{padding: clamp(3rem, 5vw, 5.25rem); display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
.hv2 .guide-copy h2{margin: 0 0 1rem; font-size: clamp(2.6rem, 4vw, 4.5rem);}
.hv2 .guide-copy > p:not(.eyebrow){max-width: 630px; color: rgba(51,49,54,.82); font-size: 1rem;}
.hv2 .guide-copy ul{list-style: none; padding: 0; margin: .75rem 0 1.4rem; display: grid; gap: .45rem; font-size: .8rem;}
.hv2 .guide-copy li::before{content: "✦"; color: var(--hv2-ember); margin-right: .7rem;}
.hv2 .newsletter{padding: clamp(4rem, 7vw, 7rem) clamp(1.5rem, 6vw, 7.5rem); display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(340px, .84fr); gap: clamp(3rem, 7vw, 8rem); align-items: center; background: var(--green); color: var(--white);}
.hv2 .newsletter-copy h2{margin: 0; max-width: 900px; font-size: clamp(2.7rem, 4.35vw, 4.9rem);}
.hv2 .newsletter-copy > p:last-child{max-width: 650px; color: rgba(255,255,255,.92);}
.hv2 .newsletter-form{display: grid; gap: 1rem; padding: clamp(1.5rem, 3vw, 2.25rem); background: rgba(245,232,213,.1); border: 1px solid rgba(245,232,213,.35); box-shadow: 0 20px 50px rgba(20,34,27,.18);}
.hv2 .newsletter-form > label{font-size: .72rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase;}
.hv2 .newsletter-field{display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0; background: var(--cream); border: 2px solid var(--cream);}
.hv2 .newsletter-field input{min-width: 0; padding: 1.15rem 1.25rem; border: 0; outline: 0; background: var(--cream); color: var(--ink); font: inherit; font-size: 1.05rem;}
.hv2 .newsletter-field input::placeholder{color: rgba(51,49,54,.48);}
.hv2 .newsletter-field input:focus-visible{box-shadow: inset 0 0 0 2px var(--orange);}
.hv2 .newsletter-field button{min-width: 180px; padding: 1.1rem 1.25rem; border: 0; background: var(--orange); color: var(--ink); font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer; display: inline-flex; align-items: center; justify-content: space-between; gap: 2rem; transition: background .2s ease, color .2s ease, transform .2s ease;}
.hv2 .newsletter-field button:hover{background: var(--terracotta); color: var(--white); transform: translateY(-2px);}
.hv2 .newsletter-form > p{margin: 0; color: rgba(255,255,255,.92); font-size: .68rem;}
.hv2 .press-strip{padding: 3.1rem clamp(1.5rem, 6vw, 7.5rem); display: flex; align-items: center; justify-content: center; gap: clamp(2.5rem, 5vw, 5.5rem); background: var(--white); border-bottom: 1px solid var(--line);}
.hv2 .press-strip > p{flex: 0 0 auto; margin: 0; color: var(--hv2-ember); font-size: .72rem; font-weight: 800; letter-spacing: .17em; text-transform: uppercase;}
.hv2 .press-strip a{display: block; width: min(960px, 78vw);}
.hv2 .press-strip img{max-height: 108px; object-fit: contain; filter: grayscale(1); opacity: .8; transition: .25s ease;}
.hv2 .press-strip a:hover img{filter: grayscale(0); opacity: 1;}
.hv2 .awards-section{padding: clamp(2.75rem, 4vw, 4rem) clamp(1.5rem, 6vw, 7.5rem); background: var(--cream);}
.hv2 .awards-heading{max-width: 1450px; margin: 0 auto 1.75rem; display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: 3rem;}
.hv2 .awards-heading h2{margin: 0; font-size: clamp(2.2rem, 3vw, 3.4rem);}
.hv2 .awards-heading p{max-width: 520px; color: rgba(51,49,54,.82);}
.hv2 .awards-grid{max-width: 1450px; margin: auto; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line);}
.hv2 .awards-grid article{min-height: 170px; padding: 1rem; text-align: center; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.hv2 .awards-grid img{width: 100%; height: 76px; object-fit: contain; mix-blend-mode: multiply;}
.hv2 .awards-grid h3{margin: .6rem 0 .2rem; font-family: var(--serif); font-size: 1rem; font-weight: 400;}
.hv2 .awards-grid p{margin: 0; color: rgba(51,49,54,.82); font-size: .64rem; line-height: 1.35;}
.hv2 .site-footer{background: #25382d; color: rgba(255,255,255,.92); font-size: .73rem;}
.hv2 .footer-main{padding: 0 clamp(1.5rem, 6vw, 7.5rem) 2.5rem;}
.hv2 .footer-brand-row{max-width: 1500px; margin: auto; padding: 4.5rem 0 3.2rem; display: grid; grid-template-columns: 1fr auto; gap: 3rem; align-items: end; border-bottom: 1px solid rgba(255,255,255,.13);}
.hv2 .footer-brand{display: grid; grid-template-columns: auto minmax(240px, 460px); gap: clamp(1.8rem, 4vw, 4rem); align-items: center;}
.hv2 .footer-logo .brand-logo{width: 205px; max-height: none;}
.hv2 .footer-brand p{margin: 0; color: rgba(255,255,255,.92); font-size: .78rem; line-height: 1.75;}
.hv2 .footer-contact-cta{min-width: 250px;}
.hv2 .footer-contact-cta p{margin: 0 0 .35rem; color: var(--orange); font-size: .6rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.hv2 .footer-contact-cta a{display: flex; justify-content: space-between; gap: 2rem; padding: .8rem 0; border-bottom: 1px solid rgba(255,255,255,.35); color: var(--white); font-family: var(--serif); font-size: 1.25rem;}
.hv2 .footer-contact-cta a:hover{border-color: var(--orange); color: var(--cream);}
.hv2 .footer-grid{max-width: 1500px; margin: auto; padding: 3.2rem 0 2.8rem; display: grid; grid-template-columns: .95fr .95fr .85fr 1.1fr 1.35fr; gap: clamp(1.7rem, 3vw, 3.5rem); align-items: start; border-bottom: 1px solid rgba(255,255,255,.13);}
.hv2 .footer-column{display: flex; flex-direction: column; align-items: start; gap: .35rem;}
.hv2 .footer-column h3,.hv2 .footer-offices h3{margin: 1.5rem 0 .55rem; color: var(--orange); text-transform: uppercase; letter-spacing: .14em; font-family: var(--sans); font-size: .6rem;}
.hv2 .footer-column h3:first-child,.hv2 .footer-offices h3:first-child{margin-top: 0;}
.hv2 .footer-column a,.hv2 .footer-offices a{padding: .13rem 0; color: rgba(255,255,255,.92); line-height: 1.55; transition: color .2s ease, transform .2s ease;}
.hv2 .footer-column a:hover,.hv2 .footer-offices a:hover{color: var(--white); transform: translateX(2px);}
.hv2 .footer-offices address{font-style: normal; line-height: 1.75; color: rgba(255,255,255,.92);}
.hv2 .footer-offices .office-more{display: inline-block; margin-top: .4rem; color: var(--cream); font-weight: 700;}
.hv2 .payment-options{display: flex; flex-wrap: wrap; gap: .36rem; margin-top: .7rem;}
.hv2 .payment-options img{width: auto; height: 22px; padding: 3px 5px; background: var(--white); border-radius: 3px;}
.hv2 .footer-social-row{max-width: 1500px; margin: auto; padding-top: 2rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem;}
.hv2 .footer-social-row > p{margin: 0; color: rgba(255,255,255,.5); font-size: .6rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.hv2 .social-links{display: flex; flex-wrap: wrap; gap: .5rem;}
.hv2 .social-links a{width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; color: var(--white); font-size: .62rem; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, color .2s ease;}
.hv2 .social-links a:hover{border-color: var(--orange); background: var(--orange); color: var(--ink);}
.hv2 .footer-bottom{padding: 1.2rem clamp(1.5rem, 6vw, 7.5rem) 2rem; border-top: 1px solid rgba(0,0,0,.1); background: #1f3026;}
.hv2 .footer-bottom > div{display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.3rem;}
.hv2 .footer-bottom > div a:hover{color: var(--white);}
.hv2 .cookie-preferences{padding: 0; border: 0; background: transparent; color: inherit; font-size: inherit; cursor: pointer;}
.hv2 .cookie-preferences:hover{color: var(--white);}
.hv2 .photo-credits{margin-top: 1rem; color: rgba(255,255,255,.48);}
.hv2 .photo-credits summary{cursor: pointer; color: rgba(255,255,255,.92);}
.hv2 .photo-credits a{text-decoration: underline;}
.hv2 .concept-note{margin: 1rem 0 0; color: rgba(255,255,255,.34); font-size: .66rem;}
@media (max-width: 1180px){.hv2 .site-header{position: absolute;}
.hv2 .header-main{min-height: 80px;}
.hv2 .menu-button{display: block; z-index: 42; width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,.82);}
.hv2 .site-nav{display: none; position: absolute; z-index: 40; top: 34px; right: 0; width: min(440px, 100vw); max-height: calc(100vh - 34px); padding: 6rem 1.5rem 2rem; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 1.4rem; overflow-y: auto; background: var(--ink); color: var(--white); box-shadow: 0 20px 60px rgba(0,0,0,.25);}
.hv2 .site-nav.open{display: flex;}
.hv2 .nav-core,.hv2 .nav-actions{width: 100%; flex-direction: column; align-items: stretch;}
.hv2 .nav-core{gap: 0;}
.hv2 .nav-actions{gap: .65rem; margin: 0; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.15);}
.hv2 .nav-group{width: 100%; border-bottom: 1px solid rgba(255,255,255,.12);}
.hv2 .nav-link,.hv2 .nav-trigger,.hv2 .nav-guide{width: 100%; padding: .9rem 0; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.12); color: var(--white); text-align: left;}
.hv2 .nav-group .nav-trigger{border-bottom: 0;}
.hv2 .nav-guide{color: var(--orange);}
.hv2 .mega-menu,.hv2 .mega-menu-compact,.hv2 .mega-menu-single,.hv2 .mega-menu-right{position: static; width: 100%; padding: 0 0 1rem 1rem; display: none; grid-template-columns: 1fr; gap: .75rem; border: 0; background: transparent; box-shadow: none; transform: none;}
.hv2 .nav-group.open .mega-menu{display: grid;}
.hv2 .mega-menu::before{display: none;}
.hv2 .mega-column + .mega-column,.hv2 .mega-featured{margin: 0; padding: .75rem 0 0 !important; border: 0 !important; border-top: 1px solid rgba(255,255,255,.1) !important; background: transparent;}
.hv2 .mega-column > p{margin-top: .45rem; color: var(--orange);}
.hv2 .mega-column a,.hv2 .mega-column .mega-all-link{padding: .46rem 0; border-color: rgba(255,255,255,.1); color: rgba(255,255,255,.92);}
.hv2 .mega-column a:hover,.hv2 .mega-column a:focus-visible{color: var(--white);}
.hv2 .mega-column a strong,.hv2 .mega-featured a span{color: var(--cream);}
.hv2 .site-nav .nav-cta{width: 100%; text-align: center; background: var(--orange); color: var(--ink);}
.hv2 .hero{grid-template-columns: 1fr; height: auto; min-height: 0;}
.hv2 .hero-copy{min-height: 0; padding: 10.5rem clamp(1.5rem, 8vw, 6rem) 4rem; background: var(--cream);}
.hv2 .hero-visual{display: block; height: auto; padding: 0;}
.hv2 .hero-frame{position: relative; inset: auto; width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 10; margin: 0;}
.hv2 .trust-band{grid-template-columns: repeat(3, 1fr);}
.hv2 .trust-band > div:first-child{border-left: 0;}
.hv2 .intro-section{grid-template-columns: 1.15fr .85fr;}
.hv2 .intro-body{grid-column: auto;}
.hv2 .travel-mode-card{min-height: 500px;}
.hv2 .travel-mode-card > img, .hv2 .travel-mode-card > picture > img{min-height: 500px;}
.hv2 .journey-grid{grid-template-columns: 1fr 1fr; grid-template-rows: 580px 330px 330px;}
.hv2 .journey-card-wide{grid-row: span 1; grid-column: span 2;}
.hv2 .journey-card:nth-child(2){grid-column: span 1;}
.hv2 .experiences-heading{grid-template-columns: 1fr; gap: 1.6rem;}
.hv2 .experience-rail{width: calc(100vw - 3rem);}
.hv2 .experience-card{flex-basis: min(44vw, 430px);}
.hv2 .experience-card:first-child{flex-basis: min(60vw, 560px);}
.hv2 .difference{gap: 4rem;}
.hv2 .difference-photo p{right: -1.5rem;}
.hv2 .why-grid{grid-template-columns: repeat(2, 1fr);}
.hv2 .drukair-section{grid-template-columns: 1fr;}
.hv2 .story-heading{grid-template-columns: .6fr 1.4fr;}
.hv2 .review-controls{grid-column: 2;}
.hv2 .people-row{grid-template-columns: repeat(3, 1fr);}
.hv2 .people-row > a{grid-column: span 3;}
.hv2 .community-images{min-height: 520px;}
.hv2 .mice-section{grid-template-columns: 1fr;}
.hv2 .mice-image{min-height: 560px;}
.hv2 .answers-heading{grid-template-columns: 1fr; gap: 1.5rem;}
.hv2 .contact-section{grid-template-columns: 1fr;}
.hv2 .awards-grid{grid-template-columns: repeat(3, 1fr);}
.hv2 .footer-grid{grid-template-columns: repeat(3, 1fr);}
.hv2 .footer-offices{grid-column: span 2;}}
@media (max-width: 720px){.hv2 .site-header{padding: 0;}
.hv2 .header-topbar-inner{width: calc(100% - 2.4rem); justify-content: center;}
.hv2 .header-topbar-inner > p{display: none;}
.hv2 .header-contact{width: 100%; justify-content: space-between; gap: 1rem;}
.hv2 .header-main{min-height: 76px; padding: .55rem 1.2rem;}
.hv2 .brand-logo{width: 128px;}
.hv2 .site-nav{top: 34px; padding-top: 5.7rem;}
.hv2 .hero-copy{min-height: 0; padding: 8.7rem 1.35rem 2.5rem; display: flex; flex-direction: column; justify-content: center; background: var(--cream);}
.hv2 .hero h1{font-size: clamp(3.05rem, 12.5vw, 4.6rem); line-height: .92;}
.hv2 .hero-intro{font-size: .98rem;}
.hv2 .button-row{align-items: stretch; flex-direction: column; margin: 1.7rem 0 2.1rem;}
.hv2 .button{min-width: 0;}
.hv2 .hero-credentials{flex-direction: column;}
.hv2 .hero-visual{height: auto; padding: 0;}
.hv2 .hero-frame{width: 100%; height: auto; aspect-ratio: 4 / 5; border-radius: 0;}
.hv2 .vertical-caption{display: none;}
.hv2 .hero-proof{grid-template-columns: 1fr 1fr; gap: 1rem;}
.hv2 .hero-proof div:last-child{grid-column: span 2;}
.hv2 .trust-band{grid-template-columns: 1fr 1fr; padding: 0 1.3rem;}
.hv2 .trust-band > div{min-height: 96px; border-bottom: 1px solid var(--line);}
.hv2 .trust-band > div:last-child{grid-column: span 2;}
.hv2 .section-pad{padding: 4.5rem 1.3rem;}
.hv2 .intro-section{display: block;}
.hv2 .section-number{display: none;}
.hv2 .intro-title h2,.hv2 .section-heading h2,.hv2 .difference-copy h2,.hv2 .community h2,.hv2 .people h2,.hv2 .answers h2,.hv2 .contact-section h2{font-size: clamp(2.6rem, 12vw, 4rem);}
.hv2 .intro-body{padding-top: .5rem;}
.hv2 .section-heading{display: block;}
.hv2 .section-heading > p{margin-top: 1.4rem;}
.hv2 .travel-mode-grid{grid-template-columns: 1fr;}
.hv2 .travel-mode-card,.hv2 .group-mode{min-height: 0; grid-template-columns: 1fr;}
.hv2 .travel-mode-card > img, .hv2 .travel-mode-card > picture > img,.hv2 .group-mode > img, .hv2 .group-mode > picture > img{order: 0; min-height: 340px; height: 340px;}
.hv2 .travel-mode-copy,.hv2 .group-mode .travel-mode-copy{order: 1;}
.hv2 .travel-mode-copy .button{width: 100%;}
.hv2 .journey-grid{display: block;}
.hv2 .journey-card{display: block; height: 430px; margin-bottom: .8rem;}
.hv2 .experiences{padding-right: 0;}
.hv2 .experiences-heading{padding-right: 1.3rem;}
.hv2 .experiences-actions{align-items: flex-end;}
.hv2 .experience-rail{width: 100%; margin-left: 0; padding-right: 1.3rem;}
.hv2 .experience-card,.hv2 .experience-card:first-child{flex-basis: 84vw; height: 520px;}
.hv2 .difference{display: flex; flex-direction: column;}
.hv2 .difference-photo img{height: 520px;}
.hv2 .difference-photo p{right: -.25rem; bottom: 1rem;}
.hv2 .why-heading{grid-template-columns: 1fr; gap: 1.5rem;}
.hv2 .why-grid{grid-template-columns: 1fr;}
.hv2 .why-grid article{min-height: 230px;}
.hv2 .drukair-copy{padding: 4.5rem 1.3rem;}
.hv2 .drukair-proof-copy{padding: 3.5rem 1.3rem;}
.hv2 .drukair-links{align-items: stretch; flex-direction: column;}
.hv2 .drukair-links .button{width: 100%;}
.hv2 .festival-feature{min-height: 680px; padding: 3.5rem 1.3rem;}
.hv2 .festival-shade{background: linear-gradient(0deg, rgba(20,34,27,.94), rgba(20,34,27,.08) 85%);}
.hv2 .festival-copy h2{font-size: clamp(3.2rem, 14vw, 5rem);}
.hv2 .festival-label{display: none;}
.hv2 .story-heading{display: block;}
.hv2 .story-heading h2{margin: 2rem 0;}
.hv2 .review-controls{margin-top: 1.5rem;}
.hv2 .review-slide{min-height: 400px; display: flex; flex-direction: column; justify-content: space-between; gap: 2.5rem;}
.hv2 .review-slide blockquote{font-size: clamp(2rem, 8vw, 3rem);}
.hv2 .review-platforms{grid-template-columns: repeat(2, minmax(0, 1fr));}
.hv2 .review-platform{width: 100%; min-width: 0; min-height: 118px;}
.hv2 .review-platform img{max-width: 100%;}
.hv2 .community{display: flex; flex-direction: column;}
.hv2 .community-images{width: 100%; min-height: 500px;}
.hv2 .community-main{width: 88%;}
.hv2 .community-detail{width: 48%;}
.hv2 .mice-section{min-height: 0;}
.hv2 .mice-image{min-height: 430px;}
.hv2 .mice-copy{padding: 4.5rem 1.3rem;}
.hv2 .mice-copy h2{font-size: clamp(2.7rem, 12vw, 4rem);}
.hv2 .mice-copy ul{grid-template-columns: 1fr;}
.hv2 .mice-copy li:nth-child(odd),.hv2 .mice-copy li:nth-child(even){padding: .8rem 0; border-left: 0;}
.hv2 .mice-copy .button{width: 100%;}
.hv2 .people-row{grid-template-columns: 1fr 1fr;}
.hv2 .people-row > *{min-height: 180px;}
.hv2 .people-row > a{grid-column: span 2;}
.hv2 .people-row > div img{width: 84px; height: 84px;}
.hv2 .answer-grid{grid-template-columns: 1fr;}
.hv2 .answer-grid article{min-height: 300px;}
.hv2 .contact-section{padding: 4.5rem 1.3rem; gap: 2.5rem;}
.hv2 .contact-copy{padding: 0;}
.hv2 .enquiry-form{padding: 1.4rem;}
.hv2 .guide-teaser{grid-template-columns: 1fr; min-height: 0;}
.hv2 .guide-image{min-height: 0; aspect-ratio: 4 / 5;}
.hv2 .guide-image-copy{right: 1rem; bottom: 1rem; left: 1rem; padding: 1.2rem;}
.hv2 .guide-image-copy strong{font-size: clamp(2.6rem, 14vw, 4rem);}
.hv2 .guide-image-copy p{font-size: .95rem;}
.hv2 .guide-copy{padding: 3.25rem 1.3rem;}
.hv2 .guide-copy h2{font-size: clamp(2.5rem, 11vw, 3.3rem);}
.hv2 .newsletter{grid-template-columns: 1fr; padding: 4.5rem 1.3rem;}
.hv2 .newsletter-form{padding: 1.25rem;}
.hv2 .newsletter-field{grid-template-columns: 1fr; gap: .65rem; background: transparent; border: 0;}
.hv2 .newsletter-field input{border: 0;}
.hv2 .newsletter-field button{width: 100%;}
.hv2 .press-strip{flex-direction: column; gap: 1.2rem;}
.hv2 .press-strip a{width: 100%;}
.hv2 .awards-section{padding: 3rem 1.3rem;}
.hv2 .awards-heading{grid-template-columns: 1fr; gap: .8rem; margin-bottom: 1.5rem;}
.hv2 .awards-heading h2{font-size: clamp(2.35rem, 10vw, 3rem);}
.hv2 .awards-heading p{margin: 0; font-size: .86rem;}
.hv2 .awards-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}
.hv2 .awards-grid article{min-height: 165px; padding: .85rem;}
.hv2 .awards-grid article:last-child{grid-column: span 2;}
.hv2 .awards-grid img{height: 70px;}
.hv2 .footer-main,.hv2 .footer-bottom{padding-left: 1.3rem; padding-right: 1.3rem;}
.hv2 .footer-brand-row{padding: 3.5rem 0 2.7rem; grid-template-columns: 1fr; align-items: start; gap: 2rem;}
.hv2 .footer-brand{grid-template-columns: 1fr; gap: 1.5rem;}
.hv2 .footer-logo .brand-logo{width: 180px;}
.hv2 .footer-contact-cta{width: 100%; min-width: 0;}
.hv2 .footer-grid{grid-template-columns: 1fr 1fr;}
.hv2 .footer-offices{grid-column: span 2;}
.hv2 .footer-social-row{align-items: flex-start; flex-direction: column;}}
@media (max-width: 520px){.hv2 .footer-grid{grid-template-columns: 1fr;}
.hv2 .footer-offices{grid-column: auto;}}
@media (prefers-reduced-motion: reduce){.hv2{scroll-behavior: auto;}
.hv2, .hv2 *,.hv2::before, .hv2 *::before,.hv2::after, .hv2 *::after{transition-duration: .01ms !important; animation-duration: .01ms !important;}}
.hv2 .hero-option-switcher{position: fixed;
 z-index: 90;
 left: 50%;
 bottom: 1rem;
 width: min(calc(100% - 2rem), 660px);
 padding: .45rem;
 display: grid;
 grid-template-columns: auto repeat(3, 1fr);
 align-items: center;
 gap: .35rem;
 border: 1px solid rgba(51,49,54,.18);
 background: rgba(255,255,255,.94);
 box-shadow: 0 18px 55px rgba(31,30,34,.18);
 backdrop-filter: blur(18px);
 transform: translateX(-50%);}
.hv2 .hero-option-switcher > span{padding: 0 .8rem; color: rgba(51,49,54,.82); font-size: .58rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;}
.hv2 .hero-option-switcher a{min-height: 44px; padding: .55rem .7rem; display: flex; align-items: center; justify-content: center; gap: .45rem; color: rgba(51,49,54,.82); font-size: .66rem; font-weight: 700;}
.hv2 .hero-option-switcher a b{color: var(--hv2-ember); font-size: .58rem; letter-spacing: .08em;}
.hv2 .hero-option-switcher a[aria-current="page"]{background: var(--green); color: var(--white);}
.hv2 .hero-option-switcher a[aria-current="page"] b{color: var(--orange);}
@media (max-width: 720px){.hv2 .hero-option-switcher{grid-template-columns: repeat(3, 1fr);}
.hv2 .hero-option-switcher > span{display: none;}
.hv2 .hero-option-switcher a{min-height: 42px; padding: .45rem .3rem; font-size: .58rem;}}
.hv2 [id]{scroll-margin-top:140px}
.hv2 .site-header{position:fixed;z-index:60;box-shadow:0 2px 16px #25382d0a}
.hv2 .header-topbar{background:#334d3d}
.hv2 .header-topbar-inner{max-width:1500px;width:calc(100% - 64px);gap:24px;font-size:10px;letter-spacing:.03em}
.hv2 .utility-phone{display:flex;gap:14px;align-items:center}
.hv2 .utility-phone span{font-weight:700}
.hv2 .utility-links{display:flex;align-items:center;gap:25px}
.hv2 .utility-links>a,.hv2 .utility-trigger{padding:8px 0;color:#fff}
.hv2 .utility-trigger{background:none;border:0;font:inherit;cursor:pointer}
.hv2 .utility-trigger span{margin-left:6px}
.hv2 .utility-flight{position:relative}
.hv2 .utility-panel{display:none;position:absolute;right:0;top:100%;width:290px;background:#fff;color:var(--ink);padding:17px 22px;box-shadow:0 12px 30px #0002;font-size:12px;z-index:70}
.hv2 .utility-panel a{display:block;padding:10px 0}
.hv2 .utility-flight.open .utility-panel{display:block}
.hv2 .utility-panel a:hover{text-decoration:underline;text-underline-offset:4px}
.hv2 .header-main{position:relative;min-height:86px;padding:12px 32px;gap:24px;background:#f7eddf;backdrop-filter:none}
.hv2 .brand-logo{width:135px;max-height:62px}
.hv2 .site-nav{position:static;display:flex;flex:1;justify-content:center;padding:0;margin:0;color:var(--ink);font-size:12px;letter-spacing:0;max-height:none;width:auto;background:none;overflow:visible}
.hv2 .nav-core{gap:clamp(15px,1.8vw,30px)}
.hv2 .nav-group{position:static;border:0;width:auto}
.hv2 .nav-trigger{font-weight:650;gap:6px;padding:22px 0;white-space:nowrap}
.hv2 .nav-trigger span{font-size:12px}
.hv2 .nav-group.open .nav-trigger{color: var(--hv2-ember);border-bottom-color:var(--terracotta)}
.hv2 .header-actions{display:flex;align-items:center;gap:14px}
.hv2 .search-button{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;padding:8px;color:var(--ink);border:0;background:none;cursor:pointer}
.hv2 .search-button:hover{color: var(--hv2-ember)}
.hv2 .header-cta,.hv2 .mobile-nav-cta a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 19px;color:white;background:var(--green);font-size:11px;font-weight:750;white-space:nowrap;transition:background .2s}
.hv2 .header-cta:hover,.hv2 .mobile-nav-cta a:hover{background:var(--terracotta)}
.hv2 .mega-menu{top:100%;left:50%;right:auto;width:min(1220px,calc(100vw - 64px));padding:30px;gap:30px;grid-template-columns:1fr 1.25fr 1fr 1.2fr;transform:translateX(-50%);background:#fffdf9;border:1px solid #33313615;box-shadow:0 18px 36px #16271e20;max-height:calc(100dvh - 150px);overflow:auto}
.hv2 .mega-menu::before{display:none}
.hv2 .mega-column + .mega-column{padding-left:26px}
.hv2 .mega-column>p{font-size:10px;margin-bottom:14px;letter-spacing:.12em}
.hv2 .mega-column a{padding:9px 0;font-size:12px;line-height:1.4;color:#444b43}
.hv2 .mega-column a:hover{text-decoration:underline;text-underline-offset:4px;transform:none;color: var(--hv2-ember)}
.hv2 .nav-feature{background:#f3e8d7;overflow:hidden;align-self:stretch;display:flex;flex-direction:column}
.hv2 .nav-feature img{width:100%;height:132px;object-fit:cover}
.hv2 .nav-feature>div{padding:20px}
.hv2 .nav-feature p{font-family:var(--serif);font-size:26px;line-height:1.05;margin:0 0 10px}
.hv2 .nav-feature span{font-size:11px;line-height:1.7;color:#62635a;display:block}
.hv2 .nav-feature a{font-size:11px;font-weight:750;color:var(--green);display:block;margin-top:18px}
.hv2 .nav-feature a:hover{text-decoration:underline;text-underline-offset:4px}
.hv2 #festivals-menu,.hv2 #explore-menu,.hv2 #why-menu{grid-template-columns:1fr 1.2fr 1fr;width:min(960px,calc(100vw - 64px))}
.hv2 .nav-shade{position:fixed;inset:120px 0 0;z-index:50;background:#17251c48;display:none}
.hv2 .nav-shade.visible{display:block}
.hv2 .mobile-nav-heading,.hv2 .mobile-utilities,.hv2 .mobile-nav-cta{display:none}
.hv2 .menu-button{display:none}
.hv2 .search-dialog,.hv2 .cookie-dialog{border:0;background:#fffdf9;color:var(--ink);padding:36px;width:min(680px,calc(100% - 32px));max-height:85dvh;box-shadow:0 24px 100px #0003}
.hv2 .search-dialog::backdrop,.hv2 .cookie-dialog::backdrop{background:#17251c80}
.hv2 .search-top{display:flex;justify-content:space-between;align-items:center}
.hv2 .search-top .eyebrow{margin:0}
.hv2 .dialog-close{background:none;border:0;font-size:30px;cursor:pointer;min-width:44px;min-height:44px}
.hv2 .search-dialog h2{font-size:42px;margin:20px 0 28px}
.hv2 .search-dialog label{font-size:12px;display:block;margin-bottom:10px}
.hv2 .search-dialog input{width:100%;border:1px solid #7c8276;background:#fff;padding:15px;font:inherit;font-size:15px;color:var(--ink);border-radius:0}
.hv2 .search-count{font-size:11px;color:#5f665b;margin:20px 0 8px}
.hv2 .search-results{display:grid;gap:0}
.hv2 .search-results a{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #dedfd5;font-size:13px}
.hv2 .search-results a:hover{color: var(--hv2-ember)}
.hv2 .search-results small{font-size:10px;color:#74786e;margin-left:15px}
.hv2 .search-empty{font-size:14px}
.hv2 .cookie-dialog h2{font-size:36px}
.hv2 .cookie-dialog p{font-size:14px}
.hv2 .cookie-dialog .button{border:0;cursor:pointer}
.hv2 .site-footer{background:#263c2e;color:#f7eddf}
.hv2 .footer-main{max-width:1500px;margin:auto;padding:64px clamp(24px,5vw,80px) 0}
.hv2 .footer-brand-row{align-items:center;margin-bottom:45px;padding-bottom:40px;border-bottom:1px solid #ffffff28;gap:50px}
.hv2 .footer-brand{max-width:430px}
.hv2 .footer-brand p{font-size:12px;line-height:1.9;color:#c3cebf}
.hv2 .footer-logo .brand-logo{width:160px}
.hv2 .footer-contact-cta{min-width:330px}
.hv2 .footer-contact-cta p{font-family:var(--serif);font-size:28px;margin-bottom:14px;letter-spacing:-.02em;color:#f7eddf}
.hv2 .footer-contact-cta a{display:flex;justify-content:space-between;gap:35px;padding:15px 0;border-bottom:1px solid #c4cdb5;font-size:13px;color:#f7eddf}
.hv2 .footer-contact-cta a:hover{color:#e8b582}
.hv2 .footer-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr 1.25fr 1fr;gap:32px;padding:0 0 40px}
.hv2 .footer-section summary{font-weight:750;font-size:12px;list-style:none;margin-bottom:16px;color:#fff;cursor:pointer}
.hv2 .footer-section summary::-webkit-details-marker{display:none}
.hv2 .footer-section>div{display:flex;flex-direction:column;gap:10px}
.hv2 .footer-section a{font-size:11px;line-height:1.6;color:#c3cebf}
.hv2 .site-footer a:hover{color:#e8b582}
.hv2 .footer-section a:hover{text-decoration:underline;text-underline-offset:4px}
.hv2 .footer-services{display:grid;grid-template-columns:1fr auto;gap:40px;padding:30px 0;border-top:1px solid #ffffff28;border-bottom:1px solid #ffffff28}
.hv2 .footer-label{font-size:11px;color:#fff;font-weight:750;margin:0 0 14px}
.hv2 .flight-footer-links{display:flex;flex-wrap:wrap;gap:12px 23px;max-width:850px}
.hv2 .flight-footer-links a,.hv2 .footer-business a{font-size:11px;color:#c3cebf}
.hv2 .footer-business{display:flex;flex-direction:column;gap:10px;border-left:1px solid #ffffff28;padding-left:30px}
.hv2 .country-guides{border-bottom:1px solid #ffffff28}
.hv2 .country-guides summary{list-style:none;font-size:12px;cursor:pointer;padding:24px 0;display:flex;justify-content:space-between;align-items:center}
.hv2 .country-guides summary::-webkit-details-marker{display:none}
.hv2 .country-guides summary span{font-size:23px;line-height:1}
.hv2 .country-guides[open] summary span{transform:rotate(45deg)}
.hv2 .country-guides>div{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 30px;padding:0 0 26px}
.hv2 .country-guides a{font-size:11px;color:#c3cebf}
.hv2 .footer-offices-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:70px;padding:38px 0 30px}
.hv2 .office-card h3{font-size:12px;margin:0 0 16px;font-weight:750;color:#fff}
.hv2 .office-card address{font-size:11px;font-style:normal;line-height:1.9;color:#c3cebf}
.hv2 .office-card .office-more{display:block;margin-top:8px}
.hv2 .payment-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:265px}
.hv2 .payment-options img{width:100%;height:29px;object-fit:contain;background:#fff;border-radius:3px;padding:4px}
.hv2 .footer-social-row{border-top:1px solid #ffffff28;padding:25px 0;display:flex;justify-content:space-between;align-items:center}
.hv2 .footer-social-row p{font-size:11px;color:#c3cebf}
.hv2 .social-links{display:flex;gap:10px}
.hv2 .footer-bottom{background:#203326;border-top:1px solid #ffffff18;padding:25px clamp(24px,5vw,80px);font-size:10px;color:#b8c4b3}
.hv2 .footer-bottom>div{max-width:1340px;margin:0 auto;gap:22px;display:flex;align-items:center;flex-wrap:wrap}
.hv2 .footer-bottom>div>span{margin-left:auto}
.hv2 .footer-bottom .photo-credits,.hv2 .footer-bottom .concept-note{max-width:1340px;margin:20px auto 0;font-size:10px;color:#a6b59f}
.hv2 .cookie-preferences{color:inherit}
@media(min-width:1181px){.hv2 .footer-section>summary{pointer-events:none;cursor:default}
.hv2 .header-main{min-height:86px}}
@media(max-width:1180px){.hv2 .header-topbar-inner{width:calc(100% - 40px)}
.hv2 .header-main{padding:10px 24px;min-height:80px}
.hv2 .brand-logo{width:125px}
.hv2 .header-cta{padding:12px 16px}
.hv2 .menu-button{display:block;position:static;width:44px;height:44px;z-index:auto;margin:0;cursor:pointer}
.hv2 .site-nav{display:none;position:fixed;inset:0 0 0 auto;width:min(480px,100%);height:100dvh;max-height:100dvh;z-index:90;background:#fcf7ee;color:var(--ink);padding:0;overflow-y:auto;overscroll-behavior:contain;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;box-shadow:-20px 0 60px #17251c25}
.hv2 .site-nav.open{display:flex}
.hv2 .mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:25px}
.hv2 .nav-close{border:0;background:none;font-size:32px;color:var(--ink);width:44px;height:44px;cursor:pointer}
.hv2 .nav-core{display:block;padding:12px 24px}
.hv2 .nav-group{width:100%;border-bottom:1px solid var(--line)}
.hv2 .nav-trigger{display:flex;width:100%;justify-content:space-between;padding:18px 0;font-size:16px;letter-spacing:0;text-align:left}
.hv2 .nav-trigger span{font-size:17px}
.hv2 .mega-menu,.hv2 #festivals-menu,.hv2 #explore-menu,.hv2 #why-menu{position:static;inset:auto;display:none;width:100%;max-height:none;transform:none;box-shadow:none;border:0;padding:4px 0 22px;background:transparent;grid-template-columns:1fr;gap:23px;overflow:visible}
.hv2 .nav-group.open .mega-menu{display:grid}
.hv2 .mega-column+.mega-column{padding:0;border:0}
.hv2 .mega-column>p{font-size:10px;margin-bottom:4px}
.hv2 .mega-column a{font-size:13px;padding:10px 0}
.hv2 .nav-feature{display:none}
.hv2 .mobile-utilities{display:flex;flex-direction:column;padding:8px 24px 24px;gap:0}
.hv2 .mobile-utilities>a,.hv2 .mobile-utilities summary{font-size:12px;padding:13px 0;list-style:none;cursor:pointer}
.hv2 .mobile-utilities summary::after{content:'+';float:right}
.hv2 .mobile-utilities details[open] summary::after{content:'−'}
.hv2 .mobile-utilities details>div{padding:4px 0 10px 14px}
.hv2 .mobile-utilities details a{display:block;font-size:12px;padding:10px 0}
.hv2 .mobile-nav-cta{display:block;position:sticky;bottom:0;padding:14px 24px;background:#fcf7ee;border-top:1px solid var(--line);margin-top:auto;z-index:2}
.hv2 .mobile-nav-cta a{font-size:13px;padding:17px 20px}
.hv2 .nav-shade{inset:0}
.hv2 .site-header:has(.site-nav.open){z-index:70}
.hv2 .footer-grid{gap:24px;grid-template-columns:repeat(3,1fr)}
.hv2 .footer-offices-grid{gap:30px}
.hv2 .footer-contact-cta{min-width:290px}}
@media(max-width:720px){.hv2 [id]{scroll-margin-top:112px}
.hv2 .header-topbar{min-height:29px}
.hv2 .header-topbar-inner{min-height:29px;justify-content:center;width:calc(100% - 32px);font-size:9px}
.hv2 .utility-links{display:none}
.hv2 .utility-phone{gap:10px}
.hv2 .header-main{padding:8px 16px;min-height:74px;gap:10px}
.hv2 .brand-logo{width:109px;max-height:52px}
.hv2 .header-actions{gap:4px}
.hv2 .header-cta{font-size:9px;padding:12px 10px;gap:6px}
.hv2 .header-cta span{display:none}
.hv2 .search-button{min-width:34px;padding:6px}
.hv2 .menu-button{width:36px;padding:6px}
.hv2 .menu-button>span:not(.sr-only){width:22px}
.hv2 .search-dialog{padding:24px}
.hv2 .search-dialog h2{font-size:35px}
.hv2 .search-results small{max-width:80px;text-align:right}
.hv2 .footer-main{padding:42px 24px 0}
.hv2 .footer-brand-row{display:block;margin-bottom:18px;padding-bottom:28px}
.hv2 .footer-brand{max-width:none}
.hv2 .footer-brand p{font-size:11px;max-width:330px}
.hv2 .footer-contact-cta{min-width:0;margin-top:30px}
.hv2 .footer-contact-cta p{font-size:27px}
.hv2 .footer-contact-cta a{font-size:12px}
.hv2 .footer-grid{display:block;padding:0 0 20px}
.hv2 .footer-section{border-bottom:1px solid #ffffff28}
.hv2 .footer-section summary{display:flex;justify-content:space-between;padding:20px 0;margin:0;font-size:13px}
.hv2 .footer-section summary::after{content:'+';font-size:17px;line-height:1}
.hv2 .footer-section[open] summary::after{content:'−'}
.hv2 .footer-section>div{gap:0;padding:0 0 16px}
.hv2 .footer-section a{padding:9px 0;font-size:12px}
.hv2 .footer-services{grid-template-columns:1fr;padding:26px 0;gap:24px}
.hv2 .flight-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px}
.hv2 .footer-business{border:0;padding:0;flex-direction:row;flex-wrap:wrap;gap:16px 25px}
.hv2 .country-guides summary{font-size:11px;gap:15px}
.hv2 .country-guides>div{grid-template-columns:1fr 1fr;gap:18px}
.hv2 .footer-offices-grid{grid-template-columns:1fr;gap:28px;padding:30px 0}
.hv2 .office-card address{font-size:12px}
.hv2 .footer-social-row{gap:16px}
.hv2 .social-links{gap:8px}
.hv2 .footer-bottom>div{gap:16px 20px}
.hv2 .footer-bottom>div>span{margin:0;width:100%;padding-top:8px}
.hv2 .hero-copy{padding-top:9rem}}
@media(prefers-reduced-motion:reduce){.hv2, .hv2 *,.hv2::before, .hv2 *::before,.hv2::after, .hv2 *::after{scroll-behavior:auto!important;transition:none!important}}
.hv2 .footer-brand-row{padding-top:0}
.hv2 .footer-brand{display:block}
.hv2 .footer-brand p{margin-top:18px}
.hv2 .footer-contact-cta p{text-transform:none;font-weight:400;line-height:1.15}
.hv2 .footer-contact-cta a{font-family:var(--sans)}
.hv2 .footer-grid{border-bottom:0}
.hv2 .footer-logo{background:#f7eddf;padding:9px 14px;display:inline-flex}
.hv2 .footer-logo .brand-logo{width:132px}
.hv2 #flights-menu{width:min(650px,calc(100vw - 64px));grid-template-columns:1fr 1fr}
.hv2 .utility-links .utility-guide{font-weight:750;color:#fff;border-bottom:1px solid #e2c7a5;padding:5px 0}
.hv2 .utility-guide span{margin-left:8px}
.hv2 .mobile-utilities>.utility-guide{color: var(--hv2-ember);font-weight:750}
@media(max-width:1180px){.hv2 #flights-menu{width:100%;grid-template-columns:1fr}}
.hv2{--hv2-ember:#B8462B}
.hv2 .travel-mode-card:first-child > :is(img,picture > img){object-position:50% center} /* replacement photo 07: couple spans the width */
.hv2 .mice-image img{object-position:30% center} /* replacement photo 32: keep the group (left) in portrait boxes */
.hv2 .people-row > a small{color:var(--ink)} /* text on the orange tile */
.hv2 .intro-section .intro-body p:not(.lead){color:#fff} /* body text on terracotta: full white = 4.3:1 like our buttons */
/* ---- site integration (not from the design) ---- */
/* neutralise the site's bare-element globals (_Layout p/h/a:hover, Bootstrap reboot + .lead) inside the design.
 :where() = zero specificity: beats the globals (this file loads after them), loses to every design rule. */
:where(.hv2) p{color:revert;font-size:revert;line-height:revert;margin:revert}
:where(.hv2) small{font-size:revert;line-height:revert}
:where(.hv2) :is(h1,h2,h3,h4,h5,h6){line-height:revert;color:revert}
:where(.hv2) .lead{font-weight:revert;font-size:revert}
:where(.hv2) a:hover{color:inherit;text-decoration:none}
.hv2 picture{display:contents}
.hv2 .site-header{position:sticky;top:-34px} /* in-flow on every page; the top bar scrolls away and a 68px bar stays pinned, */
.hv2 .header-topbar{height:34px;min-height:0} /* same geometry as the live #da-header, which page stickies (top:68-88px) are built around */
.hv2 .header-main{min-height:68px;padding-top:0;padding-bottom:0}
@media(min-width:1181px){ .hv2 .brand-logo{max-height:50px;width:auto} .hv2 .nav-trigger{padding:24px 0} }
@media(max-width:720px){ .hv2 .site-header{top:-29px} .hv2 .header-topbar,.hv2 .header-topbar-inner{height:29px;min-height:0} }
.hv2-home .hero{height:auto;min-height:0}
.hv2-home h1.hv2-h1-live{font-size:clamp(2.6rem,4.1vw,4.6rem);line-height:1.04}
.hv2-home h1.hv2-h1-live span{white-space:normal} /* design spans are nowrap (short headline); the live H1 is longer */
.hv2-home h1.hv2-h1-live span,.hv2-home h1.hv2-h1-live em{display:inline}
/* mobile drawer: the design's second drawer pass is cream, but the first pass left triggers white */
@media(max-width:1180px){
 .hv2 .nav-trigger,.hv2 .nav-link{color:var(--ink)}
 /* design hides #festivals-menu/#explore-menu/#why-menu by ID on mobile, which outranks its own .open rule;
 :is(.mega-menu,#_) carries ID weight so any opened group shows */
 .hv2 .nav-group.open > :is(.mega-menu,#hv2-open){display:grid}
}
body:has(.hv2 .site-nav.open) .da-wa-float{display:none}
/* FullContact view component (css-prefix="hv2f") inside the design's .enquiry-form card */
.hv2 .full-contact-form{display:flex;flex-direction:column;gap:14px}
.hv2 .full-contact-form .form-control{margin:0}
.hv2 .hv2f-phone-row{margin:0!important}
.hv2 .enquiry-form label.hv2f-cta-cb{display:flex;gap:10px;font-size:.84rem;font-weight:500;letter-spacing:0;text-transform:none;line-height:1.45;cursor:pointer}
.hv2 .enquiry-form .hv2f-cta-cb input{width:18px;height:18px;padding:0;margin:2px 0 0;flex:0 0 18px;accent-color:var(--terracotta)}
.hv2 .hv2f-cta-note{margin:0!important;color:rgba(51,49,54,.7);font-size:.74rem!important}
.hv2 .hv2f-validator{display:block;margin-bottom:12px;color:#a3321b;font-weight:700;font-size:.85rem}
.hv2 .hv2f-contact-submit{width:100%;border:0;padding:1rem 1.2rem;background:var(--orange);color:var(--ink);font:inherit;font-size:.86rem;font-weight:800;letter-spacing:.03em;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.hv2 .hv2f-contact-submit:hover{background:var(--terracotta);color:var(--white);transform:translateY(-2px)}
.hv2 .hv2f-contact-submit:disabled{opacity:.7;transform:none;cursor:default}
.hv2 .hv2-sub-status.is-error{color:#ffd9cf}
@media(max-width:720px){
 .hv2-home .hero{grid-template-columns:minmax(0,1fr)}
 .hv2 .header-cta{font-size:11px;padding:11px 10px;letter-spacing:0;white-space:nowrap} /* design: 9px */
 .hv2 .header-topbar-inner{font-size:11px}
 .hv2 .header-main{gap:6px;min-height:68px;padding-top:0;padding-bottom:0}
 .hv2 .brand-logo{width:100px}
 .hv2-home .hero-copy{padding-top:2.75rem;min-width:0}
 .hv2-home h1.hv2-h1-live{font-size:clamp(2.05rem,9.6vw,3.1rem);line-height:1.04}
 .hv2-home h1.hv2-h1-live em{display:block}
}
