/*
Theme Name: CRM IMOB Base Theme
Theme URI: https://crm-imob.local/themes/base
Author: CRM IMOB
Author URI: https://crm-imob.local
Description: Minimal first-party base theme for CRM IMOB, built to support Elementor and the native SiteKit frontend without third-party theme dependencies.
Version: 0.1.4
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: crm-imob-theme
*/

:root {
	--crmimob-theme-bg: #f6f7f8;
	--crmimob-theme-surface: #ffffff;
	--crmimob-theme-text: #111827;
	--crmimob-theme-muted: #6b7280;
	--crmimob-theme-border: #e5e7eb;
	--crmimob-theme-accent: #2563eb;
	--crmimob-theme-content-width: 1200px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--crmimob-theme-bg);
	color: var(--crmimob-theme-text);
	font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.6;
}

a {
	color: inherit;
}

img {
	max-width: 100%;
	height: auto;
}

.crmimob-theme-shell {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.crmimob-theme-header,
.crmimob-theme-footer {
	background: var(--crmimob-theme-surface);
	border-color: var(--crmimob-theme-border);
	border-style: solid;
}

.crmimob-theme-header {
	border-width: 0 0 1px;
}

.crmimob-theme-footer {
	border-width: 1px 0 0;
	margin-top: auto;
}

.crmimob-theme-header__inner,
.crmimob-theme-footer__inner,
.crmimob-theme-content {
	width: min(100% - 32px, var(--crmimob-theme-content-width));
	margin: 0 auto;
}

.crmimob-theme-header__inner,
.crmimob-theme-footer__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 18px 0;
}

.crmimob-theme-brand {
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
}

.crmimob-theme-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.crmimob-theme-nav a {
	text-decoration: none;
	color: var(--crmimob-theme-muted);
	font-size: 14px;
	font-weight: 600;
}

.crmimob-theme-content {
	padding: 32px 0 48px;
}

.crmimob-theme-card {
	background: var(--crmimob-theme-surface);
	border: 1px solid var(--crmimob-theme-border);
	border-radius: 16px;
	padding: 24px;
}

.crmimob-theme-entry-title {
	margin: 0 0 16px;
	font-size: clamp(28px, 5vw, 42px);
	line-height: 1.1;
}

.crmimob-theme-entry-content > *:first-child {
	margin-top: 0;
}

.crmimob-theme-entry-content > *:last-child {
	margin-bottom: 0;
}

.crmimob-theme-empty {
	color: var(--crmimob-theme-muted);
}

.elementor-page .crmimob-theme-content,
.page-template-elementor-canvas .crmimob-theme-content,
.page-template-elementor-header-footer .crmimob-theme-content {
	width: 100%;
	max-width: none;
	padding: 0;
}

@media (max-width: 782px) {
	.crmimob-theme-header__inner,
	.crmimob-theme-footer__inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* Correção Imóveis Invisíveis Mobile e Highlights (CRM IMOB) */
.imobcrm-reveal,
.imobcrm-grid article,
.imobcrm-featured-carousel article,
.imobcrm-card {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
}

* {
    -webkit-tap-highlight-color: transparent !important;
}
@media (max-width: 768px) {
    /* Força o carrossel a deslizar 1 card por vez no mobile redimensionando os slides */
    .imobcrm-featured-carousel__pair,
    .imobcrm-featured-carousel__slide {
        display: flex !important;
        flex-direction: row !important;
        width: 200vw !important;
        min-width: 200vw !important;
        flex: 0 0 200vw !important;
        gap: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .imobcrm-featured-carousel__item {
        flex: 0 0 100vw !important;
        min-width: 100vw !important;
        width: 100vw !important;
        /* Prevent visual overflow or spacing bugs since it takes exactly full screen */
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }
}
