/* =========================================================
   Europe Invest – WordPress specific styles
   ========================================================= */

/* admin bar offset for sticky header */
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}
.admin-bar .service-nav{top:calc(var(--header-h) + 32px)}
@media (max-width:782px){.admin-bar .service-nav{top:calc(var(--header-h) + 46px)}}
@media (max-width:1024px){.admin-bar .main-nav{top:calc(var(--header-h) + 46px)}}

.site-logo img{max-height:58px;width:auto}
@media (max-width:1024px){.site-logo img{max-height:40px}}

.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}

/* ---------- entry content (privacy page, generic pages) ---------- */
.entry-content > *:first-child{margin-top:0}
.entry-content h2{font-size:1.45rem;margin-top:1.8em;scroll-margin-top:calc(var(--header-h) + 24px)}
.entry-content h3{margin-top:1.4em}
.entry-content ul,.entry-content ol{padding-left:22px;margin:0 0 1.1em}
.entry-content li{margin-bottom:6px}
.entry-content a{text-decoration:underline;text-underline-offset:3px}
.entry-content .btn{text-decoration:none}
.entry-content img{height:auto}
.entry-content table{width:100%;border-collapse:collapse;font-size:.93rem;margin-bottom:1.1em}
.entry-content th,.entry-content td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.entry-content th{background:var(--gray);font-family:var(--ff-head);font-weight:600;color:var(--black)}
.legal-body h2:first-child{margin-top:0}
.legal-body h2{padding-top:30px;border-top:1px solid var(--line)}
.legal-body h2:first-child{padding-top:0;border-top:0}
.ei-post{padding:24px 0;border-bottom:1px solid var(--line)}
.ei-admin-note{background:#fff7e0;border-left:4px solid #f0b400;padding:10px 14px;font-size:.9rem}

/* ---------- Contact Form 7 ---------- */
.form-box .wpcf7{flex:1;display:flex;flex-direction:column}
.form-box .wpcf7 form.contact-form{flex:1;display:flex;flex-direction:column}
.wpcf7 .form-field .wpcf7-form-control-wrap{display:block;width:100%}
.wpcf7 .form-field--grow{display:flex;flex-direction:column}
.wpcf7 .form-field--grow .wpcf7-form-control-wrap{flex:1;display:flex;flex-direction:column}
.wpcf7 .form-field--grow textarea{flex:1}
.wpcf7 .form-field input:not([type=checkbox]),.wpcf7 .form-field textarea{font:inherit;font-size:1rem;padding:14px 16px;border:1px solid var(--line);border-bottom:2px solid rgba(0,0,0,.2);background:var(--gray);color:var(--black);transition:border-color .2s,background .2s;width:100%;border-radius:0}
.wpcf7 .form-field textarea{min-height:150px;resize:vertical}
.wpcf7 .form-field input:focus,.wpcf7 .form-field textarea:focus{outline:none;border-color:var(--black);border-bottom-color:var(--red);background:var(--white)}
.wpcf7 .form-field input.wpcf7-not-valid,.wpcf7 .form-field textarea.wpcf7-not-valid{border-bottom-color:var(--red);background:#fdf3f2}
.wpcf7 .wpcf7-not-valid-tip{display:block;margin-top:6px;font-size:.82rem;color:var(--red);font-weight:500}

/* acceptance (GDPR) */
.wpcf7 .wpcf7-acceptance .wpcf7-list-item{margin:0;display:block}
.wpcf7 .wpcf7-acceptance label{display:flex;gap:12px;align-items:flex-start;font-size:.92rem;color:var(--muted);cursor:pointer}
.wpcf7 .wpcf7-acceptance input[type=checkbox]{appearance:none;-webkit-appearance:none;width:22px;height:22px;border:2px solid rgba(0,0,0,.3);background:var(--white);margin:1px 0 0;flex:none;cursor:pointer;display:grid;place-content:center;transition:all .2s;padding:0;border-radius:0}
.wpcf7 .wpcf7-acceptance input[type=checkbox]::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px);opacity:0}
.wpcf7 .wpcf7-acceptance input[type=checkbox]:checked{background:var(--red);border-color:var(--red)}
.wpcf7 .wpcf7-acceptance input[type=checkbox]:checked::after{opacity:1}
.wpcf7 .wpcf7-acceptance input[type=checkbox]:focus-visible{outline:2px solid var(--black);outline-offset:2px}
.wpcf7 .form-field--check .wpcf7-not-valid .wpcf7-acceptance input[type=checkbox],.wpcf7 .form-field--check .wpcf7-not-valid input[type=checkbox]{border-color:var(--red)}
.wpcf7 .wpcf7-acceptance a{color:var(--red)}

/* submit */
.wpcf7 .form-actions{margin-top:28px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wpcf7 .wpcf7-submit{appearance:none;-webkit-appearance:none;border-radius:0}
.wpcf7 .wpcf7-submit:disabled{opacity:.6;cursor:not-allowed}
.wpcf7 .wpcf7-spinner{margin:0;background-color:var(--black);opacity:.7}
.wpcf7 form.submitting .wpcf7-submit{opacity:.7}

/* response output */
.wpcf7 form .wpcf7-response-output{margin:20px 0 0;padding:16px 18px 16px 52px;border:0;position:relative;font-weight:500;font-size:.95rem;line-height:1.5;background:var(--gray);color:var(--black)}
.wpcf7 form .wpcf7-response-output::before{content:"";position:absolute;left:16px;top:50%;width:24px;height:24px;margin-top:-12px;background:currentColor;-webkit-mask:var(--ei-ico) center/contain no-repeat;mask:var(--ei-ico) center/contain no-repeat}
.wpcf7 form.sent .wpcf7-response-output{background:var(--black);color:var(--white);--ei-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 9.5 17 19 7.5'/%3E%3C/svg%3E")}
.wpcf7 form.sent .wpcf7-response-output::before{background:var(--red)}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.payment-required .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{background:#fdf3f2;color:var(--black);border-left:4px solid var(--red);--ei-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 7v6M12 16.5v.5'/%3E%3C/svg%3E")}
.wpcf7 form.invalid .wpcf7-response-output::before,.wpcf7 form.unaccepted .wpcf7-response-output::before,.wpcf7 form.failed .wpcf7-response-output::before,.wpcf7 form.spam .wpcf7-response-output::before{background:var(--red)}
.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}
.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0;word-wrap:normal!important}

/* ---------- map consent placeholder ---------- */
.map-wrap[data-ei-map]{position:relative;min-height:420px;background:var(--gray) url("../img/hero/unsplash-hero-1.jpg") center/cover no-repeat;display:flex;align-items:center;justify-content:center;line-height:1.6}
.map-wrap[data-ei-map]::before{content:"";position:absolute;inset:0;background:rgba(245,245,245,.88)}
.map-wrap[data-ei-map].is-loaded{display:block;background:none;line-height:0}
.map-wrap[data-ei-map].is-loaded::before{display:none}
.map-consent{position:relative;z-index:1;text-align:center;padding:32px var(--gutter);max-width:560px}
.map-consent p{color:var(--black);margin-bottom:20px}
.map-consent__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media (max-width:680px){.map-wrap[data-ei-map]{min-height:320px}}
