.contact-hub{padding:65px 0;background:#faf9f5}.contact-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.contact-tabs>.contact-card{display:flex;flex-direction:column;padding:0;min-width:0;background:#fff;border:1px solid #e6e0d7;box-shadow:0 14px 35px #302c2b08;color:#302c2b;text-align:center}.contact-tab-body{padding:36px 20px 38px;display:flex;flex-direction:column;align-items:center;flex:1}.contact-tab-icon{display:grid;place-items:center;width:75px;height:75px;background:#f5eddf;color:#c5a059;margin-bottom:28px}.contact-tab-icon svg{width:37px;height:37px}.contact-tab-title{font:700 25px/1.35 Georgia,'Times New Roman',serif;margin-bottom:20px}.contact-tab-detail{font:400 13px/1.85 Inter,Roboto,'Segoe UI',sans-serif;color:#756d64;overflow-wrap:anywhere;min-width:0;width:100%}.contact-tab-detail>span{font-size:12px}.contact-tab-footer{display:flex;align-items:stretch;width:100%;border-top:1px solid #e6e0d7}.contact-tab-footer>span{flex:1;padding:19px 8px;font:600 11px/1.6 Inter,sans-serif}.contact-tab-footer b{display:grid;place-items:center;width:49px;background:#f0eeea;font:700 20px Georgia,serif}.contact-tabs>.contact-card[aria-selected="true"]{border-color:#802a36}.contact-tabs>.contact-card[aria-selected="true"] .contact-tab-icon{color:#802a36}.contact-tabs>.contact-card[aria-selected="true"] .contact-tab-footer>span{background:#802a36;color:white}.contact-tabs>.contact-card:focus-visible,.contact-panel:focus-visible,.contact-panel a:focus-visible{outline:3px solid #c5a059;outline-offset:4px}.contact-panel{margin-top:35px;padding:30px 35px;border:1px solid #e7dec9;background:white;border-radius:8px}.contact-panel[hidden]{display:none!important}.contact-panel h2{font:700 28px/1.35 Georgia,'Times New Roman',serif;color:#302c2b;margin:0 0 18px}.contact-panel p{font:400 15px/1.85 Inter,Roboto,'Segoe UI',sans-serif;color:#655c55;margin:0 0 8px}.contact-panel p:last-child{margin-bottom:0}.contact-panel a{color:#802a36;overflow-wrap:anywhere}.contact-panel a:hover{color:#68222c;text-decoration:none}@media(max-width:1100px){.contact-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.contact-tab-body{padding:30px 25px}.contact-tab-detail{font-size:14px}}@media(max-width:575px){.contact-hub{padding:40px 0}.contact-tabs{grid-template-columns:1fr}.contact-tab-body{padding:26px}.contact-tab-icon{margin-bottom:20px;width:65px;height:65px}.contact-tab-title{margin-bottom:15px}.contact-panel{padding:25px 20px}.contact-panel h2{font-size:26px}}
.contact-tab-detail a{color:inherit;text-decoration:none}.contact-tab-detail a:hover{color:#802a36}.contact-tab-detail a:focus-visible{outline:2px solid #c5a059;outline-offset:3px}

.contact-message-section{background:#fff;padding:65px 0}.contact-message-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:start}.contact-message-layout h2{font:700 30px/1.35 Georgia,'Times New Roman',serif;color:#302c2b;margin:0 0 24px}.contact-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.contact-message-layout label{font:500 13px/1.7 Inter,Roboto,'Segoe UI',sans-serif;color:#655c55;margin-bottom:20px}.contact-message-layout input,.contact-message-layout select,.contact-message-layout textarea{font:400 14px/1.6 Inter,Roboto,'Segoe UI',sans-serif;background:#faf9f5;border:1px solid #ddd5c7;border-radius:4px;padding:12px;width:100%;min-width:0}.contact-message-layout input:focus,.contact-message-layout select:focus,.contact-message-layout textarea:focus{outline:2px solid #c5a059;outline-offset:1px}.contact-message-submit{background:#802a36;color:#fff;border:0;padding:16px 25px;display:inline-flex;gap:25px;align-items:center;border-radius:4px;font:600 13px Inter,sans-serif;cursor:pointer}.contact-message-submit:hover{background:#68222c}.contact-message-submit:focus-visible{outline:3px solid #c5a059;outline-offset:3px}.contact-email-note,#contact-message-status{font:400 12px/1.8 Inter,sans-serif;color:#756d64;margin:14px 0 0}.contact-map-address{font:400 14px/1.85 Inter,Roboto,'Segoe UI',sans-serif;color:#655c55;margin-bottom:24px}.contact-map-column iframe{display:block;width:100%;height:450px;border-radius:8px;background:#faf9f5}@media(max-width:991px){.contact-message-layout{gap:30px}.contact-field-grid{grid-template-columns:1fr}.contact-map-column iframe{height:540px}}@media(max-width:767px){.contact-message-section{padding:45px 0}.contact-message-layout{grid-template-columns:1fr;gap:35px}.contact-map-column iframe{height:350px}.contact-field-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.contact-field-grid{grid-template-columns:1fr}}

/* Name and subject full width; email and phone share one row. */
.contact-field-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-field-grid label[for="contact-name"]{grid-column:1/-1;grid-row:1}.contact-field-grid label[for="contact-email"]{grid-column:1;grid-row:2}.contact-field-grid label[for="contact-phone"]{grid-column:2;grid-row:2}.contact-field-grid label[for="contact-subject"]{grid-column:1/-1;grid-row:3}

.required-mark{color:#802a36;font-weight:700}

/* Soft elevation for contact information cards. */
.contact-tabs>.contact-card{box-shadow:0 10px 28px rgba(48,44,43,.12),0 2px 7px rgba(48,44,43,.05)}

#contact-message-form{scroll-margin-top:260px}@media(max-width:767px){#contact-message-form{scroll-margin-top:200px}}

#contact-message-status.contact-form-alert{position:relative;display:block;margin:20px 0 0;padding:22px 48px 22px 20px;color:#fff;font:400 14px/1.6 Inter,Arial,sans-serif;border:0;border-radius:0;text-align:left;overflow-wrap:anywhere}#contact-message-status[hidden]{display:none!important}#contact-message-status.contact-form-alert--error{background:#f65d55}#contact-message-status.contact-form-alert--success{background:#258348}#contact-message-status.contact-form-alert--info{background:#2875a8}#contact-message-status strong{color:inherit;font-weight:700}#contact-message-status .contact-alert-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#fff;font-size:24px;line-height:1;padding:6px;cursor:pointer}#contact-message-status .contact-alert-close:focus-visible{outline:2px solid #fff;outline-offset:2px}