:root{
  --ink:#181511; --bg:#FFF7EA; --white:#fff;
  --coral:#FF5A52; --coral-dark:#E2453E; --coral-tint:#FFE4E1;
  --teal:#0FB8A6; --teal-dark:#0B9284; --teal-tint:#DDF6F2;
  --line:rgba(24,21,17,0.12); --shadow:0 10px 26px rgba(24,21,17,0.09);
}

.verify-badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 10px;border:1px solid #d8d2c8;border-radius:999px;background:#fff;font:700 .64rem 'Work Sans',sans-serif;color:#5f5a52;white-space:nowrap}
.verify-badge.email{border-color:#9fded6;background:#edf9f7;color:#087c70}
.verify-badge.email::before{content:"✓";margin-right:4px;font-weight:900}
.verify-badge.business{border-color:#88cfc5;background:#dff6f2;color:#066d63}
.verify-badge.place{border-color:#0fb8a6;background:#0fb8a6;color:#fff}
.verify-badge.none{background:#f7f5f1;color:#777168}
.verification-row{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}

.fav-btn{display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; border:0; background:rgba(255,255,255,0.92); box-shadow:0 3px 10px rgba(24,21,17,0.18); font-size:1.05rem; line-height:1; cursor:pointer; transition:transform .12s ease;}
.fav-btn:hover{transform:scale(1.08);}
.fav-btn.pop{animation:fav-pop .26s ease;}
.fav-btn.on{background:#fff;}
.fav-btn.pending{opacity:0.6; pointer-events:none;}
.fav-btn[data-wide]{width:auto; height:auto; border-radius:100px; padding:12px 18px; gap:8px; font-weight:800; font-family:'Work Sans',sans-serif; font-size:0.95rem; border:2px solid var(--ink); color:var(--ink); box-shadow:none;}
.fav-btn[data-wide].on{border-color:var(--coral); color:var(--coral-dark); background:var(--coral-tint);}
@keyframes fav-pop{0%{transform:scale(1);}45%{transform:scale(1.35);}100%{transform:scale(1);}}
.fav-toast{position:fixed; left:50%; bottom:28px; transform:translate(-50%,12px); background:var(--ink); color:#fff; padding:12px 20px; border-radius:100px; font-family:'Work Sans',sans-serif; font-weight:700; font-size:0.9rem; box-shadow:0 12px 30px rgba(24,21,17,0.28); opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease; z-index:300;}
.fav-toast.show{opacity:1; transform:translate(-50%,0);}
*{box-sizing:border-box;}
body{margin:0; background:var(--bg); color:var(--ink); font-family:'Work Sans', sans-serif; line-height:1.5;}
h1,h2,h3{font-family:'Space Grotesk', sans-serif; margin:0; line-height:1.08;}
.wrap{max-width:1040px; margin:0 auto; padding:0 24px;}
.header{border-bottom:1px solid var(--line); background:rgba(255,247,234,0.92); position:sticky; top:0; z-index:10; backdrop-filter:blur(10px);}
.header .wrap{max-width:1480px; min-height:64px; display:flex; justify-content:space-between; align-items:center; gap:16px;}
.logo{display:flex; align-items:center; gap:9px; font-family:'Space Grotesk', sans-serif; font-weight:700; font-size:1.15rem; color:inherit; text-decoration:none;}
.logo-mark{width:32px; height:32px; flex-shrink:0; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='9' fill='%23FF5A52'/%3E%3Crect x='10' y='6.5' width='12' height='9.6' rx='3.4' fill='%23fff'/%3E%3Crect x='7.6' y='15.4' width='16.8' height='4.9' rx='2.3' fill='%23fff'/%3E%3Crect x='14.3' y='19.9' width='3.4' height='3.3' fill='%23fff'/%3E%3Crect x='9' y='22.5' width='14' height='2.9' rx='1.45' fill='%23fff'/%3E%3C/svg%3E") center/contain no-repeat;}
.logo:hover .logo-mark{transform:rotate(-6deg) scale(1.05); transition:transform .18s ease;}
.nav{display:flex; gap:6px; align-items:center; flex-wrap:nowrap;}
.nav-toggle{display:none; align-items:center; gap:8px; border:1px solid var(--line); border-radius:100px; background:#fff; color:var(--ink); padding:8px 12px; font:800 .82rem 'Work Sans',sans-serif; cursor:pointer;}
.nav-toggle-icon{display:grid; gap:3px; width:18px;}
.nav-toggle-icon i{display:block; height:2px; border-radius:2px; background:currentColor; transition:transform .15s,opacity .15s;}
.nav-toggle.open .nav-toggle-icon i:nth-child(1){transform:translateY(5px) rotate(45deg);}
.nav-toggle.open .nav-toggle-icon i:nth-child(2){opacity:0;}
.nav-toggle.open .nav-toggle-icon i:nth-child(3){transform:translateY(-5px) rotate(-45deg);}
.nav a{font-weight:700; font-size:0.9rem; text-decoration:none; border-radius:100px; padding:9px 14px; color:inherit; white-space:nowrap; transition:background .15s, color .15s;}
.nav a:not(.primary):hover{background:var(--coral-tint); color:var(--coral-dark);}
.nav .primary{background:var(--coral); color:#fff; font-weight:800; padding:10px 18px; box-shadow:0 4px 0 var(--coral-dark); transition:transform .12s, box-shadow .12s;}
.nav .primary:hover{background:var(--coral); transform:translateY(2px); box-shadow:0 2px 0 var(--coral-dark);}
.lang-switch{display:inline-flex; border:1px solid var(--line); border-radius:100px; overflow:hidden; margin-right:4px;}
.lang-switch button{border:none; background:transparent; padding:7px 10px; font-family:'Space Mono', monospace; font-size:0.72rem; font-weight:700; cursor:pointer; color:var(--ink); opacity:0.5;}
.lang-switch button.on{background:var(--ink); color:#fff; opacity:1;}
main{padding:58px 0 80px;}
.eyebrow{display:inline-flex; gap:8px; align-items:center; font-family:'Space Mono', monospace; font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--coral-dark);}
.dot{width:7px; height:7px; border-radius:50%; background:var(--teal);}
h1{font-size:clamp(2.3rem, 5vw, 4rem); margin:14px 0 12px;}
.sub{margin:0; opacity:0.75; font-size:1.05rem; max-width:640px;}
.btn{display:inline-flex; align-items:center; justify-content:center; min-height:48px; border-radius:100px; border:2px solid var(--ink); background:#fff; color:var(--ink); padding:12px 22px; font-family:'Work Sans', sans-serif; font-weight:800; cursor:pointer; text-decoration:none; font-size:1rem;}
.btn.coral{background:var(--coral); color:#fff; border-color:var(--coral); box-shadow:0 5px 0 var(--coral-dark);}
.btn.teal{background:var(--teal); color:#fff; border-color:var(--teal); box-shadow:0 5px 0 var(--teal-dark);}
.btn.ghost{background:transparent;}
label{display:block; margin-bottom:6px; font-family:'Space Mono', monospace; font-size:0.68rem; letter-spacing:0.06em; text-transform:uppercase; opacity:0.55;}
input,select,textarea{width:100%; padding:12px 13px; border:2px solid transparent; border-radius:10px; background:var(--bg); font:inherit;}
input:focus,select:focus,textarea:focus{outline:none; border-color:var(--teal);}
textarea{min-height:96px; resize:vertical;}
.card{background:#fff; border-radius:16px; padding:18px; box-shadow:var(--shadow); border-top:4px solid var(--coral);}
.card.pro{border-top-color:var(--teal);}
.card-image-link,.card-link{display:block;color:inherit;text-decoration:none;}
.card-image-link{height:100%;}
.card-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.card-amenities span{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--bg);font-size:.7rem;font-weight:700;white-space:nowrap;}
.card-foot a{font-weight:850;text-decoration:none;}
.card-apply{color:var(--teal-dark);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.card-share{color:#168b45!important;}
.card-view{color:var(--coral-dark)!important;white-space:nowrap;}
.card-foot a:hover{text-decoration:underline;}
.pill{display:inline-flex; padding:5px 9px; border-radius:100px; background:var(--coral-tint); color:var(--coral-dark); font-family:'Space Mono', monospace; font-size:0.62rem; text-transform:uppercase;}
.pill.teal{background:var(--teal-tint); color:var(--teal-dark);}
.tag{font-family:'Space Mono', monospace; font-size:0.63rem; text-transform:uppercase; opacity:0.55;}
.badge-new{display:inline-flex; align-items:center; gap:4px; background:var(--teal); color:#fff; font-family:'Space Mono', monospace; font-size:0.6rem; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; padding:3px 8px; border-radius:100px;}
.avail{display:inline-flex; align-items:center; gap:5px; font-size:0.78rem; font-weight:700;}
.avail::before{content:""; width:8px; height:8px; border-radius:50%; background:currentColor;}
.avail.direct{color:var(--teal-dark);}
.avail.in_overleg{color:#946200;}
.amenities{display:flex; flex-wrap:wrap; gap:6px; margin-top:10px;}
.amenities span{background:var(--bg); border:1px solid var(--line); border-radius:100px; padding:4px 10px; font-size:0.76rem; font-weight:600;}
.wa-btn{background:#25D366 !important; border-color:#25D366 !important; color:#fff !important;}
.listing-share{display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:18px 0 4px; padding:12px 0 2px; border-top:1px solid var(--line);}
.listing-share-title{width:100%; font:700 .68rem 'Space Mono',monospace; letter-spacing:.06em; text-transform:uppercase; opacity:.58;}
.share-btn{display:inline-flex; align-items:center; justify-content:center; min-height:36px; border:1px solid var(--line); border-radius:100px; background:#fff; color:var(--ink); padding:7px 12px; font:800 .82rem 'Work Sans',sans-serif; text-decoration:none; cursor:pointer;}
.share-btn:hover{border-color:var(--teal); color:var(--teal-dark);}
.share-btn.whatsapp{background:#25D366; border-color:#25D366; color:#fff;}
.share-btn.facebook{background:#1877F2; border-color:#1877F2; color:#fff;}
.share-status{font-size:.8rem; font-weight:700; color:var(--teal-dark);}
.msg{font-weight:700; font-size:0.9rem;}
.hp{position:absolute; left:-9999px; width:1px; height:1px; opacity:0; pointer-events:none;}
footer{border-top:1px solid var(--line); padding:24px 0; text-align:center; opacity:0.72; font-size:0.86rem;}
footer a{color:inherit;}
.cookie-settings{border:0; background:transparent; color:inherit; font:inherit; text-decoration:underline; cursor:pointer; padding:0;}
.cookiebar{position:fixed; left:16px; right:16px; bottom:16px; max-width:860px; margin:0 auto; background:var(--ink); color:#fff; border-radius:14px; padding:16px 18px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:16px; box-shadow:0 12px 34px rgba(0,0,0,0.28); z-index:200; font-size:0.9rem;}
.cookiebar .cb-copy{display:grid; gap:4px;}
.cookiebar strong{font-family:'Space Grotesk', sans-serif; font-size:1.05rem;}
.cookiebar .cb-text{line-height:1.45; opacity:0.88;}
.cookiebar .cb-actions{display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap;}
.cookiebar a.cb-more{color:#fff; text-decoration:underline; font-weight:700; white-space:nowrap;}
.cookiebar button{border:2px solid #fff; border-radius:100px; padding:10px 16px; font-family:inherit; font-weight:800; cursor:pointer; white-space:nowrap;}
.cookiebar .cb-necessary{background:transparent; color:#fff;}
.cookiebar .cb-accept{background:var(--coral); color:#fff; border-color:var(--coral);}
.fsbot{position:fixed; right:18px; bottom:18px; z-index:180; font-family:'Work Sans',sans-serif;}
.fsbot-toggle{display:flex; align-items:center; gap:9px; border:0; border-radius:100px; background:var(--ink); color:#fff; padding:10px 15px 10px 10px; box-shadow:0 10px 24px rgba(24,21,17,.22); cursor:pointer; font:inherit; font-weight:800;}
.fsbot-toggle span{display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--coral); color:#fff;}
.fsbot-panel{position:absolute; right:0; bottom:58px; width:min(360px,calc(100vw - 28px)); max-height:min(620px,calc(100vh - 96px)); background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:0 18px 46px rgba(24,21,17,.22); overflow:hidden; transform:translateY(8px) scale(.98); opacity:0; pointer-events:none; transition:opacity .16s ease, transform .16s ease;}
.fsbot.open .fsbot-panel{opacity:1; transform:translateY(0) scale(1); pointer-events:auto;}
.fsbot-head{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; border-bottom:1px solid var(--line); background:var(--bg);}
.fsbot-head strong{font-family:'Space Grotesk',sans-serif;}
.fsbot-close{border:0; background:transparent; width:30px; height:30px; border-radius:50%; cursor:pointer; font-size:1.35rem; line-height:1;}
.fsbot-close:hover{background:var(--coral-tint);}
.fsbot-body{display:grid; gap:10px; padding:14px; max-height:min(540px,calc(100vh - 160px)); overflow:auto;}
.fsbot-msg{background:var(--bg); border-radius:14px; padding:12px; font-size:.92rem;}
.fsbot-msg.user{justify-self:end; background:var(--teal); color:#fff; max-width:78%;}
.fsbot-actions{display:flex; gap:8px; flex-wrap:wrap; margin-top:10px;}
.fsbot-actions button,.fsbot-form button,.fsbot-ai-form button{border:2px solid var(--ink); background:#fff; color:var(--ink); border-radius:100px; padding:8px 12px; font:inherit; font-size:.84rem; font-weight:800; cursor:pointer;}
.fsbot-actions button:hover,.fsbot-form button:hover,.fsbot-ai-form button:hover{background:var(--ink); color:#fff;}
.fsbot-form,.fsbot-ai-form{display:grid; grid-template-columns:1fr auto; gap:8px; margin-top:10px;}
.fsbot-form input,.fsbot-ai-form input{border:1px solid var(--line); background:#fff; border-radius:10px; padding:10px 11px; min-width:0; font:inherit;}
.fsbot-msg.thinking{opacity:.72; font-style:italic;}
.fsbot-msg a{color:var(--teal-dark); font-weight:800;}
.fsbot-result{display:grid; gap:2px; margin-top:9px; padding:10px 11px; border:1px solid var(--line); border-radius:12px; color:inherit; text-decoration:none; background:#fff;}
.fsbot-result:hover{border-color:var(--teal);}
.fsbot-result span{font-size:.78rem; opacity:.72;}
@media(max-width:720px){
  .header .wrap{position:relative; flex-wrap:wrap; gap:10px; padding-top:10px; padding-bottom:10px;}
  .nav-toggle{display:inline-flex; margin-left:auto;}
  .nav{display:none; width:100%; flex-direction:column; align-items:stretch; gap:3px; padding:10px 0 2px; border-top:1px solid var(--line);}
  .nav.open{display:flex;}
  .nav a{display:block; width:100%; padding:10px 12px; font-size:.9rem;}
  .nav .lang-switch{align-self:flex-start; margin:0 0 4px;}
  .cookiebar{grid-template-columns:1fr; left:12px; right:12px; bottom:12px;}
  .cookiebar .cb-actions{justify-content:flex-start;}
}
@media(max-width:460px){
  .cookiebar button,.cookiebar a.cb-more{width:100%; text-align:center;}
  .fsbot{right:12px; bottom:12px;}
  .fsbot-toggle strong{display:none;}
  .fsbot-panel{bottom:50px;}
}

/* Marketplace cleanup — 2026-09-05 */
:focus-visible{outline:3px solid var(--teal-dark);outline-offset:3px}
.btn.coral,.btn.teal,.btn.ghost,.nav .primary{box-shadow:none}.btn.coral,.nav .primary{color:var(--ink)}
.nav-toggle,.lang-switch button,.fav-btn{min-height:44px;min-width:44px}
input,select,textarea{font-size:16px}button,a,input,select,textarea{touch-action:manipulation}
.card,.side-card,form{min-width:0}.card-link{text-decoration:none;color:inherit}
.card-amenities{display:flex;gap:6px 12px;flex-wrap:wrap}
@media(max-width:600px){.wrap{padding-left:20px;padding-right:20px}footer{padding-bottom:88px}.cookiebar{max-height:70dvh;overflow:auto}}
