/* Inboardchuckled — lean Havlis-style theme */
:root {
  --bg: #243a28;
  --bg-deep: #0c160e;
  --lime: #a8c86a;
  --lime-deep: #7ea040;
  --lime-soft: #c4d890;
  --link: #90b850;
  --hover: #dce8b0;
  --text: #fff;
  --muted: rgba(255,255,255,.78);
  --line: #7ea040;
  --font: "Source Serif Pro", Georgia, serif;
  --max: 1600px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-width:320px;font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.55}
img{max-width:100%;display:block}
a{color:var(--link);text-decoration:underline}
a:hover{color:var(--hover);text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3{font-weight:600;line-height:1.2;margin:0 0 .6em}
p{margin:0 0 1em}
.site{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:linear-gradient(180deg, rgba(12,22,14,.5) 0%, rgba(36,58,40,.55) 50%, rgba(12,22,14,.8) 100%),url(../images/pozadi.jpg) center top/cover no-repeat,var(--bg);background-attachment:scroll,fixed,scroll}
.wrap{width:100%;max-width:calc(var(--max) + 1.5rem);margin:0 auto;padding:0 .75rem}
.top-banner{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-areas:"logo phones search" "logo cart cart" "nav nav nav";gap:.65rem 1rem;align-items:center;padding:.85rem 0 0}
.logo{grid-area:logo;text-decoration:none;color:var(--text);line-height:1.05}
.logo:hover{color:var(--lime)}
.logo-mark{display:block;font-size:clamp(1.6rem,3.2vw,2.5rem)}
.logo-mark span{color:var(--lime)}
.logo-sub{display:block;margin-top:.2rem;font-size:.92rem;color:var(--lime-soft)}
.top-phones{grid-area:phones;justify-self:end;text-align:right;font-size:1.02rem}
.top-phones a{color:var(--text);text-decoration:none}
.top-phones a:hover{color:var(--lime)}
.search-block{grid-area:search;justify-self:end;display:flex;width:min(100%,280px);height:42px;border:1px solid #fff}
.search-block input{flex:1;border:0;background:transparent;color:var(--lime-soft);padding:0 .8rem;outline:0}
.search-block input::placeholder{color:#fff;opacity:1}
.search-block button{width:48px;border:0;background:#fff;color:#111;cursor:pointer}
.cart-box{grid-area:cart;justify-self:end;min-width:200px;padding:.5rem .8rem;border:1px solid var(--line);background:rgba(0,0,0,.2);font-size:.92rem}
.cart-box .label{color:var(--lime);text-transform:uppercase;font-size:.75rem}
.cart-box .empty{color:var(--muted)}
.top-nav{grid-area:nav;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(0,0,0,.35);margin-top:.3rem}
.nav-toggle{display:none;width:100%;padding:.8rem 1rem;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.nav-list{display:flex;flex-wrap:wrap}
.nav-list>li{flex:1 1 auto;text-align:center}
.nav-list>li>a{display:block;padding:.8rem .5rem;color:var(--text);text-decoration:none;white-space:nowrap}
.nav-list>li>a:hover,.nav-list>li>a.is-active{color:var(--lime)}
.page-main{width:100%;max-width:calc(var(--max) + 1.5rem);margin:0 auto;padding:1.1rem .75rem 2rem}
.season-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.4rem 0 1.3rem}
.season-bar a{display:grid;place-items:center;min-height:58px;padding:.6rem;text-align:center;text-decoration:none;color:var(--text);border:1px solid var(--line);background:rgba(0,0,0,.22)}
.season-bar a:hover{color:var(--lime);background:rgba(255,255,255,.06)}
.store-pills{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.5rem}
.store-pill{display:block;padding:.9rem 1rem;text-decoration:none;color:var(--text);border:1px solid var(--line);background:rgba(0,0,0,.25);text-align:center;text-transform:uppercase;letter-spacing:.05em}
.store-pill strong{display:block;color:var(--lime);font-size:1.1rem}
.welcome{display:grid;grid-template-columns:1.15fr .85fr;gap:1.3rem;margin-bottom:1.7rem}
.welcome-copy{background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.15);padding:1.2rem 1.3rem}
.welcome-copy h2{color:var(--lime);font-size:clamp(1.35rem,2.4vw,1.8rem)}
.welcome-visual{position:relative;min-height:320px;overflow:hidden;border:1px solid rgba(255,255,255,.15)}
.welcome-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.welcome-visual figcaption{position:absolute;left:0;right:0;bottom:0;padding:.55rem .75rem;background:rgba(0,0,0,.7);color:var(--lime);font-size:.9rem}
.shortcut-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin:1.3rem 0 1.7rem}
.shortcut{display:flex;flex-direction:column;min-height:160px;text-decoration:none;color:var(--text);border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.35);overflow:hidden}
.shortcut:hover{border-color:var(--lime);color:var(--text)}
.shortcut img{width:100%;height:95px;object-fit:cover}
.shortcut span{display:block;padding:.7rem .8rem;color:var(--lime);font-size:1.05rem}
.bio-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:1rem;margin:1.3rem 0;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.22)}
.bio-block img{width:100%;height:100%;min-height:200px;object-fit:cover}
.bio-copy{padding:1.1rem 1.2rem}
.bio-copy h3{color:var(--lime)}
.bio-links{display:flex;flex-wrap:wrap;gap:.45rem .8rem;margin-top:.6rem}
.page-title{margin:.3rem 0 1.1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.2)}
.page-title h1{margin:0;font-size:clamp(1.7rem,3.2vw,2.3rem);color:var(--lime)}
.page-title p{margin:.4rem 0 0;color:var(--muted);max-width:44rem}
.panel{background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.15);padding:1.1rem 1.2rem;margin-bottom:.9rem}
.panel h2,.panel h3{color:var(--lime)}
.katalog-form{display:grid;gap:.65rem}
.katalog-form label{display:grid;grid-template-columns:160px 1fr;gap:.65rem;align-items:center}
.katalog-form select,.katalog-form input[type=text]{width:100%;min-height:2.3rem;padding:.35rem .55rem;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.25)}
.katalog-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.4rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.4rem;padding:.4rem 1rem;border:1px solid transparent;cursor:pointer;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;font-size:.88rem}
.btn-primary{background:var(--lime);color:#000}
.btn-primary:hover{background:var(--lime-soft);color:#000}
.btn-ghost{border-color:var(--line);color:var(--text);background:transparent}
.plant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem;margin-top:.8rem}
.plant-card{border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.22);overflow:hidden}
.plant-card img{width:100%;height:140px;object-fit:cover}
.plant-card .body{padding:.75rem .8rem}
.plant-card h3{margin:0 0 .3rem;font-size:1rem;color:var(--lime)}
.plant-card p{margin:0;color:var(--muted);font-size:.9rem}
.plant-card .price{display:block;margin-top:.45rem}
.news-list{display:grid;gap:.7rem}
.news-item{display:grid;grid-template-columns:140px 1fr;gap:.85rem;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.22);overflow:hidden}
.news-item img{width:100%;height:100%;min-height:100px;object-fit:cover}
.news-item .body{padding:.8rem .9rem}
.news-item h3{color:var(--lime);margin-bottom:.3rem}
.news-item .date{color:var(--lime-soft);font-size:.85rem}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}
.gallery-grid figure{margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.12);min-height:150px}
.gallery-grid img{width:100%;height:100%;object-fit:cover}
.price-table{width:100%;border-collapse:collapse;margin:.65rem 0 1rem}
.price-table th,.price-table td{border:1px solid rgba(255,255,255,.2);padding:.45rem .6rem;text-align:left}
.price-table th{background:rgba(255,255,255,.08);color:var(--lime)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.contact-form{display:grid;gap:.6rem}
.contact-form label{display:grid;gap:.25rem;color:var(--muted);font-size:.92rem}
.contact-form input,.contact-form textarea{width:100%;padding:.55rem .65rem;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.25);outline:0}
.contact-form textarea{min-height:110px;resize:vertical}
.form-note{color:var(--lime);min-height:1.1em;margin:0}
.ad-assets{margin-top:1.5rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.2)}
.ad-assets h2{color:var(--lime);font-size:1.1rem}
.ad-assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.55rem}
.ad-assets-grid figure{margin:0;border:1px solid rgba(255,255,255,.12)}
.ad-assets-grid figcaption{padding:.35rem .5rem;font-size:.78rem;color:var(--muted)}
.site-footer{border-top:1px solid var(--line);background:rgba(0,0,0,.65);padding:1.3rem 0 .9rem}
.footer-stores{display:grid;grid-template-columns:1fr 1fr .8fr;gap:1rem;margin-bottom:1rem}
.footer-stores h3{color:var(--lime);font-size:1.05rem;margin-bottom:.4rem}
.footer-stores p{margin:0 0 .3rem;color:var(--muted);font-size:.92rem}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:.7rem;border-top:1px solid rgba(255,255,255,.15);color:var(--muted);font-size:.88rem}
.footer-links{display:flex;flex-wrap:wrap;gap:.7rem 1rem}
.footer-links a{color:var(--muted);text-decoration:none}
.footer-links a:hover{color:var(--lime)}
@media(max-width:980px){
.top-banner{grid-template-columns:1fr 1fr;grid-template-areas:"logo phones" "search search" "cart cart" "nav nav"}
.search-block,.cart-box{justify-self:stretch;width:100%;max-width:none}
.welcome,.bio-block,.contact-grid,.footer-stores{grid-template-columns:1fr}
.shortcut-grid{grid-template-columns:1fr 1fr}
.nav-toggle{display:block;border-bottom:1px solid rgba(255,255,255,.15)}
.nav-list{display:none;flex-direction:column}
.top-nav.is-open .nav-list{display:flex}
.nav-list>li{text-align:left}
.katalog-form label{grid-template-columns:1fr}
.site{background-attachment:scroll}
}
@media(max-width:640px){
.season-bar,.store-pills,.shortcut-grid,.gallery-grid{grid-template-columns:1fr}
.top-phones{text-align:left;justify-self:start;font-size:.9rem}
}
