:root{--ink:#101210;--gold:#c9a25e;--paper:#f3f0e9;--text:#191a18;--muted:#6e706b;--line:#d7d2c8;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;line-height:1.8}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}.wrap{width:min(calc(100% - 48px),var(--max));margin:auto}.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.site-header{position:sticky;top:0;z-index:70;background:var(--gold);box-shadow:0 8px 26px rgba(4,7,8,.14)}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}.header-logo-window{display:block;width:330px;padding:8px 0 11px;border-bottom:1px solid rgba(17,17,15,.28)}.header-logo-window img{display:block;width:100%;height:auto}.nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:700}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:#111;transform:scaleX(0);transform-origin:left;transition:transform .28s}.nav a:hover:after{transform:scaleX(1)}.menu-btn{display:none;width:48px;height:48px;border:1px solid rgba(17,17,15,.35);background:transparent}.menu-btn span{display:block;width:22px;height:1px;margin:6px auto;background:#111;transition:.3s}.menu-close{display:none}
.page-hero{position:relative;padding:104px 0 88px;overflow:hidden;background:#111;color:#fff}.page-hero:after{content:attr(data-word);position:absolute;right:-.02em;bottom:-.18em;color:rgba(255,255,255,.055);font-family:Georgia,serif;font-size:clamp(100px,18vw,280px);font-style:italic;font-weight:700;letter-spacing:-.07em;line-height:1;white-space:nowrap}.eyebrow{margin:0 0 14px;color:var(--gold);font-family:Georgia,serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase}.page-hero h1{position:relative;z-index:1;margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(42px,6vw,74px);font-weight:500;line-height:1.35;letter-spacing:.06em}.page-hero p:last-child{position:relative;z-index:1;max-width:650px;margin:24px 0 0;color:#d8d5ce}.section{padding:92px 0}.intro-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px}.section h2{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(30px,4vw,48px);line-height:1.5}.lead{margin:0;color:var(--muted)}
.contact-title{white-space:nowrap;word-break:keep-all}.form-heading{white-space:nowrap;word-break:keep-all}.copy-line{display:block;word-break:auto-phrase;text-wrap:pretty}
.form-card{margin-top:54px;padding:48px;background:#fff;border-top:3px solid var(--gold)}.form-help{margin:0 0 28px;padding:14px 16px;border-left:3px solid var(--gold);background:#f5f1e8;font-size:13px}.form-help .required{margin:0 3px}.apply-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700;letter-spacing:.05em}.required{margin-left:7px;color:#9a341f;font-size:11px}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid rgba(17,17,15,.35);border-radius:0;background:#faf9f6;padding:14px 12px;color:var(--text);font:inherit}.field textarea{min-height:160px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(201,162,94,.42);outline-offset:2px}.apply-form.was-validated input:invalid,.apply-form.was-validated select:invalid,.apply-form.was-validated textarea:invalid{border-bottom-color:#b42318;background:#fff5f4}.consent{grid-column:1/-1;margin:6px 0 0;font-size:13px}.consent a{text-decoration:underline;text-underline-offset:3px}.submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border:0;background:#111;color:#fff;padding:19px 22px;font:inherit;font-weight:700;letter-spacing:.08em;cursor:pointer}.submit:after{content:"→"}.form-status{grid-column:1/-1;min-height:1.8em;margin:0;color:#a02b20;font-size:13px;font-weight:700}
.policy{max-width:860px}.policy section{padding:34px 0;border-bottom:1px solid var(--line)}.policy h2{font-size:25px}.policy h3{margin:22px 0 8px;font-size:17px}.policy p,.policy li{color:#4f514d}.policy ul{padding-left:1.4em}.policy-meta{margin:0 0 36px;color:var(--muted);font-size:13px}.site-footer{padding:34px 0;background:#080a09;color:#aaa69d;border-top:1px solid rgba(201,162,94,.28)}.footer-inner{text-align:center;font-size:12px}.footer-inner p{margin:0}.footer-inner a{display:inline-block;margin-left:1.5em;color:#d5d1c8}.footer-inner a:hover{color:var(--gold)}
.to-top{position:fixed;right:24px;bottom:24px;z-index:65;display:grid;width:54px;height:54px;place-items:center;border:1px solid rgba(201,162,94,.65);background:rgba(8,10,9,.9);color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility .25s;cursor:pointer}.to-top:before{content:"↑";position:absolute;top:5px;color:var(--gold);font-size:15px}.to-top span{padding-top:12px}.to-top.show{opacity:1;visibility:visible;transform:none}.to-top:hover{background:var(--gold);color:#111}.to-top:hover:before{color:#111}
@media(max-width:900px){.nav{display:none}.menu-btn{display:block}.nav.open{position:fixed;inset:0;display:flex;z-index:50;flex-direction:column;justify-content:center;background:#111;color:#fff;font-size:20px}.menu-btn{position:relative;z-index:60}.menu-btn.active span:first-child{background:#fff;transform:translateY(3.5px) rotate(45deg)}.menu-btn.active span:last-child{background:#fff;transform:translateY(-3.5px) rotate(-45deg)}.menu-close{position:absolute;top:22px;left:24px;display:inline-flex;align-items:center;gap:10px;border:0;border-bottom:1px solid rgba(201,162,94,.7);background:transparent;color:#fff;padding:10px 2px;font:inherit;font-size:13px;letter-spacing:.12em;cursor:pointer}.intro-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:620px){.wrap{width:min(calc(100% - 36px),var(--max))}.header-inner{height:76px}.header-logo-window{width:235px}.page-hero{padding:76px 0 66px}.section{padding:68px 0}.contact-title{font-size:clamp(27px,8vw,34px)!important;letter-spacing:.02em!important}.form-heading{font-size:clamp(26px,8vw,33px)!important}.form-card{margin-top:38px;padding:28px 20px}.apply-form{grid-template-columns:1fr;gap:18px}.field.full,.consent,.submit,.form-status{grid-column:auto}.footer-inner a{margin-left:1em}.to-top{right:14px;bottom:14px;width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav a:after,.to-top{transition:none}}
.header-logo-window img{opacity:1;transform:none;animation:none}
.header-logo-window:after{display:none}
.form-success-panel h2{font-size:clamp(27px,4vw,40px)!important;white-space:nowrap}
@media(max-width:620px){.form-success-panel h2{font-size:27px!important}}
.modal-open{overflow:hidden}.form-success-modal[hidden]{display:none}.form-success-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:24px}.form-success-backdrop{position:absolute;inset:0;border:0;background:rgba(5,7,7,.78);backdrop-filter:blur(7px);cursor:pointer}.form-success-panel{position:relative;width:min(100%,560px);padding:58px 56px 50px;border:1px solid rgba(201,162,94,.62);background:#101211;color:#fff;box-shadow:0 28px 80px rgba(0,0,0,.45);text-align:center;outline:none}.form-success-panel:before{content:"";position:absolute;inset:12px;border:1px solid rgba(201,162,94,.18);pointer-events:none}.form-success-kicker{margin:0 0 18px;color:var(--gold);font-family:Georgia,serif;font-size:12px;font-weight:700;letter-spacing:.28em}.form-success-panel h2{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(32px,5vw,48px);font-weight:500;line-height:1.42;letter-spacing:.05em}.form-success-panel>p:not(.form-success-kicker){margin:24px 0 0;color:rgba(255,255,255,.75);line-height:2}.form-success-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.form-success-actions button,.form-success-actions a{display:flex;min-height:58px;align-items:center;justify-content:center;border:1px solid var(--gold);font:inherit;font-size:13px;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:.25s}.form-success-actions button{background:var(--gold);color:#111}.form-success-actions a{background:transparent;color:#fff}.form-success-actions button:hover,.form-success-actions a:hover{background:#fff;border-color:#fff;color:#111}@media(max-width:620px){.form-success-modal{padding:18px}.form-success-panel{padding:48px 24px 38px}.form-success-panel h2{font-size:31px}.form-success-actions{grid-template-columns:1fr}.form-success-actions button,.form-success-actions a{min-height:54px}}
