/*
Theme Name: CKF Modern v3.2.0
Theme URI: https://ckf.rs
Author: CKF Team
Author URI: https://ckf.rs
Description: Modern responsive theme for CKF Pizza & Krilca
Version: 3.2.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ckf-modern
*/

:root {
  --bg-primary: #ffffff;
  --bg-secondary: #f8f9fa;
  --bg-accent: #fff5e6;
  --text-primary: #1a1a1a;
  --text-secondary: #555555;
  --text-muted: #999999;
  --accent: #ffa500;
  --accent2: #555555;
  --green: #28a745;
  --border: #e5e5e5;
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.08);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.12);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.16);
  --radius: 15px;
  --radius-sm: 15px;
  --radius-pill: 15px;
}
html[data-theme="dark"] {
  --bg-primary: #0f0f0f;
  --bg-secondary: #1a1a1a;
  --bg-accent: #2a2520;
  --text-primary: #f0f0f0;
  --text-secondary: #b0b0b0;
  --text-muted: #707070;
  --accent: #555555;
  --accent2: #ffb347;
  --green: #5cb85c;
  --border: #333333;
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.3);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.5);
}
*{margin:0;padding:0;box-sizing:border-box;}
body{
  font-family:'Rubik',-apple-system,sans-serif;
  font-weight:500;background:var(--bg-primary);color:var(--text-primary);
  line-height:1.6;transition:background .3s,color .3s;overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{font-weight:700;line-height:1.2;margin-bottom:.8rem;}
.container{max-width:1200px;margin:0 auto;padding:0 20px;}

/* ===== FLOATING ===== */
.floating-elements{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;opacity:.5;}
html[data-theme="dark"] .floating-elements{opacity:.3;}
.float-item{position:absolute;opacity:0;animation:fi 1.5s ease forwards,fc 12s ease-in-out infinite;filter:drop-shadow(0 8px 20px rgba(0,0,0,.15));}
html[data-theme="dark"] .float-item{filter:drop-shadow(0 8px 20px rgba(0,0,0,.4));}
@keyframes fi{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
@keyframes fc{0%{transform:translate(0,0) rotate(0)}20%{transform:translate(30px,-40px) rotate(15deg)}40%{transform:translate(-20px,20px) rotate(-10deg)}60%{transform:translate(40px,30px) rotate(20deg)}80%{transform:translate(-30px,-20px) rotate(-15deg)}100%{transform:translate(0,0) rotate(0)}}
.float-item:nth-child(1){top:5%;left:10%;width:80px;animation-delay:0s,0s;animation-duration:1.5s,15s}
.float-item:nth-child(2){top:15%;right:5%;width:60px;animation-delay:.3s,.5s;animation-duration:1.5s,18s}
.float-item:nth-child(3){top:40%;left:5%;width:70px;animation-delay:.6s,1s;animation-duration:1.5s,13s}
.float-item:nth-child(4){top:60%;right:10%;width:90px;animation-delay:.9s,1.5s;animation-duration:1.5s,16s}
.float-item:nth-child(5){top:80%;left:15%;width:65px;animation-delay:1.2s,2s;animation-duration:1.5s,14s}
.float-item:nth-child(6){top:25%;left:50%;width:55px;animation-delay:.4s,.8s;animation-duration:1.5s,17s}
.float-item:nth-child(7){top:70%;left:60%;width:75px;animation-delay:.7s,1.2s;animation-duration:1.5s,19s}
.float-item:nth-child(8){top:45%;right:20%;width:50px;animation-delay:1s,1.8s;animation-duration:1.5s,12s}

/* ===== HEADER ===== */
.site-header{position:sticky;top:0;z-index:100;background:var(--bg-primary);border-bottom:1px solid var(--border);transition:background .3s,box-shadow .3s;}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;max-width:1200px;margin:0 auto;gap:8px;}
.site-logo img{height:40px;width:auto;}
.site-logo-text{font-size:1.2rem;font-weight:800;color:var(--accent);text-decoration:none;}
.header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.h-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border-radius:var(--radius-pill);font-weight:600;font-size:.82rem;transition:all .3s;white-space:nowrap;border:none;cursor:pointer;font-family:inherit;}
.h-btn-order{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 2px 10px rgba(255,107,53,.3);}
.h-btn-order:hover{transform:translateY(-1px);box-shadow:0 4px 15px rgba(255,107,53,.4);}
.h-btn-phone{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);}
.h-btn-phone:hover{background:var(--bg-accent);}
.h-icon-btn{background:var(--bg-secondary);border:1px solid var(--border);width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .3s;flex-shrink:0;}
.h-icon-btn:hover{background:var(--bg-accent);}

/* Language dropdown */
.lang-wrap{position:relative;}
.lang-dropdown{display:none;position:absolute;top:42px;right:0;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);min-width:160px;z-index:200;max-height:300px;overflow-y:auto;}
.lang-wrap.open .lang-dropdown{display:block;}
.lang-option{display:block;padding:8px 14px;font-size:.85rem;color:var(--text-primary);cursor:pointer;transition:background .2s;border:none;background:none;width:100%;text-align:left;font-family:inherit;}
.lang-option:hover{background:var(--bg-accent);}

/* ===== HERO ===== */
.hero{position:relative;z-index:1;padding:50px 20px;max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:40px;}
.hero-text{flex:1;}
.hero-text h1{font-size:2.4rem;margin-bottom:.6rem;}
.hero-text p{color:var(--text-secondary);font-size:1.05rem;margin-bottom:1.5rem;max-width:480px;}
.hero-btns{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--radius-pill);font-weight:700;font-size:1rem;transition:all .3s;text-decoration:none;border:none;cursor:pointer;font-family:inherit;}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 4px 20px rgba(255,107,53,.3);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(255,107,53,.4);}
.btn-outline{background:var(--bg-secondary);color:var(--text-primary);border:1.5px solid var(--border);}
.btn-outline:hover{background:var(--bg-accent);transform:translateY(-1px);}
.btn-glovo{background:#ffc244;color:#1a1a1a;font-weight:700;}
.btn-glovo:hover{background:#ffcf66;transform:translateY(-1px);}
.btn-wolt{background:#009de0;color:#fff;font-weight:700;}
.btn-wolt:hover{background:#00b0f0;transform:translateY(-1px);}
.delivery-btns{display:flex;gap:10px;margin-top:4px;}
.hero-img-wrap{flex:1;display:flex;justify-content:center;}
.hero-img{max-width:100%;height:auto;border-radius:var(--radius);box-shadow:var(--shadow-lg);}

/* ===== SECTION TITLE ===== */
.section{position:relative;z-index:1;padding:50px 20px;max-width:1200px;margin:0 auto;}
.section-title{text-align:center;font-size:1.8rem;margin-bottom:32px;}

/* ===== INFO GRID (Radno vreme, Adresa, Telefon) ===== */
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.info-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;}
.info-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.info-card h3{font-size:1.15rem;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.info-card p,.info-card li{font-size:.9rem;color:var(--text-secondary);line-height:1.7;}
.info-card ul{list-style:none;padding:0;}
.info-card a{color:var(--accent);font-weight:600;}
.info-card a:hover{text-decoration:underline;}

/* ===== DELIVERY ZONES ===== */
.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.delivery-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:24px;text-align:center;box-shadow:var(--shadow-sm);transition:transform .3s;}
.delivery-card:hover{transform:translateY(-3px);}
.delivery-card h4{font-size:1rem;margin-bottom:8px;color:var(--text-primary);}
.delivery-card .price{font-size:1.4rem;font-weight:700;color:var(--accent);}
.delivery-card .price.free{color:var(--green);}
.delivery-note{text-align:center;margin-bottom:24px;color:var(--text-secondary);font-size:.95rem;}

/* ===== GALLERY ===== */
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.gallery-item{border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow-sm);transition:transform .3s;}
.gallery-item:hover{transform:scale(1.03);}
.gallery-item img{width:100%;height:100%;object-fit:cover;}

/* ===== SOCIAL ===== */
.social-text{text-align:center;color:var(--text-secondary);margin-bottom:20px;}
.social-links{display:flex;justify-content:center;gap:14px;}
.social-link{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--radius-pill);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);font-weight:600;transition:all .3s;}
.social-link:hover{background:var(--bg-accent);transform:translateY(-2px);}
.social-link svg{width:20px;height:20px;fill:currentColor;}

/* ===== FOOTER ===== */
.site-footer{position:relative;z-index:1;border-top:1px solid var(--border);padding:40px 20px 24px;background:var(--bg-secondary);}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;}
.footer-col h3{font-size:1rem;margin-bottom:12px;color:var(--accent);}
.footer-col p,.footer-col a{font-size:.87rem;color:var(--text-secondary);line-height:1.7;}
.footer-col a:hover{color:var(--accent);}
.footer-bottom{max-width:1200px;margin:24px auto 0;padding-top:16px;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font-size:.8rem;}

/* ===== RESPONSIVE ===== */
@media(max-width:768px){
  .header-inner{padding:6px 12px;gap:4px;}
  .site-logo img{height:30px;}
  .h-btn .btn-text{display:none;}
  .h-btn{padding:7px 10px;font-size:1rem;}
  .h-icon-btn{width:30px;height:30px;font-size:.9rem;}
  .hero{flex-direction:column;padding:24px 16px;gap:20px;text-align:center;}
  .hero-text h1{font-size:1.5rem;}
  .hero-text p{font-size:.92rem;margin-left:auto;margin-right:auto;}
  .hero-btns,.delivery-btns{justify-content:center;}
  .hero-img{max-width:85%;}
  .info-grid{grid-template-columns:1fr;}
  .delivery-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);gap:8px;}
  .social-links{flex-direction:column;align-items:center;}
  .footer-inner{grid-template-columns:1fr;}
  .section{padding:30px 16px;}
}
@media(max-width:380px){
  .h-btn-order .btn-text{display:none;}
}
