*{box-sizing:border-box}html{color-scheme:dark;background:#203727;color:#f3f0e4}body{margin:0;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 20% 15%,#344930,transparent 65%),#203727}main{flex:1;display:flex}.landing{width:100%;min-height:88svh;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);overflow:hidden}.copy{padding:clamp(48px,8vw,135px) 4vw 70px 7vw;align-self:center;position:relative;z-index:1}.wordmark{font-family:Didot,"Bodoni MT","Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(42px,5.6vw,94px);letter-spacing:.055em;margin:0 0 54px;white-space:nowrap;font-weight:400}.wordmark span{color:#b8c39d}h1{font-family:Didot,"Bodoni MT","Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(34px,4vw,66px);font-weight:400;line-height:1.12;letter-spacing:-.015em;max-width:850px;margin:0 0 26px}.intro{font:300 clamp(18px,2vw,29px)/1.6 Arial,sans-serif;color:#e5e8dd;margin:0}.coming{display:flex;align-items:center;gap:26px;text-transform:uppercase;letter-spacing:.35em;font:12px/1.8 Arial,sans-serif;letter-spacing:.35em;color:#c1cba6;margin:54px 0 0}.coming span{height:1px;background:#aeb895;width:clamp(70px,13vw,250px)}.visual{position:relative;overflow:hidden;border-top-left-radius:48% 35%;border-left:1px solid #b5b08b;min-height:620px}.visual img{position:absolute;width:246%;max-width:none;height:auto;min-height:100%;right:0;top:50%;transform:translateY(-50%);object-fit:cover}footer{font:10px/1.6 Arial,sans-serif;letter-spacing:.14em;padding:20px 7vw;color:#b7c2aa;border-top:1px solid #8b9b7340}@media(max-width:760px){.landing{grid-template-columns:1fr;min-height:0}.copy{padding:42px 7vw 30px}.wordmark{font-size:clamp(37px,10vw,64px);margin-bottom:36px}h1{font-size:clamp(31px,8vw,46px);max-width:560px;line-height:1.15}.desktop{display:none}.intro{font-size:18px}.coming{margin-top:30px;font-size:10px;gap:16px}.visual{width:86%;justify-self:end;min-height:0;height:250px;margin:10px 0 30px;border-top-left-radius:100px;border-bottom-left-radius:3px}.visual img{width:246%;min-height:100%}footer{padding:18px 7vw}}@media(max-width:360px){.copy{padding-top:32px}.wordmark{font-size:35px}h1{font-size:29px}.visual{height:210px}}

/* Warm directional sunlight is a defining part of the approved green identity. */
.landing{position:relative;isolation:isolate;background:radial-gradient(ellipse at 93% 0%,#eed6a43b 0%,transparent 48%),radial-gradient(ellipse at 12% 100%,#cebb8240 0%,transparent 48%)}
.landing:before{content:"";position:absolute;inset:-15%;z-index:0;pointer-events:none;background:linear-gradient(139deg,transparent 0%,transparent 43%,#ead8a610 46%,#ffe4a942 50%,#fff1c252 52%,#e4cd972b 56%,transparent 61%),linear-gradient(139deg,transparent 0%,transparent 64%,#e4cd971f 68%,#fff1c238 70%,transparent 75%);filter:blur(5px)}
.copy{text-shadow:0 1px 10px #102b2080}
.contact{display:inline-flex;align-items:center;gap:12px;color:#fff1ce;font:16px/1.6 Arial,sans-serif;text-decoration:none;letter-spacing:.02em;border-bottom:1px solid #d8c79880;padding:0 0 5px;margin-top:28px;min-height:44px;overflow-wrap:anywhere;max-width:100%}
.contact:hover{color:#fff;border-color:#fff1ce}.contact:focus-visible{outline:2px solid #fff1ce;outline-offset:6px}
footer{background:#1e3425}
@media(max-width:760px){.landing:before{inset:-6% -40%;background:linear-gradient(139deg,transparent 25%,#ead8a610 35%,#ffe4a947 43%,#fff1c252 46%,#e4cd972b 51%,transparent 57%),linear-gradient(139deg,transparent 65%,#fff1c22e 71%,transparent 79%)}.contact{font-size:16px;margin-top:20px}}

/* Language controls stay visible on both desktop and mobile. */
.language-switch{display:flex;align-items:center;gap:4px;flex-shrink:0;font-family:Arial,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;white-space:nowrap}
.language-switch button{font:inherit;font-size:.875rem;line-height:1.5;min-height:44px;min-width:44px;padding:8px 10px;color:inherit;background:transparent;border:1px solid transparent;border-radius:2px;cursor:pointer;letter-spacing:0}
.language-switch button[aria-pressed="true"]{border-color:currentColor}
.language-switch button:hover{text-decoration:underline;text-underline-offset:4px}
.language-switch button:focus-visible{outline:2px solid currentColor;outline-offset:3px}

.language-header{display:flex;justify-content:flex-end;padding:16px 5vw 0;color:#f3f0e4}
.coming span:not([aria-hidden]){height:auto;background:none;width:auto}
html:lang(ja) h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:1.65;letter-spacing:.025em;overflow-wrap:anywhere}
html:lang(ja) .intro{font-family:"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:clamp(1rem,1.6vw,1.4rem);line-height:1.9}
html:lang(ja) .coming{font-family:"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:.875rem;letter-spacing:.08em;flex-wrap:wrap;gap:14px}
@media(max-width:760px){.language-header{padding:12px 7vw 0}.copy{padding-top:24px}html:lang(ja) h1{font-size:clamp(1.7rem,6.5vw,2.4rem)}}
