:root{--gold:#f7c73b;--gold2:#ffdc69;--bg:#050505;--card:#101010;--line:#626262}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:#050505;color:#fff;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}.hidden{display:none!important}.state{min-height:100vh;display:grid;place-items:center}.page{width:100%;max-width:760px;margin:0 auto;min-height:100vh;background:radial-gradient(circle at 10% 35%,#241507 0,transparent 18%),radial-gradient(circle at 95% 45%,#251508 0,transparent 18%),#050505;padding-bottom:max(30px,env(safe-area-inset-bottom))}.hero img{display:block;width:100%;height:auto}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 6.5% 8px}.quick-card{position:relative;min-width:0}.quick-card>img{display:block;width:100%;height:auto;border-radius:14px}.cover{position:absolute;display:block;background:transparent;border:0;cursor:pointer}.quick-card:first-child .cover{inset:66% 4% 5%}.wifi-show{left:5%;right:5%;top:58%;height:17%}.wifi-copy{left:5%;right:5%;top:77%;height:18%}.wifi-reveal{position:absolute;left:5%;right:5%;top:58%;height:17%;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--gold);border-radius:999px;background:#070707;color:#fff;font-weight:800;font-size:clamp(9px,2.7vw,16px);z-index:3}.social-nav{display:flex;justify-content:center;gap:clamp(24px,8vw,60px);padding:14px 0 25px}.social-btn{color:var(--gold);text-decoration:none;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;font-weight:700}.social-btn svg{width:56px;height:56px;padding:12px;border:2px solid var(--gold);border-radius:50%;fill:none;stroke:currentColor;stroke-width:1.9}.social-btn:first-child svg{fill:currentColor;stroke:none}.social-btn svg .fill{fill:currentColor;stroke:none}.contact-list{width:86%;max-width:610px;margin:0 auto 30px;display:grid;gap:9px}.contact-row{width:100%;min-height:66px;border:1px solid #5e5e5e;border-radius:15px;background:linear-gradient(180deg,#181818,#0d0d0d);color:#fff;text-decoration:none;display:grid;grid-template-columns:54px 1fr 22px;align-items:center;text-align:left;padding:9px 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}button.contact-row{font:inherit;cursor:pointer}.contact-row>span:nth-child(2){min-width:0}.contact-row b{display:block;font-size:16px;margin-bottom:3px}.contact-row small{display:block;font-size:12px;color:#e3e3e3;white-space:normal;overflow-wrap:anywhere}.contact-row i{font-style:normal;font-size:34px;color:#aaa}.row-icon{color:var(--gold);font-size:29px;text-align:center}.gallery-section{margin:10px 0 34px}.section-title{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;width:88%;margin:0 auto 14px;text-align:center}.section-title>span{height:1.5px;background:linear-gradient(90deg,transparent,var(--gold))}.section-title>span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.section-title b{display:block;letter-spacing:4px;font-size:15px}.section-title small{display:block;letter-spacing:2px;font-size:8px;margin-top:6px;color:#ddd}.peek-carousel{position:relative;width:100%;overflow:hidden;padding-bottom:28px}.track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:0 11%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.track::-webkit-scrollbar{display:none}.slide{flex:0 0 78%;margin:0;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;border:2px solid var(--gold);border-radius:15px;overflow:hidden;background:#0a0a0a;opacity:.38;transform:scale(.9);transition:opacity .22s,transform .22s,filter .22s;filter:brightness(.55)}.slide.active{opacity:1;transform:scale(1);filter:none}.slide img{display:block;width:100%;height:auto;max-height:62vh;object-fit:contain;background:#090909;cursor:zoom-in}.nav{position:absolute;top:43%;transform:translateY(-50%);z-index:8;width:45px;height:45px;border:2px solid var(--gold);border-radius:50%;background:#080808;color:#fff;font-size:34px;line-height:36px;cursor:pointer;box-shadow:0 3px 18px #000}.nav.prev{left:8px}.nav.next{right:8px}.dots{display:flex;justify-content:center;gap:8px;margin-top:13px}.dot{width:9px;height:9px;border-radius:50%;background:#707070}.dot.active{background:var(--gold)}.footer{text-align:center;padding:8px 8% 35px}.gold-line{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin-bottom:12px}.thanks{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:clamp(24px,7vw,38px)}.heart{color:var(--gold);font-size:24px;margin:6px}.brand{font-size:10px;letter-spacing:4px;color:#eee}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:80;background:#fff;color:#111;border-radius:999px;padding:11px 16px;font-weight:800;font-size:13px;box-shadow:0 8px 30px #0008;white-space:nowrap}.viewer{position:fixed;inset:0;z-index:90;background:#000e;display:flex;align-items:center;justify-content:center;padding:20px}.viewer img{max-width:96vw;max-height:90vh;object-fit:contain;border-radius:14px;border:2px solid var(--gold)}.viewer-close{position:fixed;right:16px;top:calc(16px + env(safe-area-inset-top));z-index:91;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);background:#090909;color:var(--gold);font-size:30px}
@media(max-width:480px){.page{max-width:none}.quick-grid{gap:7px;padding:12px 4.5% 7px}.quick-card>img{border-radius:10px}.social-nav{gap:32px;padding:14px 0 28px}.social-btn svg{width:52px;height:52px}.contact-list{width:84%;gap:10px;margin-bottom:34px}.contact-row{min-height:64px;padding:8px 10px;grid-template-columns:48px 1fr 18px;border-radius:13px}.contact-row b{font-size:14px}.contact-row small{font-size:11px}.row-icon{font-size:25px}.section-title{width:90%;gap:9px}.section-title b{font-size:13px;letter-spacing:3px}.section-title small{font-size:7px;letter-spacing:1.5px}.track{gap:10px;padding:0 10%}.slide{flex-basis:80%;border-radius:13px}.slide img{max-height:58vh}.nav{width:40px;height:40px;font-size:30px;top:42%}.nav.prev{left:4px}.nav.next{right:4px}.brand{font-size:8px;letter-spacing:3px}}
@media(min-width:761px){body{padding:20px 0}.page{border-left:1px solid #222;border-right:1px solid #222}.slide{flex-basis:66%}.track{padding:0 17%}}

/* CONECTA IZY 2.0 - base dinâmica/neutralizada */
.hero-fallback{min-height:260px;padding:44px 7% 38px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 50% 15%,#3a2406 0,transparent 38%),linear-gradient(145deg,#17100a,#050505 72%);border-bottom:1px solid #3a2b11}.hero-kicker{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:5px;margin-bottom:14px}.hero-fallback h1{font-family:Georgia,serif;font-size:clamp(34px,9vw,58px);line-height:1.02;margin:0;color:#fff}.hero-fallback p{margin:13px 0 0;max-width:620px;color:#ddd;line-height:1.5;font-size:14px}.wifi-generic{width:100%;aspect-ratio:434/245;border:1.5px solid var(--gold);border-radius:14px;background:radial-gradient(circle at 25% 10%,#3b2608 0,transparent 35%),#070707;padding:10% 7% 6%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.wifi-symbol{font-size:clamp(24px,7vw,52px);color:var(--gold);line-height:1}.wifi-title{font-size:clamp(14px,3.6vw,25px);margin-top:2%;font-weight:700}.wifi-sub{font-size:clamp(8px,2.2vw,14px);color:#ddd;margin:2% 0 5%}.wifi-fake-btn{width:100%;border:1.5px solid var(--gold);border-radius:999px;padding:2.4% 5%;font-size:clamp(9px,2.4vw,15px);font-weight:800;margin-top:2%}.wifi-fake-btn.gold{background:linear-gradient(#ffe07b,#e5a61a);color:#111}.quick-card.hidden{display:none!important}.quick-grid>.quick-card:only-child{grid-column:1/-1;max-width:440px;width:100%;justify-self:center}@media(max-width:480px){.hero-fallback{min-height:220px;padding:36px 6% 30px}.wifi-generic{border-radius:10px}}

/* CONECTA IZY v3 — Wi-Fi responsivo e ícones consistentes em iOS/Android */
.row-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:0}
.row-icon svg{width:27px;height:27px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.row-chevron{width:11px;height:11px;border-top:3px solid #aaa;border-right:3px solid #aaa;transform:rotate(45deg);justify-self:center}
.contact-row:not(a):not(button){grid-template-columns:54px 1fr}
.wifi-symbol{width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:var(--gold);line-height:1}
.wifi-symbol svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.wifi-generic{aspect-ratio:440/245;padding:5.5% 7% 4.5%;justify-content:flex-start;gap:0;overflow:hidden}
.wifi-title{font-size:clamp(12px,3vw,22px);margin-top:0;line-height:1.08}
.wifi-sub{font-size:clamp(7px,1.9vw,13px);margin:1.5% 0 3%;line-height:1.15}
.wifi-fake-btn{padding:2% 4%;font-size:clamp(8px,2vw,14px);line-height:1.15;margin-top:1.8%}
@media(max-width:480px){
  .row-icon{width:30px;height:30px}.row-icon svg{width:24px;height:24px}.row-chevron{width:9px;height:9px;border-width:2.5px}
  .contact-row:not(a):not(button){grid-template-columns:48px 1fr}
  .wifi-symbol{width:29px;height:29px}
  .wifi-generic{padding:4.5% 6% 3.8%}
  .wifi-title{font-size:clamp(11px,2.9vw,17px)}
  .wifi-sub{font-size:clamp(7px,1.8vw,11px);margin:1% 0 2.4%}
  .wifi-fake-btn{font-size:clamp(7px,1.8vw,11px);padding:1.8% 4%;margin-top:1.4%}
}

/* CONECTA IZY 2.0 v4 — identidade dinâmica, 4 carrosséis e rodapé da marca */
.page.has-custom-background{background-position:center top;background-size:cover;background-repeat:repeat-y;background-attachment:scroll}
.hero{position:relative}
.client-logo-wrap{position:absolute;z-index:6;left:50%;top:16px;transform:translateX(-50%);width:clamp(76px,20vw,132px);aspect-ratio:1;border-radius:50%;padding:4px;background:#090909;border:2px solid var(--gold);box-shadow:0 8px 28px #000a;overflow:hidden}
.client-logo{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
.hero:has(.client-logo-wrap:not(.hidden)) .hero-fallback{padding-top:150px}
.carousel-title-only{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;width:88%;margin:0 auto 14px;text-align:center}
.carousel-title-only>span{height:1.5px;background:linear-gradient(90deg,transparent,var(--gold))}
.carousel-title-only>span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.carousel-title-only b{display:block;letter-spacing:4px;font-size:15px;max-width:520px;overflow-wrap:anywhere}
.footer .powered{margin-top:12px;color:#ddd;font-size:11px;letter-spacing:1px}.footer .powered strong{color:var(--gold);letter-spacing:2px}.powered-link{display:inline-block;margin-top:7px;color:#ddd;text-decoration:none;font-size:10px;letter-spacing:2px}
@media(max-width:480px){.client-logo-wrap{top:10px;width:84px}.hero:has(.client-logo-wrap:not(.hidden)) .hero-fallback{padding-top:125px}.carousel-title-only{width:90%;gap:9px}.carousel-title-only b{font-size:13px;letter-spacing:3px}.footer .powered{font-size:10px}}

/* CONECTA IZY v4.3 — Google e Wi-Fi com enquadramento idêntico */

/* v4.4 — somente alinhamento Google/Wi-Fi. Não altera outras áreas. */
.quick-grid{align-items:start}
.quick-card>img{display:block;width:100%;height:auto;border-radius:0}
.wifi-name-mask{position:absolute;left:34%;right:5%;top:16%;height:22%;display:flex;align-items:center;justify-content:center;background:#080808;color:#fff;font-size:clamp(12px,3.1vw,22px);font-weight:700;line-height:1.05;z-index:2;white-space:nowrap;overflow:hidden}
.wifi-name-mask strong{font-weight:700;overflow:hidden;text-overflow:ellipsis}
@media(max-width:480px){.wifi-name-mask{font-size:clamp(11px,2.9vw,17px)}}

/* v4.5 — SOMENTE remove as sobras visuais marcadas pelo usuário.
   Não altera tamanho, conteúdo ou posicionamento dos cards. */
.hero > img:not(.hidden){
  clip-path: inset(0 0 3.4% 0);
  margin-bottom: -3.4%;
}
.quick-card > img{
  clip-path: inset(0 0 4.9% 0);
  margin-bottom: -4.9%;
}

/* CONECTA IZY 2.0 v4.7 — SOMENTE INTERFACE PÚBLICA baseada na referência aprovada.
   Nenhuma lógica, ADM, Supabase, NFC, uploads ou carrosséis foi alterada. */
.page{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(ellipse at -10% 47%,rgba(111,69,8,.24),transparent 28%),
    radial-gradient(ellipse at 108% 75%,rgba(132,80,4,.20),transparent 28%),
    linear-gradient(180deg,#050505 0%,#070603 48%,#050505 100%);
}
.page.has-custom-background{
  background-position:center top;
  background-size:cover;
  background-repeat:repeat-y;
}
.hero{z-index:1}
.hero > img:not(.hidden){
  width:100%;
  clip-path:inset(0 0 3.4% 0);
  margin-bottom:-3.4%;
}
.quick-grid{
  position:relative;
  z-index:2;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
  padding:18px 5.6% 12px;
  align-items:stretch;
}
.quick-card{
  width:100%;
  aspect-ratio:440/245;
  overflow:hidden;
  border-radius:15px;
  background:#090807;
  box-shadow:0 0 14px rgba(247,199,59,.18),0 5px 18px rgba(0,0,0,.36);
}
.quick-card>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:fill;
  border-radius:15px;
  clip-path:none;
  margin:0;
}
.wifi-name-mask{
  left:35%;right:4%;top:13%;height:30%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;background:#080808;color:#fff;line-height:1.03;white-space:normal;overflow:hidden;
}
.wifi-name-mask .wifi-label{display:block;font-size:clamp(13px,3.25vw,22px);font-weight:800;letter-spacing:.25px}
.wifi-name-mask strong{display:block;max-width:100%;font-size:clamp(10px,2.75vw,18px);font-weight:700;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wifi-reveal{border-radius:9px}
.social-nav{
  position:relative;z-index:2;
  display:flex;justify-content:center;align-items:flex-start;
  gap:clamp(34px,10vw,74px);
  padding:22px 0 30px;
}
.social-btn{gap:7px;color:var(--gold);font-size:14px;font-weight:700;line-height:1.05;min-width:72px}
.social-btn svg{
  width:62px;height:62px;padding:13px;border:2px solid var(--gold);border-radius:50%;
  box-shadow:0 0 15px rgba(247,199,59,.35),inset 0 0 12px rgba(247,199,59,.08);
}
.social-label{display:block}
.social-action-text{display:block;max-width:110px;margin-top:-1px;color:var(--gold2);font-size:10px;font-weight:800;letter-spacing:.3px;line-height:1.15;text-transform:uppercase}
.contact-list{
  position:relative;z-index:2;
  width:92%;max-width:660px;margin:0 auto 38px;display:grid;gap:12px;
}
.contact-row{
  position:relative;isolation:isolate;overflow:hidden;
  width:100%;min-height:92px;
  border:1px solid rgba(247,199,59,.34);
  border-radius:17px;
  background:linear-gradient(90deg,rgba(50,31,4,.72) 0%,rgba(17,14,8,.96) 23%,rgba(8,8,7,.96) 68%,rgba(52,34,8,.55) 100%);
  color:#fff;text-decoration:none;
  display:grid;grid-template-columns:72px minmax(0,1fr) 30px;align-items:center;
  text-align:left;padding:12px 18px;
  box-shadow:inset 18px 0 28px rgba(255,185,25,.10),0 2px 12px rgba(0,0,0,.28);
}
.contact-row::before{
  content:"";position:absolute;z-index:-1;left:-8px;top:0;bottom:0;width:58px;
  background:linear-gradient(90deg,rgba(255,193,35,.95),rgba(255,182,0,.36) 35%,transparent 100%);
  filter:blur(7px);opacity:.92;
}
.contact-row::after{
  content:"";position:absolute;z-index:-1;inset:0;
  background:radial-gradient(ellipse at 100% 50%,rgba(166,102,8,.13),transparent 38%);
  pointer-events:none;
}
button.contact-row{font:inherit}
.contact-row:not(a):not(button){grid-template-columns:72px minmax(0,1fr) 30px}
.contact-row>span:nth-child(2){min-width:0;padding-left:8px;text-align:left}
.contact-row b{display:block;margin:0 0 5px;font-size:18px;font-weight:800;letter-spacing:.1px}
.contact-row small{display:block;color:#f4f4f4;font-size:14px;line-height:1.25;overflow-wrap:anywhere}
.row-icon{width:45px;height:45px;justify-self:center;color:var(--gold2)}
.row-icon svg{width:34px;height:34px;stroke-width:1.8}
.row-chevron{width:13px;height:13px;border-top:3px solid var(--gold2);border-right:3px solid var(--gold2);justify-self:end}
.gallery-section,.footer{position:relative;z-index:2}

@media(max-width:480px){
  .quick-grid{gap:8px;padding:14px 5.5% 10px}
  .quick-card,.quick-card>img{border-radius:12px}
  .wifi-name-mask{left:35%;right:3%;top:12%;height:31%}
  .wifi-name-mask .wifi-label{font-size:clamp(11px,3vw,16px)}
  .wifi-name-mask strong{font-size:clamp(9px,2.55vw,14px)}
  .social-nav{gap:28px;padding:18px 0 28px}
  .social-btn{min-width:68px;font-size:13px;gap:7px}
  .social-btn svg{width:56px;height:56px;padding:12px}
  .social-action-text{font-size:9px;max-width:92px}
  .contact-list{width:92%;gap:10px;margin-bottom:34px}
  .contact-row{min-height:82px;grid-template-columns:58px minmax(0,1fr) 24px;padding:10px 14px;border-radius:15px}
  .contact-row:not(a):not(button){grid-template-columns:58px minmax(0,1fr) 24px}
  .contact-row>span:nth-child(2){padding-left:7px}
  .contact-row b{font-size:16px;margin-bottom:4px}
  .contact-row small{font-size:12.5px}
  .row-icon{width:39px;height:39px}.row-icon svg{width:30px;height:30px}
  .row-chevron{width:11px;height:11px;border-width:3px}
}

/* CONECTA IZY 2.0 v4.8 — AJUSTES SOLICITADOS NA INTERFACE.
   Somente: lista mais compacta, ocultar número em LIGAR e remover o rótulo fixo WhatsApp. */
.js-wa .social-label{display:none!important}
#phoneText{display:none!important}

.contact-list{gap:9px}
.contact-row{
  min-height:72px;
  grid-template-columns:56px minmax(0,1fr) 24px;
  padding:9px 14px;
  border-radius:15px;
}
.contact-row:not(a):not(button){grid-template-columns:56px minmax(0,1fr) 24px}
.contact-row>span:nth-child(2){padding-left:5px}
.contact-row b{font-size:16px;margin-bottom:3px}
.contact-row small{font-size:12.5px;line-height:1.2}
.row-icon{width:38px;height:38px}
.row-icon svg{width:29px;height:29px}
.row-chevron{width:10px;height:10px;border-width:2.5px}

@media(max-width:480px){
  .contact-list{width:92%;gap:8px;margin-bottom:30px}
  .contact-row{
    min-height:66px;
    grid-template-columns:48px minmax(0,1fr) 20px;
    padding:8px 12px;
    border-radius:14px;
  }
  .contact-row:not(a):not(button){grid-template-columns:48px minmax(0,1fr) 20px}
  .contact-row>span:nth-child(2){padding-left:4px}
  .contact-row b{font-size:14.5px;margin-bottom:2px}
  .contact-row small{font-size:11.5px;line-height:1.18}
  .row-icon{width:32px;height:32px}.row-icon svg{width:25px;height:25px}
  .row-chevron{width:9px;height:9px;border-width:2.5px}
  .social-action-text{margin-top:0}
}

/* CONECTA IZY v4.10 — SOMENTE ajuste do logo sobre a capa.
   Mantém o logo redondo maior, centralizado e sobreposto à imagem de capa. */
.client-logo-wrap{
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:clamp(120px,28vw,190px);
  z-index:10;
  padding:5px;
  border-width:2px;
  box-shadow:0 8px 30px #000c,0 0 18px rgba(247,199,59,.38);
}
@media(max-width:480px){
  .client-logo-wrap{
    top:50%;
    width:clamp(118px,31vw,150px);
  }
}

/* CONECTA IZY v4.11 — SOMENTE aumento leve do logo central sobre a capa. */
.client-logo-wrap{
  width:clamp(138px,31vw,210px);
}
@media(max-width:480px){
  .client-logo-wrap{
    width:clamp(136px,36vw,175px);
  }
}

/* CONECTA IZY v4.12 — SOMENTE exibição da descrição abaixo do logo/capa. */
.profile-description{
  width:min(86%,610px);
  margin:14px auto 4px;
  text-align:center;
  color:#f2f2f2;
  font-size:clamp(13px,3.5vw,17px);
  font-weight:500;
  line-height:1.4;
  letter-spacing:.2px;
  text-shadow:0 2px 8px #000;
}
@media(max-width:480px){
  .profile-description{width:86%;margin:12px auto 2px;font-size:13px;line-height:1.35}
}

/* CONECTA IZY v4.13 — SOMENTE ajuste visual quando não há capa.
   Remove o bloco/linha da capa ausente e o texto de fallback, mantendo o logo central sobre o próprio fundo do site. */
.hero-fallback{
  min-height:260px;
  padding:0;
  background:transparent;
  border-bottom:0;
}
.hero-fallback .hero-kicker{display:none!important}
@media(max-width:480px){
  .hero-fallback{min-height:235px;padding:0}
}

/* CONECTA IZY v4.14 — SOMENTE acabamento visual da descrição pública.
   Dá respiro abaixo do logo/capa e integra o texto ao estilo preto/dourado. */
.profile-description{
  position:relative;
  width:min(82%,580px);
  margin:22px auto 12px;
  padding:12px 18px 13px;
  text-align:center;
  color:#f6d66f;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(13px,3.4vw,16px);
  font-weight:600;
  line-height:1.5;
  letter-spacing:.35px;
  text-shadow:0 2px 10px #000,0 0 12px rgba(247,199,59,.10);
  background:linear-gradient(90deg,transparent,rgba(247,199,59,.055) 28%,rgba(247,199,59,.055) 72%,transparent);
}
.profile-description::before,
.profile-description::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:42%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:.68;
}
.profile-description::before{top:0}
.profile-description::after{bottom:0}
@media(max-width:480px){
  .profile-description{
    width:84%;
    margin:20px auto 10px;
    padding:11px 12px 12px;
    font-size:13px;
    line-height:1.48;
  }
}


/* CONECTA IZY v4.15 — tema visual por cliente.
   Dourado permanece como padrão. Azul clínico afeta somente o cliente que selecionar esse tema no ADM. */
.page[data-theme="dourado"]{--gold:#f7c73b;--gold2:#ffdc69}
.page[data-theme="azul-clinico"]{
  --gold:#49b8ff;
  --gold2:#8fd8ff;
}
.page[data-theme="azul-clinico"] .social-btn svg{
  box-shadow:0 0 15px rgba(73,184,255,.34),inset 0 0 12px rgba(73,184,255,.08);
}
.page[data-theme="azul-clinico"] .contact-row{
  border-color:rgba(73,184,255,.34);
  background:linear-gradient(90deg,rgba(5,42,67,.74) 0%,rgba(8,20,30,.96) 23%,rgba(7,12,17,.96) 68%,rgba(6,35,54,.58) 100%);
  box-shadow:inset 18px 0 28px rgba(73,184,255,.10),0 2px 12px rgba(0,0,0,.28);
}
.page[data-theme="azul-clinico"] .contact-row::before{
  background:linear-gradient(90deg,rgba(90,198,255,.95),rgba(41,153,224,.38) 35%,transparent 100%);
}
.page[data-theme="azul-clinico"] .contact-row::after{
  background:radial-gradient(ellipse at 100% 50%,rgba(37,126,181,.14),transparent 38%);
}
.page[data-theme="azul-clinico"] .profile-description{
  color:#bfe8ff;
  text-shadow:0 2px 10px #000,0 0 12px rgba(73,184,255,.12);
  background:linear-gradient(90deg,transparent,rgba(73,184,255,.06) 28%,rgba(73,184,255,.06) 72%,transparent);
}
.page[data-theme="azul-clinico"] .client-logo-wrap{
  box-shadow:0 8px 30px #000c,0 0 18px rgba(73,184,255,.38);
}
.page[data-theme="azul-clinico"] .wifi-fake-btn.gold{
  background:linear-gradient(#a9e4ff,#4bbcff);
}

/* CONECTA IZY v4.17 — NOVA INTERFACE PÚBLICA APROVADA.
   Fundo real nítido nas laterais + painel central amplo com vidro/blur.
   Mantém a lógica existente de dados, temas, carrosséis e ações. */
body{background:#050505}
.page{
  position:relative;
  width:100%;
  max-width:760px;
  min-height:100vh;
  margin:0 auto;
  padding:0;
  background:#090909;
  overflow:visible;
}
.page.has-custom-background{
  background-image:var(--client-bg)!important;
  background-position:center top!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-attachment:fixed!important;
}
.glass-panel{
  width:92%;
  min-height:100vh;
  margin:0 auto;
  padding:26px 0 max(30px,env(safe-area-inset-bottom));
  background:rgba(10,8,7,.56);
  -webkit-backdrop-filter:blur(16px) saturate(112%);
  backdrop-filter:blur(16px) saturate(112%);
  box-shadow:-10px 0 28px rgba(0,0,0,.20),10px 0 28px rgba(0,0,0,.20);
  border-left:1px solid rgba(255,255,255,.07);
  border-right:1px solid rgba(255,255,255,.07);
}
.profile-header{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:2px 7% 0;
  text-align:center;
}
.client-logo-wrap{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:clamp(142px,35vw,210px)!important;
  aspect-ratio:1;
  margin:0 auto 12px!important;
  padding:4px!important;
  border:2px solid var(--gold)!important;
  border-radius:50%!important;
  background:#080808;
  overflow:hidden;
  box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 16px color-mix(in srgb,var(--gold) 34%,transparent)!important;
}
.client-logo{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.business-name{
  margin:0;
  color:#fff;
  font-size:clamp(27px,7vw,42px);
  font-weight:800;
  line-height:1.08;
  text-shadow:0 2px 10px rgba(0,0,0,.6);
}
.profile-description{
  position:relative;
  width:100%!important;
  max-width:560px;
  margin:9px auto 0!important;
  padding:0 0 17px!important;
  color:#f3f3f3!important;
  background:none!important;
  font-size:clamp(14px,3.6vw,18px)!important;
  font-weight:500!important;
  line-height:1.4!important;
  letter-spacing:.1px!important;
  text-shadow:0 2px 8px rgba(0,0,0,.7)!important;
}
.profile-description::before,.profile-description::after{display:none!important}
.profile-description:not(.hidden)::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:58px!important;
  height:3px!important;
  transform:translateX(-50%)!important;
  border-radius:99px;
  background:var(--gold)!important;
  opacity:1!important;
}
.social-nav{
  position:relative;
  z-index:2;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px!important;
  width:90%;
  margin:16px auto 22px;
  padding:0!important;
  align-items:start;
}
.social-btn{
  min-width:0!important;
  color:#fff!important;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px!important;
  text-align:center;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.15!important;
}
.social-btn svg{
  width:58px!important;
  height:58px!important;
  padding:13px!important;
  border:0!important;
  border-radius:50%!important;
  color:#fff!important;
  stroke:currentColor!important;
  fill:none!important;
  box-shadow:0 5px 14px rgba(0,0,0,.28)!important;
}
.social-btn svg .fill{fill:#fff!important;stroke:none!important}
.social-wa svg{background:#28b85a!important;fill:#fff!important;stroke:none!important}
.social-phone svg{background:#e55353!important}
.social-location svg{background:#efb62d!important}
.social-ig svg{background:linear-gradient(145deg,#7f3dc5,#dc3b78,#f29b32)!important}
.social-btn span{display:block;max-width:84px}
.social-action-text{color:#fff!important;text-transform:none!important;font-size:12px!important;letter-spacing:0!important;max-width:86px!important;margin:0!important}

.contact-list{
  position:relative;
  z-index:2;
  width:94%!important;
  max-width:660px;
  margin:0 auto 24px!important;
  display:grid;
  gap:9px!important;
}
.contact-row{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  min-height:72px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:14px!important;
  background:rgba(40,34,30,.54)!important;
  color:#fff;
  text-decoration:none;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 22px!important;
  align-items:center;
  text-align:left;
  padding:9px 13px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 3px 12px rgba(0,0,0,.12)!important;
}
.contact-row::before,.contact-row::after{display:none!important}
.contact-row>span:nth-child(2){min-width:0;padding-left:4px!important}
.contact-row b{display:block;margin:0 0 3px!important;font-size:16px!important;font-weight:800}
.contact-row small{display:block;color:#f2f2f2!important;font-size:12.5px!important;line-height:1.2!important}
.row-icon{width:38px!important;height:38px!important;color:#fff!important;display:flex;align-items:center;justify-content:center;font-size:0}
.row-icon svg{width:29px!important;height:29px!important;fill:none;stroke:currentColor;stroke-width:1.9}
.google-letter{font-size:38px!important;font-weight:800;font-family:Arial,Helvetica,sans-serif;line-height:1}
.row-chevron{width:10px!important;height:10px!important;border-top:2.5px solid #fff!important;border-right:2.5px solid #fff!important;transform:rotate(45deg);justify-self:center}
.row-external{font-style:normal;font-size:25px;color:#fff;justify-self:center;line-height:1}
.wifi-row{grid-template-columns:52px minmax(0,1fr) auto!important}
.wifi-actions{display:flex;align-items:center;gap:7px;justify-self:end}
.wifi-mini-btn,.wifi-copy-btn{
  border:1.5px solid var(--gold);
  background:rgba(0,0,0,.20);
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.wifi-mini-btn{min-width:100px;padding:8px 11px;border-radius:8px;font-size:12px}
.wifi-copy-btn{width:34px;height:34px;padding:6px;border-radius:8px;display:grid;place-items:center}
.wifi-copy-btn svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:1.8}

.gallery-section{position:relative;z-index:2;margin:12px 0 30px}
.carousel-title-only{width:90%!important;margin-bottom:12px!important}
.carousel-title-only b{color:#fff}
.peek-carousel{width:100%}
.slide{border-color:rgba(255,255,255,.22)!important;background:rgba(8,8,8,.68)!important}
.slide.active{box-shadow:0 4px 18px rgba(0,0,0,.25)}
.nav{border-color:var(--gold)!important;background:rgba(10,10,10,.78)!important}
.footer{position:relative;z-index:2;padding:6px 7% 28px}

.page[data-theme="azul-clinico"] .contact-row{
  border-color:rgba(255,255,255,.16)!important;
  background:rgba(19,35,45,.58)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 3px 12px rgba(0,0,0,.12)!important;
}
.page[data-theme="azul-clinico"] .profile-description{color:#f3f3f3!important;background:none!important}

@media(max-width:480px){
  .glass-panel{width:92%;padding-top:22px}
  .client-logo-wrap{width:clamp(136px,37vw,168px)!important;margin-bottom:10px!important}
  .business-name{font-size:clamp(25px,7.2vw,34px)}
  .profile-description{font-size:14px!important;padding-bottom:15px!important}
  .social-nav{width:94%;gap:4px!important;margin:14px auto 20px}
  .social-btn{font-size:11.5px!important}
  .social-btn svg{width:52px!important;height:52px!important;padding:11px!important}
  .social-btn span,.social-action-text{max-width:76px!important;font-size:11px!important}
  .contact-list{width:94%!important;gap:8px!important;margin-bottom:22px!important}
  .contact-row{min-height:66px!important;grid-template-columns:45px minmax(0,1fr) 18px!important;padding:8px 10px!important;border-radius:13px!important}
  .contact-row b{font-size:14.5px!important}
  .contact-row small{font-size:11.5px!important}
  .row-icon{width:32px!important;height:32px!important}.row-icon svg{width:25px!important;height:25px!important}
  .google-letter{font-size:33px!important}
  .wifi-row{grid-template-columns:45px minmax(0,1fr) auto!important}
  .wifi-actions{gap:5px}
  .wifi-mini-btn{min-width:82px;padding:7px 8px;font-size:10.5px}
  .wifi-copy-btn{width:31px;height:31px;padding:5px}
  .wifi-copy-btn svg{width:18px;height:18px}
  .row-external{font-size:21px}
}

@media(min-width:761px){
  body{padding:20px 0}
  .page{border-left:1px solid #222;border-right:1px solid #222}
}

/* v4.18 — ajustes visuais aprovados da lista */
.open-status{
  display:inline-flex;align-items:center;gap:8px;margin:0 auto 14px;padding:7px 14px;
  border-radius:999px;background:rgba(12,12,12,.72);border:1px solid rgba(255,255,255,.16);
  color:#fff;font-size:12px;font-weight:800;letter-spacing:.2px;box-shadow:0 4px 14px rgba(0,0,0,.2)
}
.open-status.open{color:#bdf7ca}.open-status.closed{color:#ffd0d0}
.status-dot{width:8px;height:8px;border-radius:50%;background:#999;box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.open-status.open .status-dot{background:#36d66b;box-shadow:0 0 10px rgba(54,214,107,.75)}
.open-status.closed .status-dot{background:#e65b5b;box-shadow:0 0 10px rgba(230,91,91,.55)}

.contact-list{gap:11px!important}
.contact-row{
  min-height:66px!important;border:0!important;border-radius:999px!important;
  background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 19%,rgba(24,22,20,.86)),rgba(24,22,20,.78))!important;
  grid-template-columns:48px minmax(0,1fr) 24px!important;padding:8px 17px!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 25%,rgba(255,255,255,.10)),0 5px 16px rgba(0,0,0,.16)!important;
}
.contact-row:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 25%,rgba(24,22,20,.88)),rgba(24,22,20,.82))!important}
.contact-row>span:nth-child(2){padding:0!important;text-align:center!important}
.contact-row b{font-size:15px!important;margin:0 0 2px!important;letter-spacing:.1px}
.contact-row small{font-size:11.5px!important;color:rgba(255,255,255,.88)!important}
.row-icon{width:35px!important;height:35px!important;color:var(--gold2)!important}
.row-icon svg{width:27px!important;height:27px!important}
.pix-icon{stroke-width:1.7!important}
.google-letter{font-size:31px!important;color:var(--gold2)!important}
.row-chevron{width:9px!important;height:9px!important;border-width:2px!important;border-color:var(--gold2)!important;justify-self:end!important}
.wifi-row{grid-template-columns:48px minmax(0,1fr) 24px!important}
.row-external,.wifi-actions{display:none!important}

.wifi-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:22px;background:rgba(0,0,0,.68);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}
.wifi-modal-card{position:relative;width:min(92vw,390px);padding:28px 24px 24px;border-radius:24px;text-align:center;color:#fff;background:rgba(20,18,17,.96);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);box-shadow:0 18px 55px rgba(0,0,0,.55)}
.wifi-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;background:transparent;color:#fff;font-size:29px;line-height:1;cursor:pointer}
.wifi-modal-icon{width:54px;height:54px;margin:0 auto 8px;color:var(--gold2)}
.wifi-modal-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.wifi-modal-card h2{margin:0 0 18px;font-size:21px}.wifi-modal-label{margin:12px 0 3px;color:#bbb;font-size:11px;text-transform:uppercase;letter-spacing:1.4px}.wifi-modal-card strong{display:block;font-size:17px;overflow-wrap:anywhere}
.wifi-modal-copy{width:100%;margin-top:20px;padding:12px 16px;border:0;border-radius:999px;background:var(--gold);color:#111;font-weight:900;font-size:14px;cursor:pointer}

.page[data-theme="azul-clinico"] .contact-row{background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 19%,rgba(13,29,39,.88)),rgba(13,29,39,.80))!important}

@media(max-width:480px){
  .open-status{margin-bottom:12px;padding:6px 12px;font-size:11px}
  .contact-list{gap:9px!important}
  .contact-row{min-height:62px!important;grid-template-columns:42px minmax(0,1fr) 20px!important;padding:7px 14px!important;border-radius:999px!important}
  .wifi-row{grid-template-columns:42px minmax(0,1fr) 20px!important}
  .contact-row b{font-size:14px!important}.contact-row small{font-size:10.8px!important}
  .row-icon{width:31px!important;height:31px!important}.row-icon svg{width:24px!important;height:24px!important}
  .google-letter{font-size:29px!important}.row-chevron{width:8px!important;height:8px!important}
}

/* v4.24 — SOMENTE ajuste solicitado de enquadramento do Destaque Principal.
   Reduz levemente o destaque e enquadra os blocos abaixo sem alterar cores, ícones, textos ou funções. */
.highlight-section{
  position:relative;
  z-index:2;
  width:78%;
  margin:22px auto 26px;
}
.highlight-carousel{width:100%;padding-bottom:22px}
.highlight-carousel .track{padding:0;gap:0}
.highlight-carousel .slide{
  flex:0 0 100%;
  aspect-ratio:1/1;
  margin:0;
  border-radius:22px!important;
  opacity:1;
  transform:none;
  filter:none;
  background:rgba(8,8,8,.68)!important;
}
.highlight-carousel .slide img{
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
}
.highlight-carousel .nav{top:47%}
.highlight-carousel .dots{margin-top:12px}

/* Pequeno respiro entre os blocos, mantendo a composição já aprovada. */
.profile-header{padding-bottom:2px}
.highlight-section + .social-nav{margin-top:0}
.social-nav{width:86%;margin-bottom:30px}
.contact-list{width:90%!important;gap:15px!important}

@media(max-width:480px){
  .highlight-section{width:78%;margin:20px auto 24px}
  .highlight-carousel{padding-bottom:20px}
  .highlight-carousel .slide{border-radius:18px!important}
  .social-nav{width:86%!important;margin-bottom:27px}
  .contact-list{width:90%!important;gap:13px!important}
}

/* v4.25 — SOMENTE ajuste solicitado do Destaque Principal.
   Aproxima o tamanho ao da referência enviada e posiciona as setas por fora da imagem. */
.highlight-section{
  width:86%;
}
.highlight-carousel{
  overflow:visible!important;
}
.highlight-carousel .nav.prev{
  left:-22px!important;
}
.highlight-carousel .nav.next{
  right:-22px!important;
}

@media(max-width:480px){
  .highlight-section{width:86%;}
  .highlight-carousel .nav.prev{left:-18px!important;}
  .highlight-carousel .nav.next{right:-18px!important;}
}

/* v4.28 — desativa zoom por duplo toque, preservando rolagem e pinch-to-zoom */
html,body,.page{touch-action:manipulation}
