/*
 * Scoped landing-page styles.
 * Typography intentionally inherits the active site's font families.
 */
/* Full-page integration for the live Divi/classic WordPress template. */
body.gcz-targ-page #top-header,
body.gcz-targ-page #main-header,
body.gcz-targ-page #main-footer,
body.gcz-targ-page .et-l--header,
body.gcz-targ-page .et-l--footer,
body.gcz-targ-page header.et-l,
body.gcz-targ-page footer.et-l { display:none !important; }

body.gcz-targ-page,
body.gcz-targ-page #page-container,
body.gcz-targ-page #et-main-area,
body.gcz-targ-page #main-content { margin:0 !important; padding:0 !important; }
body.gcz-targ-page #page-container { padding-top:0 !important; margin-top:0 !important; }
body.gcz-targ-page #main-content { background:transparent !important; }
body.gcz-targ-page #main-content > .container,
body.gcz-targ-page #main-content .container { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
body.gcz-targ-page #main-content .container::before,
body.gcz-targ-page #content-area::before { display:none !important; content:none !important; }
body.gcz-targ-page #content-area { width:100% !important; margin:0 !important; padding:0 !important; }
body.gcz-targ-page #left-area { float:none !important; width:100% !important; margin:0 !important; padding:0 !important; }
body.gcz-targ-page #sidebar { display:none !important; }
body.gcz-targ-page article.page,
body.gcz-targ-page article.et_pb_post { margin:0 !important; padding:0 !important; }
body.gcz-targ-page .entry-title,
body.gcz-targ-page h1.entry-title,
body.gcz-targ-page .main_title { display:none !important; }
body.gcz-targ-page .entry-content { margin:0 !important; padding:0 !important; }
body.gcz-targ-page .entry-content::after { display:none !important; content:none !important; }
body.gcz-targ-page .et_pb_post { margin-bottom:0 !important; }
body.gcz-targ-page .et_post_meta_wrapper { display:none !important; }
body.gcz-targ-page #main-content .container.et_menu_container { width:80% !important; max-width:1080px !important; }

.gcz-targ {
  --gcz-blue-light:#48809A;
  --gcz-blue-dark:#23556B;
  --gcz-blue-darker:#193F51;
  --gcz-gold:#9F7E53;
  --gcz-sage:#959D93;
  --gcz-cream:#F7F3EE;
  --gcz-white:#FFFFFF;
  --gcz-ink:#2B2A26;
  --gcz-ink-soft:#615D55;
  --gcz-line:#E3DCD1;
  --gcz-error:#A6483A;
  --gcz-ok:#5C7A5C;
  --gcz-radius:14px;
  --gcz-radius-lg:22px;
  --gcz-shadow:0 16px 40px rgba(35,85,107,.12);
  --gcz-shadow-soft:0 8px 22px rgba(35,85,107,.08);
  --gcz-maxw:1120px;
  position:relative;
  left:auto;
  width:100%;
  max-width:none !important;
  margin:0;
  background:var(--gcz-cream);
  color:var(--gcz-ink);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.gcz-targ, .gcz-targ * { box-sizing:border-box; }
.gcz-targ img { max-width:100%; display:block; }
.gcz-targ p { margin:0 0 1em; color:var(--gcz-ink-soft); }
.gcz-targ a { color:inherit; }
.gcz-targ h1,
.gcz-targ h2,
.gcz-targ h3 { color:var(--gcz-blue-dark); margin:0 0 .5em; line-height:1.18; }
.gcz-targ h1 { font-size:clamp(2.15rem, 4.2vw, 3.25rem); }
.gcz-targ h2 { font-size:clamp(1.75rem, 3vw, 2.3rem); }
.gcz-targ h3 { font-size:1.15rem; }
.gcz-container { width:min(100% - 40px, var(--gcz-maxw)); margin-inline:auto; }
.gcz-container--narrow { max-width:680px; }
.gcz-container--form { max-width:640px; }
.gcz-section { padding:72px 0; }
.gcz-section--compact-top { padding-top:0; }
.gcz-center { text-align:center; }
.gcz-hairline { border:0; height:1px; background:var(--gcz-line); margin:0; }
.gcz-eyebrow { display:block; margin-bottom:8px; color:var(--gcz-gold); font-size:.98rem; font-style:italic; letter-spacing:.01em; }
.gcz-microtext { margin-top:10px !important; font-size:.84rem; }
.gcz-microtext--hero { color:#E7DCC8 !important; }

/* Custom header: same brand language as the live site's dark header/footer, reduced to logo + CTA. */
.gcz-targ__header { position:sticky; top:0; z-index:1000; background:rgba(35,85,107,.98); box-shadow:0 1px 0 rgba(255,255,255,.08); }
.gcz-targ__header-inner { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.gcz-targ__brand { display:inline-flex; align-items:center; text-decoration:none; }
.gcz-targ__brand img { width:auto; height:52px; }

.gcz-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:13px 28px; border:1px solid transparent; border-radius:999px; text-decoration:none !important; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease; line-height:1.1; font-size:1rem; font-weight:600; }
.gcz-btn:hover { text-decoration:none !important; }
.gcz-btn:active { transform:scale(.985); }
.gcz-btn:focus-visible { outline:3px solid var(--gcz-gold); outline-offset:3px; }
.gcz-btn--primary { background:var(--gcz-blue-dark); color:var(--gcz-cream) !important; box-shadow:var(--gcz-shadow-soft); }
.gcz-btn--primary:hover { background:var(--gcz-blue-darker); }
.gcz-btn--header { min-height:42px; padding:11px 22px; color:var(--gcz-white) !important; border-color:rgba(255,255,255,.68); background:transparent; }
.gcz-btn--header:hover { background:rgba(255,255,255,.1); }
.gcz-btn--ghost { background:var(--gcz-white); color:var(--gcz-blue-dark) !important; border-color:var(--gcz-line); }
.gcz-btn--ghost:hover { border-color:var(--gcz-gold); }
.gcz-btn--block { width:100%; }
.gcz-btn[disabled] { opacity:.62; cursor:not-allowed; }

.gcz-hero { position:relative; color:var(--gcz-white); overflow:hidden; }
.gcz-hero__media { position:relative; min-height:min(780px, 82vh); display:flex; align-items:flex-end; background:var(--gcz-blue-darker); }
.gcz-hero__media > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.gcz-hero__media::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(19,33,40,.20) 0%, rgba(19,33,40,.42) 42%, rgba(19,33,40,.92) 100%); }
.gcz-hero__content { position:relative; z-index:2; width:100%; padding:64px 0 58px; }
.gcz-hero__copy { max-width:720px; }
.gcz-hero h1 { color:var(--gcz-white); max-width:700px; }
.gcz-hero__subtitle { max-width:620px; margin-bottom:1.2em !important; color:#F1E9DC !important; font-size:clamp(1.05rem, 1.4vw, 1.22rem); }
.gcz-hero__facts { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:1.5em; }
.gcz-hero__facts span { padding:8px 14px; border:1px solid rgba(255,255,255,.28); border-radius:999px; background:rgba(255,255,255,.12); backdrop-filter:blur(3px); font-size:.88rem; }

.gcz-intro p { font-size:1.02rem; }
.gcz-benefits-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:28px; }
.gcz-benefit-card { display:flex; align-items:center; gap:16px; min-height:94px; padding:22px; background:var(--gcz-white); border:1px solid var(--gcz-line); border-radius:var(--gcz-radius); }
.gcz-benefit-card__icon { flex:0 0 auto; width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--gcz-cream); color:var(--gcz-blue-light); }
.gcz-benefit-card svg { width:20px; height:20px; stroke:currentColor; fill:none; stroke-width:1.6; }
.gcz-benefit-card p { margin:0; color:var(--gcz-ink); font-size:.96rem; }

.gcz-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:24px; }
.gcz-gallery figure { margin:0; overflow:hidden; background:var(--gcz-white); border-radius:var(--gcz-radius); box-shadow:var(--gcz-shadow-soft); }
.gcz-gallery img { width:100%; height:230px; object-fit:cover; transition:transform .35s ease; }
.gcz-gallery figure:hover img { transform:scale(1.025); }
.gcz-gallery figcaption { padding:10px 14px; color:var(--gcz-ink-soft); font-size:.84rem; }

.gcz-price-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; max-width:560px; margin:28px auto 18px; }
.gcz-price-card { padding:26px 22px; text-align:center; background:var(--gcz-white); border-top:3px solid var(--gcz-gold); border-radius:var(--gcz-radius); box-shadow:var(--gcz-shadow-soft); }
.gcz-price-card__unit { display:block; color:var(--gcz-ink-soft); font-size:.92rem; }
.gcz-price-card__amount { display:block; margin:6px 0 2px; color:var(--gcz-blue-dark); font-size:2rem; line-height:1.2; }
.gcz-price-note { margin-bottom:24px; padding:16px 18px; color:var(--gcz-ink-soft); background:var(--gcz-cream); border:1px solid var(--gcz-line); border-radius:var(--gcz-radius); font-size:.92rem; }

.gcz-steps { margin-top:24px; }
.gcz-step { display:flex; gap:16px; padding:18px 0; border-bottom:1px solid var(--gcz-line); }
.gcz-step:last-child { border-bottom:0; }
.gcz-step__num { flex:0 0 auto; width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--gcz-blue-dark); color:var(--gcz-white); font-size:.9rem; font-weight:700; }
.gcz-step h3 { margin-bottom:4px; font-size:1.05rem; }
.gcz-step p { margin:0; }
.gcz-notice { display:flex; align-items:flex-start; gap:12px; margin-top:22px; padding:16px 18px; color:#6B5433; background:#FBF3E6; border:1px solid #E7D3AE; border-radius:var(--gcz-radius); font-size:.92rem; }
.gcz-notice svg { flex:0 0 auto; width:20px; height:20px; margin-top:2px; stroke:#6B5433; fill:none; stroke-width:1.6; }

.gcz-form-section { background:var(--gcz-white); }
.gcz-form-card { padding:40px; background:var(--gcz-cream); border-radius:var(--gcz-radius-lg); box-shadow:var(--gcz-shadow); }
.gcz-form-error-banner { display:none; margin-bottom:16px; padding:14px 16px; color:var(--gcz-error); background:#FBEAE7; border:1px solid #E5B6AC; border-radius:var(--gcz-radius); font-size:.9rem; }
.gcz-form-error-banner.is-visible { display:block; }
.gcz-form-error-banner a { text-decoration:underline; }
.gcz-field { margin:0 0 18px; padding:0; border:0; }
.gcz-field label,
.gcz-fieldset legend { display:block; width:100%; margin-bottom:6px; color:var(--gcz-blue-dark); font-size:.92rem; font-weight:600; }
.gcz-opt { color:var(--gcz-ink-soft); font-size:.82rem; font-weight:400; }
.gcz-field input[type=text],
.gcz-field input[type=email],
.gcz-field input[type=tel],
.gcz-field textarea { width:100%; min-height:48px; margin:0; padding:12px 14px; color:var(--gcz-ink); background:var(--gcz-white); border:1px solid var(--gcz-line); border-radius:10px; box-shadow:none; font:inherit; font-size:1rem; }
.gcz-field textarea { min-height:100px; resize:vertical; }
.gcz-field input:focus,
.gcz-field textarea:focus { outline:none; border-color:var(--gcz-blue-light); box-shadow:0 0 0 3px rgba(72,128,154,.18); }
.gcz-field.is-error input,
.gcz-field.is-error textarea,
.gcz-fieldset.is-error .gcz-part-card { border-color:var(--gcz-error); }
.gcz-err-msg { display:none; margin-top:6px; color:var(--gcz-error); font-size:.82rem; }
.gcz-field.is-error > .gcz-err-msg,
.gcz-fieldset.is-error > .gcz-err-msg,
.gcz-checkbox-error.is-visible { display:block; }
.gcz-participare-group { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.gcz-part-card { position:relative; display:block; padding:16px 12px; text-align:center; cursor:pointer; background:var(--gcz-white); border:1px solid var(--gcz-line); border-radius:var(--gcz-radius); transition:border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.gcz-part-card input { position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.gcz-part-card strong { display:block; color:var(--gcz-blue-dark); font-size:1.02rem; }
.gcz-part-card span { display:block; margin-top:4px; color:var(--gcz-gold); font-size:.95rem; font-weight:600; }
.gcz-part-card:has(input:checked) { border-color:var(--gcz-gold); background:#FBF7F0; box-shadow:0 0 0 3px rgba(159,126,83,.16); }
.gcz-part-card:has(input:focus-visible) { outline:3px solid rgba(72,128,154,.35); outline-offset:2px; }
.gcz-summary-box { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:20px 0; padding:16px 18px; color:var(--gcz-cream); background:var(--gcz-blue-dark); border-radius:var(--gcz-radius); }
.gcz-summary-box__label { color:#CBD9DF; font-size:.85rem; }
.gcz-summary-box__value { font-size:1.25rem; font-weight:700; white-space:nowrap; }
.gcz-checkbox-field { display:flex; align-items:flex-start; gap:12px; margin-bottom:14px; }
.gcz-checkbox-field input { flex:0 0 auto; width:18px; height:18px; margin-top:4px; accent-color:var(--gcz-blue-dark); }
.gcz-checkbox-field label { margin:0; color:var(--gcz-ink); font-size:.9rem; font-weight:400; }
.gcz-checkbox-error { margin:-8px 0 14px 30px; }
.gcz-form-divider { margin:22px 0; }
.gcz-honeypot { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

.gcz-success-panel { display:none; text-align:center; }
.gcz-success-panel.is-visible { display:block; }
.gcz-success-check { width:56px; height:56px; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; border-radius:50%; background:var(--gcz-ok); color:var(--gcz-white); }
.gcz-success-check svg { width:28px; height:28px; stroke:var(--gcz-white); fill:none; stroke-width:2; }
.gcz-success-panel h3 { color:var(--gcz-blue-dark); }
.gcz-payment-box { margin:18px 0; padding:18px; text-align:left; background:var(--gcz-white); border:1px solid var(--gcz-line); border-radius:var(--gcz-radius); }
.gcz-payment-box dl { margin:0; }
.gcz-payment-box dt { margin-top:12px; color:var(--gcz-ink-soft); font-size:.78rem; }
.gcz-payment-box dt:first-child { margin-top:0; }
.gcz-payment-box dd { margin:2px 0 0; color:var(--gcz-blue-dark); font-weight:600; word-break:break-word; }
.gcz-payment-amount { font-size:1.75rem; }
.gcz-iban-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.gcz-copy-btn { padding:6px 12px; color:var(--gcz-blue-dark); background:var(--gcz-cream); border:1px solid var(--gcz-line); border-radius:8px; cursor:pointer; font:inherit; font-size:.8rem; }
.gcz-copy-btn:hover { border-color:var(--gcz-gold); }
.gcz-success-note { color:var(--gcz-blue-dark) !important; font-weight:600; }

.gcz-location-text { padding-top:6px; }
.gcz-location-box { overflow:hidden; margin-top:24px; border-radius:var(--gcz-radius-lg); box-shadow:var(--gcz-shadow-soft); }
.gcz-location-box iframe { display:block; width:100%; height:300px; border:0; }

.gcz-targ__footer { padding:44px 0 94px; color:#D9E2E6; background:var(--gcz-blue-dark); font-size:.9rem; }
.gcz-targ__footer-brand { display:inline-block; margin-bottom:18px; }
.gcz-targ__footer-brand img { width:auto; height:46px; }
.gcz-targ__foot-row { display:flex; flex-direction:column; gap:6px; }
.gcz-targ__footer a { color:#D9E2E6; text-decoration:underline; text-underline-offset:3px; }
.gcz-targ__footer-brand { text-decoration:none !important; }
.gcz-targ__copyright { margin-top:20px; color:#9FB4BD; font-size:.8rem; }

.gcz-sticky-cta { position:fixed; left:0; right:0; bottom:0; z-index:1100; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:var(--gcz-white); border-top:1px solid var(--gcz-line); box-shadow:0 -8px 24px rgba(0,0,0,.08); transform:translateY(120%); transition:transform .25s ease; }
.gcz-sticky-cta.is-visible { transform:translateY(0); }

@media (max-width:767px) {
  .gcz-targ { font-size:15.5px; }
  .gcz-container { width:min(100% - 32px, var(--gcz-maxw)); }
  .gcz-section { padding:54px 0; }
  .gcz-section--compact-top { padding-top:0; }
  .gcz-targ__header-inner { min-height:68px; gap:14px; }
  .gcz-targ__brand img { height:40px; }
  .gcz-btn--header { min-height:38px; padding:9px 15px; font-size:.88rem; }
  .gcz-hero__media { min-height:72vh; }
  .gcz-hero__content { padding:44px 0 38px; }
  .gcz-hero__facts { gap:8px; }
  .gcz-hero__facts span { width:auto; font-size:.82rem; }
  .gcz-benefits-grid { grid-template-columns:1fr; }
  .gcz-gallery { display:flex; gap:14px; overflow-x:auto; margin-right:-16px; padding:4px 16px 18px 0; scroll-snap-type:x mandatory; }
  .gcz-gallery figure { flex:0 0 82%; scroll-snap-align:start; }
  .gcz-gallery img { height:230px; }
  .gcz-price-grid { grid-template-columns:1fr; }
  .gcz-form-card { padding:26px 20px; }
  .gcz-summary-box { align-items:flex-start; flex-direction:column; gap:4px; }
  .gcz-summary-box__value { font-size:1.2rem; }
}

@media (min-width:768px) {
  .gcz-sticky-cta { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  .gcz-targ *, .gcz-targ *::before, .gcz-targ *::after { scroll-behavior:auto !important; animation-duration:.001ms !important; transition-duration:.001ms !important; }
}

/* Standalone thank-you page. */
.gcz-thank-you { min-height:100vh; display:flex; flex-direction:column; }
.gcz-thank-you__main { flex:1 0 auto; display:flex; }
.gcz-thank-you__section { width:100%; display:flex; align-items:center; background:var(--gcz-white); }
.gcz-thank-you__card { width:100%; }
.gcz-thank-you__expired .gcz-btn { margin-top:8px; }
.gcz-thank-you .gcz-targ__footer { flex:0 0 auto; }

@media (max-width:767px) {
  .gcz-thank-you__section { padding:42px 0; }
  .gcz-thank-you .gcz-btn--header { max-width:48%; text-align:center; }
}
