/* Exact footer and popup proportions from Figma 307:223, 391:16,
   715:2306/2370 and 446:61/447:83. Content remains editable in ACF/CF7. */
.gd-footer { padding-top:57px; }
.gd-footer-newsletter { grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:34px; padding-bottom:28px; min-height:145px; border-color:#777776; }
.gd-footer-newsletter h2 { font-size:28px; line-height:1.2; }
.gd-footer-newsletter p { font-size:19px; line-height:1.3; margin-top:12px; }
.gd-footer-columns { grid-template-columns:minmax(180px,307fr) minmax(100px,163fr) minmax(80px,86fr) minmax(105px,139fr) minmax(180px,263fr); gap:clamp(24px,4vw,82px); padding:22px 0 39px; }
.gd-footer-columns h2 { font-size:22px; line-height:1.3; margin-bottom:24px; }
.gd-footer-columns h3 { font-size:14px; line-height:1.3; letter-spacing:.16em; margin-bottom:10px; }
.gd-footer-columns p { font-size:12px; line-height:1.7; margin-bottom:24px; }
.gd-footer-art img { width:163px; height:192px; max-width:100%; max-height:none; object-fit:cover; }
.gd-footer nav a { font-family:'Zalando Sans Expanded',sans-serif; font-size:12px; line-height:1.3; padding:5px 0; }
.gd-footer-contact .gd-contact-details, .gd-footer-contact .gd-contact-details p { font-size:19px; line-height:1.3; margin-bottom:12px; }
.gd-footer-contact .gd-contact-details p:last-child { margin-bottom:0; }
.gd-footer .gd-button { font-size:14px; line-height:21px; min-height:45px; padding:10px 24px; border-width:2px; margin-top:12px; }
.gd-footer-contact .gd-button { font-family:'Zalando Sans Expanded',sans-serif; font-weight:700; }
.gd-footer-legal { color:#777776; font-size:12px; line-height:1.7; border-color:#777776; padding:20px 0 50px; }
.gd-footer-border { display:block; width:100%; height:38px; max-height:none; object-fit:cover; }
.gd-footer .gd-form input[type=email] { height:45px; background:#777776; border-radius:24px; text-align:center; font-size:12px; }
.gd-footer .gd-form input::placeholder { color:white; opacity:1; }
.gd-footer .gd-form input[type=submit] { height:45px; font-size:14px; padding:12px 24px; }
.gd-footer .gd-form .wpcf7-list-item>label { font-size:12px; line-height:1.7; color:#777776; gap:20px; }
.gd-footer .gd-socials img, .gd-dialog .gd-socials img { width:28px; height:28px; filter:none; }
.gd-footer .gd-socials, .gd-dialog .gd-socials { gap:12px; }
.gd-dialog { border-radius:20px; }
#gd-contact { width:min(909px,calc(100% - 40px)); }
#gd-contact .gd-dialog-grid { grid-template-columns:397fr 512fr; min-height:621px; }
#gd-contact .gd-dialog-copy { padding:120px 60px 60px 72px; justify-content:flex-start; gap:12px; }
#gd-contact .gd-dialog-copy h2 { font-size:39px; line-height:1.2; }
#gd-contact .gd-dialog-copy .gd-eyebrow { font-size:14px; line-height:1.3; letter-spacing:.16em; margin:0; }
#gd-contact .gd-dialog-copy>p:not(.gd-eyebrow) { margin:0; font-size:12px; line-height:1.7; }
#gd-contact .gd-dialog-form { padding:58px clamp(24px,6vw,86px); }
.gd-dialog .gd-close { width:28px; height:28px; top:24px; right:28px; background:transparent url('../assets/figma-footer/close.svg') center/28px 28px no-repeat; font-size:0; transform:rotate(-90deg); }
.gd-dialog .gd-form { color:#777776; font-size:12px; line-height:1.7; }
.gd-dialog .gd-form input:not([type=checkbox]):not([type=submit]), .gd-dialog .gd-form textarea, .gd-dialog .gd-form select { border-color:#ffb09b; border-radius:8px; font:400 12px/1.7 Montserrat,sans-serif; min-height:46px; padding:10px 14px; color:var(--gd-ink); }
.gd-dialog .gd-form textarea { height:122px; min-height:122px; }
.gd-dialog .gd-form input[type=submit] { font-size:14px; line-height:21px; min-height:45px; padding:12px 24px; margin-top:0; }
.gd-dialog .gd-form .wpcf7-form>div, .gd-dialog .gd-form .wpcf7-form>p { margin-top:12px; }
.gd-dialog .gd-form .wpcf7-list-item>label { font-size:12px; line-height:1.7; color:#777776; gap:24px; }
.gd-dialog .gd-form input[type=checkbox], .gd-footer .gd-form input[type=checkbox] { width:18px; height:18px; margin-top:3px; }
#gd-newsletter { width:min(969px,calc(100% - 40px)); }
#gd-newsletter .gd-dialog-grid { grid-template-columns:457fr 512fr; min-height:642px; }
#gd-newsletter .gd-dialog-image { position:relative; min-height:642px; overflow:hidden; }
#gd-newsletter .gd-dialog-image img { position:absolute; width:130.09%; height:130.12%; max-width:none; left:-30.09%; top:-30.1%; object-fit:fill; }
#gd-newsletter .gd-dialog-form { padding:70px 44px 70px 46px; }
#gd-newsletter .gd-badge { background:#ffdd86; font:700 12px/1.3 'Zalando Sans Expanded',sans-serif; padding:4px 12px; border-radius:5px; margin-bottom:19px!important; }
#gd-newsletter h2 { font-size:39px; line-height:1.2; }
#gd-newsletter .gd-dialog-form>p:not(.gd-badge) { font-size:19px; line-height:1.3; margin:19px 0 38px; }
#gd-newsletter .gd-form input[type=email] { border-radius:24px; text-align:center; }
#gd-newsletter .gd-form .wpcf7-form>div:first-of-type { display:flex; flex-direction:column; gap:18px; }
#gd-newsletter .gd-form .wpcf7-form>div:has(.wpcf7-acceptance) { margin-top:30px; }
@media (max-width:1100px) and (min-width:701px) {
  .gd-footer-columns { grid-template-columns:1.2fr .7fr .8fr 1fr; gap:24px; }
  .gd-footer-art { display:none; }
  .gd-footer-columns>.gd-footer-contact { grid-column:auto; }
  .gd-footer-newsletter h2 { font-size:24px; }
  .gd-footer-newsletter p { font-size:16px; }
  .gd-footer-contact .gd-contact-details, .gd-footer-contact .gd-contact-details p { font-size:15px; }
  #gd-contact .gd-dialog-copy { padding:95px 28px 40px; }
  #gd-contact .gd-dialog-form { padding-inline:30px; }
  #gd-newsletter .gd-dialog-form { padding-inline:28px; }
  #gd-newsletter h2 { font-size:32px; }
}
@media (max-width:700px) {
  .gd-footer { padding-top:32px; }
  .gd-footer>.gd-container { position:relative; }
  .gd-footer-newsletter { display:block; min-height:0; padding-bottom:24px; }
  .gd-footer-newsletter h2 { font-size:19px; line-height:1.2; max-width:360px; }
  .gd-footer-newsletter p { font-size:12px; line-height:1.7; max-width:306px; margin-top:12px; }
  .gd-footer .gd-form { margin-top:8px; }
  .gd-footer .gd-form input[type=submit] { font-size:11px; padding-inline:12px; }
  .gd-footer .gd-form .wpcf7-list-item>label { font-size:10px; line-height:1.3; gap:12px; }
  .gd-footer-columns { display:flex; flex-wrap:wrap; gap:0 20px; padding:14px 0 20px; }
  .gd-footer-columns>.gd-footer-brand { display:none; }
  .gd-footer-columns>.gd-footer-art { display:block; position:absolute; right:0; bottom:35px; width:65px; height:80px; }
  .gd-footer-art img { width:65px; height:80px; }
  .gd-footer-columns>.gd-footer-contact { order:-1; width:100%; display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:16px; margin-bottom:16px; border-bottom:1px solid #777776; }
  .gd-footer-contact h3, .gd-footer nav h3 { display:none; }
  .gd-footer-contact .gd-contact-details, .gd-footer-contact .gd-contact-details p { font-size:12px; line-height:1.7; margin:0; }
  .gd-footer .gd-button { flex-shrink:0; font-size:12px; min-height:45px; padding:10px 15px; margin:0; }
  .gd-footer nav { display:contents; }
  .gd-footer nav ul { display:contents; }
  .gd-footer nav li { display:contents; }
  .gd-footer nav a { display:block; font:400 10px/1.3 Montserrat,sans-serif; padding:5px 0; }
  .gd-footer-legal { border:0; font-size:10px; line-height:1.3; min-height:110px; padding:12px 85px 30px 0; }
  .gd-footer-border { height:38px; width:100%; object-fit:cover; }
  #gd-contact, #gd-newsletter { width:min(390px,calc(100% - 24px)); max-height:calc(100dvh - 24px); border-radius:20px; }
  #gd-contact .gd-dialog-grid, #gd-newsletter .gd-dialog-grid { grid-template-columns:1fr; min-height:0; }
  #gd-contact .gd-dialog-copy { min-height:278px; padding:68px 29px 40px; gap:12px; }
  #gd-contact .gd-dialog-copy h2 { font-size:25px; line-height:1.2; }
  #gd-contact .gd-dialog-copy .gd-eyebrow { font-size:12px; }
  #gd-contact .gd-dialog-copy .gd-socials { display:flex; }
  #gd-contact .gd-dialog-form { padding:26px; }
  #gd-contact .gd-close { background-image:url('../assets/figma-footer/close-peach.svg'); top:29px; right:29px; }
  .gd-dialog .gd-form .wpcf7-list-item>label { font-size:10px; line-height:1.3; }
  #gd-newsletter .gd-dialog-image { height:263px; min-height:0; }
  #gd-newsletter .gd-dialog-image img { width:130.09%; height:317.63%; left:-30.09%; top:-119.11%; }
  #gd-newsletter .gd-dialog-form { padding:30px 20px 24px; }
  #gd-newsletter .gd-badge { font-size:10px; margin-bottom:11px!important; }
  #gd-newsletter h2 { font-size:25px; line-height:1.2; }
  #gd-newsletter .gd-dialog-form>p:not(.gd-badge) { font-size:12px; line-height:1.7; margin:8px 0 12px; }
  #gd-newsletter .gd-form .wpcf7-form>div:has(.wpcf7-acceptance) { margin-top:22px; }
  #gd-newsletter .gd-close { top:21px; right:23px; }
}
@media (max-width:370px) {
  .gd-footer-columns>.gd-footer-contact { flex-wrap:wrap; }
  .gd-footer .gd-form input[type=submit] { font-size:10px; padding-inline:9px; }
}
/* Contact values and legal footer are separate editable fields. */
.gd-footer a:hover, .gd-footer a:focus-visible { color:var(--gd-peach); }
.gd-footer .gd-contact-details { display:flex; flex-direction:column; gap:0; }
.gd-footer .gd-contact-details a { display:block; padding:0; font:400 19px/1.3 Montserrat,sans-serif; text-transform:none; color:white; }
.gd-footer .gd-contact-details a:hover, .gd-footer .gd-contact-details a:focus-visible { color:var(--gd-peach); }
.gd-footer-legal { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,460px); gap:30px; }
.gd-footer-company p, .gd-footer-copyright { margin:0; font:inherit; }
.gd-footer-legal-right { text-align:right; }
.gd-footer-legal-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:0 5px; }
.gd-footer-legal-links a { color:inherit; font:inherit; }
.gd-footer-legal-links>*+*::before { content:'·'; color:#777776; margin-right:5px; }
@media (max-width:1100px) and (min-width:701px) {
  .gd-footer .gd-contact-details a { font-size:15px; }
}
@media (max-width:700px) {
  .gd-footer .gd-contact-details a { font-size:12px; line-height:1.7; }
  .gd-footer-legal { display:block; }
  .gd-footer-legal-right { text-align:left; }
  .gd-footer-legal-links { justify-content:flex-start; }
}

.gd-footer-contact .gd-button-outline { color:#fff; border-color:#fff; background:transparent; }
.gd-footer-contact .gd-button-outline:hover,.gd-footer-contact .gd-button-outline:focus-visible { color:#1d1d1b; border-color:#ff7c58; background:#ff7c58; }
.gd-footer-legal { grid-template-columns:minmax(0,1fr) auto; }
.gd-footer-legal-right { display:flex; align-items:baseline; justify-content:flex-end; gap:8px; white-space:nowrap; }
.gd-footer-legal-right .gd-footer-copyright { margin:0; }
.gd-footer-legal-links { flex-wrap:nowrap; }
@media(max-width:700px) {
 .gd-footer-legal { padding-right:85px; }
 .gd-footer-legal-right { justify-content:flex-start; flex-wrap:wrap; white-space:normal; }
 .gd-footer-legal-links { flex-wrap:wrap; }
}
/* Popup forms keep the Figma rhythm regardless of CF7's generated paragraphs. */
.gd-dialog .wpcf7-form>div>p {margin:0}
.gd-dialog .wpcf7-form>div:first-of-type {margin-top:0}
.gd-dialog .gd-dialog-submit input[type=submit],.gd-dialog .gd-newsletter-actions input[type=submit] {width:100%}
.gd-dialog .wpcf7-spinner {position:absolute;margin:10px 0 0 -30px}
.gd-dialog .gd-form input:not([type=checkbox]):not([type=submit]),.gd-dialog .gd-form textarea {background:var(--gd-paper)}
.gd-dialog .wpcf7-list-item {margin:0}
.gd-dialog .wpcf7-list-item>label {display:flex;align-items:flex-start}
.gd-dialog .wpcf7-list-item-label {flex:1;min-width:0}
.gd-dialog .gd-form input[type=checkbox] {flex:0 0 18px;accent-color:var(--gd-peach)}
#gd-newsletter .gd-dialog-form {padding-top:103px;padding-bottom:70px}
#gd-newsletter .gd-newsletter-actions>p {display:flex;flex-direction:column;gap:18px}
#gd-newsletter .gd-newsletter-actions .wpcf7-form-control-wrap {width:100%}
#gd-newsletter .gd-newsletter-actions br {display:none}
@media(max-width:700px){
 #gd-newsletter .gd-dialog-form {padding:30px 20px 24px}
 .gd-dialog .gd-form input:not([type=checkbox]):not([type=submit]),.gd-dialog .gd-form textarea {font-size:16px}
}

#gd-contact .gd-dialog-contact-details {display:flex;flex-direction:column;gap:10px;margin-top:16px}
#gd-contact .gd-dialog-contact-details a {font:400 14px/1.5 Montserrat,sans-serif;color:var(--gd-paper);text-transform:none;overflow-wrap:anywhere}
#gd-contact .gd-dialog-contact-details a:hover {color:var(--gd-peach)}
