.contact-hero{background:radial-gradient(ellipse at 85% 30%,#194863,transparent 50%),linear-gradient(120deg,#061f38,#0b3555);color:#f7f1e7}
.contact-hero-inner{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;align-items:center;padding-top:80px;padding-bottom:80px}
.contact-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:var(--gold-deep);margin-bottom:20px}
.contact-hero .contact-eyebrow{color:#f4b94f}
.contact-hero h1{font-size:clamp(2.6rem,4.7vw,4.8rem);line-height:1.1;color:#f7f1e7;letter-spacing:-.03em}
.contact-hero h1 em{color:#f4b94f}
.contact-intro{color:#b7c8d3;max-width:600px;margin:26px 0 30px;line-height:1.9}
.contact-gold{background:#f4b94f;color:#061f38;gap:20px}
.contact-address-card{border:1px solid #f4b94f44;border-radius:24px;background:#ffffff06;padding:35px;box-shadow:0 20px 50px #0002}
.contact-address-card svg{width:60px;stroke:#f4b94f;stroke-width:1.5;margin-bottom:25px}
.contact-address-card h2{color:#f7f1e7;font-size:2.8rem}
.contact-address-card h2 span{display:block;font-family:var(--font-body);font-weight:400;font-size:.9rem;color:#b7c8d3;line-height:1.6;margin-top:10px}
.contact-address-card>p:not(.contact-eyebrow){margin:25px 0;color:#b7c8d3}
.contact-address-card>a{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #ffffff25;padding-top:20px;color:#f4b94f;font-weight:700;font-size:.9rem}
.contact-page{scroll-margin-top:110px}
.contact-page .section-head h2,.contact-map-heading h2{font-size:clamp(2rem,3vw,3rem)}
.contact-columns{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:start}
.contact-columns .card{background:var(--surface);min-width:0}
.contact-columns .card-body{gap:12px}
.contact-columns h2{font-size:2rem}
.contact-columns h3{font-size:1.7rem}
.contact-columns a{overflow-wrap:anywhere}
.contact-columns .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.contact-columns input,.contact-columns textarea{width:100%;min-width:0;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px 16px;font:inherit}
.contact-columns textarea{resize:vertical;min-height:160px}
.contact-columns label{display:block;font-size:.85rem;font-weight:700;margin-bottom:8px}
.contact-columns input:focus,.contact-columns textarea:focus{outline:2px solid var(--blue-megara);outline-offset:2px}
.contact-columns .btn-whatsapp{margin-top:22px;max-width:100%;white-space:normal}
.contact-form-note{font-size:.8rem;line-height:1.8;color:var(--text-soft);margin-top:20px}
.contact-form-note a{text-decoration:underline;text-underline-offset:3px}
.contact-map-heading{margin-top:65px}
.contact-map-heading em{color:var(--gold-deep)}
.contact-page iframe{border-radius:var(--radius-lg)}
.contact-page a:focus-visible,.contact-hero a:focus-visible,.contact-page button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:900px){.contact-hero-inner{gap:30px;grid-template-columns:1.3fr 1fr}.contact-address-card{padding:25px}.contact-columns{grid-template-columns:1fr}.contact-columns .card-body{padding:25px!important}}
@media(max-width:600px){.contact-hero-inner{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px;gap:35px}.contact-address-card h2{font-size:2rem}.contact-address-card svg{width:45px;margin-bottom:15px}.contact-page{padding-top:45px;padding-bottom:45px}.contact-columns .form-grid{grid-template-columns:1fr}.contact-map-heading{margin-top:40px}.contact-page iframe{height:320px}.contact-columns .card-body{padding:22px!important}}
.contact-details{padding:38px;border-radius:24px;background:radial-gradient(ellipse at 0 0,#164869,transparent 65%),#08243d;color:#f7f1e7;overflow:hidden;min-width:0;align-self:stretch;display:flex;flex-direction:column}
.contact-details .contact-eyebrow{color:#f4b94f;font-size:.65rem}
.contact-details h2{color:#f7f1e7;font-size:2.6rem;line-height:1.15}
.contact-details h2 em{display:block;color:#f4b94f}
.contact-details-intro{color:#b7c8d3;font-size:.88rem;line-height:1.8;margin:20px 0 28px}
.contact-detail-row{display:flex;gap:16px;padding:20px 0;border-top:1px solid #ffffff1a;align-items:flex-start}
.contact-detail-icon{width:42px;height:42px;flex-shrink:0;border:1px solid #f4b94f33;border-radius:12px;background:#ffffff06;display:grid;place-items:center;color:#f4b94f}
.contact-detail-icon svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact-detail-row>div{min-width:0;flex:1}
.contact-detail-label{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#b7c8d3;margin-bottom:6px}
.contact-detail-row a,.contact-detail-row p{font-size:.9rem;line-height:1.7;color:#f7f1e7;overflow-wrap:anywhere}
.contact-detail-row a{display:flex;justify-content:space-between;gap:8px}
.contact-detail-row a:hover{color:#f4b94f}
.contact-details-footer{margin-top:auto;padding-top:24px;border-top:1px solid #ffffff1a;font-size:.78rem;color:#b7c8d3}
.contact-details-footer span{color:#f4b94f;margin-right:10px}
.contact-columns .contact-message-card{border-radius:24px;overflow:hidden}
.contact-message-card .card-body{padding:0!important;display:block}
.contact-form-heading{display:flex;gap:16px;align-items:center;padding:28px 32px;background:var(--bg-alt);border-bottom:1px solid var(--border)}
.contact-form-heading .contact-eyebrow{font-size:.62rem;margin-bottom:7px}
.contact-form-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--bg);color:var(--heading);border:1px solid var(--border);font:2rem Georgia,serif;flex-shrink:0}
.contact-message-card form{margin-top:0!important}
.contact-fieldset{border:0;border-bottom:1px solid var(--border);padding:26px 32px 30px;min-width:0;margin:0}
.contact-fieldset legend{float:left;display:flex;align-items:center;gap:12px;width:100%;font-family:var(--font-title);color:var(--heading);font-size:1.3rem;margin-bottom:12px;padding:0}
.contact-fieldset legend span{font-size:.8rem;display:grid;place-items:center;width:32px;height:32px;background:var(--bg);color:var(--gold-deep);border-radius:50%;flex-shrink:0}
.contact-fieldset-hint{clear:both;font-size:.75rem;color:var(--text-soft);margin-bottom:20px}
.contact-fieldset .form-group{clear:both}
.contact-fieldset .form-grid{clear:both;gap:16px}
.contact-fieldset .form-grid .form-group:first-child{grid-column:1/-1}
.contact-submit-area{padding:24px 32px 28px;background:var(--bg-alt)}
.contact-submit-area .contact-form-note{margin-top:0;font-size:.74rem}
.contact-columns .contact-submit-area .btn-whatsapp{margin-top:18px;min-height:48px;font-size:.85rem}
.contact-map-panel{margin-top:30px;display:grid;grid-template-columns:340px minmax(0,1fr);border:1px solid var(--border);border-radius:24px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}
.contact-map-info{padding:36px;display:flex;flex-direction:column;align-items:flex-start;gap:18px;background:var(--surface)}
.contact-map-tag{font-size:.65rem;letter-spacing:.15em;color:var(--gold-deep);font-weight:800}
.contact-map-info h3{font-size:1.8rem}
.contact-map-info>p,.contact-map-hours p{font-size:.86rem;color:var(--text-soft);line-height:1.8}
.contact-map-hours{padding-top:18px;border-top:1px solid var(--border);width:100%}
.contact-map-hours>span{font-weight:700;font-size:.78rem}
.contact-map-info .btn{margin-top:auto;font-size:.85rem;gap:18px}
.contact-map-panel iframe{height:100%;min-height:420px;border-radius:0}
@media(max-width:900px){.contact-details{padding:30px}.contact-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.contact-details-footer{margin-top:20px}.contact-map-panel{grid-template-columns:280px minmax(0,1fr)}.contact-map-info{padding:25px}.contact-columns .contact-message-card .card-body{padding:0!important}}
@media(max-width:600px){.contact-details{padding:26px}.contact-detail-list{grid-template-columns:1fr}.contact-form-heading{padding:24px 22px}.contact-columns .contact-form-heading h3{font-size:1.4rem}.contact-fieldset{padding:24px 22px}.contact-submit-area{padding:22px}.contact-map-panel{grid-template-columns:1fr}.contact-map-info{gap:14px}.contact-map-info .btn{margin-top:8px}.contact-map-panel iframe{height:320px;min-height:320px}}
