/* Contact A: dedicated split layout. */
.page-contact .kicker{display:block;color:#c8a782;font-size:10px;font-weight:600;letter-spacing:.19em}
.page-contact h1{font-family:Georgia,"Hiragino Mincho ProN",serif;font-size:clamp(42px,4.1vw,62px);font-weight:400;letter-spacing:-.045em;line-height:1.45;margin:30px 0}
.page-contact h2{font-family:Georgia,"Hiragino Mincho ProN",serif;font-size:29px;font-weight:400;line-height:1.5;letter-spacing:-.025em}
.intro-copy{color:#b3bec5;font-size:14px;line-height:2.1}
.page-contact{display:grid;grid-template-columns:45% 55%;min-height:calc(100vh - 125px)}
.contact-intro{position:relative;padding:90px clamp(30px,7vw,110px);overflow:hidden;background:linear-gradient(90deg,#081625eb,#0d2036ca),url('/assets/sky-atmosphere.webp') 65% 40%/cover}
.contact-intro:after{content:"";position:absolute;right:-80px;bottom:-100px;border:1px solid #bcb5a82b;width:350px;height:620px;border-radius:50%;transform:rotate(34deg);pointer-events:none}
.fine-line{width:50px;height:1px;background:#ba9d7e;margin:60px 0 24px}
.side-note{font-size:11px;color:#97a9b7;line-height:1.9;letter-spacing:.02em}
.side-code{display:block;margin-top:90px;font-size:9px;letter-spacing:.26em;color:#81929f}
.form-side{background:#f2f1ed;color:#1e2b35;padding:65px clamp(32px,5.5vw,90px);}
.form-heading{border-bottom:1px solid #18304422;padding-bottom:23px;margin-bottom:28px}
.form-heading h2{margin:9px 0 8px}
.form-heading>p{font-size:12px;color:#69747c;margin:0}
.form-side .kicker{color:#897254}
.inquiry-form{display:grid;gap:21px}
.inquiry-form label{display:block;font-size:12px;line-height:1.6}
.inquiry-form label small{font-size:9px;color:#9c6e40;margin-left:7px}
.inquiry-form .optional{color:#8a949b}
.inquiry-form input:not([type="checkbox"]),.inquiry-form textarea,.inquiry-form select{display:block;width:100%;margin-top:8px;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #19314540;border-radius:0;color:inherit;outline-offset:5px;line-height:1.6;font-size:13px;transition:border-color .2s}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#8b9499;font-size:12px}
.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{outline:1px solid #b59673}
.inquiry-form textarea{resize:vertical;min-height:100px}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.inquiry-form .consent{display:flex;align-items:flex-start;gap:9px;margin:3px 0 0;font-size:11px;line-height:1.8}
.consent input{width:15px;height:15px;margin:3px 0;accent-color:#b69671}
.consent a{text-decoration:underline;text-underline-offset:4px}
.submit{border:0;background:#152b3d;color:#fff;padding:16px 21px;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:51px}
.submit:hover{background:#28465b}
.form-error{font-size:11px;color:#b14c38;line-height:1.8;margin:0}
.form-error:empty{display:none}
.inquiry-form [aria-invalid="true"]{border-color:#b14c38}
.contact-alternative{font-size:10px;color:#8c9da8;margin-top:24px}
.contact-alternative a{color:#c4ab8a}
.review-card{background:#f2f1ed;color:#183043;width:min(660px,100%);padding:45px}
.review-card .kicker{color:#8a7255}
.review-card dl{margin:25px 0}
.review-card dl>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:15px;border-top:1px solid #203b4f26;padding:16px 0;font-size:12px;line-height:1.8}
.review-card dt{color:#72818a}
.review-card dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.review-note{font-size:11px;color:#7d8790;line-height:1.9}
.review-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px}
.review-actions>button:not(.submit){border:0;border-bottom:1px solid #a18b6d;background:none;color:#183043;font-size:11px;padding:9px 0}
.review-card h2{font-size:27px}
.page-contact{min-height:calc(100svh - 83px)}
.page-contact [hidden]{display:none!important}
.page-contact button,.page-contact input,.page-contact select,.page-contact textarea,.contact-review button{font:inherit}
.page-contact .submit,.contact-review .submit{font-size:12px;cursor:pointer}
.page-contact button:disabled,.contact-review button:disabled{cursor:wait;opacity:.55}
.page-contact .contact-alternative{font-size:11px;margin-top:30px;color:#667580;overflow-wrap:anywhere}
.page-contact .contact-alternative a{color:#796246;text-decoration:underline;text-underline-offset:4px}
.page-contact .contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.page-contact .form-note{font-size:10px;color:#69747c;margin:0;line-height:1.9}
.contact-review{max-width:min(660px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:0;border:0;background:#f2f1ed;color:#183043;overflow:auto}
.contact-review::backdrop{background:#030e18c9;backdrop-filter:blur(7px)}
.contact-review .review-card{width:100%;padding:40px}
.contact-review .kicker{color:#8a7255;font-size:10px;font-weight:600;letter-spacing:.19em}
.contact-review h2{font-family:Georgia,"Hiragino Mincho ProN",serif;font-size:27px;font-weight:400;line-height:1.5}
.contact-success h2{margin:24px 0;font-size:30px;line-height:1.7}
.contact-success>p{font-size:13px;line-height:2;color:#667580}
.contact-receipt{overflow-wrap:anywhere}
.contact-home{display:flex;justify-content:space-between;margin-top:40px;border-bottom:1px solid #bda180;padding-bottom:14px;font-size:13px}
.contact-review .form-error{color:#a43f2e}
@media(max-width:900px){.page-contact{grid-template-columns:1fr}.contact-intro{padding:50px 7vw}.contact-intro h1 br{display:none}.page-contact .contact-intro h1{font-size:42px}.fine-line,.side-note,.side-code{display:none}.form-side{padding:42px 7vw}}
@media(max-width:620px){.page-contact .inquiry-form input:not([type="checkbox"]),.page-contact .inquiry-form textarea,.page-contact .inquiry-form select{font-size:16px}.contact-intro h1 br{display:block}.page-contact .contact-intro h1{font-size:39px}.page-contact h2{font-size:25px}.contact-intro{padding:38px 24px}.page-contact .intro-copy{font-size:12px;line-height:2}.form-side{padding:36px 24px 42px}.field-grid{grid-template-columns:1fr;gap:21px}.inquiry-form{gap:23px}.contact-review .review-card{padding:28px 22px}.review-card dl>div{grid-template-columns:1fr;gap:3px}.contact-review h2{font-size:23px}.review-actions{gap:14px}.review-actions .submit{padding:15px 18px}}
@media(prefers-reduced-motion:no-preference){.contact-review[open]{animation:contact-in .25s ease-out}@keyframes contact-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
