.contact-head{padding:72px 22px 40px;text-align:center;background:var(--grey)}
.contact-head h1{font-size:clamp(40px,6vw,72px)}
.contact-head .sub{color:var(--navy);opacity:.75}

.contact{padding:24px 22px 88px;text-align:left;overflow:visible}
.contact-grid{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}

.bizcard{position:relative;aspect-ratio:1.68;background:var(--navy);color:var(--grey);border-radius:24px;padding:8% 8.5%;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 24px 48px rgba(0,31,61,.25)}
/* Flip: front and back faces share one 3D box that rotates on click */
.flip{perspective:1200px;aspect-ratio:1.68;cursor:pointer;border-radius:24px;-webkit-tap-highlight-color:transparent}
.flip:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,.2,.2,1)}
.flip.is-flipped .flip-inner{transform:rotateY(180deg)}
.bc-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.bc-back{transform:rotateY(180deg);align-items:center;justify-content:center;text-align:center;gap:12px}
.bc-back-logo{width:26%;height:auto}
.bc-tag{font-size:clamp(12px,1.7vw,18px);opacity:.6}
.flip-hint{margin-top:16px;text-align:center;font-size:14px;opacity:.65}
@media (prefers-reduced-motion:reduce){.flip-inner{transition:none}}

.bc-logo{position:absolute;top:13%;right:8.5%;width:11%;height:auto}
.bc-name{font-size:clamp(24px,3.6vw,38px);font-weight:700;color:#fff}
.bc-title{font-size:clamp(14px,1.9vw,20px);opacity:.6;margin-top:4px}
.bc-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}
.bc-lines{display:grid;gap:4px;font-size:clamp(12px,1.7vw,18px)}
.bc-lines p:first-child{color:#fff}
.bc-lines p:not(:first-child){opacity:.6}
.bc-brand{text-align:right;font-size:clamp(12px,1.7vw,18px);opacity:.9}
.bc-brand p:last-child{opacity:.6;margin-top:4px}
.bc-word{font-weight:700;letter-spacing:.3em;color:#fff}

.details{display:grid;gap:0}
.details div{padding:18px 0;border-top:1px solid rgba(0,31,61,.2)}
.details div:last-child{border-bottom:1px solid rgba(0,31,61,.2)}
.details dt{font-size:13px;opacity:.65}
.details dd{font-size:21px;font-weight:600;margin-top:4px}
.details dd span{font-size:15px;font-weight:400;opacity:.7}
.details a{color:var(--navy)}

@media (max-width:900px){
  .contact-grid{grid-template-columns:1fr;gap:32px}
}
