.gn-site .gn-contact-map{padding-block:0 100px}
.gn-site .gn-map-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}
.gn-site .gn-map-heading h2{font:300 clamp(34px,4vw,54px)/1.15 var(--serif);letter-spacing:-.035em}
.gn-site .gn-map-heading p{font-size:13px;line-height:1.8;margin-top:12px}
.gn-site .gn-map-frame{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--mint)}
.gn-site .gn-map-frame iframe{display:block;width:100%;height:420px;border:0}
.gn-site .gn-map-placeholder{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;gap:16px}
.gn-site .gn-map-placeholder p{max-width:550px;font-size:13px;line-height:1.8}
.gn-site .gn-map-placeholder p:first-child{font:300 30px/1.3 var(--serif)}
.gn-site .gn-map-placeholder button{border:1px solid var(--text);border-radius:4px;padding:12px 20px;color:var(--text);background:transparent;font:500 12px/1.5 var(--sans);cursor:pointer}
.gn-site .gn-map-placeholder[hidden]{display:none}
.gn-site .gn-map-heading>a,.gn-site .gn-contact-item a{text-underline-offset:5px}
.gn-site .gn-footer-credits{display:flex;justify-content:space-between;align-items:center;gap:22px;width:100%;padding-top:25px;border-top:1px solid var(--line)}
.gn-site .gn-footer-credits p{font-size:11px;line-height:1.7;margin:0}
.gn-site .gn-design-credit{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.gn-site .gn-design-credit a{display:inline-flex;align-items:center;padding:8px 0}
.gn-site .gn-design-credit img{display:block;width:120px;height:auto;max-width:100%}
.gn-site .gn-design-credit a:focus-visible{outline:2px solid var(--text);outline-offset:5px}
.gn-site .gn-footer-legal{font-size:11px;line-height:1.8;margin-top:28px;max-width:700px;color:var(--muted)}
.gn-site .footer-top p a{display:inline;margin-bottom:0}
.gn-site .footer-bottom{flex-wrap:wrap}
.gn-site .gn-legal-links{display:flex;flex-wrap:wrap;gap:10px 24px;width:100%;font-size:11px;line-height:1.7}
.gn-site .gn-legal-links a,.gn-site .gn-legal-links button{color:inherit;text-decoration:underline;text-underline-offset:4px}
.gn-site .gn-legal-links button{padding:0;background:none;border:0;font:inherit;cursor:pointer}
.gn-site .gn-contact-form{display:grid;gap:20px}
.gn-site .gn-contact-form label{display:block;font-size:12px;line-height:1.7}
.gn-site .gn-contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gn-site .gn-contact-form input:not([type=hidden]),.gn-site .gn-contact-form textarea{display:block;width:100%;padding:12px 10px;margin-top:8px;border:1px solid var(--line);border-radius:3px;background:rgba(255,255,255,.2);color:var(--text);font:400 15px/1.7 var(--sans);box-sizing:border-box}
.gn-site .gn-contact-form textarea{min-height:150px;resize:vertical}
.gn-site .gn-contact-form input:focus-visible,.gn-site .gn-contact-form textarea:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.gn-site .gn-contact-form .gn-field-optional,.gn-site .gn-contact-privacy{font-size:11px;line-height:1.8}
.gn-site .gn-contact-result{padding:16px;border:1px solid var(--line);margin-bottom:24px;font-size:13px;line-height:1.8}
.gn-site .gn-contact-form .button{justify-self:start}
.gn-site .gn-contact-form .button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:600px){.gn-site .gn-contact-form .form-row{grid-template-columns:1fr}.gn-site .gn-contact-form input:not([type=hidden]),.gn-site .gn-contact-form textarea{font-size:16px}}
@media(max-width:700px){.gn-site .gn-map-heading,.gn-site .gn-footer-credits{align-items:start;flex-direction:column}.gn-site .gn-contact-map{padding-bottom:64px}.gn-site .gn-map-frame iframe{height:340px}.gn-site .gn-map-heading>a{font-size:13px}.gn-site .gn-footer-credits{gap:16px}}
