body[data-page="contact"]{--contact-ink:#eef1ed;--contact-muted:#b5c0bd;--contact-faint:#93a19f;--contact-rule:rgba(230,240,236,.19)}
.contact-main{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:clamp(120px,17svh,185px);padding-bottom:clamp(58px,10svh,105px)}
.contact-index{font-size:11px;letter-spacing:.13em;color:var(--contact-faint)}
.contact-index span{margin:0 .65em;color:var(--contact-faint)}
.contact-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(55px,9vw,140px);margin-top:clamp(44px,7svh,80px)}
.contact-introduction h1{max-width:13em;color:var(--contact-ink);font-size:clamp(32px,3.6vw,52px);font-weight:400;line-height:1.35;letter-spacing:.015em}
.contact-introduction p{max-width:370px;margin-top:25px;color:var(--contact-muted);font-size:14px;line-height:2}
.contact-details{min-width:0}
.contact-label{display:block;color:var(--contact-faint);font-size:10px;letter-spacing:.14em}
.contact-address{position:relative;padding-bottom:28px}
.contact-address>a{display:flex;align-items:center;gap:15px;width:max-content;max-width:100%;margin-top:17px;color:var(--contact-ink);font-size:clamp(21px,2.25vw,32px);line-height:1.35;white-space:nowrap;transition:color .28s ease}
.contact-address>a:hover{color:#d3e7e2}
.contact-address svg,.contact-topic svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.contact-address svg{width:20px;height:20px;color:var(--contact-muted)}
.contact-copy{margin-top:16px;padding:0 0 5px;border-bottom:1px solid var(--contact-rule);color:var(--contact-muted);font-size:12px;transition:color .28s ease,border-color .28s ease}
.contact-copy:hover{color:var(--contact-ink);border-color:var(--contact-ink)}
.contact-copy-status{margin-left:15px;color:var(--contact-muted);font-size:11px}
.contact-topics{border-top:1px solid var(--contact-rule)}
.contact-topic{display:grid;grid-template-columns:33px minmax(0,1fr) 20px;gap:12px;align-items:center;min-height:93px;border-bottom:1px solid var(--contact-rule);transition:background-color .3s ease}
.contact-topic:hover{background-color:rgba(220,238,231,.045)}
.contact-topic__number{align-self:start;padding-top:28px;color:var(--contact-faint);font-size:10px}
.contact-topic__text{display:flex;flex-direction:column;gap:6px;min-width:0}
.contact-topic__text strong{color:var(--contact-ink);font-size:16px;font-weight:400}
.contact-topic__text small{color:var(--contact-muted);font-size:12px;line-height:1.65}
.contact-topic>svg{color:var(--contact-muted);transition:transform .38s cubic-bezier(.16,1,.3,1)}
.contact-topic:hover>svg{transform:translate(3px,-3px)}
.contact-guidance{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(55px,9vw,140px);margin-top:clamp(38px,7svh,78px);padding-top:19px;border-top:1px solid var(--contact-rule)}
.contact-guidance p{max-width:570px;color:var(--contact-muted);font-size:12px;line-height:1.95}
@media(prefers-reduced-motion:no-preference){.contact-index,.contact-introduction,.contact-address,.contact-topics,.contact-guidance{animation:contact-enter .62s cubic-bezier(.16,1,.3,1) both}.contact-introduction{animation-delay:.06s}.contact-address{animation-delay:.12s}.contact-topics{animation-delay:.18s}.contact-guidance{animation-delay:.24s}}
@keyframes contact-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:800px){.contact-main{min-height:100svh;padding-top:128px;padding-bottom:68px}.contact-grid{grid-template-columns:1fr;gap:56px;margin-top:42px}.contact-introduction h1{font-size:clamp(31px,6vw,42px)}.contact-introduction p{max-width:470px;margin-top:18px;font-size:13px}.contact-guidance{grid-template-columns:130px 1fr;gap:20px;margin-top:52px}}
@media(max-width:520px){.contact-main{padding-top:112px;padding-bottom:70px}.contact-grid{gap:45px;margin-top:38px}.contact-introduction h1{font-size:32px}.contact-introduction p{font-size:13px}.contact-address>a{font-size:clamp(19px,5.3vw,24px);gap:8px}.contact-address svg{width:17px;height:17px}.contact-topic{min-height:86px}.contact-guidance{grid-template-columns:1fr;gap:12px;margin-top:43px}.contact-guidance p{font-size:12px}}
@media(max-width:350px){.contact-main{padding-top:88px;padding-bottom:38px}.contact-grid{gap:30px;margin-top:25px}.contact-introduction p{margin-top:12px}.contact-address{padding-bottom:20px}.contact-topic{min-height:72px}.contact-topic__number{padding-top:21px}.contact-guidance{margin-top:30px}}
