.contact-hero{padding:80px 24px 54px;text-align:center;background:linear-gradient(135deg,#f7fbfc,#e7f3f6)}.contact-hero h1,.contact-card h2,.arrival-note h2{margin:0;font-family:"Playfair Display",Georgia,serif;font-weight:600;line-height:1.08}.contact-hero h1{font-size:clamp(44px,5vw,64px)}.contact-hero>p:last-child{margin:16px 0 0;color:var(--muted);font-size:18px}.contact-layout{width:min(1120px,calc(100% - 40px));margin:70px auto 90px;display:grid;grid-template-columns:.78fr 1.22fr;gap:20px}.contact-card,.map-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 12px 38px rgba(4,65,97,.08)}.contact-card{padding:42px}.contact-card h2{margin-bottom:32px;font-size:36px}.contact-item{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:17px 0;border-top:1px solid var(--line)}.contact-item>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--soft);color:var(--blue);font-weight:700}.contact-item strong{display:block;margin-bottom:3px}.contact-item p{margin:0;color:var(--muted)}.contact-item a:hover{color:var(--blue)}.contact-actions{display:grid;gap:10px;margin-top:28px}.map-card iframe{display:block;width:100%;height:100%;min-height:610px;border:0}.arrival-note{width:min(1120px,calc(100% - 40px));margin:0 auto 95px;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;border-radius:var(--radius);background:var(--dark);color:#fff}.arrival-note>div{padding:55px}.arrival-note .eyebrow{color:#8bd8ea}.arrival-note h2{font-size:42px}.arrival-note p:last-child{color:#cce3eb}.arrival-note img{width:100%;height:100%;min-height:390px;object-fit:cover}@media(max-width:820px){.contact-layout{grid-template-columns:1fr}.map-card iframe{min-height:450px}.arrival-note{grid-template-columns:1fr}.arrival-note img{min-height:330px}}@media(max-width:560px){.contact-hero{padding:55px 20px 40px}.contact-layout{width:calc(100% - 28px);margin:45px auto 65px}.contact-card{padding:30px 24px}.contact-card h2{font-size:31px}.map-card iframe{min-height:390px}.arrival-note{width:calc(100% - 28px)}.arrival-note>div{padding:38px 25px}.arrival-note h2{font-size:35px}}
