/* Geral */

:root{
  --color-primary:#FF5E03;
  --color-secondary:#FAAA15;
  --color-text:#424242;
  --color-muted:#6b7280;
  --color-border:#e5e7eb;
  --color-bg:#ffffff;
  --font-title:'Poppins',sans-serif;
  --font-text:'Inter',sans-serif;
}

body{ font-family:var(--font-text); color:var(--color-text); }

.site-header{ background:var(--color-bg); }
.header-top{ background:var(--color-bg); padding-top:10px; padding-bottom:10px; }
.header-inner{ min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.header-left{ display:flex; align-items:center; gap:14px; }
.icon-btn{ border:0; background:transparent; padding:10px; line-height:0; cursor:pointer; }
.icon-btn i{ font-size:30px; color:var(--color-primary); }
.header-logo img{ display:block; height:auto; }
.header-actions{ display:flex; align-items:center; gap:18px; }
.header-link{ text-decoration:none; font-family:var(--font-text); font-weight:600; color:var(--color-text); }
.header-link:hover{ color:var(--color-primary); }
.header-strip{ height:48px; background:var(--color-primary); }

.btn-shine{ font-family:var(--font-title); background:linear-gradient(135deg,#FF5E03,#FAAA15); border:0; color:#fff; position:relative; overflow:hidden; border-radius:6px; font-weight:700; padding:10px 14px; letter-spacing:.02em; transition:transform .25s ease, box-shadow .25s ease, filter .25s ease; }
.btn-shine::before{ content:""; position:absolute; top:0; left:-75%; width:50%; height:100%; background:linear-gradient(120deg,transparent,rgba(255,255,255,.45),transparent); transform:skewX(-25deg); }
.btn-shine:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(255,94,3,.35); color:#fff; }
.btn-shine:hover::before{ animation:btn-shine-move .9s ease forwards; }

@keyframes btn-shine-move{ from{ left:-75%; } to{ left:130%; } }

.offcanvas-menu{ width:320px; }
.offcanvas-head{ border-bottom:1px solid var(--color-border); }
.offcanvas-brand img{ display:block; height:auto; }
.offcanvas-body-custom{ padding-top:14px; }

.nav-title{ margin:0 0 10px 0; font-family:var(--font-text); font-weight:700; color:var(--color-primary); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.nav-list{ list-style:none; margin:0; padding:0; }
.nav-item + .nav-item{ margin-top:4px; }
.nav-link{ display:block; padding:10px; border-radius:8px; text-decoration:none; font-family:var(--font-text); font-weight:600; color:var(--color-text); }
.nav-link:hover{ background:rgba(255,94,3,.08); color:var(--color-primary); }

.divider{ border:0; border-top:1px solid var(--color-border); margin:14px 0; }

.menu-close-wrap{ display:flex; justify-content:flex-end; margin-bottom:10px; }
.menu-close-btn{ display:inline-flex; align-items:center; gap:10px; border:0; background:rgba(255,94,3,.08); color:var(--color-primary); padding:10px 12px; border-radius:10px; font-family:var(--font-text); font-weight:800; cursor:pointer; }
.menu-close-btn i{ font-size:18px; }
.menu-close-text{ font-family:var(--font-text); font-size:14px; }
.menu-close-btn:hover{ background:rgba(255,94,3,.12); }

/* Home */
.section-title{ font-family:var(--font-title); font-weight:400; margin:0 0 22px 0; color:var(--color-text); font-size:26px !important; }
.section-title-center{ text-align:center; }
.section-title-highlight{ position:relative; padding-bottom:14px; }
.section-title-highlight::after{ content:""; position:absolute; left:50%; bottom:0; width:276px; height:4px; background:var(--color-secondary); transform:translateX(-50%); border-radius:4px; }

.hero-search{ padding:80px 0; background:#FF831A; }
.hero-content{ max-width:100%; text-align:center; }
.hero-title{ margin:0 0 30px 0; font-family:var(--font-title); font-weight:400; line-height:1.1; }
.hero-title-line{ display:block; font-family:var(--font-title); font-weight:300 ; font-size:28px; color:var(--color-secondary); margin-top: 20px; color: #FFF; }
.hero-title-highlight{ display:inline-block; font-family:var(--font-title); font-size:60px; font-weight:500; color:var(--color-secondary); position:relative; padding-left:18px; color: #FFF; }

.search-box{ display:flex; align-items:center; background:#9aa9ab; padding:16px; border-radius:10px; gap:12px; width:100%; max-width:620px; margin: 0 auto; }
.search-input{ flex:1; border:0; border-radius:6px; padding:14px 16px; font-family:var(--font-text); font-size:15px; outline:none; }
.search-btn{ width:52px; height:52px; border:0; border-radius:8px; background:var(--color-primary); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.search-btn i{ font-size:18px; transition:transform .25s ease; }
.search-btn:hover{ background:var(--color-secondary); transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,94,3,.35); }
.search-btn:hover i{ transform:scale(1.15) rotate(-10deg); }

.search-links{ display:flex; flex-wrap:wrap; gap:18px; margin-top:22px; max-width:620px; justify-content:center; text-align:center; margin: 0 auto; margin-top: 20px; }
.search-link{ font-family:var(--font-text); font-size:14px; font-weight:600; text-decoration:none; color:#fff; transition:color .25s ease; }
.search-link:hover{ color:#000; }

.hero-images{ position:relative; display:flex; justify-content:flex-end; overflow:visible; }
.hero-image-main{ width:100%; max-width:520px; border-radius:8px; position:relative; z-index:1; }
.hero-image-float{ position:absolute; top:-50px; right:-50px; width:110px; z-index:2; pointer-events:none; }

.neighborhood-section{ padding:10px 0 30px 0; background:#ffffff; padding-top: 60px; }
.neighborhood-carousel{ margin-top:6px; padding-left: 50px; padding-right: 50px; }
.neighborhood-swiper{ padding:10px 6px 10px 6px; }
.neighborhood-card{ display:flex; align-items:center; background:#ffffff; border:1px solid var(--color-border); border-radius:6px; padding:18px; min-height:64px; text-decoration:none; font-family:var(--font-text); font-weight:600; color:var(--color-text); box-shadow:0 10px 18px rgba(17,24,39,.06); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.neighborhood-card:hover{ transform:translateY(-2px); box-shadow:0 14px 24px rgba(17,24,39,.10); border-color:rgba(255,94,3,.35); }
.neighborhood-footer{ margin-top:14px; align-items:center; }
.neighborhood-pagination{ display:flex; justify-content:center; }
.neighborhood-pagination .swiper-pagination-bullet{ width:8px; height:8px; opacity:1; background:rgba(250,170,21,.35); margin:0 4px; }
.neighborhood-pagination .swiper-pagination-bullet-active{ background:var(--color-secondary); }
.neighborhood-action{ display:flex; justify-content:flex-end; padding-right: 50px;}
.section-link{ font-family:var(--font-text); font-weight:500; text-decoration:none; color:#9ca3af; transition:color .25s ease; }
.section-link:hover{ color:var(--color-primary); }

.ad-wrap{ margin-top:93px; }
.ad-link{ display:block; text-decoration:none; }
.ad-image{ width:100%; display:block; margin:0 auto; border-radius:4px; background:#d1d5db; }

.feature-tabs{ padding:60px 0 70px 0; background:#ffffff; }

.feature-panel{ position:relative; border-radius:14px; overflow:hidden; min-height:420px; background-size:cover; background-position:center; background-repeat:no-repeat; }
.feature-panel-overlay{ position:absolute; inset:0; background:linear-gradient(90deg,rgba(17,24,39,.72) 0%,rgba(17,24,39,.45) 35%,rgba(17,24,39,.05) 70%); }
.feature-panel-inner{ position:relative; z-index:2; padding:0; }

.tab-bar{ display:grid; grid-template-columns:repeat(6,1fr); border-bottom:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.92); }
.tab-item{ border:0; background:transparent; padding:16px 14px; display:flex; align-items:flex-start; gap:12px; cursor:pointer; text-align:left; border-right:1px solid rgba(17,24,39,.12); position:relative; transition:background .2s ease; }
.tab-item:last-child{ border-right:0; }
.tab-item:hover{ background:rgba(250,170,21,.10); }

.tab-icon{ width:34px; height:34px; border-radius:10px; display:flex; align-items:center; justify-content:center; background:rgba(250,170,21,.16); color:var(--color-secondary); flex:0 0 34px; }
.tab-icon i{ font-size:16px; }
.tab-text{ font-family:var(--font-text); font-weight:700; color:var(--color-text); line-height:1.1; }

.tab-item.is-active::after{ content:""; position:absolute; left:0; bottom:0; width:100%; height:6px; background:var(--color-secondary); }
.tab-item.is-active .tab-icon{ background:rgba(255,94,3,.12); color:var(--color-primary); }

.feature-panel-row{ padding:26px; min-height:360px; }
.feature-box-grid{ display:grid; grid-template-columns:1fr; gap:14px; max-width:320px; }
.feature-box{ display:flex; align-items:center; gap:14px; text-decoration:none; background:#ffffff; border:1px solid rgba(255,255,255,.65); border-radius:12px; padding:14px 14px; box-shadow:0 14px 26px rgba(17,24,39,.18); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.feature-box:hover{ transform:translateY(-2px); box-shadow:0 18px 34px rgba(17,24,39,.22); border-color:rgba(255,94,3,.35); }
.feature-box-icon{ width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:rgba(255,94,3,.10); color:var(--color-primary); flex:0 0 44px; }
.feature-box-icon i{ font-size:18px; }
.feature-box-text{ font-family:var(--font-text); font-weight:700; color:var(--color-text); line-height:1.2; }

.feature-card-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:460px; margin-top: 30px; }
.feature-card{ position:relative; display:block; width:100%; aspect-ratio:1/1; border-radius:10px; overflow:hidden; text-decoration:none; background-size:cover; background-position:center; box-shadow:0 16px 28px rgba(17,24,39,.18); transform:translateZ(0); transition:transform .25s ease, box-shadow .25s ease; }
.feature-card::before{ content:""; position:absolute; left:0; top:0; width:100%; height:100%; border:10px solid rgba(250,170,21,.0); pointer-events:none; }
.feature-card::after{ content:""; position:absolute; left:0; top:0; width:100%; height:100%; pointer-events:none; background:linear-gradient(135deg,rgba(250,170,21,1) 0%,rgba(250,170,21,1) 22%,rgba(250,170,21,0) 22%,rgba(250,170,21,0) 100%); mix-blend-mode:normal; opacity:1; }
.feature-card-overlay{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(17,24,39,.20) 0%,rgba(17,24,39,.55) 55%,rgba(17,24,39,.72) 100%); }
.feature-card-inner{ position:absolute; left:0; right:0; bottom:0; padding:16px 16px 14px 16px; }
.feature-card-title{ font-family:var(--font-text); font-weight:700; color:#ffffff; font-size:16px; line-height:1.2; margin:0 0 10px 0; text-shadow:0 10px 18px rgba(0,0,0,.35); }
.feature-card-meta{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.feature-card-stars{ display:flex; align-items:center; gap:4px; color:var(--color-secondary); }
.feature-card-stars i{ font-size:14px; }
.feature-card-reviews{ font-family:var(--font-text); font-weight:600; color:#ffffff; font-size:14px; opacity:.95; }
.feature-card:hover{ transform:translateY(-3px); box-shadow:0 22px 38px rgba(17,24,39,.24); }
.feature-card:hover::after{ filter:brightness(1.02); }

.links-section{ padding:20px 0 40px; background:#ffffff; }
.links-title{ margin:0 0 18px 0; font-family:var(--font-title); font-weight:400; font-size:20px; color:var(--color-text); }
.links-list{ list-style:none; margin:0; padding:0; }
.links-list-offset{ margin-top:38px; }
.links-list li{ margin-bottom:10px; }
.links-item{ text-decoration:none; font-size:15px; font-weight:500; color:#333333; transition:color .25s ease; }
.links-item:hover{ color:var(--color-primary); }
.links-item-highlight{ color:var(--color-primary); font-weight:600; }
.links-item-highlight:hover{ text-decoration:underline; }

.banner-section{ padding:40px 0 100px 0; background:#ffffff; }
.banner-swiper{ border-radius:10px; overflow:hidden; }
.banner-slide{ display:block; text-decoration:none; }
.banner-image{ width:100%; height:auto; display:block; border-radius:10px; }
.banner-pagination{ position:static !important; margin-top:14px; display:flex; justify-content:center; }
.banner-pagination .swiper-pagination-bullet{ width:12px; height:12px; border-radius:4px; opacity:1; background:rgba(255,94,3,.28); margin:0 5px; transition:transform .2s ease, background .2s ease; }
.banner-pagination .swiper-pagination-bullet-active{ background:var(--color-primary); transform:scale(1.06); }

.site-footer{ position:relative; background:var(--color-primary); color:#ffffff; overflow:hidden; }
.footer-row{ position:relative; z-index:2; padding:70px 0 40px 0; }
.footer-title{ margin:0 0 14px 0; font-family:var(--font-title); font-weight:600; font-size:18px; color:#ffffff; }
.footer-list{ list-style:none; margin:0; padding:0; }
.footer-list li{ margin-bottom:8px; }
.footer-link{ text-decoration:none; color:#ffffff; font-size:14px; opacity:.9; transition:opacity .25s ease; }
.footer-link:hover{ opacity:1; text-decoration:underline; }
.footer-text{ margin:0 0 12px 0; font-size:14px; opacity:.9; }
.footer-contact{ margin-bottom:14px; }
.footer-phone{ display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.15); padding:10px 14px; border-radius:6px; font-size:14px; font-weight:600; }
.footer-social{ display:flex; gap:10px; }
.footer-social-link{ width:36px; height:36px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.18); border-radius:6px; color:#ffffff; font-size:16px; transition:background .25s ease; text-decoration: none; }
.footer-social-link:hover{ background:rgba(255,255,255,.3); }
.footer-phone-btn{ display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.15); padding:10px 14px; border-radius:6px; font-size:14px; font-weight:600; color:#ffffff; text-decoration:none; transition:background .25s ease, transform .2s ease; margin-bottom: 5px }
.footer-phone-btn:hover{ background:rgba(255,255,255,.28); transform:translateY(-1px); color:#ffffff; }
.footer-bottom{ position:relative; z-index:2; border-top:1px solid rgba(255,255,255,.25); padding:18px 0; text-align:center; }
.footer-copy{ margin:0; font-size:14px; opacity:.85; }

/* O QUE É O MÍDIA PALHOÇA */
.about-page{ padding:70px 0; background:#ffffff; }
.about-hero-row{ padding-top:10px; padding-bottom:20px; }
.about-page-title{ margin:0 0 14px 0; font-family:var(--font-title); font-weight:400 !important; font-size:26px !important; color:var(--color-text) !important; }
.about-section-heading{ margin:0 0 14px 0; font-family:var(--font-title); font-weight:400; font-size:26px; color:var(--color-text); }
.about-page-text{ margin:0 0 12px 0; font-family:var(--font-text); font-weight:400; font-size:16px; line-height:1.65; color:#3b3b3b;  }
.about-hero-media{ display:flex; justify-content:center; }
.about-hero-image{ width:100%; max-width:360px; border-radius:12px; box-shadow:0 18px 34px rgba(17,24,39,.14); display:block; }
.about-stats{ padding:34px 0 10px 0; }
.stat-item{ padding:10px 0; }
.stat-number{ font-family:var(--font-title); font-weight:700; font-size:46px; color:#FF5E03 !important; letter-spacing:-0.02em; }
.stat-label{ margin-top:8px; font-family:var(--font-text); font-weight:600; font-size:18px !important; color:#FF5E03 !important; }
.about-block{ padding:90px 0 !important; }
.about-block-row{ row-gap:26px; }
.about-cta{ margin-top:10px; }
.about-illustration{ display:flex; justify-content:center; }
.about-illustration-image{ width:100%; max-width:420px; display:block; }

/* CONTATO */
.contact-page{ background:#ffffff; }
.contact-hero{ background:#FAAB13; padding:46px 0; }
.contact-hero-title{ margin:0; text-align:center; font-family:var(--font-title); font-weight:700; font-size:40px !important; color:#ffffff; }
.contact-body{ padding:64px 0 70px 0; }
.contact-cards-row{ row-gap:22px; margin-bottom:42px; }
.contact-card{ display:flex; align-items:center; gap:18px; background:#FFF2EC; border-radius:10px; padding:26px 26px; text-decoration:none; box-shadow:0 14px 30px rgba(17,24,39,.06); transition:transform .25s ease, box-shadow .25s ease; min-height:120px; }
.contact-card:hover{ transform:translateY(-2px); box-shadow:0 18px 40px rgba(17,24,39,.10); }
.contact-card-icon{ width:56px; height:56px; border-radius:14px; background:#ffffff; display:flex; align-items:center; justify-content:center; box-shadow:0 10px 22px rgba(17,24,39,.08); flex:0 0 auto; }
.contact-card-icon i{ font-size:18px; color:var(--color-primary); }
.contact-card-title{ margin:0 0 6px 0; font-family:var(--font-title); font-weight:400; font-size:18px; color:var(--color-text); }
.contact-card-link{ font-size:14px; font-weight:700; color:#FF5E03; }
.contact-sections{  text-align:center; margin-left:auto; margin-right:auto;  }
.contact-sections .page-text{ margin-left:auto; margin-right:auto; }
.contact-title{ margin:0 0 12px 0; font-family:var(--font-title); font-weight:400; font-size:34px; color:var(--color-text); }
.contact-title-gap{ margin-top:34px; }
.contact-inline-link{ display:inline-block; margin-top:8px; text-decoration:none; font-weight:700; color:#FF5E03; margin-left:auto; margin-right:auto; }
.contact-inline-link:hover{ text-decoration:underline; }
.contact-social{ display:flex; gap:18px; margin-top:22px; justify-content:center;  }
.contact-social-link{ width:44px; height:44px; border-radius:10px; display:flex; align-items:center; justify-content:center; background:#ffffff; border:1px solid rgba(17,24,39,.10); color:#FF5E03; text-decoration:none; transition:transform .2s ease, background .2s ease, border-color .2s ease; }
.contact-social-link:hover{ transform:translateY(-2px); background: #FFF2EC; border-color: #FF5E03; }
.contact-social-link i{ font-size:18px; }

/* CADASTRO */
.signup-page{ padding:70px 0 90px 0; background:#ffffff; }
.signup-title{ margin-bottom:28px; }
.signup-form{ margin-top:10px; }
.form-label-custom{ display:flex; align-items:center; gap:10px; font-family:var(--font-title); font-weight:400; font-size:16px; color:var(--color-text); margin-bottom:10px; }
.form-badge{ display:inline-flex; align-items:center; justify-content:center; padding:6px 10px; border-radius:8px; font-size:12px; font-weight:700; background:rgba(250,170,21,.28); color:#6b4b00; }
.form-input-custom{ height:52px; border-radius:10px; border:1px solid rgba(17,24,39,.14); padding:12px 16px; font-size:14px; font-weight:600; color:var(--color-text); box-shadow:none; }
.form-input-custom:focus{ border-color:var(--color-primary); box-shadow:0 0 0 4px rgba(255,94,3,.15); }
.form-date{ position:relative; }
.form-date-input{ padding-right:46px; }
.form-date-icon{ position:absolute; right:14px; top:50%; transform:translateY(-50%); width:26px; height:26px; border-radius:8px; display:flex; align-items:center; justify-content:center; background:rgba(255,94,3,.12); color:var(--color-primary); pointer-events:none; }
.signup-checks{ display:flex; flex-direction:column; gap:12px; margin-top:6px; align-items:center; }
.check-item{ padding: 5px; display:flex; align-items:flex-start; gap:12px; cursor:pointer; user-select:none; max-width:560px; width:100%; justify-content:center; }
.check-input{ position:absolute; opacity:0; pointer-events:none; }
.check-box{ width:22px; height:22px; border-radius:4px; border:2px solid var(--color-primary); background:#ffffff; flex:0 0 auto; margin-top:2px; position:relative; }
.check-input:checked + .check-box{ background:#FAAA15; }
.check-input:checked + .check-box::after{ content:""; position:absolute; left:6px; top:2px; width:6px; height:12px; border:2px solid #ffffff; border-top:0; border-left:0; transform:rotate(45deg); }
.check-text{ font-size:14px; font-weight:600; color:var(--color-text); line-height:1.55; }
.check-link{ text-decoration:none; font-weight:800; color:var(--color-primary); }
.check-link:hover{ text-decoration:underline; color:var(--color-secondary); }

/* CATEGORIAS */
.categories-page{ padding:60px 0 70px 0; background:#ffffff; }
.page-breadcrumb{ display:flex; align-items:center; gap:8px; margin-bottom:14px; font-size:12px; font-weight:700; color:#6b7280; }
.breadcrumb-link{ text-decoration:none; color:var(--color-primary); }
.breadcrumb-link:hover{ text-decoration:underline; }
.breadcrumb-sep{ opacity:.6; }
.breadcrumb-current{ color:#6b7280; }
.categories-title{ color:var(--color-primary); margin-bottom:26px; }
.categories-subtitle{ margin:0 0 18px 0; font-family:var(--font-title); font-weight:400; font-size:14px; color:#6b7280; text-align:center; }
.categories-featured{ padding:10px 0 34px 0; }
.cat-feature{ position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; text-decoration:none; padding:22px 10px; border-radius:12px; gap:10px; }
.cat-feature-frame{ position:absolute; left:6px; top:6px; width:52px; height:52px;  }
.cat-feature-icon i{ font-size:28px; color:var(--color-secondary); }
.cat-feature-text{ font-size:14px; font-weight:800; color:#4b5563; text-align:center; max-width:120px; }
.categories-alpha{ padding:14px 0 10px 0; text-align:center; }
.alpha-links{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.alpha-link{ text-decoration:none; font-size:16px; font-weight:900; color:var(--color-secondary); letter-spacing:.06em; }
.alpha-link:hover{ color:var(--color-primary); }
.categories-search-title{ display:flex; align-items:center; justify-content:center; gap:12px; margin:26px 0 18px 0; }
.categories-question{ margin:0; font-family:var(--font-title); font-weight:400; font-size:22px; color:#6b7280; }
.categories-question-line{ width:90px; height:2px; background:#b9c2c7; opacity:.6; }
.categories-list{ margin-top:8px; border-top:1px solid rgba(250,170,21,.55); }
.alpha-block{ padding:18px 0; border-bottom:1px solid rgba(250,170,21,.55); }
.alpha-letter{ font-size:24px; font-weight:900; color:var(--color-secondary); margin-bottom:8px; letter-spacing:.12em; }
.alpha-row{ row-gap:10px; }
.alpha-item{ display:block; text-decoration:none; font-size:14px; font-weight:800; color:#6b7280; padding:6px 0; }
.alpha-item:hover{ color:var(--color-primary); text-decoration:underline; }

/* BLOG */
.blog-page{ padding:54px 0 70px 0; background:#ffffff; }
.blog-latest { padding: 70px 0; background: radial-gradient(1000px 400px at 10% 0%, rgba(255, 255, 255, 0.08), transparent 60%), radial-gradient(900px 500px at 90% 10%, rgba(255, 255, 255, 0.06), transparent 55%),  linear-gradient(180deg, rgba(16, 18, 24, 0.02), rgba(16, 18, 24, 0.00));}
.blog-latest-header {   display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 26px;}
.blog-latest-grid { row-gap: 22px;}
.blog-card { height: 100%; background: #fff; border-radius: 18px; overflow: hidden; border: 1px solid rgba(16, 24, 40, 0.08); box-shadow: 0 12px 28px rgba(16, 24, 40, 0.08);    transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;}
.blog-card:hover { transform: translateY(-6px);    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.14);    border-color: rgba(16, 24, 40, 0.14);}
.blog-card-media { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden;    background: #f2f4f7;}
.blog-card-link-cover { position: absolute; inset: 0; z-index: 1; }
.blog-card-img { width: 100%; height: 100%;    object-fit: cover;    transition: transform 420ms ease;}
.blog-card:hover .blog-card-img { transform: scale(1.05); }
.blog-card-badges { position: absolute; left: 14px; bottom: 14px; display: flex; gap: 8px; z-index: 2; }
.blog-card-badge { padding: 6px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: 0.2px; color: #fff; text-decoration: none; background: linear-gradient(90deg, #FF5E03, #FAAA15); box-shadow: 0 10px 24px rgba(255, 94, 3, 0.28); transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease; white-space: nowrap; }
.blog-card-badge:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(255, 94, 3, 0.38); filter: brightness(1.05); }
.blog-card-badge.badge-secondary { background: linear-gradient(90deg, #FAAA15, #FF5E03); box-shadow: 0 10px 24px rgba(250, 170, 21, 0.28); }
.blog-card-body { padding: 18px 18px 16px 18px;}
.blog-card-meta { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; font-size: 13px; color: rgba(30, 40, 55, 0.70); margin-bottom: 10px; }
.blog-card-meta i { margin-right: 6px;}
.blog-card-title { font-size: 18px;    line-height: 1.25;    margin: 0 0 10px 0;}
.blog-card-title a { color: #101828; text-decoration: none;}
.blog-card-title a:hover {   text-decoration: underline;}
.blog-card-excerpt {  margin: 0;  color: rgba(30, 40, 55, 0.78); font-size: 14px; line-height: 1.6; }
.blog-card-footer {  margin-top: 14px;  display: flex;  align-items: center; justify-content: space-between;}
.blog-card-link { display: inline-flex; align-items: center;  gap: 10px; font-weight: 800; font-size: 14px;  text-decoration: none; color: #FF5E03; }
.blog-card-link i {  transition: transform 200ms ease; }
.blog-card-link:hover i { transform: translateX(4px); }
.blog-latest-cta {  margin-top: 28px; }
.blog-latest-cta-inner { border-radius: 18px; padding: 22px 22px; border: 1px solid rgba(16, 24, 40, 0.10);  background: linear-gradient(90deg, rgba(255, 94, 3, 0.12), rgba(250, 170, 21, 0.12)); display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.blog-latest-cta-title { margin: 0; font-size: 18px; color: #101828; }
.blog-latest-cta-subtitle {    margin: 6px 0 0 0; color: rgba(30, 40, 55, 0.78); font-size: 14px; line-height: 1.5; }
.blog-latest-btn {  display: inline-flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: 12px; font-weight: 900; text-decoration: none; color: #fff;  background: linear-gradient(90deg, #FF5E03, #FAAA15); box-shadow: 0 16px 34px rgba(255, 94, 3, 0.28); transition: transform 220ms ease, box-shadow 220ms ease; white-space: nowrap; }
.blog-latest-btn:hover { transform: translateY(-2px);  box-shadow: 0 20px 44px rgba(255, 94, 3, 0.34);}
.blog-pagination{ display:flex; justify-content:center; gap:10px; margin:34px 0 26px 0; }
.blog-page-btn{ width:34px; height:34px; border-radius:8px; display:flex; align-items:center; justify-content:center; text-decoration:none; font-weight:900; font-size:12px; color:#ffffff; background:rgba(255,94,3,.35); transition:transform .2s ease, background .2s ease; }
.blog-page-btn:hover{ background:var(--color-primary); transform:translateY(-1px); }
.blog-page-btn.is-active{ background:var(--color-primary); }
.blog-ad{ margin-top:0; }
.blog-ad-link{ display:block; text-decoration:none; }
.blog-ad-image{ width:100%; border-radius:12px; display:block; }

/* Post */
.post-hero{  position:relative;  background-size:cover;  background-position:center;  padding:120px 0;}
.post-hero-overlay{  position:absolute;  inset:0;  background:rgba(0,0,0,.45);}
.post-hero-inner{ position:relative;  z-index:2;  display:flex;  flex-direction:column;  align-items:center;  justify-content:center;  text-align:center;  max-width:860px;  margin:0 auto;}
.post-hero-tags{  display:flex;  gap:10px;  justify-content:center;  margin-bottom:14px;}
.post-tag{  font-size:13px;  font-weight:600;  color:#fff;  text-decoration:none;  padding:6px 12px;  border-radius:20px;  background:rgba(255,255,255,.15);  transition:background .2s ease;}
.post-tag:hover{  background:rgba(255,255,255,.3);}
.post-hero-title{  color:#fff;  font-size:42px;  font-weight:400;  line-height:1.2;  margin-bottom:18px;}
.post-hero-meta{  display:flex;  align-items:center;  gap:10px;  color:#e5e7eb;  font-size:14px;  justify-content:center;  flex-wrap:wrap;}
.post-meta-link{  color:#fff;  text-decoration:underline;}
.post-meta-item{ display:inline-flex; align-items:center; gap:8px; }
.post-meta-link{ color:#fff; text-decoration:none; font-weight:700; }
.post-meta-link:hover{ color:var(--color-secondary); }
.post-meta-sep{ opacity:.7; }
.post-body{ padding:26px 0 70px 0; background:var(--color-bg); }
.post-share{ display:flex; gap:8px; justify-content:center; margin:18px 0; }
.post-share-top{ margin-top:0; }
.post-share-bottom{ margin:24px 0 10px 0; }
.post-share-link{ width:32px; height:32px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; color:var(--color-text); border:1px solid var(--color-border); background:#fff; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.post-share-link:hover{ transform:translateY(-2px); box-shadow:0 10px 18px rgba(17,24,39,.08); border-color:rgba(255,94,3,.35); color:var(--color-primary); }
.post-content{ font-size:15px; line-height:1.85; color:var(--color-text); }
.post-content p{ margin:0 0 18px 0; color:#3b3b3b; }
.post-title{ margin:26px 0 12px 0; font-weight:700; font-size:20px; color:var(--color-text); }
.post-subtitle{ margin:22px 0 8px 0; font-weight:700; font-size:16px; color:var(--color-text); }
.post-text-link{ color:var(--color-primary); text-decoration:none; font-weight:700; }
.post-text-link:hover{ color:var(--color-secondary); text-decoration:underline; }
.post-ad{ margin:26px 0 18px 0; }
.post-ad-link{ display:block; text-decoration:none; }
.post-ad-image{ width:100%; height:auto; display:block; border-radius:10px; }
.post-related{ margin-top:34px; }
.post-related-title{ margin:0 0 16px 0; font-weight:400; font-size:18px; color:var(--color-text); }
.post-related-card{ display:flex; flex-direction:column; gap:10px; }
.post-related-media{ display:block; border-radius:8px; overflow:hidden; text-decoration:none; background:#f3f4f6; }
.post-related-image{ width:100%; height:auto; display:block; }
.post-related-link{ text-decoration:none; color:var(--color-text); font-weight:700; font-size:14px; line-height:1.35; }
.post-related-link:hover{ color:var(--color-primary); }

/* Empresas */
.listing-page{ padding:34px 0 60px 0; background:#fff; }
.breadcrumb-nav{ margin-bottom:12px; }
.breadcrumb-list{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:12px; color:var(--color-muted); }
.breadcrumb-item{ display:inline-flex; align-items:center; }
.breadcrumb-item.is-active{ color:var(--color-text); font-weight:600; }
.breadcrumb-sep{ color:var(--color-primary); }
.breadcrumb-link{ text-decoration:none; color:var(--color-muted); }
.breadcrumb-link:hover{ color:var(--color-primary); }
.listing-header{ margin:10px 0 18px 0; }
.listing-title{ margin:0 0 8px 0; font-size:28px; line-height:1.2; font-weight:400; color:var(--color-primary); }
.listing-subtitle{ margin:0 0 10px 0; max-width:100%; color:var(--color-muted); font-size:14px; line-height:1.6; }
.listing-meta{ display:flex; gap:12px; align-items:center; color:var(--color-muted); font-size:13px; }
.listing-meta-item{ display:inline-flex; gap:8px; align-items:center; }
.filter-box{ background:#fff; border:1px solid #f2f2f2; border-radius:10px; padding:16px; box-shadow:0 8px 24px rgba(17,24,39,.06); position:sticky; top:18px; }
.filter-head{ margin-bottom:10px; }
.filter-title{ margin:0; font-size:14px; font-weight:700; color:var(--color-text); }
.filter-title-line{ display:block; width:120px; height:3px; background:var(--color-secondary); border-radius:4px; margin-top:8px; }
.filter-accordion{ --bs-accordion-border-color:transparent; --bs-accordion-btn-focus-box-shadow:none; }
.filter-acc-item{ border:0; border-top:1px solid #f2f2f2; border-radius:0; }
.filter-acc-item:first-child{ border-top:0; }
.filter-acc-btn{ padding:12px 0; background:transparent; font-weight:700; font-size:13px; color:var(--color-text); }
.filter-acc-btn:not(.collapsed){ color:var(--color-text); background:transparent; }
.filter-acc-body{ padding:4px 0 12px 0; }
.filter-check{ display:flex; align-items:center; gap:10px; width:100%; padding:6px 0; cursor:pointer; }
.filter-input{ width:16px; height:16px; accent-color:var(--color-primary); }
.filter-text{ font-size:13px; color:var(--color-text); font-weight:600; }
.filter-count{ margin-left:auto; font-size:12px; color:var(--color-muted); }
.filter-actions{ margin-top:14px; display:flex; flex-direction:column; gap:10px; }
.filter-btn{ width:100%; }
.filter-clear{ text-align:center; text-decoration:none; font-weight:700; font-size:13px; color:var(--color-muted); }
.filter-clear:hover{ color:var(--color-primary); }
.results-list{ display:flex; flex-direction:column; gap:14px; }
.company-card{ background:#fff; border:1px solid #f2f2f2; border-radius:10px; box-shadow:0 8px 24px rgba(17,24,39,.06); position:relative; overflow:hidden; }
.company-card::before{ content:""; position:absolute; left:0; top:0; width:6px; height:100%; background:var(--color-secondary); }
.company-card-inner{ padding:16px 16px 16px 18px; }
.company-title{ margin:0 0 6px 0; font-size:16px; font-weight:700; color:var(--color-text); }
.company-title-link{ text-decoration:none; color:var(--color-text); font-size: 22px; }
.company-title-link:hover{ color:var(--color-primary); }
.company-desc{ margin:0 0 8px 0; font-size:14px; color:var(--color-text); line-height:1.6; }
.company-address{ margin:0 0 10px 0; font-size:12px; color:var(--color-muted); }
.company-rating{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.company-stars{ display:inline-flex; gap:3px; color:var(--color-secondary); }
.company-reviews{ font-size:12px; color:var(--color-muted); font-weight:700; }
.company-actions{ display:flex; gap:14px; flex-wrap:wrap; }
.company-action{ display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:700; text-decoration:none; color:var(--color-muted); }
.company-action i{ color:var(--color-secondary); }
.company-action:hover{ color:var(--color-primary); }
.results-pagination{ margin-top:18px; display:flex; justify-content:center; align-items:center; gap:8px; flex-wrap:wrap; }
.page-btn{ min-width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:8px; text-decoration:none; font-weight:700; font-size:13px; color:var(--color-muted); background:#fff; border:1px solid #f2f2f2; }
.page-btn:hover{ color:var(--color-primary); border-color:rgba(255,94,3,.25); box-shadow:0 8px 18px rgba(255,94,3,.12); }
.page-btn.is-active{ background:var(--color-secondary); color:#111; border-color:transparent; }
.page-next{ padding:0 10px; }

/* Página da Empresa*/
.company-page{ padding:26px 0 70px 0; background:#fff; }
.company-topbar{  display:flex;  align-items:flex-start;  justify-content:space-between;  gap:18px;  margin-bottom:12px; }
.company-breadcrumb{  flex:1;  font-size:11px;  color:var(--color-muted);  line-height:1.4;}
.company-bc-link{ color:var(--color-muted); text-decoration:none; }
.company-bc-link:hover{ color:var(--color-primary); }
.company-bc-link-active{ color:#6b5bd6; font-weight:700; }
.company-bc-sep{ margin:0 6px; color:#cbd5e1; }
.company-bc-current{ color:var(--color-muted); font-weight:600; }
.company-mini-search{ width:330px; }
.mini-search{  width:100%;  display:flex;  align-items:center;  gap:10px;  background:#9aa9ab;  padding:10px;  border-radius:8px;}
.mini-search-input{  flex:1;  border:0;  border-radius:6px;  padding:10px 12px;  font-size:13px;  outline:none; }
.mini-search-btn{  width:40px;  height:40px;  border:0;  border-radius:8px;  background:var(--color-primary);  color:#fff;  display:flex;  align-items:center;  justify-content:center;  cursor:pointer;  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;}
.mini-search-btn:hover{  background:var(--color-secondary);  transform:translateY(-2px);  box-shadow:0 10px 22px rgba(255,94,3,.25);}
.company-login-cta{  display:inline-flex;  align-items:center;  gap:10px;  padding:10px 12px;  font-size:12px;  font-weight:700;  text-decoration:none;  color:#6b5bd6;  margin:12px 0 16px 0; }
.company-login-cta::before{  content:"";  width:18px;  height:18px;  border-radius:4px;  background:rgba(250,170,21,.35);  border:1px solid rgba(250,170,21,.75);}
.company-login-cta--bottom{ margin-top:14px; }

/* Cards */
.page-top{ padding:10px 0 14px 0; }

/* search (mantém o visual do anexo: fundo cinza + input branco + botão laranja) */
.page-search{ width:100%; display:flex; justify-content:flex-end; }
.page-search-box{ width:100%; max-width:340px; display:flex; align-items:center; gap:10px; background:#9aa9ab; padding:10px; border-radius:8px; }
.page-search-input{ flex:1; border:0; border-radius:6px; padding:10px 12px; font-size:13px; outline:none; background:#fff; color:var(--color-text); }
.page-search-input::placeholder{ color:#6b7280; }
.page-search-button{ width:40px; height:40px; border:0; border-radius:8px; background:var(--color-primary); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.page-search-button i{ font-size:14px; transition:transform .25s ease; }
.page-search-button:hover{ background:var(--color-secondary); transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,94,3,.25); }
.page-search-button:hover i{ transform:scale(1.12) rotate(-10deg); }

.card-soft{  background:#fff;  border:1px solid #f2f2f2;  border-radius:10px;  box-shadow:0 10px 26px rgba(17,24,39,.06);  overflow:hidden; }
.company-main{ position:relative; }
.company-main::before{  content:"";  position:absolute;  left:0;  top:0;  width:100%;  height:4px;  background:var(--color-secondary);}
.company-main-head{  display:flex;  gap:16px;  padding:16px 18px 8px 18px;}
.company-logo{  width:58px;  height:58px;  border-radius:50%;  background:#f7f7f7;  border:6px solid var(--color-secondary);  display:flex;  align-items:center;  justify-content:center;  flex:0 0 auto;}
.company-logo-text{ font-size:12px; font-weight:800; color:#777; }
.company-main-title{ flex:1; min-width:0; }
.company-name{  margin:0 0 6px 0;  font-size:32px;  line-height:1.1;  font-weight:800;  color:var(--color-text);}
.company-address{  margin:0 0 10px 0;  font-size:14px;  color:var(--color-muted);  line-height:1.5;}
.company-rating-line{  display:flex;  align-items:center;  gap:10px;  margin-bottom:4px;}
.company-stars{ color:var(--color-secondary); display:inline-flex; gap:3px; }
.company-reviews-count{ font-size:12px; color:var(--color-muted); font-weight:700; }
.company-main-actions{  display:flex;  align-items:center;  gap:12px;  padding:10px 18px 12px 18px;  border-top:1px solid #f2f2f2;  border-bottom:1px solid #f2f2f2;  position:relative;}
.company-status{  display:flex;  align-items:center;  gap:8px;  flex-wrap:wrap;}
.status-pill{  display:inline-flex;  align-items:center;  gap:8px;  padding:7px 10px;  border-radius:7px;  font-weight:800;  font-size:11px;  line-height:1;  border:1px solid #eee; }
.status-open{ background:#e9f7ef; color:#0f8a3a; }
.status-open i{ font-size:8px; }
.status-close{ background:#ffe9e9; color:#d33; }
.status-drop{  width:32px;  height:32px;  border:1px solid #f0f0f0;  background:#fff;  border-radius:7px;  cursor:pointer;}
.company-action-buttons{  display:flex;  align-items:center;  gap:8px;  flex-wrap:wrap;  margin-left:auto;}
.btn-pill{  display:inline-flex;  align-items:center;  gap:8px;  padding:8px 10px;  border-radius:7px;  font-size:12px;  font-weight:900;  text-decoration:none;  color:#fff;  line-height:1;  border:0; }
.btn-green{ background:#2bb673; }
.btn-red{ background:#e74c3c; }
.btn-orange{ background:#f39c12; }
.btn-pill:hover{ filter:brightness(.95); color:#fff; }
.company-share{  position:absolute;  right:18px;  top:10px;  font-size:12px;  font-weight:700;  text-decoration:none;  color:var(--color-muted);  display:inline-flex;  align-items:center;  gap:8px;}
.company-share i{ color:var(--color-secondary); }
.company-share:hover{ color:var(--color-primary); }
.company-main-body{ padding:14px 18px 18px 18px; }
.company-tabs{ display:flex; justify-content:center; margin-bottom:10px; }
.company-tab{  border:0;  background:transparent;  font-weight:800;  font-size:20px;  color:var(--color-muted);  position:relative;  padding:8px 12px;  cursor:pointer;}
.company-tab.is-active{ color:var(--color-text); }
.company-tab.is-active::after{  content:"";  position:absolute;  left:50%;  bottom:0;  transform:translateX(-50%);  width:52px;  height:3px;  background:var(--color-secondary);  border-radius:3px;}
.company-about p{  margin:0 0 12px 0;  font-size:14px;  color:#444;  line-height:1.7;}
.company-rate-wrap{ display:flex; justify-content:center; margin-top:6px; }
.company-rate-btn{  display:inline-flex;  align-items:center;  gap:8px;  background:#6b5bd6;  color:#fff;  text-decoration:none;  font-weight:900;  font-size:12px;  padding:10px 14px;  border-radius:8px;}
.company-rate-btn:hover{ filter:brightness(.95); color:#fff; }

/* Photos */
.company-photos{ margin-top:10px; }
.company-photos-row{  display:grid;  grid-template-columns:repeat(3, 1fr);  gap:12px;}
.company-photo{  display:block;  border-radius:8px;  overflow:hidden;  box-shadow:0 10px 18px rgba(17,24,39,.10);}
.company-photo img{  width:100%;  height:200px;  object-fit:cover;  display:block;}

/* Suggestions swipers */
.company-suggestions{ margin-top:80px; }
.company-sug-title{  margin:0 0 10px 0;  font-weight:400;  font-size:18px;  color:var(--color-text);}
.company-sug-chip{  display:flex;  align-items:center;  gap:10px;  padding:10px 12px;  border-radius:8px;  border:1px solid #f0f0f0;  background:#fff;  text-decoration:none;  font-size:12px;  font-weight:800;  color:var(--color-text);  box-shadow:0 10px 18px rgba(17,24,39,.06);}
.company-sug-chip i{ color:var(--color-secondary); }
.company-sug-chip:hover{ border-color:rgba(255,94,3,.25); color:var(--color-primary); }
.company-sug-pagination{  margin-top:10px;  text-align:center; padding-bottom: 15px;}
.company-sug-pagination .swiper-pagination-bullet{  width:7px;  height:7px;  opacity:.35;  background:var(--color-secondary);}
.company-sug-pagination .swiper-pagination-bullet-active{  opacity:1;}

/* Reviews */
.company-reviews{ margin-top:26px; margin-top:80px;}
.company-reviews-head{  padding:14px 18px 10px 18px;  border-top:4px solid var(--color-secondary);  text-align:center;}
.company-reviews-title{ margin:0; font-weight:800;  font-size:20px; color:var(--color-text); }
.company-reviews-line{  display:inline-block;  width:54px;  height:3px;  background:var(--color-secondary);  border-radius:4px;  margin-top:8px;}
.company-review-item{  display:flex;  gap:12px;  padding:14px 18px;}
.review-avatar{  width:40px;  height:40px;  border-radius:50%;  background:#f3f4f6;  display:flex;  align-items:center;  justify-content:center;  color:#9aa9ab;  flex:0 0 auto;}
.review-body{ flex:1; }
.review-name{ font-weight:900; font-size:14px; color:var(--color-text); margin-bottom:4px; }
.review-stars{ display:flex; align-items:center; gap:6px; color:var(--color-secondary); font-size:12px; flex-wrap:wrap; }
.review-date{ color:var(--color-muted); font-size:11px; font-weight:700; margin-left:6px; }
.review-text{ margin:8px 0 0 0; font-size:12px; color:#444; line-height:1.7; }
.review-divider{ height:1px; background:#f0f0f0; margin:0 18px; }

/* Side */
.company-side{ position:relative; }
.side-card{ padding:14px 14px; margin-bottom:14px; }
.side-links{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.side-link{  display:inline-flex;  align-items:center;  gap:10px;  text-decoration:none;  font-weight:700;  font-size:14px;  color:var(--color-muted);}
.side-link i{ width:16px; color:var(--color-secondary); }
.side-link:hover{ color:var(--color-primary); }

.pay-price{  display:flex;  align-items:center;  justify-content:center;  gap:10px;  margin-bottom:10px;  color:var(--color-text);  font-weight:900;}
.pay-price-icon{ color:var(--color-secondary); }
.side-title{ margin:0 0 10px 0; font-weight:400;  font-size:18px;   color:var(--color-text); text-align:center; }
.pay-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.pay-item{ font-weight:400;  font-size:14px;   color:var(--color-muted); padding:2px 0; }

/* yellow badge on the far right */
.side-badge{  position:absolute;  right:-64px;  top:126px;  width:110px;  background:var(--color-secondary);  color:#111;  font-weight:900;  font-size:11px;  line-height:1.1;  padding:10px 10px;  border-radius:8px;  box-shadow:0 10px 18px rgba(17,24,39,.12);  display:flex;  align-items:center;  justify-content:space-between;  gap:10px;}
.side-badge i{ font-size:16px; }

/* Map */
.side-map{  border-radius:8px;  overflow:hidden;  border:1px solid #f0f0f0;}
.side-map img{ width:100%; height:200px; object-fit:cover; display:block; }
.side-location{ padding-top:12px; }
.side-loc-text{ margin:0 0 10px 0; font-size:14px; color:var(--color-muted); line-height:1.6; }
.side-waze{  display:inline-flex;  align-items:center;  gap:10px;  font-weight:900;  font-size:14px;  text-decoration:none;  color:var(--color-muted); }
.side-waze:hover{ color:var(--color-primary); }
.side-waze-icon{ width:80px; height:auto; display:block; }

.section-subtitle { margin: 8px 0 0 0; color: rgba(30, 40, 55, 0.75); font-size: 15px; line-height: 1.5; max-width: 520px; }

/* Negócio */
.company-status{ position: relative; display: flex; align-items: center; gap: 8px;}
.status-drop{ background: transparent; border: none; cursor: pointer; padding: 6px; border-radius: 50%;}
.status-drop i{  transition: transform 200ms ease; }
.company-status.is-open .status-drop i{ transform: rotate(180deg); }
.company-hours-dropdown{ position: absolute; top: calc(100% + 8px); left: 0; min-width: 220px; background: #fff; border-radius: 10px; padding: 10px 12px; box-shadow: 0 12px 30px rgba(0,0,0,0.12); border: 1px solid rgba(0,0,0,0.08); display: none; z-index: 50; }
.company-status.is-open .company-hours-dropdown{    display: block; }
.company-hours-list{    list-style: none;  margin: 0;  padding: 0;  font-size: 14px;  color: #333; }
.company-hours-list li{    display: flex;   justify-content: space-between;  padding: 4px 0;}
.company-hours-list strong{    font-weight: 600;}
.share-wrap{ position: relative; display: inline-block; }
.share-btn{ cursor: pointer; border: 0; }
.share-dropdown{ position: absolute; right: 0; top: calc(100% + 10px); width: 280px; background: #fff; border-radius: 10px; padding: 10px; box-shadow: 0 12px 30px rgba(0,0,0,0.12); border: 1px solid rgba(0,0,0,0.08); display: none; z-index: 60; }
.share-wrap.is-open .share-dropdown{ display: flex; gap: 10px; }
.share-option{ flex: 1; display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 10px; text-decoration: none; color: #333; background: #f7f7f7; transition: transform 160ms ease, background 160ms ease; }
.share-option:hover{ transform: translateY(-2px); background: #f0f0f0; }
.share-option i{ font-size: 26px; }
.share-option span{ font-size: 13px; line-height: 1.1; text-transform: lowercase; }
.share-option .fa-whatsapp{ color: #25D366; }
.share-option .fa-facebook-f{ color: #1877F2;}
.side-badge{ position: fixed; right: 0; top: 50%; transform: translateY(-50%); z-index: 100; display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: 10px 0 0 10px; background: linear-gradient(90deg, #FF5E03, #FAAA15); color: #fff; font-size: 13px; font-weight: 800; text-decoration: none; text-transform: uppercase; letter-spacing: 0.4px; box-shadow: 0 12px 30px rgba(255, 94, 3, 0.35); transition: transform 200ms ease, box-shadow 200ms ease;}
.side-badge i{ font-size: 16px; }
.side-badge:hover{  transform: translateY(-50%) translateX(-4px); box-shadow: 0 18px 40px rgba(255, 94, 3, 0.45); }
.company-photos{ margin-top: 16px; }
.company-photos-swiper{ position: relative; overflow: hidden; border-radius: 18px; }
.company-photo{ display: block; border-radius: 16px; overflow: hidden; background: #f2f4f7; }
.company-photo img{ width: 100%; height: 260px; object-fit: cover; display: block; transition: transform 420ms ease; }
.company-photo:hover img{ transform: scale(1.04); }
.company-photos-pagination{ margin-top: 10px; text-align: center; }
.company-photos-nav{  position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 999px; border: 1px solid rgba(0,0,0,0.10); background: rgba(255,255,255,0.92); box-shadow: 0 10px 24px rgba(0,0,0,0.12); display: inline-flex; align-items: center; justify-content: center;    cursor: pointer;  z-index: 5;}
.company-photos-prev{ left: 10px; }
.company-photos-next{ right: 10px; }
.company-photos-nav:hover{ background: #fff; }
.company-sug-swiper{ position: relative; }
.company-sug-nav{   position: absolute;  top: 75%;  transform: translateY(-50%);  width: 36px;  height: 36px;  border-radius: 999px;  border: 1px solid rgba(0,0,0,0.10);  background: rgba(255,255,255,0.92);  display: inline-flex;  align-items: center; justify-content: center; cursor: pointer;  z-index: 10; }
.company-sug-prev{ left: 6px; }
.company-sug-next{ right: 6px; }
.company-sug-nav:hover{ background: #fff; }
.ad-imagem-mob{ display: none !important;}
.pay-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.pay-tag{padding:6px 12px;font-size:13px;font-weight:600;color:#fff;background:#FAAA15;border:1px solid #FAAA15;border-radius:999px;white-space:nowrap;line-height:1.2}

/*Avaliação*/
.review-modal{position:fixed;inset:0;display:none;z-index:9999}
.review-modal.is-open{display:block}
.review-modal-backdrop{position:absolute;inset:0;background:#00000073}
.review-modal-card{position:relative;width:min(520px,calc(100% - 26px));margin:8vh auto 0;background:#fff;border-radius:14px;box-shadow:0 18px 40px #00000038;padding:22px 22px 18px;border:1px solid #00000014}
.review-modal-close{position:absolute;top:10px;right:10px;width:40px;height:40px;border:0;border-radius:10px;background:#ff5e031a;color:#FF5E03;cursor:pointer}
.review-modal-head{text-align:center;padding-top:6px}
.review-modal-line{height:4px;width:80%;margin:10px auto 14px;border-radius:999px;background:linear-gradient(90deg,#ff5e031f,#ff5e03e6,#faaa15d9)}
.review-modal-title{margin:0 0 14px;font-weight:900;color:#2a2a2a;font-size:18px}
.review-stars{display:flex;justify-content:center;gap:10px;margin:6px 0 10px}
.review-star{width:44px;height:44px;border:0;border-radius:12px;cursor:pointer;background:#faaa1524;color:#faaa158c;font-size:20px;transition:transform .15s ease,filter .15s ease,background .15s ease,color .15s ease}
.review-star:hover{transform:translateY(-1px);filter:brightness(1.02)}
.review-star.is-on{background:#faaa1538;color:#FAAA15}
.review-label{text-align:center;font-size:20px;font-weight:900;color:#2a2a2a;margin-bottom:14px}
.review-textarea{width:100%;min-height:110px;border:1px solid #dcdcdc;border-radius:10px;padding:12px;resize:vertical;outline:none}
.review-textarea:focus{border-color:#FF5E03;box-shadow:0 0 0 3px #ff5e0326}
.review-submit{width:100%;margin-top:14px;display:flex;justify-content:center;align-items:center;gap:8px}

@media (max-width:1200px){
    .tab-bar{ grid-template-columns:repeat(3,1fr); }
}


@media (max-width:992px){
   /* .menu-close-wrap{ display:none; }*/
    .section-link{ position:static; transform:none; }
    .section-head{ justify-content:space-between; }
    .section-title{ font-size:22px; }
    .section-actions{ justify-content:center; }
    .feature-panel{ min-height:560px; }
    .feature-panel-overlay{ background:linear-gradient(180deg,rgba(17,24,39,.72) 0%,rgba(17,24,39,.35) 55%,rgba(17,24,39,.08) 100%); }
    .feature-panel-row{ padding:18px; }
    .feature-box-grid{ max-width:100%; }
    .tab-item{ align-items:center; }
    .footer-bg-image{ display:none; }
    .footer-row{ padding:50px 0 30px 0; }
    .about-page{ padding:70px 0; background:#ffffff; }
    .about-hero-row{ padding-top:10px; padding-bottom:20px; }
    .page-title{ margin:0 0 14px 0; font-family:var(--font-title); font-weight:400; font-size:34px; color:var(--color-text); }
    .section-heading{ margin:0 0 14px 0; font-family:var(--font-title); font-weight:400; font-size:26px; color:var(--color-text); max-width:520px; }
    .page-text{ margin:0 0 12px 0; font-family:var(--font-text); font-weight:500; font-size:15px; line-height:1.65; color:#3b3b3b; max-width:620px; }
    .about-hero-media{ display:flex; justify-content:center; }
    .about-hero-image{ width:100%; max-width:360px; border-radius:12px; box-shadow:0 18px 34px rgba(17,24,39,.14); display:block; }
    .about-stats{ padding:34px 0 10px 0; }
    .stat-item{ padding:10px 0; }
    .stat-number{ font-family:var(--font-title); font-weight:700; font-size:46px; color:#6b7280; letter-spacing:-0.02em; }
    .stat-label{ margin-top:8px; font-family:var(--font-text); font-weight:600; font-size:13px; color:#6b7280; }
    .about-block{ padding:56px 0; }
    .about-block-row{ row-gap:26px; }
    .about-cta{ margin-top:10px; }
    .about-illustration{ display:flex; justify-content:center; }
    .about-illustration-image{ width:100%; max-width:420px; display:block; }
    .contact-body{ padding:46px 0 56px 0; }
    .contact-hero-title{ font-size:26px; }
    .contact-title{ font-size:28px; }
    .contact-sections{ max-width:100%; }
    .blog-card-featured{ flex-direction:column; }
    .blog-card-featured .blog-card-media{ flex:0 0 auto; }
    .blog-card-featured .blog-card-image{ height:220px; min-height:auto; }
    .filter-box{ position:static; }
    .company-topbar{ flex-direction:column; }
    .company-mini-search{ width:100%; }
    .side-badge{ display:none; }
    .blog-latest-header { flex-direction: column; align-items: flex-start; }
    .blog-latest-cta-inner { flex-direction: column; align-items: flex-start; }
}

@media (max-width:768px){
    .links-section{ padding:50px 0; }
    .links-title{ font-size:18px; }
    .links-list-offset{ margin-top:0; }
    .company-name{ font-size: 26px !important; }
}

@media (max-width:576px){    
    .header-inner{ min-height:74px; }
    .icon-btn i{ font-size:28px; }
    .menu-close-wrap{ padding-right:30px; }
    .header-logo img{ max-width:130px; }
    .header-link{ display:none; }
    .hero-search{ padding:50px 0; }
    .hero-title-line{ font-size:18px; }
    .hero-title-highlight{ font-size:34px; padding-left: 0px; }
    .search-box{ flex-direction:column; }
    .search-btn{ width:100%; }
    .search-links{ gap:12px; }
    .hero-images{ margin-top:60px; }
    .hero-image-float{ width:70px; top:-20px; right:-20px; }
    .search-input{ width:100%; }
    .neighborhood-section{ padding:45px 0 55px 0; }
    .section-title{ font-size:20px; }
    .neighborhood-card{ padding:16px; }
    .neighborhood-footer{ margin-top:18px; }
    .neighborhood-action{ justify-content:center; }
    .neighborhood-action{ display:flex; justify-content: center; padding-right: 0px; margin-top: 20px;}
    .neighborhood-carousel{ padding-left: 0px; padding-right: 0px; }
    .feature-tabs{ padding:45px 0 55px 0; }
    .tab-bar{ grid-template-columns:repeat(2,1fr); }
    .tab-item{ padding:14px 12px; }
    .tab-text{ font-size:13px; }
    .tab-item.is-active::after{ height:5px; }
    .feature-panel-row{ padding:14px; }
    .feature-card-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; max-width:100%; }
    .feature-card-inner{ padding:14px 14px 12px 14px; }
    .feature-card-title{ font-size:15px; }
    .feature-card-stars i{ font-size:13px; }
    .feature-card-reviews{ font-size:13px; }
    .links-services1{ margin-bottom: 30px;}
    .links-hidden{ display: none;}
    .banner-section{ padding:30px 0 45px 0; }
    .banner-pagination .swiper-pagination-bullet{ width:10px; height:10px; }
    .footer-title{ font-size:17px; }
    .footer-row{ gap:28px; }
    .page-title{ font-size:26px; text-align:center; }
    .section-heading{ font-size:20px; text-align:center; margin-left:auto; margin-right:auto; }
    .page-text{ font-size:14px; }
    .about-block{ padding:36px 0 !important; }
    .about-page{ padding:20px 0; text-align:center; }
    .about-hero-image{ max-width:320px; }
    .about-cta{ display:inline-flex; justify-content:center; }
    .stat-number{ font-size:36px; }
    .page-text{ text-align:center; margin-left:auto; margin-right:auto; }
    .stat-item{ text-align:center; }    
    .about-page-text{ font-weight:500; font-size:16px; }
    .contact-hero{ padding:38px 0; }
    .contact-hero-title{ font-size:22px; }
    .contact-body{ padding:36px 0 48px 0; }
    .contact-card{ padding:22px 18px; }
    .contact-title{ font-size:26px; text-align:center; }
    .contact-sections{ text-align:center; }
    .contact-social{ justify-content:center; }
    .contact-card-email{ font-size: 12px;}
    .signup-page{ padding:46px 0 70px 0; }
    .signup-title{ text-align:center; }
    .form-label-custom{ justify-content:center; }
    .signup-form{ text-align:center; }
    .categories-page{ padding:44px 0 54px 0; }
    .categories-title{ text-align:center; }
    .alpha-letter{ text-align:left; }
    .categories-question{ text-align:center; }
    .breadcrumb-nav, .categories-title{ display: none;}
    .blog-page{ padding:42px 0 54px 0; }
    .blog-card-image{ height:180px; }
    .blog-card-meta{ flex-direction:column; align-items:flex-start; }
    .post-hero{ padding:90px 0; }
    .post-hero-title{ font-size:22px; }
    .post-hero-inner{ text-align:center; margin:0 auto; }
    .post-hero-tags{ justify-content:center; }
    .post-hero-meta{ justify-content:center; }
    .post-next{ padding:14px; }
    .post-next-body{ text-align:center; }
    .post-next-tags{ justify-content:center; }
    .listing-title{ text-align:center; } 
    .listing-subtitle{ text-align:center; } 
    .listing-meta{ justify-content:center; } 
    .company-main-head{ flex-direction:column; align-items:flex-start; }
    .company-action-buttons{ margin-left:0; }
    .company-share{ position:static; margin-left:auto; }
    .company-photos-row{ grid-template-columns:1fr 1fr; }
    .company-sug-prev{ left: 2px; }
    .company-sug-next{ right: 2px; }    
    .company-photo img{ height: 210px; }    
    .ad-imagem-mob{ display: block !important;}
    .ad-imagem-desk{ display: none !important;}
    .header-actions .btn-primary{ padding: 6px 10px; font-size: 14px; }
}