.contact-page{background:#fff}
.contact-page-intro{position:relative;overflow:hidden;padding:147px 0 57px;background:linear-gradient(110deg,#edf6f1 0%,#e3efe7 100%);border-bottom:1px solid #e0e9e8}
.contact-page-intro h1{font-size:clamp(2.8rem,4.8vw,3.8rem);line-height:1.1;letter-spacing:-.025em}
.contact-page-intro p:last-child{position:relative;z-index:1;max-width:760px;margin-top:22px;color:var(--muted);font-size:1.08rem;line-height:1.8}
.contact-page-content{padding:62px 0 76px}
.contact-page-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:43px;align-items:start}
.contact-inquiry{min-width:0;scroll-margin-top:0}
.contact-inquiry-heading h2{font-size:2.05rem;line-height:1.25;margin-bottom:16px}
.contact-inquiry-heading p{max-width:690px;font-size:1.02rem;line-height:1.8;color:var(--muted)}
.contact-icon,.contact-location-icon,.contact-detail-icon{display:grid;place-items:center;flex-shrink:0;color:var(--teal)}
.contact-icon{width:42px;height:42px;border-radius:50%;background:#e6f1eb}
.contact-icon svg{width:25px;height:25px}
.contact-email{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:27px;padding:21px 22px;border:1px solid #d6e5df;border-left:3px solid var(--teal);border-radius:9px;background:#f3f8f5}
.contact-email .contact-icon{background:#e1eee7}
.contact-email-address{font-size:1.08rem;font-weight:650;color:var(--blue);text-decoration-thickness:1px;text-underline-offset:5px;overflow-wrap:anywhere}
.contact-email .button{font-size:.94rem;padding:12px 16px;gap:13px}
.inquiry-routes{margin-top:34px;border-top:1px solid var(--line)}
.inquiry-routes article{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:27px;padding:25px 0;border-bottom:1px solid var(--line);scroll-margin-top:0}
.inquiry-routes h3{font:400 1.25rem/1.4 var(--serif);color:var(--blue);margin:0}
.inquiry-routes p{font-size:.98rem;color:var(--muted);line-height:1.75}
.contact-sidebar{min-width:0}
.contact-info-card{background:#f6f9fa;padding:30px 29px 32px;border:1px solid #dce7eb;border-top:3px solid var(--blue);border-radius:10px}
.contact-location-icon{width:51px;height:51px;margin-bottom:21px;border-radius:50%;background:#e4f0eb}
.contact-location-icon svg{width:29px;height:29px}
.contact-info-card h2{font-size:1.85rem;line-height:1.25;margin-bottom:22px}
.contact-address{font-size:1.08rem;color:var(--blue);line-height:1.75;font-weight:550}
.contact-location-note{font-size:.88rem;line-height:1.65;color:var(--muted);margin-top:10px}
.contact-details{margin:25px 0 0;padding-top:22px;border-top:1px solid var(--line);display:grid;gap:19px}
.contact-details>div{display:flex;align-items:center;gap:15px}
.contact-detail-icon{width:29px;height:32px}
.contact-detail-icon svg{width:23px;height:23px}
.contact-details dt{color:var(--muted);font-size:.8rem;line-height:1.5;margin-bottom:3px}
.contact-details dd{margin:0;color:var(--blue);font-size:1.06rem;line-height:1.5;font-weight:550}
.contact-details a{color:inherit;text-decoration:none}.contact-details a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-info-card .button{margin-top:27px;width:100%;justify-content:space-between;gap:20px;font-size:.95rem}
.contact-recruitment{margin-top:24px;padding:28px 29px 30px;border:1px solid #d5e4da;border-top:3px solid #8db7a2;border-radius:10px;background:#f3f8f4;color:var(--ink)}
.contact-recruitment .contact-icon{color:#c2e6d7;background:#ffffff12;margin-bottom:20px}
.contact-recruitment h2{font-size:1.65rem;line-height:1.3;color:var(--blue);margin-bottom:15px}
.contact-recruitment p{font-size:.96rem;line-height:1.8;color:var(--muted);margin-bottom:20px}
.contact-recruitment>a{display:block;overflow-wrap:anywhere;text-underline-offset:5px}
.contact-recruitment-link{color:var(--teal);font-size:.98rem;font-weight:650;text-decoration:none}.contact-recruitment-link span{margin-left:10px}.contact-recruitment-link:hover{text-decoration:underline}
.contact-recruitment-email{color:var(--blue);font-size:.88rem;margin-top:15px}
.contact-navigation-current{text-decoration:underline!important;text-underline-offset:6px}
@media(max-width:1120px){.contact-page-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:30px}.contact-email{grid-template-columns:35px minmax(0,1fr);padding:19px 20px;gap:13px}.contact-email .contact-icon{width:35px;height:35px}.contact-email .button{grid-column:1/-1;justify-self:start}.contact-info-card{padding:27px 25px 29px}.contact-recruitment{padding:26px 25px}.inquiry-routes article{grid-template-columns:1fr;gap:9px;padding:23px 0}}
@media(max-width:900px){.contact-page-grid{grid-template-columns:1fr;gap:32px}.contact-email{grid-template-columns:42px minmax(0,1fr) auto;padding:22px;gap:15px}.contact-email .contact-icon{width:42px;height:42px}.contact-email .button{grid-column:auto}.contact-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.contact-recruitment{margin-top:0}.contact-page-intro p:last-child{max-width:690px}}
@media(max-width:620px){.contact-page-intro{padding:123px 0 43px}.contact-page-intro h1{font-size:3rem}.contact-page-intro p:last-child{font-size:1rem;margin-top:21px}.contact-page-content{padding:43px 0 52px}.contact-inquiry-heading h2{font-size:1.85rem}.contact-inquiry-heading p{font-size:1rem}.contact-email{grid-template-columns:35px minmax(0,1fr);gap:13px;padding:20px 18px;margin-top:23px}.contact-email .contact-icon{width:35px;height:35px}.contact-email-address{font-size:1.05rem}.contact-email .button{grid-column:1/-1}.inquiry-routes{margin-top:28px}.inquiry-routes article{padding:22px 0}.inquiry-routes h3{font-size:1.2rem}.contact-sidebar{grid-template-columns:1fr;gap:21px}.contact-info-card,.contact-recruitment{padding:27px 25px 29px}.contact-info-card h2{font-size:1.8rem}.contact-info-card .button{width:auto;gap:35px}}

/* Simplified contact options. */
.contact-option{padding:26px 0 28px;border-top:1px solid var(--line);scroll-margin-top:0}
.contact-option:first-child{border-top:0;padding-top:0}
.contact-option:last-child{padding-bottom:0}
.contact-option h2{font-size:1.65rem;line-height:1.3;letter-spacing:-.015em;margin:0 0 10px}
.contact-option p{max-width:620px;font-size:1rem;line-height:1.7;color:var(--muted);margin-bottom:13px}
.contact-text-link{display:inline-flex;align-items:center;gap:12px;max-width:100%;color:var(--teal);font-size:.98rem;font-weight:650;line-height:1.55;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-text-link:hover{color:var(--blue)}
.contact-text-link span{flex-shrink:0}
.contact-option .contact-email-address{font-size:1.05rem;overflow-wrap:anywhere}
.contact-option .button{margin-top:3px;gap:18px;font-size:.96rem;padding:12px 20px}
@media(max-width:900px){.contact-option h2{font-size:1.5rem}}
@media(max-width:620px){.contact-option{padding:23px 0 25px}.contact-option h2{font-size:1.5rem}.contact-option p{font-size:1rem}.contact-text-link{font-size:.95rem;gap:10px}.contact-option .contact-email-address{font-size:1.05rem}.contact-option .button{font-size:.95rem}}
