.contact-page{--accent:#f15a36;--line:#ffffff24}
.contact-layout{max-width:1480px;padding:40px 5% 100px;margin:auto;display:grid;grid-template-columns:1fr 1.08fr;gap:8%;align-items:start}
.contact-intro{position:sticky;top:130px;padding:30px 0}
.contact-intro .contact-title{font-size:clamp(34px,3.6vw,56px);font-weight:900;line-height:1.6;letter-spacing:-.07em}
.contact-intro .contact-title em{font-style:normal;color:var(--accent)}
.contact-lead{font-size:13px;line-height:2.2;color:#d1ccc6;margin:24px 0}
.contact-topics{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 60px}
.contact-topics span{font-size:10px;padding:7px 11px;border:1px solid var(--line)}
.contact-direct{border-top:1px solid var(--line);padding-top:25px}
.contact-direct .eyebrow{display:block;margin-bottom:12px}
.contact-direct>a{display:flex;justify-content:space-between;max-width:370px;font-size:clamp(17px,2vw,25px);font-weight:700;letter-spacing:-.03em}
.contact-direct>a>span{color:var(--accent)}
.contact-direct p{font-size:11px;line-height:2;color:var(--muted);margin-top:18px}
.contact-graphic{display:flex;align-items:end;gap:6px;height:54px;margin-top:40px;opacity:.6;max-width:340px}
.contact-graphic i{flex:1;background:var(--accent);height:30%}
.contact-graphic i:nth-child(4n+1){height:70%;background:#eaf451}.contact-graphic i:nth-child(3n){height:100%}.contact-graphic i:nth-child(5n){height:55%;background:#65cfdf}.contact-graphic i:nth-child(7n){height:83%;background:#7f78f1}
.contact-form-panel{padding:34px;background:#1b1c1f;border:1px solid var(--line);border-top:3px solid var(--accent)}
.form-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.form-heading :is(h2,h3){font-size:22px;letter-spacing:-.04em}.form-heading>span{font-size:10px;color:var(--accent);white-space:nowrap}
.form-guide{font-size:11px;line-height:2;color:#c8c4be;margin:18px 0 30px}
.form-row{display:flex;flex-direction:column;margin-bottom:24px;gap:10px;min-width:0}
.form-row label{font-size:12px;font-weight:700}.form-row label>span{color:var(--accent);margin-left:4px}.form-row label>small{font-size:10px;font-weight:400;color:var(--muted);margin-left:8px}
.contact-page :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;font:400 14px/1.8 'Noto Sans JP',sans-serif;color:var(--ink);background:#111215;border:1px solid #ffffff36;border-radius:0;padding:12px 14px}
.contact-page :is(input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.contact-page ::placeholder{color:#979797;opacity:1;font-size:12px}.contact-page textarea{resize:vertical;min-height:150px}
.input-hint{text-align:right;color:var(--muted);font-size:10px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-consent{display:flex;align-items:start;gap:10px;font-size:11px;line-height:2;cursor:pointer;margin:8px 0 25px}.form-consent input{accent-color:var(--accent);width:17px;height:17px;margin:3px 0 0;flex:none}.form-consent a{text-decoration:underline;text-underline-offset:4px}
.contact-submit{display:flex;justify-content:space-between;align-items:center;width:100%;padding:19px 22px;border:0;background:var(--accent);color:#111;font:800 15px 'Noto Sans JP',sans-serif;cursor:pointer}.contact-submit:hover{background:#ff7957}.contact-submit>span{font-size:25px}
.submit-note{font-size:10px;line-height:2;color:#bbb8b1;margin:14px 0 0}.contact-fallback{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.contact-fallback p{font-size:10px;line-height:2;color:#bbb8b1}.contact-fallback a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.contact-fallback button{background:transparent;color:var(--ink);border:1px solid var(--line);padding:12px 16px;font:500 11px 'Noto Sans JP',sans-serif;cursor:pointer}.contact-fallback button:hover{border-color:var(--accent)}.contact-fallback button span{margin-left:20px;color:var(--accent)}
#manual-copy{margin-top:18px}#manual-copy label{display:block;font-size:11px;line-height:1.8;margin-bottom:10px}#copy-text{font-size:12px}.contact-status{font-size:12px;line-height:2;color:#eaf451;margin-bottom:0}.contact-status:empty{display:none}.form-notice{font-size:12px;line-height:2;color:#eaf451}
.privacy-content{max-width:840px;margin:auto;padding:40px 5% 100px}.privacy-content h1{font-size:clamp(24px,4vw,38px);line-height:1.6;letter-spacing:-.05em}.privacy-content h2{font-size:20px;margin:35px 0 16px;letter-spacing:-.03em}.privacy-content p{font-size:13px;line-height:2.3;color:#ccc7c0}.privacy-content a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.contact-layout{gap:5%;grid-template-columns:.9fr 1.1fr}.contact-form-panel{padding:25px}.contact-intro .contact-title{font-size:35px}.contact-topics{margin-bottom:40px}}
@media(max-width:760px){.contact-layout{padding:10px 6% 50px;display:block}.contact-intro{position:static;padding:10px 0 30px}.contact-intro .contact-title{font-size:37px}.contact-intro .eyebrow{font-size:8px}.contact-lead{font-size:12px;margin:16px 0}.contact-topics{margin:20px 0 28px;gap:6px}.contact-topics span{font-size:9px;padding:5px 8px}.contact-direct{padding-top:20px}.contact-direct>a{font-size:21px}.contact-direct p{font-size:10px;margin:12px 0 0}.contact-graphic{display:none}.contact-form-panel{padding:25px 20px}.form-heading :is(h2,h3){font-size:20px}.form-guide{margin-bottom:24px}.form-row{margin-bottom:22px}.contact-page :is(input:not([type=checkbox]),select,textarea){font-size:16px;padding:11px 12px}.form-pair{grid-template-columns:1fr;gap:0}.contact-submit{font-size:14px;padding:16px 18px}.contact-fallback p br{display:none}.privacy-content{padding:20px 6% 50px}.privacy-content p{font-size:12px}.contact-page .product-header nav{display:none}.contact-page .header-cta{font-size:10px}.contact-page .header-cta span{margin-left:8px}}

/* Homepage contact section: share the form without importing product-page styles. */
.contact-panel{--muted:#aaaeb7;--ink:#f5f1e9;background:#111215;border-top:1px solid #ffffff24;padding-bottom:60px}
.contact-panel>.panel-index{color:#f15a36}
.contact-panel .contact-layout{padding:55px 0 15px;max-width:1380px;gap:8%}
.contact-panel .contact-intro{position:static;padding-top:25px}
.contact-panel .contact-title{margin:0;font-size:clamp(34px,3.8vw,58px);line-height:1.6;letter-spacing:-.07em}
.contact-panel .eyebrow{color:#f15a36;margin:0 0 22px;font:10px/1.8 monospace;letter-spacing:2px}
.contact-panel .contact-direct .eyebrow{margin-bottom:12px}
.contact-panel .form-heading :is(h2,h3){margin:0;font-size:22px;line-height:1.5}
.contact-panel button:disabled{cursor:wait;opacity:.65}
.contact-panel a:focus-visible,.contact-panel button:focus-visible{outline-color:#f15a36}
@media(max-width:760px){.contact-panel{padding-bottom:45px}.contact-panel .contact-layout{padding:30px 0 0}.contact-panel .contact-intro{padding:0 0 30px}.contact-panel .contact-title{font-size:36px}.contact-panel .eyebrow{font-size:8px}.contact-panel .form-heading :is(h2,h3){font-size:20px}}

.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
