
/* STATS */
.stats-strip{background:var(--card);border-bottom:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr)}
.stat-item{padding:1.4rem 1rem;text-align:center;border-right:1px solid var(--border)}
.stat-item:last-child{border-right:none}
.stat-num{font-family:var(--font-head);font-size:1.8rem;font-weight:900;color:var(--gold2);line-height:1;margin-bottom:.25rem}
.stat-label{font-size:.6rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--grey)}
/* SECTIONS */
.section{max-width:1100px;margin:0 auto;padding:4rem 1.2rem}
.sec-label{display:inline-flex;align-items:center;gap:.6rem;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:var(--gold2);margin-bottom:.8rem}
.sec-label::before{content:'';display:inline-block;width:18px;height:2px;background:var(--gold2)}
.sec-title{font-family:var(--font-head);font-size:clamp(1.8rem,4vw,3rem);font-weight:900;line-height:1.05;margin-bottom:.7rem;letter-spacing:-1px}
.sec-sub{color:var(--grey);font-size:.88rem;margin-bottom:2.5rem;line-height:1.7}
/* PRODUCTS */
.products-bg{background:var(--forest2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.product-row{display:grid;grid-template-columns:1fr auto;gap:1.2rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid var(--border)}
.product-row:last-child{border-bottom:none}
.product-row-icon{font-size:1.6rem;margin-bottom:.3rem}
.product-row-type{font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--gold2);font-weight:500;margin-bottom:.2rem}
.product-row-name{font-family:var(--font-head);font-size:1.25rem;font-weight:700;margin-bottom:.3rem}
.product-row-desc{font-size:.8rem;color:var(--grey);line-height:1.65}
.product-row-price{font-family:var(--font-head);font-size:1.8rem;font-weight:900;color:var(--gold2);white-space:nowrap;text-align:right}
.product-row-price small{display:block;font-size:.58rem;color:var(--grey);font-family:var(--font-body);font-weight:300;letter-spacing:1px;text-transform:uppercase}
/* HOW IT WORKS */
.timeline{display:flex;flex-direction:column;gap:0}
.timeline-step{display:grid;grid-template-columns:52px 1fr;gap:1.2rem;position:relative;padding-bottom:2.5rem}
.timeline-step:last-child{padding-bottom:0}
.timeline-step::before{content:'';position:absolute;left:25px;top:52px;bottom:0;width:2px;background:linear-gradient(to bottom,rgba(201,150,12,.25),transparent)}
.timeline-step:last-child::before{display:none}
.timeline-num{width:52px;height:52px;border:2px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-size:1.3rem;font-weight:900;color:var(--gold2);flex-shrink:0;background:var(--forest);position:relative;z-index:1}
.timeline-content h3{font-family:var(--font-head);font-size:1.2rem;font-weight:700;margin-bottom:.4rem;margin-top:.8rem}
.timeline-content p{font-size:.82rem;color:var(--grey);line-height:1.8}
/* ORDER CARD */
.order-card{background:var(--card);border:1px solid var(--border);border-radius:4px;border-left:4px solid var(--gold);padding:1.6rem}
.order-card-title{font-family:var(--font-head);font-size:1.15rem;color:var(--gold2);font-weight:700;margin-bottom:1.2rem}
.card-row{display:flex;align-items:flex-start;gap:.7rem;padding:.75rem 0;border-bottom:1px solid var(--border)}
.card-row:last-of-type{border-bottom:none}
.card-icon{font-size:1rem;flex-shrink:0;margin-top:.1rem}
.card-row strong{display:block;font-size:.8rem;color:var(--text);margin-bottom:.1rem}
.card-row span{font-size:.72rem;color:var(--grey)}
/* TOWN GRID */
.town-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-bottom:1rem}
.town-card{background:var(--forest);padding:.9rem 1rem;text-decoration:none;transition:background .15s;display:flex;align-items:center;gap:.6rem;min-height:48px}
.town-card:hover,.town-card:focus{background:rgba(201,150,12,.08);outline:none}
.town-card:focus-visible{outline:2px solid var(--gold2)}
.town-pin{color:var(--gold);font-size:.85rem;flex-shrink:0}
.town-card-name{font-size:.85rem;font-weight:500;color:var(--text);display:block}
.town-card-kw{font-size:.55rem;color:#3d5a3d}
/* SEO BLOCK */
.seo-block{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2rem;margin:1.5rem 0;border-left:4px solid var(--gold)}
.seo-block h2{font-family:var(--font-head);font-size:1.5rem;color:var(--gold2);margin-bottom:.8rem;font-weight:700}
.seo-block h3{font-family:var(--font-head);font-size:1rem;color:var(--moss2);margin:1.3rem 0 .4rem;font-weight:700}
.seo-block p{color:var(--grey);font-size:.84rem;line-height:1.9;margin-bottom:.6rem}
.seo-block strong{color:var(--text)}
/* PARTNERS */
.partners-bg{background:var(--forest2);border-top:1px solid var(--border);padding:4rem 1.2rem}
.partners-inner{max-width:1100px;margin:0 auto}
.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-top:2rem}
.partner-tile{background:var(--forest2);padding:1rem 1.2rem;text-decoration:none;transition:background .15s;min-height:48px}
.partner-tile:hover{background:rgba(201,150,12,.07)}
.partner-tile-name{font-weight:500;font-size:.85rem;color:var(--text);display:block;margin-bottom:.15rem}
.partner-tile-desc{font-size:.58rem;color:#3d5a3d;text-transform:uppercase;letter-spacing:1px}
/* KW */
.kw-section{padding:1rem 1.2rem;max-width:1100px;margin:0 auto}
.kw-section p{font-size:.55rem;color:#2a3d2a;line-height:2.2}
/* FOOTER */
footer{background:#080f08;border-top:1px solid var(--border);padding:2.5rem 1.2rem;text-align:center}
.footer-logo{font-family:var(--font-head);font-size:1.8rem;font-weight:900;color:var(--text);margin-bottom:.8rem}
.footer-logo em{color:var(--gold2);font-style:italic}
footer p{font-size:.7rem;color:#3d5a3d;margin-bottom:.4rem}
footer a{color:var(--moss2)}
footer a:hover{color:var(--gold2)}
/* FLOATERS */
.float-btns{position:fixed;bottom:1.5rem;right:1.2rem;display:flex;flex-direction:column;gap:.6rem;z-index:1000}
.float-btn{display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:4px;font-size:.72rem;font-weight:500;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.5);transition:all .2s;animation:slideUp .4s both;min-height:44px}
.float-btn:nth-child(1){animation-delay:.2s}.float-btn:nth-child(2){animation-delay:.35s}
@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.float-btn:hover{transform:translateY(-2px)}
.float-wa{background:#25D366;color:#fff}.float-tg{background:#229ED9;color:#fff}
.float-btn svg{width:17px;height:17px;flex-shrink:0}
.float-text strong{display:block;font-size:.76rem}.float-text span{font-size:.58rem;opacity:.8}
/* BREADCRUMB */
.breadcrumb{background:var(--forest2);border-bottom:1px solid var(--border);padding:.6rem 1.2rem;font-size:.68rem;color:var(--grey)}
.breadcrumb a{color:var(--gold2)}
/* POPUP */
@keyframes popupIn{0%{transform:scale(.5) translateY(40px);opacity:0}70%{transform:scale(1.05) translateY(-5px);opacity:1}100%{transform:scale(1) translateY(0);opacity:1}}
@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(255,214,0,.7),0 8px 40px rgba(0,0,0,.5)}50%{box-shadow:0 0 0 18px rgba(255,214,0,0),0 8px 40px rgba(0,0,0,.5)}}
@keyframes blinkBadge{0%,100%{background:#f00;transform:scale(1)}50%{background:#f60;transform:scale(1.08)}}
@keyframes arrowBounce{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}
#pop-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:99998;display:flex;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(3px)}
#pop-overlay.hidden{display:none}
#pop-box{background:#1a1a1a;border:3px solid #ffd600;border-radius:16px;max-width:420px;width:100%;overflow:hidden;animation:popupIn .5s cubic-bezier(.34,1.56,.64,1) both,pulseGlow 2s ease-in-out .5s infinite;position:relative}
.pop-bar{background:#ffd600;padding:.5rem 1rem;display:flex;align-items:center;justify-content:space-between}
.pop-bar-txt{font-family:Arial Black,sans-serif;font-size:.65rem;font-weight:900;color:#000;letter-spacing:1px;text-transform:uppercase}
.pop-live{background:#f00;color:#fff;font-family:Arial Black,sans-serif;font-size:.6rem;font-weight:900;padding:.2rem .55rem;border-radius:3px;letter-spacing:1px;text-transform:uppercase;animation:blinkBadge .8s ease-in-out infinite}
.pop-body{padding:1.6rem 1.8rem 1.8rem;text-align:center}
.pop-emoji{font-size:2.5rem;margin-bottom:.4rem;display:block}
.pop-headline{font-family:Arial Black,sans-serif;font-size:1.7rem;font-weight:900;color:#ffd600;text-transform:uppercase;line-height:1.1;margin-bottom:.3rem}
.pop-headline span{color:#fff}
.pop-sub{font-family:Arial,sans-serif;font-size:.8rem;color:#aaa;margin-bottom:1.3rem;line-height:1.5}
.pop-sub strong{color:#fff}
.pop-prices{display:flex;gap:.6rem;justify-content:center;margin-bottom:1.3rem;flex-wrap:wrap}
.pop-price{background:#2a2a2a;border:2px solid #ffd600;border-radius:8px;padding:.55rem .9rem;font-family:Arial Black,sans-serif}
.pop-price .pr{font-size:1.2rem;font-weight:900;color:#ffd600;display:block;line-height:1}
.pop-price .pl{font-size:.58rem;color:#888;text-transform:uppercase;letter-spacing:1px}
.pop-cta{display:block;background:linear-gradient(135deg,#ffd600 0%,#f90 50%,#ffd600 100%);background-size:200% auto;color:#000;font-family:Arial Black,sans-serif;font-size:1rem;font-weight:900;text-transform:uppercase;text-decoration:none;padding:.9rem 1.8rem;border-radius:8px;letter-spacing:1px;animation:shimmer 2s linear infinite;transition:transform .15s;margin-bottom:.6rem}
.pop-cta:hover{transform:scale(1.03)}
.pop-arr{display:inline-block;animation:arrowBounce .6s ease-in-out infinite}
.pop-note{font-family:Arial,sans-serif;font-size:.65rem;color:#555}
.pop-close{position:absolute;top:.5rem;right:.7rem;background:none;border:none;color:#000;font-size:1.1rem;font-weight:900;cursor:pointer;line-height:1;padding:.1rem .3rem;font-family:Arial Black,sans-serif;min-width:32px;min-height:32px}
.pop-dismiss{display:block;text-align:center;color:#444;font-size:.65rem;cursor:pointer;margin-top:.7rem;text-decoration:underline;font-family:Arial,sans-serif}
/* DESKTOP OVERRIDES */
@media(min-width:768px){
  nav.main-nav{padding:1rem 2rem}
  .nav-links{display:flex;gap:2rem}
  .nav-links a{color:var(--grey);font-size:.78rem;letter-spacing:.5px;border-bottom:1px solid transparent;padding-bottom:2px;transition:all .2s}
  .nav-links a:hover{color:var(--gold2);border-bottom-color:var(--gold2)}
  .hero{padding:6rem 2rem 5rem;text-align:center}
  .hero-sub{font-size:1rem}
  .stats-strip{grid-template-columns:repeat(4,1fr)}
  .section{padding:5rem 2rem}
  .product-row{grid-template-columns:1fr auto}
  .town-grid{grid-template-columns:repeat(auto-fill,minmax(195px,1fr))}
  .partner-grid{grid-template-columns:repeat(auto-fill,minmax(195px,1fr))}
  .how-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
}
@media(max-width:480px){
  .stats-strip{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:clamp(2.2rem,9vw,3.5rem)}
  .float-text span{display:none}
  .pop-headline{font-size:1.4rem}
  .pop-body{padding:1.3rem 1.2rem 1.5rem}
}
