/*
Theme Name: SEWEX Final Editable V15 Stable Menu
Author: SEWEX
Description: Pełny, responsywny i edytowalny motyw WordPress SEWEX: logo, grafiki usług, grafiki sponsorów, teksty, telefon i e-mail z poziomu Dostosuj.
Version: 1.8
Text Domain: sewex
*/
:root{--navy:#061d36;--gold:#d6a83f;--text:#0b1830;--light:#f7f9fc;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.55;overflow-x:hidden}
a{text-decoration:none;color:inherit}
.container{width:min(1240px,94%);margin:0 auto}
img{max-width:100%;height:auto}

/* ukrycie koszyka/sklepu z WooCommerce i popularnych wtyczek */
.xoo-wsc-basket,.xoo-wsc-modal,.woofc-area,.woofc-count,.woofc-cart-area,
.woocommerce-mini-cart,.wc-block-mini-cart,.wp-block-woocommerce-mini-cart,
.cart-contents,.site-header-cart,.floating-cart,.sticky-cart,#woo-floating-cart,
#floating-cart,.added_to_cart,.product_type_simple,.ajax_add_to_cart{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}

.site-header{background:#fff;position:sticky;top:0;z-index:99;box-shadow:0 4px 18px rgba(6,29,54,.10)}
.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:10px 0}
.brand{display:flex;align-items:center;gap:14px;min-width:250px}
.brand-logo,.custom-logo{max-width:145px!important;max-height:58px!important;width:auto!important;height:auto!important;object-fit:contain;display:block}
.brand-title strong{display:block;font-size:32px;line-height:1;letter-spacing:.10em;color:var(--navy);white-space:nowrap}
.brand-title span{display:block;font-size:14px;color:var(--navy);white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:28px;font-weight:800;color:var(--navy);font-size:15px;white-space:nowrap}
.main-nav a{padding-bottom:9px;border-bottom:3px solid transparent;transition:.2s}
.main-nav a:hover,.main-nav a.active,.main-nav a.current-page{border-bottom-color:var(--gold);color:var(--navy)}
.header-cta{background:var(--navy);color:#fff;padding:12px 22px;border-radius:9px;font-weight:800;white-space:nowrap}

.hero{background:#f5f8fb center/cover no-repeat;text-align:center;padding:44px 0 36px;min-height:235px;display:flex;align-items:center}
.hero h1{margin:0 0 12px;color:var(--navy);font-size:clamp(26px,3.5vw,44px);font-weight:900;letter-spacing:.035em;display:flex;align-items:center;justify-content:center;gap:28px;line-height:1.15}
.hero h1:before,.hero h1:after{content:"";width:68px;height:3px;background:var(--gold);display:block;flex-shrink:0}
.hero p{margin:0;color:var(--navy);font-size:clamp(18px,2vw,24px)}

.services{padding:26px 0 34px;background:#fff}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-card{background:#fff;border:1px solid #dfe6ee;border-radius:8px;box-shadow:0 14px 34px rgba(6,29,54,.10);overflow:hidden;display:flex;flex-direction:column;position:relative}
.service-photo{width:100%;aspect-ratio:16/11;background-size:cover;background-position:center}
.service-body{background:#fff;text-align:center;padding:28px 24px 32px;flex:1;display:flex;flex-direction:column}
.service-card h2{font-size:clamp(18px,1.45vw,21px);color:var(--navy);margin:0 0 12px;text-transform:uppercase;letter-spacing:.03em;line-height:1.25;min-height:52px;display:flex;align-items:center;justify-content:center}
.gold-line{width:52px;height:2px;background:var(--gold);margin:0 auto 16px}
.service-card p{font-size:16px;margin:0;color:var(--text);line-height:1.55}

.sponsors{padding:34px 0;background:#fff}
.sponsor-intro{text-align:center;margin-bottom:24px}
.sponsor-intro h2{color:var(--navy);font-size:34px;line-height:1.1;margin:0 0 10px;text-transform:uppercase}
.sponsor-intro p{margin:0 auto;color:var(--text);font-size:18px;max-width:680px}
.sponsor-grid-new{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.sponsor-tile{background:#061d36;border-radius:12px;overflow:hidden;box-shadow:0 14px 34px rgba(6,29,54,.13);border:1px solid #dfe6ee}
.sponsor-tile img{display:block;width:100%;height:auto}

.features{background:#fff;padding:24px 0 30px}
.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.feature{display:flex;align-items:center;justify-content:center;gap:13px;color:var(--navy);font-weight:900;text-transform:uppercase;text-align:left}
.feature-icon{font-size:36px;line-height:1;flex-shrink:0}

.contact-strip{background:linear-gradient(90deg,#061d36,#08294d);color:#fff;padding:25px 0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:24px;text-align:center;align-items:center}
.contact-item{font-size:22px;font-weight:800}
.contact-item a{color:#fff;text-decoration:none}
.contact-item a:hover{text-decoration:underline}
.contact-item span{color:var(--gold);margin-right:12px}

.contact-section{background:var(--light);padding:52px 0}
.contact-box{background:#fff;border-radius:18px;box-shadow:0 16px 38px rgba(6,29,54,.08);padding:32px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px}
.contact-box h2{margin:0 0 12px;font-size:36px;color:var(--navy)}
.contact-data{font-size:24px;font-weight:900;color:var(--navy)}
.contact-data a{color:var(--navy)}
.footer{background:#031326;color:#cbd5e0;text-align:center;padding:22px;font-size:14px}

@media(max-width:1180px){
  .main-nav{gap:16px;font-size:14px}
  .brand-title strong{font-size:28px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-card h2{min-height:auto}
}
@media(max-width:900px){
  .header-inner{flex-wrap:wrap;justify-content:center}
  .brand{width:100%;justify-content:center;min-width:0}
  .main-nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;white-space:normal}
  .header-cta{order:2}
  .sponsor-grid-new{grid-template-columns:1fr}
  .contact-box{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .container{width:min(100% - 28px,1240px)}
  .site-header{position:relative}
  .brand-logo,.custom-logo{max-width:112px!important;max-height:44px!important}
  .brand-title strong{font-size:24px}
  .brand-title span{font-size:12px}
  .header-cta{padding:10px 15px}
  .main-nav{gap:12px;font-size:13px}
  .hero{padding:30px 0 24px;min-height:185px}
  .hero h1{font-size:23px;display:block;letter-spacing:.01em}
  .hero h1:before,.hero h1:after{display:none}
  .hero p{font-size:18px}
  .service-grid,.feature-grid{grid-template-columns:1fr}
  .service-photo{aspect-ratio:16/9}
  .service-body{padding:24px 20px 28px}
  .service-card p{font-size:15px}
  .sponsor-intro h2{font-size:25px}
  .sponsor-intro p{font-size:16px}
  .sponsor-grid-new{gap:16px}
  .feature{justify-content:flex-start}
  .contact-item,.contact-data{font-size:18px}
  .contact-box{padding:24px}
}


.lang-switcher{display:flex;align-items:center;gap:6px;font-weight:900;color:var(--navy)}
.lang-btn{border:1px solid #dfe6ee;background:#fff;color:var(--navy);border-radius:7px;padding:7px 9px;cursor:pointer;font-weight:900}
.lang-btn.active{background:var(--gold);border-color:var(--gold);color:var(--navy)}
@media(max-width:900px){
  .lang-switcher{order:2}
}


.gallery-page{background:var(--light);padding:58px 0}
.gallery-header{text-align:center;margin-bottom:34px}
.gallery-header h1{color:var(--navy);font-size:clamp(32px,4vw,48px);margin:0 0 10px}
.gallery-header p{font-size:18px;max-width:760px;margin:0 auto;color:var(--text)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gallery-item{display:block;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 14px 34px rgba(6,29,54,.10);border:1px solid #dfe6ee}
.gallery-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:.25s}
.gallery-item:hover img{transform:scale(1.04)}
.gallery-note{background:#fff;border-radius:14px;padding:24px;box-shadow:0 14px 34px rgba(6,29,54,.08);text-align:center}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gallery-grid{grid-template-columns:1fr}.gallery-page{padding:36px 0}}


.gallery-filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:24px 0 28px}
.gallery-filter{border:1px solid #dfe6ee;background:#fff;color:var(--navy);border-radius:999px;padding:10px 16px;font-weight:900;cursor:pointer}
.gallery-filter.active,.gallery-filter:hover{background:var(--gold);border-color:var(--gold)}
.gallery-category{margin-bottom:34px}
.gallery-category-title{color:var(--navy);font-size:26px;margin:0 0 18px;text-transform:uppercase}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:9999;padding:24px}
.lightbox.active{display:flex}
.lightbox img{max-width:94vw;max-height:88vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.lightbox-close{position:absolute;top:18px;right:24px;color:#fff;background:transparent;border:0;font-size:42px;cursor:pointer;line-height:1}
