:root{--ink:#182823;--paper:#fff;--accent:#243c32}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Helvetica Neue","Noto Sans JP",sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ac7047;outline-offset:5px}.skip{position:absolute;top:-90px;background:white;z-index:10}.skip:focus{top:5px}header{height:94px;display:flex;justify-content:space-between;align-items:center;padding:0 6vw;background:white}.brand{font-size:29px;letter-spacing:.15em;line-height:1.2;font-weight:600}.brand span{display:block;font-size:12px;letter-spacing:.2em;margin-top:9px}nav{display:flex;gap:34px;font-size:14px}h1,h2,h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:400;margin:0;line-height:1.6}h1{font-size:clamp(34px,4.2vw,66px);letter-spacing:.09em}h2{font-size:clamp(27px,3vw,43px)}h3{font-size:25px}.eyebrow{font-size:13px;letter-spacing:.17em;line-height:1.8}.hero,.detail-hero{position:relative;min-height:690px;display:flex;align-items:center;background:var(--accent);color:white;overflow:hidden}.hero img,.detail-hero img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero:after,.detail-hero:not(.editorial):after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,16,.8),rgba(10,20,16,.17))}.hero>div,.detail-hero>div{position:relative;z-index:1;padding:75px 8vw;max-width:1050px}.hero p{margin:25px 0}.button{display:inline-block;padding:15px 28px;background:var(--accent);color:white;font-size:15px;letter-spacing:.05em;margin-top:20px;border:1px solid var(--accent);transition:background .2s}.button:hover{background:#486355}.button.light{background:transparent;border-color:#ffffffa0;color:white}.button.light:hover{background:#ffffff25}.hero-credit{position:absolute;right:5vw;bottom:28px;z-index:1;font-size:13px;letter-spacing:.15em}.section{max-width:1300px;margin:auto;padding:100px 6vw}.section-heading{margin-bottom:55px}.section-heading>p:last-child{margin-top:25px;color:#526057}.collection{display:grid;grid-template-columns:1fr 1fr;gap:65px 36px}.card img{width:100%;height:360px;object-fit:cover;display:block;transition:filter .25s}.card a:hover img{filter:brightness(.9)}.card-copy{padding:24px 0;border-bottom:1px solid #ccd1ce}.card-copy p{margin:8px 0}.text-link{display:block;margin-top:20px;font-size:14px}.card:last-child{grid-column:1 / -1;max-width:750px;width:100%;margin:auto}.nameplate{min-height:300px;background:var(--accent);color:white;padding:45px;display:flex;flex-direction:column;justify-content:space-between}.nameplate strong{font-size:clamp(28px,4vw,48px);font-weight:300;letter-spacing:.08em}.nameplate span{font-size:14px}.about{background:#18342b;color:white;padding:110px 12vw}.about h2{margin:30px 0}.about p{line-height:2.3}.booking{text-align:center;max-width:900px}.booking p{margin:25px auto;max-width:650px}.fine{font-size:14px;color:#5b655f}.detail-hero{min-height:620px}.editorial{min-height:520px}.property-name{font-size:20px;letter-spacing:.08em}.intro{max-width:950px}.intro>p:last-child{margin-top:35px;font-size:19px;line-height:2.2}.stories{padding-top:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.stories article{border-top:1px solid #aab6af;padding-top:25px}.stories h2{font-size:25px;margin:20px 0}.number{font-size:14px;color:#68776e}.related{border-top:1px solid #ccd1ce}.related h2{margin-bottom:35px}.related a{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid #ccd1ce;padding:20px 0}.related a span:last-child{font-size:14px}footer{background:#10271f;color:white;padding:65px 6vw}footer>a:not(.brand){font-size:14px}footer small{display:block;font-size:12px;margin-top:30px}@media(max-width:700px){header{height:82px;padding:0 6vw}.brand{font-size:23px}nav{gap:15px;font-size:13px}nav a:last-child{display:none}.hero{min-height:670px}.hero>div,.detail-hero>div{padding:70px 7vw}.hero:after,.detail-hero:not(.editorial):after{background:rgba(10,20,16,.57)}.section{padding:65px 7vw}.collection{grid-template-columns:1fr;gap:40px}.card img{height:300px}.card:last-child{grid-column:auto}.nameplate{min-height:260px}.about{padding:75px 7vw}.detail-hero{min-height:570px}.stories{grid-template-columns:1fr;padding-top:0;gap:28px}.related a{flex-direction:column;gap:4px}.intro>p:last-child{font-size:17px}.button{max-width:100%;padding:14px 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
