/* 已套用的聯絡區第三版。 */
#contact{display:grid;align-items:start;gap:32px;padding:36px max(5vw,28px) 42px}
#contact>div:first-child{min-width:0}
#contact .section-label{margin-bottom:14px;font-size:13px}
#contact h2{font-size:clamp(27px,3.3vw,38px);line-height:1.4;letter-spacing:-.03em}
#contact .contact-details{width:100%;max-width:none;margin:0;font-size:14px;gap:12px;line-height:1.85}
#contact .contact-details-title{font-size:21px;margin-bottom:3px}
#contact .contact-details-intro{font-size:14px;max-width:420px;margin-bottom:16px;letter-spacing:.025em;line-height:1.95}
#contact .contact-detail-row{grid-template-columns:5em minmax(0,1fr);column-gap:12px;align-items:baseline}
#contact .contact-detail-row>span:first-child{letter-spacing:.045em;white-space:nowrap}
#contact .contact-detail-row>a{letter-spacing:.01em;font-variant-numeric:tabular-nums}
#contact .contact-detail-row>a[href^="mailto:"]{letter-spacing:0}
#contact .contact-address.contact-detail-row{align-items:center}
#contact .contact-address-content{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;color:var(--ink);font-weight:400;letter-spacing:.02em}
#contact .map-directions{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:5px 11px;background:var(--paper);border-radius:6px;white-space:nowrap;font-weight:600;font-size:12px;color:var(--pine);text-decoration:none}
#contact .map-directions:hover{background:var(--mist)}
#contact .map-directions:focus-visible{outline:2px solid var(--pine);outline-offset:3px}
#contact .contact-extra{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;min-width:0}
#contact .business-hours{width:100%;margin:0;font-size:14px;line-height:2;text-align:left;letter-spacing:.025em}
#contact .business-hours-title{font-size:17px;margin:0 0 12px}
#contact .business-hours p{margin:0 0 12px}
#contact .contact-tax-id{font-size:14px;margin-top:0}
#contact .business-hours p:last-child{margin-bottom:0}
#contact .contact-experience{width:100%;min-width:0;margin:18px 0 0}
#contact .contact-experience img{display:block;width:100%;height:auto;aspect-ratio:1.8/1;object-fit:cover;object-position:55% 45%;border-radius:8px}
#contact .contact-experience figcaption{margin-top:8px;font-size:11px;line-height:1.8;letter-spacing:.02em;color:var(--muted)}
#contact .contact-details .contact-details-title,#contact .business-hours .business-hours-title{letter-spacing:.035em;line-height:1.6}
@media(max-width:480px){#contact .contact-detail-row{grid-template-columns:4.6em minmax(0,1fr);column-gap:10px}#contact .contact-details-intro,#contact .business-hours{letter-spacing:.015em}}
@media(max-width:760px){#contact{grid-template-columns:1fr;gap:28px;padding:30px 24px}#contact>div:first-child{grid-column:auto}#contact h2{font-size:29px}#contact .contact-extra{align-self:auto}#contact .contact-details-title{font-size:20px}}
@media(min-width:761px){#contact{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:26px}#contact>div:first-child{grid-column:1/-1}#contact h2 br{display:none}}#contact .contact-details,#contact .contact-extra{background:var(--paper);padding:26px;border-radius:12px;align-self:stretch}#contact .map-directions{background:var(--mist)}#contact .business-hours-title{font:700 21px var(--serif);color:var(--ink)}@media(max-width:760px){#contact .contact-details,#contact .contact-extra{padding:22px}}
#contact .contact-details .contact-detail-row{display:grid;grid-template-columns:5em minmax(0,1fr);gap:0 12px;align-items:baseline;width:100%;margin:0;white-space:normal;font-size:14px;line-height:1.75}
#contact .contact-details .contact-detail-row>span:first-child{margin:0;font-size:14px;letter-spacing:0;font-weight:600}
#contact .contact-details .contact-detail-row>a,#contact .contact-details .contact-detail-value,#contact .contact-details .contact-address-content{min-width:0;margin:0;font-size:14px;line-height:1.75;letter-spacing:0;font-weight:400;color:var(--ink);overflow-wrap:anywhere}
#contact .contact-details .contact-address-content{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px}
#contact .contact-details .map-directions{font-size:14px;line-height:1.5;min-height:34px}
#contact .contact-details .contact-tax-id{margin-top:0}
