:root{--blue:#1a3f8f;--red:#e2231a;--green:#2e9e4f;--ink:#1a1817;--pink:#ff2d8f;}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:#fff;}
body{font-family:'Roboto',Arial,Helvetica,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;padding-bottom:70px;}
a{color:var(--blue);text-decoration:none;}
.fa-solid,.fa-regular,.fa-brands{line-height:1;}
img{max-width:100%;}

/* header */
header{background:#fff;border-bottom:1px solid #d9d9d9;}
.hrow{padding:12px 16px;display:flex;align-items:center;gap:16px;}
.logo{display:inline-flex;align-items:center;}
.logo img{height:52px;width:auto;display:block;}
.hrow .right{margin-left:auto;display:flex;align-items:center;gap:16px;}
.btn-publicar{display:inline-flex;align-items:center;gap:7px;background:#ffe400;color:var(--ink);font-size:15px;font-weight:700;padding:10px 20px;border-radius:4px;}
.heart{color:var(--red);font-size:30px;line-height:1;}
.count{font-size:18px;color:#555;}
.menu-btn{background:none;border:0;cursor:pointer;color:var(--blue);font-size:34px;line-height:1;display:inline-flex;align-items:center;padding:0;}

/* breadcrumb */
.crumbs{border-bottom:1px solid #e7e3dd;padding:12px 16px;display:flex;align-items:center;gap:8px;font-size:14px;color:#8e8781;flex-wrap:wrap;}
.crumbs a{color:#635c56;} .crumbs .sep{color:#c3bcb4;}

/* profile layout */
.pf{display:grid;grid-template-columns:1fr 320px;gap:26px;align-items:start;max-width:1080px;margin:0 auto;padding:18px 16px 96px;}
.pf-rep{background:linear-gradient(#9a8412,#8a7510);color:#fff;border-radius:5px;padding:15px 18px;margin-bottom:16px;}
.pf-rep .t{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;}
.pf-rep .g{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:center;margin-top:12px;font-size:12px;opacity:.95;}
.pf-rep .g b{font-size:22px;font-weight:800;display:block;margin-top:4px;}
.pf h1{font-size:23px;font-weight:700;line-height:1.35;margin:0 0 14px;color:var(--ink);}
.pf-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
.pf-tag{background:#eaf1fb;border:1px solid #dbe6f6;border-radius:3px;padding:5px 11px;font-size:13px;color:#1a5cb0;}
.pf-tag.ok{background:#eafaef;border-color:#cfe0d4;color:#2e7a48;font-weight:600;}
.pf-meta{display:flex;gap:20px;font-size:13px;color:#777;margin-bottom:20px;flex-wrap:wrap;}
.pf-meta i{margin-right:5px;color:#9a9a9a;}
.pf-desc{font-size:15.5px;line-height:1.85;color:#222;}
.pf-desc p{margin:0 0 14px;}
.pf-desc .lembre{color:var(--red);}
.pf-h{font-size:18px;font-weight:700;margin:26px 0 12px;color:var(--ink);}
.pf-h .v{font-size:14px;color:var(--green);font-weight:600;margin-left:8px;}
.pf-gallery{columns:2 220px;column-gap:12px;}
.pf-gallery .ph{break-inside:avoid;margin-bottom:12px;aspect-ratio:3/4;background-color:#f0eee9;background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 10px,transparent 10px 20px);border:1px solid #e2e2e2;border-radius:5px;display:flex;align-items:flex-end;padding:10px;font-family:ui-monospace,Menlo,monospace;font-size:11px;color:#8e8781;}
.pf-chips{display:flex;flex-wrap:wrap;gap:6px;}
.pf-chip{background:#eaf1fb;border:1px solid #dbe6f6;border-radius:3px;padding:5px 12px;font-size:13px;color:#1a5cb0;}
.pf-map{height:240px;max-width:100%;background-color:#e8ece4;background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 10px,transparent 10px 20px);border:1px solid #ccc;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#6b7266;}
.pf-mapinfo{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#555;margin-top:8px;flex-wrap:wrap;gap:8px;}
.pf-mapinfo .r{display:flex;gap:14px;color:var(--blue);}
.pf-yellow{background:#ffffcc;border:1px solid #e8e39a;border-radius:5px;padding:15px;margin-top:24px;}
.pf-yellow .h{font-size:15px;font-weight:700;margin-bottom:12px;}
.pf-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;}
.pf-thumbs a{aspect-ratio:3/4;background-color:#e6e2dc;background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 10px,transparent 10px 20px);border:1px solid #ddd;border-radius:3px;display:block;}
.pf-cities{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 20px;font-size:13px;}
.pf-cities a{text-decoration:underline;}
.pf-report{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.pf-report .b{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:14px;font-weight:600;padding:11px 22px;border-radius:3px;cursor:pointer;}

/* sidebar */
.pf-side{position:sticky;top:16px;}
.pf-cover{position:relative;aspect-ratio:3/4;background-color:#eceae5;background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 10px,transparent 10px 20px);border:1px solid #ddd;border-radius:6px 6px 0 0;display:flex;align-items:flex-end;padding:12px;font-family:ui-monospace,Menlo,monospace;font-size:11px;color:#8e8781;}
.pf-now{background:var(--pink);color:#fff;text-align:center;font-size:13px;font-weight:700;padding:10px;}
.pf-price{border:1px solid #e7e3dd;border-top:0;border-radius:0 0 6px 6px;background:#fff;padding:20px;text-align:center;}
.pf-price .v{font-size:28px;font-weight:800;color:var(--blue);}
.pf-price .l{font-size:12px;color:#8e8781;margin-bottom:16px;}
.pf-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border-radius:6px;font-size:16px;font-weight:700;cursor:pointer;color:#fff;}
.pf-wa{background:var(--green);} .pf-tel{background:var(--blue);margin-top:10px;}
.pf-safe{font-size:12px;color:#8e8781;line-height:1.65;border-top:1px solid #eee;margin-top:18px;padding-top:14px;}

/* fixed contact bar */
.pf-bar{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #d9d9d9;padding:9px 16px;display:flex;align-items:center;gap:10px;z-index:60;box-shadow:0 -2px 8px rgba(0,0,0,.08);}
.pf-bar .btn2{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:15px;font-weight:700;padding:12px 22px;border-radius:4px;cursor:pointer;}
.pf-bar .phone{background:var(--blue);} .pf-bar .wa{background:var(--green);}
.pf-bar .fav{margin-left:auto;color:var(--red);font-size:26px;cursor:pointer;}

/* drawer */
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99;}
.drawer{position:fixed;top:0;right:0;height:100%;width:290px;max-width:85vw;background:#fff;z-index:100;box-shadow:-4px 0 24px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .22s ease;overflow-y:auto;}
.drawer.open{transform:translateX(0);}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #ededed;}
.drawer-title{font-weight:900;color:var(--blue);font-size:19px;}
.drawer-x{background:none;border:0;font-size:22px;color:#333;cursor:pointer;}
.drawer-nav{display:flex;flex-direction:column;padding:6px 0 20px;}
.drawer-nav a{display:flex;align-items:center;gap:12px;padding:12px 20px;font-size:15px;color:var(--ink);font-weight:500;}
.drawer-nav a:hover{background:#f4f6fb;color:var(--blue);}
.drawer-nav a i{width:20px;text-align:center;color:#8a8a8a;}
.drawer-sep{padding:14px 20px 6px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9a9a9a;font-weight:700;}
[hidden]{display:none !important;}

@media(max-width:820px){.pf{grid-template-columns:1fr;}.pf-side{position:static;}}
