.contact-hero{align-items:flex-end;min-height:52vh;display:flex;position:relative;overflow:hidden}.contact-hero-image{object-fit:cover}.contact-hero-overlay{background:linear-gradient(#1e1c1a40 0%,#1e1c1a73 45%,#1e1c1ae0 100%);position:absolute;inset:0}.contact-hero-content{z-index:1;max-width:720px;padding:120px 24px 72px;position:relative}@media (min-width:1024px){.contact-hero-content{padding:140px 40px 96px}}.contact-hero-label{letter-spacing:.4em;text-transform:uppercase;color:#ffffffb3;margin-bottom:16px;font-size:.7rem}.contact-hero-title{color:var(--white);font-size:2.25rem;font-weight:300;line-height:1.15}@media (min-width:768px){.contact-hero-title{font-size:3rem}}.contact-hero-title em{color:var(--rose-light);margin-top:8px;font-style:italic;font-weight:500;display:block}.contact-hero-text{color:#ffffffc7;max-width:560px;margin-top:20px;font-size:1rem;font-weight:300;line-height:1.7}.contact-main{background:linear-gradient(180deg, var(--background) 0%, var(--cream) 100%);padding:48px 0 64px}@media (min-width:768px){.contact-main{padding:72px 0 96px}}@media (min-width:1024px){.contact-main{padding:96px 0 128px}}.contact-grid{align-items:start;gap:40px;display:grid}@media (min-width:1024px){.contact-grid{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:56px}}.contact-info{gap:24px;display:grid}.contact-info-card{border:1px solid var(--border);background:#ffffffeb;border-radius:20px;padding:36px 32px;box-shadow:0 18px 48px #2c2a280f}@media (min-width:768px){.contact-info-card{padding:40px 36px}}.contact-info-eyebrow{letter-spacing:.35em;text-transform:uppercase;color:var(--rose-dark);font-size:.7rem}.contact-info-title{margin-top:12px;font-size:1.75rem;font-weight:500;line-height:1.2}.contact-info-text{color:var(--muted);margin-top:14px;font-size:.95rem;font-weight:300;line-height:1.7}.contact-details{gap:22px;margin-top:32px;list-style:none;display:grid}.contact-detail{align-items:flex-start;gap:16px;display:flex}.contact-detail-icon{background:var(--cream);width:44px;height:44px;color:var(--rose-dark);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.contact-detail-icon svg{width:20px;height:20px}.contact-detail-label{letter-spacing:.2em;text-transform:uppercase;color:var(--rose-dark);font-size:.7rem}.contact-detail-value{color:var(--text);margin-top:4px;font-size:.95rem;font-weight:400;line-height:1.5;transition:color .3s;display:inline-block}.contact-detail-value:hover{color:var(--rose-dark)}.contact-social{border-top:1px solid var(--border);margin-top:32px;padding-top:28px}.contact-social-label{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.contact-social-links{gap:12px;margin-top:14px;display:flex}.contact-social-link{border:1px solid var(--border);background:var(--white);width:42px;height:42px;color:var(--rose-dark);border-radius:999px;place-items:center;transition:background .3s,color .3s,border-color .3s,transform .3s;display:grid}.contact-social-link svg{width:16px;height:16px}.contact-social-link:hover{background:var(--rose-dark);border-color:var(--rose-dark);color:var(--white);transform:translateY(-2px)}.contact-image-card{border-radius:20px;min-height:220px;position:relative;overflow:hidden;box-shadow:0 18px 48px #2c2a2814}@media (max-width:1023px){.contact-image-card{display:none}}@media (min-width:1024px){.contact-image-card{min-height:260px}}.contact-image{object-fit:cover}.contact-form-card{border:1px solid var(--border);background:var(--white);border-radius:20px;padding:36px 28px;scroll-margin-top:100px;box-shadow:0 24px 60px #2c2a2814}@media (min-width:768px){.contact-form-card{padding:44px 40px}}.contact-form-header{margin-bottom:32px}.contact-form-title{margin-top:12px;font-size:1.875rem;font-weight:500;line-height:1.2}.contact-form-subtitle{color:var(--muted);margin-top:12px;font-size:.95rem;font-weight:300;line-height:1.6}.contact-form{gap:22px;display:grid}.contact-form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (min-width:768px){.contact-form-row{gap:22px}}.contact-field{gap:8px;min-width:0;display:grid}.contact-field label{letter-spacing:.16em;text-transform:uppercase;color:var(--rose-dark);font-size:.72rem}.contact-field input,.contact-field select,.contact-field textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:12px;padding:14px 16px;transition:border-color .3s,background .3s,box-shadow .3s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#7a7570b3}.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:var(--rose-light)}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--rose);background:var(--white);outline:none;box-shadow:0 0 0 4px #c9a0a026}.contact-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a67c7c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.contact-field textarea{resize:vertical;min-height:140px}.contact-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form-error{color:#9b2c2c;margin:0 0 4px;font-size:.9rem;line-height:1.5}.contact-submit:disabled{opacity:.7;cursor:wait}.contact-submit{cursor:pointer;background:var(--charcoal);color:var(--white);border:none;justify-self:start;margin-top:8px;transition:background .3s,transform .3s,box-shadow .3s;box-shadow:0 14px 30px #1e1c1a2e}.contact-submit:hover{background:var(--rose-dark);color:var(--white);transform:translateY(-2px);box-shadow:0 18px 36px #a67c7c47}.contact-success{text-align:center;border:1px solid var(--rose-light);background:linear-gradient(165deg,#e8d4d459 0%,#f5f0ebcc 100%);border-radius:16px;padding:48px 24px}.contact-success-icon{background:var(--white);width:64px;height:64px;color:var(--rose-dark);border-radius:999px;place-items:center;margin-bottom:20px;display:inline-grid}.contact-success-icon svg{width:32px;height:32px}.contact-success-title{font-size:1.75rem;font-weight:500}.contact-success-text{margin-top:12px;max-width:420px;color:var(--muted);margin-inline:auto;font-size:.95rem;font-weight:300;line-height:1.7}.contact-success-text a{color:var(--rose-dark);text-underline-offset:3px;text-decoration:underline}.contact-reset-btn{border:1px solid var(--rose);color:var(--rose-dark);font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;margin-top:24px;padding:12px 24px;font-size:.75rem;transition:background .3s,color .3s,border-color .3s}.contact-reset-btn:hover{background:var(--rose-light);border-color:var(--rose-light)}.contact-zoho{background:var(--cream);border-radius:12px;width:100%;min-height:520px;overflow:hidden}.contact-zoho-iframe{border:0;width:100%;min-height:520px;display:block}@media (max-width:767px){.contact-zoho,.contact-zoho-iframe{min-height:380px}.contact-info-card{padding:28px 22px}.contact-main{padding:36px 0 56px}.contact-grid{gap:28px}.contact-form-card{border-radius:16px;padding:20px 14px 24px;box-shadow:0 12px 36px #2c2a280f}.contact-form-header{margin-bottom:16px}.contact-form-header .section-label{display:none}.contact-form-title{margin-top:0;font-size:1.35rem}.contact-form-subtitle{display:none}.contact-form{gap:12px}.contact-form-row{gap:10px}.contact-field{gap:5px}.contact-field label{letter-spacing:.1em;font-size:.65rem}.contact-field input,.contact-field select,.contact-field textarea{border-radius:10px;min-height:44px;padding:10px 12px;font-size:16px;line-height:1.35}.contact-field select{background-position:right 10px center;padding-right:32px}.contact-field textarea{min-height:96px;padding-top:12px}.contact-field input[type=date]{min-width:0;max-width:100%}.contact-field input[type=date]::-webkit-date-and-time-value{text-align:left}.contact-submit{text-align:center;justify-self:stretch;width:100%;margin-top:2px;padding:14px 20px;box-shadow:0 10px 24px #1e1c1a29}.contact-submit:hover{transform:none}.contact-submit:active{background:var(--rose-dark)}.contact-success{padding:36px 16px}.contact-success-title{font-size:1.5rem}.contact-reset-btn{width:100%}}@media (max-width:380px){.contact-form-row{grid-template-columns:1fr;gap:12px}.contact-field input,.contact-field select{padding-left:10px;padding-right:10px}.contact-field select{padding-right:28px}}
