/*
Theme Name: Bacio Gelato
Theme URI: https://baciogelato.rs/
Description: Tema za Bacio Gelato (Dorćol, od 2009.) — jednostranični sajt sa ukusima gelata, kolačima i tortama, kafom, tortama po želji, gelato kolicima, lokacijom i kontakt formom. Ukusi i kolači se uređuju iz WordPress admina.
Version: 1.0.3
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: bacio-gelato
License: GPL-2.0-or-later
*/

/* ---------- Osnova ---------- */
:root{
  --bg-indigo:#3A3F98;
  --bg-ink:#2B2F7A;
  --bg-pink:#F6C9D8;
  --bg-accent:#D9407A;
  --bg-cream:#FBF6EC;
  --bg-display:'Bricolage Grotesque',sans-serif;
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg-cream);color:var(--bg-ink);font-family:'Instrument Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--bg-indigo);text-decoration:none}
a:hover{color:var(--bg-accent)}
*{box-sizing:border-box}
img{max-width:100%}
section[id]{scroll-margin-top:84px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.bg-wrap{min-height:100vh;overflow-x:clip}

/* Dugmad koja su linkovi zadržavaju svoju boju na hover */
a.bg-btn-solid:hover{color:#fff;background:var(--bg-ink)!important}
a.bg-btn-light:hover{color:var(--bg-indigo);background:var(--bg-pink)!important}
a.bg-btn-pink:hover{color:var(--bg-indigo);background:#fff!important}
a.bg-btn-wolt:hover{color:#fff;filter:brightness(.95)}
a.bg-btn-glovo:hover{color:#00473F;filter:brightness(.95)}

/* ---------- Animacije maskota ---------- */
@keyframes bg-walk{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}
@keyframes bg-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes bg-peek{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-8px) rotate(4deg)}}
.bg-walk{animation:bg-walk 1.7s ease-in-out infinite;transform-origin:50% 100%}
.bg-peek{animation:bg-peek 2.6s ease-in-out infinite;transform-origin:50% 100%}
.bg-mascot{width:100%;height:auto;display:block}
.bg-flip{transform:scaleX(-1)}
.bg-marquee-row{display:flex;width:max-content;animation:bg-marquee 60s linear infinite}
.bg-marquee-row span.bg-mq-item{display:flex;align-items:center;font-family:var(--bg-display);font-weight:800;font-size:30px;text-transform:uppercase;letter-spacing:-.01em;white-space:nowrap}
.bg-mq-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--bg-accent);margin:0 26px}
.bg-mq-dot.alt{background:var(--bg-pink)}
@media (prefers-reduced-motion:reduce){
  .bg-walk,.bg-peek,.bg-marquee-row{animation:none}
  html{scroll-behavior:auto}
}

/* ---------- Tabovi i tablete ---------- */
.bg-pill{font-family:inherit;font-size:16px;font-weight:600;padding:12px 20px;border-radius:999px;border:1.5px solid var(--bg-indigo);cursor:pointer;background:#fff;color:var(--bg-indigo);display:flex;gap:8px;align-items:center}
.bg-pill.is-active{background:var(--bg-indigo);color:#fff}
.bg-pill .bg-count{font-size:13px;opacity:.7}
.bg-tabs{display:flex;gap:6px;flex-wrap:wrap;align-self:flex-start;background:#fff;border:1.5px solid var(--bg-indigo);border-radius:999px;padding:6px}
.bg-tabs button{font-family:inherit;font-size:16px;font-weight:600;padding:12px 22px;border-radius:999px;border:0;cursor:pointer;background:#fff;color:var(--bg-indigo)}
.bg-tabs button.is-active{background:var(--bg-indigo);color:#fff}
.bg-panel[hidden]{display:none!important}

/* ---------- Kartice ---------- */
.bg-fcard{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:24px 16px 26px;border-radius:28px;background:var(--bg-cream);transition:transform .25s}
.bg-fcard:hover{transform:translateY(-6px)}
.bg-fimg{position:relative;width:160px;height:160px}
.bg-fimg .bg-fcircle{position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--bg-indigo);overflow:hidden}
.bg-fimg img{width:100%;height:100%;object-fit:cover;display:block}
.bg-fname{font-family:var(--bg-display);font-weight:800;font-size:21px;line-height:1.05;color:var(--bg-indigo);text-transform:uppercase;letter-spacing:-.01em}
.bg-fdesc{font-size:15px;line-height:1.4;color:var(--bg-ink);text-wrap:pretty}
.bg-tag{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--bg-accent);padding:5px 10px;border-radius:999px}
.bg-tag.posno{background:var(--bg-indigo)}
.bg-flavors{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:clamp(16px,2vw,28px)}

.bg-cakes{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(16px,2vw,24px)}
.bg-ccard{background:#fff;border:1.5px solid var(--bg-indigo);border-radius:28px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.bg-ccard:hover{transform:translateY(-6px);box-shadow:8px 8px 0 var(--bg-indigo)}
.bg-cimg{aspect-ratio:1/1;width:100%;background:#fff;position:relative;overflow:hidden;flex-shrink:0}
.bg-cimg img{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain;mix-blend-mode:multiply}
.bg-ctext{padding:18px 22px 24px;border-top:1.5px solid var(--bg-indigo);display:flex;flex-direction:column;gap:8px;background:var(--bg-cream);flex:1}
.bg-cname{font-family:var(--bg-display);font-weight:800;font-size:22px;line-height:1.05;color:var(--bg-indigo);text-transform:uppercase}
.bg-cdesc{font-size:15px;line-height:1.45;color:var(--bg-ink);text-wrap:pretty}

.bg-season{border:1.5px solid var(--bg-indigo);border-radius:22px;padding:20px 24px;background:#fff;display:flex;flex-direction:column;gap:10px}
.bg-season.is-current{background:var(--bg-pink)}
.bg-season .bg-now{display:none;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--bg-indigo);padding:5px 10px;border-radius:999px}
.bg-season.is-current .bg-now{display:block}

/* ---------- Forma ---------- */
.bg-field{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}
.bg-field input,.bg-field textarea{font-family:inherit;font-size:17px;padding:14px 16px;border-radius:14px;border:1.5px solid var(--bg-indigo);background:#fff;color:var(--bg-ink)}
.bg-field textarea{resize:vertical}
.bg-field input:focus,.bg-field textarea:focus{outline:3px solid var(--bg-pink);outline-offset:1px}
.bg-topic input{position:absolute;opacity:0;pointer-events:none}
.bg-topic span{display:inline-block;font-size:15px;font-weight:600;padding:10px 16px;border-radius:999px;border:1.5px solid var(--bg-indigo);cursor:pointer;background:#fff;color:var(--bg-indigo)}
.bg-topic input:checked + span{background:var(--bg-indigo);color:#fff}
.bg-topic input:focus-visible + span{outline:3px solid var(--bg-pink)}
.bg-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bg-alert{border-radius:14px;padding:12px 16px;font-size:15px;font-weight:600;background:#FDE3EC;color:#8A1F49;border:1.5px solid var(--bg-accent)}

/* ---------- Plutajuće dugme (samo telefon) ---------- */
.bg-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;display:none;flex-direction:column;align-items:flex-end;gap:10px}
.bg-fab-links{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.bg-fab-links[hidden]{display:none}
.bg-fab-links a{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;font-weight:600;font-size:16px;box-shadow:0 6px 18px rgba(58,63,152,.25)}
.bg-fab-toggle{font-family:inherit;display:flex;align-items:center;gap:10px;height:58px;padding:0 22px 0 18px;border-radius:999px;border:0;cursor:pointer;background:var(--bg-accent);color:#fff;font-weight:700;font-size:16px;box-shadow:0 8px 22px rgba(58,63,152,.3)}

/* ---------- Meni ---------- */
.bg-burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--bg-indigo);background:#fff;color:var(--bg-indigo);cursor:pointer;padding:0}
.bg-burger .bg-ico-close{display:none}
.bg-burger[aria-expanded="true"] .bg-ico-open{display:none}
.bg-burger[aria-expanded="true"] .bg-ico-close{display:block}
.bg-mmenu{display:none;flex-direction:column;padding:8px clamp(16px,4vw,40px) 20px;border-top:1.5px solid var(--bg-indigo);background:var(--bg-cream)}
.bg-mmenu a{padding:14px 4px;border-bottom:1px dashed var(--bg-indigo);font-family:var(--bg-display);font-weight:800;font-size:24px}
.bg-mmenu a:last-child{border-bottom:0}

/* ---------- Ostale stranice (blog, stranice) ---------- */
.bg-page{max-width:820px;margin:0 auto;padding:clamp(48px,7vw,96px) clamp(16px,4vw,40px)}
.bg-page h1{font-family:var(--bg-display);font-weight:800;font-size:clamp(40px,6vw,72px);line-height:.95;letter-spacing:-.035em;color:var(--bg-indigo);margin:0 0 24px}
.bg-page .entry-content{font-size:18px;line-height:1.6}
.bg-page .entry-content h2,.bg-page .entry-content h3{font-family:var(--bg-display);color:var(--bg-indigo)}

/* ---------- Telefon (do 759px) ---------- */
@media (max-width:759px){
  section[id]{scroll-margin-top:76px}
  .bg-navlink{display:none!important}
  .bg-burger{display:flex}
  .bg-mmenu.is-open{display:flex}
  .bg-fab{display:flex}
  .bg-flavors{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .bg-fcard{padding:16px 10px 18px;gap:10px;border-radius:22px}
  .bg-fimg{width:100%;max-width:124px;height:auto;aspect-ratio:1}
  .bg-fname{font-size:16px}
  .bg-fdesc{font-size:13px}
  .bg-cakes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .bg-ccard{border-radius:20px}
  .bg-ctext{padding:12px 12px 14px;gap:6px}
  .bg-cname{font-size:15px}
  .bg-cdesc{font-size:13px}
  .bg-tabs{flex-wrap:nowrap;overflow-x:auto;align-self:stretch;max-width:100%;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .bg-tabs::-webkit-scrollbar{display:none}
  .bg-tabs button{flex:1 0 auto;white-space:nowrap;padding:11px 14px}
  .bg-herobadge{right:auto!important;left:0!important;top:2%!important;width:96px!important;height:96px!important;font-size:15px!important;transform:rotate(-12deg)!important}
  .bg-foot{flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:22px!important;padding:40px 16px 112px!important;text-align:center}
  .bg-footbrand{align-items:center!important;gap:12px!important}
  .bg-footmascot{width:72px!important}
  .bg-footbrand > img{width:170px!important}
  .bg-footinfo{text-align:center!important;align-items:center!important;gap:10px!important}
  .bg-footsocial{justify-content:center!important}
}
