
.gp-consent-banner,.gp-consent-modal,.gp-consent-banner *,.gp-consent-modal *{box-sizing:border-box}
.gp-consent-banner[hidden],.gp-consent-modal[hidden]{display:none!important}
.gp-consent-banner,.gp-consent-modal{font-family:inherit;--gpc-green:#61a143;--gpc-green-dark:#4f8a35;--gpc-ink:#19384a;--gpc-muted:#546979;--gpc-line:#d8e3dc;--gpc-soft:#f7fbf8}
.gp-consent-banner{position:fixed;z-index:2147483000;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(18,40,52,.38);backdrop-filter:blur(2.5px)}
.gp-consent-banner__inner{position:relative;width:min(970px,100%);max-width:970px;background:#fff;color:var(--gpc-ink);border:1px solid rgba(216,227,220,.95);border-radius:22px;box-shadow:0 28px 90px rgba(18,40,52,.24);padding:34px 44px 30px}
.gp-consent-banner__copy{max-width:820px;margin:0}
.gp-consent-banner__copy h2,.gp-consent-modal__head h2{margin:0;color:var(--gpc-ink);font-size:28px;line-height:1.16;letter-spacing:-.02em;font-weight:800}
.gp-consent-intro{margin:12px 0 0;max-width:100%;font-size:15px;line-height:1.55;color:#30475a;text-wrap:pretty}
.gp-consent-privacy-inline{display:inline!important;white-space:nowrap!important;color:#275f4a!important;font-weight:760!important;text-decoration:underline!important;text-underline-offset:3px!important}
.gp-consent-privacy-inline:hover{color:#1f4d3c!important}
.gp-consent-privacy-inline:focus-visible{outline:3px solid rgba(97,161,67,.26)!important;outline-offset:3px!important;border-radius:2px}
.gp-consent-banner__close{position:absolute!important;top:18px!important;right:20px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:auto!important;padding:3px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#1b3557!important;font:inherit!important;font-size:25px!important;line-height:1!important;cursor:pointer!important}
.gp-consent-banner__close:hover{background:transparent!important;color:#0f2444!important;box-shadow:none!important}
.gp-consent-banner__close:focus-visible{outline:2px solid rgba(97,161,67,.28)!important;outline-offset:4px!important}
.gp-consent-banner__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.gp-consent-choice,.gp-consent-secondary{min-height:58px;border-radius:14px;padding:10px 18px;font:inherit;font-size:15px;font-weight:760;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.gp-consent-choice--accept{border:1px solid var(--gpc-green);background:linear-gradient(180deg,#68ab48,#5f9f42);color:#fff;box-shadow:0 5px 15px rgba(79,138,53,.16)}
.gp-consent-choice--accept:hover,.gp-consent-choice--accept:focus-visible{background:var(--gpc-green-dark);border-color:var(--gpc-green-dark)}
.gp-consent-choice--reject{border:1.5px solid var(--gpc-green);background:#fff;color:#356d22}
.gp-consent-choice--reject:hover,.gp-consent-choice--reject:focus-visible{background:#f5faf2}
.gp-consent-secondary{border:1px solid #d6e2da;background:#fbfdfc;color:#305c49}
.gp-consent-secondary:hover,.gp-consent-secondary:focus-visible{background:#f3f8f4;border-color:#c8d8cf}
.gp-consent-banner__actions .gp-consent-secondary{grid-column:1/-1}
.gp-consent-choice:focus-visible,.gp-consent-secondary:focus-visible,.gp-consent-modal__close:focus-visible{outline:3px solid rgba(97,161,67,.24);outline-offset:2px}
.gp-consent-modal{position:fixed;z-index:2147483001;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(18,40,52,.42);backdrop-filter:blur(2.5px)}
.gp-consent-modal__backdrop{position:absolute;inset:0}
.gp-consent-modal__panel{position:relative;width:min(760px,100%);max-height:min(90vh,900px);overflow:auto;background:#fff;color:var(--gpc-ink);border:1px solid rgba(216,227,220,.96);border-radius:20px;box-shadow:0 28px 90px rgba(18,40,52,.28);padding:25px;z-index:1}
.gp-consent-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.gp-consent-modal__head>div{min-width:0;max-width:650px}
.gp-consent-modal__close{flex:0 0 auto;border:1px solid #e1e8e4;background:#f8faf8;color:#526278;border-radius:999px;width:36px;height:36px;font-size:23px;line-height:1;cursor:pointer}
.gp-consent-modal__groups{display:grid;gap:10px;margin:20px 0}
.gp-consent-option{position:relative;border:1px solid var(--gpc-line);border-radius:13px;padding:14px 15px;background:linear-gradient(180deg,#fff,#fbfdfc);display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy toggle" "copy label";column-gap:18px;row-gap:4px;align-items:center}
.gp-consent-option strong{display:block;margin:0 0 4px;color:var(--gpc-ink);font-size:16px}
.gp-consent-option p{margin:0;color:var(--gpc-muted);font-size:13.5px;line-height:1.45}
.gp-consent-option.is-required{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy label";gap:18px;align-items:center}
.gp-consent-option.is-required>span{grid-area:label;color:#5f8353;font-size:12px;font-weight:800;white-space:nowrap}
.gp-consent-option input{position:absolute;opacity:0;pointer-events:none}
.gp-consent-switch{grid-area:toggle;position:relative;width:46px;height:27px;border-radius:999px;background:#aebbb2;box-shadow:inset 0 0 0 1px rgba(16,36,71,.08);transition:.16s ease}
.gp-consent-switch::after{content:"";position:absolute;left:3px;top:3px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.22);transition:.16s ease}
.gp-consent-option input:checked + .gp-consent-switch{background:var(--gpc-green)}
.gp-consent-option input:checked + .gp-consent-switch::after{transform:translateX(19px)}
.gp-consent-option input:focus-visible + .gp-consent-switch{outline:3px solid rgba(97,161,67,.28);outline-offset:3px}
.gp-consent-switch__label{grid-area:label;color:#516176;font-size:12px;font-weight:700;white-space:nowrap}
.gp-consent-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:4px}
.gp-consent-modal__actions .gp-consent-secondary{grid-column:1/-1}
.gp-consent-open{overflow:hidden}
@media(max-width:720px){.gp-consent-banner,.gp-consent-modal{padding:14px}.gp-consent-banner__inner{padding:24px 18px 20px;border-radius:20px}.gp-consent-banner__copy h2,.gp-consent-modal__head h2{font-size:24px}.gp-consent-intro{font-size:14.5px}.gp-consent-banner__actions,.gp-consent-modal__actions{grid-template-columns:1fr}.gp-consent-banner__actions .gp-consent-secondary,.gp-consent-modal__actions .gp-consent-secondary{grid-column:auto}.gp-consent-choice,.gp-consent-secondary{width:100%;min-height:52px}.gp-consent-modal__panel{padding:20px 16px 18px;max-height:92dvh}.gp-consent-option{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy toggle" "copy label";column-gap:12px}.gp-consent-option.is-required{grid-template-areas:"copy label"}.gp-consent-switch__label,.gp-consent-option.is-required>span{font-size:11px}}
@media(max-width:520px){.gp-consent-banner{align-items:flex-end}.gp-consent-banner__inner{padding:22px 16px calc(18px + env(safe-area-inset-bottom));border-radius:18px}.gp-consent-banner__copy h2,.gp-consent-modal__head h2{font-size:21.5px}.gp-consent-modal{align-items:flex-end;padding:10px}.gp-consent-modal__panel{padding:18px 15px calc(16px + env(safe-area-inset-bottom));border-radius:18px}.gp-consent-modal__head{gap:12px}.gp-consent-modal__close{width:34px;height:34px}.gp-consent-privacy-inline{white-space:normal!important}}

/* GP819: focused visual polish, no tracking or consent-state changes. */
@media (min-width:721px){
  .gp-consent-banner__inner{width:min(818px,100%);max-width:818px;padding:32px 38px 29px;border-radius:20px}
  .gp-consent-banner__copy{max-width:100%}
  .gp-consent-banner__copy h2{font-size:27px;letter-spacing:-.023em}
  .gp-consent-banner .gp-consent-intro{font-size:14.8px;line-height:1.6;max-width:100%;margin-top:13px;text-wrap:pretty}
  .gp-consent-banner__actions{margin-top:21px;gap:12px}
  .gp-consent-banner .gp-consent-choice{min-height:53px;font-size:14.5px;border-radius:12px}
  .gp-consent-banner .gp-consent-secondary{min-height:51px;font-size:14.5px;border-radius:12px}
}
.gp-consent-banner__inner{box-shadow:0 24px 70px rgba(18,40,52,.23);}
.gp-consent-banner .gp-consent-choice--accept{background:linear-gradient(180deg,#65a748 0%,#5b993d 100%);border-color:#5b993d;box-shadow:0 5px 12px rgba(74,127,48,.13)}
.gp-consent-banner .gp-consent-choice--accept:hover{background:#508b35;border-color:#508b35;}
.gp-consent-banner .gp-consent-choice--reject{border-color:#609f44;color:#336a27;}
.gp-consent-banner .gp-consent-secondary{border-color:#dae5dd;background:#fbfcfb;color:#305c49;}
.gp-consent-banner__close{top:19px!important;right:21px!important;width:36px!important;height:36px!important;border-radius:50%!important}
.gp-consent-banner__close:hover{background:#f2f7f3!important;}
.gp-consent-banner .gp-consent-intro,.gp-consent-modal .gp-consent-intro{text-wrap:pretty;overflow-wrap:break-word}
.gp-consent-banner__actions button,.gp-consent-modal__actions button{white-space:normal;overflow-wrap:normal}
@media (min-width:721px) and (max-width:900px){
  .gp-consent-banner__inner{width:min(780px,100%);padding:30px 32px 26px}
  .gp-consent-banner .gp-consent-intro{font-size:14.6px;line-height:1.57}
}
@media (max-width:720px){
  .gp-consent-banner{padding:12px;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain}
  .gp-consent-banner__inner{width:100%;max-height:calc(100dvh - 24px);overflow-y:auto;box-shadow:0 16px 45px rgba(18,40,52,.22)}
  .gp-consent-banner .gp-consent-intro{line-height:1.57;text-wrap:pretty}
  .gp-consent-banner__actions{gap:9px;margin-top:19px}
  .gp-consent-banner .gp-consent-choice,.gp-consent-banner .gp-consent-secondary{border-radius:12px;min-height:49px;font-size:14px}
}
@media (max-width:520px){
  .gp-consent-banner{padding:8px}
  .gp-consent-banner__inner{padding:23px 17px calc(16px + env(safe-area-inset-bottom));max-height:calc(100dvh - 16px)}
  .gp-consent-banner__copy h2{padding-right:31px;font-size:clamp(20px,5.7vw,23px);line-height:1.22}
  .gp-consent-banner .gp-consent-intro{font-size:14px;line-height:1.55;margin-top:11px}
  .gp-consent-banner__close{top:12px!important;right:11px!important}
  .gp-consent-banner__actions{margin-top:17px}
}
@media (prefers-reduced-motion:reduce){
  .gp-consent-banner button,.gp-consent-modal button,.gp-consent-switch,.gp-consent-switch::after{transition:none!important;transform:none!important}
}

/* GP820: keep the close control visually just a dark X on all screen sizes.
   The mobile theme has a broad button:not(.is-secondary) green gradient rule.
   The close control is explicitly excluded and reset; the hit target stays 44px. */
.gp-consent-banner .gp-consent-banner__inner button.gp-consent-banner__close{
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;margin:0!important;
  border:0!important;border-radius:0!important;
  background:transparent!important;background-image:none!important;
  box-shadow:none!important;filter:none!important;
  color:#19384a!important;-webkit-text-fill-color:#19384a!important;
  font-family:inherit!important;font-size:27px!important;font-weight:400!important;line-height:1!important;
  text-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;
  transform:none!important;cursor:pointer!important;
}
.gp-consent-banner .gp-consent-banner__inner button.gp-consent-banner__close:hover{
  background:transparent!important;background-image:none!important;box-shadow:none!important;
  color:#19384a!important;-webkit-text-fill-color:#19384a!important;transform:none!important;
}
.gp-consent-banner .gp-consent-banner__inner button.gp-consent-banner__close:focus-visible{
  outline:2px solid #19384a!important;outline-offset:1px!important;border-radius:4px!important;
}
.gp-consent-text-mobile-end{display:none!important}
.gp-consent-text-desktop-end{display:inline!important}
@media (max-width:896px){
  .gp-consent-text-mobile-end{display:inline!important}
  .gp-consent-text-desktop-end{display:none!important}
  .gp-consent-banner .gp-consent-banner__inner button.gp-consent-banner__close{
    background:transparent!important;background-image:none!important;border:0!important;
    box-shadow:none!important;top:12px!important;right:9px!important;
  }
}
