/* Forest & Shore — precision interface, native system typography. */
:root{--ui-sans:-apple-system,BlinkMacSystemFont,'SF Pro Text','PingFang SC','Helvetica Neue',sans-serif;--ui-serif:-apple-system,BlinkMacSystemFont,'SF Pro Display','PingFang SC',sans-serif;--ui-paper:#f5f6f3;--ui-green:#213b31;--ui-muted:#66746c;--ui-line:#253d301c;--glass:rgba(246,249,245,.94);--ease:cubic-bezier(.22,1,.36,1)}
body{font-family:var(--ui-sans);-webkit-font-smoothing:antialiased}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #75bba8!important;outline-offset:4px!important}button:active{transform:scale(.98)}
#brand strong{font:500 26px/1.2 var(--ui-sans);letter-spacing:.14em}#brand small{font:500 8px/1.5 var(--ui-sans);letter-spacing:2px;margin-top:8px}.crest{font-size:13px;margin-bottom:7px}#about{font:500 10px/1.5 var(--ui-sans);letter-spacing:1px}#about span{font-size:9px}#intro h1{font:500 clamp(38px,4.6vw,66px)/1.3 var(--ui-sans);letter-spacing:-.035em;text-shadow:0 4px 25px #102b2520}#intro .intro-content>.overline{font:500 10px/1.6 var(--ui-sans);letter-spacing:2.6px}#intro .intro-caption{font:400 14px/1.9 var(--ui-sans);letter-spacing:.02em;color:#ffffffeb}.vision-tag{border-radius:100px;border:1px solid #ffffff40;background:#ffffff14;backdrop-filter:blur(16px);padding:7px 13px;font-size:10px;letter-spacing:1px}.brand-hero-actions{gap:12px}.brand-hero-actions .cream-button,.brand-hero-actions .brand-outline{border-radius:100px;min-height:48px;padding:15px 25px;font:500 12px var(--ui-sans);letter-spacing:0}.brand-hero-actions .cream-button{background:#f8faf6;color:#213b31;box-shadow:0 3px 18px #0c27151a}.brand-hero-actions .brand-outline{border:1px solid #ffffff59;background:#17362d55;color:#fff;backdrop-filter:blur(16px)}.intro-content #silent-start{font-size:11px;letter-spacing:.3px}.sun-mark{font-size:20px}
.tour-state:not(.cloud-opening) #chapter{background:#122b23c9;border:1px solid #ffffff25;border-radius:20px;box-shadow:0 12px 40px #102a211f;backdrop-filter:blur(24px) saturate(130%);padding:20px 24px}.tour-state:not(.cloud-opening) #chapter h2{font:500 clamp(30px,3.7vw,48px)/1.12 var(--ui-sans);letter-spacing:-.04em;margin:10px 0 12px}.tour-state:not(.cloud-opening) #chapter-num{font-size:10px;letter-spacing:1.7px}.tour-state:not(.cloud-opening) #chapter p{font-size:13px;letter-spacing:.3px}.tour-state:not(.cloud-opening) #real-life{border-radius:18px;background:#15362cd9;border:1px solid #ffffff2b;box-shadow:0 8px 24px #10261d1a}.tour-state:not(.cloud-opening) #home{border-radius:50%;width:42px;height:42px}.tour-state:not(.cloud-opening) #explore{border-radius:22px;background:#f8fbf3f2;color:#213b31;border:1px solid #fff8;backdrop-filter:blur(24px);box-shadow:0 12px 35px #071c1930;padding:12px 25px;min-height:68px}.tour-state:not(.cloud-opening) #explore span{font:600 10px/1.8 var(--ui-sans);letter-spacing:1.4px}.tour-state:not(.cloud-opening) #explore small{font:400 12px/1.6 var(--ui-sans)}.tour-state:not(.cloud-opening) .ai-note{border-radius:8px;background:#102c23d9;font-size:10px;padding:6px 10px}.cloud-invitation h2{font-family:var(--ui-sans);font-weight:500;letter-spacing:-.02em}.cloud-invitation span,.cloud-invitation p{font-family:var(--ui-sans)}
#menu{background:var(--glass);color:#213b31;border:1px solid #fff9;border-radius:24px;backdrop-filter:blur(30px) saturate(130%);box-shadow:0 25px 80px #10271d40;padding:26px 26px 80px;scrollbar-width:thin}#menu>.overline{font-size:10px;color:#617267;letter-spacing:2px;text-align:left}#menu .brand-menu-links{border:0;padding-top:0}#menu .brand-menu-links button{font:500 17px/1.5 var(--ui-sans);min-height:54px;border-color:#213b3112;gap:17px;padding:12px 6px;border-radius:8px}#menu .brand-menu-links button:before{font:500 10px var(--ui-sans);font-variant-numeric:tabular-nums;color:#7a8980}#menu .brand-menu-links button:hover{background:#243b310a}#menu .close{inset:auto 16px 14px;width:calc(100% - 32px);height:44px;border-radius:12px;background:#213b31;color:#f7faf5;font-size:24px}
#destination-page{background:#f5f6f3;color:#213b31;border:1px solid #ffffffa6;border-radius:24px;box-shadow:0 24px 90px #071d2540,0 0 0 100vmax #0b201522;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#bdc8bf transparent}.panel-bar{background:#f5f6f3ed;color:#213b31;border-bottom:1px solid #213b3112;backdrop-filter:blur(24px);font:600 12px/1.5 var(--ui-sans);letter-spacing:.2px;padding:12px 18px 12px 30px;min-height:66px}.panel-bar button{border-radius:50%;background:#233e3109;width:36px;height:36px;color:#3c5146;font:300 25px/1 var(--ui-sans)}.panel-bar button:hover{background:#233e3117}.panel-content{padding-top:22px}.panel-hero{border-radius:16px;overflow:hidden}.panel-hero img{aspect-ratio:1.5}.panel-hero>span{background:#f9fcf1eb;border:1px solid #ffffff99;backdrop-filter:blur(15px);box-shadow:0 3px 15px #102c221a}.panel-caption{font:10px/1.6 var(--ui-sans)!important;color:#66746c;margin:12px 0 24px!important}.panel-content h1{font:600 30px/1.45 var(--ui-sans);letter-spacing:-.025em;margin:0 0 21px;text-wrap:balance}.panel-content>p,.panel-content details p{font:400 15px/1.9 var(--ui-sans);color:#536258;letter-spacing:0;margin-bottom:17px}.panel-status{font:500 10px var(--ui-sans);letter-spacing:.3px;color:#486153;border:1px solid #d9e2d8;border-radius:100px;background:#eaf0e7;padding:7px 11px;margin-top:8px}.panel-content details{border-color:#213b3117}.panel-content summary{font:500 12px/20px var(--ui-sans);letter-spacing:.1px;min-height:66px;padding:23px 0}.panel-content summary:after{font-weight:300;font-size:19px}.panel-content h2{font:600 23px/1.5 var(--ui-sans);letter-spacing:-.025em}.panel-gallery img,.panel-related img{border-radius:12px}.panel-gallery-controls{border:0;margin:8px 0 13px;padding-bottom:5px}.panel-gallery-controls>span{font:500 10px var(--ui-sans);font-variant-numeric:tabular-nums;letter-spacing:1px}.panel-gallery-controls button{border:1px solid #213b311c;border-radius:50%;background:#fff9;color:#294738}.panel-gallery-controls button:hover{background:#e6ede3}.panel-contact{background:linear-gradient(145deg,#213e32,#162e29);color:#f7f9f4;border-radius:20px;margin:30px 0;padding:28px 24px;box-shadow:0 10px 30px #18362b15}.panel-contact h2{font:500 25px/1.45 var(--ui-sans);letter-spacing:-.025em}.panel-contact small{font-size:9px;letter-spacing:2px}.panel-contact button{border-radius:100px;background:#f6f8f2;color:#213b31;font:600 12px var(--ui-sans);padding:14px 24px;min-height:46px}.panel-contact p{color:#dee9dfe6;font-size:11px;line-height:1.85}.panel-related-title{font:500 10px var(--ui-sans)!important;letter-spacing:1.5px;color:#64756a}.panel-related h3{font:500 17px/1.6 var(--ui-sans);letter-spacing:-.02em}.panel-related span,.panel-gallery span{font-family:var(--ui-sans);font-size:10px;color:#617164}.panel-link{font:500 12px var(--ui-sans)}.panel-plan{border-radius:12px}
#contact-dialog,#notes-dialog,#plan-dialog,#real-dialog,#panel-lightbox{border-radius:24px;border:1px solid #ffffffa8;box-shadow:0 25px 90px #071d2550;background:#f5f6f3;color:#213b31}dialog::backdrop{background:#10221c80;backdrop-filter:blur(12px)}#contact-dialog .close,#notes-dialog .close,#plan-dialog .close,#panel-lightbox>button{border-radius:50%;background:#213b310b;font-size:25px}#contact-dialog h2,#notes-dialog h2,#real-dialog .real-info h2{font:600 28px/1.5 var(--ui-sans);letter-spacing:-.025em}#contact-dialog p,#notes-dialog p{color:#536258;font:14px/1.9 var(--ui-sans)}#contact-dialog select,#contact-dialog textarea{border:1px solid #ccd8cd;border-radius:12px;background:#fff9;color:#213b31;padding:14px;font:14px/1.6 var(--ui-sans);transition:border-color .2s,box-shadow .2s}#contact-dialog select:focus,#contact-dialog textarea:focus{border-color:#75a490;box-shadow:0 0 0 3px #72a18b22}#contact-dialog .brand-solid{border-radius:100px;font:500 12px var(--ui-sans);padding:15px 23px;background:#213b31}#contact-dialog label{font:500 12px var(--ui-sans)}#plan-dialog .dialog-head{background:#f5f6f3}#real-dialog .real-info{background:#f5f6f3;color:#213b31}#real-dialog .real-info nav button{border:1px solid #213b311a;border-radius:100px;margin:3px;padding:10px 14px;background:#fff8;color:#304c3c;font:500 11px var(--ui-sans)}#real-dialog .real-info a{color:#365b48}#notes-dialog .dark-button{border-radius:100px}
@media(hover:hover){.brand-hero-actions button:hover{filter:brightness(1.06)}#destination-page button,.brand-hero-actions button,#menu button{transition:background .25s,color .25s,box-shadow .25s,transform .35s var(--ease)}}
@media(max-width:600px){#brand strong{font-size:23px}#intro h1{font-size:40px;line-height:1.35}#intro .intro-caption{font-size:13px}#intro .intro-content{padding-top:115px}.brand-hero-actions .cream-button,.brand-hero-actions .brand-outline{font-size:11px;padding:14px 21px}.tour-state:not(.cloud-opening) #chapter{padding:17px 20px;border-radius:18px;bottom:181px}.tour-state:not(.cloud-opening) #chapter h2{font-size:33px}.tour-state:not(.cloud-opening) #chapter p{font-size:12px}.tour-state:not(.cloud-opening) #explore{border-radius:19px}#menu{border-radius:22px;bottom:16px;max-height:calc(100svh - 105px);padding:25px 23px 76px}#menu .brand-menu-links button{font-size:16px;min-height:51px}#destination-page{inset:8px;border-radius:22px}.panel-bar{padding-left:24px;min-height:62px}.panel-content{padding:20px 23px 28px}.panel-content h1{font-size:27px;line-height:1.5}.panel-content>p,.panel-content details p{font-size:14px;line-height:1.95}.panel-contact{margin:28px 0;padding:26px 21px}.panel-contact h2{font-size:23px}#contact-dialog{padding:55px 25px 26px}#contact-dialog h2{font-size:26px}#panel-lightbox{padding-top:50px}}
@media(max-width:360px){#brand strong{font-size:20px}#about{font-size:8px}#intro h1{font-size:35px}.brand-hero-actions{gap:8px}.brand-hero-actions .cream-button,.brand-hero-actions .brand-outline{padding:14px 17px}.panel-content h1{font-size:25px}}
@media(max-height:650px){#intro h1{font-size:32px}.tour-state:not(.cloud-opening) #chapter{padding:12px 18px;bottom:156px}.tour-state:not(.cloud-opening) #chapter h2{font-size:28px}.tour-state:not(.cloud-opening) #real-life{top:118px}.tour-state:not(.cloud-opening) #home{top:198px}}
@media(prefers-reduced-motion:reduce){button,button img{transition:none!important}button:active{transform:none}}
.v3-rows{display:grid;gap:0;margin:20px 0}.v3-rows>div{padding:18px 0;border-top:1px solid #213b3115}.v3-rows h3{font:600 14px/1.6 var(--ui-sans);margin:0 0 7px;color:#294b3b}.panel-content .v3-rows p{font:13px/1.85 var(--ui-sans);margin:0;color:#536258}.v3-preview{background:#eaf0e8;border:1px solid #dce5d9;border-radius:18px;padding:22px;margin:20px 0}.v3-preview h3{font:600 20px/1.5 var(--ui-sans)}.v3-kicker{font-size:10px!important;letter-spacing:1px}.v3-options{display:flex;flex-wrap:wrap;gap:8px}.v3-options button{font:500 11px var(--ui-sans);padding:12px 13px;border:1px solid #cbd9c9;border-radius:100px;background:#f8faf5}.v3-options button[aria-pressed=true]{background:#213b31;color:#fff}.panel-content .v3-fine{font:11px/1.8 var(--ui-sans);margin:12px 0 0;color:#637466}

/* Compact film control: icon only. */
#real-life.real-life,.tour-state:not(.cloud-opening) #real-life{width:48px;height:48px;padding:0;gap:0;justify-content:center;border-radius:50%;}#real-life.real-life>span:first-child{border:0;width:auto;height:auto;font-size:26px;line-height:1;transform:translateX(2px);}

/* Anchor the chapter menu above its trigger on every viewport. */
#menu{position:fixed;inset:auto auto var(--menu-bottom,150px) var(--menu-left,16px);width:var(--menu-width,300px);max-height:var(--menu-height,70svh);padding:16px;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--menu-radius,22px);animation:explore-menu-in .35s var(--ease);}
#menu>.overline{flex:none;margin:2px 0 10px;padding:0 6px;font-size:9px;letter-spacing:1.6px}
#menu .brand-menu-links{display:flex;flex-flow:column nowrap;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0;margin:0;gap:0;scrollbar-width:thin}
#menu .brand-menu-links button{flex:0 0 auto;width:100%;min-height:43px;font:500 13px/1.5 var(--ui-sans);padding:10px 6px;gap:12px;border-radius:6px}#menu .brand-menu-links button:before{font-size:9px;flex:0 0 18px}#menu .brand-menu-links button:last-child{border-bottom:0}
#menu .close{position:static;inset:auto;flex:none;width:100%;height:32px;margin:10px 0 0;border-radius:10px;font-size:20px}
@keyframes explore-menu-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#menu{animation:none}}

#menu>.close{order:3}#menu>.overline{order:1}#menu>.brand-menu-links{order:2}

/* Text-only related chapters keep every editorial photograph exclusive. */
#destination-page .panel-related{display:grid;grid-template-columns:1fr;gap:0;padding:0;overflow:visible;border-top:1px solid #213b3115}
#destination-page .panel-related button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:15px 2px;border-bottom:1px solid #213b3115}
#destination-page .panel-related h3{font:500 14px/1.6 var(--ui-sans);margin:0}
#destination-page .panel-related span{font:11px/1.6 var(--ui-sans);white-space:nowrap}
#destination-page .panel-gallery:has(>button:only-child)>button{flex-basis:100%}
#destination-page .panel-gallery-controls:has(button:disabled+button:disabled){display:none}
