/* Contact Info block styles */ .contact-info { background: var(--color-white); padding-block: clamp(3rem, 6vw, 4rem); position: relative; } .contact-info__grid { display: grid; gap: 2rem; grid-template-columns: 1fr; position: relative; } .contact-info__details { max-width: 36rem; padding-inline: clamp(1.5rem, 5vw, 3rem); } .contact-info__heading { color: var(--color-cwc-blue-01); font-family: var(--font-quincy, 'Quincy', serif); font-size: clamp(2.5rem, 6vw, 4.5rem); font-weight: 400; line-height: 1.05; margin: 0 0 1.5rem; } .contact-info__items { display: flex; flex-direction: column; gap: 0.75rem; list-style: none; margin: 0 0 2.5rem; padding: 0; } .contact-info__item { align-items: flex-start; color: var(--color-dark); display: flex; font-size: 1rem; gap: 0.75rem; line-height: 1.5; } .contact-info__icon { align-items: center; color: var(--color-cwc-blue-03); display: inline-flex; flex-shrink: 0; height: 1.5rem; justify-content: center; width: 1.5rem; } .contact-info__icon img { display: block; height: 100%; width: 100%; } .contact-info__value { color: inherit; text-decoration: none; } a.contact-info__value:hover { color: var(--color-secondary); } .contact-info__map { background: color-mix(in oklch, var(--color-cwc-blue-03) 30%, white); border-radius: 0.5rem; min-height: 24rem; position: relative; } @media (min-width: 1024px) { .contact-info__grid { grid-template-columns: 1fr 1fr; } .contact-info__details { padding-inline: clamp(1.5rem, 5vw, 3rem) 0; } .contact-info__map { align-self: stretch; border-radius: 0; margin-right: calc(50% - 50vw); margin-left: 0; min-height: 32rem; width: calc(50vw - 0px); } } @media (max-width: 767px) { .contact-info { padding-block: 2rem; } .contact-info__map { margin-inline: clamp(1.5rem, 5vw, 3rem); min-height: 18rem; } } /* Gravity Forms field overrides (scoped to .contact-info__form) */ .contact-info__form .gform_wrapper { margin: 0; max-width: none; } .contact-info__form .gfield { margin-bottom: 1.25rem; } .contact-info__form .gfield_label { color: var(--color-cwc-blue-01); display: flex; font-size: 0.875rem; font-weight: 700; justify-content: space-between; letter-spacing: 0.05em; line-height: 1.2; margin-bottom: 0.5rem; text-transform: uppercase; } .contact-info__form .gfield_required { color: var(--color-cwc-orange-01); font-weight: 700; margin-left: 0.25rem; } .contact-info__form input[type="text"], .contact-info__form input[type="email"], .contact-info__form input[type="tel"], .contact-info__form input[type="url"], .contact-info__form textarea, .contact-info__form select { background: color-mix(in oklch, var(--color-cwc-blue-03) 30%, white); border: 1px solid var(--color-cwc-blue-03); border-radius: 0.375rem; color: var(--color-dark); font-size: 1rem; line-height: 1.5; padding: 0.75rem 1rem; width: 100%; } .contact-info__form input[type="text"]:focus, .contact-info__form input[type="email"]:focus, .contact-info__form input[type="tel"]:focus, .contact-info__form input[type="url"]:focus, .contact-info__form textarea:focus, .contact-info__form select:focus { border-color: var(--color-cwc-blue-01); outline: 2px solid var(--color-cwc-blue-01); outline-offset: 2px; } .contact-info__form textarea { min-height: 10rem; resize: vertical; } .contact-info__form .gform_footer { margin-top: 1.5rem; } .contact-info__form .gform_footer input[type="submit"], .contact-info__form .gform_footer button[type="submit"] { background: var(--background-image-button-gradient); border: 3px solid var(--color-secondary); border-radius: 1.25rem 0.25rem 1.25rem 0.25rem; color: var(--color-white); cursor: pointer; font-size: 1.125rem; font-weight: 700; padding: 0.625rem 2rem; transition: background 200ms, border-color 200ms, color 200ms; } .contact-info__form .gform_footer input[type="submit"]:hover, .contact-info__form .gform_footer button[type="submit"]:hover { background: var(--color-secondary); border-color: var(--color-secondary); } .contact-info__form .validation_message { color: var(--color-danger); font-style: italic; margin-top: 0.25rem; }