:root{font-family:DM Sans,Noto Sans JP,sans-serif;color:#233d3b;background:#f7f8f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #e7a376;outline-offset:3px}::selection{background:#dbece2;color:#173e3a}#root{min-height:100vh}.site-shell{max-width:1440px;margin:0 auto;overflow:hidden;background:#f7f8f5}.topbar{height:86px;padding:0 8.1%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9ece6}.brand{display:flex;align-items:center;gap:11px;color:#203e3a;text-decoration:none;font-weight:700;font-size:17px;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#315c53;color:#fff;font-family:Playfair Display,serif;font-size:20px}.brand-light{font-weight:400;color:#72807a}.header-link{color:#38534e;text-decoration:none;font-size:12px;font-weight:600}.header-link span{margin-left:9px;color:#c17c56}.hero{display:grid;grid-template-columns:1.18fr .82fr;min-height:412px;padding-left:12.2%;background:#f0f3ee}.hero-copy{position:relative;padding:73px 25px 40px 0;overflow:hidden}.eyebrow{display:flex;gap:11px;align-items:center;font-size:10px;letter-spacing:.17em;font-weight:700;color:#6c8278}.eyebrow-line{width:22px;height:1px;background:#c47e5b}.hero h1{position:relative;margin:23px 0 16px;color:#264642;font-size:43px;line-height:1.53;letter-spacing:.06em;font-weight:500}.hero h1 em{font-family:Playfair Display,Noto Sans JP,serif;color:#c27e5d;font-size:48px;font-weight:500;letter-spacing:.04em}.hero-text{font-size:12px;color:#6f7e78;line-height:2.05}.response-note{display:flex;align-items:center;gap:10px;margin-top:24px;color:#748078;font-size:10px}.response-note strong{color:#385d53}.note-icon{font-size:17px;color:#cb8b68}.hero-decoration{position:absolute;right:30px;bottom:-60px;font-family:Playfair Display,serif;font-size:220px;color:#e6ebe4;letter-spacing:-.2em;line-height:1}.hero-decoration span+span{color:#d5e1d8}.hero-side{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#31564e;color:#fff}.side-orbit{position:absolute;width:360px;height:360px;border:1px solid #ffffff20;border-radius:50%}.orbit-one{width:280px;height:280px}.orbit-two{transform:rotate(-32deg) scaleX(1.55);border-color:#ffffff18}.side-copy{z-index:1;display:flex;flex-direction:column;gap:17px}.side-copy>span{font-size:9px;letter-spacing:.22em;color:#c3d4c8}.side-copy strong{font-size:21px;font-weight:500;line-height:1.8;letter-spacing:.07em}.side-copy small{font-family:Playfair Display,serif;font-style:italic;color:#bfd0c7;font-size:12px}.side-index{position:absolute;bottom:30px;left:12%;right:12%;display:flex;justify-content:space-between;color:#c8d9d0;font-size:10px;letter-spacing:.1em}.side-index span:last-child{color:#e4ac83;font-size:18px}.contact-section{max-width:790px;margin:0 auto;padding:71px 30px 47px}.section-intro{margin-bottom:27px}.section-intro h2{margin:17px 0 7px;font-size:22px;letter-spacing:.04em;font-weight:600;color:#2c4944}.section-intro>p{margin:0;color:#87918a;font-size:11px}.form-card{padding:32px 37px 26px;border:1px solid #e7eae4;border-radius:3px;background:#fff;box-shadow:0 8px 30px #40574a08}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{position:relative;display:flex;flex-direction:column;gap:8px;margin-bottom:21px}.field label{color:#3a514a;font-size:11px;font-weight:600}.required{margin-left:9px;padding:3px 6px;border-radius:2px;background:#f5ede7;color:#b27351;font-size:9px;font-weight:500}.field input,.field textarea{width:100%;border:1px solid #e1e6df;border-radius:2px;background:#fcfdfa;color:#334e49;padding:12px 13px;font-size:11px;transition:border-color .15s}.field input{height:42px}.field textarea{height:115px;resize:vertical;line-height:1.8}.field input::placeholder,.field textarea::placeholder{color:#b4bcb6}.field input:focus,.field textarea:focus{border-color:#729188;outline:0;box-shadow:0 0 0 3px #77968b1a}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#c3715c}.field-error{color:#b25343;font-size:10px}.field-hint{position:absolute;right:9px;bottom:8px;color:#a0aaa2;font-size:9px}.privacy-note{display:flex;align-items:center;gap:9px;margin-top:-1px;color:#9aa49c}.privacy-note>span{color:#769286;font-size:16px}.privacy-note p{font-size:9px}.form-footer{display:flex;align-items:center;justify-content:space-between;padding-top:18px;margin-top:17px;border-top:1px solid #edf0ea;color:#9aa39c;font-size:9px}.form-footer b{color:#b75}.button{min-height:42px;border:0;border-radius:2px;padding:0 19px;font-size:10px;font-weight:600;transition:background .15s,transform .15s}.button span{margin-left:17px}.button-primary{background:#31584f;color:#fff}.button-primary:hover{background:#24483f;transform:translateY(-1px)}.button-primary:disabled{opacity:.6;cursor:wait}.button-muted{background:#eef1ec;color:#4b6259}.text-button{margin-top:15px;border:0;background:none;color:#31584f;font-size:11px;font-weight:600}.text-button span{margin-left:8px;color:#c27e5d}.confirm-card{padding-top:20px}.confirm-row{display:grid;grid-template-columns:155px 1fr;padding:14px 0;border-bottom:1px solid #edf0ea}.confirm-row>span{color:#75857d;font-size:11px}.confirm-row p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:#344e47;font-size:12px;line-height:1.8}.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:21px}.success-card{padding:35px;text-align:center;border:1px solid #e7eae4;background:#fff}.success-check{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 14px;border-radius:50%;background:#e8f0e9;color:#3b6b5c;font-size:23px}.success-card h3{font-size:17px;color:#31584f}.success-card p{font-size:11px;color:#7f8b83}.success-card .reference{font-size:10px;color:#87958c}.alert{margin:0 0 16px;padding:12px 15px;font-size:11px}.alert.error{border:1px solid #efd3ca;background:#fff7f4;color:#a74f3f}.bottom-note{max-width:730px;margin:0 auto 43px;padding:18px 23px;display:flex;align-items:center;gap:13px;background:#edf1eb;color:#6b8177}.bottom-note>span:first-child{color:#c17f5d;font-size:20px}.bottom-note p{flex:1;margin:0;font-size:10px;line-height:1.8}.bottom-note small{color:#929d94;font-size:9px}.bottom-arrow{color:#81958a;font-size:17px}footer{display:flex;justify-content:space-between;padding:22px 8.1%;border-top:1px solid #e9ece6;color:#9ba49c;font-size:9px;letter-spacing:.04em}footer b{margin-left:6px;color:#c58462}.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.desktop-only{display:block}@media(max-width:680px){.topbar{height:68px;padding:0 6%}.hero{grid-template-columns:1fr;padding:0}.hero-copy{padding:48px 8% 42px}.hero h1{font-size:36px;line-height:1.45}.hero h1 em{font-size:42px}.hero-text{font-size:11px}.desktop-only{display:none}.hero-decoration{right:5px;bottom:-55px;font-size:160px}.hero-side{min-height:190px;justify-content:flex-start;padding-left:13%}.side-orbit{width:240px;height:240px;right:2%;transform:scaleX(1.2)}.orbit-one{width:190px;height:190px}.side-copy{gap:9px}.side-copy strong{font-size:17px}.side-copy small{font-size:10px}.side-index{bottom:17px;left:auto;right:8%;width:90px}.contact-section{padding:49px 6% 34px}.section-intro h2{font-size:19px}.form-card{padding:24px 20px 20px}.form-grid{grid-template-columns:1fr;gap:0}.field{margin-bottom:18px}.field input{height:45px}.field textarea{min-height:125px}.form-footer{align-items:flex-end;gap:12px}.form-footer .button{padding:0 12px;font-size:9px}.form-footer .button span{margin-left:7px}.privacy-note p{line-height:1.7}.bottom-note{margin:0 6% 30px;padding:15px}.confirm-row{grid-template-columns:1fr;gap:8px}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}footer{padding:19px 6%;gap:12px;font-size:8px}footer span:last-child{text-align:right}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
