/* ============ TOKENS ============ */
:root{
  /* primitive — only two colours + their tints */
  --forest-900:#0A2A1F; --forest-800:#0F3B2C; --forest-600:#2F5A4A; --forest-200:#C9D8CF; --forest-100:#E4ECE6;
  --terra-700:#A8442A;  --terra-600:#BF5134;  --terra-200:#F0CDBF;  --terra-100:#F8E7DF;
  --paper:#F7F2EA; --paper-2:#EFE7DA; --white:#FFFDF9;
  --ink-muted:#56665E;

  /* semantic */
  --bg:var(--paper); --surface:var(--white); --surface-alt:var(--paper-2);
  --text:var(--forest-800); --text-muted:var(--ink-muted); --text-on-dark:var(--white); --text-on-dark-muted:var(--forest-200);
  --primary:var(--forest-800); --primary-hover:var(--forest-900);
  --accent:var(--terra-600); --accent-hover:var(--terra-700); --accent-text:var(--terra-700); --accent-soft:var(--terra-100);
  --line:#DDD3C3; --line-dark:#285040;
  --focus:var(--terra-600);

  /* type + shape */
  --font-display:"Fraunces",Georgia,serif;
  --font-body:"proxima-nova","Figtree",system-ui,sans-serif;
  --r-sm:10px; --r:18px; --r-lg:32px; --r-pill:999px;
  --wrap:1240px;

  /* component */
  --btn-primary-bg:var(--primary); --btn-primary-fg:var(--text-on-dark);
  --btn-accent-bg:var(--accent);   --btn-accent-fg:var(--white);
  --card-bg:var(--surface); --card-border:var(--line);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;position:relative}
/* paper grain */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.35;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.28 0 0 0 0 0.2 0 0 0 .18 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit}
button{font:inherit;cursor:pointer}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;top:8px;background:var(--primary);color:var(--white);padding:8px 14px;border-radius:var(--r-pill);z-index:200}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.serif{font-family:var(--font-display)}
em.t{font-style:italic;color:var(--accent-text);font-weight:400}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:var(--r-pill);padding:13px 22px;font-weight:600;font-size:15px;text-decoration:none;border:1px solid transparent;white-space:nowrap;transition:background .2s,transform .2s,border-color .2s}
.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg)}.btn-primary:hover{background:var(--primary-hover)}
.btn-accent{background:var(--btn-accent-bg);color:var(--btn-accent-fg)}.btn-accent:hover{background:var(--accent-hover)}
.btn-line{border-color:currentColor;background:transparent}
.btn-sm{padding:8px 15px;font-size:14px}
.arrow{transition:transform .2s}
a:hover>.arrow{transform:translateX(4px)}

/* ============ HEADER ============ */
header.site{position:absolute;top:0;left:0;right:0;z-index:20;color:var(--text-on-dark)}
header.site .wrap{display:flex;align-items:center;gap:28px;height:84px}
.logo{font-family:var(--font-display);font-weight:600;font-size:28px;letter-spacing:-.03em;text-decoration:none;display:flex;align-items:center;gap:10px}
.logo .dot{width:10px;height:10px;border-radius:50%;background:var(--accent);margin-top:10px}
nav.main{display:flex;gap:26px;margin-left:auto}
nav.main a{text-decoration:none;font-weight:500;font-size:15px;opacity:.85;position:relative}
nav.main a:hover{opacity:1}
nav.main a::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--accent);transition:right .25s}
nav.main a:hover::after{right:0}
.lang{display:flex;border:1px solid rgba(255,253,249,.3);border-radius:var(--r-pill);padding:3px}
.lang button{border:0;background:none;color:inherit;border-radius:var(--r-pill);padding:4px 10px;font-size:13px;font-weight:600;opacity:.75}
.lang button[aria-pressed="true"]{background:var(--white);color:var(--primary);opacity:1}

/* ============ HERO SLIDESHOW ============ */
.hero{background:var(--forest-900);color:var(--text-on-dark);position:relative;overflow:hidden;min-height:800px;padding:0}
.slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity .9s ease}
/* --img: real photo (add your file). --fb / --ov: fallback colour + overlay so it looks finished without photos */
.slide .bg{position:absolute;inset:0;
  background:linear-gradient(90deg,var(--ov) 0%,var(--ov-mid) 48%,rgba(10,42,31,.18) 100%),var(--img,none) center/cover no-repeat,var(--fb);
  transform:scale(1.08);transition:transform 8s ease-out}
.slide.is-active .bg{transform:scale(1)}
.slide .bg::after{content:"";position:absolute;inset:0;opacity:.09;background:repeating-radial-gradient(circle at 80% 115%,transparent 0 38px,var(--white) 38px 39px)}
.s-forest{--fb:var(--forest-800);--ov:rgba(10,42,31,.94);--ov-mid:rgba(10,42,31,.72)}
.s-terra{--fb:var(--terra-700);--ov:rgba(120,44,24,.93);--ov-mid:rgba(150,56,32,.66)}
.slide .wrap{position:relative;height:100%;display:flex;align-items:center;padding-top:60px}
.copy{max-width:620px;transform:translateY(24px);opacity:0;transition:transform .9s ease .25s,opacity .9s ease .25s}
.slide.is-active .copy{transform:none;opacity:1}
.hero-kicker{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-on-dark-muted);margin:0 0 26px}
.s-terra .hero-kicker{color:var(--terra-100)}
.hero-kicker::before{content:"";width:36px;height:1px;background:currentColor}
h1,.big{font-family:var(--font-display);font-weight:600;letter-spacing:-.045em;margin:0}
h1{font-size:clamp(56px,8.6vw,132px);line-height:.9}
h1 span{display:block}
h1 .l2{padding-left:.9em}
h1 .l3{font-style:italic;font-weight:400;color:var(--terra-200)}
.big{font-size:clamp(44px,6.4vw,96px);line-height:.95}
.big em{font-style:italic;font-weight:400;color:var(--terra-200)}
.s-terra .big em{color:var(--forest-100)}
.hero-lead{font-size:19px;max-width:30em;color:var(--text-on-dark-muted);margin:30px 0 0}
.s-terra .hero-lead{color:var(--terra-100)}
.hero-lead b{color:var(--white);font-weight:600}
.copy .btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.btn-light{background:var(--white);color:var(--primary)}.btn-light:hover{background:var(--forest-100)}

/* slideshow controls */
.controls{position:absolute;left:0;right:0;bottom:44px;z-index:4;max-width:var(--wrap);margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:18px;pointer-events:none}
.controls>*{pointer-events:auto}
.count{font-family:var(--font-display);font-size:18px;min-width:64px}
.count b{font-size:28px;font-weight:600}
.dots{display:flex;gap:8px}
.dots button{width:46px;height:20px;border:0;background:none;padding:0;position:relative}
.dots button::before,.dots button i{content:"";position:absolute;left:0;right:0;top:9px;height:2px;border-radius:2px;background:rgba(255,253,249,.3)}
.dots button i{right:auto;width:0;background:var(--white)}
.dots button[aria-current="true"] i{animation:fill var(--dur,6.5s) linear forwards}
.hero.paused .dots button i{animation-play-state:paused}
.dots button.done i{width:100%}
@keyframes fill{to{width:100%}}
.ctrl{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,253,249,.4);background:transparent;color:var(--white);display:grid;place-items:center}
.ctrl:hover{background:var(--white);color:var(--primary)}

/* search ticket floats over the slides */
.hero-ui{position:absolute;left:0;right:0;bottom:0;z-index:5;max-width:var(--wrap);margin:0 auto;padding:0 24px;display:flex;justify-content:flex-end;pointer-events:none}
.ticket{pointer-events:auto;width:400px;background:var(--white);color:var(--text);border-radius:var(--r) var(--r) 0 0;padding:28px 28px 30px;box-shadow:0 -10px 40px -20px rgba(0,0,0,.45)}
.ticket h2{font-family:var(--font-display);font-weight:600;font-size:26px;letter-spacing:-.02em;margin:0 0 4px}
.ticket p{margin:0 0 18px;color:var(--text-muted);font-size:15px}
.field{display:block;border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px;margin-bottom:10px;background:var(--surface)}
.field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.field span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:700}
.field input,.field select{border:0;outline:0;background:none;font:inherit;width:100%;color:var(--text);padding:2px 0;font-size:16px}
.ticket .btn{width:100%;margin-top:6px}
.quick{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.quick a{font-size:13px;text-decoration:none;padding:5px 11px;border-radius:var(--r-pill);background:var(--surface-alt);color:var(--forest-600)}
.quick a:hover{background:var(--accent-soft);color:var(--accent-text)}

/* rotating badge */
.badge{position:absolute;right:calc(50% - var(--wrap)/2 + 24px);top:118px;width:128px;height:128px;z-index:2}
.badge svg{width:100%;height:100%;animation:spin 22s linear infinite}
.badge text{font-family:var(--font-body);font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;fill:var(--white);font-weight:600}
.badge i{position:absolute;inset:38px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-style:normal;font-family:var(--font-display);font-size:26px;color:var(--white)}
@keyframes spin{to{transform:rotate(360deg)}}

/* ============ SECTION FRAME ============ */
section{padding:110px 0}
.chapter{display:grid;grid-template-columns:200px 1fr;gap:40px;margin-bottom:48px;align-items:start}
.chapter .num{font-family:var(--font-display);font-size:15px;color:var(--accent-text);display:flex;align-items:center;gap:10px;padding-top:14px}
.chapter .num::after{content:"";flex:1;height:1px;background:var(--line)}
.chapter h2{font-family:var(--font-display);font-weight:600;font-size:clamp(40px,5.6vw,80px);line-height:.95;letter-spacing:-.04em;margin:0}
.chapter p{max-width:34em;color:var(--text-muted);font-size:18px;margin:18px 0 0}

/* tagline */
.tagline{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(22px,2.4vw,30px);line-height:1.2;letter-spacing:-.01em;color:var(--accent-text);margin:14px 0 0;display:flex;align-items:center;gap:14px}
.tagline::before{content:"";width:28px;height:2px;background:currentColor;flex-shrink:0}
.lokal .tagline{color:var(--white)}
.owner-line{font-family:var(--font-display);font-weight:600;font-size:clamp(28px,3vw,40px);letter-spacing:-.03em;line-height:1.05;margin:0 0 22px}
.owner-line em{font-style:italic;font-weight:400;color:var(--terra-100)}

/* ============ 01 DEKOUVER — bento ============ */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:14px}
.tile{border-radius:var(--r);padding:22px;text-decoration:none;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;background:var(--card-bg);border:1px solid var(--card-border);transition:transform .25s,background .25s}
.tile:hover{transform:translateY(-4px)}
.tile svg{width:34px;height:34px;color:var(--accent)}
.tile b{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.02em;line-height:1.1}
.tile small{display:block;font-size:14px;color:var(--text-muted);font-weight:400;font-family:var(--font-body);letter-spacing:0;margin-top:4px}
.tile .go{position:absolute;right:20px;top:20px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:background .2s,border-color .2s,color .2s}
.tile:hover .go{background:var(--accent);border-color:var(--accent);color:var(--white)}
.tile.big{grid-column:span 2;grid-row:span 2;background:var(--primary);color:var(--text-on-dark);border:0;padding:32px}
.tile.big svg{width:48px;height:48px;color:var(--terra-200)}
.tile.big b{font-size:44px;line-height:1}
.tile.big small{color:var(--text-on-dark-muted);font-size:16px;margin-top:10px}
.tile.big .go{border-color:var(--line-dark)}
.tile.terra{background:var(--accent);color:var(--white);border:0}
.tile.terra svg{color:var(--white)}
.tile.terra small{color:var(--terra-100)}
.tile.terra .go{border-color:rgba(255,255,255,.4)}
.tile.terra:hover .go{background:var(--white);color:var(--accent-text)}
.tile.wide{grid-column:span 2}

/* ============ 02 KONEKTE — editorial spread ============ */
.konekte{background:var(--surface-alt);border-radius:var(--r-lg);margin:0 16px;position:relative;overflow:hidden}
.konekte::before{content:"Konekte";position:absolute;right:-2%;top:40px;font-family:var(--font-display);font-style:italic;font-size:clamp(120px,18vw,280px);line-height:1;color:var(--forest-800);opacity:.04;pointer-events:none;letter-spacing:-.05em}
.spread{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:stretch;position:relative}

/* spotlight */
.spot{position:relative;border-radius:var(--r);overflow:hidden;min-height:620px;color:var(--white);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;text-decoration:none}
.spot .ph-img{position:absolute;inset:0;z-index:-2;background:var(--img,none) center/cover,repeating-linear-gradient(135deg,var(--forest-600) 0 18px,#3A6555 18px 36px);transition:transform 1.2s ease}
.spot:hover .ph-img{transform:scale(1.04)}
.spot::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,42,31,.05) 25%,rgba(10,42,31,.92) 88%)}
.spot .ribbon{position:absolute;left:24px;top:24px;display:flex;align-items:center;gap:10px}
.spot .ribbon span{background:var(--accent);color:var(--white);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;padding:7px 12px;border-radius:var(--r-pill)}
.spot .ribbon em{font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--white);opacity:.9}
.spot .issue{position:absolute;right:24px;top:20px;font-family:var(--font-display);font-size:64px;font-weight:600;line-height:1;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(255,253,249,.55)}
.spot .inner{padding:34px}
.spot .where{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--terra-200);font-weight:700;display:flex;gap:10px;align-items:center}
.spot .where::before{content:"";width:22px;height:1px;background:currentColor}
.spot h3{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,3.6vw,52px);line-height:1;letter-spacing:-.035em;margin:14px 0 14px}
.spot blockquote{margin:0 0 24px;font-family:var(--font-display);font-style:italic;font-size:19px;line-height:1.4;color:var(--forest-100);max-width:30em;padding-left:18px;border-left:2px solid var(--accent)}
.spot .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.spot .chip{font-size:13px;padding:6px 12px;border:1px solid rgba(255,253,249,.35);border-radius:var(--r-pill);color:var(--forest-100)}
.spot .btn-light{margin-left:auto}

/* editorial list */
.list{background:var(--white);border-radius:var(--r);padding:10px 28px 22px;display:flex;flex-direction:column}
.list-head{display:flex;justify-content:space-between;align-items:baseline;padding:20px 0 14px;border-bottom:1px solid var(--forest-800)}
.list-head b{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.02em}
.list-head span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted)}
.entry{display:grid;grid-template-columns:28px 76px 1fr auto;gap:18px;align-items:center;padding:18px 10px;border-bottom:1px solid var(--line);position:relative;border-radius:var(--r-sm);transition:background .25s}
.entry:hover{background:var(--paper)}
.entry .no{font-family:var(--font-display);font-style:italic;color:var(--accent-text);font-size:17px}
.entry .th{width:76px;height:76px;border-radius:12px;background:repeating-linear-gradient(135deg,var(--terra-100) 0 9px,#FCF1EC 9px 18px);position:relative;overflow:hidden;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:24px;color:var(--accent-text)}
.entry:nth-child(odd) .th{background:repeating-linear-gradient(135deg,var(--forest-100) 0 9px,#EEF3EF 9px 18px);color:var(--forest-800)}
.entry h4{font-family:var(--font-display);font-weight:600;font-size:21px;letter-spacing:-.02em;margin:0;line-height:1.15}
.entry h4 a{text-decoration:none}
.entry h4 a::after{content:"";position:absolute;inset:0;border-radius:var(--r-sm)}
.entry p{margin:3px 0 0;font-size:14px;color:var(--text-muted)}
.entry p .dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--accent);vertical-align:middle;margin:0 8px}
.entry .open{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--forest-600);margin-top:6px}
.entry .open::before{content:"";width:7px;height:7px;border-radius:50%;background:#2E8B57}
.entry .wa{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;background:var(--primary);color:var(--white);display:grid;place-items:center;transition:background .2s,transform .2s}
.entry .wa:hover{background:var(--accent);transform:scale(1.06)}
.list .all{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-decoration:none;font-weight:600}
.list .all .btn{pointer-events:none}
.note{font-size:13px;color:var(--accent-text);margin:14px 0 0}

/* how it works with chat mock */
.how{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center;margin-top:96px;padding-top:64px;border-top:1px solid var(--line)}
.phone{width:min(360px,100%);margin:0 auto;background:var(--forest-900);border-radius:44px;padding:12px;box-shadow:0 40px 80px -40px rgba(10,42,31,.6),inset 0 0 0 2px #1F4A3A;transform:rotate(-3deg)}
.screen{background:#EFE6D8;border-radius:34px;overflow:hidden;
  background-image:radial-gradient(rgba(15,59,44,.06) 1px,transparent 1px);background-size:14px 14px}
.chat-top{background:var(--primary);color:var(--white);display:flex;align-items:center;gap:12px;padding:30px 18px 14px}
.chat-top .av{width:38px;height:38px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-family:var(--font-display);font-weight:600}
.chat-top b{display:block;font-size:15px}
.chat-top small{font-size:12px;color:var(--forest-200)}
.msgs{padding:18px 14px 22px;display:flex;flex-direction:column;gap:8px;min-height:360px}
.msg{max-width:78%;padding:9px 12px 18px;border-radius:14px;font-size:14px;line-height:1.4;position:relative;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.msg time{position:absolute;right:10px;bottom:4px;font-size:10px;color:var(--text-muted)}
.msg.me{align-self:flex-end;background:#D9EBDD;border-top-right-radius:4px}
.msg.them{align-self:flex-start;background:var(--white);border-top-left-radius:4px}
.msg.from{align-self:center;background:var(--accent-soft);color:var(--accent-text);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:5px 10px;border-radius:var(--r-pill);box-shadow:none}
.msg:not(.from){opacity:0;transform:translateY(8px)}
.how.seen .msg:not(.from){animation:pop .5s ease forwards}
.how.seen .msg:nth-child(2){animation-delay:.2s}.how.seen .msg:nth-child(3){animation-delay:.9s}.how.seen .msg:nth-child(4){animation-delay:1.6s}.how.seen .msg:nth-child(5){animation-delay:2.3s}
@keyframes pop{to{opacity:1;transform:none}}
.chat-cap{text-align:center;font-size:12px;color:var(--text-muted);margin-top:18px}
.how h3{font-family:var(--font-display);font-weight:600;font-size:clamp(32px,3.4vw,48px);letter-spacing:-.035em;line-height:1;margin:0 0 30px}
.how h3 em{font-style:italic;font-weight:400;color:var(--accent-text)}
.flow{list-style:none;margin:0;padding:0;counter-reset:f}
.flow li{display:grid;grid-template-columns:72px 1fr;gap:16px;padding:22px 0;border-top:1px solid var(--line);counter-increment:f}
.flow li:last-child{border-bottom:1px solid var(--line)}
.flow li::before{content:counter(f,lower-roman)".";font-family:var(--font-display);font-style:italic;font-size:40px;line-height:1;color:var(--accent-text)}
.flow b{display:block;font-size:19px;font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}
.flow p{margin:4px 0 0;color:var(--text-muted)}

/* ============ DISTRICT INDEX ============ */
.index{list-style:none;margin:0;padding:0;border-top:1px solid var(--forest-800)}
.index a{display:grid;grid-template-columns:70px 1fr auto 60px;align-items:center;gap:20px;padding:20px 8px;border-bottom:1px solid var(--line);text-decoration:none;position:relative;overflow:hidden;transition:color .3s,padding .3s}
.index a::before{content:"";position:absolute;inset:0;background:var(--accent);transform:scaleY(0);transform-origin:bottom;transition:transform .3s;z-index:-1}
.index a:hover{color:var(--white);padding-left:20px}
.index a:hover::before{transform:scaleY(1)}
.index li{position:relative;z-index:0}
.index .k{font-family:var(--font-display);font-style:italic;color:var(--accent-text);font-size:18px}
.index a:hover .k,.index a:hover .c{color:var(--white)}
.index .d{font-family:var(--font-display);font-weight:600;font-size:clamp(26px,3.4vw,44px);letter-spacing:-.03em;line-height:1}
.index .c{font-size:14px;color:var(--text-muted)}
.index .ar{justify-self:end;width:44px;height:44px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center}
.index .rod .d::after{content:"Lil Rodrig";font-family:var(--font-body);font-size:12px;letter-spacing:.14em;text-transform:uppercase;vertical-align:middle;margin-left:14px;padding:4px 10px;border-radius:var(--r-pill);background:var(--primary);color:var(--white);font-weight:700}

/* ============ 03 ASTE LOKAL ============ */
.lokal{background:var(--accent);color:var(--white);border-radius:var(--r-lg);margin:0 16px;position:relative;overflow:hidden}
.lokal::after{content:"";position:absolute;right:-160px;top:-160px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.25);box-shadow:0 0 0 60px rgba(255,255,255,.04),0 0 0 120px rgba(255,255,255,.03)}
.lokal .chapter .num{color:var(--terra-100)}
.lokal .chapter .num::after{background:rgba(255,255,255,.3)}
.lokal .chapter p{color:var(--terra-100)}
.lokal-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;position:relative;z-index:1}
.promise{list-style:none;padding:0;margin:0 0 32px;display:grid;gap:16px;font-size:17px}
.promise li{display:flex;gap:14px}
.promise svg{flex-shrink:0;margin-top:3px}
.lokal .btn-primary{background:var(--primary)}
.menu{background:var(--white);color:var(--text);border-radius:var(--r);padding:34px 34px 28px;box-shadow:0 30px 60px -30px rgba(0,0,0,.45)}
.menu h3{font-family:var(--font-display);font-weight:600;font-style:italic;font-size:30px;letter-spacing:-.02em;margin:0;text-align:center}
.menu .sub{text-align:center;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin:4px 0 22px}
.item{padding:16px 0;border-top:1px solid var(--line)}
.item .row{display:flex;align-items:baseline;gap:10px}
.item b{font-family:var(--font-display);font-weight:600;font-size:21px;letter-spacing:-.01em;white-space:nowrap}
.item .dots{flex:1;border-bottom:2px dotted var(--forest-200);transform:translateY(-5px)}
.item .p{font-family:var(--font-display);font-weight:600;font-size:21px;white-space:nowrap}
.item .p small{font-family:var(--font-body);font-size:13px;color:var(--text-muted);font-weight:500}
.item p{margin:4px 0 0;font-size:14px;color:var(--text-muted)}
.item.star b::after{content:"★";color:var(--accent);font-size:15px;margin-left:6px;vertical-align:3px}
.ph{background:var(--accent-soft);border:1px dashed var(--accent);color:var(--accent-text);border-radius:5px;padding:0 6px;font-family:var(--font-body);font-size:.65em;font-weight:700}

/* ============ FAQ ============ */
.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:64px}
.faq h2{font-family:var(--font-display);font-weight:600;font-size:clamp(36px,4.4vw,60px);letter-spacing:-.04em;line-height:1;margin:0 0 20px}
.faq .help{border:1px solid var(--line);border-radius:var(--r);padding:24px;background:var(--surface)}
.faq .help b{font-family:var(--font-display);font-size:22px;font-weight:600;display:block}
.faq .help p{margin:4px 0 16px;color:var(--text-muted)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:22px 50px 22px 0;font-family:var(--font-display);font-size:21px;font-weight:600;letter-spacing:-.01em;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:0;top:16px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-body);font-weight:400;font-size:20px;transition:transform .25s,background .25s}
details[open] summary::after{transform:rotate(45deg);background:var(--accent);color:var(--white);border-color:var(--accent)}
details p{margin:0 0 22px;color:var(--text-muted);max-width:40em}

/* ============ FOOTER ============ */
footer{background:var(--primary);color:var(--text-on-dark-muted);border-radius:0;padding:70px 0 0;overflow:hidden;margin-top:40px}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
footer h4{color:var(--white);font-size:13px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
footer a{text-decoration:none}footer a:hover{color:var(--white);text-decoration:underline;text-decoration-color:var(--accent)}
footer .tag{font-family:var(--font-display);font-size:26px;line-height:1.2;color:var(--white);margin:0}
footer .tag em{color:var(--terra-200)}
.wordmark{font-family:var(--font-display);font-weight:600;font-size:clamp(76px,19vw,290px);letter-spacing:-.06em;line-height:.78;color:var(--white);margin:60px 0 0;white-space:nowrap;text-align:center;opacity:.95}
.wordmark span{color:var(--accent)}
.legal{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;padding:22px 0 26px;border-top:1px solid var(--line-dark);margin-top:50px}

.bottombar{display:none}

/* ============ RESPONSIVE ============ */
@media (max-width:1100px){
  .badge{display:none}
  .bento{grid-template-columns:repeat(2,1fr)}
  .lokal-grid,.faq{grid-template-columns:1fr;gap:36px}
  footer .cols{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  nav.main{display:none}
  .lang{margin-left:auto}
  .hero{min-height:0}
  .slides{position:relative;height:640px}
  .copy{max-width:100%}
  .controls{bottom:28px}
  .hero-ui{position:relative;padding:0 18px;display:block}
  .ticket{width:100%;border-radius:var(--r) var(--r) 0 0;margin-top:-1px}
  .chapter{grid-template-columns:1fr;gap:10px}
  .spread,.how{grid-template-columns:1fr}
  .spot{min-height:520px}
  .how{gap:44px;margin-top:64px;padding-top:48px}
}
@media (max-width:640px){
  .wrap{padding:0 18px}
  header.site .wrap{height:70px}
  header.site .btn{display:none}
  .slides{height:620px}
  h1 .l2{padding-left:.5em}
  .count{display:none}
  .dots button{width:30px}
  .controls{gap:10px}
  .hero-lead{font-size:17px}
  section{padding:72px 0}
  .bento{grid-auto-rows:150px;gap:10px}
  .tile{padding:16px}
  .tile b{font-size:18px}
  .tile.big{padding:22px}
  .tile.big b{font-size:32px}
  .tile .go{display:none}
  .konekte,.lokal{margin:0 8px}
  .list{padding:4px 16px 18px}
  .entry{grid-template-columns:56px 1fr auto;gap:12px;padding:14px 4px}
  .entry .no{display:none}
  .entry .th{width:56px;height:56px;font-size:18px}
  .entry h4{font-size:18px}
  .spot .inner{padding:24px}
  .spot .btn-light{margin-left:0}
  .spot .issue{display:none}
  .spot .ribbon em{display:none}
  .phone{transform:rotate(-2deg);width:88%}
  .index a{grid-template-columns:44px 1fr 44px;gap:12px}
  .index .c{display:none}
  .index .rod .d::after{display:block;width:max-content;margin:8px 0 0}
  .menu{padding:24px 20px}
  .item b,.item .p{font-size:18px}
  footer .cols{grid-template-columns:1fr}
  footer{padding-bottom:70px}
  .bottombar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--white);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
  .bottombar a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0;font-size:12px;text-decoration:none;color:var(--text-muted)}
  .bottombar a[aria-current]{color:var(--accent-text);font-weight:700}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .badge svg{animation:none}
  .slide .bg,.copy{transition:none!important;transform:none!important}
  .msg:not(.from){opacity:1!important;transform:none!important;animation:none!important}
  *{transition:none!important}
}

/* =====================================================================
   PHP SITE ADDITIONS — shared components
   ===================================================================== */
.muted{color:var(--text-muted)} .small{font-size:13px} .center{text-align:center}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
code{background:var(--surface-alt);padding:2px 6px;border-radius:5px;font-size:.9em}
.btn-block{width:100%}
.btn[disabled]{opacity:.5;pointer-events:none}
.danger{color:#A12A1A!important}
.linkbtn{background:none;border:0;padding:6px 0;color:inherit;text-decoration:underline;text-underline-offset:3px;font-size:14px;text-align:left}
.icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:inline-grid;place-items:center;color:var(--text)}
.icon-btn:hover{border-color:var(--forest-800)}

/* header: solid variant + lang links */
header.site.solid{position:sticky;top:0;background:rgba(247,242,234,.94);backdrop-filter:blur(8px);color:var(--text);border-bottom:1px solid var(--line)}
header.site.solid .lang{border-color:var(--line)}
.lang a{color:inherit;text-decoration:none;border-radius:var(--r-pill);padding:4px 10px;font-size:13px;font-weight:600;opacity:.75}
.lang a[aria-current]{background:var(--white);color:var(--primary);opacity:1}
header.site.solid .lang a[aria-current]{background:var(--primary);color:var(--white)}
.lang{margin-left:6px}

/* flash + notices */
.flash-wrap{padding-top:16px}
.flash{padding:12px 16px;border-radius:var(--r-sm);margin:0 0 12px;font-size:15px;border:1px solid}
.flash-success{background:var(--forest-100);border-color:var(--forest-200);color:var(--forest-800)}
.flash-error{background:var(--terra-100);border-color:var(--terra-200);color:var(--terra-700)}
.flash-info{background:var(--white);border-color:var(--line)}
.home .flash-wrap{position:absolute;top:90px;left:0;right:0;z-index:30}
.notice{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--accent);padding:16px 18px;border-radius:var(--r-sm);margin-bottom:18px}
.notice-bad{border-left-color:#A12A1A}
.big-code{font-size:20px;letter-spacing:.06em;padding:4px 10px;margin:0 6px}

/* form fields */
.fld{display:block;margin-bottom:14px}
.fld>span,.fld-label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-weight:700;margin-bottom:6px}
.fld input:not([type=checkbox]):not([type=radio]),.fld select,.fld textarea,.inline-form input,.mini-search input,.hours-edit input{width:100%;font:inherit;font-size:16px;color:var(--text);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 13px;transition:border-color .2s,box-shadow .2s}
.fld input:focus,.fld select:focus,.fld textarea:focus,.inline-form input:focus,.mini-search input:focus,.hours-edit input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.fld input[type=file]{padding:9px;background:var(--surface-alt)}
.fld textarea{resize:vertical;min-height:90px}
.hint{display:block;margin-top:6px;color:var(--text-muted);font-size:13px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.check{display:flex;gap:10px;align-items:flex-start;margin:8px 0 14px;font-size:15px;cursor:pointer}
.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--primary);flex-shrink:0}
fieldset{border:0;padding:0;margin:0 0 22px}
legend{font-family:var(--font-display);font-size:22px;font-weight:600;margin-bottom:14px;display:flex;align-items:center;gap:10px;padding:0}
legend span{width:28px;height:28px;border-radius:50%;background:var(--primary);color:var(--white);display:grid;place-items:center;font-family:var(--font-body);font-size:13px}
.choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
.opt{display:flex;gap:12px;border:1px solid var(--line);border-radius:var(--r);padding:14px;background:var(--white);cursor:pointer;transition:border-color .2s,background .2s}
.opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.opt input{width:18px;height:18px;margin-top:3px;accent-color:var(--accent);flex-shrink:0}
.opt b{display:block;font-family:var(--font-display);font-size:18px}
.opt small{display:block;color:var(--text-muted);font-size:13px;line-height:1.4}

/* auth pages */
body.plain{background:var(--bg)}
.auth{max-width:520px;margin:0 auto;padding:56px 20px 90px}
.auth-wide{max-width:1100px;display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.auth-title{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4vw,52px);letter-spacing:-.035em;line-height:1;margin:0 0 12px}
.auth-intro{position:sticky;top:110px}
.kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:700;margin:0 0 14px}
.ticks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px}
.ticks li{padding-left:28px;position:relative}
.ticks li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;display:grid;place-items:center}
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:34px;box-shadow:0 30px 60px -45px rgba(15,59,44,.45)}
.form-card .btn-block{margin-top:6px}
.form-card p.center{margin:14px 0 0}

/* =====================================================================
   SEARCH / LISTING
   ===================================================================== */
.page-head{padding:56px 0 28px}
.page-head h1{font-family:var(--font-display);font-weight:600;font-size:clamp(38px,5vw,68px);letter-spacing:-.04em;line-height:1;margin:0 0 28px}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px;align-items:end;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.filters .fld{margin:0}
.results{padding:20px 0 90px}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rcard{background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.rcard:hover{transform:translateY(-3px);box-shadow:0 20px 40px -28px rgba(15,59,44,.45)}
.rcover{display:block;aspect-ratio:16/8;position:relative;background:var(--img,none) center/cover,repeating-linear-gradient(135deg,var(--forest-100) 0 12px,#EEF3EF 12px 24px)}
.rcard:nth-child(even) .rcover{background:var(--img,none) center/cover,repeating-linear-gradient(135deg,var(--terra-100) 0 12px,#FCF1EC 12px 24px)}
.feat{position:absolute;left:12px;top:12px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill)}
.rbody{padding:0 20px 18px;position:relative;display:flex;flex-direction:column;flex:1}
.rlogo{width:58px;height:58px;border-radius:14px;border:3px solid var(--white);background:var(--primary) center/cover;color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:20px;margin-top:-29px;box-shadow:0 6px 16px -8px rgba(0,0,0,.35)}
.rbody h2{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.02em;line-height:1.15;margin:12px 0 2px}
.rbody h2 a{text-decoration:none}
.rbody h2 a::after{content:"";position:absolute;inset:-130px 0 0}
.rcard{position:relative}
.rmeta{margin:0;font-size:14px;color:var(--text-muted)}
.rtag{margin:8px 0 0;font-size:15px}
.rfoot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px}
.rfoot .wa{position:relative;z-index:1;width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center}
.rfoot .wa:hover{background:var(--accent)}
.chip-st{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill);background:var(--surface-alt);color:var(--forest-600)}
.chip-st::before{content:"";width:7px;height:7px;border-radius:50%;background:#9AA59F}
.chip-st.open{background:var(--forest-100);color:var(--forest-800)}
.chip-st.open::before{background:#2E8B57}
.chip-st.closed::before{background:var(--accent)}
.pager{display:flex;gap:6px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.pager a{min-width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);text-decoration:none;font-weight:600}
.pager a[aria-current]{background:var(--primary);color:#fff;border-color:var(--primary)}
.empty-state{text-align:center;padding:90px 20px}
.empty-state h1,.empty-state h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.03em;margin:0 0 10px}
.empty-state .btn{margin-top:18px}

/* =====================================================================
   BUSINESS PAGE
   ===================================================================== */
.preview-bar{background:var(--accent-soft);border-bottom:1px solid var(--terra-200);padding:10px 0;font-size:14px}
.preview-bar a{font-weight:700;margin-left:8px}
.bz-cover{height:clamp(220px,32vw,420px);background:var(--img,none) center/cover,repeating-linear-gradient(135deg,var(--forest-800) 0 22px,#164A38 22px 44px);position:relative}
.bz-cover::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(10,42,31,.25))}
.bz-head{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:end;margin-top:-66px;position:relative;z-index:2}
.bz-logo{width:132px;height:132px;border-radius:28px;background:var(--white);border:4px solid var(--white);box-shadow:0 18px 36px -18px rgba(10,42,31,.5);overflow:hidden;display:grid;place-items:center}
.bz-logo img{width:100%;height:100%;object-fit:cover}
.bz-logo span{width:100%;height:100%;display:grid;place-items:center;background:var(--accent);color:#fff;font-family:var(--font-display);font-weight:600;font-size:44px}
.bz-id{padding-bottom:4px}
.bz-kicker{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 6px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent-text)}
.bz-kicker a{text-decoration:none}
.bz-kicker span{color:var(--text-muted)}
.bz-kicker span::before{content:"·";margin-right:14px;color:var(--line)}
.bz-kicker a+span::before{display:inline}
.bz-head h1{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4.6vw,60px);letter-spacing:-.04em;line-height:1;margin:0}
.bz-tagline{font-family:var(--font-display);font-style:italic;font-size:20px;color:var(--forest-600);margin:8px 0 0}
.bz-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.chip-t{font-size:12px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill);border:1px solid var(--line);color:var(--forest-600)}
.bz-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;padding-bottom:6px}
.bz-tabs{position:sticky;top:84px;z-index:15;background:rgba(247,242,234,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);margin-top:34px}
.bz-tabs .wrap{display:flex;gap:28px;overflow-x:auto;scrollbar-width:none}
.bz-tabs a{text-decoration:none;font-weight:600;padding:16px 0;white-space:nowrap;border-bottom:2px solid transparent;color:var(--forest-600)}
.bz-tabs a:hover{color:var(--text);border-color:var(--accent)}
.bz-tabs sup{font-size:11px;color:var(--accent-text)}
.bz-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;padding-top:40px;padding-bottom:90px;align-items:start}
.bz-sec{padding:0 0 56px;scroll-margin-top:160px}
.bz-sec+.bz-sec{border-top:1px solid var(--line);padding-top:48px}
.bz-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.bz-sec-head h2{font-family:var(--font-display);font-weight:600;font-size:clamp(28px,3vw,38px);letter-spacing:-.03em;margin:0}
.bz-sec-head p{margin:0;color:var(--text-muted);font-size:15px}

/* products */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pcard{background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.pimg{aspect-ratio:1;position:relative;background:repeating-linear-gradient(135deg,var(--terra-100) 0 10px,#FCF1EC 10px 20px);display:grid;place-items:center}
.pcard:nth-child(even) .pimg{background:repeating-linear-gradient(135deg,var(--forest-100) 0 10px,#EEF3EF 10px 20px)}
.pimg img{width:100%;height:100%;object-fit:cover}
.pimg span{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--accent-text)}
.tag-out{position:absolute;left:10px;top:10px;background:var(--forest-800);color:#fff;font-style:normal;font-size:12px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill)}
.pcard.out .pimg img{filter:grayscale(.7);opacity:.7}
.pbody{padding:14px 16px 16px;display:flex;flex-direction:column;flex:1}
.pbody h3{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:-.01em;margin:0;line-height:1.2}
.pbody p{margin:6px 0 0;font-size:14px;color:var(--text-muted);line-height:1.45}
.pfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:14px}
.price{font-family:var(--font-display);font-weight:600;font-size:19px;white-space:nowrap}
.price small{font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--text-muted)}
.add{transition:transform .2s,background .2s}
.add.added{background:var(--primary);transform:scale(1.06)}

/* services */
.slist{list-style:none;margin:0;padding:0;border-top:1px solid var(--forest-800)}
.srow{display:grid;grid-template-columns:minmax(0,auto) 1fr auto auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.srow h3{font-family:var(--font-display);font-weight:600;font-size:20px;margin:0;letter-spacing:-.01em}
.srow p{margin:4px 0 0;font-size:14px;color:var(--text-muted);max-width:36em}
.dur{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--forest-600);margin-top:6px}
.sdots{border-bottom:2px dotted var(--forest-200);transform:translateY(-4px);min-width:20px}

/* gallery */
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gal-item{padding:0;border:0;background:var(--surface-alt);border-radius:12px;overflow:hidden;aspect-ratio:1;cursor:zoom-in}
.gal-item:first-child{grid-column:span 2;grid-row:span 2}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal-item:hover img{transform:scale(1.05)}
.prose{font-size:17px;line-height:1.7;max-width:42em}
.bz-quote{font-family:var(--font-display);font-style:italic;font-size:22px;line-height:1.35;margin:24px 0 0;padding-left:20px;border-left:3px solid var(--accent);color:var(--forest-600)}
.cform{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:24px}

/* sidebar */
.bz-side{position:sticky;top:150px;display:grid;gap:16px}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.side-h{font-family:var(--font-display);font-weight:600;font-size:21px;margin:0 0 14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.clist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.clist li{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;font-size:15px;word-break:break-word}
.clist svg{color:var(--accent);margin-top:2px}
.clist a{text-decoration:none}.clist a:hover{text-decoration:underline}
.socials{display:flex;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.socials a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--forest-800);transition:background .2s,color .2s}
.socials a:hover{background:var(--primary);color:#fff;border-color:var(--primary)}
.hours{width:100%;border-collapse:collapse;font-size:15px}
.hours th{text-align:left;font-weight:500;padding:7px 0;color:var(--forest-600)}
.hours td{text-align:right;padding:7px 0}
.hours tr+tr th,.hours tr+tr td{border-top:1px dashed var(--line)}
.hours tr.today th,.hours tr.today td{font-weight:700;color:var(--accent-text)}
.map-card{padding:0;overflow:hidden}
.map-card iframe{display:block;width:100%;height:220px;border:0;filter:saturate(.85)}
.map-card .btn{border-radius:0}
.report{font-size:13px;color:var(--text-muted);text-align:center;margin:0}

/* cart */
.cart-fab{position:fixed;right:20px;bottom:24px;z-index:60;display:flex;align-items:center;gap:10px;background:var(--primary);color:#fff;border:0;border-radius:var(--r-pill);padding:14px 20px;font-weight:600;box-shadow:0 18px 40px -16px rgba(10,42,31,.7)}
.cart-fab b{background:var(--accent);min-width:26px;height:26px;border-radius:13px;display:grid;place-items:center;font-size:13px;padding:0 6px}
dialog{border:0;padding:0;color:var(--text);background:transparent}
dialog::backdrop{background:rgba(10,42,31,.55);backdrop-filter:blur(2px)}
.cart[open]{background:var(--white);border-radius:var(--r-lg);width:min(460px,94vw);max-height:90vh;overflow:auto;padding:26px}
.cart-head{display:flex;justify-content:space-between;align-items:center}
.cart-head h2{font-family:var(--font-display);font-size:28px;margin:0;letter-spacing:-.02em}
.cart-sub{margin:2px 0 14px}
.cart-items{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ci{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.ci-name{font-weight:600}
.ci-price{font-family:var(--font-display);font-weight:600;min-width:80px;text-align:right}
.stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-pill)}
.stepper button{width:32px;height:32px;border:0;background:none;font-size:18px;color:var(--text)}
.stepper output{min-width:22px;text-align:center;font-weight:700}
.cart-empty{padding:16px 0}
.cart-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;font-size:18px}
.cart-total b{font-family:var(--font-display);font-size:26px}
.cart .small{margin:12px 0 0;text-align:center}

/* lightbox */
.lightbox[open]{width:100vw;height:100vh;max-width:none;max-height:none;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;background:rgba(10,42,31,.94)}
.lightbox figure{margin:0;text-align:center}
.lightbox img{max-width:100%;max-height:82vh;border-radius:8px}
.lightbox figcaption{color:var(--forest-200);margin-top:12px;font-size:15px}
.lightbox .icon-btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.3);width:48px;height:48px;font-size:28px;justify-self:center}
.lb-close{position:absolute;right:18px;top:18px}

/* =====================================================================
   OWNER DASHBOARD + BACK OFFICE
   ===================================================================== */
.dash-wrap{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;padding-top:36px;padding-bottom:90px;align-items:start}
.dash-nav{position:sticky;top:110px;display:grid;gap:14px}
.dash-biz{display:flex;gap:12px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.dash-biz b{display:block;font-family:var(--font-display);font-size:17px;line-height:1.2;margin-bottom:4px}
.dash-logo{width:48px;height:48px;border-radius:12px;background:var(--primary) center/cover;color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;flex-shrink:0}
.dash-nav nav{display:grid;gap:2px}
.dash-nav nav a{text-decoration:none;padding:10px 14px;border-radius:var(--r-sm);font-weight:500;color:var(--forest-600);display:flex;justify-content:space-between;align-items:center}
.dash-nav nav a:hover{background:var(--white)}
.dash-nav nav a[aria-current]{background:var(--primary);color:#fff}
.dash-nav .count{background:var(--accent);color:#fff;font-size:12px;min-width:22px;height:22px;border-radius:11px;display:grid;place-items:center;padding:0 6px}
.dash-back{font-size:14px;font-weight:600;text-decoration:none;color:var(--accent-text)}
.dash-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.dash-head h1{font-family:var(--font-display);font-weight:600;font-size:clamp(32px,3.6vw,46px);letter-spacing:-.035em;margin:0;line-height:1}
.badge-st{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:var(--r-pill);vertical-align:middle}
.st-approved{background:var(--forest-100);color:var(--forest-800)}
.st-pending{background:var(--terra-100);color:var(--terra-700)}
.st-suspended,.st-rejected{background:#EDE7E2;color:#6B5E57}
.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}
.stat{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:18px}
.stat b{display:block;font-family:var(--font-display);font-size:32px;font-weight:600;line-height:1;letter-spacing:-.02em}
.stat span{font-size:13px;color:var(--text-muted)}
.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:18px}
.panel h2{font-family:var(--font-display);font-weight:600;font-size:22px;margin:0 0 16px;letter-spacing:-.01em}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.panel-head h2{margin:0}
.panel-terra{background:var(--accent);border-color:var(--accent);color:#fff}
.panel-terra p{color:var(--terra-100)}
.panel.narrow{max-width:560px}
.pct{font-family:var(--font-display);font-size:26px;font-weight:600;color:var(--accent-text)}
.bar{height:8px;border-radius:4px;background:var(--surface-alt);overflow:hidden;margin-bottom:16px}
.bar i{display:block;height:100%;background:var(--accent);border-radius:4px}
.checklist{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.checklist li{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line)}
.checklist li a{margin-left:auto;font-weight:600;font-size:14px;color:var(--accent-text);text-decoration:none}
.tick{width:22px;height:22px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-size:12px;color:#fff;flex-shrink:0}
.checklist li.ok .tick{background:var(--primary);border-color:var(--primary)}
.checklist li.ok{color:var(--text-muted)}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.row-btns{display:flex;gap:10px;margin-top:6px}
.ilist{list-style:none;margin:0;padding:0}
.ilist li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.ilist li:last-child{border-bottom:0}
.ithumb{width:52px;height:52px;border-radius:10px;background:var(--surface-alt) center/cover;flex-shrink:0}
.iinfo{flex:1;min-width:0}
.iinfo b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iinfo span{font-size:13px;color:var(--text-muted)}
.ilist form{margin:0}
.media-edit{display:grid;grid-template-columns:2fr 1fr;gap:20px}
.cover-prev,.logo-prev,.thumb-prev{background:repeating-linear-gradient(135deg,var(--forest-100) 0 10px,#EEF3EF 10px 20px) center/cover;border-radius:var(--r-sm);margin-bottom:10px;border:1px solid var(--line)}
.cover-prev{aspect-ratio:1640/624}
.logo-prev{aspect-ratio:1;max-width:140px;border-radius:24px}
.thumb-prev{width:84px;height:84px;flex-shrink:0}
.has-img{background-size:cover!important;background-position:center!important}
.img-pick{display:flex;gap:14px;align-items:center}
.img-pick .fld{flex:1;margin:0}
.hours-edit{width:100%;border-collapse:collapse;margin-top:8px}
.hours-edit th{text-align:left;font-weight:600;padding:6px 10px 6px 0;width:120px}
.hours-edit td{padding:5px 6px}
.hours-edit input{padding:8px 10px}
.hours-edit .check{margin:0}
.sticky-save{position:sticky;bottom:0;padding:14px 0;background:linear-gradient(transparent,var(--bg) 30%);z-index:5}
.upload-zone{display:flex;gap:16px;align-items:end;flex-wrap:wrap}
.upload-zone .fld{flex:1;margin:0;min-width:240px}
.gal-edit{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:18px}
.gcard{border:1px solid var(--line);border-radius:var(--r-sm);padding:10px;background:var(--bg)}
.gcard img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;margin-bottom:10px}
.gcard .fld{margin-bottom:8px}
.gcard-foot{display:flex;gap:10px;align-items:end;justify-content:space-between}
.fld-sm{width:80px;margin:0!important}

/* admin */
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.seg{display:flex;gap:4px;flex-wrap:wrap;background:var(--white);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px}
.seg a{text-decoration:none;padding:7px 14px;border-radius:var(--r-pill);font-size:14px;font-weight:600;color:var(--forest-600)}
.seg a[aria-current]{background:var(--primary);color:#fff}
.mini-search{display:flex;gap:8px;margin-bottom:16px}
.toolbar .mini-search{margin:0}
.mini-search input{padding:8px 12px;min-width:240px}
.table-wrap{overflow-x:auto;background:var(--white);border:1px solid var(--line);border-radius:var(--r)}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{text-align:left;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.acts form{margin:0}
.more{position:relative}
.more summary{list-style:none;cursor:pointer}
.more summary::-webkit-details-marker{display:none}
.more-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:0 20px 40px -20px rgba(0,0,0,.35);padding:10px 14px;min-width:240px;display:grid;gap:2px}
.more-menu form{margin:0}
.more-menu .linkbtn{text-decoration:none;display:block;width:100%;padding:7px 0}
.more-menu .linkbtn:hover{color:var(--accent-text)}
.feat-form{display:grid;gap:6px;padding:8px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:4px 0}
.feat-form input{padding:6px;border:1px solid var(--line);border-radius:6px;font:inherit;margin-top:4px;width:100%}
.pill-mini{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--r-pill);background:var(--forest-100);color:var(--forest-800);vertical-align:middle}
.pill-mini.terra{background:var(--terra-100);color:var(--terra-700)}
.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.inline-form input{padding:8px 10px;width:auto;flex:1;min-width:120px}
.inline-form input.num{flex:0 0 80px;min-width:0}
.add-row{margin-top:18px}
.toplist{margin:0;padding-left:20px}
.toplist li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line)}
.plain-list{margin:0;padding-left:18px}
.msg-card p{margin:6px 0}

@media (max-width:1100px){
  .rgrid,.pgrid{grid-template-columns:repeat(2,1fr)}
  .bz-layout{grid-template-columns:1fr}
  .bz-side{position:static}
  .filters{grid-template-columns:1fr 1fr}
  .filters .fld:first-child{grid-column:1/-1}
}
@media (max-width:900px){
  .auth-wide{grid-template-columns:1fr;gap:28px}
  .auth-intro{position:static}
  .bz-head{grid-template-columns:auto 1fr}
  .bz-actions{grid-column:1/-1;justify-content:flex-start}
  .bz-tabs{top:70px}
  .dash-wrap{grid-template-columns:1fr;gap:20px}
  .dash-nav{position:static}
  .dash-nav nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:none}
  .dash-nav nav a{white-space:nowrap}
  .split{grid-template-columns:1fr}
}
@media (max-width:640px){
  .grid2,.choice,.media-edit{grid-template-columns:1fr}
  .form-card{padding:22px;border-radius:var(--r)}
  .auth{padding:32px 16px 90px}
  .rgrid{grid-template-columns:1fr}
  .pgrid{grid-template-columns:1fr 1fr;gap:10px}
  .pbody{padding:10px 12px 12px}
  .pfoot{flex-direction:column;align-items:stretch}
  .gal{grid-template-columns:repeat(3,1fr)}
  .bz-head{margin-top:-50px;gap:16px}
  .bz-logo{width:96px;height:96px;border-radius:22px}
  .bz-actions .btn{flex:1}
  .srow{grid-template-columns:1fr auto;gap:8px 12px}
  .srow .sdots{display:none}
  .srow .btn{grid-column:1/-1}
  .filters{grid-template-columns:1fr}
  .cart-fab{bottom:84px}
  .lightbox[open]{grid-template-columns:44px 1fr 44px}
  .hours-edit th{width:auto}
  .tbl{font-size:14px}
  .mini-search input{min-width:0}
}
/* fixes */
.cart-fab[hidden]{display:none}
.bz-head{align-items:start}
.bz-id,.bz-actions{margin-top:80px}
@media (max-width:900px){.bz-actions{margin-top:0}}
@media (max-width:640px){.bz-id{margin-top:58px}}
.more{border:0}
.more>summary{font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:0;padding:8px 15px;position:static}
.more>summary::after{content:none}
.dash footer .cols,.dash footer .wordmark{display:none}
.dash footer{padding-top:0;margin-top:0}
.dash footer .legal{margin-top:0;border-top:0}

/* =====================================================================
   THEME v2 — Moka-inspired, terracotta instead of green
   ===================================================================== */
:root{
  --forest-900:#5A2313; --forest-800:#8A3520; --forest-600:#9C5A44; --forest-200:#EBC9BA; --forest-100:#FAEDE6;
  --terra-700:#A2401F; --terra-600:#BF5134; --terra-200:#F2C9B5; --terra-100:#FBEAE2;
  --dark:#6B2716; --bright:#E2703F;
  --paper:#FFFBF6; --paper-2:#FBF1EA; --white:#FFFFFF;
  --bg:var(--paper); --surface-alt:var(--paper-2);
  --text:#2C211C; --text-muted:#6E5E56; --text-on-dark-muted:#F5D6C8;
  --primary:var(--terra-600); --primary-hover:var(--terra-700);
  --accent:var(--terra-600); --accent-hover:var(--terra-700); --accent-text:#A2401F; --accent-soft:var(--terra-100);
  --line:#EEDFD5; --line-dark:#8A3520; --focus:var(--terra-600);
  --font-display:"Figtree",system-ui,sans-serif; --font-body:"Figtree",system-ui,sans-serif;
}
body::before{opacity:.18}
h1,h2,h3,.m-h,.chapter h2,.page-head h1,.dash-head h1,.auth-title,.bz-head h1,.bz-sec-head h2{letter-spacing:-.02em;font-weight:800}
.dash-head h1,.page-head h1,.auth-title,.bz-sec-head h2,.panel h2,.side-h,legend,.cart-head h2{color:var(--forest-800)}
em.t{font-style:normal;color:var(--accent)}
.bz-tagline,.bz-quote,.summary,.spot blockquote{font-style:normal}

/* ---------- header ---------- */
header.site{position:sticky;top:0;z-index:50;transition:background .3s,box-shadow .3s,color .3s}
header.site .wrap{height:92px;gap:24px}
header.site.over{position:fixed;left:0;right:0;color:#fff;background:transparent;border:0}
header.site.solid,header.site.over.scrolled{background:#fff;color:var(--accent-text);box-shadow:0 6px 24px -14px rgba(90,35,19,.35);border-bottom:0;backdrop-filter:none}
header.site.over.scrolled .wrap{height:78px}
.logo{font-family:var(--font-display);font-weight:900;font-size:30px;letter-spacing:-.04em}
header.site.solid .logo,header.site.scrolled .logo{color:var(--forest-800)}
.head-stack{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.head-top{display:flex;align-items:center;gap:14px;font-size:13px}
.head-soc{display:inline-grid;place-items:center;color:inherit;opacity:.85}
.head-soc:hover{opacity:1}
.lang{border:0;padding:0;margin:0;gap:6px;align-items:center}
.lang a{padding:0;border-radius:0;font-weight:700;opacity:.65}
.lang a[aria-current],header.site.solid .lang a[aria-current]{background:none;color:inherit;opacity:1}
.lang span{opacity:.5}
nav.main{margin:0;gap:28px}
nav.main a{font-weight:700;font-size:15px;opacity:1}
nav.main a::after{bottom:-8px;height:2px}
.head-cta{padding:14px 26px;font-size:15px;box-shadow:0 10px 24px -12px rgba(191,81,52,.8)}
.home .flash-wrap{top:100px}

/* ---------- hero ---------- */
.m-hero{min-height:0;height:min(92vh,860px);min-height:640px;background:var(--dark)}
.m-hero .slide .bg{background:linear-gradient(180deg,rgba(40,14,6,.45) 0%,rgba(40,14,6,.12) 38%,rgba(40,14,6,.5) 100%),var(--img,none) center/cover no-repeat,var(--fb)}
.m-hero .slide:nth-child(1){--fb:linear-gradient(120deg,#A2401F,#C4552F 55%,#E2703F)}
.m-hero .slide:nth-child(2){--fb:linear-gradient(120deg,#8A3520,#BF5134)}
.m-hero .slide:nth-child(3){--fb:linear-gradient(120deg,#6B2716,#A2401F 60%,#C4552F)}
.m-hero .slide:nth-child(4){--fb:linear-gradient(120deg,#B5532F,#E2703F)}
.m-hero .slide:nth-child(5){--fb:linear-gradient(120deg,#5A2313,#8A3520 60%,#BF5134)}
.m-hero .slide .bg::after{opacity:.07}
.m-hero .slide .wrap{align-items:center;padding-top:70px;padding-bottom:170px}
.m-hero .copy{max-width:900px;padding-left:4%}
.m-hero-k{font-size:clamp(18px,2.2vw,30px);font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:#fff;margin:0 0 4px;display:flex;align-items:center;gap:12px}
.m-hero-k::before{content:"";width:34px;height:4px;border-radius:2px;background:var(--bright)}
.m-hero-title{font-family:var(--font-display);font-size:clamp(64px,11vw,156px);font-weight:900;text-transform:uppercase;line-height:.88;letter-spacing:-.03em;color:#fff;margin:0;text-shadow:0 6px 40px rgba(40,14,6,.35)}
.m-hero-title-sm{font-size:clamp(40px,6vw,84px);text-transform:none;line-height:1;max-width:11em}
.m-hero-sub{font-size:clamp(17px,1.5vw,21px);color:rgba(255,255,255,.92);margin:18px 0 26px;max-width:32em;font-weight:500}
.m-hero .btn-light{color:var(--accent-text)}
.m-hero .controls{bottom:190px;justify-content:flex-end;gap:12px}
.m-hero .count{font-family:var(--font-body);font-size:14px;color:#fff;min-width:0}
.m-hero .count b{font-size:18px}
.m-hero .ctrl{width:40px;height:40px}
.m-curve{position:absolute;left:-20%;right:-20%;bottom:-2px;height:170px;background:var(--bg);border-radius:50% 50% 0 0/100% 100% 0 0;z-index:3;pointer-events:none}
.m-hero::after{display:none}

/* search card */
.m-search-wrap{position:relative;z-index:6;margin-top:-150px}
.m-search{max-width:840px;margin:0 auto;background:#fff;border-radius:18px;box-shadow:0 24px 60px -24px rgba(90,35,19,.4);padding:28px 32px}
.m-search h2{font-size:24px;font-weight:800;color:var(--accent-text);margin:0 0 14px;letter-spacing:-.01em}
.m-search-row{display:flex;align-items:center;gap:6px;background:var(--paper-2);border-radius:999px;padding:6px 6px 6px 24px;border:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.m-search-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.m-search-row input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:16px;padding:12px 0;outline:0;color:var(--text)}
.m-search-row select{border:0;border-left:1px solid var(--line);background:transparent;font:inherit;font-size:15px;color:var(--text);padding:10px 12px;max-width:210px;outline:0;cursor:pointer}
.m-search-row button{width:50px;height:50px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:grid;place-items:center;flex-shrink:0;transition:background .2s}
.m-search-row button:hover{background:var(--accent-hover)}
.m-search-pop{margin:14px 0 0;font-size:14px;color:var(--text-muted)}
.m-search-pop a{margin-left:12px;color:var(--accent-text);font-weight:700;text-decoration:none}
.m-search-pop a:hover{text-decoration:underline}

/* floating side tabs */
.m-tabs{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:45;display:flex;flex-direction:column;border-radius:20px 0 0 20px;overflow:hidden;box-shadow:0 14px 34px -14px rgba(90,35,19,.55)}
.m-tabs a{width:86px;padding:13px 6px 11px;display:flex;flex-direction:column;align-items:center;gap:5px;color:#fff;text-decoration:none;font-size:12px;font-weight:700;line-height:1.15;text-align:center;transition:padding .2s,filter .2s}
.m-tabs a:hover{filter:brightness(1.08);padding-right:16px}
.m-tabs svg{width:26px;height:26px}
.m-tabs .t1{background:#E2703F}.m-tabs .t2{background:#CF5F35}.m-tabs .t3{background:#B34A28}.m-tabs .t4{background:#8A3520}.m-tabs .t5{background:#5A2313}

/* sections */
.m-sec{padding:80px 0}
.m-search-wrap+.m-tabs+.m-sec{padding-top:70px}
.m-sec-tight{padding:30px 0 70px}
.m-k{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin:0}
.m-h{font-family:var(--font-display);font-size:clamp(28px,3vw,40px);color:var(--forest-800);margin:4px 0 30px;line-height:1.1}
.m-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.m-card{background:var(--paper-2);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.m-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -26px rgba(90,35,19,.5)}
.m-card-img{display:grid;place-items:center;aspect-ratio:16/10;text-decoration:none;color:#fff;font-weight:900;font-size:46px;background:var(--img,none) center/cover,linear-gradient(135deg,#EFAE8F,#BF5134)}
.m-card:nth-child(2) .m-card-img{background:var(--img,none) center/cover,linear-gradient(135deg,#C4552F,#6B2716)}
.m-card:nth-child(3) .m-card-img{background:var(--img,none) center/cover,linear-gradient(135deg,#E2703F,#A2401F)}
.m-card-body{padding:20px;display:flex;flex-direction:column;flex:1}
.m-date{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-text);margin:0 0 6px}
.m-card h3,.m-list h3{font-size:20px;font-weight:800;color:var(--forest-800);margin:0 0 8px;line-height:1.25;letter-spacing:-.01em}
.m-card h3 a,.m-list h3 a{text-decoration:none}
.m-card h3 a:hover,.m-list h3 a:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.m-ex{font-size:14.5px;color:var(--text-muted);margin:0 0 18px;line-height:1.55}
.m-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}
.m-pill{background:var(--forest-800);color:#fff;font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px}
.m-more{color:var(--accent-text);font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:8px;font-size:15px}
.m-more:hover{color:var(--forest-800)}
.m-go{width:19px;height:19px;border-radius:50%;background:var(--accent);color:#fff;display:inline-grid;place-items:center;transition:transform .2s}
a:hover .m-go{transform:translateX(3px)}
.m-center{text-align:center;margin-top:36px}
.m-btn-out{border:1.5px solid var(--accent);color:var(--accent-text);background:transparent;padding:11px 24px;font-weight:800}
.m-btn-out:hover{background:var(--accent);color:#fff}
.m-btn-solid{background:var(--accent);color:#fff;font-weight:800}
.m-btn-solid:hover{background:var(--accent-hover)}
.m-btn-solid .m-go,.m-btn-ghost .m-go{background:#fff;color:var(--accent)}
.m-btn-ghost{border:1.5px solid rgba(255,255,255,.7);color:#fff;font-weight:800}
.m-btn-ghost:hover{background:rgba(255,255,255,.12)}
.m-btn-light{background:#fff;color:var(--accent-text);font-weight:800}
.m-card-empty .m-card-img{font-size:60px;font-weight:300}

/* dark CTA panel */
.m-cta{margin-top:72px;background:var(--dark);color:#fff;border-radius:18px;padding:48px 56px;display:flex;justify-content:space-between;align-items:center;gap:30px;position:relative;overflow:hidden}
.m-cta::before{content:"";position:absolute;left:-160px;top:50%;width:320px;height:320px;transform:translateY(-50%);border-radius:50%;border:16px solid rgba(255,255,255,.06);box-shadow:0 0 0 26px rgba(255,255,255,.03),0 0 0 56px rgba(255,255,255,.04)}
.m-cta>*{position:relative}
.m-cta h2{font-size:clamp(26px,3vw,38px);font-weight:800;margin:0;color:#fff}
.m-cta p{margin:6px 0 0;color:var(--text-on-dark-muted);font-size:18px;font-weight:600}
.m-cta-btns{display:flex;gap:12px;flex-wrap:wrap}

/* tinted band */
.m-band{background:var(--forest-100);padding:72px 0}
.m-band-light{background:var(--paper-2)}
.m-band-head{display:flex;gap:18px;align-items:center;margin-bottom:32px}
.m-band-ic{width:66px;height:66px;border-radius:18px;background:#fff;color:var(--accent);display:grid;place-items:center;flex-shrink:0;box-shadow:0 10px 24px -16px rgba(90,35,19,.5)}
.m-band-head .m-h{margin:0}
.m-band-head p{margin:2px 0 0;color:var(--text-muted);font-weight:600}
.m-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.m-cat{background:#fff;border-radius:16px;padding:24px;text-decoration:none;display:flex;flex-direction:column;gap:4px;transition:transform .25s,box-shadow .25s}
.m-cat:hover{transform:translateY(-4px);box-shadow:0 20px 36px -24px rgba(90,35,19,.55)}
.m-cat-ic{width:56px;height:56px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:12px;transition:background .25s,color .25s}
.m-cat:hover .m-cat-ic{background:var(--accent);color:#fff}
.m-cat b{font-size:17px;color:var(--forest-800);font-weight:800}
.m-cat small{color:var(--text-muted);font-size:14px}

/* big photo tiles */
.m-tiles{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.m-tile{position:relative;aspect-ratio:16/7;border-radius:16px;overflow:hidden;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 30px;
  background:linear-gradient(180deg,rgba(40,14,6,0) 30%,rgba(40,14,6,.65)),var(--img,none) center/cover no-repeat,var(--fb);transition:transform .3s,box-shadow .3s}
.m-tile:hover{transform:translateY(-4px);box-shadow:0 24px 44px -28px rgba(90,35,19,.7)}
.m-tile.t1{--fb:linear-gradient(135deg,#E2703F,#A2401F)}
.m-tile.t2{--fb:linear-gradient(135deg,#8A3520,#5A2313)}
.m-tile.t3{--fb:linear-gradient(135deg,#BF5134,#8A3520)}
.m-tile.t4{--fb:linear-gradient(135deg,#CF5F35,#6B2716)}
.m-tile-k{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.9}
.m-tile-t{font-size:clamp(22px,2.4vw,32px);font-weight:800;letter-spacing:-.01em;padding-right:50px}
.m-tile-go{position:absolute;right:26px;bottom:30px;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--accent);display:grid;place-items:center;transition:transform .2s}
.m-tile:hover .m-tile-go{transform:translateX(4px)}

/* listing cards */
.m-list{display:flex;flex-direction:column}
.m-list-img{display:block;position:relative;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:var(--img,none) center/cover,linear-gradient(135deg,#EFAE8F,#BF5134)}
.m-list:nth-child(2) .m-list-img{background:var(--img,none) center/cover,linear-gradient(135deg,#C4552F,#6B2716)}
.m-list:nth-child(3) .m-list-img{background:var(--img,none) center/cover,linear-gradient(135deg,#E2703F,#A2401F)}
.m-badge{position:absolute;left:16px;bottom:40px;background:var(--bright);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;padding:6px 12px;border-radius:5px;letter-spacing:.03em}
.m-strip{position:absolute;left:0;right:0;bottom:0;background:rgba(60,20,10,.55);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;text-align:right;padding:7px 16px;letter-spacing:.04em}
.m-list-body{padding:18px 16px 16px}
.m-price{font-weight:700;color:var(--forest-800);margin:0}
.m-open{color:#2E7D4F}
.m-list-foot{border-top:1px solid var(--forest-200);padding:16px 0 0;margin-top:auto;display:flex;align-items:center;gap:18px}

/* districts */
.m-dists{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.m-dist{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;text-decoration:none;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:border-color .2s,transform .2s}
.m-dist:hover{border-color:var(--accent);transform:translateY(-2px)}
.m-dist b{color:var(--forest-800);font-weight:800;font-size:15px}
.m-dist span{min-width:30px;height:30px;border-radius:15px;background:var(--accent-soft);color:var(--accent-text);font-size:13px;font-weight:800;display:grid;place-items:center;padding:0 9px}
.m-dist.rod{background:var(--accent);border-color:var(--accent)}
.m-dist.rod b{color:#fff}
.m-dist.rod span{background:rgba(255,255,255,.22);color:#fff}

/* promo + prices */
.m-promo{background:var(--accent);border-radius:20px;display:grid;grid-template-columns:1.05fr 1fr;gap:44px;padding:56px;position:relative;overflow:hidden;color:#fff;align-items:center}
.m-promo::before{content:"";position:absolute;right:-140px;top:-120px;width:700px;height:700px;border-radius:50%;background:var(--terra-100)}
.m-promo::after{content:"";position:absolute;left:38%;bottom:-180px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.07)}
.m-promo-copy,.m-promo-card{position:relative;z-index:1}
.m-promo h2{font-size:clamp(30px,3.6vw,48px);font-weight:900;line-height:1.02;margin:0 0 16px;color:#fff}
.m-promo-copy p{color:#FDE7DD;font-size:17px;margin:0 0 26px;max-width:30em}
.m-promo-card{background:#fff;color:var(--text);border-radius:16px;padding:28px 30px;box-shadow:0 30px 60px -30px rgba(90,35,19,.6)}
.m-promo-card h3{font-size:26px;font-weight:900;color:var(--forest-800);margin:0 0 6px}
.m-promo-card .item b,.m-promo-card .item .p{font-family:var(--font-display);font-weight:800}

/* faq tweaks */
summary{font-weight:800;font-size:19px;color:var(--forest-800)}
details[open] summary::after{background:var(--accent);border-color:var(--accent)}

/* footer */
.m-foot{background:#fff;color:var(--text);border-radius:0;margin-top:90px;padding:40px 0 0;position:relative;overflow:visible}
.m-foot::before{content:"";position:absolute;left:-15%;right:-15%;top:-70px;height:140px;background:#fff;border-radius:50% 50% 0 0/100% 100% 0 0;z-index:0}
.m-foot>.wrap{position:relative;z-index:1}
.m-foot-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px;align-items:stretch}
.m-foot-brand{padding:20px 10px 0 0}
.m-foot-brand .logo{color:var(--forest-800);font-size:34px}
.m-foot .tag{font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--accent-text);margin:12px 0 6px;font-style:normal;line-height:1.3}
.m-foot-panel{background:var(--forest-100);border-radius:16px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.m-foot-contact{display:block}
.m-foot h4{color:var(--forest-800);font-size:16px;font-weight:800;letter-spacing:0;text-transform:none;margin:0 0 12px}
.m-foot ul{display:grid;gap:8px}
.m-foot a{color:var(--text)}
.m-foot a:hover{color:var(--accent-text);text-decoration:underline}
.m-foot-contact p{margin:0 0 8px;font-weight:600}
.m-foot-soc{display:flex;gap:8px;margin-top:18px}
.m-foot-soc a{width:38px;height:38px;border-radius:50%;background:var(--forest-800);color:#fff!important;display:grid;place-items:center;text-decoration:none!important}
.m-foot-soc a:hover{background:var(--accent)}
.m-foot .legal{border-top:1px solid var(--line);color:var(--text-muted);margin-top:44px}
.dash .m-foot-grid{display:none}
.dash .m-foot{margin-top:0;padding-top:0}
.dash .m-foot::before{display:none}
.dash .m-foot .legal{margin-top:0}

/* other pages keep working with the new tokens */
.bz-cover{background:var(--img,none) center/cover,linear-gradient(120deg,#A2401F,#C4552F 55%,#E2703F)}
.rcover{background:var(--img,none) center/cover,linear-gradient(135deg,#EFAE8F,#BF5134)}
.rcard:nth-child(even) .rcover{background:var(--img,none) center/cover,linear-gradient(135deg,#C4552F,#6B2716)}
.rlogo,.dash-logo{background-color:var(--accent)}
.st-approved{background:#E6F2EA;color:#1F6B3F}
.flash-success{background:#EEF7F1;border-color:#C7E3D1;color:#1F6B3F}
.panel-terra{background:var(--dark);border-color:var(--dark)}

@media (max-width:1100px){
  .m-cats{grid-template-columns:repeat(3,1fr)}
  .m-dists{grid-template-columns:repeat(3,1fr)}
  .m-promo{grid-template-columns:1fr;padding:40px}
  .m-promo::before{right:-300px;top:auto;bottom:-380px}
  .m-tabs{display:none}
  .m-foot-grid{grid-template-columns:1fr 1fr}
  .m-foot-brand{grid-column:1/-1}
}
@media (max-width:900px){
  .head-stack nav.main{display:none}
  .head-cta{display:none}
  header.site .wrap{height:72px}
  .m-cards{grid-template-columns:1fr 1fr}
  .m-cta{flex-direction:column;align-items:flex-start;padding:36px}
}
@media (max-width:640px){
  .m-hero{height:auto;min-height:620px}
  .m-hero .slides{height:620px}
  .m-hero .slide .wrap{padding-bottom:190px;padding-top:80px}
  .m-hero .copy{padding-left:0}
  .m-hero .controls{bottom:150px;justify-content:flex-start}
  .m-curve{height:90px}
  .m-search-wrap{margin-top:-110px}
  .m-search{padding:20px 18px}
  .m-search h2{font-size:20px}
  .m-search-row{flex-wrap:wrap;border-radius:16px;padding:8px}
  .m-search-row input{flex:1 1 100%;padding:10px 12px}
  .m-search-row select{flex:1;border-left:0;border-top:1px solid var(--line);max-width:none}
  .m-sec{padding:56px 0}
  .m-cards,.m-tiles,.m-foot-grid,.m-foot-panel{grid-template-columns:1fr}
  .m-tile{aspect-ratio:16/9}
  .m-cats{grid-template-columns:1fr 1fr;gap:10px}
  .m-cat{padding:18px}
  .m-dists{grid-template-columns:1fr 1fr}
  .m-promo{padding:30px 22px}
  .m-cta{padding:30px 24px}
  .m-foot{margin-top:60px}
  .m-foot::before{top:-40px;height:80px}
}
html,body{overflow-x:clip}
/* bigger top menu */
nav.main{gap:32px}
nav.main a{font-size:17px}
.head-top{font-size:14.5px;gap:16px}
.logo{font-size:34px}
.head-cta{font-size:16px;padding:15px 28px}
@media (max-width:1180px){nav.main{gap:22px} nav.main a{font-size:16px}}

/* ---------- Business page cover: show the whole banner (v4) ----------
   Covers are shown at 1640 x 624 (the Facebook cover format), inside the page width,
   so nothing is cropped and the logo no longer hides part of the image. */
.bz-cover{height:auto;aspect-ratio:1640/624;width:calc(100% - 48px);max-width:calc(var(--wrap) - 48px);margin:24px auto 0;background:var(--img,none) center/cover no-repeat,linear-gradient(120deg,#A2401F,#C4552F 55%,#E2703F);border-radius:0}
.bz-cover::after{display:none}
.bz-head{margin-top:28px;align-items:center;gap:24px}
.bz-head .bz-logo{width:112px;height:112px;border-radius:24px;border:1px solid var(--line);box-shadow:0 10px 24px -16px rgba(10,42,31,.4)}
.bz-head .bz-id{padding:0}
.bz-head>.bz-id,.bz-head>.bz-actions,.bz-head>.bz-logo{margin-top:0}
@media (max-width:720px){
  .bz-cover{width:100%;max-width:none;margin:0}
  .bz-head{display:grid;grid-template-columns:72px 1fr;margin-top:18px;gap:14px 16px;align-items:center}
  .bz-head .bz-logo{width:72px;height:72px;border-radius:18px}
  .bz-head .bz-actions{grid-column:1/-1}
}

/* ---------- Image logo (v5) ---------- */
.logo.logo-img{display:inline-flex;align-items:center;line-height:0}
.logo.logo-img img{height:40px;width:auto;display:block}
.logo.logo-img .logo-w{display:none}
header.site.over:not(.scrolled) .logo-img .logo-c{display:none}
header.site.over:not(.scrolled) .logo-img .logo-w{display:block}
.m-foot .logo.logo-img img{height:46px}
@media (max-width:720px){.logo.logo-img img{height:32px}}

/* ---------- Deep green accent #013d2b (used sparingly) + info pages (v7) ---------- */
:root{--deep:#013d2b;--deep-2:#02543b}
.m-cta{background:var(--deep)}
.pg-hero{background:var(--deep);color:#fff;padding:72px 0 64px;position:relative;overflow:hidden}
.pg-hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:40px solid rgba(255,255,255,.05);box-shadow:0 0 0 60px rgba(255,255,255,.03)}
.pg-hero .wrap{position:relative;z-index:1}
.pg-hero-sm{padding:56px 0 48px}
.pg-k{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#9FD3BC;margin:0 0 14px}
.pg-k::before{content:"";width:26px;height:2px;background:var(--accent)}
.pg-hero h1{font-size:clamp(34px,5vw,60px);font-weight:900;letter-spacing:-.03em;line-height:1.02;margin:0 0 16px;color:#fff;max-width:16em}
.pg-lead{font-size:18px;line-height:1.55;color:#CFE6DB;max-width:40em;margin:0}
.pg-jump{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.pg-jump a{color:#fff;text-decoration:none;font-weight:700;padding:10px 16px;border:1px solid rgba(255,255,255,.3);border-radius:999px}
.pg-jump a:hover{background:rgba(255,255,255,.1)}
.steps{list-style:none;padding:0;margin:28px 0 32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.steps-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.steps li{background:var(--paper,#fff);border:1px solid var(--line);border-radius:16px;padding:24px}
.m-band-light .steps li{background:#fff}
.steps .n{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--deep);color:#fff;font-weight:900;font-size:17px;margin-bottom:14px}
.steps h3{margin:0 0 6px;font-size:19px;font-weight:800;color:var(--text)}
.steps p{margin:0;color:var(--text-muted);line-height:1.55}
.pg-note{background:#fff;border:1px solid var(--line);border-left:4px solid var(--deep);border-radius:14px;padding:22px 24px;display:grid;gap:8px;justify-items:start;max-width:760px}
.pg-note h3{margin:0;font-size:19px;font-weight:800;color:var(--deep)}
.pg-note p{margin:0;color:var(--text-muted)}
.pg-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0 0}
.pg-prices>div{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff;display:grid;gap:4px}
.pg-prices b{font-size:17px}
.pg-prices span{font-size:26px;font-weight:900;color:var(--accent);letter-spacing:-.02em}
.pg-prices small{font-size:13px;color:var(--text-muted);font-weight:600}
.pg-prices p{margin:4px 0 0;color:var(--text-muted)}
.legal-doc{display:grid;grid-template-columns:260px minmax(0,1fr);gap:48px;align-items:start}
.legal-toc{position:sticky;top:100px}
.legal-toc ol{margin:0;padding-left:20px;display:grid;gap:8px;font-size:15px}
.legal-toc a{color:var(--text-muted);text-decoration:none}
.legal-toc a:hover{color:var(--accent)}
.legal-doc .prose{max-width:46em;font-size:17px;line-height:1.7}
.legal-doc .prose h2{font-size:22px;font-weight:800;color:var(--deep);margin:34px 0 10px;scroll-margin-top:100px;letter-spacing:-.01em}
.legal-doc .prose h2:first-child{margin-top:0}
.legal-doc .prose h2 span{color:var(--accent)}
.legal-doc .prose p{margin:0 0 14px;color:var(--text)}
.terms-note{font-size:14px;color:var(--text-muted);margin:8px 0 0}
.terms-note a{color:var(--accent);font-weight:700}
@media (max-width:1000px){.steps-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.steps,.steps-4,.pg-prices{grid-template-columns:minmax(0,1fr)}.legal-doc{grid-template-columns:minmax(0,1fr);gap:24px}.legal-toc{position:static}.pg-hero{padding:48px 0 40px}}

/* ---------- Hero edge + search card exactly like moka.mu (v7) ----------
   Straight photo edge, cream area rising with one big rounded corner on the left,
   search card overlapping the edge, single search field with the icon inside. */
.m-curve{left:0;right:0;bottom:-1px;height:88px;background:var(--bg);border-radius:88px 0 0 0}
.m-search-wrap{margin-top:-128px}
.m-search{max-width:700px;border-radius:20px;padding:30px 36px 36px;box-shadow:0 14px 40px -18px rgba(44,33,28,.28)}
.m-search h2{font-size:27px;font-weight:800;margin:0 0 18px;color:var(--accent-text)}
.m-search h2 label{cursor:pointer}
.m-search-row{background:var(--paper-2);border:0;border-radius:999px;padding:0 10px 0 34px;gap:8px}
.m-search-row:focus-within{box-shadow:0 0 0 3px var(--accent-soft)}
.m-search-row input{font-size:18px;padding:17px 0;color:var(--text)}
.m-search-row input::placeholder{color:var(--accent-text);opacity:.85}
.m-search-row button{width:48px;height:48px;background:transparent;color:var(--accent-text)}
.m-search-row button:hover{background:var(--accent-soft)}
@media (max-width:720px){
  .m-curve{height:48px;border-radius:48px 0 0 0}
  .m-search-wrap{margin-top:-84px}
  .m-search{padding:22px 20px 24px}
  .m-search h2{font-size:21px;margin-bottom:14px}
  .m-search-row{flex-wrap:nowrap;border-radius:999px;padding:0 6px 0 22px}
  .m-search-row input{flex:1;padding:14px 0;font-size:16px}
}

/* ---------- Bazar: buy & sell between people (v8) ---------- */
.bzr-hero-in{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.bzr-list-sec{padding-top:36px}
.bzr-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.bzr-filter input{flex:1 1 320px;min-width:0;font:inherit;font-size:16px;padding:13px 18px;border:1px solid var(--line);border-radius:999px;background:#fff}
.bzr-filter select{font:inherit;font-size:15px;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:#fff}
.bzr-filter input:focus,.bzr-filter select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.bzr-cats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}
.bzr-cats a{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--text);text-decoration:none;font-weight:700;font-size:14px;transition:background .15s,border-color .15s,color .15s}
.bzr-cats a:hover{border-color:var(--accent);color:var(--accent-text)}
.bzr-cats a[aria-current]{background:var(--deep);border-color:var(--deep);color:#fff}
.bzr-cats a i{font-style:normal;font-size:12px;opacity:.65}
.bzr-count{color:var(--text-muted);font-weight:600;margin:0 0 14px}
.bzr-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.bzr-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.bzr-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px -24px rgba(90,35,19,.45)}
.bzr-ph{aspect-ratio:4/3;background:var(--paper-2) center/cover;position:relative;display:grid;place-items:center}
.bzr-ph span{font-size:44px;font-weight:900;color:var(--accent);opacity:.5}
.bzr-cond{position:absolute;left:10px;top:10px;font-style:normal;font-size:12px;font-weight:800;background:#fff;color:var(--text);padding:4px 9px;border-radius:999px}
.bzr-body{padding:14px 16px 16px;display:grid;gap:3px}
.bzr-price{font-size:19px;font-weight:900;color:var(--accent-text);letter-spacing:-.01em}
.bzr-body h3{margin:0;font-size:16px;font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bzr-body p{margin:2px 0 0;font-size:13.5px;color:var(--text-muted)}
.bzr-pager{display:flex;gap:6px;justify-content:center;margin-top:28px}
.bzr-pager a{min-width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--text);font-weight:700}
.bzr-pager a[aria-current]{background:var(--deep);color:#fff;border-color:var(--deep)}
.bzr-empty{text-align:center;padding:40px 20px;background:#fff;border:1px dashed var(--line);border-radius:16px}
.bzr-empty h1,.bzr-empty h2{margin:0 0 8px;font-size:24px}
.bzr-empty-home{padding:26px}
.bzr-empty-home p{margin:0;color:var(--text-muted);font-weight:600}
.bzr-home-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:18px}
.bzr-home-head .m-h{margin-bottom:6px}
.bzr-home-head p.muted{margin:0;max-width:38em}
.bzr-home .m-center{margin-top:24px}
/* item page */
.bzr-crumb{font-size:14px;color:var(--text-muted);margin:0 0 16px}
.bzr-crumb a{color:var(--accent-text);font-weight:700;text-decoration:none}
.bzr-item-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:40px;align-items:start}
.bzr-main{aspect-ratio:4/3;border-radius:18px;background:var(--paper-2) center/contain no-repeat;border:1px solid var(--line);display:grid;place-items:center}
.bzr-main span{font-size:90px;font-weight:900;color:var(--accent);opacity:.35}
.bzr-thumbs{display:flex;gap:10px;margin-top:10px}
.bzr-thumbs button{width:78px;height:62px;border-radius:10px;border:1px solid var(--line);background:#fff center/cover;cursor:pointer;padding:0}
.bzr-thumbs button:hover,.bzr-thumbs button:focus-visible{border-color:var(--accent)}
.bzr-tags{display:flex;gap:8px;margin:0 0 10px}
.bzr-tags span{font-size:12.5px;font-weight:800;padding:5px 11px;border-radius:999px;background:var(--paper-2);color:var(--accent-text)}
.bzr-info h1{font-size:clamp(26px,3vw,36px);font-weight:900;letter-spacing:-.02em;line-height:1.1;margin:0 0 8px}
.bzr-big-price{font-size:32px;font-weight:900;color:var(--deep);margin:0 0 16px;letter-spacing:-.02em}
.bzr-meta{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:8px;color:var(--text-muted);font-weight:600}
.bzr-meta li{display:flex;gap:8px;align-items:center}
.bzr-wa{font-size:17px;padding:16px}
.bzr-safe{font-size:13.5px;color:var(--text-muted);background:var(--paper-2);border-radius:12px;padding:12px 14px;margin:12px 0 0}
.bzr-desc{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}
.bzr-desc h2{font-size:18px;margin:0 0 8px}
.bzr-desc p{margin:0;line-height:1.65;white-space:normal}
.bzr-sold-note{background:var(--warn-bg,#FFF3DE);border:1px solid #F2D9AE;color:#6B3E00;border-radius:12px;padding:12px 16px;margin:0 0 18px;font-weight:600}
.bzr-sold-note a{color:inherit}
.bzr-rel-h{margin:56px 0 18px}
/* forms */
.bzr-form-wrap{max-width:780px}
.bzr-form fieldset{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px 24px 8px;margin:0 0 18px}
.bzr-form legend{font-weight:900;font-size:18px;padding:0 8px;color:var(--deep)}
.bzr-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.bzr-form small{display:block;margin-top:5px;color:var(--text-muted);font-size:13px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px;background:#fff;gap:4px}
.seg label{padding:8px 16px;border-radius:999px;cursor:pointer;font-weight:700;font-size:14px;display:flex;gap:6px;align-items:center}
.seg label:has(input:checked){background:var(--deep);color:#fff}
.seg input{accent-color:#fff}
.check-line{display:flex;gap:10px;align-items:flex-start;margin:4px 0 18px;font-size:15px;cursor:pointer}
.check-line input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent)}
.check-line a{color:var(--accent-text);font-weight:700}
.bzr-done{background:#fff;border:1px solid var(--line);border-left:5px solid var(--deep);border-radius:18px;padding:28px;display:grid;gap:12px}
.bzr-done h2{margin:0;font-size:24px;display:flex;gap:10px;align-items:center;color:var(--deep)}
.bzr-done p{margin:0}
.bzr-link{display:flex;gap:8px}
.bzr-link input{flex:1;min-width:0;font:inherit;font-size:14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2)}
.bzr-done-acts{display:flex;gap:10px;flex-wrap:wrap}
.bzr-sold-box{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--deep);color:#fff;border-radius:18px;padding:22px 26px;margin:0 0 18px}
.bzr-sold-box h2{margin:0 0 4px;font-size:21px;color:#fff}
.bzr-sold-box p{margin:0;color:#CFE6DB}
.bzr-del{margin-top:6px}
@media (max-width:1100px){.bzr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.bzr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bzr-item-grid{grid-template-columns:minmax(0,1fr);gap:22px}.bzr-form .row2{grid-template-columns:minmax(0,1fr)}.bzr-body{padding:12px}.bzr-price{font-size:17px}}
@media (max-width:420px){.bzr-cats{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-right:-16px}.bzr-cats a{flex-shrink:0}}

/* ---------- Business page polish (v9) ---------- */
.bz-about .prose{max-width:44em}
.srow .price{font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:720px){
  .bz-tagline{font-size:17px;line-height:1.4}
  .bz-kicker{font-size:12px;letter-spacing:.08em}
  .srow{grid-template-columns:1fr auto;gap:10px 12px;padding:16px 0}
  .srow>div:first-child{grid-column:1/-1}
  .srow h3{font-size:18px}
  .srow .price{justify-self:start;align-self:center;font-size:17px}
  .srow .btn{grid-column:auto;justify-self:end;min-height:44px;padding-left:22px;padding-right:22px}
}

/* ---------- Dekouver band in deep green (v10) ---------- */
#dekouver.m-band{background:var(--deep)}
#dekouver .m-band-head .m-h{color:#fff}
#dekouver .m-band-head p{color:#CFE6DB}
#dekouver .m-band-ic{background:#fff;color:var(--deep);box-shadow:none}
#dekouver .m-cat{box-shadow:0 1px 0 rgba(0,0,0,.04)}
#dekouver .m-cat:hover{box-shadow:0 20px 36px -22px rgba(0,0,0,.55)}

/* ---------- Business page: service cards (v11) ---------- */
.svc-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;counter-reset:svc}
.svc{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 22px 18px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.svc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .25s ease}
.svc:hover{border-color:#E7C9BA;box-shadow:0 18px 36px -26px rgba(90,35,19,.45);transform:translateY(-2px)}
.svc:hover::before,.svc:focus-within::before{transform:scaleY(1)}
.svc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}
.svc-no{font-size:13px;font-weight:900;letter-spacing:.06em;color:var(--deep);background:#E3EFE9;border-radius:8px;padding:4px 8px;font-variant-numeric:tabular-nums}
.svc-dur{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--text-muted);background:var(--paper-2);border-radius:999px;padding:4px 10px}
.svc h3{margin:0;font-size:19px;font-weight:800;line-height:1.25;letter-spacing:-.01em;color:var(--text)}
.svc-desc{margin:0;font-size:15px;line-height:1.6;color:var(--text-muted)}
.svc-desc.is-clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.svc-more{align-self:flex-start;background:none;border:0;padding:2px 0;font:inherit;font-size:14px;font-weight:700;color:var(--accent-text);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.svc-more:hover{color:var(--accent)}
.svc-foot{margin-top:auto;padding-top:14px;border-top:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}
.svc-price{display:grid;line-height:1.1}
.svc-price small{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.svc-price b{font-size:22px;font-weight:900;color:var(--deep);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.svc-ask{font-size:13.5px;font-weight:700;color:var(--accent-text);background:var(--accent-soft);border-radius:999px;padding:7px 12px}
.svc-book{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-weight:800;font-size:14.5px;white-space:nowrap;transition:background .2s ease,transform .15s ease}
.svc-book:hover{background:var(--accent-hover)}
.svc-book:active{transform:scale(.97)}
.svc-book:focus-visible,.svc-more:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:1100px){.svc-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.svc{padding:18px 16px 16px}.svc h3{font-size:17.5px}.svc-price b{font-size:20px}}
@media (prefers-reduced-motion:reduce){.svc,.svc::before,.svc-book{transition:none}.svc:hover{transform:none}}

/* ---------- Moka-style inner page header + scroll motion (v12) ---------- */
:root{--script:"Pacifico","Brush Script MT",cursive;--cream:#FFFCF7}
body{background:var(--cream)}
.pgh{padding:28px 0 18px}
.pgh-banner{aspect-ratio:3.3/1;border-radius:18px;background:var(--img,none) center/cover no-repeat,linear-gradient(120deg,#C4552F,#8A3520);position:relative;overflow:hidden}
.pgh-banner-empty{background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.12) 0 120px,transparent 121px),radial-gradient(circle at 10% 110%,rgba(255,255,255,.08) 0 200px,transparent 201px),linear-gradient(120deg,#C4552F,#8A3520)}
.pgh-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:start;padding:34px 0 10px}
.pgh-row-solo{grid-template-columns:minmax(0,1fr)}
.pgh-title{font-family:var(--script);font-weight:400;font-size:clamp(38px,4.6vw,56px);line-height:1.15;letter-spacing:0;color:var(--accent);margin:0 0 10px}
.pgh-sub{font-size:clamp(20px,2vw,24px);font-weight:700;line-height:1.35;color:var(--deep);margin:0 0 14px;max-width:24em}
.pgh-intro{font-size:18px;line-height:1.6;color:var(--deep);opacity:.88;margin:0;max-width:34em}
.pgh-cta{margin-top:20px}
.pgh-stats{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:14px}
.pgh-stats.n1{grid-template-columns:1fr}
.pgh-stat{border-radius:18px;padding:18px 22px;display:flex;align-items:center;gap:16px;min-height:96px}
.pgh-stat b{font-size:clamp(34px,3.6vw,48px);font-weight:300;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pgh-stat small{font-size:15.5px;font-weight:600;line-height:1.3}
.pgh-stats.n3 .pgh-stat:nth-child(3){grid-column:2;grid-row:1/3;flex-direction:column;justify-content:center;text-align:center;gap:10px}
.pgh-stats.n3 .pgh-stat:nth-child(1){grid-column:1;grid-row:1}
.pgh-stats.n3 .pgh-stat:nth-child(2){grid-column:1;grid-row:2}
.t-rose{background:#D98C70;color:#fff}
.t-sand{background:#F3E9E3;color:var(--accent-text)}
.t-deep{background:var(--deep);color:#fff}
.t-terra{background:var(--accent);color:#fff}
.page-head-filters{padding-top:6px}
.page-head-filters .kicker{margin-bottom:10px}
.pg-jump-light{margin:0 0 10px}
.pg-jump-light a{color:var(--accent-text);border-color:var(--line);background:#fff}
.pg-jump-light a:hover{background:var(--paper-2)}
@media (max-width:900px){
  .pgh-row{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px}
  .pgh-banner{aspect-ratio:2.2/1;border-radius:14px}
}
@media (max-width:520px){
  .pgh-stats{grid-template-columns:1fr 1fr}
  .pgh-stats.n3 .pgh-stat:nth-child(3){grid-column:1/-1;grid-row:auto;flex-direction:row;text-align:left}
  .pgh-stats.n3 .pgh-stat:nth-child(1),.pgh-stats.n3 .pgh-stat:nth-child(2){grid-column:auto;grid-row:auto;flex-direction:column;align-items:flex-start;gap:6px}
  .pgh-stat{padding:16px;min-height:0}
  .pgh-intro{font-size:17px}
}

/* scroll reveal – only when JS is on and motion is allowed */
.rv .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
.rv .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv .reveal{opacity:1;transform:none;transition:none}}
