html{scrollbar-gutter:stable;scroll-padding-top:120px}
.header{position:sticky;top:0;background:#fffffff5;backdrop-filter:blur(14px)}
.header-motto{font-size:.75rem;letter-spacing:.17em;color:#28696e;margin-right:auto;margin-left:40px}
.languages{position:relative;display:block;padding:0;border:0;flex-shrink:0}
.languages summary{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 14px;border:1px solid #28696e70;border-radius:6px;background:#eef3f1;color:#20575b;font:500 .95rem Arial,SimSun,sans-serif;list-style:none}
.languages summary::-webkit-details-marker{display:none}
.language-globe{width:20px;height:20px}.language-chevron{width:16px;height:16px;margin-left:4px}
.languages[open] .language-chevron{transform:rotate(180deg)}
.languages summary:hover,.languages[open] summary{background:#e0eae6;border-color:#28696e}
.language-options{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;padding:6px;background:white;border:1px solid #d7e0dc;border-radius:6px;box-shadow:0 12px 32px #203c3824;z-index:30}
.languages .language-options a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;padding:10px 12px;border:0;border-radius:3px;color:#20575b;font:400 .95rem Arial,SimSun,sans-serif}
.languages .language-options a:hover,.languages .language-options a[aria-current]{background:#eef3f1;color:#622472}
.languages summary:focus-visible,.languages .language-options a:focus-visible{outline:2px solid #622472;outline-offset:3px}
.menu-bottom .language-options{top:auto;bottom:calc(100% + 8px)}
@media(max-width:760px){.languages summary{padding:0 9px;gap:6px;font-size:.85rem}.language-globe{width:17px;height:17px}.language-chevron{width:12px;height:12px;margin-left:0}}
@media(max-width:360px){.header .language-globe{display:none}}
.menu,.menu-close{display:flex;align-items:center;gap:23px;min-height:48px;padding:6px 0;color:#28696e}
.menu-label{font-family:ExperantoSerif,Georgia,SimSun,serif;font-size:1.65rem}
.menu-lines{display:block;width:39px}
.menu-lines i{display:block;height:1px;background:currentColor;margin:8px 0;transition:transform .35s,width .35s;width:39px}
.menu-lines i:last-child{width:27px;margin-left:auto}
.menu:hover .menu-lines i:last-child{width:39px}
.editorial-menu{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;margin:0;border:0;padding:32px 5%;background:#28696e;color:#fff;overflow-y:auto;overscroll-behavior:contain;opacity:0;transform:translateY(-22px);transition:opacity .4s,transform .5s cubic-bezier(.22,1,.36,1),display .5s allow-discrete,overlay .5s allow-discrete}
.editorial-menu[open]{display:flex;flex-direction:column;opacity:1;transform:translateY(0)}
.editorial-menu::backdrop{background:#28696e;opacity:0;transition:opacity .4s,display .5s allow-discrete,overlay .5s allow-discrete}
.editorial-menu[open]::backdrop{opacity:1}
@starting-style{.editorial-menu[open]{opacity:0;transform:translateY(-22px)}.editorial-menu[open]::backdrop{opacity:0}}
.menu-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid #ffffff40}
/* Show only the original lettering (rows 327–440 of the 800×465 logo). */
.menu-wordmark{display:block;position:relative;width:220px;aspect-ratio:800/113;overflow:hidden;flex-shrink:0}
.menu-wordmark img{position:absolute;left:0;bottom:-22.124%;width:100%;height:auto;max-width:none;filter:brightness(0) invert(1)}

.menu-close{color:#fff;font-size:1rem;gap:23px}
.menu-close i{display:block;position:relative;width:35px;height:35px;transition:transform .4s}
.menu-close i:before,.menu-close i:after{content:'';position:absolute;top:17px;left:0;width:35px;height:1px;background:currentColor;transform:rotate(45deg)}
.menu-close i:after{transform:rotate(-45deg)}
.menu-close:hover i{transform:rotate(90deg)}
.menu-body{display:grid;grid-template-columns:.7fr 1.5fr;gap:9%;align-items:center;flex:1;padding:45px 0}
.menu-image{margin:0;min-width:0;align-self:center}
.menu-image img{width:100%;height:clamp(220px,46vh,540px);object-fit:cover}
.menu-image figcaption{font:italic 1.6rem ExperantoSerif,Georgia,SimSun,serif;padding-top:20px}
.menu-image figcaption span{display:block;font:.7rem Arial,sans-serif;letter-spacing:.18em;margin-top:15px}
.menu-directory{min-width:0}.menu-directory>.eyebrow{color:#d0e4e3;margin-bottom:22px}
.menu-directory nav{display:flex;flex-direction:column}
.menu-directory nav>a{display:flex;align-items:baseline;gap:20px;padding:14px 0;border-bottom:1px solid #ffffff36;transition:color .3s,padding .4s;opacity:0;transform:translateY(20px)}
.editorial-menu[open] nav>a{opacity:1;transform:none;transition:opacity .55s calc(var(--order)*65ms + 100ms),transform .65s calc(var(--order)*65ms + 100ms),color .3s,padding .4s}
@starting-style{.editorial-menu[open] nav>a{opacity:0;transform:translateY(20px)}}
.menu-title{font:clamp(2.2rem,4.9vw,5.8rem)/1.12 ExperantoSerif,Georgia,SimSun,serif;letter-spacing:-.045em}
.menu-number{font-size:.75rem;letter-spacing:.1em;color:#cfdddd;flex-shrink:0}
.menu-arrow{font-size:2rem;margin-left:auto;transition:transform .35s}
.menu-directory nav>a:hover,.menu-directory nav>a:focus-visible{color:#d5dfc9;padding-left:12px}
.menu-directory nav>a:hover .menu-title{font-style:italic}
.menu-directory nav>a:hover .menu-arrow{transform:translate(4px,-4px)}
.menu-directory [aria-current=page] .menu-number:after{content:' /';color:#fff}
.menu-bottom{border-top:1px solid #ffffff40;padding-top:22px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.875rem}
.menu-bottom>span{font-size:.7rem;letter-spacing:.12em}
.editorial-menu a:focus-visible,.editorial-menu button:focus-visible{outline-color:white}.editorial-menu .language-options a:focus-visible{outline-color:#622472}
.photo-frame{overflow:hidden;width:100%;min-width:0;line-height:0}
.photo-frame img{transition:transform 1.15s cubic-bezier(.2,.65,.25,1),filter .5s;will-change:auto}
.story>.photo-frame{height:600px}.story>.photo-frame img{height:100%}
.hero{overflow:hidden}.hero-photo{animation:hero-zoom 2.4s cubic-bezier(.2,.65,.25,1) both}
@keyframes hero-zoom{from{transform:scale(1.065)}to{transform:scale(1)}}
.button,.text-link{transition:background .3s,color .3s,border-color .3s,box-shadow .3s}
.button>span,.text-link>span,.card-meta>span:last-child{transition:transform .35s}
.button:hover>span,.text-link:hover>span,.experience-card:hover .card-meta>span:last-child{transform:translate(4px,-4px)}
.text-link:hover{color:#622472}.itineraries .text-link:hover{color:#dde7d1}
.experience-card h3{transition:color .3s}.experience-card:hover h3{color:#622472}
.destination-list li{transition:padding .35s,color .35s}
.editorial-footer{padding:80px 6.3% 0;background:#342f2a;color:#fff}
.footer-intro{display:flex;align-items:end;justify-content:space-between;gap:55px;padding-bottom:60px;border-bottom:1px solid #ffffff30}
.footer-intro .eyebrow{color:#ccccc3}.footer-intro h2{font-size:clamp(2.5rem,4.2vw,5rem)}
.footer-inquiry{display:flex;align-items:center;gap:30px;font-size:1rem;padding:13px 0;border-bottom:1px solid #ffffff75;flex-shrink:0}
.footer-inquiry>span:last-child{font-size:2.7rem;line-height:1;transition:transform .35s}
.footer-inquiry:hover>span:last-child{transform:translate(6px,-6px)}
.footer-columns{display:grid;grid-template-columns:1.5fr .8fr 1fr 1.05fr;gap:6%;padding:60px 0 50px}
.footer-columns h3{font-family:Arial,SimSun,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#ccccc3;margin-bottom:25px}
.footer-columns a{display:table;max-width:100%;font-size:.95rem;margin:10px 0;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;transition:text-decoration-color .3s,color .3s}
.footer-columns a:hover{text-decoration-color:#bed1bf;color:#bed1bf}
.footer-about img{filter:brightness(0) invert(1);margin-bottom:20px}
.footer-about p,.footer-connect p{font-size:.95rem;line-height:1.8;color:#e1e0da;margin-bottom:20px}
.footer-about>a{font-size:.875rem;overflow-wrap:anywhere}.footer-connect small{display:block;font-size:.75rem;color:#c2bfb6;margin-top:17px}


.footer-bottom{border-top:1px solid #ffffff30;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 0;font-size:.75rem;letter-spacing:.04em;color:#d1cec8}
.footer-bottom button{font-size:inherit;text-decoration:underline;text-underline-offset:4px;padding:8px 0}.footer-bottom a{font-size:.875rem}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.photo-frame:hover img,.experience-card:hover .photo-frame img,.experience-card:focus-visible .photo-frame img{transform:scale(1.065);filter:brightness(.97)}}
@media(max-width:1100px){.header-motto{margin-left:15px;font-size:.65rem}.menu-body{gap:6%;grid-template-columns:.65fr 1.4fr}.menu-bottom>span{display:none}.footer-columns{grid-template-columns:1fr 1fr;gap:35px 12%}.footer-intro{align-items:start;flex-direction:column;gap:30px}.story>.photo-frame{height:500px}}
@media(max-width:760px){.header-motto{display:none}.menu-label{font-size:1.3rem}.menu{gap:12px}.menu-lines,.menu-lines i{width:30px}.menu-lines i:last-child{width:21px}.menu:hover .menu-lines i:last-child{width:30px}.header-right{gap:22px}.header .brand>span{display:none}.header .languages{font-size:.9rem}.editorial-menu{padding:22px 7%}.menu-wordmark{width:155px}.menu-top{padding-bottom:18px}.menu-body{grid-template-columns:1fr;padding:35px 0}.menu-image{display:none}.menu-title{font-size:clamp(2.1rem,9vw,4rem);letter-spacing:-.035em}.menu-directory nav>a{gap:14px;padding:19px 0}.menu-directory .eyebrow{font-size:.7rem}.menu-number{font-size:.7rem}.menu-arrow{font-size:1.6rem}.menu-bottom{flex-wrap:wrap;gap:18px;padding-bottom:15px;font-size:.8rem}.menu-bottom .languages{font-size:.9rem}.menu-close{font-size:.875rem;gap:12px}.story>.photo-frame{height:390px}.editorial-footer{padding:60px 7% 0}.footer-intro{padding-bottom:38px}.footer-intro h2{font-size:2.6rem}.footer-columns{grid-template-columns:1fr 1fr;gap:36px 25px;padding:38px 0 25px}.footer-about{grid-column:1/-1}.footer-connect{grid-column:1/-1}.footer-columns a{font-size:.875rem}.footer-columns h3{font-size:.7rem;margin-bottom:20px}.footer-connect>a{display:inline-block;margin-right:18px}.footer-bottom{flex-wrap:wrap;gap:10px 18px;padding:20px 0}.footer-bottom>a{margin-left:auto}.footer-bottom button{font-size:.75rem}.footer-bottom>span{flex-basis:100%}}
@media(max-width:360px){.header-right{gap:14px}.menu{gap:8px}.header{padding-inline:5%}.menu-label{font-size:1.15rem}.menu-lines,.menu-lines i{width:25px}.menu-lines i:last-child{width:18px}.header .brand img{width:87px}.menu-title{font-size:2.05rem}.menu-number{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo{animation:none}.photo-frame img{transform:none!important}.editorial-menu,.editorial-menu::backdrop,.editorial-menu[open] nav>a{transition:none!important;transform:none}}
.header .brand{flex-direction:column;gap:0}.header .brand img{width:112px;height:65px}.header .brand>span{display:block;font-size:16px;line-height:1;border:0;padding:0;margin-top:1px}
.menu-bottom{justify-content:flex-end}.hero-bottom{justify-content:space-between}
.intro .section-label{margin:0;gap:35px;align-items:center}.intro .section-label img{width:100%;height:330px;object-fit:contain;opacity:.85}
.editorial-footer{padding-top:25px}.footer-columns{grid-template-columns:1fr 1fr;padding:40px 0;max-width:1100px;margin:auto}.footer-about img{width:150px;height:auto;margin-bottom:24px}
.closing .button{justify-content:center;min-width:260px}.closing .button span{flex:none}
.approach{background:#f5f6f4}.approach>h2{margin-bottom:55px}.approach>.values{padding:0}
.icons{background:#fff}.icons>.eyebrow{color:#28696e}.icons-copy{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:35px;color:#676661}.icons-copy ul{margin:0;padding-left:20px}.icons-copy li{margin-bottom:12px}
.occasions-copy>p{margin:30px 0;max-width:800px}.itineraries .button{margin-top:10px}
.experience-subtitle{color:#28696e!important;letter-spacing:.025em}
html[lang=en] .hero-content{max-width:1300px}html[lang=en] .hero h1{font-size:clamp(3rem,4.6vw,5.4rem)}
@media(max-width:760px){.header{padding-inline:4%;gap:10px}.header-right{gap:15px}.header .languages{font-size:.8rem;gap:5px}.header .brand img{width:88px;height:51px}.header .brand>span{font-size:13px}.menu-label{font-size:1.12rem}.menu{gap:8px}.menu-lines,.menu-lines i{width:24px}.intro .section-label{margin-bottom:40px}.intro .section-label img{width:110px;height:145px}.icons-copy{grid-template-columns:1fr;gap:25px}.footer-columns{grid-template-columns:1fr 1fr}.footer-about{grid-column:auto}.approach>h2{margin-bottom:36px}}

/* Preserve the supplied portrait’s full square framing on every screen. */
.story>.photo-frame{height:auto;aspect-ratio:1}
.story>.photo-frame img{transform-origin:center top}
.hero-bottom{justify-content:flex-end}.hero-bottom>span:first-child{display:block}
.destination-list{list-style:none;margin:0;padding:10px 0 0}
.destination-list li{transition:none}
.practical{max-width:none;background:linear-gradient(#fffE,#fffE),url('/assets/hero.jpg') center 58%/cover no-repeat}
.practical-inner{max-width:974px;margin:auto}
.practical .eyebrow{color:#28696e}.practical details{border-color:#bac5c1}
.practical details p{color:#474d49}
.experience-detail.icons{background:#f5f6f4}
.experience-detail.icons img{height:clamp(440px,42vw,620px)}
@media(max-width:760px){.destination-list{margin-top:38px}.experience-detail.icons img{height:380px}}
.occasions-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8%}
.occasions-grid>.photo-frame img{width:100%;height:clamp(420px,43vw,600px);object-fit:cover}
@media(max-width:760px){.occasions-grid{grid-template-columns:1fr;gap:40px}.occasions-grid>.photo-frame img{height:auto;aspect-ratio:4/5}.occasions-copy h2{font-size:2.8rem}}
