/* FOREVER MOMENT — diagnosis-first contact experience */
.site-header.detail-header{z-index:40;pointer-events:auto}
.site-header.detail-header nav,.site-header.detail-header nav a{pointer-events:auto;touch-action:manipulation}
.detail-quick-menu{position:fixed;z-index:18;right:24px;top:50%;width:82px;transform:translateY(-50%);display:flex;flex-direction:column;background:rgba(8,10,13,.88);border:1px solid rgba(199,166,106,.32);backdrop-filter:blur(15px);box-shadow:0 20px 55px rgba(0,0,0,.3)}
.detail-quick-menu a{min-height:62px;padding:10px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.09);color:#c7c4bd;transition:.25s}
.detail-quick-menu a:hover,.detail-quick-menu .quick-contact{background:rgba(199,166,106,.12);color:var(--gold)}
.detail-quick-menu span{font-size:12px;white-space:nowrap}
.detail-quick-menu small{color:var(--gold);font:400 10px Georgia,serif;letter-spacing:.06em}
.detail-quick-menu b{color:var(--gold);font-size:16px;font-weight:400}
.detail-quick-menu .quick-top{border-bottom:0}
.contact-hero{min-height:700px;grid-template-columns:minmax(300px,400px) minmax(520px,640px);justify-content:center;gap:clamp(60px,6vw,100px);align-items:center;padding:145px 7vw 95px}
.contact-hero:after{width:42vw;height:42vw}
.contact-hero-notes{align-self:center;display:flex;flex-direction:column;gap:150px;position:relative;z-index:1}
.contact-hero-notes .eyebrow{margin:0;color:var(--gold);font:500 11px "Noto Sans KR",sans-serif;letter-spacing:.22em}
.contact-hero-notes>p:last-child{margin:0;color:#a7a6a2;font-size:16px;line-height:1.9}
.contact-hero h1{position:relative;z-index:1;width:max-content;max-width:100%;justify-self:start;margin:0;font-size:clamp(2.8rem,4vw,4.4rem);line-height:1.16;letter-spacing:-.048em;font-weight:300}
.contact-detail{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:clamp(45px,6vw,95px);align-items:start;background:#0a0d12}
.contact-guide{position:sticky;top:125px}
.contact-guide .eyebrow,.contact-process .eyebrow{margin:0 0 24px;color:var(--gold);font:500 11px "Noto Sans KR",sans-serif;letter-spacing:.2em}
.contact-guide h2{font-size:clamp(2rem,2.8vw,2.7rem);line-height:1.3;margin-bottom:28px}
.contact-guide h2 span,.contact-guide-copy span{display:block;white-space:nowrap}
.contact-guide>p:not(.eyebrow){max-width:510px}
.contact-guide-copy{line-height:2.05}
.contact-guide>a{display:inline-block;margin-top:34px;padding-bottom:5px;border-bottom:1px solid #65676b;font:400 15px Georgia,serif;color:#d8d3c9}
.reply-promise{margin-top:42px;padding:28px 30px;border:1px solid rgba(199,166,106,.52);background:linear-gradient(135deg,rgba(199,166,106,.13),rgba(255,255,255,.01))}
.reply-promise small{display:block;margin-bottom:15px;color:var(--gold);font:500 10px Georgia,serif;letter-spacing:.18em}
.reply-promise strong{font-size:15px;line-height:1.65;font-weight:400;white-space:nowrap}
.detail-form{gap:34px 22px}
.detail-form .field label,.service-choice legend{color:#c9c5bd;font-size:14px}
.detail-form .field label b,.service-choice legend b{margin-right:9px;color:var(--gold);font:500 12px Georgia,serif}
.detail-form .field label small{margin-left:6px;color:#777;font-size:11px}
.service-choice{margin:0;padding:0;border:0}
.service-choice legend{margin-bottom:18px}
.service-choice>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.service-choice label{position:relative;cursor:pointer}
.service-choice input{position:absolute;opacity:0;pointer-events:none}
.service-choice span{min-height:55px;padding:15px 16px;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;color:#999b9e;font-size:13px;line-height:1.4;transition:.25s}
.service-choice input:checked+span,.service-choice label:hover span{border-color:var(--gold);background:rgba(199,166,106,.11);color:#eee8de}
.service-choice input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}
.submit-note{text-align:center;margin:-18px 0 0;color:#777;font-size:12px}
.contact-process{padding:125px 9vw 140px;background:linear-gradient(180deg,#0d1219,#080a0d);border-bottom:1px solid var(--line)}
.contact-process-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;align-items:start;margin-bottom:65px}
.contact-process-head h2{margin:0;font-size:clamp(2rem,3.2vw,3.8rem);line-height:1.18;font-weight:300;letter-spacing:-.045em;white-space:nowrap}
.contact-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.contact-process-grid article{min-height:245px;padding:30px 25px 20px 0;border-right:1px solid var(--line)}
.contact-process-grid article+article{padding-left:25px}
.contact-process-grid article:last-child{border-right:0}
.contact-process-grid span{color:var(--gold);font:500 12px Georgia,serif}
.contact-process-grid h3{margin:34px 0 18px;font-size:20px;font-weight:400}
.contact-process-grid p{margin:0;color:#85878b;font-size:14px;line-height:1.8}
@media(max-width:900px){.detail-quick-menu{right:12px;top:auto;bottom:18px;width:54px;transform:none}.detail-quick-menu a:not(.quick-top){display:none}.detail-quick-menu .quick-top{min-height:54px}.detail-quick-menu .quick-top span{font-size:10px}.contact-hero{min-height:auto;grid-template-columns:1fr;padding:130px 24px 80px;gap:50px}.contact-hero-notes{gap:28px}.contact-hero h1{font-size:clamp(2.4rem,10vw,4.2rem)}.contact-hero-notes>p:last-child{font-size:15px}.contact-detail{grid-template-columns:1fr;gap:70px}.contact-guide{position:static}.contact-guide h2 span,.contact-guide-copy span,.reply-promise strong{white-space:normal}.contact-process{padding:90px 24px}.contact-process-head{grid-template-columns:1fr;gap:15px}.contact-process-head h2{white-space:normal}.contact-process-grid{grid-template-columns:1fr}.contact-process-grid article,.contact-process-grid article+article{min-height:auto;padding:27px 0;border-right:0;border-bottom:1px solid var(--line)}.contact-process-grid h3{margin:16px 0 10px}}
@media(max-width:560px){.service-choice>div{grid-template-columns:1fr}.service-choice span{min-height:50px}.reply-promise{padding:24px 22px}}
