/** Reference-led presentation for the editable Contact HYDA page. */

.hyda-contact { --hyda-contact-navy:#000740; --hyda-contact-blue:#001964; --hyda-contact-gold:#f0a920; --hyda-contact-ink:#07143c; background:#fff; overflow:clip; }
.hyda-contact h1,.hyda-contact h2,.hyda-contact h3,.hyda-contact p { margin-top:0; }
.hyda-contact__wide { margin-inline:auto; max-width:var(--hyda-wide-width); padding-inline:var(--hyda-page-gutter); }
.hyda-contact__eyebrow { color:var(--hyda-gold-text); font-size:.78rem; font-weight:800; letter-spacing:.14em; margin-bottom:.85rem; text-transform:uppercase; }

.hyda-contact__hero { background:var(--hyda-contact-navy); color:#fff; position:relative; }
.hyda-contact__hero::before,.hyda-contact__support::after { background-image:radial-gradient(circle,rgba(240,169,32,.48) 1px,transparent 1.5px); background-size:10px 10px; content:""; opacity:.4; pointer-events:none; position:absolute; }
.hyda-contact__hero::before { height:18rem; left:28%; mask-image:linear-gradient(135deg,transparent,#000 35%,#000 66%,transparent); top:1.1rem; transform:rotate(13deg); width:28rem; }
.hyda-contact__hero-grid { display:grid; grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr); margin-inline:auto; max-width:1440px; min-height:clamp(28rem,39vw,33rem); }
.hyda-contact__hero-copy { align-items:flex-start; display:flex; flex-direction:column; justify-content:center; max-width:43rem; padding:clamp(3rem,5vw,4.5rem) clamp(1.5rem,6vw,6.5rem) clamp(3rem,5vw,4.5rem) max(var(--hyda-page-gutter),calc((100vw - 1200px)/2)); position:relative; z-index:1; }
.hyda-contact__hero .hyda-contact__eyebrow { color:var(--hyda-contact-gold) !important; }
.hyda-contact__hero h1 { color:#fff; font-family:var(--hyda-font-heading); font-size:clamp(3rem,4.6vw,5rem); letter-spacing:-.055em; line-height:.98; margin-bottom:1rem; max-width:11ch; }
.hyda-contact__hero-rule { background:var(--hyda-contact-gold); height:3px; margin:.15rem 0 1.25rem; width:4.2rem; }
.hyda-contact__hero-lead { color:var(--hyda-contact-gold); font-size:clamp(1.13rem,1.75vw,1.48rem); font-weight:800; line-height:1.35; margin-bottom:1.2rem; max-width:28rem; }
.hyda-contact__hero p:not(.hyda-contact__hero-lead):not(.hyda-contact__eyebrow) { color:rgba(255,255,255,.91); font-size:clamp(1rem,1.3vw,1.1rem); line-height:1.7; margin-bottom:0; max-width:34rem; }
.hyda-contact__hero-media { clip-path:polygon(11% 0,100% 0,100% 100%,0 100%); min-height:inherit; position:relative; }
.hyda-contact__hero-media::before { background:linear-gradient(105deg,var(--hyda-contact-gold),rgba(240,169,32,.11)); clip-path:polygon(0 0,13% 0,3% 100%,0 100%); content:""; inset:0; position:absolute; z-index:1; }
.hyda-contact__hero-media img { display:block; height:100%; object-fit:cover; width:100%; }

.hyda-contact__channels { background:linear-gradient(135deg,#fff 0%,#f7f9fd 100%); padding-block:clamp(2.8rem,5vw,4.5rem) clamp(2.1rem,4vw,3.3rem); }
.hyda-contact__channel-grid { align-items:stretch; display:grid; gap:1.05rem; grid-template-columns:repeat(4,minmax(0,1fr)); }
.hyda-contact__card { background:#fff; border:1px solid #e0e6ef; border-radius:.7rem; box-shadow:0 9px 24px rgba(7,20,60,.06); display:flex; flex-direction:column; min-height:100%; padding:clamp(1.45rem,2.4vw,2.15rem) 1.2rem; text-align:center; }
.hyda-contact__card-icon { align-items:center; align-self:center; background:var(--hyda-contact-navy); border-radius:50%; color:var(--hyda-contact-gold); display:inline-flex; flex:0 0 auto; font-size:2.2rem; height:4.85rem; justify-content:center; margin-bottom:1rem; width:4.85rem; }
.hyda-contact__card h2 { color:var(--hyda-contact-ink); font-family:var(--hyda-font-heading); font-size:clamp(1.25rem,2vw,1.62rem); letter-spacing:-.045em; line-height:1.1; margin-bottom:.8rem; }
.hyda-contact__card h2::after { background:var(--hyda-contact-gold); content:""; display:block; height:3px; margin:.75rem auto 0; width:2.7rem; }
.hyda-contact__card p { color:#3c465b; font-size:.93rem; line-height:1.58; margin-bottom:0; }
.hyda-contact__card a { color:var(--hyda-gold-text); font-size:.95rem; font-weight:800; overflow-wrap:anywhere; text-decoration:none; }
.hyda-contact__card a:hover { color:var(--hyda-contact-ink); }
.hyda-contact__card .hyda-contact__channel-title { margin-bottom:.9rem; }

.hyda-contact__form-section { background:#fff; padding:0 var(--hyda-page-gutter) clamp(3.5rem,6vw,5.5rem); }
.hyda-contact__form-shell { align-items:stretch; background:#fff; border:1px solid #e2e6ef; border-radius:.85rem; box-shadow:0 9px 25px rgba(7,20,60,.06); display:grid; gap:clamp(1.5rem,4vw,3rem); grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr); margin-inline:auto; max-width:var(--hyda-wide-width); padding:clamp(1.4rem,3.5vw,2.5rem); }
.hyda-contact__form { align-content:start; display:grid; gap:1rem 1.1rem; grid-template-columns:repeat(2,minmax(0,1fr)); min-width:0; }
.hyda-contact__form h2 { color:var(--hyda-contact-ink); font-family:var(--hyda-font-heading); font-size:clamp(1.75rem,3vw,2.5rem); grid-column:1/-1; letter-spacing:-.05em; margin:0 0:.25rem; }
.hyda-contact__form h2::after { background:var(--hyda-contact-gold); content:""; display:block; height:3px; margin-top:.7rem; width:3.3rem; }
.hyda-contact__field { margin:0; min-width:0; }
.hyda-contact__field--wide,.hyda-contact__notice { grid-column:1/-1; }
.hyda-contact__field label { display:block; font-size:.8rem; font-weight:700; margin-bottom:.32rem; color:var(--hyda-contact-ink); }
.hyda-contact__field input,.hyda-contact__field textarea { background:#fff; border:1px solid #dbe1eb; border-radius:.45rem; box-sizing:border-box; color:var(--hyda-contact-ink); display:block; font:inherit; min-height:3rem; padding:.7rem .8rem; width:100%; }
.hyda-contact__field textarea { min-height:8rem; resize:vertical; }
.hyda-contact__field input:focus,.hyda-contact__field textarea:focus { border-color:var(--hyda-contact-gold); box-shadow:0 0 0 3px rgba(240,169,32,.2); outline:0; }
.hyda-contact__submit { align-items:center; background:var(--hyda-contact-navy); border:2px solid var(--hyda-contact-navy); border-radius:.45rem; color:var(--hyda-contact-gold); cursor:pointer; display:inline-flex; font:inherit; font-size:.9rem; font-weight:800; gap:.65rem; justify-content:center; justify-self:start; margin-top:.2rem; min-height:3.15rem; padding:.7rem 1.35rem; }
.hyda-contact__submit:hover { background:#001d5d; }
.hyda-contact__notice { border-radius:.45rem; margin:0; padding:.85rem 1rem; }
.hyda-contact__notice--success { background:#e8f6ed; border-left:4px solid #2d9b56; color:#155d32; }
.hyda-contact__notice--error { background:#fff2f0; border-left:4px solid #b42318; color:#7a1c16; }
.hyda-contact__honeypot { height:0; margin:0; overflow:hidden; position:absolute; width:0; }
.hyda-contact__help { align-content:center; align-items:center; background:linear-gradient(135deg,#f5f8fc,#eef3fa); border-radius:.7rem; box-sizing:border-box; display:grid; gap:1.35rem; grid-template-columns:auto 1fr; height:100%; padding:clamp(1.6rem,3vw,2.4rem); }
.hyda-contact__help-icon { align-items:center; background:var(--hyda-contact-navy); border-radius:50%; color:var(--hyda-contact-gold); display:flex; font-size:2.2rem; height:4.8rem; justify-content:center; width:4.8rem; }
.hyda-contact__help h2 { color:var(--hyda-contact-ink); font-family:var(--hyda-font-heading); font-size:clamp(1.65rem,2.8vw,2.4rem); letter-spacing:-.05em; line-height:1.04; margin-bottom:.95rem; }
.hyda-contact__help h2::after { background:var(--hyda-contact-gold); content:""; display:block; height:3px; margin-top:.7rem; width:3.1rem; }
.hyda-contact__help p { color:#3c465b; line-height:1.65; margin-bottom:1.25rem; }
.hyda-contact__help-link { align-items:center; background:var(--hyda-contact-navy); border-radius:.45rem; color:var(--hyda-contact-gold); display:inline-flex; font-size:.9rem; font-weight:800; gap:.55rem; min-height:2.9rem; padding:.65rem 1.1rem; text-decoration:none; }
.hyda-contact__help-link:hover { background:#001d5d; color:#ffd05d; }

.hyda-contact__support-wrap { padding:0; }
.hyda-contact__support { align-items:center; background:linear-gradient(105deg,var(--hyda-contact-gold),#f6bd4b); color:var(--hyda-contact-ink); display:grid; gap:clamp(1.25rem,2vw,2rem); grid-template-columns:4rem minmax(0,1fr) auto; margin-inline:auto; max-width:none; overflow:hidden; padding:clamp(1.25rem,3.2vw,2.2rem) max(var(--hyda-page-gutter),calc((100vw - var(--hyda-wide-width))/2)); position:relative; }
.hyda-contact__support::after { bottom:-3rem; height:12rem; right:1rem; width:17rem; }
.hyda-contact__support-icon { align-self:center; color:rgba(255,255,255,.62); display:block; font-size:3.5rem; height:3.5rem; line-height:1; position:relative; width:3.5rem; z-index:1; }
.hyda-contact__support h2 { color:var(--hyda-contact-ink); font-family:var(--hyda-font-heading); font-size:clamp(1.6rem,2.7vw,2.4rem); letter-spacing:-.05em; margin-bottom:.5rem; }
.hyda-contact__support p { margin-bottom:0; position:relative; z-index:1; }
.hyda-contact__phone { align-items:center; background:var(--hyda-contact-navy); border-radius:.55rem; color:#fff; display:flex; gap:.7rem; padding:.7rem 1.1rem; position:relative; text-decoration:none; z-index:1; }
.hyda-contact__phone .dashicons { color:var(--hyda-contact-gold); font-size:1.8rem; height:1.8rem; width:1.8rem; }
.hyda-contact__phone strong { color:var(--hyda-contact-gold); display:block; font-size:1.25rem; line-height:1.1; }
.hyda-contact__phone span:last-child { display:block; font-size:.78rem; }

@media (max-width:1000px) { .hyda-contact__channel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:782px) { .hyda-contact__hero-grid { display:block; min-height:0; } .hyda-contact__hero-copy { max-width:none; padding-inline:var(--hyda-page-gutter); } .hyda-contact__hero-media { clip-path:none; min-height:19rem; } .hyda-contact__hero-media::before { clip-path:polygon(0 0,100% 0,100% 6%,0 22%); } .hyda-contact__form-shell { grid-template-columns:1fr; } .hyda-contact__support { grid-template-columns:auto 1fr; } .hyda-contact__phone { grid-column:1/-1; justify-self:start; } }
@media (max-width:560px) { .hyda-contact__form { grid-template-columns:1fr; } .hyda-contact__field--wide,.hyda-contact__notice { grid-column:auto; } .hyda-contact__submit { width:100%; } }
@media (max-width:480px) { .hyda-contact__channel-grid { grid-template-columns:1fr; } .hyda-contact__help { grid-template-columns:1fr; } .hyda-contact__support { display:block; } .hyda-contact__support-icon { display:block; margin-bottom:.8rem; } .hyda-contact__phone { display:inline-flex; margin-top:1.2rem; } }
