/* Avtoris Servis — shared stylesheet. Self-hosted fonts, no external CDN. */

@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 200 700;
  font-display: swap;
  src: url('../fonts/oswald-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 200 700;
  font-display: swap;
  src: url('../fonts/oswald-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-024F, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/publicsans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122;
}
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/publicsans-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-024F, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root{
  --bg: oklch(97% 0.004 250);
  --dark: oklch(21% 0.008 250);
  --dark-2: oklch(26% 0.01 250);
  --dark-3: oklch(30% 0.012 250);
  --on-dark: oklch(98% 0.003 250);
  --on-dark-muted: oklch(80% 0.01 250);
  --on-dark-faint: oklch(55% 0.012 250);
  --accent: oklch(56% 0.19 25);
  --accent-contrast: #fff;
  --link: oklch(56% 0.14 250);
  --text: oklch(20% 0.01 250);
  --text-soft: oklch(35% 0.01 250);
  --muted: oklch(46% 0.012 250);
  --border: oklch(88% 0.005 250);
  --border-soft: oklch(90% 0.005 250);
  --panel-alt: oklch(94% 0.006 250);
  --white: #fff;
  --success-bg: oklch(94% 0.05 145);
  --success-border: oklch(70% 0.1 145);
  --success-text: oklch(30% 0.02 145);
  --font-head: 'Oswald', Arial Narrow, Arial, sans-serif;
  --font-body: 'Public Sans', -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:var(--link);text-decoration:none;}
a:hover{color:var(--accent);}
h1,h2,h3{font-family:var(--font-head);margin:0;}
p{margin:0 0 1em;}
ul{margin:0;}
button{font-family:inherit;}

.container{max-width:1240px;margin:0 auto;padding:0 40px;}
.container-narrow{max-width:1100px;margin:0 auto;padding:0 40px;}
.container-article{max-width:900px;margin:0 auto;padding:0 40px;}
.container-legal{max-width:800px;margin:0 auto;padding:0 40px;}

/* Buttons */
.btn{
  display:inline-block;
  font-weight:700;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:0.5px;
  padding:14px 30px;
  border:none;
  cursor:pointer;
  text-align:center;
}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:var(--accent);opacity:0.92;color:#fff;}
.btn-dark{background:var(--dark);color:#fff;}
.btn-dark:hover{color:#fff;opacity:0.9;}
.btn-outline{background:transparent;border:2px solid oklch(45% 0.01 250);color:var(--on-dark);}
.btn-outline:hover{color:var(--on-dark);border-color:var(--accent);}
.btn-sm{padding:10px 20px;font-size:13px;}
.btn-block{display:block;width:100%;}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;
  background:var(--dark);
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 40px;flex-wrap:wrap;gap:14px;
  border-bottom:3px solid var(--accent);
}
.brand{
  display:flex;align-items:center;gap:10px;
  font-family:var(--font-head);font-weight:700;font-size:22px;
  color:var(--on-dark);letter-spacing:0.5px;
}
.brand-mark{width:10px;height:28px;background:var(--accent);display:inline-block;}
.main-nav{display:flex;gap:26px;flex-wrap:wrap;align-items:center;}
.main-nav a{
  color:var(--on-dark);font-weight:600;font-size:14px;
  text-transform:uppercase;letter-spacing:0.5px;
}
.main-nav a.active{color:var(--accent);}
.header-actions{display:flex;align-items:center;gap:16px;}
.cart-link{
  position:relative;color:var(--on-dark);font-weight:600;font-size:14px;
  background:transparent;border:none;cursor:pointer;font-family:inherit;
}
.cart-badge{
  position:absolute;top:-10px;right:-16px;background:var(--accent);
  color:#fff;border-radius:10px;padding:1px 6px;font-size:11px;
  display:none;
}
.cart-badge.show{display:inline-block;}

/* Simple footer-only header for legal pages */
.site-header-simple .main-nav a{color:var(--on-dark);}

/* Hero (home / interior) */
.hero-split{
  display:flex;align-items:stretch;flex-wrap:wrap;background:var(--dark);
}
.hero-copy{flex:1 1 480px;padding:80px 40px;max-width:640px;}
.hero-photo{flex:1 1 420px;min-height:420px;}
.hero-photo img{width:100%;height:100%;min-height:420px;object-fit:cover;}
.eyebrow{
  color:var(--accent);font-weight:700;letter-spacing:1.5px;font-size:14px;
  text-transform:uppercase;margin-bottom:14px;
}
.hero-copy h1{font-size:52px;line-height:1.05;color:var(--on-dark);margin:0 0 20px;}
.hero-copy p{font-size:17px;line-height:1.65;color:var(--on-dark-muted);margin:0 0 32px;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;}

/* Page hero (inner pages) */
.page-hero{background:var(--dark);padding:56px 40px;text-align:center;}
.page-hero h1{font-size:40px;color:var(--on-dark);margin:0;}
.page-hero p{color:var(--on-dark-muted);max-width:640px;margin:16px auto 0;}
.page-hero .eyebrow{margin-bottom:12px;}

/* Trust bar */
.trust-bar{
  display:flex;justify-content:center;flex-wrap:wrap;
  background:var(--bg);border-bottom:1px solid var(--border);
}
.trust-item{
  flex:1 1 220px;text-align:center;padding:32px 20px;
  border-right:1px solid var(--border-soft);
}
.trust-num{font-family:var(--font-head);font-size:30px;font-weight:700;color:var(--accent);}
.trust-label{font-size:14px;color:var(--muted);margin-top:6px;}

/* Generic section */
.section{padding:80px 40px;}
.section-tight{padding:56px 40px;}
.section-alt{background:var(--panel-alt);}
.section-dark{background:var(--dark);}
.section-accent{background:var(--accent);padding:56px 40px;text-align:center;}
.section-accent h2{color:#fff;font-size:30px;margin:0 0 16px;}
.section-accent p{color:oklch(96% 0.02 25);margin:0 0 26px;}
.section-head{text-align:center;margin-bottom:48px;}
.section-head h2{font-size:36px;margin:10px 0 0;}
.section-head.sm h2{font-size:32px;}

/* Grids */
.grid{display:grid;gap:24px;}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}

/* Cards */
.card{background:#fff;border:1px solid var(--border);padding:28px;color:var(--text);display:block;}
.card-icon{
  width:44px;height:44px;background:var(--panel-alt);
  display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px;
}
.card-title{font-family:var(--font-head);font-weight:600;font-size:19px;margin-bottom:8px;}
.card-desc{font-size:14px;line-height:1.55;color:var(--muted);}

.article-card{display:block;border:1px solid var(--border);color:var(--text);background:#fff;}
.article-card .thumb{height:150px;overflow:hidden;}
.article-card .thumb img{width:100%;height:100%;object-fit:cover;}
.article-card .body{padding:20px;}
.article-card .title{font-family:var(--font-head);font-weight:600;font-size:17px;margin-bottom:8px;line-height:1.3;}
.article-card .teaser{font-size:13px;color:var(--muted);}

.review-card{background:#fff;padding:28px;border:1px solid var(--border);}
.review-stars{color:var(--accent);margin-bottom:12px;}
.review-text{font-size:14px;line-height:1.6;color:oklch(30% 0.01 250);margin-bottom:16px;}
.review-name{font-weight:600;font-size:13px;}

/* Promo split (winter offer) */
.promo{
  background:var(--dark);padding:64px 40px;display:flex;align-items:center;
  gap:40px;flex-wrap:wrap;justify-content:center;
}
.promo-photo{flex:1 1 300px;min-width:260px;height:260px;overflow:hidden;}
.promo-photo img{width:100%;height:100%;object-fit:cover;}
.promo-copy{flex:1 1 380px;max-width:520px;}
.promo-copy .eyebrow{color:var(--link);margin-bottom:10px;}
.promo-copy h2{font-size:30px;color:var(--on-dark);margin:0 0 14px;}
.promo-copy p{color:var(--on-dark-muted);line-height:1.6;margin:0 0 22px;}
.btn-blue{background:var(--link);color:#fff;}
.btn-blue:hover{color:#fff;opacity:0.9;}

/* Footer */
.site-footer{background:var(--dark);color:var(--on-dark-muted);padding:60px 40px 24px;}
.footer-grid{
  max-width:1240px;margin:0 auto;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px;
}
.footer-col-title{font-weight:700;color:#fff;margin-bottom:14px;font-size:14px;text-transform:uppercase;}
.footer-brand{font-family:var(--font-head);font-weight:700;font-size:19px;color:#fff;margin-bottom:14px;}
.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px;}
.footer-links a{color:var(--on-dark-muted);}
.footer-contact{font-size:14px;line-height:1.8;}
.footer-bottom{
  max-width:1240px;margin:40px auto 0;border-top:1px solid var(--dark-3);
  padding-top:20px;font-size:12px;color:var(--on-dark-faint);text-align:center;
}
.footer-simple{background:var(--dark);color:var(--on-dark-muted);padding:40px 40px 24px;}
.footer-simple-links{
  max-width:1240px;margin:0 auto;display:flex;gap:20px;flex-wrap:wrap;
  justify-content:center;font-size:13px;
}
.footer-simple-bottom{
  max-width:1240px;margin:24px auto 0;border-top:1px solid var(--dark-3);
  padding-top:20px;font-size:12px;color:var(--on-dark-faint);text-align:center;
}

/* Cookie banner */
.cookie-banner{
  position:fixed;bottom:0;left:0;right:0;background:var(--dark);color:oklch(90% 0.01 250);
  padding:20px 40px;display:flex;gap:20px;flex-wrap:wrap;align-items:center;
  justify-content:space-between;z-index:100;border-top:2px solid var(--accent);
}
.cookie-banner p{font-size:13px;max-width:700px;margin:0;}
.cookie-actions{display:flex;gap:10px;}
.btn-ghost{background:transparent;border:1px solid oklch(50% 0.012 250);color:oklch(90% 0.01 250);padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;}
.btn-solid-accent{background:var(--accent);border:none;color:#fff;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;}

/* Services detail (storitve.html) */
.service-row{display:flex;gap:40px;flex-wrap:wrap;align-items:center;scroll-margin-top:100px;}
.service-photo{flex:1 1 320px;min-width:260px;height:260px;overflow:hidden;}
.service-photo img{width:100%;height:100%;object-fit:cover;}
.service-copy{flex:1 1 380px;}
.service-emoji{font-size:34px;margin-bottom:10px;}
.service-copy h2{font-size:26px;margin:0 0 12px;}
.service-copy p{line-height:1.65;color:var(--text-soft);margin:0 0 16px;}
.service-includes-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--muted);margin-bottom:8px;}
.service-includes{margin:0 0 20px;padding-left:20px;color:var(--text-soft);line-height:1.8;font-size:14px;}
.service-cta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.service-price{font-family:var(--font-head);font-weight:600;font-size:18px;color:var(--accent);}
.chip-nav{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.chip{background:#fff;border:1px solid var(--border);padding:8px 16px;font-size:13px;font-weight:600;}

/* Price list */
.price-group{margin-bottom:44px;}
.price-group h2{font-size:22px;color:var(--accent);margin:0 0 16px;border-bottom:2px solid var(--border);padding-bottom:10px;}
.price-row{display:flex;justify-content:space-between;gap:20px;padding:14px 4px;border-bottom:1px solid var(--border-soft);}
.price-row .name{font-size:15px;color:oklch(25% 0.01 250);}
.price-row .price{font-family:var(--font-head);font-weight:600;font-size:15px;color:var(--text);white-space:nowrap;}
.price-note{background:var(--panel-alt);padding:24px 28px;font-size:13px;color:oklch(40% 0.012 250);line-height:1.7;}

/* Articles */
.toc-card{background:#fff;border:1px solid var(--border);padding:20px 26px;}
.toc-title{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:0.5px;color:var(--muted);margin-bottom:10px;}
.toc-list{display:flex;flex-direction:column;gap:8px;}
.toc-list a{font-size:15px;}
.article-block{scroll-margin-top:100px;}
.article-hero{height:260px;overflow:hidden;margin-bottom:24px;}
.article-hero img{width:100%;height:100%;object-fit:cover;}
.article-block h2{font-size:28px;margin:0 0 6px;}
.article-meta{font-size:13px;color:var(--muted);margin-bottom:20px;}
.article-body{font-size:16px;line-height:1.75;color:oklch(28% 0.01 250);}
.article-body p{margin:0 0 1em;}

/* About */
.stat-grid{padding:70px 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;text-align:center;}
.stat-num{font-family:var(--font-head);font-size:36px;font-weight:700;color:var(--accent);}
.stat-label{font-size:14px;color:var(--muted);margin-top:6px;}
.value-card{background:#fff;padding:26px;border:1px solid var(--border);}
.team-photo{height:200px;overflow:hidden;margin-bottom:14px;}
.team-photo img{width:100%;height:100%;object-fit:cover;}
.team-name{font-family:var(--font-head);font-weight:600;font-size:16px;}
.team-role{font-size:13px;color:var(--accent);margin-top:4px;}

/* Legal content */
.legal-content{padding:56px 40px;font-size:15px;line-height:1.75;color:oklch(28% 0.01 250);}
.legal-content h2{font-size:20px;margin:36px 0 12px;}
.legal-content h2:first-child{margin-top:0;}
.legal-content ul{padding-left:22px;margin:0 0 1em;}
.legal-content table{border-collapse:collapse;width:100%;}
.legal-content th,.legal-content td{text-align:left;padding:10px 12px;font-size:13px;border-bottom:1px solid var(--border);}

/* Contact page */
.contact-layout{display:flex;gap:48px;flex-wrap:wrap;padding:60px 40px;max-width:1180px;margin:0 auto;}
.contact-form-col{flex:1 1 480px;min-width:300px;}
.contact-side{flex:1 1 320px;min-width:280px;display:flex;flex-direction:column;gap:20px;}
.contact-card{background:var(--dark);color:oklch(90% 0.01 250);padding:28px;}
.contact-card-title{font-family:var(--font-head);font-weight:600;font-size:18px;color:#fff;margin-bottom:18px;}
.contact-card-list{display:flex;flex-direction:column;gap:14px;font-size:14px;}
.contact-card-list strong{color:#fff;}
.location-card{
  height:220px;background:var(--dark-2);color:var(--on-dark-muted);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:20px;gap:6px;
}
.location-card .pin{font-size:30px;}
.location-card .addr{font-weight:600;color:#fff;}

.success-box{background:var(--success-bg);border:1px solid var(--success-border);padding:28px;text-align:center;}
.success-box .icon{font-size:36px;margin-bottom:12px;}
.success-box .title{font-family:var(--font-head);font-weight:600;font-size:20px;margin-bottom:10px;}
.success-box p{font-size:14px;color:var(--success-text);line-height:1.6;margin:0;}

/* Forms */
.form-card{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid var(--border);padding:32px;}
.form-row{display:flex;gap:14px;flex-wrap:wrap;}
.form-field{flex:1 1 200px;}
.form-field label{font-size:13px;font-weight:600;display:block;margin-bottom:6px;}
.form-field input,.form-field select,.form-field textarea{
  width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid oklch(80% 0.006 250);
  font-size:14px;background:#fff;font-family:var(--font-body);
}
.form-field textarea{resize:vertical;}
.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:oklch(40% 0.012 250);line-height:1.5;}
.consent-row input{margin-top:3px;}
.form-note{font-size:13px;color:var(--muted);margin-top:14px;}

/* Shop */
.category-bar{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;padding:36px 40px 0;max-width:1240px;margin:0 auto;}
.category-btn{background:#fff;color:var(--text);border:1px solid oklch(85% 0.006 250);padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;}
.category-btn.active{background:var(--accent);color:#fff;}
.product-grid{max-width:1240px;margin:0 auto;padding:40px 40px 80px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;}
.product-card{background:#fff;border:1px solid var(--border);display:flex;flex-direction:column;}
.product-photo{height:170px;overflow:hidden;}
.product-photo img{width:100%;height:100%;object-fit:cover;}
.product-info{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.product-cat{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--link);}
.product-name{font-family:var(--font-head);font-weight:600;font-size:16px;line-height:1.3;}
.product-desc{font-size:13px;color:var(--muted);flex:1;}
.product-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;}
.product-price{font-family:var(--font-head);font-weight:700;font-size:18px;color:var(--text);}
.btn-add{background:var(--dark);color:#fff;border:none;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;}

.pickup-note{background:var(--panel-alt);padding:50px 40px;text-align:center;}
.pickup-note .inner{max-width:700px;margin:0 auto;}
.pickup-note h2{font-size:24px;margin:0 0 12px;}
.pickup-note p{font-size:14px;color:oklch(40% 0.012 250);line-height:1.6;margin:0;}

/* Cart drawer */
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:200;display:none;}
.cart-overlay.open{display:block;}
.cart-drawer{
  position:fixed;top:0;right:-420px;bottom:0;width:380px;max-width:92vw;background:#fff;z-index:201;
  display:flex;flex-direction:column;box-shadow:-4px 0 20px rgba(0,0,0,0.2);transition:right .25s ease;
}
.cart-drawer.open{right:0;}
.cart-drawer-head{padding:22px 24px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;}
.cart-drawer-head .title{font-family:var(--font-head);font-weight:600;font-size:19px;}
.cart-close{background:none;border:none;font-size:22px;cursor:pointer;color:oklch(40% 0.012 250);}
.cart-items{flex:1;overflow-y:auto;padding:16px 24px;}
.cart-empty-msg{text-align:center;color:oklch(50% 0.012 250);padding:40px 10px;font-size:14px;}
.cart-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid oklch(92% 0.005 250);align-items:center;}
.cart-item-info{flex:1;}
.cart-item-name{font-weight:600;font-size:14px;margin-bottom:4px;}
.cart-item-price{font-size:13px;color:var(--muted);}
.cart-item-qty{display:flex;align-items:center;gap:8px;margin-top:8px;}
.qty-btn{width:24px;height:24px;border:1px solid oklch(85% 0.006 250);background:#fff;cursor:pointer;}
.cart-item-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;}
.cart-drawer-foot{padding:20px 24px;border-top:1px solid var(--border);}
.cart-total-row{display:flex;justify-content:space-between;font-family:var(--font-head);font-weight:600;font-size:18px;margin-bottom:16px;}

.order-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:300;display:none;align-items:center;justify-content:center;padding:20px;}
.order-modal-overlay.open{display:flex;}
.order-modal{background:#fff;max-width:420px;width:100%;padding:36px;text-align:center;}
.order-modal .icon{font-size:44px;margin-bottom:16px;}
.order-modal .title{font-family:var(--font-head);font-weight:600;font-size:22px;margin-bottom:12px;}
.order-modal p{font-size:14px;color:oklch(40% 0.012 250);line-height:1.6;margin:0 0 24px;}

/* Utility */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.skip-link{
  position:absolute;left:-9999px;top:0;background:#fff;color:var(--text);
  padding:10px 16px;z-index:1000;
}
.skip-link:focus{left:10px;top:10px;}

@media (max-width:640px){
  .site-header,.page-hero,.section,.hero-copy,.footer-simple,.site-footer{padding-left:20px;padding-right:20px;}
  .container,.container-narrow,.container-article,.container-legal{padding-left:20px;padding-right:20px;}
  .hero-copy h1{font-size:38px;}
}
