:root{color-scheme:light;--brown-950: #2a1810;--brown-900: #3d2618;--brown-800: #5c3d2e;--brown-700: #6f4e37;--brown-600: #8b5e3c;--brown-500: #a67c52;--brown-400: #c4a882;--brown-200: #e8dcc8;--brown-100: #f0e6d8;--brown-50: #faf5ed;--bg: var(--brown-50);--surface: #fffdf8;--text: var(--brown-950);--muted: #6b5344;--accent: var(--brown-700);--accent-bright: var(--brown-600);--accent-soft: var(--brown-200);--border: #e5d9cc;--shadow: 0 12px 40px rgba(42, 24, 16, .1);--radius: 14px;--font: "DM Sans", system-ui, sans-serif;--font-display: "Fraunces", Georgia, serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font);background:radial-gradient(1100px 560px at 8% -8%,#f0e0d0 0%,transparent 52%),radial-gradient(880px 480px at 92% 4%,#e8d4bc 0%,transparent 48%),var(--bg);color:var(--text);min-height:100vh;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}img{max-width:100%;display:block}.container{width:min(1120px,100% - 2rem);margin-inline:auto}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf5ede0;border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.brand{display:inline-flex;align-items:center;line-height:0}.brand:hover{text-decoration:none}.brand-logo{height:clamp(44px,8vw,56px);width:auto;max-width:min(220px,52vw);object-fit:contain;object-position:left center;border-radius:16px;overflow:hidden;box-shadow:0 4px 14px #2a18101f}.nav{display:flex;gap:1.25rem;align-items:center}.nav a{font-weight:500;color:var(--muted)}.nav a.nav-admin-painel{padding:.35rem .75rem;border-radius:999px;font-weight:600;font-size:.88rem;color:var(--surface);background:linear-gradient(180deg,var(--accent-bright),var(--accent));box-shadow:0 2px 10px #3d261838}.nav a.nav-admin-painel:hover{text-decoration:none;filter:brightness(1.06)}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.chip{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.4rem .9rem;border-radius:999px;font-size:.9rem;font-weight:500}.chip:hover{border-color:var(--brown-400)}.chip.active{background:var(--brown-800);color:#fffef9;border-color:var(--brown-800)}.catalogo-filters-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-top:1.25rem}.catalogo-filters-toggle{font:inherit;font-weight:600;cursor:pointer;padding:.45rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);flex-shrink:0}.catalogo-filters-toggle:hover{border-color:var(--brown-400)}.catalogo-filters-summary{display:flex;align-items:center;min-width:0;flex:1;font-size:.88rem;line-height:1.35;color:var(--muted)}.catalogo-filters-summary-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.catalogo-filters-count{font-weight:600;color:var(--brown-800);white-space:nowrap}.catalogo-filters-sep{flex-shrink:0;color:var(--brown-400);font-weight:500;-webkit-user-select:none;user-select:none}.catalogo-filters-resumo{flex:1 1 10rem;min-width:0}.catalogo-fetching{font-weight:500;color:var(--accent)}.catalogo-soft-error{margin:.75rem 0 0;padding:.65rem .85rem;border-radius:10px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:.9rem}.catalogo-soft-error-retry{font:inherit;font-weight:600;cursor:pointer;margin-left:.35rem;padding:0;border:none;background:none;color:var(--brown-800);text-decoration:underline;text-underline-offset:2px}.catalogo-filters-lead{margin:0 0 .75rem;font-size:.88rem;color:var(--muted)}.catalogo-filters{margin-top:1rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.catalogo-filters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem 1rem;align-items:end}.catalogo-filters-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:600;color:var(--brown-700)}.catalogo-filters-grid input,.catalogo-filters-grid select{font:inherit;padding:.45rem .55rem;border-radius:8px;border:1px solid var(--border);background:#fffef9;color:var(--text)}.catalogo-filters-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.catalogo-filters-actions .button{margin-top:0}.catalogo-filters-actions .button,.catalogo-filters-actions .btn-secondary{flex:1 1 0;min-width:0;min-height:3rem;padding:.65rem 1rem;box-sizing:border-box;align-self:stretch;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-weight:600}.catalogo-filters-actions .btn-secondary{border-width:2px}.catalogo-filters-hint{font-size:.88rem;color:var(--muted)}.admin-shell{min-height:100vh;background:var(--bg)}.admin-header{border-bottom:1px solid var(--border);background:#fffdf8eb}.admin-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;flex-wrap:wrap}.admin-brand{font-family:var(--font-display);font-weight:700;font-size:1.15rem}.admin-actions{display:flex;gap:.75rem;align-items:center}.admin-main{padding:2rem 0 3rem}.admin-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow);margin-bottom:1.5rem}.admin-panel h2{margin:0 0 1rem;font-size:1.05rem}.admin-form-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.admin-form-grid label{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem;font-weight:600;color:var(--muted)}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{font:inherit;padding:.45rem .55rem;border:1px solid var(--border);border-radius:8px;background:#fff}.admin-form-grid textarea{grid-column:1 / -1;min-height:88px;resize:vertical}.admin-form-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:10px;background:transparent;border:1px solid var(--border);font-weight:600;cursor:pointer;font:inherit}.btn-secondary:hover{background:var(--brown-100)}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;padding:.55rem .65rem;border-bottom:1px solid var(--border)}.admin-table th{color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.admin-table-actions{display:flex;gap:.4rem;flex-wrap:wrap}.link-button{background:none;border:none;padding:0;font:inherit;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-button.danger{color:#b91c1c}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;box-shadow:var(--shadow)}.login-brand-logo{height:56px;width:auto;max-width:100%;object-fit:contain;object-position:left center;margin-bottom:1rem;border-radius:16px;overflow:hidden;box-shadow:0 4px 14px #2a18101a}.login-card h1{margin:0 0 .5rem;font-family:var(--font-display);font-size:1.35rem}.login-card p{margin:0 0 1.25rem;color:var(--muted);font-size:.92rem}.login-card label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--muted)}.login-card input{font:inherit;padding:.55rem .65rem;border:1px solid var(--border);border-radius:8px}.login-card .button{width:100%;margin-top:1.25rem;border:none;cursor:pointer;font:inherit}.main{flex:1}.site-footer{border-top:1px solid var(--border);background:#fffdf8b8;margin-top:3rem}.footer-inner{padding:1.5rem 0;color:var(--muted);font-size:.9rem}.footer-brand{margin:0 0 .25rem;font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--brown-900)}.footer-creci{margin:0 0 .5rem;font-size:.82rem;font-weight:600;letter-spacing:.04em;color:var(--brown-700)}.footer-note{margin:0;font-size:.88rem}.admin-brand-link{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit}.admin-brand-link:hover{text-decoration:none;opacity:.92}.admin-brand-logo{height:40px;width:auto;max-width:120px;object-fit:contain;object-position:left center;border-radius:12px;overflow:hidden}.page{padding:2rem 0 3rem}.page-head,.catalogo-head{margin-bottom:2rem}.catalogo-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(1.35rem,4vw,2.75rem);align-items:center;margin-bottom:1.5rem}.catalogo-hero-text{min-width:0}.catalogo-hero-title{margin-bottom:.5rem}.catalogo-hero-sub{max-width:38ch;line-height:1.55}.catalogo-hero-visual{min-width:0}.catalogo-hero-image-wrap{position:relative;border-radius:clamp(16px,3vw,24px) clamp(12px,2vw,18px) clamp(12px,2vw,18px) clamp(16px,3vw,24px);overflow:hidden;box-shadow:var(--shadow);background:var(--brown-200)}.catalogo-hero-image{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;vertical-align:middle}.catalogo-hero-highlights{position:absolute;left:50%;bottom:.85rem;transform:translate(-50%);width:calc(100% - 1.75rem);max-width:20.5rem;margin:0;padding:.65rem .35rem;list-style:none;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:stretch;background:var(--surface);border-radius:14px;box-shadow:0 10px 32px #2a18102e;border:1px solid rgba(229,217,204,.9)}.catalogo-hero-highlight{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.4rem;padding:.35rem .2rem;text-align:center;font-size:.72rem;font-weight:600;line-height:1.25;color:var(--brown-800);border-right:1px solid var(--border)}.catalogo-hero-highlight:last-child{border-right:none}.catalogo-hero-highlight-icon{flex-shrink:0;color:var(--brown-700)}@media(max-width:900px){.catalogo-hero{grid-template-columns:1fr;margin-bottom:1.25rem}.catalogo-hero-sub{max-width:none}.catalogo-hero-highlights{max-width:min(20.5rem,100%);bottom:.65rem}}.page-title{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.35rem);margin:0 0 .5rem;letter-spacing:-.03em}.page-sub{margin:0;color:var(--muted);max-width:52ch}.section{margin-bottom:2.5rem}.section-title{font-size:1.1rem;font-weight:600;margin:0 0 1rem;color:var(--muted)}.grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-featured{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);box-shadow:0 18px 48px #2a181024}.card.featured{border-color:var(--brown-400)}.card-media-link:hover{text-decoration:none}.card-media{position:relative;aspect-ratio:4 / 3;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:.75rem;left:.75rem;background:var(--accent);color:#fff;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.25rem .55rem;border-radius:999px}.badge-float{top:1rem;left:1rem}.card-media-tags{position:absolute;bottom:.75rem;left:.75rem;right:.75rem;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.finalidade-pill{font-size:.78rem;font-weight:600;padding:.2rem .55rem;border-radius:999px}.finalidade-pill.finalidade-compra{background:#e8dcc8f2;color:var(--brown-900)}.finalidade-pill.finalidade-aluguel{background:#dce8f0f2;color:#1a3a4a}.tipo-pill{background:#ffffffeb;color:var(--text);font-size:.78rem;font-weight:600;padding:.2rem .55rem;border-radius:999px}.tipo-pill.tag{position:static}.tipo-pill.inline{display:inline-block;background:var(--accent-soft);color:var(--brown-800)}.finalidade-pill.inline{display:inline-block}.detalhe-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;align-items:center}.card-body{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.card-title{font-size:1.05rem;margin:0;font-weight:650;line-height:1.25}.card-title a:hover{color:var(--accent)}.card-meta{margin:0;font-size:.88rem;color:var(--muted)}.stats{list-style:none;padding:0;margin:.35rem 0 0;display:flex;gap:1rem;flex-wrap:wrap}.stats.large{gap:1.25rem;margin:1rem 0}.stats li{display:flex;flex-direction:column;gap:.1rem}.stat-value{font-weight:700;font-size:1.05rem}.stat-label{font-size:.75rem;color:var(--muted);text-transform:lowercase}.price{margin:auto 0 0;padding-top:.65rem;font-weight:700;font-size:1.1rem;color:var(--accent)}.loading{color:var(--muted)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.error-panel h1{margin-top:0;font-size:1.25rem}.hint{font-size:.9rem;color:var(--muted)}code{font-size:.88em;background:var(--brown-100);padding:.1rem .35rem;border-radius:6px}.breadcrumb{display:flex;gap:.5rem;align-items:center;font-size:.9rem;color:var(--muted);margin-bottom:1.25rem}.detalhe-layout{display:grid;gap:1.75rem}@media(min-width:900px){.detalhe-layout{grid-template-columns:1.1fr 1fr;align-items:start}}.detalhe-media.media-carousel{border-radius:calc(var(--radius) + 4px);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}.media-carousel{position:relative;background:#2a2420}.media-carousel:focus-visible{outline:2px solid var(--brown-400);outline-offset:3px}.media-carousel--empty{min-height:200px;display:flex;align-items:center;justify-content:center;background:var(--brown-100)}.media-carousel-placeholder{color:var(--muted);font-size:.95rem}.media-carousel-viewport{aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;background:#1c1917}.media-carousel-media{display:block}.media-carousel-media--img{width:100%;height:100%;object-fit:cover}.media-carousel-media--video{width:100%;height:100%;max-height:min(56vh,520px);object-fit:contain}.badge-carousel{z-index:5}.media-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:none;border-radius:50%;background:#fffdf8f0;color:var(--brown-900);cursor:pointer;z-index:4;box-shadow:0 4px 16px #2a181033;transition:transform .15s ease,background .15s ease}.media-carousel-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.05)}.media-carousel-arrow--prev{left:10px}.media-carousel-arrow--next{right:10px}.media-carousel-arrow--prev:after,.media-carousel-arrow--next:after{content:"";display:block;width:10px;height:10px;margin:0 auto;border:2px solid currentColor;border-width:0 0 2px 2px}.media-carousel-arrow--prev:after{transform:rotate(45deg);margin-left:6px}.media-carousel-arrow--next:after{transform:rotate(-135deg);margin-right:6px}.media-carousel-dots{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:.45rem;padding:10px 12px;background:linear-gradient(transparent,#1c19178c);z-index:4}.media-carousel-dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:#ffffff73;cursor:pointer;transition:transform .15s ease,background .15s ease}.media-carousel-dot:hover{background:#ffffffbf}.media-carousel-dot.active{background:#fffef9;transform:scale(1.2)}.media-carousel-counter{position:absolute;top:12px;right:12px;margin:0;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#fffef9;background:#2a18108c;z-index:4;letter-spacing:.04em}@media(max-width:600px){.media-carousel-arrow{width:36px;height:36px}.media-carousel-arrow--prev{left:6px}.media-carousel-arrow--next{right:6px}}.admin-midias-block{margin-top:.25rem}.admin-midias-title{margin:0 0 .35rem;font-weight:700;font-size:.95rem;color:var(--brown-900)}.admin-midias-hint{margin:0 0 .75rem;font-size:.85rem;color:var(--muted);line-height:1.45}.admin-midias-input-hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.admin-midias-list{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.65rem}.admin-midia-item{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:center;padding:.5rem .65rem;background:var(--brown-50);border:1px solid var(--border);border-radius:10px}.admin-midia-thumb{width:72px;height:54px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.admin-midia-video-label{display:inline-flex;align-items:center;justify-content:center;width:72px;height:54px;border-radius:8px;background:var(--brown-200);font-size:.72rem;font-weight:700;color:var(--brown-800);text-transform:uppercase;letter-spacing:.04em}.admin-midia-kind{font-size:.82rem;font-weight:600;color:var(--brown-800)}.admin-capa-block{margin-top:.25rem}.admin-capa-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start}.admin-capa-preview-wrap{flex:0 0 auto;width:min(100%,280px);border-radius:14px;overflow:hidden;border:1px solid var(--border);background:var(--brown-50);aspect-ratio:16 / 10;display:flex;align-items:center;justify-content:center}.admin-capa-preview{width:100%;height:100%;object-fit:cover;display:block}.admin-capa-placeholder{padding:1.5rem;text-align:center;font-size:.88rem;color:var(--muted)}.admin-capa-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.admin-midia-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.detalhe-title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.1rem);margin:0 0 .35rem;letter-spacing:-.02em}.detalhe-price{margin:0 0 .5rem;font-size:1.35rem;font-weight:700;color:var(--accent)}.detalhe-loc{margin:0 0 .25rem;color:var(--muted)}.detalhe-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:stretch;margin-top:.75rem;margin-bottom:.25rem}.detalhe-actions .button{margin-top:0;margin-bottom:0}.button.button-detalhe{min-height:2.75rem;padding:.6rem 1.15rem;box-sizing:border-box;border:2px solid transparent;gap:.5rem}.button.button-detalhe-outline{background:var(--surface);color:var(--accent);border-color:var(--accent);box-shadow:none}.button.button-detalhe-outline:hover{background:var(--accent-soft);filter:none}.button-detalhe-icon{flex-shrink:0;display:block}.button-detalhe-icon-whatsapp{color:#fffef9}.detalhe-share-hint{margin:0 0 .5rem;font-size:.88rem;color:var(--muted)}.prose h2{font-size:1rem;margin:1.5rem 0 .5rem}.prose p{margin:0;color:var(--brown-800)}.button{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:10px;background:linear-gradient(180deg,var(--accent-bright),var(--accent));color:#fffef9;font-weight:600;margin-top:1rem;box-shadow:0 4px 14px #3d261847}.button:hover{text-decoration:none;filter:brightness(1.06)}
