/* KULAI WORK / Belgrade delivery club */
html { scroll-behavior: smooth; scroll-padding-top: 112px; }
body.kw-serbia {
  --bg-primary:#121c1e; --bg-secondary:#192528; --bg-card:#1b292c;
  --bg-overlay:#121c1e; --text-primary:#f0eee3; --text-secondary:#b0bebd;
  --text-tertiary:#809593; --accent-primary:#f46550; --accent-secondary:#9ec7bc;
  --border-light:#314144; --border-medium:#465c5e; --surface-soft:#233336;
  --surface-hover:#2c4042; --modal-overlay:rgba(7,15,16,.9);
  background:var(--bg-primary); font-family:'Manrope','TT Inters',sans-serif; line-height:1.6;
}
:root[data-theme="light"] body.kw-serbia {
  --bg-primary:#f1eee5; --bg-secondary:#e8e6dd; --bg-card:#faf8f1;
  --bg-overlay:#f1eee5; --text-primary:#18292b; --text-secondary:#546b6a;
  --text-tertiary:#617674; --accent-primary:#b83c2e; --accent-secondary:#24645b;
  --border-light:#d1d7cc; --border-medium:#abbab0; --surface-soft:#e2e6dc;
  --surface-hover:#dce3d8; --modal-overlay:rgba(7,15,16,.75);
}
.kw-serbia [hidden] { display:none !important; }
.kw-serbia a { text-decoration:none; }
.kw-serbia button,.kw-serbia input,.kw-serbia select { font:inherit; }
.kw-serbia button,.kw-serbia a,.kw-serbia select { -webkit-tap-highlight-color:transparent; }
.kw-serbia :focus-visible { outline:2px solid var(--accent-primary); outline-offset:5px; }
.kw-serbia .kw-icon { display:inline-block; flex:none; vertical-align:middle; }
.kw-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.kw-skip { position:fixed; top:-80px; left:20px; z-index:5000; padding:12px; background:#f0eee3; color:#18292b; }
.kw-skip:focus { top:12px; }
.kw-serbia .container { max-width:1240px; padding:0 28px; }
.kw-serbia .site-header { background:var(--bg-primary); border-bottom:1px solid var(--border-light); padding:19px 0; backdrop-filter:none; }
.kw-serbia .site-header .container { display:flex; gap:26px; padding:0 28px; flex-wrap:nowrap !important; }
.kw-brand { display:flex; align-items:center; gap:10px; color:var(--text-primary); flex-shrink:0; }
.kw-brand-icon { display:grid; place-items:center; width:46px; height:46px; border-radius:13px; color:#152426; background:#f46550; transform:rotate(-5deg); }
.kw-brand-icon .kw-icon { width:32px; height:32px; }
.kw-brand-type { font:700 21px/.98 'Oswald','TT Inters',sans-serif; letter-spacing:.04em; }
.kw-brand-type>span { display:block; }
.kw-brand-dot { color:var(--accent-primary); }
.kw-header-location { display:flex; gap:9px; align-items:center; font-size:9px; font-weight:700; letter-spacing:.1em; color:var(--text-secondary); white-space:nowrap; }
.kw-flag { display:inline-block; flex:none; width:22px; height:15px; background:#214d86; border-top:5px solid #dd5048; border-bottom:5px solid #f0eee3; border-radius:2px; }
.kw-serbia .main-navigation { margin:0 0 0 auto; flex:1; justify-content:flex-end; }
.kw-serbia .main-navigation ul { align-items:center; gap:22px; }
.kw-serbia .main-navigation a { text-transform:none; letter-spacing:0; font-size:12px; font-weight:600; padding:9px 0; white-space:nowrap; }
.kw-serbia .main-navigation .current-menu-item>a { color:var(--text-primary); }
.kw-serbia .header-right { gap:14px; order:initial; }
.kw-currency-control { display:inline-flex; position:relative; align-items:center; }
.kw-currency-select { color:var(--text-primary); background:var(--surface-soft); border:1px solid var(--border-light); border-radius:10px; min-height:42px; padding:8px 9px; font-size:12px !important; font-weight:700 !important; cursor:pointer; width:92px; }
.kw-currency-select option { background:var(--bg-card); color:var(--text-primary); }
.kw-serbia #cart-toggle { display:grid; place-items:center; border:1px solid var(--border-light); border-radius:10px; width:44px; height:44px; background:transparent; color:var(--text-primary); position:relative; padding:0; cursor:pointer; }
.kw-serbia #cart-toggle:hover { background:var(--surface-soft); }
.kw-serbia .cart-badge { position:absolute; top:-7px; right:-7px; min-width:19px; height:19px; padding:0 4px; display:grid; place-items:center; font:700 10px 'Manrope',sans-serif; background:var(--accent-primary); color:var(--bg-primary); border:2px solid var(--bg-primary); border-radius:20px; }
.kw-hero { display:grid; grid-template-columns:1.05fr 1fr; max-width:1184px; margin:44px auto 0; gap:22px; }
.kw-hero-copy { padding:34px 0 22px; align-self:center; }
.kw-kicker { display:flex; align-items:center; gap:10px; font-size:10px; font-weight:700; letter-spacing:.14em; color:var(--text-secondary); }
.kw-hero h1 { margin:24px 0 26px; font:700 clamp(68px,7.35vw,98px)/1.02 'Oswald','TT Inters',sans-serif; letter-spacing:-.03em; color:var(--text-primary); }
.kw-hero h1 span { color:var(--accent-primary); }
.kw-hero-subtitle { margin:0; font-size:16px; color:var(--text-secondary); line-height:1.85; }
.kw-hero-actions { display:flex; gap:22px; align-items:center; flex-wrap:wrap; margin-top:30px; }
.kw-primary { display:inline-flex; align-items:center; justify-content:center; gap:22px; padding:17px 22px; min-height:56px; color:#142527; background:#f46550; border-radius:12px; font-size:13px; font-weight:800; transition:transform .2s,background .2s; }
.kw-primary:hover { transform:translateY(-3px); background:#ff8673; }
.kw-watch { display:inline-flex; gap:8px; align-items:center; color:var(--text-primary); font-size:12px; font-weight:600; }
.kw-watch .kw-icon { width:19px; height:19px; }
.kw-watch:hover { color:var(--accent-primary); }
.kw-hero-bottom { display:flex; flex-wrap:wrap; gap:18px; margin-top:38px; color:var(--text-tertiary); font:10px 'Manrope',sans-serif; letter-spacing:.12em; }
.kw-hero-bottom span+span::before { content:'/'; color:var(--accent-primary); margin-right:18px; }
.kw-hero-art { position:relative; min-height:470px; background:#192b2f; border:1px solid #354b4f; border-radius:26px; overflow:hidden; }
.kw-city-art { position:absolute; width:105%; height:100%; left:-2%; bottom:-7px; }
.kw-map-name { position:absolute; left:24px; top:20px; font:500 12px 'Manrope',sans-serif; letter-spacing:.3em; color:#819f9f; z-index:1; }
.kw-route-stamp { display:flex; align-items:center; gap:9px; position:absolute; left:24px; bottom:24px; padding:10px 13px; border:1px solid #789392; border-radius:8px; color:#e0e5d9; transform:rotate(-6deg); background:#203337; }
.kw-route-stamp>span { font:600 38px/1 'Oswald',sans-serif; }
.kw-route-stamp>div { font-size:8px; line-height:1.5; letter-spacing:.08em; font-weight:700; }
.kw-delivery-ticket { position:absolute; right:20px; top:24px; padding:14px 17px; width:176px; background:#eeeadd; color:#1c2c2f; transform:rotate(6deg); border-radius:4px; box-shadow:0 9px 0 #0f1e2030; }
.kw-ticket-label { display:block; font-size:7px; font-weight:800; letter-spacing:.06em; padding-bottom:9px; border-bottom:1px dashed #9ba69a; }
.kw-delivery-ticket strong { display:block; font:600 28px/1.05 'Oswald',sans-serif; margin:10px 0; letter-spacing:-.02em; }
.kw-ticket-to { display:block; font:8px 'Manrope',sans-serif; letter-spacing:.05em; border-top:1px dashed #9ba69a; padding-top:9px; }
.kw-barcode { display:block; margin-top:10px; width:2px; height:16px; background:#263536; box-shadow:4px 0 #263536,9px 0 #263536,12px 0 #263536,18px 0 #263536,23px 0 #263536,26px 0 #263536,32px 0 #263536,35px 0 #263536,41px 0 #263536,46px 0 #263536,50px 0 #263536,56px 0 #263536,60px 0 #263536,65px 0 #263536,71px 0 #263536,74px 0 #263536,80px 0 #263536,86px 0 #263536,91px 0 #263536,96px 0 #263536,102px 0 #263536,108px 0 #263536,114px 0 #263536,119px 0 #263536,125px 0 #263536,132px 0 #263536,138px 0 #263536; }
.kw-art-caption { position:absolute; bottom:16px; right:18px; font-size:7px; letter-spacing:.1em; color:#8facaa; }
.kw-shift-strip { max-width:1184px; margin:32px auto 0; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:23px 0; border-top:1px solid var(--border-light); border-bottom:1px solid var(--border-light); }
.kw-strip-caption { display:flex; align-items:center; gap:14px; font-size:10px; letter-spacing:.05em; color:var(--text-tertiary); }
.kw-strip-caption>.kw-icon { width:36px; height:36px; color:var(--accent-secondary); }
.kw-strip-caption strong { color:var(--text-secondary); font-size:9px; letter-spacing:.08em; }
.kw-earnings { display:flex; align-items:center; gap:20px; }
.kw-earnings>span { font-size:9px; color:var(--text-secondary); letter-spacing:.06em; }
.kw-earnings>strong { font:500 28px 'Oswald',sans-serif; color:var(--text-primary); white-space:nowrap; }
.kw-strip-link { display:flex; align-items:center; gap:18px; font-size:10px; color:var(--text-primary); letter-spacing:.07em; font-weight:700; }
.kw-strip-link:hover { color:var(--accent-primary); }
.kw-catalog-intro { max-width:1184px; margin:66px auto 24px; scroll-margin-top:110px; }
.kw-section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:26px; }
.kw-section-heading h2 { margin:7px 0 0; color:var(--text-primary); font:600 42px/1.2 'Oswald','TT Inters',sans-serif; letter-spacing:-.02em; }
.kw-section-heading>p { font-size:12px; margin:0; color:var(--text-secondary); }
.kw-catalog-tools { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.kw-filters { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.kw-filters button { border:1px solid var(--border-light); background:transparent; color:var(--text-secondary); padding:9px 12px; min-height:40px; border-radius:8px; font-size:9px; line-height:1.2; font-weight:700; cursor:pointer; white-space:nowrap; text-transform:uppercase; transition:background .15s; }
.kw-filters button[aria-pressed="true"] { background:#e7eddb; color:#18282a; border-color:#e7eddb; }
.kw-filters button:hover { border-color:var(--text-secondary); }
.kw-search { display:flex; align-items:center; gap:10px; border:1px solid var(--border-light); border-radius:9px; padding:0 12px; color:var(--text-secondary); max-width:245px; min-height:42px; }
.kw-search input { width:175px; min-width:0; background:transparent; border:0; color:var(--text-primary); padding:10px 0; outline-offset:1px; font-size:11px; }
.kw-search input::placeholder { color:var(--text-tertiary); }
.kw-rate-note { font-size:10px; color:var(--text-tertiary); margin:12px 0 0; }
.kw-no-results { max-width:1184px; margin:35px auto 90px; padding:28px; border:1px dashed var(--border-medium); border-radius:12px; }
.kw-serbia .service-category { max-width:1184px !important; margin:30px auto 48px; width:100%; border:0; border-radius:0; background:none; overflow:visible; box-shadow:none; }
.kw-serbia .category-header { background:none; padding:0 0 17px; border:0; display:flex; justify-content:space-between; align-items:center; gap:15px; cursor:pointer; }
.kw-serbia .category-title { display:flex; align-items:center; gap:11px; margin:0; padding:0; font:600 23px/1.2 'Oswald','TT Inters',sans-serif; color:var(--text-primary); letter-spacing:.02em; }
.kw-category-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:var(--surface-soft); color:var(--accent-secondary); }
.kw-category-icon .kw-icon { width:21px; height:21px; }
.kw-category-count { font:11px 'Manrope',sans-serif; color:var(--text-tertiary); }
.kw-serbia .category-toggle { width:36px; height:36px; border:1px solid var(--border-light); background:transparent; border-radius:9px; color:var(--text-secondary); cursor:pointer; }
.kw-serbia .category-content { padding:0; display:block; }
.kw-serbia .category-content.collapsed { display:none; }
.kw-serbia .services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:0; margin:0; }
.kw-serbia .service-card { position:relative; display:flex; flex-direction:column; gap:0; padding:21px; border:1px solid var(--border-light); border-radius:15px; background:var(--bg-card); box-shadow:none; min-height:256px; text-align:left; transition:transform .18s,border-color .18s; overflow:hidden; }
.kw-serbia .service-card::before,.kw-serbia .service-card::after { display:none; }
.kw-serbia .service-card:hover { transform:translateY(-4px); border-color:var(--accent-secondary); box-shadow:none; }
.kw-card-top { display:flex; align-items:center; justify-content:space-between; color:var(--text-tertiary); margin-bottom:18px; }
.kw-service-code { font-size:10px; line-height:1; letter-spacing:.1em; }
.kw-card-top .kw-icon { width:17px; height:17px; }
.kw-serbia .service-card h3 { color:var(--text-primary); font:600 16px/1.6 'Manrope','TT Inters',sans-serif; letter-spacing:-.02em; margin:0 0 20px; flex:1; text-transform:none; overflow-wrap:anywhere; }
.kw-serbia .service-price { color:var(--text-primary); font:600 25px/1.2 'Oswald','TT Inters',sans-serif; margin:0 0 17px; padding:0; text-align:left; border:0; }
.kw-serbia .add-to-cart { display:flex; align-items:center; justify-content:space-between; gap:15px; width:100%; padding:11px 0 0; min-height:35px; margin:0; border:0; border-top:1px solid var(--border-light); border-radius:0; background:none; color:var(--text-secondary); font-size:11px; font-weight:600; box-shadow:none; cursor:pointer; }
.kw-serbia .add-to-cart .cart-icon { width:23px; height:23px; background:var(--surface-soft); color:var(--text-primary); border-radius:6px; display:grid; place-items:center; font-size:18px; line-height:1; }
.kw-serbia .add-to-cart:hover { background:none; color:var(--accent-primary); transform:none; box-shadow:none; }
.kw-serbia .add-to-cart:hover .cart-icon { color:#142527; background:#f46550; }
.kw-serbia .goals-section { max-width:1240px; margin:55px auto 70px; }
.kw-serbia .page-title { text-align:left; font:600 clamp(32px,5vw,60px)/1.2 'Oswald',sans-serif; margin:12px 0; letter-spacing:-.03em; color:var(--text-primary); }
.kw-goals-lead { font-size:14px; color:var(--text-secondary); margin-bottom:35px; }
.kw-serbia .goals-progress,.kw-serbia .goal-card { background:var(--bg-card); border:1px solid var(--border-light); box-shadow:none; }
.kw-serbia .progress-fill { background:var(--accent-secondary); }
.kw-serbia .goal-title { color:var(--text-primary); font-family:'Manrope',sans-serif; }
.kw-serbia .price-value { color:var(--accent-secondary); }
.kw-serbia .goal-card:hover { box-shadow:none; border-color:var(--accent-secondary); }
.kw-serbia .site-footer { margin-top:28px; padding:35px 0; background:var(--bg-primary); border-top:1px solid var(--border-light); }
.kw-footer-mark { display:flex; align-items:center; justify-content:space-between; gap:20px; max-width:1184px; margin:0 auto 35px; font:600 30px 'Oswald',sans-serif; color:var(--text-primary); }
.kw-footer-mark>span { font:9px 'Manrope',sans-serif; letter-spacing:.12em; color:var(--text-tertiary); }
.kw-serbia .footer-title { font:700 12px 'Manrope',sans-serif; color:var(--text-secondary); margin-bottom:14px; letter-spacing:0; text-transform:none; }
.kw-serbia .footer-copy { color:var(--text-tertiary); font-size:10px; line-height:1.9; }
.kw-serbia .footer-copyright,.kw-serbia .footer-created { font-size:9px; color:var(--text-tertiary); }
.kw-serbia .cart-modal-content,.kw-serbia .proposal-modal-content,.kw-serbia .donation-modal-content { background:var(--bg-card); color:var(--text-primary); border:1px solid var(--border-medium); border-radius:20px; }
.kw-serbia .cart-modal-content { padding:28px; }
.kw-cart-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:25px; }
.kw-serbia .kw-cart-heading h3 { color:var(--text-primary); font:600 35px 'Oswald',sans-serif; margin:0; }
.kw-serbia .cart-item { background:var(--bg-primary); border-color:var(--border-light); }
.kw-serbia .cart-item-title { font-size:13px; color:var(--text-primary); }
.kw-serbia .cart-item-price { color:var(--accent-secondary); font-size:13px; }
.kw-cart-total { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:15px; border-top:1px solid var(--border-light); padding-top:18px; font-size:13px; }
.kw-cart-total strong { font:500 32px 'Oswald',sans-serif; }
.kw-payment-note { font-size:11px; color:var(--text-secondary); line-height:1.7; margin:14px 0 23px; }
.kw-serbia .button-secondary { background:var(--surface-soft); color:var(--text-primary); border:1px solid var(--border-light); box-shadow:none; }
.kw-serbia .button-secondary:hover { background:var(--surface-hover); }
.kw-serbia .proposal-submit { color:#152426; background:#f46550; }
.kw-serbia .proposal-modal-content h3 { color:var(--text-primary); font:600 30px 'Oswald',sans-serif; }
.kw-serbia #proposal-form input,.kw-serbia #proposal-form textarea { color:var(--text-primary); background:var(--bg-primary); border:1px solid var(--border-light); }
.kw-serbia .cart-notification { color:var(--text-primary); background:var(--bg-card); border:1px solid var(--accent-secondary); }
@media (max-width:1240px) {
  .kw-hero,.kw-shift-strip,.kw-catalog-intro,.kw-no-results,.kw-footer-mark { margin-left:28px; margin-right:28px; }
  .kw-serbia .service-category { width:calc(100% - 56px); }
  .kw-header-location { display:none; }
}
@media (max-width:1050px) {
  .kw-hero h1 { font-size:76px; }
  .kw-hero-actions { gap:16px; }
  .kw-hero-art { min-height:460px; }
  .kw-catalog-tools { align-items:stretch; flex-direction:column; }
  .kw-search { max-width:none; }
  .kw-search input { width:100%; }
  .kw-hero-bottom { gap:10px; font-size:8px; }
  .kw-hero-bottom span+span::before { margin-right:10px; }
  .kw-strip-caption strong { font-size:8px; }
  .kw-earnings { gap:10px; }
}
@media (max-width:900px) {
  .kw-serbia .site-header .container { gap:15px; }
  .kw-serbia .main-navigation { display:none; position:absolute; top:calc(100% + 8px); left:20px; right:20px; margin:0 !important; padding:20px; border:1px solid var(--border-medium); background:var(--bg-card); border-radius:14px; width:auto; }
  .kw-serbia .main-navigation.is-open { display:block; }
  .kw-serbia .main-navigation ul { flex-direction:column; align-items:stretch; gap:14px; }
  .kw-serbia .main-navigation a { font-size:14px; }
  .kw-serbia .menu-toggle { display:flex; order:initial; flex:none; width:42px; height:42px; }
  .kw-serbia .header-right { margin-left:auto; }
  .kw-hero { grid-template-columns:1fr 1fr; gap:15px; margin-top:25px; }
  .kw-hero h1 { font-size:65px; }
  .kw-hero-subtitle { font-size:13px; }
  .kw-hero-art { min-height:400px; }
  .kw-delivery-ticket { width:145px; right:14px; top:18px; padding:11px; }
  .kw-delivery-ticket strong { font-size:23px; }
  .kw-barcode { width:1px; transform:scaleX(.8); transform-origin:left; }
  .kw-ticket-label { font-size:6px; }
  .kw-map-name { font-size:9px; left:15px; }
  .kw-art-caption { display:none; }
  .kw-hero-bottom { display:none; }
  .kw-serbia .services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .kw-strip-link { display:none; }
  .kw-serbia .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  html { scroll-padding-top:88px; }
  .kw-serbia .site-header { padding:13px 0; }
  .kw-serbia .site-header .container { padding:0 18px; gap:10px; }
  .kw-brand { gap:8px; }
  .kw-brand-icon { width:36px; height:36px; border-radius:10px; }
  .kw-brand-icon .kw-icon { width:26px; height:26px; }
  .kw-brand-type { font-size:17px; }
  .kw-serbia .header-right { gap:9px; }
  .kw-currency-select { width:82px; min-height:40px; font-size:11px !important; padding:6px; }
  .kw-serbia #cart-toggle { width:39px; height:40px; }
  .kw-serbia .menu-toggle { width:37px; height:40px; }
  .kw-hero,.kw-shift-strip,.kw-catalog-intro,.kw-no-results,.kw-footer-mark { margin-left:20px; margin-right:20px; }
  .kw-hero { grid-template-columns:1fr; margin-top:10px; gap:26px; }
  .kw-hero-copy { padding:25px 0 0; }
  .kw-kicker { font-size:8px; letter-spacing:.1em; gap:7px; }
  .kw-hero h1 { font-size:clamp(64px,16vw,90px); margin:20px 0 20px; }
  .kw-hero-subtitle { font-size:14px; }
  .kw-hero-actions { margin-top:24px; gap:18px; }
  .kw-primary { min-height:51px; padding:14px 18px; font-size:12px; gap:17px; }
  .kw-watch { font-size:11px; }
  .kw-hero-art { min-height:320px; border-radius:19px; }
  .kw-city-art { height:auto; width:100%; left:0; bottom:-10px; }
  .kw-map-name { top:18px; font-size:10px; }
  .kw-route-stamp { left:18px; bottom:18px; }
  .kw-shift-strip { padding:18px 0; margin-top:25px; align-items:center; gap:12px; }
  .kw-strip-caption { font-size:8px; gap:9px; }
  .kw-strip-caption strong { font-size:7px; letter-spacing:0; }
  .kw-strip-caption>.kw-icon { width:27px; height:27px; }
  .kw-earnings { flex-direction:column; align-items:flex-end; gap:3px; }
  .kw-earnings>span { font-size:7px; letter-spacing:0; }
  .kw-earnings>strong { font-size:25px; }
  .kw-catalog-intro { margin-top:40px; margin-bottom:24px; }
  .kw-section-heading h2 { font-size:34px; }
  .kw-section-heading { margin-bottom:21px; }
  .kw-section-heading>p { display:none; }
  .kw-filters { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; width:100%; scrollbar-width:thin; }
  .kw-filters button { padding:10px 12px; min-height:40px; font-size:9px; }
  .kw-serbia .service-category { width:calc(100% - 40px); margin-top:22px; margin-bottom:32px; }
  .kw-serbia .category-title { font-size:21px; gap:9px; }
  .kw-serbia .services-grid { gap:10px; }
  .kw-serbia .service-card { padding:14px; min-height:230px; border-radius:12px; }
  .kw-serbia .service-card h3 { font-size:12px; line-height:1.65; margin-bottom:18px; }
  .kw-serbia .service-price { font-size:21px; margin-bottom:15px; }
  .kw-serbia .add-to-cart { font-size:9px; gap:5px; }
  .kw-card-top { margin-bottom:14px; }
  .kw-serbia .footer-grid { grid-template-columns:1fr; gap:24px; }
  .kw-serbia .container { padding:0 20px; }
  .kw-footer-mark { align-items:flex-start; flex-direction:column; gap:8px; margin-bottom:25px; }
  .kw-footer-mark>span { font-size:8px; }
  .kw-serbia .cart-modal { padding:10px; }
  .kw-serbia .cart-modal-content { padding:20px; max-height:90dvh; overflow-y:auto; }
  .kw-serbia .proposal-modal { padding:12px; }
  .kw-serbia .proposal-modal-content { padding:22px; max-height:90dvh; overflow-y:auto; }
  .kw-cart-heading { gap:12px; }
  .kw-serbia .kw-cart-heading h3 { font-size:30px; }
  .kw-serbia .cart-item { padding:12px; gap:12px; }
  .kw-serbia .cart-item-title { font-size:12px; }
  .kw-serbia .goals-section { margin-top:35px; }
}
@media (max-width:360px) {
  .kw-serbia .services-grid { grid-template-columns:1fr; }
  .kw-serbia .service-card { min-height:210px; }
  .kw-serbia .service-card h3 { font-size:14px; }
  .kw-hero-art { min-height:290px; }
  .kw-serbia .site-header .container { padding:0 12px; gap:7px; }
  .kw-brand-icon { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .kw-serbia *, .kw-serbia *::before, .kw-serbia *::after { animation:none !important; transition:none !important; }
}

/* Typography pass: fewer labels, stronger hierarchy */
.kw-serbia .kw-kicker { font-size:12px; font-weight:800; letter-spacing:.12em; }
.kw-serbia .kw-hero h1 { font-weight:800; letter-spacing:-.045em; }
.kw-serbia .kw-hero-subtitle { max-width:540px; font-size:19px; line-height:1.55; font-weight:600; color:var(--text-primary); }
.kw-serbia .kw-primary { font-size:14px; font-weight:800; }
.kw-serbia .kw-watch { font-size:14px; font-weight:700; }
.kw-serbia .kw-section-heading h2 { font-size:52px; font-weight:800; }
.kw-serbia .kw-filters button { font-size:11px; font-weight:800; }
.kw-serbia .kw-search input { font-size:13px; font-weight:600; }
.kw-serbia .kw-rate-note { font-size:12px; font-weight:600; }
.kw-serbia .category-title { font-size:28px; font-weight:800; }
.kw-serbia .kw-category-count { font-size:13px; font-weight:800; }
.kw-serbia .service-card h3 { font-size:18px; line-height:1.42; font-weight:750; }
.kw-serbia .service-price { font-size:30px; font-weight:700; }
.kw-serbia .add-to-cart { display:flex !important; align-items:center; justify-content:space-between; min-height:44px; padding:12px 14px; border:0; border-radius:10px; background:var(--accent-primary); color:#142527 !important; font-size:13px; font-weight:800; line-height:1.2; overflow:visible; }
.kw-serbia .add-to-cart .cart-text { display:block !important; flex:1 1 auto; order:1; visibility:visible !important; opacity:1 !important; color:#142527 !important; font-size:13px !important; font-weight:800 !important; line-height:1.2; text-align:left; white-space:nowrap; }
.kw-serbia .add-to-cart .cart-icon { display:grid !important; place-items:center; flex:0 0 28px; order:2; width:28px; height:28px; margin-left:12px; background:#142527; color:var(--text-primary); border-radius:7px; }
.kw-serbia .add-to-cart .cart-icon .kw-icon { width:16px; height:16px; }
.kw-serbia .add-to-cart:hover { background:#ff806b; color:#142527 !important; transform:translateY(-2px); }
.kw-serbia .add-to-cart:hover .cart-icon { background:#142527; color:var(--text-primary); }
.kw-serbia .cart-item-title,.kw-serbia .cart-item-price { font-size:15px; font-weight:700; }
.kw-serbia .kw-cart-total { font-size:15px; font-weight:700; }
.kw-serbia .kw-cart-total strong { font-size:36px; font-weight:700; }
.kw-serbia .kw-payment-note { font-size:12px; font-weight:600; }
.kw-serbia .goals-progress h2 { font-size:24px; font-weight:800; }
.kw-serbia .goal-title { font-size:21px; font-weight:800; }
.kw-serbia .goal-description { font-size:15px; line-height:1.65; font-weight:600; }
.kw-serbia .price-label { font-size:13px; font-weight:800; }
.kw-serbia .price-value { font-size:27px; font-weight:700; }
.kw-serbia .status-badge { font-size:11px; font-weight:800; }
.kw-serbia .kw-footer-mark { font-size:36px; font-weight:800; }
.kw-serbia .kw-footer-note { max-width:1184px; margin:0 auto; color:var(--text-tertiary); font-size:12px; line-height:1.6; font-weight:600; }
.kw-serbia .footer-grid { display:flex; align-items:center; justify-content:flex-end; gap:20px; }
.kw-serbia .footer-column:not(.footer-column-meta) { display:none; }
.kw-serbia .footer-column-meta { display:block; width:auto; margin:0; }
.kw-serbia .footer-column-meta > .footer-title,
.kw-serbia .footer-column-meta > .footer-copy { display:none; }
.kw-serbia .footer-signoff { margin:0; }
.kw-serbia .footer-copyright { font-size:11px; font-weight:700; }
.kw-serbia .footer-created,
.kw-serbia .footer-created-logo-wrap { display:none; }
.kw-serbia .theme-toggle-text { font-size:11px; font-weight:700; }
.kw-serbia .kw-map-name,
.kw-serbia .kw-delivery-ticket,
.kw-serbia .kw-art-caption,
.kw-serbia .kw-hero-bottom { display:none !important; }

@media (max-width:1050px) {
  .kw-serbia .kw-hero-subtitle { font-size:17px; }
  .kw-serbia .kw-section-heading h2 { font-size:46px; }
  .kw-serbia .service-card h3 { font-size:17px; }
}
@media (max-width:620px) {
  .kw-serbia .kw-kicker { font-size:10px; }
  .kw-serbia .kw-hero-subtitle { font-size:16px; line-height:1.5; }
  .kw-serbia .kw-section-heading h2 { font-size:40px; }
  .kw-serbia .kw-filters button { font-size:10px; }
  .kw-serbia .service-card h3 { font-size:15px; line-height:1.45; }
  .kw-serbia .service-price { font-size:25px; }
  .kw-serbia .add-to-cart { padding:11px 12px; font-size:11px; }
  .kw-serbia .add-to-cart .cart-text { font-size:11px !important; }
  .kw-serbia .add-to-cart .cart-icon { flex-basis:25px; width:25px; height:25px; margin-left:8px; }
  .kw-serbia .category-title { font-size:24px; }
  .kw-serbia .goal-title { font-size:18px; }
  .kw-serbia .goal-description { font-size:14px; }
  .kw-serbia .kw-footer-mark { font-size:32px; }
  .kw-serbia .kw-footer-note { margin:0 20px; font-size:11px; }
  .kw-serbia .footer-grid { justify-content:flex-start; }
}
@media (max-width:360px) {
  .kw-serbia .kw-hero-subtitle { font-size:15px; }
  .kw-serbia .service-card h3 { font-size:15px; }
}

/* Conversion block and restored footer */
.kw-buy-panel { max-width:1184px; margin:34px auto 0; padding:36px 38px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:42px; align-items:center; background:var(--surface-soft); border:1px solid var(--border-medium); border-radius:22px; position:relative; overflow:hidden; }
.kw-buy-panel::after { content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--accent-primary); }
.kw-buy-lead .kw-kicker { color:var(--accent-primary); }
.kw-buy-lead h2 { margin:10px 0 14px; color:var(--text-primary); font:800 clamp(46px,5vw,72px)/.95 'Oswald','TT Inters',sans-serif; letter-spacing:-.04em; }
.kw-buy-lead h2 span { color:var(--accent-primary); }
.kw-buy-lead p { max-width:520px; margin:0; color:var(--text-primary); font-size:16px; line-height:1.6; font-weight:600; }
.kw-buy-cta { margin-top:24px; }
.kw-buy-steps { display:grid; gap:12px; }
.kw-buy-step { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:14px; padding:14px 0; border-bottom:1px solid var(--border-light); }
.kw-buy-step:last-of-type { border-bottom:0; }
.kw-buy-step>span { color:var(--accent-primary); font:800 24px/1 'Oswald','TT Inters',sans-serif; }
.kw-buy-step strong { color:var(--text-primary); font-size:16px; line-height:1.25; font-weight:800; }
.kw-buy-step small { color:var(--text-secondary); font-size:12px; line-height:1.35; font-weight:600; text-align:right; }
.kw-buy-note { margin:8px 0 0; color:var(--text-tertiary); font-size:11px; line-height:1.55; font-weight:600; }

.kw-serbia .footer-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,.9fr); align-items:start; gap:44px; }
.kw-serbia .footer-column:not(.footer-column-meta) { display:block; }
.kw-serbia .footer-column-meta { display:block; width:auto; margin:0; }
.kw-serbia .footer-column-meta > .footer-title,
.kw-serbia .footer-column-meta > .footer-copy { display:block; }
.kw-serbia .footer-title { margin-bottom:14px; color:var(--text-primary); font-size:14px; font-weight:800; }
.kw-serbia .footer-copy { color:var(--text-secondary); font-size:13px; line-height:1.75; font-weight:600; }
.kw-serbia .footer-copy p { margin:0; }
.kw-serbia .footer-created-logo-wrap { display:block; max-width:210px; margin-top:20px; }
.kw-serbia .footer-created-logo { display:block; width:100%; height:auto; opacity:.86; }
.kw-serbia .footer-created { display:block; color:var(--text-tertiary); font-size:11px; font-weight:700; }
.kw-serbia .footer-signoff-row { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.kw-serbia .footer-copyright { color:var(--text-tertiary); font-size:11px; font-weight:700; }

@media (max-width:1050px) {
  .kw-buy-panel { margin-left:28px; margin-right:28px; padding:30px; }
}
@media (max-width:900px) {
  .kw-buy-panel { grid-template-columns:1fr; gap:24px; }
  .kw-buy-lead p { max-width:640px; }
  .kw-serbia .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .kw-serbia .footer-column-meta { grid-column:1/-1; }
}
@media (max-width:620px) {
  .kw-buy-panel { margin-left:20px; margin-right:20px; padding:26px 22px; border-radius:18px; gap:24px; }
  .kw-buy-lead h2 { font-size:52px; }
  .kw-buy-lead p { font-size:15px; }
  .kw-buy-step { grid-template-columns:34px 1fr; gap:11px; }
  .kw-buy-step>span { font-size:21px; }
  .kw-buy-step strong { font-size:14px; }
  .kw-buy-step small { grid-column:2; margin-top:-8px; font-size:11px; text-align:left; }
  .kw-serbia .footer-grid { grid-template-columns:1fr; gap:28px; }
  .kw-serbia .footer-column-meta { grid-column:auto; }
  .kw-serbia .footer-copy { font-size:12px; }
  .kw-serbia .footer-created-logo-wrap { max-width:180px; }
}
