@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

/* Design tokens (shared with homepage-rebrand.css; standalone pages load this file) */
:root{
  --ap-ink:        #0B1220;
  --ap-ink-2:      #111B2E;
  --ap-accent:     #2563EB;
  --ap-accent-dark:#1D4ED8;
  --ap-accent-soft:#EAF1FF;
  --ap-accent-on-dark:#8AB4FF;
  --ap-success:    #16A34A;
  --ap-text:       #0F172A;
  --ap-text-muted: #556070;
  --ap-border:     #E3E8EF;
  --ap-bg-soft:    #F5F7FA;
  --ap-font-head: 'Plus Jakarta Sans', 'Inter', ui-sans-serif, system-ui, sans-serif;
  --ap-font-body: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --ap-r-card: 16px;
  --ap-r-btn:  10px;
  --ap-shadow-sm: 0 1px 2px rgba(15,23,42,.05), 0 1px 3px rgba(15,23,42,.06);
  --ap-shadow-md: 0 8px 24px rgba(15,23,42,.08), 0 2px 6px rgba(15,23,42,.05);
}

.ap-site-header{
  background:
    radial-gradient(600px 220px at 85% 0%, rgba(37,99,235,.22) 0%, transparent 70%),
    linear-gradient(180deg, #0B1220 0%, #0A1428 100%);
  position:relative; border-bottom:1px solid rgba(255,255,255,.06);
}
.ap-site-header .ap-nav{
  max-width:1200px; margin:0 auto; padding:0 32px; display:flex; align-items:center;
  justify-content:space-between; height:76px; position:relative; z-index:10;
}
.ap-site-header .ap-nav-logo{
  display:flex; align-items:center; gap:0; font-family:var(--ap-font-head); font-weight:800; font-size:19px; letter-spacing:-0.02em; text-decoration:none;
}
.ap-site-header .ap-nav-logo .p1{ color:#fff; }
.ap-site-header .ap-nav-logo .p2{ color:var(--ap-accent-on-dark); }
.ap-site-header .ap-nav-links{ display:flex; align-items:center; gap:30px; list-style:none; margin:0; padding:0; }
.ap-site-header .ap-nav-links li{ margin:0; }
.ap-site-header .ap-nav-links a{ color:rgba(255,255,255,.78); font-size:14.5px; font-weight:500; font-family:var(--ap-font-body); transition:color .15s; text-decoration:none; }
.ap-site-header .ap-nav-links a:hover{ color:#fff; }
.ap-site-header .ap-nav-links .ap-nav-cta{
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.22); border-radius:999px; padding:9px 20px; color:#fff !important; font-weight:600;
  transition:background .15s, border-color .15s;
}
.ap-site-header .ap-nav-links .ap-nav-cta:hover,
.ap-site-header .ap-nav-links .ap-nav-cta:focus,
.ap-site-header .ap-nav-links .ap-nav-cta:active{
  background:var(--ap-accent); border-color:var(--ap-accent); color:#FFFFFF !important;
}
.ap-site-header .ap-nav-toggle{
  display:none; width:40px; height:40px; border-radius:10px; border:1px solid rgba(255,255,255,.22);
  align-items:center; justify-content:center; background:rgba(255,255,255,.04); cursor:pointer;
}
.ap-site-header .ap-nav-toggle span,
.ap-site-header .ap-nav-toggle span::before,
.ap-site-header .ap-nav-toggle span::after{
  content:''; display:block; width:16px; height:1.5px; background:#fff; position:relative;
  transition:transform .18s ease, opacity .18s ease;
}
.ap-site-header .ap-nav-toggle span::before{ position:absolute; top:-5px; }
.ap-site-header .ap-nav-toggle span::after{ position:absolute; top:5px; }
.ap-site-header .ap-nav.is-open .ap-nav-toggle span{ background:transparent; }
.ap-site-header .ap-nav.is-open .ap-nav-toggle span::before{ top:0; transform:rotate(45deg); background:#fff; }
.ap-site-header .ap-nav.is-open .ap-nav-toggle span::after{ top:0; transform:rotate(-45deg); background:#fff; }

/* Logo mark (shared) */
.ap-logo-mark{ display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:6px; background:transparent; margin-right:9px; flex-shrink:0; box-shadow:0 6px 14px rgba(37,99,235,.35); }
.ap-logo-mark img{ display:block; width:100%; height:100%; }

@media (max-width:900px){
  .ap-site-header .ap-nav{ padding:0 20px; }
  .ap-site-header .ap-nav-links{ gap:18px; }
}
@media (max-width:640px){
  .ap-site-header .ap-nav{ position:relative; height:68px; }
  .ap-site-header .ap-nav-links a:not(.ap-nav-cta){ display:none; }
  .ap-site-header .ap-nav-toggle{ display:flex; }
  /* Mobile: Account lives only inside the hamburger menu (no separate header button) */
  .ap-site-header .ap-nav:not(.is-open) .ap-nav-links{ display:none; }
  .ap-site-header .ap-nav.is-open .ap-nav-links{
    display:flex !important; position:absolute; top:100%; left:20px; right:20px; margin-top:10px;
    flex-direction:column; align-items:stretch; gap:0; background:var(--ap-ink-2);
    border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:8px;
    box-shadow:0 20px 44px rgba(0,0,0,.45); z-index:30;
  }
  .ap-site-header .ap-nav.is-open .ap-nav-links a:not(.ap-nav-cta){
    display:block; padding:12px 10px; border-radius:8px; color:rgba(255,255,255,.85);
  }
  .ap-site-header .ap-nav.is-open .ap-nav-links a:not(.ap-nav-cta):hover{ background:rgba(255,255,255,.06); color:#fff; }
  .ap-site-header .ap-nav.is-open .ap-nav-links .ap-nav-cta{ margin-top:6px; text-align:center; }
}

/* ---------------------------------------------------------------------------
   Impreza bridge: map theme colour variables / button styles / cookie banner
   to the new palette in CSS only (Theme Options in DB are left untouched).
   --------------------------------------------------------------------------- */
html:root{
  --color-content-primary:#2563EB; --color-content-primary-grad:#2563EB;
  --color-content-secondary:#2563EB; --color-content-secondary-grad:#2563EB;
  --color-content-link:#2563EB; --color-content-link-hover:#1D4ED8;
  --color-content-primary-faded:rgba(37,99,235,.15);
  --color-content-heading:#0F172A; --color-content-heading-grad:#0F172A;
  --color-content-text:#1F2937;
  --color-alt-content-primary:#2563EB; --color-alt-content-primary-grad:#2563EB;
  --color-alt-content-secondary:#2563EB; --color-alt-content-secondary-grad:#2563EB;
  --color-alt-content-link:#2563EB; --color-alt-content-link-hover:#1D4ED8;
  --color-header-middle-text-hover:#2563EB; --color-header-top-text-hover:#2563EB;
  --color-footer-link-hover:#ffffff; --color-subfooter-link-hover:#ffffff;
}
body .us-btn-style_1, body .us-btn-style_2{ background:var(--ap-accent); border-radius:var(--ap-r-btn); font-family:var(--ap-font-body); text-transform:none; letter-spacing:0; }
.no-touch body .us-btn-style_1:hover, .no-touch body .us-btn-style_2:hover,
body .us-btn-style_1:hover, body .us-btn-style_2:hover{ background:var(--ap-accent-dark); }
html body button.cky-btn.cky-btn-accept{ background:#2563EB !important; border-color:#2563EB !important; }
html body button.cky-btn.cky-btn-reject,
html body button.cky-btn.cky-btn-customize,
html body button.cky-btn.cky-btn-preferences{ color:#2563EB !important; border-color:#2563EB !important; }
html body .cky-btn-revisit-wrapper.cky-revisit-bottom-left{ background:#2563EB !important; }

@media (max-width:640px){
  .ap-site-header .ap-nav{ padding:0 16px; }
  .ap-site-header .ap-nav-logo{ font-size:17px; }
  .ap-site-header .ap-nav-links{ gap:10px; }
  .ap-site-header .ap-nav-links .ap-nav-cta{ padding:8px 14px; font-size:14px; }
  .ap-logo-mark{ width:26px; height:26px; border-radius:5px; margin-right:7px; }
}

/* Legal pages (Privacy 3, Refund 10, Terms 4585): readable centred column (selectors by page ID, slug-independent) */
body.page-id-3 .l-main .wpb_text_column,
body.page-id-10 .l-main .wpb_text_column,
body.page-id-4585 .l-main .wpb_text_column{ max-width:820px; margin-left:auto; margin-right:auto; font-family:var(--ap-font-body); font-size:16px; line-height:1.75; color:#1F2937; }
body.page-id-3 .l-main .wpb_text_column h1,
body.page-id-10 .l-main .wpb_text_column h1,
body.page-id-4585 .l-main .wpb_text_column h1{ font-family:var(--ap-font-head); font-weight:800; font-size:32px; line-height:1.15; letter-spacing:-0.02em; text-transform:none; color:#0F172A; margin:0 0 24px; }
body.page-id-3 .l-main .wpb_text_column h2,
body.page-id-10 .l-main .wpb_text_column h2,
body.page-id-4585 .l-main .wpb_text_column h2{ font-family:var(--ap-font-head); font-weight:700; font-size:20px; line-height:1.3; letter-spacing:-0.01em; color:#0F172A; margin:36px 0 12px; padding-top:20px; border-top:1px solid #E3E8EF; }
body.page-id-3 .l-main .wpb_text_column h3,
body.page-id-10 .l-main .wpb_text_column h3,
body.page-id-4585 .l-main .wpb_text_column h3{ font-family:var(--ap-font-body); font-weight:700; font-size:16px; color:#0F172A; margin:20px 0 8px; }
body.page-id-3 .l-main .wpb_text_column p,
body.page-id-10 .l-main .wpb_text_column p,
body.page-id-4585 .l-main .wpb_text_column p{ margin:0 0 14px; }
body.page-id-3 .l-main .wpb_text_column ul,
body.page-id-10 .l-main .wpb_text_column ul,
body.page-id-4585 .l-main .wpb_text_column ul{ margin:0 0 16px; padding-left:22px; list-style:disc; }
body.page-id-3 .l-main .wpb_text_column li,
body.page-id-10 .l-main .wpb_text_column li,
body.page-id-4585 .l-main .wpb_text_column li{ margin:0 0 8px; padding-left:4px; }
@media (max-width:640px){
  body.page-id-3 .l-main .wpb_text_column h1, body.page-id-10 .l-main .wpb_text_column h1, body.page-id-4585 .l-main .wpb_text_column h1{ font-size:26px; }
  body.page-id-3 .l-main .wpb_text_column h2, body.page-id-10 .l-main .wpb_text_column h2, body.page-id-4585 .l-main .wpb_text_column h2{ font-size:18px; margin-top:28px; }
}
body.page-id-3 .l-main section.l-section:first-child,
body.page-id-10 .l-main section.l-section:first-child,
body.page-id-4585 .l-main section.l-section:first-child{ padding-top:56px; }

/* ===== Language switcher (WPML API; desktop dropdown, mobile row inside hamburger menu) ===== */
.ap-site-header .ap-nav-links .ap-lang{ position:relative; display:flex; align-items:center; align-self:center; margin:0 -12px 0 0; }
@media (max-width:900px){ .ap-site-header .ap-nav-links .ap-lang{ margin:0 -6px 0 0; } }
.ap-site-header .ap-lang-toggle{ display:inline-flex; align-items:center; gap:5px; height:32px; padding:0 9px 0 10px; margin:0; background:transparent; border:1px solid rgba(255,255,255,.16); border-radius:8px; color:rgba(255,255,255,.82); font-family:var(--ap-font-body); font-size:13px; font-weight:600; line-height:1; letter-spacing:.04em; cursor:pointer; box-shadow:none; transition:border-color .15s, background .15s, color .15s; }
.ap-site-header .ap-lang-toggle svg{ width:10px; height:10px; opacity:.75; transition:transform .15s; }
.ap-site-header .ap-lang:hover .ap-lang-toggle,
.ap-site-header .ap-lang:focus-within .ap-lang-toggle{ border-color:rgba(255,255,255,.34); background:rgba(255,255,255,.06); color:#fff; }
.ap-site-header .ap-lang:hover .ap-lang-toggle svg,
.ap-site-header .ap-lang:focus-within .ap-lang-toggle svg{ transform:rotate(180deg); }
.ap-site-header .ap-lang::after{ content:''; position:absolute; left:0; right:0; top:100%; height:8px; }
.ap-site-header .ap-nav-links .ap-lang-menu{ display:none; position:absolute; top:calc(100% + 8px); right:0; min-width:88px; margin:0; padding:6px; list-style:none; background:var(--ap-ink-2); border:1px solid rgba(255,255,255,.12); border-radius:10px; box-shadow:0 16px 36px rgba(0,0,0,.42); z-index:40; }
.ap-site-header .ap-lang:hover .ap-lang-menu,
.ap-site-header .ap-lang:focus-within .ap-lang-menu{ display:block; }
.ap-site-header .ap-nav-links .ap-lang-menu li{ margin:0; padding:0; list-style:none; }
.ap-site-header .ap-nav-links .ap-lang-menu a{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:7px 10px; border-radius:6px; font-family:var(--ap-font-body); font-size:13px; font-weight:600; letter-spacing:.04em; color:rgba(255,255,255,.72); }
.ap-site-header .ap-nav-links .ap-lang-menu a:hover,
.ap-site-header .ap-nav-links .ap-lang-menu a:focus{ background:rgba(255,255,255,.07); color:#fff; }
.ap-site-header .ap-nav-links .ap-lang-menu a.is-active{ color:#fff; }
.ap-site-header .ap-nav-links .ap-lang-menu a.is-active::after{ content:''; width:6px; height:6px; border-radius:50%; background:var(--ap-accent-on-dark); }
.ap-site-header .ap-nav-links .ap-lang-inline{ display:none; }
@media (max-width:640px){
  .ap-site-header .ap-nav-links .ap-lang{ display:none; }
  .ap-site-header .ap-nav.is-open .ap-nav-links .ap-lang-inline{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:4px 0 0; padding:12px 10px 8px; border-top:1px solid rgba(255,255,255,.08); }
  .ap-site-header .ap-nav-links .ap-lang-inline-label{ line-height:1.2; margin-right:6px; font-family:var(--ap-font-body); font-size:12px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.5); }
  .ap-site-header .ap-nav.is-open .ap-nav-links .ap-lang-inline a{ display:inline-flex; align-items:center; line-height:1.2; padding:6px 10px; border-radius:7px; border:1px solid rgba(255,255,255,.14); background:transparent; font-family:var(--ap-font-body); font-size:13px; font-weight:600; letter-spacing:.04em; color:rgba(255,255,255,.78); }
  .ap-site-header .ap-nav.is-open .ap-nav-links .ap-lang-inline a:hover{ background:rgba(255,255,255,.06); color:#fff; }
  .ap-site-header .ap-nav.is-open .ap-nav-links .ap-lang-inline a.is-active{ background:rgba(138,180,255,.14); border-color:rgba(138,180,255,.5); color:#fff; }
}
