:root{--navy:#102338;--deep:#091725;--ivory:#f8f5ef;--paper:#fffdf9;--gold:#b9955a;--verm:#b84b35;--ink:#18202a;--muted:#6d7478;--line:#10233829;--serif:"Cormorant Garamond","Noto Serif JP",serif;--jp:"Noto Serif JP",serif;--sans:"Inter",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans),var(--jp);line-height:1.8}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1160px,calc(100% - 80px));margin:auto}.section{padding:clamp(90px,11vw,160px) 0}.ivory{background:var(--ivory)}.navy{background:var(--navy);color:#fff}.eyebrow{margin:0 0 20px;color:var(--verm);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.gold{color:#d4ad70}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:10px;left:18px;z-index:100;padding:8px 14px;background:var(--gold);color:var(--navy);transform:translateY(-150%)}.skip-link:focus{transform:none}h1,h2,h3{font-family:var(--jp);font-weight:500;letter-spacing:.04em;line-height:1.35}h1{font-size:clamp(38px,5.5vw,78px);margin:0 0 28px}h2{font-size:clamp(34px,4.5vw,61px);margin:0 0 24px}h3{font-size:23px;margin:14px 0 8px}em{color:var(--verm);font-style:normal}.lead{font-family:var(--jp);font-size:clamp(17px,2vw,22px);line-height:2.05}.light-text{color:#fffb}.center{text-align:center}.intro-text{max-width:600px;margin:auto;color:var(--muted)}.site-header{position:fixed;z-index:10;top:0;width:100%;color:#fff;transition:.35s}.site-header.is-scrolled{background:#102338f7;box-shadow:0 8px 24px #0002}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px}.brand{display:flex;align-items:center;gap:12px;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-family:var(--serif);font-size:22px;line-height:1}.brand em{color:var(--gold);font-family:var(--serif)}.site-nav{display:flex;align-items:center;gap:22px;font-size:11px;letter-spacing:.07em}.site-nav a:not(.nav-cta){position:relative}.site-nav a:not(.nav-cta)::after{position:absolute;right:0;bottom:-7px;left:0;height:1px;background:var(--gold);content:"";transform:scaleX(0);transition:.3s}.site-nav a:hover::after,.site-nav a:focus-visible::after{transform:scaleX(1)}.nav-cta{border:1px solid #fff8;padding:8px 14px}.language-switch{display:flex;gap:4px;margin-left:5px}.language-switch button{border:0;background:transparent;color:#fff9;padding:3px 5px;font-size:10px}.language-switch button[aria-pressed=true]{color:var(--gold);font-weight:600}.menu-toggle{display:none;background:none;border:0;color:#fff}.menu-toggle i{display:block;width:27px;height:1px;margin:6px;background:currentColor}.hero{position:relative;display:flex;align-items:center;min-height:min(880px,88vh);overflow:hidden;background:var(--navy);color:#fff}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-placeholder{position:absolute;inset:0;display:grid;place-items:center;opacity:0;background:linear-gradient(125deg,#4b5962,#9e8c76 44%,#192d40);transition:opacity 1.7s}.hero-placeholder.second{background:linear-gradient(125deg,#233e52,#b9a489 52%,#6e4035)}.hero-placeholder.third{background:linear-gradient(125deg,#8c6f53,#e1d7c6 45%,#203a4b)}.hero-placeholder.is-active{opacity:1}.hero-placeholder span{position:absolute;right:7%;bottom:10%;color:#fff9;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.hero-overlay{background:linear-gradient(90deg,#06131ed9,#06131e57 68%,#06131e1f)}.hero-content{position:relative;padding-top:80px}.hero-copy{max-width:600px;color:#fffd;margin-bottom:34px;font-family:var(--jp);font-size:clamp(17px,1.8vw,22px);line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;justify-content:space-between;align-items:center;min-width:190px;padding:14px 19px;border:1px solid transparent;font-size:12px;letter-spacing:.08em;transition:.3s}.button:hover,.button:focus-visible{transform:translateY(-3px)}.button b{font-size:18px}.light{background:#fff;color:var(--navy)}.light:hover,.light:focus-visible{background:var(--gold);color:#fff}.outline-light{border-color:#ffb;color:#fff}.outline-light:hover,.outline-light:focus-visible{background:#fff;color:var(--navy)}.dark{background:var(--navy);color:#fff}.dark:hover,.dark:focus-visible{background:var(--verm)}.hero-scroll{position:absolute;right:30px;bottom:35px;color:#fff9;font-size:10px;letter-spacing:.18em;transform:rotate(90deg)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:65px}.feature-card{border-top:1px solid var(--line);padding:24px 10px 10px}.line-icon,.support-icon{color:var(--gold);font-size:27px}.feature-card p,.location-grid p{color:var(--muted);font-size:14px}.section-heading,.split{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:end}.section-heading{margin-bottom:65px}.section-heading>div+div>p{color:var(--muted);font-family:var(--jp);font-size:15px}.photo-grid{display:grid;grid-template-columns:1fr .8fr 1fr;gap:20px;align-items:end}.photo-grid figure{margin:0}.photo-grid figure:nth-child(2){margin-bottom:70px}.photo-grid img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;filter:saturate(.8)}.photo-grid figure:nth-child(2) img{aspect-ratio:4/3}.photo-grid figcaption{margin-top:10px;color:var(--muted);font-size:10px;letter-spacing:.1em}.text-link{border:0;border-bottom:1px solid var(--gold);background:none;color:inherit;padding:0 0 4px;font-size:12px;letter-spacing:.08em}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:65px}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps span{color:var(--gold);font-size:11px;letter-spacing:.15em}.steps p{color:var(--muted);font-size:13px}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px;border-top:1px solid #fff4;padding-top:22px}.support-grid p{color:#fff9;font-size:12px;line-height:1.5}.location-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px}.location-image{height:290px;background:linear-gradient(130deg,#19394b,#ae876d 50%,#e7d7b8)}.location-image.modern{background:linear-gradient(140deg,#b86846,#e4c69a 48%,#233e4a)}.location-image.seasonal{background:linear-gradient(135deg,#597c70,#d6c8a8 48%,#4a3d36)}.location-grid h3{margin-bottom:3px}.note{margin-top:38px;color:var(--muted);font-size:12px;text-align:center}.safety{align-items:center}.pricing{align-items:center}.price-card{padding:42px;background:#fff;box-shadow:0 25px 70px #1023381a}.card-kicker{color:var(--verm);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.price{margin:16px 0;color:var(--navy);font:68px/1 var(--serif)}.price span{color:var(--gold);font-size:31px}.price-card>p:not(.card-kicker){margin:2px 0;color:var(--muted);font-size:13px}.price-card hr{border:0;border-top:1px solid var(--line);margin:25px 0}.price-card ul{margin:0 0 29px;padding:0;list-style:none;color:var(--muted);font-size:13px}.price-card li{border-bottom:1px solid #10233814;padding:6px 0}.price-card li::before{content:"—";color:var(--gold);margin-right:10px}.review-coming{max-width:700px;text-align:center}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;cursor:pointer;font-family:var(--jp);list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary b{color:var(--verm);font-size:22px;font-weight:300}.faq details p{color:var(--muted);font-size:14px}.booking-cta{padding:125px 0;background:var(--verm);color:#fff}.booking-cta p:not(.eyebrow){font-family:var(--jp);font-size:18px}.booking-section{background:#fff}.form-wrap{max-width:900px}.form-wrap>div:first-child{text-align:center;margin-bottom:55px}.form-wrap>div:first-child p:last-child{color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.05em}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:12px;color:var(--ink);outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b9955a33}.form-error{margin:18px 0;color:var(--verm);font-size:13px}.form-note{color:var(--muted);font-size:12px}.success-message{margin-top:25px;border:1px solid var(--gold);padding:25px;background:var(--ivory)}.success-message h3{margin-top:0}.success-message p{margin-bottom:0}.footer{padding:75px 0 24px;background:var(--deep);color:#fff}.footer-inner{display:flex;justify-content:space-between;gap:60px}.footer p{color:#fff9;font-size:13px}.footer nav{display:flex;gap:28px;color:#fffb;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #fff2;margin-top:65px;padding-top:20px;color:#fff6;font-size:10px}.toast{position:fixed;right:20px;bottom:20px;z-index:50;max-width:320px;padding:14px 18px;background:var(--navy);color:#fff;box-shadow:0 10px 30px #0003;font-size:13px;opacity:0;pointer-events:none;transform:translateY(15px);transition:.25s}.toast.is-visible{opacity:1;transform:none}
@media(max-width:1000px){.site-nav{gap:12px;font-size:10px}.feature-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.container{width:calc(100% - 40px)}.header-inner{min-height:72px}.menu-toggle{display:block;position:relative;z-index:2}.site-nav{position:absolute;top:0;right:0;left:0;display:flex;align-items:stretch;flex-direction:column;gap:0;padding:85px 30px 28px;background:var(--navy);opacity:0;pointer-events:none;transform:translateY(-15px);transition:.3s}.site-nav.is-open{opacity:1;pointer-events:auto;transform:none}.site-nav a{padding:12px 0;border-bottom:1px solid #fff2}.nav-cta{text-align:center;margin-top:18px}.language-switch{margin:18px 0 0;justify-content:center}.hero{min-height:760px}.hero-content{padding-top:60px}.hero-scroll{right:20px}.section-heading,.split{grid-template-columns:1fr;gap:35px}.feature-grid,.steps,.location-grid{grid-template-columns:1fr 1fr}.section-heading{margin-bottom:45px}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid figure:nth-child(2){margin-bottom:0}.photo-grid figure:last-child{grid-column:1/-1;max-width:58%;margin:auto}.photo-grid img{aspect-ratio:4/5}.support-grid{grid-template-columns:1fr}.pricing{align-items:stretch}.price-card{padding:30px}.price{font-size:58px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.footer-inner,.footer-bottom{display:block}.footer nav{margin-top:35px;flex-wrap:wrap}.footer-bottom span{display:block;margin-top:8px}}@media(max-width:480px){.hero-actions,.hero-actions .button{width:100%}.feature-grid,.steps,.location-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr}.photo-grid figure:last-child{grid-column:auto;max-width:none}.booking-cta{padding:100px 0}.form-grid{gap:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
html,body{max-width:100%;overflow-x:hidden}section{scroll-margin-top:var(--header-height,88px)}.hero-facts{display:flex;gap:30px;margin-top:42px}.hero-facts span{display:flex;flex-direction:column;border-left:1px solid #fff6;padding-left:14px}.hero-facts strong{font:30px/1 var(--serif);color:#fff}.hero-facts small{margin-top:4px;color:#fff9;font-size:10px;letter-spacing:.08em}.trust-strip{background:var(--navy);color:#fff;padding:18px 0;border-top:1px solid #fff2}.trust-items{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.trust-items>span{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff9;font-size:11px;letter-spacing:.06em;text-align:center}.trust-items i{color:var(--gold);font-style:normal;font-size:20px}.footer-instagram{border:0;background:none;color:#fffb;padding:0;font:inherit;font-size:12px;cursor:pointer}.footer-instagram:hover,.footer-instagram:focus-visible{color:var(--gold)}input,select,textarea{font-size:16px}@media(max-width:800px){.hero-facts{gap:14px;margin-top:34px}.hero-facts strong{font-size:25px}.hero-facts small{font-size:9px}.trust-items{grid-template-columns:1fr 1fr;gap:12px}.trust-strip{padding:16px 0}.trust-items>span{font-size:10px}.footer-instagram{text-align:left}}