/* SMHRF - acabamento visual premium */
:root{
  --smhrf-orange:#e86812;
  --smhrf-orange-dark:#cc590e;
  --smhrf-cream:#f7f2ed;
  --smhrf-ink:#262626;
  --smhrf-muted:#6b7280;
  --smhrf-line:rgba(15,23,42,.08);
  --smhrf-shadow:0 18px 45px rgba(15,23,42,.10);
  --smhrf-shadow-soft:0 10px 28px rgba(15,23,42,.08);
}
html{scroll-behavior:smooth;}
body{
  background:
    radial-gradient(circle at top left, rgba(232,104,18,.13), transparent 32rem),
    radial-gradient(circle at 90% 15%, rgba(255,255,255,.9), transparent 24rem),
    linear-gradient(180deg,#fbf7f3 0%,#f1edea 45%,#f7f2ed 100%) !important;
  color:var(--smhrf-ink);
  text-rendering:optimizeLegibility;
}
::selection{background:rgba(232,104,18,.22);color:#111827;}
img{max-width:100%;}
a,button{transition:all .22s ease;}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(232,104,18,.28);outline-offset:3px;}

/* Header mais premium */
header.bg-white, header[class*="bg-white"]{
  backdrop-filter:saturate(160%) blur(14px);
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 10px 30px rgba(15,23,42,.06) !important;
}
header img[alt*="Logo"], header img[alt*="SMHRF"]{filter:drop-shadow(0 8px 14px rgba(15,23,42,.08));}
nav a, header a, header button{letter-spacing:-.01em;}

/* Hero e sliders */
.hero-swiper,.hero-bg{
  border-radius:2rem !important;
  box-shadow:0 28px 70px rgba(15,23,42,.16) !important;
  border:1px solid rgba(255,255,255,.75) !important;
}
.hero-swiper::after,.hero-bg::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 28%,rgba(232,104,18,.10));
}
.hero-slide-content h1,.hero-bg h1{letter-spacing:-.045em;}
.hero-slide-content p,.hero-bg p{line-height:1.65;}
.swiper-button-prev,.swiper-button-next,.swiper-btn-ind{
  box-shadow:0 12px 28px rgba(15,23,42,.14) !important;
  border:1px solid rgba(255,255,255,.65);
}

/* Cards */
.bg-white.rounded-2xl,.bg-white.rounded-3xl,.bg-white.rounded-xl,.rounded-2xl.shadow-sm,.rounded-xl.shadow-sm{
  box-shadow:var(--smhrf-shadow-soft) !important;
  border-color:var(--smhrf-line) !important;
}
.bg-white.rounded-2xl:hover,.bg-white.rounded-3xl:hover,.bg-white.rounded-xl:hover,.card-habitacao:hover{
  box-shadow:var(--smhrf-shadow) !important;
}
.card-habitacao{
  border:1px solid rgba(255,255,255,.72);
  background:#fff;
}
.card-habitacao::before{opacity:.45 !important;filter:blur(1px);}

/* Botões */
a[class*="bg-brand-orange"],button[class*="bg-brand-orange"],.bg-\[\#e86812\]{
  box-shadow:0 14px 25px rgba(232,104,18,.22) !important;
}
a[class*="bg-brand-orange"]:hover,button[class*="bg-brand-orange"]:hover,.bg-\[\#e86812\]:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 35px rgba(232,104,18,.28) !important;
}
a[class*="rounded-full"],button[class*="rounded-full"]{letter-spacing:-.01em;}

/* Seções */
section h2,h1,h2,h3{letter-spacing:-.028em;}
main{position:relative;}
main::before{
  content:"";position:absolute;z-index:-1;left:-7rem;top:22rem;width:15rem;height:15rem;border-radius:9999px;
  background:rgba(232,104,18,.10);filter:blur(60px);
}

/* Notícias e projetos */
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
iframe{border-radius:1rem;}

/* Formulários */
input,select,textarea{
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
input:hover,select:hover,textarea:hover{border-color:rgba(232,104,18,.42) !important;}
.form-input:focus,input:focus,select:focus,textarea:focus{
  border-color:var(--smhrf-orange) !important;
  box-shadow:0 0 0 4px rgba(232,104,18,.13) !important;
}

/* Rodapé */
footer.bg-gray-900{
  background:
    radial-gradient(circle at 15% 0%, rgba(232,104,18,.26), transparent 26rem),
    linear-gradient(135deg,#111827 0%,#0b1120 100%) !important;
  box-shadow:0 -18px 50px rgba(15,23,42,.12);
}
footer img{box-shadow:0 10px 24px rgba(0,0,0,.22);}
footer a:hover{transform:translateX(2px);}

/* Admin */
body.flex.h-screen aside{
  background:linear-gradient(180deg,#111827 0%,#070b14 100%) !important;
  box-shadow:12px 0 35px rgba(15,23,42,.18);
}
.tab-btn{border:1px solid transparent;}
.tab-btn:hover{background:rgba(255,255,255,.08) !important;border-color:rgba(255,255,255,.08);}
.tab-btn.active{box-shadow:0 12px 28px rgba(232,104,18,.28);}
main .bg-white{border:1px solid rgba(15,23,42,.08);}
table thead{box-shadow:0 8px 20px rgba(15,23,42,.04);}
tbody tr:hover{background:#fff8f2 !important;}

/* Mobile */
@media (max-width:768px){
  .hero-swiper,.hero-bg{border-radius:1.4rem !important;}
  h1{letter-spacing:-.035em;}
  footer .grid{gap:2rem !important;}
  .bg-white.rounded-3xl{border-radius:1.4rem !important;}
}

/* Ícone Niterói Que Queremos 2050 no topo */
.nqq-top-icon {
    vertical-align: middle;
    flex-shrink: 0;
}
.nqq-top-icon img {
    display: block;
    max-width: 92px;
}
@media (max-width: 640px) {
    .nqq-top-icon {
        min-width: 42px;
        height: 38px;
        padding-left: 6px;
        padding-right: 6px;
    }
    .nqq-top-icon img {
        max-width: 70px;
    }
}


/* SMHRF - restaurar laranja no menu institucional */
/* Limita o ajuste ao menu de navegação e mantém as cores dos demais elementos. */
header nav[aria-label="Menu principal"] > ul > li > a,
header nav[aria-label="Menu principal"] > ul > li > a:visited {
  color: #c9580e !important;
}
header nav[aria-label="Menu principal"] > ul > li > a:hover,
header nav[aria-label="Menu principal"] > ul > li > a:focus-visible {
  color: #a64008 !important;
}
/* Links dos menus suspensos e do menu mobile. */
header nav[aria-label="Menu principal"] > ul > li > div a,
header nav[aria-label="Menu principal"] > ul > li > div a:visited,
#mobile-menu a,
#mobile-menu a:visited {
  color: #c9580e !important;
}
header nav[aria-label="Menu principal"] > ul > li > div a:hover,
header nav[aria-label="Menu principal"] > ul > li > div a:focus-visible,
#mobile-menu a:hover,
#mobile-menu a:focus-visible {
  color: #a64008 !important;
}
