/* AHT – Catálogo digital para totem (vertical 1080x1920, responsivo) */
/* Brandon Grotesque (fonte oficial AHT – licenciada). Coloque os arquivos na pasta /fonts com estes nomes. */
@font-face{font-family:"Brandon Grotesque";font-weight:300;font-style:normal;font-display:swap;src:local("Brandon Grotesque Light"),local("BrandonGrotesque-Light"),url("../fonts/BrandonGrotesque-Light.woff2") format("woff2"),url("../fonts/BrandonGrotesque-Light.otf") format("opentype"),url("../fonts/BrandonGrotesque-Light.ttf") format("truetype")}
@font-face{font-family:"Brandon Grotesque";font-weight:400;font-style:normal;font-display:swap;src:local("Brandon Grotesque Regular"),local("BrandonGrotesque-Regular"),url("../fonts/BrandonGrotesque-Regular.woff2") format("woff2"),url("../fonts/BrandonGrotesque-Regular.otf") format("opentype"),url("../fonts/BrandonGrotesque-Regular.ttf") format("truetype")}
@font-face{font-family:"Brandon Grotesque";font-weight:500;font-style:normal;font-display:swap;src:local("Brandon Grotesque Medium"),local("BrandonGrotesque-Medium"),url("../fonts/BrandonGrotesque-Medium.woff2") format("woff2"),url("../fonts/BrandonGrotesque-Medium.otf") format("opentype"),url("../fonts/BrandonGrotesque-Medium.ttf") format("truetype")}
@font-face{font-family:"Brandon Grotesque";font-weight:600;font-style:normal;font-display:swap;src:local("Brandon Grotesque Bold"),local("BrandonGrotesque-Bold"),url("../fonts/BrandonGrotesque-Bold.woff2") format("woff2"),url("../fonts/BrandonGrotesque-Bold.otf") format("opentype"),url("../fonts/BrandonGrotesque-Bold.ttf") format("truetype")}
@font-face{font-family:"Brandon Grotesque";font-weight:700;font-style:normal;font-display:swap;src:local("Brandon Grotesque Bold"),local("BrandonGrotesque-Bold"),url("../fonts/BrandonGrotesque-Bold.woff2") format("woff2"),url("../fonts/BrandonGrotesque-Bold.otf") format("opentype"),url("../fonts/BrandonGrotesque-Bold.ttf") format("truetype")}

:root{
  --red:#E2001A;
  --red-dark:#B80015;
  --ink:#191E23;
  --ink-2:#4A5058;
  --muted:#8A9097;
  --line:#E4E4E4;
  --bg:#FFFFFF;
  --bg-2:#F4F4F4;
  --bg-3:#EAEAEA;
  --c-chilled:#1D3FBF;
  --c-frozen:#0E7C7B;
  --c-chest:#6B2FA6;
  --c-fresh:#E8541E;
  --c-specialty:#E39A00;
  --c-components:#1B2A5C;
  --c-cold:#13807A;
  --c-case:#E2001A;
  --font-display:"Brandon Grotesque","brandon-grotesque","Jost","Segoe UI",system-ui,sans-serif;
  --font-body:"Jost","Segoe UI",system-ui,sans-serif;
  --fpi:#4F6272;
  --dk:#0097D7;
  --c-comfort:#1C9AD6;
  --ok:#1E8E3E;
  /* 20px numa tela 1080x1920; escala com a tela */
  font-size:clamp(14px, min(1.852vw, 1.0417vh), 30px);
  --gutter:2.4rem;
  --dock-h:6.2rem;
  --top-h:5.4rem;
}
@media (orientation:landscape){
  :root{font-size:clamp(14px, min(1.15vw, 1.6vh), 24px)}
}
@media (max-width:600px){
  :root{font-size:15px;--gutter:16px;--dock-h:4.6rem;--top-h:4rem}
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;background:var(--bg);color:var(--ink)}
body{
  font-family:var(--font-body);
  font-weight:400;line-height:1.35;
  -webkit-font-smoothing:antialiased;
  user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  overscroll-behavior:none;
}
img{display:block;max-width:100%;-webkit-user-drag:none}
/* Títulos em Brandon Grotesque (padrão AHT); textos corridos em Jost */
h1,h2,h3,.idle-q,.hero-badge{font-family:var(--font-display)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

#app{height:100%;display:flex;flex-direction:column;overflow:hidden}

/* ---------- Topo ---------- */
.topbar{
  height:var(--top-h);flex:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:0 var(--gutter);border-bottom:1px solid var(--line);background:#fff;z-index:5;
}
.brand img{height:calc(var(--top-h) * .62);width:auto}
.topbar-title{font-size:1rem;color:var(--ink-2);font-weight:500;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Área principal ---------- */
.view{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;position:relative}
.view::-webkit-scrollbar{width:0}
.page{padding:0 0 3rem;animation:pageIn .35s ease both}
@keyframes pageIn{from{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:none}}
.wrap{padding:0 var(--gutter)}

/* ---------- Dock inferior ---------- */
.dock{
  height:var(--dock-h);flex:none;display:grid;grid-template-columns:repeat(5,1fr);
  background:var(--ink);color:#fff;z-index:5;
}
.dock-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;font-size:.95rem;font-weight:500;letter-spacing:.01em;position:relative;transition:background .15s}
.dock-btn svg{width:2rem;height:2rem}
.dock-btn:active{background:#2c333a}
.dock-btn.active{color:#fff}
.dock-btn.active::before{content:"";position:absolute;top:0;left:20%;right:20%;height:.3rem;background:var(--red)}
.dock-btn[data-act="back"]{border-right:1px solid #343b43}
.dock-btn.disabled{opacity:.35;pointer-events:none}

/* ---------- Tipografia ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-size:.95rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.stripes{display:inline-grid;gap:.18rem;width:2.4rem}
.stripes i{display:block;background:var(--red);height:.18rem}
.stripes i:nth-child(2){height:.32rem}
.stripes i:nth-child(3){height:.5rem}
h1.title{font-size:3.2rem;font-weight:500;line-height:1.05;letter-spacing:-.01em;margin:.8rem 0 .8rem}
h2.section{font-size:2rem;font-weight:500;line-height:1.1;margin:0 0 1.2rem}
.lead{font-size:1.3rem;color:var(--ink-2);line-height:1.4;max-width:46rem}
.small{font-size:.9rem;color:var(--muted)}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;min-height:4rem;padding:0 2rem;font-size:1.2rem;font-weight:500;border-radius:4px;transition:transform .1s, background .15s}
.btn:active{transform:scale(.97)}
.btn svg{width:1.4rem;height:1.4rem}
.btn-red{background:var(--red);color:#fff}
.btn-red:active{background:var(--red-dark)}
.btn-line{border:2px solid var(--ink);color:var(--ink)}
.btn-block{width:100%}
.icon-btn{width:3.6rem;height:3.6rem;display:grid;place-items:center;border-radius:50%;background:var(--bg-2)}
.icon-btn svg{width:1.6rem;height:1.6rem}

/* ---------- Início ---------- */
.hero{position:relative;padding:3rem var(--gutter) 0;background:linear-gradient(180deg,#fff 0%,#fff 55%,var(--bg-2) 55%)}
.hero h1{font-size:4.1rem;font-weight:500;line-height:1;letter-spacing:-.015em;margin:1rem 0 1.2rem}
.hero h1 em{font-style:normal;color:var(--red)}
.hero .lead{font-size:1.45rem}
.hero-img{margin:1.4rem calc(var(--gutter) * -1) 0;position:relative}
.hero-img img{width:100%;height:34vh;max-height:40rem;object-fit:cover;object-position:center 60%;display:block}
.hero-badge{
  position:absolute;right:0;bottom:-1.6rem;background:var(--red);color:#fff;padding:1.4rem 1.8rem;max-width:62%;
  font-size:1.9rem;font-weight:500;line-height:1.1;
}
.hero-badge small{display:block;font-size:1rem;font-weight:400;opacity:.9;margin-top:.4rem}

.sys-grid{display:grid;gap:1.4rem;margin-top:3.4rem}
.sys-card{
  display:grid;grid-template-columns:1fr auto;gap:1rem 1.4rem;align-items:start;
  background:#fff;border:1px solid var(--line);border-left:.6rem solid var(--red);padding:2rem 2rem 2rem 1.8rem;
  box-shadow:0 .6rem 1.6rem rgba(0,0,0,.05);transition:transform .12s;
}
.sys-card:active{transform:scale(.985)}
.sys-card.co2{border-left-color:var(--ink)}
.sys-card h3{font-size:2.3rem;font-weight:500;line-height:1}
.sys-card .sub{font-size:1.2rem;color:var(--ink-2);margin-top:.5rem}
.sys-card ul{grid-column:1/-1;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1.4rem;margin-top:.6rem}
.sys-card li{font-size:1.08rem;padding-left:1.4rem;position:relative;line-height:1.3}
.sys-card li::before{content:"";position:absolute;left:0;top:.45em;width:.6rem;height:.6rem;background:var(--red)}
.sys-card.co2 li::before{background:var(--ink)}
.arrow-circle{width:4.4rem;height:4.4rem;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;flex:none}
.sys-card.co2 .arrow-circle{background:var(--ink)}
.arrow-circle svg{width:1.8rem;height:1.8rem}
.sys-tag{display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}

.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.4rem}
.quick a{background:var(--ink);color:#fff;padding:1.6rem 1.4rem;min-height:9rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem;transition:transform .12s}
.quick a:active{transform:scale(.97)}
.quick a:nth-child(1){background:var(--red)}
.quick svg{width:2.4rem;height:2.4rem}
.quick strong{font-size:1.3rem;font-weight:500;line-height:1.15}
.home-foot{margin-top:2.4rem;padding:2rem var(--gutter);display:flex;align-items:center;gap:1.4rem;border-top:1px solid var(--line)}
.home-foot p{font-size:1.15rem;color:var(--ink-2)}
.home-foot strong{display:block;font-size:1.5rem;color:var(--ink);font-weight:500}

/* ---------- Seletor de sistema ---------- */
.seg{display:grid;grid-template-columns:1fr 1fr;background:var(--bg-2);padding:.35rem;border-radius:6px;margin:1.6rem 0}
.seg a{min-height:3.6rem;display:grid;place-items:center;font-size:1.2rem;font-weight:500;color:var(--ink-2);border-radius:4px;transition:background .15s,color .15s}
.seg a.on{background:#fff;color:var(--ink);box-shadow:0 .15rem .6rem rgba(0,0,0,.1)}

/* ---------- Mapa da loja ---------- */
.page-head{padding:2.4rem var(--gutter) 0}
.map{position:relative;margin:0 calc(var(--gutter) * -1);overflow:hidden;aspect-ratio:2000/1126}
.map img{position:absolute;left:0;top:0;width:100%;height:auto}
.hot{position:absolute;border-radius:10px;display:block}
.hot.off{pointer-events:none}
.hot:active{background:rgba(226,0,26,.12)}
.pin{
  --c:var(--red);position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:.5rem;
  background:#fff;border:2px solid var(--c);border-radius:2rem;padding:.25rem .9rem .25rem .25rem;
  box-shadow:0 .3rem 1rem rgba(0,0,0,.18);white-space:nowrap;z-index:1;
}
.pin b{width:2.3rem;height:2.3rem;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font-size:1.15rem;font-weight:600;animation:pulse 2.2s infinite}
.pin span{font-size:1rem;font-weight:600;color:var(--c)}
.pin:active{transform:translate(-50%,-50%) scale(.94)}
.pin.off{opacity:.5;filter:grayscale(1);pointer-events:none}
.pin.off b{animation:none}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(226,0,26,.5)}70%{box-shadow:0 0 0 1rem rgba(226,0,26,0)}100%{box-shadow:0 0 0 0 rgba(226,0,26,0)}}
@media (max-width:600px){.pin{gap:.3rem;padding:.15rem .5rem .15rem .15rem;border-width:1.5px}.pin b{width:1.5rem;height:1.5rem;font-size:.8rem}.pin span{font-size:.62rem}}
.map-hint{display:flex;align-items:center;gap:.6rem;font-size:1rem;color:var(--ink-2);margin:.8rem 0 0}
.map-hint i{width:1rem;height:1rem;border-radius:50%;background:var(--red);display:inline-block;flex:none}

.area-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
.area-tile{
  --c:var(--red);display:flex;flex-direction:column;gap:.6rem;padding:1.5rem 1.4rem 1.3rem;background:#fff;border:1px solid var(--line);
  border-top:.45rem solid var(--c);min-height:11rem;transition:transform .12s;
}
.area-tile:active{transform:scale(.97)}
.area-tile .num{width:2.4rem;height:2.4rem;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font-weight:600;font-size:1.1rem}
.area-tile h3{font-size:1.45rem;font-weight:500;line-height:1.1;color:var(--c)}
.area-tile p{font-size:1rem;color:var(--ink-2);line-height:1.3;flex:1}
.area-tile .count{font-size:.95rem;font-weight:600;color:var(--ink);display:flex;align-items:center;justify-content:space-between}
.area-tile .count svg{width:1.4rem;height:1.4rem;color:var(--c)}
.area-tile.off{opacity:.45;pointer-events:none}

/* ---------- Cabeçalho de área ---------- */
.area-hero{--c:var(--red);padding:2.2rem var(--gutter) 2rem;background:var(--c);color:#fff;position:relative;overflow:hidden}
.area-hero::after{content:"";position:absolute;right:-6rem;top:-6rem;width:20rem;height:20rem;border-radius:50%;border:2.6rem solid rgba(255,255,255,.1)}
.area-hero .eyebrow{color:#fff;opacity:.9}
.area-hero .stripes i{background:#fff}
.area-hero h1{font-size:3rem;font-weight:500;margin:.6rem 0 .5rem;line-height:1.05}
.area-hero p{font-size:1.25rem;opacity:.92;max-width:40rem}

/* ---------- Cards de produto ---------- */
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;margin-top:1.6rem}
@media (orientation:landscape){.grid{grid-template-columns:repeat(4,1fr)}.area-list{grid-template-columns:repeat(4,1fr)}.sys-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.grid{grid-template-columns:1fr 1fr;gap:.8rem}.sys-card ul{grid-template-columns:1fr}.quick{grid-template-columns:1fr}.area-list{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .12s, box-shadow .12s;position:relative}
.card:active{transform:scale(.97)}
.card-img{aspect-ratio:4/3;background:#fff;display:grid;place-items:center;padding:1rem;border-bottom:1px solid var(--line);overflow:hidden}
.card-img img{max-height:100%;width:auto;max-width:100%;object-fit:contain}
.card-img.cover{padding:0}
.card-img.cover img{width:100%;height:100%;object-fit:cover}
.card-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.card-brand{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.card h3{font-size:1.4rem;font-weight:500;line-height:1.1}
.card p{font-size:.98rem;color:var(--ink-2);line-height:1.3;flex:1}
.card .more{display:flex;align-items:center;justify-content:space-between;font-size:.95rem;font-weight:600;color:var(--red);margin-top:.3rem}
.card .more svg{width:1.3rem;height:1.3rem}
.sys-pill{position:absolute;top:.8rem;left:.8rem;font-size:.75rem;font-weight:600;letter-spacing:.06em;padding:.3rem .6rem;background:var(--ink);color:#fff;border-radius:2px}
.sys-pill.spi{background:var(--red)}

/* ---------- Página de produto ---------- */
.pd-img{background:#fff;position:relative;border-bottom:1px solid var(--line)}
.pd-img img{width:100%;max-height:44vh;object-fit:contain;margin:0 auto;padding:1.4rem var(--gutter)}
.pd-img.cover img{object-fit:cover;padding:0;max-height:46vh}
.pd-head{padding:2rem var(--gutter) 0}
.pd-head h1{font-size:3.4rem;font-weight:500;line-height:1;margin:.6rem 0 1rem;letter-spacing:-.01em}
.chips{display:flex;flex-wrap:wrap;gap:.6rem}
.chip{--c:var(--ink);display:inline-flex;align-items:center;gap:.5rem;min-height:2.6rem;padding:0 1rem;border:1.5px solid var(--c);color:var(--c);font-size:1rem;font-weight:500;border-radius:2rem}
.chip i{width:.7rem;height:.7rem;border-radius:50%;background:var(--c)}
.chip.fill{background:var(--c);color:#fff}
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0 0}
.benefit{background:var(--bg-2);padding:1.5rem 1.4rem;display:flex;gap:1rem;align-items:flex-start;border-top:.35rem solid var(--red)}
.benefit b{font-size:2rem;font-weight:600;color:var(--red);line-height:1}
.benefit p{font-size:1.15rem;line-height:1.35}
.specs{margin-top:2.2rem;border-top:2px solid var(--ink)}
.spec{display:grid;grid-template-columns:13rem 1fr;gap:1.4rem;padding:1.05rem 0;border-bottom:1px solid var(--line)}
.spec dt{font-size:1rem;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;line-height:1.35}
.spec dd{font-size:1.15rem;line-height:1.4}
@media (max-width:600px){.spec{grid-template-columns:1fr;gap:.2rem}.benefits{grid-template-columns:1fr}}
.pd-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
.pd-actions .btn:only-child{grid-column:1/-1}
.pd-source{margin-top:1.4rem}
.related{margin-top:3rem}
.hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:42%;gap:1rem;overflow-x:auto;padding:0 var(--gutter) .6rem;margin:0 calc(var(--gutter) * -1);scroll-snap-type:x mandatory}
.hscroll::-webkit-scrollbar{height:0}
.hscroll .card{scroll-snap-align:start}
@media (orientation:landscape){.hscroll{grid-auto-columns:22%}}

/* ---------- Filtros ---------- */
.filters{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);z-index:2;padding:1.2rem var(--gutter);border-bottom:1px solid var(--line)}
.filter-row{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.2rem}
.filter-row::-webkit-scrollbar{height:0}
.filter-row + .filter-row{margin-top:.7rem}
.fchip{--c:var(--ink);flex:none;min-height:3.2rem;padding:0 1.3rem;border-radius:2rem;border:1.5px solid var(--line);font-size:1.05rem;font-weight:500;color:var(--ink-2);display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}
.fchip i{width:.7rem;height:.7rem;border-radius:50%;background:var(--c)}
.fchip.on{background:var(--ink);border-color:var(--ink);color:#fff}
.result-count{font-size:1rem;color:var(--muted);margin-top:1.4rem}

/* ---------- Referências ---------- */
.ref-card{display:grid;grid-template-columns:1fr;background:#fff;border:1px solid var(--line);margin-bottom:1.2rem;transition:transform .12s}
.ref-card:active{transform:scale(.985)}
.ref-card .ref-img{aspect-ratio:16/8;overflow:hidden;position:relative}
.ref-card .ref-img img{width:100%;height:100%;object-fit:cover}
.ref-card .ref-img .sys-pill{top:1rem;left:1rem;font-size:.9rem;padding:.4rem .8rem}
.ref-card .ref-body{padding:1.5rem 1.6rem 1.6rem;display:grid;grid-template-columns:1fr auto;gap:.4rem 1rem;align-items:center}
.ref-card h3{font-size:1.9rem;font-weight:500;line-height:1.05}
.ref-card .meta{font-size:1.05rem;color:var(--muted);grid-column:1}
.ref-card p{grid-column:1/-1;font-size:1.1rem;color:var(--ink-2);margin-top:.5rem}
.ref-card .arrow-circle{grid-row:1/3;grid-column:2;width:3.6rem;height:3.6rem}
@media (orientation:landscape){.refs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.refs-grid .ref-card{margin:0}}

/* ---------- Serviços AHT 360 ---------- */
.svc-hero{display:grid;grid-template-columns:15rem 1fr;gap:2rem;align-items:center;padding:2.4rem var(--gutter) 1rem}
.svc-hero img{width:100%}
.svc-hero p{font-size:1.4rem;line-height:1.35;color:var(--ink-2)}
.svc-hero p strong{color:var(--red);font-weight:500}
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
.svc{background:var(--bg-2);padding:1.8rem 1.6rem;display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}
.svc .ico{width:3.8rem;height:3.8rem;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center}
.svc .ico svg{width:1.9rem;height:1.9rem}
.svc h3{font-size:1.6rem;font-weight:500;line-height:1.1}
.svc ul{list-style:none;display:grid;gap:.6rem}
.svc li{font-size:1.05rem;line-height:1.3;padding-left:1.2rem;position:relative;color:var(--ink-2)}
.svc li::before{content:"";position:absolute;left:0;top:.5em;width:.45rem;height:.45rem;background:var(--red)}
.svc .n{position:absolute;right:1.2rem;top:.6rem;font-size:4.4rem;font-weight:600;color:rgba(0,0,0,.05);line-height:1}
@media (orientation:landscape){.svc-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.svc-grid{grid-template-columns:1fr}.svc-hero{grid-template-columns:1fr}}

/* ---------- Bottom sheet (dimensões) ---------- */
.sheet{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}
.sheet[hidden]{display:none}
.sheet-backdrop{position:absolute;inset:0;background:rgba(25,30,35,.55);animation:fade .2s both}
.sheet-panel{position:relative;background:#fff;max-height:82vh;display:flex;flex-direction:column;animation:up .28s cubic-bezier(.2,.8,.2,1) both;border-top:.5rem solid var(--red)}
@keyframes fade{from{opacity:0}}
@keyframes up{from{transform:translateY(100%)}}
.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.6rem var(--gutter);border-bottom:1px solid var(--line)}
.sheet-head h2{font-size:1.8rem;font-weight:500;line-height:1.1}
.sheet-body{overflow:auto;padding:1.4rem var(--gutter) 2.4rem}
.tbl-wrap{overflow-x:auto;margin-bottom:2rem;border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;font-size:1.02rem}
th,td{padding:.75rem .9rem;text-align:left;white-space:nowrap;border-bottom:1px solid var(--line)}
th{background:var(--ink);color:#fff;font-weight:500;position:sticky;top:0}
tr:nth-child(even) td{background:var(--bg-2)}
td:first-child{font-weight:600}

/* ---------- Tela de inatividade ---------- */
.idle{position:fixed;inset:0;z-index:30;background:rgba(25,30,35,.7);display:grid;place-items:center;padding:var(--gutter);animation:fade .2s both}
.idle[hidden]{display:none}
.idle-card{background:#fff;padding:3rem 2.6rem;max-width:36rem;text-align:center;border-top:.6rem solid var(--red);display:grid;gap:1.2rem}
.idle-q{font-size:2.4rem;font-weight:500}
.idle-card p{font-size:1.25rem;color:var(--ink-2)}

.empty{padding:4rem var(--gutter);text-align:center;color:var(--muted);font-size:1.2rem}

/* ---------- Full Plug-in ---------- */
.sys-card.fpi{border-left-color:var(--fpi)}
.sys-card.fpi li::before,.sys-card.fpi .arrow-circle{background:var(--fpi)}
.sys-pill.fpi{background:var(--fpi)}
.seg{grid-template-columns:repeat(3,1fr)}
.card-note{position:absolute;top:.8rem;right:.8rem;left:.8rem;width:max-content;max-width:calc(100% - 1.6rem);margin-left:auto;font-size:.78rem;font-weight:600;padding:.3rem .6rem;background:var(--fpi);color:#fff;border-radius:2px;line-height:1.2}
@media (orientation:landscape){.sys-grid{grid-template-columns:repeat(3,1fr)}}

/* ---------- Soluções Daikin ---------- */
.sys-card.dk{border-left-color:var(--dk)}
.sys-card.dk li::before,.sys-card.dk .arrow-circle{background:var(--dk)}
.sys-pill.dk{background:var(--dk)}
.sys-grid.n4{grid-template-columns:1fr 1fr}
.sys-grid.n4 .sys-card{padding:1.6rem 1.4rem 1.6rem 1.3rem}
.sys-grid.n4 .sys-card h3{font-size:1.9rem}
.sys-grid.n4 .sys-card ul{grid-template-columns:1fr}
@media (orientation:landscape){.sys-grid.n4{grid-template-columns:repeat(4,1fr)}}
@media (max-width:600px){.sys-grid.n4{grid-template-columns:1fr}}
.seg a{font-size:1.05rem;text-align:center;padding:0 .4rem;line-height:1.1}

/* ---------- Configuração ---------- */
.cfg-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.cfg-actions .btn{min-height:3.4rem;padding:0 1.3rem;font-size:1.05rem}
.cfg-wrap{overflow:auto;margin-top:1.6rem;border-top:2px solid var(--ink);max-height:none}
.cfg-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}
.cfg-table th,.cfg-table td{border-bottom:1px solid var(--line);padding:.35rem;text-align:center;white-space:nowrap;background:#fff}
.cfg-table thead th{position:sticky;top:0;z-index:2;background:var(--ink);color:#fff;font-weight:500;font-size:.9rem;vertical-align:bottom}
.cfg-table th.v{height:10rem;width:3.6rem}
.cfg-table th.v span{writing-mode:vertical-rl;transform:rotate(180deg);display:inline-block}
.cfg-table .c-name{position:sticky;left:0;z-index:1;text-align:left;min-width:15rem;max-width:18rem;white-space:normal;padding:.6rem .9rem;border-right:1px solid var(--line)}
.cfg-table thead .c-name{z-index:3}
.cfg-table .c-name strong{display:block;font-size:1.05rem;font-weight:500;line-height:1.15}
.cfg-table .c-name small{font-size:.8rem;color:var(--muted)}
.cfg-table tr.grp td{background:var(--bg-2);text-align:left;font-weight:600;color:var(--c);padding:.7rem .9rem;position:sticky;left:0}
.cfg-table tr.off td:not(:nth-child(2)){opacity:.4}
.cfg-table tr.warn .c-name small{color:var(--red);font-weight:600}
.tg{--c:var(--ink);width:2.9rem;height:2.9rem;border-radius:6px;border:2px solid var(--line);display:grid;place-items:center;color:#fff;transition:background .1s}
.tg.on{background:var(--c);border-color:var(--c)}
.tg svg{width:1.5rem;height:1.5rem;stroke-width:3}
.toast{position:fixed;left:50%;bottom:calc(var(--dock-h) + 1.4rem);transform:translateX(-50%);background:var(--ink);color:#fff;padding:1rem 1.6rem;border-radius:6px;font-size:1.1rem;z-index:40;box-shadow:0 .6rem 2rem rgba(0,0,0,.3);max-width:90vw;text-align:center;animation:fade .2s both}
.pin-card{max-width:26rem}
.pin-dots{display:flex;justify-content:center;gap:1rem;min-height:2rem;align-items:center}
.pin-dots i{width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid var(--ink)}
.pin-dots i.on{background:var(--ink)}
.pin-dots em{color:var(--red);font-style:normal;font-weight:600}
.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}
.pin-pad button{min-height:4.2rem;font-size:1.6rem;font-weight:500;background:var(--bg-2);border-radius:6px}
.pin-pad button:active{background:var(--bg-3)}

/* ---------- Sobre a AHT ---------- */
.dock{grid-template-columns:repeat(6,1fr)}
.dock-btn span{text-align:center;line-height:1.1}
.ab-hero{position:relative;background:var(--ink);overflow:hidden}
.ab-hero img{width:100%;height:46vh;max-height:44rem;object-fit:cover;object-position:center 30%;display:block}
.ab-hero-box{position:relative;margin:-7rem var(--gutter) 0;background:var(--red);color:#fff;padding:2.2rem 2.2rem 2.4rem;z-index:1}
.ab-hero-box .eyebrow{color:#fff}
.ab-hero-box .stripes i{background:#fff}
.ab-hero-box h1{font-size:3.1rem;font-weight:500;line-height:1.05;margin:.8rem 0 1rem;text-wrap:balance}
.ab-hero-box p{font-size:1.3rem;line-height:1.4;opacity:.95;max-width:44rem}
.about .ab-hero{background:transparent}
.ab-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:2.4rem}
.ab-stat{background:#fff;padding:1.6rem 1.5rem;display:flex;flex-direction:column;gap:.3rem}
.ab-stat:first-child{grid-column:1/-1}
.ab-stat b{font-family:var(--font-display);font-size:3.6rem;font-weight:500;line-height:1;color:var(--red);font-variant-numeric:tabular-nums}
.ab-stat strong{font-size:1.2rem;font-weight:500}
.ab-stat span{font-size:1rem;color:var(--ink-2)}
.ab-section{margin-top:3.6rem}
.ab-title{font-size:2.3rem;font-weight:500;line-height:1.1;margin:.7rem 0 1.4rem;text-wrap:balance}
.ab-strip{width:100%;display:block}
.ab-chain{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.2rem}
.ab-step{border-top:.35rem solid var(--red);background:var(--bg-2);padding:1.3rem 1.2rem}
.ab-step-n{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--red);color:#fff;font-weight:600}
.ab-step h3{font-size:1.5rem;font-weight:500;margin:.7rem 0 .3rem}
.ab-step p{font-size:1.02rem;color:var(--ink-2);line-height:1.3}
.ab-step .ab-transport{margin-top:.5rem;font-size:.92rem;color:var(--muted)}
.ab-years{display:flex;align-items:center;gap:1.6rem;margin-top:1.6rem;padding:1.6rem 1.8rem;border:2px solid var(--ink)}
.ab-years b{font-family:var(--font-display);font-size:4.4rem;font-weight:500;color:var(--red);line-height:1}
.ab-years strong{font-size:1.4rem;font-weight:500;display:block}
.ab-years p{font-size:1.05rem;color:var(--ink-2);margin-top:.3rem}
.ab-brands-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap}
.ab-brands-head img{height:3.6rem;width:auto;margin-bottom:1.4rem}
.ab-brands{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.ab-brand{border:1px solid var(--line);padding:1.4rem;display:flex;flex-direction:column;gap:.5rem}
.ab-logo{height:4.4rem;display:flex;align-items:center}
.ab-logo img{max-height:100%;max-width:70%;width:auto;object-fit:contain}
.ab-brand h3{font-size:1.35rem;font-weight:500}
.ab-brand p{font-size:1.02rem;color:var(--ink-2);line-height:1.3}
.ab-daikin{background:var(--ink);color:#fff;margin-top:3.6rem;padding:3rem 0 3.4rem}
.ab-daikin .eyebrow{color:#fff}
.ab-daikin .stripes i{background:var(--red)}
.ab-dk-head{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.ab-dk-logo{background:#fff;padding:.9rem 1.2rem;border-radius:4px}
.ab-dk-logo img{height:2.6rem;width:auto}
.ab-dk-lead{font-size:1.45rem;line-height:1.35;max-width:46rem}
.ab-dk-sub{font-size:1.1rem;opacity:.75;margin-top:.6rem}
.ab-dk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14);margin-top:2rem;border:1px solid rgba(255,255,255,.14)}
.ab-dk-fact{background:var(--ink);padding:1.3rem 1.1rem;display:flex;flex-direction:column;gap:.2rem}
.ab-dk-fact span{font-size:.95rem;opacity:.7}
.ab-dk-fact b{font-family:var(--font-display);font-size:2.3rem;font-weight:500;line-height:1.05;color:#fff}
.ab-dk-people{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
.ab-dk-people div{border-left:.35rem solid var(--red);padding:.4rem 0 .4rem 1rem}
.ab-dk-people span{display:block;font-size:.95rem;opacity:.7}
.ab-dk-people strong{font-family:var(--font-display);font-size:1.6rem;font-weight:500}
@media (orientation:landscape){.ab-stats{grid-template-columns:repeat(5,1fr)}.ab-stat:first-child{grid-column:auto}.ab-brands{grid-template-columns:repeat(4,1fr)}.ab-hero img{height:52vh}}
@media (max-width:600px){.ab-chain,.ab-brands,.ab-dk-people{grid-template-columns:1fr}.ab-dk-grid{grid-template-columns:1fr 1fr}.ab-hero-box h1{font-size:2.2rem}.dock-btn span{font-size:.72rem}}
.fchip small{font-size:.8em;opacity:.65;font-weight:600}
.fchip.on small{opacity:.85}
.seg a.all{color:var(--red)}
.seg a.all.on{background:var(--red);color:#fff}
