.contact-root{min-height:100vh;background:#ffffff;color:var(--ink)}.contact-hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:clamp(28rem,52vh,36rem);padding:clamp(7rem,12vw,10rem) 1.5rem clamp(8rem,15vw,12rem);overflow:hidden;background:#33453b;text-align:center}.contact-hero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.28) 45%,rgba(0,0,0,.66))}.contact-hero__copy{position:relative;z-index:10}.contact-hero__heading{margin:0;color:#fff;font-family:var(--display);font-weight:300;font-size:clamp(2.8rem,6vw,5rem);line-height:1;letter-spacing:-.02em}.contact-form-section{position:relative;z-index:2;margin-top:clamp(-7rem,-9vw,-3.5rem);padding:0 max(7vw,2rem)}.contact-form{max-width:56rem;margin:0 auto;padding:clamp(1.6rem,3.5vw,2.8rem);background:#ffffff;border:1px solid var(--line);box-shadow:0 24px 60px -30px rgba(23,23,20,.45)}.contact-form__title{margin:0 0 clamp(1.4rem,2.5vw,2rem);font-family:var(--display);font-weight:300;font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.05;letter-spacing:-.02em}.contact-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2vw,1.6rem)}.contact-field{display:flex;flex-direction:column;gap:.55rem}.contact-field__label{font-family:var(--serif);font-size:.68rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.contact-field__input{width:100%;border:1px solid var(--line);background:#fbfaf6;padding:.85rem .95rem;color:var(--ink);font-family:var(--ui);font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.contact-field__input:focus{outline:none;border-color:var(--mustard);background:#ffffff;box-shadow:0 0 0 3px rgba(254,170,0,.18)}.contact-form__submit{display:inline-flex;align-items:center;gap:.55rem;margin-top:clamp(1.4rem,2.5vw,2rem);border:1px solid var(--ink);background:var(--ink);color:#ffffff;padding:.95rem 1.8rem;font-family:var(--ui);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .25s ease,border-color .25s ease,color .25s ease}.contact-form__submit:hover{background:var(--mustard);border-color:var(--mustard);color:var(--ink)}.contact-form__submit span{font-size:1rem;line-height:1}.reach-out{background:#ffffff}.reach-out__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.2vw,1.8rem)}.reach-card{border:1px solid var(--line);background:#fbfaf6;padding:clamp(1.6rem,3vw,2.6rem)}.reach-card__index{margin:0 0 1.4rem;font-family:var(--ui);font-size:.68rem;letter-spacing:.14em;color:var(--mustard)}.reach-card__name{margin:0 0 1rem;font-family:var(--display);font-weight:300;font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.06;letter-spacing:-.02em}.reach-card__address{margin:0 0 1.4rem;color:var(--muted);font-style:normal;font-family:var(--serif);font-size:1rem;line-height:1.7}.reach-card__phone{font-family:var(--ui);font-size:.9rem;font-weight:500;letter-spacing:.04em;border-bottom:1px solid var(--mustard);padding-bottom:.15rem;transition:color .2s ease}.reach-card__phone:hover{color:var(--mustard)}.reach-card__phones{display:grid;grid-template-columns:repeat(2,max-content);justify-content:start;gap:.55rem 1.75rem}@media (max-width:760px){.contact-hero{min-height:20rem;padding:6.5rem 1.25rem 5.5rem}.contact-form__grid,.reach-out__grid{grid-template-columns:1fr}}