#ofertomat-app, .ofertomat-app { --primary:#1b6d00; --secondary:#4359ab; --tertiary:#a04100; --surface:#faf9ff; --surface-low:#f2f3fd; --text:#191b23; --muted:#64748b; font-family: Inter, sans-serif; color:var(--text); line-height:1.5; width:100%; max-width:100vw; overflow-x:hidden; background:var(--surface); }
#ofertomat-app *, .ofertomat-app * { box-sizing:border-box; }
#ofertomat-app a { text-decoration:none !important; box-shadow:none !important; }
#ofertomat-app p, #ofertomat-app h1, #ofertomat-app h2, #ofertomat-app h3, #ofertomat-app h4 { margin:0; padding:0; }
#ofertomat-app ul { margin:0; padding:0; list-style:none; }
.material-symbols-outlined { font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }
.ofertomat-header { position:relative; top:auto; width:100%; z-index:9999; background:rgba(255,255,255,.85); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); box-shadow:0 1px 2px rgba(15,23,42,.08); }
.ofertomat-standalone .ofertomat-header { position:relative; }
.ofertomat-header-inner { display:grid; grid-template-columns:auto 1fr auto; align-items:center; height:80px; padding:0 48px; max-width:1536px; margin:0 auto; gap:24px; }
.ofertomat-logo, .ofertomat-footer-logo { font-size:28px; font-weight:900; letter-spacing:-.06em; color:#0f172a !important; white-space:nowrap; }
.ofertomat-nav { display:flex; justify-content:center; gap:32px; }
.ofertomat-nav a { color:#475569 !important; font-size:14px; font-weight:600; border-bottom:2px solid transparent; padding-bottom:4px; }
.ofertomat-nav a.active { color:#15803d !important; border-color:#15803d; font-weight:800; }
.ofertomat-menu-btn { display:none; background:transparent; border:0; padding:8px; cursor:pointer; }
.ofertomat-mobile-menu { display:none; }
.ofertomat-main { padding-top:0; min-height:100vh; }
.ofertomat-standalone .ofertomat-main { padding-top:0; }
.page-view.block { display:block; animation:ofertomatFade .3s ease-out; }
.page-view.hidden { display:none; }
@keyframes ofertomatFade { from{opacity:0; transform:translateY(10px)} to{opacity:1; transform:translateY(0)} }
.ofertomat-container, .ofertomat-hero, .ofertomat-footer-grid { max-width:1536px; margin:0 auto; padding-left:48px; padding-right:48px; }
.ofertomat-hero { padding-top:64px; padding-bottom:96px; }
.ofertomat-hero-copy { max-width:760px; margin-bottom:64px; }
.ofertomat-hero h1 { font-size:clamp(44px,6vw,84px); line-height:.95; font-weight:900; letter-spacing:-.06em; margin-bottom:24px !important; }
.ofertomat-hero p, .ofertomat-section-head p, .ofertomat-page-title p { color:var(--muted); font-size:clamp(18px,2vw,24px); max-width:720px; }
.ofertomat-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.ofertomat-card { background:#fff; border-radius:24px; padding:40px; min-height:260px; display:flex; flex-direction:column; box-shadow:0 20px 25px -5px rgba(33,57,137,.04),0 8px 10px -6px rgba(33,57,137,.04); border:1px solid transparent; transition:.25s ease; }
.ofertomat-card:hover { transform:translateY(-4px); border-color:rgba(27,109,0,.2); }
.ofertomat-card-icon { width:64px; height:64px; border-radius:18px; display:flex; align-items:center; justify-content:center; background:rgba(27,109,0,.08); color:var(--primary); margin-bottom:32px; transition:.25s ease; }
.ofertomat-card-icon span { font-size:34px; }
.ofertomat-card:hover .ofertomat-card-icon { background:var(--primary); color:#fff; }
.ofertomat-secondary .ofertomat-card-icon { background:rgba(67,89,171,.1); color:var(--secondary); }
.ofertomat-secondary:hover .ofertomat-card-icon { background:var(--secondary); color:#fff; }
.ofertomat-tertiary .ofertomat-card-icon { background:rgba(160,65,0,.1); color:var(--tertiary); }
.ofertomat-tertiary:hover .ofertomat-card-icon { background:var(--tertiary); color:#fff; }
.ofertomat-card h3 { font-size:24px; line-height:1.15; font-weight:900; color:#0f172a; margin-bottom:12px !important; }
.ofertomat-card p { color:var(--muted); font-size:16px; margin-bottom:26px !important; }
.ofertomat-card-cta { margin-top:auto; color:var(--primary); font-size:14px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; display:flex; gap:8px; align-items:center; }
.ofertomat-secondary .ofertomat-card-cta { color:var(--secondary); }
.ofertomat-tertiary .ofertomat-card-cta { color:var(--tertiary); }
.ofertomat-promoted { background:var(--surface-low); padding:80px 0; }
.ofertomat-section-head { margin-bottom:48px; }
.ofertomat-section-head span { color:var(--primary); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.18em; display:block; margin-bottom:8px; }
.ofertomat-section-head h2, .ofertomat-page-title h2 { font-size:clamp(32px,4vw,48px); line-height:1.05; font-weight:900; letter-spacing:-.04em; margin-bottom:16px !important; }
.ofertomat-offer-stack, .ofertomat-offers-list { display:flex; flex-direction:column; gap:16px; width:100%; }
.ofertomat-offer-card { position:relative; display:flex; align-items:center; gap:32px; background:#fff; border:1px solid #e2e8f0; border-radius:24px; padding:28px 32px; box-shadow:0 1px 2px rgba(15,23,42,.04); transition:.2s ease; }
.ofertomat-offer-card:hover { border-color:color-mix(in srgb, var(--ofertomat-accent) 35%, #e2e8f0); box-shadow:0 8px 24px rgba(15,23,42,.06); }
.ofertomat-offer-group { position:relative; background:#fff; border:1px solid #e2e8f0; border-radius:28px; padding:18px; box-shadow:0 1px 2px rgba(15,23,42,.04); }
.ofertomat-offer-group:hover { border-color:color-mix(in srgb, var(--ofertomat-accent) 35%, #e2e8f0); box-shadow:0 8px 24px rgba(15,23,42,.06); }
.ofertomat-group-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:2px 4px 16px; }
.ofertomat-group-head span { display:block; color:#64748b; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; margin-bottom:2px; }
.ofertomat-group-head h3 { margin:0; color:#0f172a; font-size:24px; line-height:1.1; font-weight:900; }
.ofertomat-group-head button { border:0; border-radius:999px; background:var(--ofertomat-accent); color:#fff; font-weight:900; padding:11px 18px; cursor:pointer; letter-spacing:.02em; }
.ofertomat-group-primary .ofertomat-offer-card-inner, .ofertomat-group-extra .ofertomat-offer-card-inner { box-shadow:none; }
.ofertomat-group-extra { display:grid; gap:14px; padding-top:14px; margin-top:14px; border-top:1px dashed #cbd5e1; }
.ofertomat-group-extra[hidden] { display:none !important; }

.ofertomat-badge { position:absolute; left:24px; top:-12px; background:var(--ofertomat-accent); color:#fff; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; border-radius:999px; padding:5px 12px; }
.ofertomat-logo-box { width:150px; height:56px; flex:0 0 150px; display:flex; align-items:center; justify-content:center; color:#0f172a; font-weight:800; text-align:center; }
.ofertomat-logo-box img { max-width:100%; max-height:56px; object-fit:contain; mix-blend-mode:multiply; filter:grayscale(1); transition:.2s ease; }
.ofertomat-offer-card:hover .ofertomat-logo-box img { filter:grayscale(0); }
.ofertomat-metrics { flex:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; align-items:center; }
.ofertomat-metrics p { color:#94a3b8; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; margin-bottom:4px !important; }
.ofertomat-metrics strong { font-size:28px; line-height:1; color:#0f172a; font-weight:900; }
.ofertomat-metrics strong.accent { color:var(--ofertomat-accent); }
.ofertomat-benefits li { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; margin:4px 0; color:#334155; }
.ofertomat-benefits .material-symbols-outlined { color:var(--ofertomat-accent); font-size:20px; font-variation-settings:'FILL' 1; }
.ofertomat-offer-action { flex:0 0 170px; }
.ofertomat-offer-action a { display:block; text-align:center; background:var(--ofertomat-accent); color:#fff !important; border-radius:14px; padding:15px 18px; font-size:13px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; transition:.2s ease; }
.ofertomat-offer-action a:hover { filter:brightness(1.08); transform:scale(1.02); }
.ofertomat-list-view { background:var(--surface-low); padding:48px 0; }
.ofertomat-page-title { margin-bottom:40px; }
.ofertomat-layout { display:flex; gap:32px; align-items:flex-start; }
.ofertomat-sidebar { width:288px; flex:0 0 288px; }
.ofertomat-filter-box { background:#fff; border:1px solid #e2e8f0; border-radius:24px; padding:24px; position:sticky; top:112px; }
.ofertomat-filter-box h3 { display:flex; align-items:center; gap:8px; font-size:18px; font-weight:900; margin-bottom:16px !important; }
.ofertomat-filter-list { display:flex; flex-direction:column; gap:8px; }
.filter-btn { display:block; width:100%; text-align:left; text-decoration:none !important; border:0; border-left:4px solid transparent; background:transparent; border-radius:12px; padding:13px 16px; color:#475569; font-size:14px; font-weight:600; cursor:pointer; transition:.2s ease; }
.filter-btn:hover, .filter-btn.active { background:#f2f3fd; color:var(--primary); border-left-color:var(--primary); font-weight:900; }
.ofertomat-empty { background:#fff; border-radius:24px; padding:32px; color:#64748b; border:1px solid #e2e8f0; }
.ofertomat-blog { background:#fff; padding:48px 0; }
.ofertomat-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.ofertomat-blog-grid article { background:#fff; border:1px solid #e2e8f0; border-radius:24px; padding:32px; }
.ofertomat-blog-grid h3 { font-size:22px; font-weight:900; margin-bottom:12px !important; }
.ofertomat-blog-grid p { color:#64748b; }
.ofertomat-contact { background:var(--surface-low); padding:64px 0; text-align:center; }
.ofertomat-footer { background:#f8fafc; border-top:1px solid #e2e8f0; }
.ofertomat-footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; padding-top:64px; padding-bottom:64px; }
.ofertomat-footer p { color:#64748b; font-size:16px; line-height:1.7; max-width:520px; margin-top:26px !important; }
.ofertomat-footer-links { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.ofertomat-footer h4 { color:#0f172a; font-size:18px; font-weight:900; margin-bottom:24px !important; }
.ofertomat-footer li { margin-bottom:18px; }
.ofertomat-footer a { color:#64748b !important; font-size:16px; transition:.2s ease; }
.ofertomat-footer a:hover { color:var(--primary) !important; }
#ofertomat-toast-container { position:fixed; right:24px; bottom:24px; z-index:10000; }
@media (max-width:1024px) { .ofertomat-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.ofertomat-offer-card{align-items:flex-start; flex-direction:column;}.ofertomat-logo-box{justify-content:flex-start}.ofertomat-metrics{width:100%; grid-template-columns:repeat(2,minmax(0,1fr));}.ofertomat-benefits{grid-column:span 2;}.ofertomat-offer-action{width:100%; flex:auto}.ofertomat-layout{flex-direction:column}.ofertomat-sidebar{width:100%; flex:auto}.ofertomat-filter-box{position:relative; top:auto}.ofertomat-filter-list{display:grid; grid-template-columns:repeat(2,minmax(0,1fr));}.ofertomat-footer-grid{grid-template-columns:1fr}.ofertomat-blog-grid{grid-template-columns:1fr;} }
@media (max-width:768px) { .ofertomat-header-inner{grid-template-columns:1fr auto; height:72px; padding:0 24px}.ofertomat-nav{display:none}.ofertomat-menu-btn{display:flex}.ofertomat-mobile-menu{position:fixed; inset:0; background:#fff; z-index:9998; transform:translateX(100%); transition:.3s ease; padding:96px 24px 24px; display:flex; flex-direction:column; gap:24px}.ofertomat-mobile-menu.open{transform:translateX(0)}.ofertomat-mobile-menu a{font-size:24px; font-weight:900; color:#1e293b !important; border-bottom:1px solid #e2e8f0; padding-bottom:16px}.ofertomat-main{padding-top:0}.ofertomat-container,.ofertomat-hero,.ofertomat-footer-grid{padding-left:24px; padding-right:24px}.ofertomat-hero{padding-top:48px; padding-bottom:64px}.ofertomat-category-grid{grid-template-columns:1fr}.ofertomat-card{padding:32px}.ofertomat-metrics{grid-template-columns:1fr}.ofertomat-benefits{grid-column:span 1}.ofertomat-filter-list{grid-template-columns:1fr}.ofertomat-footer-links{grid-template-columns:1fr}.ofertomat-footer p{font-size:15px}.ofertomat-metrics strong{font-size:24px} }

/* Canvas / Elementor hardening */
#ofertomat-app.ofertomat-page-shell,
.ofertomat-app.ofertomat-page-shell {
  width:100%;
  max-width:100%;
  min-height:100vh;
  margin:0;
  padding:0;
  overflow-x:hidden;
  isolation:isolate;
}
#ofertomat-app a,
.ofertomat-app a,
#ofertomat-app button,
.ofertomat-app button {
  text-decoration:none !important;
  box-shadow:none !important;
}
.ofertomat-header {
  left:auto;
  right:auto;
  max-width:100%;
}
.ofertomat-header-inner,
.ofertomat-container,
.ofertomat-hero,
.ofertomat-footer-grid {
  width:100%;
}
body.page-template-elementor_canvas #ofertomat-app.ofertomat-page-shell {
  display:block;
}

.ofertomat-promo-label {
  display:inline-block;
  margin-top:14px;
  background:linear-gradient(90deg,#f43f5e,#ec4899);
  color:#fff;
  border-radius:6px;
  padding:8px 12px;
  font-size:14px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.03em;
  max-width:280px;
}
.ofertomat-offer-description {
  margin-top:24px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:24px;
  padding:28px 32px;
  color:#334155;
}
.ofertomat-back { margin-top:24px !important; }
.ofertomat-back a {
  color:var(--primary) !important;
  font-weight:900;
}
body.ofertomat-canvas-template {
  margin:0;
  background:#faf9ff;
}
body.ofertomat-canvas-template .elementor-location-header,
body.ofertomat-canvas-template .elementor-location-footer,
body.ofertomat-canvas-template header:not(.ofertomat-header),
body.ofertomat-canvas-template footer:not(.ofertomat-footer) {
  display:none !important;
}
@media (max-width:768px) {
  .ofertomat-promo-label { font-size:13px; max-width:100%; }
}

/* Contact form */
.ofertomat-contact { background:var(--surface-low); padding:64px 0; text-align:left; }
.ofertomat-contact-card {
  max-width:820px;
  margin:0 auto;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:32px;
  padding:40px;
  box-shadow:0 20px 45px rgba(15,23,42,.08);
}
.ofertomat-contact-head { text-align:center; margin-bottom:32px; }
.ofertomat-contact-head .material-symbols-outlined { color:var(--primary); font-size:52px; margin-bottom:12px; }
.ofertomat-contact-head h2 { font-size:clamp(32px,4vw,46px); font-weight:900; letter-spacing:-.04em; margin-bottom:10px !important; color:#0f172a; }
.ofertomat-contact-head p { color:#64748b; font-size:17px; line-height:1.6; }
.ofertomat-contact-form { display:flex; flex-direction:column; gap:20px; }
.ofertomat-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.ofertomat-contact-form label { display:flex; flex-direction:column; gap:8px; color:#334155; font-size:14px; font-weight:900; }
.ofertomat-contact-form input[type="text"],
.ofertomat-contact-form input[type="email"],
.ofertomat-contact-form textarea {
  width:100%;
  border:1px solid #cbd5e1;
  border-radius:16px;
  padding:14px 16px;
  font:inherit;
  font-weight:500;
  color:#0f172a;
  background:#fff;
  outline:none;
  transition:.2s ease;
}
.ofertomat-contact-form textarea { resize:vertical; min-height:150px; }
.ofertomat-contact-form input:focus,
.ofertomat-contact-form textarea:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(27,109,0,.14); }
.ofertomat-consent { flex-direction:row !important; align-items:flex-start; gap:12px !important; font-weight:500 !important; color:#64748b !important; line-height:1.5; }
.ofertomat-consent input { width:20px; height:20px; margin-top:2px; accent-color:var(--primary); flex:0 0 auto; }
.ofertomat-submit {
  width:100%;
  border:0;
  border-radius:16px;
  padding:17px 22px;
  background:linear-gradient(135deg,#1b6d00 0%,#34b602 100%);
  color:#fff;
  font-size:16px;
  font-weight:900;
  letter-spacing:.02em;
  cursor:pointer;
  transition:.2s ease;
}
.ofertomat-submit:hover { transform:translateY(-1px); filter:brightness(1.05); }
.ofertomat-alert { border-radius:16px; padding:14px 16px; margin-bottom:22px; font-weight:800; }
.ofertomat-alert-success { background:#dcfce7; color:#166534; border:1px solid #86efac; }
.ofertomat-alert-error { background:#fee2e2; color:#991b1b; border:1px solid #fecaca; }
.ofertomat-hp { position:absolute !important; left:-9999px !important; opacity:0 !important; pointer-events:none !important; }
@media (max-width:768px) {
  .ofertomat-contact-card { padding:28px 22px; border-radius:24px; }
  .ofertomat-form-grid { grid-template-columns:1fr; }
}

@media (max-width:640px){ .ofertomat-group-head{align-items:flex-start; flex-direction:column;} .ofertomat-group-head button{width:100%;} }


/* Unified menu and final fixes */
#ofertomat-app .ofertomat-header, .ofertomat-app .ofertomat-header {
  width:100%;
  max-width:1536px;
  margin:0 auto;
  left:auto;
  right:auto;
}
#ofertomat-app .ofertomat-header-inner, .ofertomat-app .ofertomat-header-inner {
  width:100%;
  max-width:1536px;
  margin:0 auto;
  padding-left:48px;
  padding-right:48px;
}
.ofertomat-promoted-card .ofertomat-logo-box img,
.ofertomat-promoted .ofertomat-logo-box img {
  filter:grayscale(0) !important;
}
.ofertomat-blog-card { color:inherit !important; display:block; text-decoration:none !important; }
.ofertomat-blog-card article { height:100%; transition:.2s ease; }
.ofertomat-blog-card:hover article { transform:translateY(-2px); box-shadow:0 10px 30px rgba(15,23,42,.08); }
.ofertomat-blog-card span { margin-top:18px; display:flex; align-items:center; gap:6px; color:var(--primary); font-weight:900; text-transform:uppercase; letter-spacing:.04em; font-size:13px; }
.ofertomat-article-card, .ofertomat-privacy-content {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:24px;
  padding:28px 32px;
  color:#334155;
  line-height:1.75;
  font-size:16px;
}
.ofertomat-privacy-content { border:0; padding:0; text-align:left; }
.ofertomat-privacy-content h2, .ofertomat-privacy-content h3,
.ofertomat-article-card h2, .ofertomat-article-card h3 { color:#0f172a; margin:28px 0 12px !important; font-weight:900; }
.ofertomat-privacy-content p, .ofertomat-privacy-content ul, .ofertomat-privacy-content ol,
.ofertomat-article-card p, .ofertomat-article-card ul, .ofertomat-article-card ol { margin:0 0 16px !important; }
.ofertomat-privacy-content ul, .ofertomat-privacy-content ol,
.ofertomat-article-card ul, .ofertomat-article-card ol { padding-left:22px !important; list-style:initial !important; }
@media (max-width:900px){
  #ofertomat-app .ofertomat-header-inner, .ofertomat-app .ofertomat-header-inner { padding-left:24px; padding-right:24px; }
}
