:root{
  --ebano:#14161A;
  --grafite:#2B2F36;
  --fumo:#5A6068;
  --marfim:#EDE7DA;
  --papel:#FBFAF7;
  --latao:#B08A3E;
  --latao-claro:#D6B36A;
  --feltro:#8C2F39;
  --linha:rgba(20,22,26,.14);
  --serif:'Bodoni Moda',Georgia,serif;
  --sans:'Archivo',system-ui,-apple-system,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  /* acento padrão — sobrescrito por marca */
  --acc:#B08A3E;
  --acc2:#D6B36A;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--papel);
  color:var(--ebano);
  font-family:var(--sans);
  font-weight:400;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

/* ---------- teclado: elemento de assinatura ---------- */
.keybed{position:relative;height:34px;width:100%;overflow:hidden;
  background:repeating-linear-gradient(90deg,var(--marfim) 0 22px,var(--ebano) 22px 23px)}
.keybed::after{content:"";position:absolute;inset:0 0 38% 0;
  background:repeating-linear-gradient(90deg,
    transparent 0 18px,var(--ebano) 18px 28px,
    transparent 28px 41px,var(--ebano) 41px 51px,
    transparent 51px 87px,var(--ebano) 87px 97px,
    transparent 97px 110px,var(--ebano) 110px 120px,
    transparent 120px 133px,var(--ebano) 133px 143px,
    transparent 143px 161px)}
.keybed--thin{height:16px}
.keybed--thin::after{inset:0 0 40% 0}

/* ---------- barra de utilidades (só na tela) ---------- */
.utilbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding:10px 24px;background:rgba(20,22,26,.96);color:var(--marfim);
  backdrop-filter:blur(6px);border-bottom:1px solid rgba(214,179,106,.3);flex-wrap:wrap}
.utilbar > span{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--latao-claro)}
.utilbar nav{display:flex;gap:16px;flex-wrap:wrap}
.utilbar a{color:var(--marfim);text-decoration:none;font-size:11.5px;letter-spacing:.1em;opacity:.75;text-transform:uppercase;font-family:var(--mono)}
.utilbar a:hover,.utilbar a:focus-visible{opacity:1;color:var(--latao-claro)}
.printbtn{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  background:none;border:1px solid var(--latao);color:var(--latao-claro);padding:7px 14px;cursor:pointer;border-radius:2px}
.printbtn:hover{background:var(--latao);color:var(--ebano)}

/* ---------- estrutura ---------- */
.sheet{max-width:1180px;margin:0 auto;padding:0 40px}
section{padding:84px 0}
.rule{height:1px;background:var(--linha);margin:0}

/* ---------- capa ---------- */
.cover{background:var(--ebano);color:var(--marfim);padding:0;position:relative;overflow:hidden}
.cover-inner{max-width:1180px;margin:0 auto;padding:100px 40px 64px;position:relative;z-index:2}
.cover .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.42em;text-transform:uppercase;
  color:var(--latao-claro);margin-bottom:40px}
.wordmark{font-family:var(--serif);font-weight:400;font-size:clamp(52px,10vw,124px);line-height:.92;
  letter-spacing:.1em;text-indent:.1em;margin-bottom:22px}
.cover h1{font-family:var(--serif);font-weight:400;font-style:italic;font-size:clamp(21px,3.2vw,36px);
  line-height:1.28;max-width:26ch;color:#fff;margin-bottom:28px}
.cover p.lede{max-width:60ch;font-size:16.5px;font-weight:300;color:rgba(237,231,218,.72);line-height:1.75}
.cover-brands{display:flex;flex-wrap:wrap;gap:10px 12px;margin-top:38px}
.cover-brands span{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  border:1px solid rgba(214,179,106,.45);color:var(--latao-claro);padding:7px 13px}
.cover-meta{display:flex;flex-wrap:wrap;gap:40px;margin-top:48px;padding-top:26px;border-top:1px solid rgba(214,179,106,.28)}
.cover-meta div{min-width:130px}
.cover-meta dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--latao);margin-bottom:6px}
.cover-meta dd{font-size:15px;color:var(--marfim)}

/* ---------- sumário ---------- */
.toc{background:var(--marfim)}
.toc h2{font-family:var(--mono);font-size:11.5px;letter-spacing:.32em;text-transform:uppercase;
  color:var(--fumo);margin-bottom:34px}
.toc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:34px 44px}
.toc-group{break-inside:avoid}
.toc-group > h3{font-family:var(--serif);font-size:25px;font-weight:400;margin-bottom:4px}
.toc-group > p.sub{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--acc);margin-bottom:14px}
.toc ol{list-style:none}
.toc li{display:flex;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid rgba(20,22,26,.1)}
.toc li a{color:var(--ebano);text-decoration:none;font-size:14.5px;flex:1}
.toc li a:hover{color:var(--feltro)}
.toc li .tag{font-family:var(--mono);font-size:10.5px;color:var(--fumo);white-space:nowrap}

/* ---------- divisor de marca (full-bleed) ---------- */
.brandbar{background:var(--ebano);color:var(--marfim);position:relative;overflow:hidden}
.brandbar-inner{max-width:1180px;margin:0 auto;padding:64px 40px 54px;display:flex;
  align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap}
.brandbar .num{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--acc2);margin-bottom:16px;display:block}
.brandbar h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,7.5vw,86px);line-height:.95;
  letter-spacing:.08em;text-indent:.08em}
.brandbar .origin{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(237,231,218,.6);margin-top:14px}
.brandbar .claim{font-family:var(--serif);font-style:italic;font-size:clamp(17px,2.2vw,24px);
  color:#fff;max-width:26ch;line-height:1.35;text-align:right}
.brandbar::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--acc)}

/* ---------- acentos por marca ---------- */
section.brand,.brandbar{--acc:var(--latao);--acc2:var(--latao-claro)}
[data-brand="bulara"]{--acc:#B08A3E;--acc2:#D6B36A}
[data-brand="hailun"]{--acc:#8A5A2B;--acc2:#C28F4B}
[data-brand="pearlriver"]{--acc:#1E6E6A;--acc2:#4FA39D}
[data-brand="kayserburg"]{--acc:#8C2F39;--acc2:#C4636D}
[data-brand="schimmel"]{--acc:#9C7F45;--acc2:#C6A15B}
[data-brand="duesenberg"]{--acc:#A2701F;--acc2:#D0A24E}
[data-brand="derloewe"]{--acc:#4F6169;--acc2:#8FA8B2}
[data-brand="viscount"]{--acc:#2E5288;--acc2:#7FA3D4}

/* ---------- intro de marca ---------- */
.brand-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:56px;align-items:start;
  padding-bottom:56px;border-bottom:1px solid var(--linha);margin-bottom:66px}
.brand-intro .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--acc);margin-bottom:14px}
.brand-intro h3{font-family:var(--serif);font-size:clamp(27px,3.6vw,40px);font-weight:400;line-height:1.14;margin-bottom:20px;max-width:26ch}
.brand-intro p{font-size:15.5px;color:var(--grafite);line-height:1.78;margin-bottom:15px;max-width:60ch}
.brand-intro p:last-child{margin-bottom:0}
.brand-intro strong{font-weight:600;color:var(--ebano)}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--linha);border:1px solid var(--linha)}
.stats div{background:var(--papel);padding:20px 18px}
.stats dt{font-family:var(--serif);font-size:30px;line-height:1;color:var(--ebano);margin-bottom:8px}
.stats dd{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fumo);line-height:1.5}
.aside-note{margin-top:26px;border-left:3px solid var(--acc);padding:4px 0 4px 18px}
.aside-note h4{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--acc);margin-bottom:8px}
.aside-note p,.aside-note li{font-size:13.8px;color:var(--grafite);line-height:1.65}
.aside-note ul{list-style:none}
.aside-note li{padding-left:14px;position:relative;margin-bottom:5px}
.aside-note li::before{content:"—";position:absolute;left:0;color:var(--acc)}

/* ---------- cabeçalho de subseção ---------- */
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;
  padding-bottom:16px;border-bottom:2px solid var(--ebano);margin-bottom:48px;flex-wrap:wrap}
.sec-head .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--acc);display:block;margin-bottom:10px}
.sec-head h3{font-family:var(--serif);font-size:clamp(28px,4.2vw,44px);font-weight:400;line-height:1.05}
.sec-head p{max-width:42ch;font-size:14px;color:var(--fumo);line-height:1.65}
.sec-head--soft{border-bottom-width:1px;margin-bottom:36px}

/* ---------- ficha de produto ---------- */
.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:52px;
  align-items:start;padding:52px 0;border-bottom:1px solid var(--linha)}
.product:first-of-type{padding-top:0}
.product--flip .shot{order:2}
.shot{background:var(--marfim);border:1px solid var(--linha);padding:32px;display:flex;
  align-items:center;justify-content:center;min-height:300px;position:relative}
.shot img{max-width:100%;height:auto;display:block}
.shot--multiply img{mix-blend-mode:multiply}
.shot .sku-chip{position:absolute;top:0;left:0;background:var(--ebano);color:var(--acc2);
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;padding:6px 12px;z-index:2}
.shot--tall{min-height:420px}
.pcopy .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--feltro);margin-bottom:12px}
.pcopy h4{font-family:var(--serif);font-size:clamp(28px,3.8vw,42px);font-weight:400;line-height:1.08;margin-bottom:6px}
.pcopy .model{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;color:var(--fumo);margin-bottom:20px}
.pcopy .pitch{font-size:15.5px;color:var(--grafite);line-height:1.75;margin-bottom:24px;max-width:54ch}
.feat{list-style:none;margin-bottom:26px}
.feat li{position:relative;padding-left:22px;margin-bottom:10px;font-size:14.4px;color:var(--grafite);line-height:1.6}
.feat li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;background:var(--acc)}
.feat li b{font-weight:600;color:var(--ebano)}

/* dados rápidos */
.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:1px;
  background:var(--linha);border:1px solid var(--linha);margin-bottom:24px}
.quick div{background:var(--papel);padding:12px 13px}
.quick dt{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--fumo);margin-bottom:5px}
.quick dd{font-size:14.5px;font-weight:600;color:var(--ebano);line-height:1.3}

/* preço / identificação */
.price{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap;
  background:var(--ebano);color:var(--marfim);padding:18px 22px}
.price .from{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--acc2);display:block;margin-bottom:5px}
.price .code{font-family:var(--mono);font-size:14px;color:#fff;letter-spacing:.06em}
.price .val{font-family:var(--serif);font-size:29px;line-height:1;color:#fff}
.price .val small{font-size:13px;font-family:var(--sans);letter-spacing:.03em;color:var(--acc2);display:block;margin-top:6px}
.price .selo{margin-left:auto;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
  border:1px solid var(--acc);color:var(--acc2);padding:6px 11px;align-self:center;text-align:center}

/* tabela técnica */
details.tech{margin-top:18px;border-top:1px solid var(--linha)}
details.tech summary{cursor:pointer;list-style:none;font-family:var(--mono);font-size:11px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--acc);padding:14px 0}
details.tech summary::-webkit-details-marker{display:none}
details.tech summary::after{content:" +";color:var(--fumo)}
details.tech[open] summary::after{content:" −"}
table.spec{width:100%;border-collapse:collapse;font-size:13.2px}
table.spec th,table.spec td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--linha);vertical-align:top}
table.spec th{font-weight:500;color:var(--fumo);width:38%;font-size:12.2px}
table.spec td{color:var(--grafite)}
table.spec tr:nth-child(odd) th,table.spec tr:nth-child(odd) td{background:rgba(237,231,218,.4)}

/* ---------- cards (bancos, modelos com foto) ---------- */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}
.card-grid--3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.card-grid--4{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:22px}
.card{border:1px solid var(--linha);background:#fff;display:flex;flex-direction:column}
.card .shot{border:0;border-bottom:1px solid var(--linha);min-height:210px;padding:24px}
.card-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.card-body h4{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.15;margin-bottom:4px}
.card-body .model{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;color:var(--fumo);margin-bottom:13px;text-transform:uppercase}
.card-body p{font-size:13.8px;color:var(--grafite);line-height:1.65;margin-bottom:16px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.chip{font-family:var(--mono);font-size:10px;letter-spacing:.07em;background:var(--marfim);
  color:var(--grafite);padding:5px 9px;border:1px solid var(--linha)}
.chip--gold{background:var(--ebano);color:var(--acc2);border-color:var(--ebano)}
.card-foot{margin-top:auto;padding-top:15px;border-top:1px solid var(--linha);
  display:flex;align-items:flex-end;justify-content:space-between;gap:6px 12px;flex-wrap:wrap}
.card-foot > div:last-child{margin-left:auto;text-align:right}
.card-foot .lbl{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);display:block;margin-bottom:4px}
.card-foot .code{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--ebano)}
.card-foot .val{font-family:var(--serif);font-size:22px;line-height:1;color:var(--ebano)}
.card--mini .shot{min-height:170px;padding:18px}
.card--mini .card-body{padding:16px 18px 20px}
.card--mini .card-body h4{font-size:19px}

/* ---------- placas tipográficas de modelo (sem foto) ---------- */
.plate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2px;
  background:var(--linha);border:1px solid var(--linha);margin-bottom:14px}
.plate{background:#fff;padding:22px 20px;position:relative;text-align:center}
.plate::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:38px;height:3px;background:var(--acc)}
.plate .name{font-family:var(--serif);font-size:26px;font-weight:500;line-height:1;margin-bottom:6px}
.plate .line{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--acc);margin-bottom:10px}
.plate .dim{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--fumo);line-height:1.7}
.plate--flag{background:var(--ebano)}
.plate--flag .name{color:#fff}
.plate--flag .line{color:var(--acc2)}
.plate--flag .dim{color:rgba(237,231,218,.7)}
.plate-note{font-size:13px;color:var(--fumo);line-height:1.7;border-left:3px solid var(--acc);padding-left:16px;margin-top:22px}
.plate-note b{color:var(--ebano)}

/* ---------- grade de acabamentos ---------- */
.finish-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}
.finish{text-align:center}
.finish .box{background:var(--marfim);border:1px solid var(--linha);padding:16px;min-height:210px;
  display:flex;align-items:center;justify-content:center;margin-bottom:11px}
.finish .box img{max-height:200px;width:auto;max-width:100%}
.finish .fname{font-family:var(--serif);font-size:17px;line-height:1.2;margin-bottom:3px}
.finish .fsku{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--acc)}
.finish .fdesc{font-size:12.5px;color:var(--fumo);line-height:1.5;margin-top:5px}

/* ---------- faixa de destaque escura ---------- */
.strip{background:var(--ebano);color:var(--marfim);padding:0}
.strip-inner{max-width:1180px;margin:0 auto;padding:66px 40px}
.strip h3{font-family:var(--serif);font-size:clamp(26px,3.6vw,38px);font-weight:400;line-height:1.15;margin-bottom:16px;max-width:24ch;color:#fff}
.strip .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--acc2);margin-bottom:16px}
.strip p{font-size:15px;color:rgba(237,231,218,.76);line-height:1.78;max-width:62ch}
.strip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;
  background:rgba(214,179,106,.22);border:1px solid rgba(214,179,106,.22);margin-top:38px}
.strip-grid article{background:var(--ebano);padding:24px 22px}
.strip-grid h4{font-family:var(--serif);font-size:20px;font-weight:400;color:#fff;margin-bottom:8px}
.strip-grid .n{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--acc2);display:block;margin-bottom:10px}
.strip-grid p{font-size:13.5px;color:rgba(237,231,218,.68);line-height:1.65;max-width:none}

/* ---------- faixa de ambiente (full-bleed) ---------- */
.ambient{position:relative;overflow:hidden;background:var(--ebano)}
.ambient img{width:100%;height:clamp(200px,32vw,380px);object-fit:cover;display:block;filter:saturate(.92)}
.ambient figcaption{position:absolute;left:0;right:0;bottom:0;
  background:linear-gradient(to top,rgba(20,22,26,.9),rgba(20,22,26,0));
  padding:52px 40px 24px;color:var(--marfim)}
.ambient figcaption > *{max-width:1100px;margin-left:auto;margin-right:auto}
.ambient figcaption span{font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--acc2);display:block;margin-bottom:7px}
.ambient figcaption p{font-family:var(--serif);font-style:italic;font-size:clamp(16px,2.1vw,23px);
  line-height:1.35;color:#fff}
.ambient--duo{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.ambient--duo img{height:clamp(160px,24vw,280px)}

/* ---------- linha do tempo ---------- */
.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2px;
  background:var(--linha);border:1px solid var(--linha)}
.timeline div{background:var(--papel);padding:20px 18px}
.timeline dt{font-family:var(--mono);font-size:13px;letter-spacing:.1em;color:var(--acc);margin-bottom:8px}
.timeline dd{font-size:13.2px;color:var(--grafite);line-height:1.6}

/* ---------- tabelas largas ---------- */
.wide{width:100%;border-collapse:collapse;font-size:13.2px}
.wide thead th{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  text-align:left;padding:11px 10px;background:var(--ebano);color:var(--acc2);font-weight:500;white-space:nowrap}
.wide td,.wide tbody th{padding:10px;border-bottom:1px solid var(--linha);vertical-align:top;text-align:left}
.wide tbody tr:nth-child(even){background:rgba(237,231,218,.42)}
.wide tbody th{font-weight:500;color:var(--fumo);font-size:12.4px;width:23%}
.wide td.nome{font-weight:600}
.wide td.mono{font-family:var(--mono);font-size:11.4px;color:var(--fumo);white-space:nowrap}
.wide td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.wide td.val{text-align:right;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}
/* tabelas de referência: código estreito, nome ocupa o resto, preço à direita */
.ref .wide td.mono,.ref .wide thead th:first-child{width:22%}
.ref .wide td.val,.ref .wide td.num,.ref .wide thead th:last-child{width:14%;text-align:right}
.ref .wide td.nome{font-weight:500}
.wide caption{caption-side:top;text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--acc);padding-bottom:12px}
.table-wrap{overflow-x:auto}
.table-wrap + .table-wrap{margin-top:40px}

/* ---------- guia de escolha ---------- */
.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:2px;background:var(--linha);border:1px solid var(--linha)}
.guide-grid article{background:var(--marfim);padding:24px 22px}
.guide-grid h4{font-family:var(--serif);font-size:20px;font-weight:400;margin-bottom:8px}
.guide-grid .who{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);margin-bottom:11px}
.guide-grid p{font-size:13.6px;color:var(--grafite);line-height:1.65}
.guide-grid strong{color:var(--feltro);font-weight:600}

/* ---------- citação ---------- */
blockquote{border-left:3px solid var(--acc);padding:6px 0 6px 22px;margin:30px 0}
blockquote p{font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.5;color:var(--grafite);max-width:56ch}
blockquote cite{display:block;margin-top:12px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--acc);font-style:normal}

/* ---------- rodapé ---------- */
footer{background:var(--ebano);color:var(--marfim)}
.foot-inner{max-width:1180px;margin:0 auto;padding:70px 40px 50px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:38px}
footer h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--latao);margin-bottom:14px}
footer p,footer li{font-size:13.8px;color:rgba(237,231,218,.78);line-height:1.75;list-style:none}
footer a{color:var(--latao-claro);text-decoration:none}
footer a:hover{text-decoration:underline}
.foot-note{max-width:1180px;margin:0 auto;padding:22px 40px 46px;font-size:11.4px;
  color:rgba(237,231,218,.45);line-height:1.75;border-top:1px solid rgba(214,179,106,.2)}

a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--latao-claro);outline-offset:3px}

@media (max-width:900px){
  .product,.brand-intro{grid-template-columns:1fr;gap:30px}
  .product--flip .shot{order:0}
  .sheet{padding:0 22px}
  section{padding:56px 0}
  .cover-inner,.brandbar-inner,.strip-inner{padding-left:22px;padding-right:22px}
  .brandbar .claim{text-align:left}
  .foot-inner,.foot-note{padding-left:22px;padding-right:22px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ---------- impressão / PDF ---------- */
@media print{
  *,*::before,*::after{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
    color-adjust:exact!important;
  }
  @page{size:A4 landscape;margin:0}
  html,body{background:var(--papel)}
  body{font-size:9.6pt}

  .utilbar{display:none}

  .sheet{max-width:none;padding:0 14mm}
  section{padding:11mm 0}
  .cover-inner{max-width:none;padding:32mm 14mm 16mm}
  .brandbar-inner,.strip-inner{max-width:none;padding:16mm 14mm}
  .foot-inner{max-width:none;padding:14mm 14mm 8mm}
  .foot-note{max-width:none;padding:10mm 14mm 10mm;margin:0}

  .cover{page-break-after:always;background:var(--ebano)}
  .toc{page-break-after:always}
  .brandbar{page-break-before:always}
  /* o layout de duas colunas é obrigatório no PDF, independente da
     largura de viewport que o navegador use para paginar */
  /* NÃO usar page-break-inside:avoid em .product: com a ficha técnica
     aberta a peça fica mais alta que uma página A4 paisagem, e o avoid
     ignorado gera páginas quase em branco. Deixa fluir e protege só os
     blocos internos. */
  .product{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)!important;
    gap:16px;padding:8mm 0}
  .shot,.quick,.price,.feat li,.pcopy h4,blockquote{page-break-inside:avoid}
  .pcopy h4,.sec-head h3,.brandbar h2{page-break-after:avoid}
  .product--flip .shot{order:2}
  .product:first-of-type{padding-top:0}
  .brand-intro{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;gap:20px}
  /* O Chrome pagina CSS grid de forma inconsistente: cards altos podem
     perder conteúdo ou sobrepor a seção seguinte. inline-flex pagina certo. */
  /* font-size:0 no contêiner colapsa o espaço em branco entre itens inline —
     sem isso o último card de cada linha transborda para a linha seguinte */
  .card-grid{display:block!important;font-size:0}
  .card-grid > .card{display:inline-flex;vertical-align:top;width:32.2%;margin:0 1.4% 4mm 0;font-size:9.6pt}
  .card-grid > .card:nth-child(3n){margin-right:0}
  .card-grid--4 > .card{width:23.8%;margin-right:1.5%}
  .card-grid--4 > .card:nth-child(3n){margin-right:1.5%}
  .card-grid--4 > .card:nth-child(4n){margin-right:0}
  /* cards compactos: imagem menor para caber duas fileiras por página */
  .card--mini .shot{padding:8px}
  .card--mini .shot img{max-height:30mm}
  .card--mini .card-body{padding:10px 12px 12px}
  .card--mini .card-body p{font-size:12px;line-height:1.5;margin-bottom:10px}
  .card--mini .chips{gap:4px;margin-bottom:10px}
  .card--mini .chip{font-size:8.5px;padding:3px 6px}
  .card--mini .card-foot{padding-top:9px}
  /* margens grandes declaradas inline viram salto de página no PDF */
  .sec-head[style],.table-wrap[style],figure.ambient[style]{margin-top:9mm!important}
  .finish-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px}
  .plate-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .guide-grid,.strip-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .timeline{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  /* na coluna estreita do PDF, 5 dados rápidos precisam caber em uma linha
     — senão sobra uma célula vazia no fim da grade */
  .quick{grid-template-columns:repeat(auto-fit,minmax(66px,1fr))}
  .quick div{padding:8px 9px}
  .quick dd{font-size:11.5px}
  table.spec{font-size:8pt}
  table.spec th,table.spec td{padding:4px 7px}
  .wide{font-size:8pt}
  .wide td,.wide tbody th,.wide thead th{padding:5px 6px}
  .feat li{margin-bottom:5px}
  .pcopy .pitch{margin-bottom:14px}
  .card,.finish,.plate,.guide-grid article,.strip-grid article,.sec-head,
  .aside-note,.plate-note,.timeline div,.stats div{page-break-inside:avoid}
  .wide tr,table.spec tr{page-break-inside:avoid}
  thead{display:table-header-group}

  /* details precisa do atributo `open` no HTML: com ele fechado o Chrome não
     inclui o conteúdo no layout de impressão. Aqui só escondemos o resumo. */
  details.tech summary{display:none}

  .ambient{page-break-inside:avoid}
  .ambient img{height:52mm}
  .ambient--duo img{height:44mm}
  .ambient figcaption{padding:26mm 14mm 6mm}

  .shot{min-height:0;padding:14px}
  .shot img{max-height:58mm;width:auto;object-fit:contain}
  .card .shot img,.finish .box img{max-height:42mm}
  .shot--tall{min-height:0}

  a{text-decoration:none;color:inherit}
}

/* =================================================================== */
/* ===============  COMPONENTES DO SITE MULTI-PÁGINA  ================ */
/* =================================================================== */

/* ---------- navegação principal ---------- */
.sitenav{position:sticky;top:0;z-index:60;background:rgba(20,22,26,.97);
  color:var(--marfim);backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(214,179,106,.3)}
.sitenav-inner{max-width:1180px;margin:0 auto;padding:0 40px}
/* faixa de cima: assinatura, idiomas e ações; faixa de baixo: as marcas */
.sitenav-topo{display:flex;align-items:center;justify-content:space-between;
  gap:18px;padding:12px 0 11px;flex-wrap:wrap}
/* a assinatura é o logotipo (marca/logo.py). A arte é de tinta única sobre
   transparente, então no fundo escuro entra a versão em latão claro — a mesma
   cor do resto da assinatura do site */
.sitenav .brandmark{display:flex;align-items:center;flex:none;line-height:0;
  padding:3px 0;text-decoration:none}
.sitenav .brandmark img{display:block;width:auto;height:44px}
.sitenav .brandmark:focus-visible{outline-offset:5px}
.sitenav nav{display:flex;gap:18px;flex-wrap:wrap;align-items:center;
  padding:9px 0 10px;border-top:1px solid rgba(214,179,106,.18)}
.sitenav nav a{color:var(--marfim);text-decoration:none;font-family:var(--mono);
  font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.72;
  padding-bottom:2px;border-bottom:1px solid transparent}
.sitenav nav a:hover,.sitenav nav a:focus-visible{opacity:1;color:var(--latao-claro)}
.sitenav nav a[aria-current="page"]{opacity:1;color:var(--latao-claro);
  border-bottom-color:var(--latao)}
.sitenav-acoes{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.sitenav-tel{font-family:var(--mono);font-size:11px;letter-spacing:.12em;
  color:rgba(237,231,218,.7);white-space:nowrap}
.navbtn{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;background:none;border:1px solid var(--latao);
  color:var(--latao-claro);padding:7px 13px;border-radius:2px;cursor:pointer;
  text-decoration:none;white-space:nowrap}
.navbtn:hover{background:var(--latao);color:var(--ebano)}
.navbtn--solido{background:var(--latao);color:var(--ebano);font-weight:500}
.navbtn--solido:hover{background:var(--latao-claro)}

/* ---------- seletor de idioma ---------- */
.langsel{display:flex;align-items:center;gap:1px;background:rgba(214,179,106,.3);
  border:1px solid rgba(214,179,106,.34);border-radius:2px;overflow:hidden}
.langsel a{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(237,231,218,.72);text-decoration:none;
  background:var(--ebano);padding:6px 9px;line-height:1;transition:color .18s ease}
.langsel a:hover,.langsel a:focus-visible{color:var(--latao-claro)}
.langsel a[aria-current="true"]{background:var(--latao);color:var(--ebano);font-weight:500}

/* ---------- caminho de navegação ---------- */
.crumbs{background:var(--marfim);border-bottom:1px solid var(--linha)}
.crumbs-inner{max-width:1180px;margin:0 auto;padding:11px 40px;
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--fumo)}
.crumbs-inner a{color:var(--fumo);text-decoration:none;border-bottom:1px solid transparent}
.crumbs-inner a:hover{color:var(--ebano);border-bottom-color:var(--latao)}
.crumbs-inner .sep{color:var(--latao);margin:0 8px}
.crumbs-inner .atual{color:var(--ebano);font-weight:500}

/* ---------- home: bloco de abertura ---------- */
.home-sec{padding:74px 0}
.home-sec--marfim{background:var(--marfim)}
.sec-titulo{max-width:760px;margin-bottom:38px}
.sec-titulo .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--latao);margin-bottom:14px}
.sec-titulo h2{font-family:var(--serif);font-size:clamp(28px,4vw,42px);
  line-height:1.12;font-weight:400;margin-bottom:16px}
.sec-titulo p{color:var(--fumo);font-size:16.5px;max-width:660px}

/* ---------- home: grade de marcas ---------- */
.marcagrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:26px}
.marcacard{display:flex;flex-direction:column;background:var(--papel);
  border:1px solid var(--linha);border-radius:3px;overflow:hidden;
  text-decoration:none;color:inherit;transition:transform .25s ease,box-shadow .25s ease}
.marcacard:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(20,22,26,.13)}
/* fotos de produto: contidas sobre marfim com multiply, como as fichas do catálogo */
.marcacard-topo{position:relative;background:var(--marfim);aspect-ratio:16/10;
  display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}
.marcacard-topo img{max-width:100%;max-height:100%;width:auto;height:auto;
  object-fit:contain;mix-blend-mode:multiply}
/* fotos de ambiente: preenchem o quadro, sem blend */
.marcacard-topo--ambiente{background:var(--ebano);padding:0}
.marcacard-topo--ambiente img{width:100%;height:100%;object-fit:cover;
  mix-blend-mode:normal;max-height:none;opacity:.9}
.marcacard:hover .marcacard-topo--ambiente img{opacity:1}
/* z-index: a imagem com mix-blend-mode/opacity cria contexto de empilhamento
   e cobriria o selo, que vem antes no DOM */
.marcacard-selo{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--mono);
  font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;
  background:rgba(20,22,26,.86);color:var(--latao-claro);padding:5px 9px;
  border:1px solid rgba(214,179,106,.45)}
.marcacard-corpo{padding:24px 24px 20px;display:flex;flex-direction:column;flex:1;
  border-top:2px solid var(--acc)}
.marcacard h3{font-family:var(--serif);font-size:26px;font-weight:400;
  letter-spacing:.02em;margin-bottom:6px}
.marcacard .origem{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--acc);margin-bottom:14px}
.marcacard p{color:var(--fumo);font-size:14.5px;line-height:1.62;margin-bottom:18px}
.marcacard ul{list-style:none;margin-bottom:20px}
.marcacard ul li{font-size:13.5px;color:var(--grafite);padding:6px 0;
  border-top:1px solid var(--linha);display:flex;justify-content:space-between;gap:12px}
.marcacard ul li .tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--fumo);white-space:nowrap}
.marcacard .abrir{margin-top:auto;font-family:var(--mono);font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ebano);
  display:inline-flex;align-items:center;gap:9px}
.marcacard .abrir::after{content:"→";color:var(--acc);transition:transform .2s ease}
.marcacard:hover .abrir::after{transform:translateX(4px)}

/* ---------- home: categorias por tipo ---------- */
.tipogrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}
.tipocard{background:var(--papel);border:1px solid var(--linha);border-radius:3px;
  padding:26px 24px}
.tipocard h3{font-family:var(--serif);font-size:23px;font-weight:400;margin-bottom:4px}
.tipocard .sub{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--latao);margin-bottom:18px}
.tipocard ul{list-style:none}
.tipocard ul li{border-top:1px solid var(--linha)}
.tipocard ul li a{display:block;padding:9px 0;font-size:14.5px;color:var(--grafite);
  text-decoration:none}
.tipocard ul li a:hover{color:var(--ebano);padding-left:6px;transition:padding .18s ease}
/* usado na página Quem somos, onde o cartão traz texto corrido em vez de lista */
.tipocard > p:not(.sub){font-size:14.5px;color:var(--grafite);line-height:1.7}

/* ---------- página de marca: índice da linha ---------- */
.linhanav{background:var(--marfim);border-bottom:1px solid var(--linha);
  padding:26px 0 30px}
.linhanav .sheet{display:flex;flex-direction:column;gap:16px}
.linhanav h2{font-family:var(--mono);font-size:11px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--fumo);font-weight:400}
.linhanav ol{list-style:none;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0 26px;counter-reset:ln}
.linhanav ol li{counter-increment:ln;border-top:1px solid var(--linha)}
.linhanav ol li a{display:flex;align-items:baseline;gap:11px;padding:11px 0;
  text-decoration:none;color:var(--ebano);font-size:15px}
.linhanav ol li a::before{content:counter(ln,decimal-leading-zero);
  font-family:var(--mono);font-size:10.5px;color:var(--acc);letter-spacing:.1em}
.linhanav ol li a:hover{color:var(--acc)}
.linhanav ol li a .tag{margin-left:auto;font-family:var(--mono);font-size:10px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--fumo)}

/* ---------- paginação entre marcas ---------- */
.pager{background:var(--ebano);color:var(--marfim);padding:0}
.pager-inner{max-width:1180px;margin:0 auto;display:grid;
  grid-template-columns:1fr 1fr;gap:1px;background:rgba(214,179,106,.22)}
.pager a{display:flex;flex-direction:column;gap:7px;padding:34px 40px;
  background:var(--ebano);text-decoration:none;color:var(--marfim)}
.pager a:hover{background:#1B1E23}
.pager a.next{text-align:right;align-items:flex-end}
.pager .dir{font-family:var(--mono);font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--latao-claro)}
.pager .tit{font-family:var(--serif);font-size:24px;font-weight:400}
.pager .vazio{background:var(--ebano)}

/* ---------- rodapé: bloco da empresa ---------- */
.empresa{background:var(--ebano);border-top:1px solid rgba(214,179,106,.28);
  color:var(--marfim)}
.empresa-inner{max-width:1180px;margin:0 auto;padding:52px 40px 46px;
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr);
  gap:40px;align-items:start}
.empresa h3{font-family:var(--serif);font-size:27px;font-weight:400;
  letter-spacing:.05em;margin-bottom:6px}
.empresa .rut{font-family:var(--mono);font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--latao-claro);margin-bottom:18px}
.empresa p,.empresa li{color:rgba(237,231,218,.72);font-size:14.5px;line-height:1.68}
.empresa h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--latao-claro);margin-bottom:14px;font-weight:400}
.empresa ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.empresa a{color:var(--marfim);text-decoration:none;border-bottom:1px solid rgba(214,179,106,.4)}
.empresa a:hover{color:var(--latao-claro)}
.empresa .empresa-social{margin-top:24px}
/* o traço fica no texto, não no ícone */
.empresa .social{display:inline-flex;align-items:center;gap:9px;border-bottom:0}
.empresa .social span{border-bottom:1px solid rgba(214,179,106,.4)}
.empresa .social svg{width:17px;height:17px;flex:none;fill:none;
  stroke:var(--latao-claro);stroke-width:1.6}
.empresa .social svg .cheio{fill:var(--latao-claro);stroke:none}
.empresa .social:hover svg{stroke:var(--marfim)}
.empresa .destaque{font-family:var(--serif);font-size:21px;color:var(--marfim);
  border:0;display:inline-block;margin-bottom:4px}
.empresa-logo{display:block;width:auto;height:50px;margin-bottom:22px}

/* ---------- Quem somos ---------- */
/* a página é longa e alterna claro/escuro: o respiro entre capítulos é maior */
#origem .brand-intro,#operacao .brand-intro{margin-bottom:0;padding-bottom:0;border-bottom:0}
#linha-do-tempo .timeline dt{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
/* os títulos daqui são mais longos que os do catálogo: sem uma base declarada, o
   resumo à direita quebra para a linha de baixo em vez de ficar ao lado */
.home-sec .sec-head > div{flex:1 1 520px}
.home-sec .sec-head > p{flex:0 1 34ch}
/* são oito marcas — a última fileira nem sempre fecha. As divisórias saem do fundo do
   grid e passam para o contorno de cada placa, para a sobra não virar um buraco cinza */
#repertorio .plate-grid{margin-top:4px;background:var(--papel);gap:2px;border:0}
#repertorio .plate{outline:1px solid var(--linha)}
#operacao .stats{margin-bottom:0}
#operacao .plate-note a{color:var(--ebano);border-bottom:1px solid var(--acc)}
#operacao .plate-note a:hover{color:var(--acc)}
#valores .tipocard{padding:30px 26px}
#valores .tipocard h3{margin-bottom:6px}

/* =================================================================== */
/* =====================  TELEFONE · TABLET · PC  ===================== */
/* =================================================================== */

/* ---------- respiro lateral: uma régua só, para todas as faixas ---------- */
/* 40px no monitor, encolhendo até 18px no telefone. Fica declarado num lugar
   único em vez de repetido dentro de cada breakpoint — as faixas full-bleed
   (capa, brandbar, rodapé, paginação) precisam andar sempre juntas */
.sheet,.sitenav-inner,.crumbs-inner,.cover-inner,.brandbar-inner,.strip-inner,
.empresa-inner,.foot-inner,.foot-note,.pager a,.ambient figcaption{
  padding-left:clamp(18px,4vw,40px);padding-right:clamp(18px,4vw,40px)}

/* ---------- base para tela pequena ---------- */
/* o header é fixo: sem isto a âncora para o meio da tabela ou de uma linha de
   produto para atrás da barra */
html{scroll-padding-top:118px;-webkit-text-size-adjust:100%}
/* nenhuma imagem estoura a largura da tela, mesmo as do catálogo antigo */
img{max-width:100%}
.table-wrap{-webkit-overflow-scrolling:touch}

/* o cartão que levanta é gesto de mouse: no toque ele ficaria preso no estado
   de hover depois do tap */
@media (hover:none){
  .marcacard:hover{transform:none;box-shadow:none}
  .tipocard ul li a:hover{padding-left:0}
}

/* ---------- tablet em pé e janela estreita ---------- */
@media (max-width:1024px){
  .brand-intro{gap:38px}
  .product{gap:38px}
  .empresa-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px}
  .sitenav nav{gap:15px}
  .sitenav .brandmark img{height:40px}
}

@media (max-width:900px){
  .empresa-inner{grid-template-columns:1fr;gap:30px;padding-top:40px;
    padding-bottom:40px}
  .pager-inner{grid-template-columns:1fr}
  .pager a{padding-top:26px;padding-bottom:26px}
  .pager a.next{text-align:left;align-items:flex-start}
  .home-sec{padding:52px 0}
  .marcagrid{grid-template-columns:1fr}
  .sitenav-topo{gap:10px}
  .sitenav-tel{display:none}
}

/* ---------- telefone: o header inteiro é remontado ---------- */
@media (max-width:760px){
  html{scroll-padding-top:152px}
  /* e sai de cena quando a leitura desce — quem alterna a classe é o JS_HEADER */
  .sitenav{transition:transform .26s ease;will-change:transform}
  .sitenav--oculto{transform:translateY(-100%)}
  .sitenav .brandmark img{height:36px}
  .sitenav-topo{gap:9px 12px;padding:11px 0 9px}
  /* a linha de ações desce inteira para baixo do logotipo, em vez de disputar
     a mesma linha e quebrar em três pedaços desalinhados */
  .sitenav-acoes{flex:1 1 100%;gap:8px}
  .navbtn{padding:7px 11px;font-size:9.5px;letter-spacing:.12em}
  .langsel a{padding:6px 8px;font-size:10px}
  /* a fileira de categorias não cabe numa linha, e empilhada comeria um
     terço da tela de um telefone: a faixa vira um trilho que corre no dedo,
     sangrando até as duas bordas para deixar claro que continua */
  .sitenav nav{flex-wrap:nowrap;overflow-x:auto;gap:18px;scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    margin-left:calc(-1 * clamp(18px,4vw,40px));
    margin-right:calc(-1 * clamp(18px,4vw,40px));
    padding-left:clamp(18px,4vw,40px);padding-right:clamp(18px,4vw,40px)}
  .sitenav nav::-webkit-scrollbar{display:none}
  .sitenav nav a{flex:none;white-space:nowrap;padding-top:5px;padding-bottom:5px}
  .crumbs-inner{white-space:nowrap;overflow-x:auto;scrollbar-width:none}
  .crumbs-inner::-webkit-scrollbar{display:none}
}

@media (max-width:640px){
  section{padding:46px 0}
  .home-sec{padding:44px 0}
  .cover-inner{padding-top:64px;padding-bottom:44px}
  .cover .eyebrow{letter-spacing:.3em;margin-bottom:26px}
  .cover-meta{gap:22px 26px;margin-top:32px}
  .brandbar-inner{padding-top:44px;padding-bottom:38px}
  /* nome de marca de palavra única — KAYSERBURG, DUESENBERG — não tem onde
     quebrar: em 320px o corpo de 40px passaria da borda */
  .brandbar h2{font-size:clamp(30px,9vw,86px)}
  .strip-inner{padding-top:48px;padding-bottom:48px}
  .ambient--duo{grid-template-columns:1fr}
  .ambient figcaption{padding-top:40px;padding-bottom:18px}
  .sec-head{margin-bottom:32px}
  .sec-titulo{margin-bottom:28px}
  .shot{padding:22px;min-height:210px}
  .shot--tall{min-height:280px}
  .card .shot{min-height:180px}
  .price{align-items:flex-start;gap:14px}
  .price .selo{margin-left:0;align-self:flex-start}
  .plate-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
  .timeline{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
  .foot-inner{gap:26px;padding-top:52px;padding-bottom:38px}
  .empresa-logo{height:44px;margin-bottom:18px}
  blockquote p{font-size:17.5px}
  /* alvo de toque: as listas de navegação são o caminho principal no telefone */
  .tipocard ul li a,.toc li a,.linhanav ol li a{padding-top:12px;padding-bottom:12px}
  details.tech summary{padding:16px 0}
}

@media (prefers-reduced-motion:reduce){
  .sitenav{transition:none}
}

@media (max-width:400px){
  /* aqui a linha de ações já quebra em duas: o header cresce e a âncora com ele */
  html{scroll-padding-top:190px}
  .langsel a{padding:6px 6px;font-size:9.5px;letter-spacing:.08em}
  .navbtn{padding:6px 9px;font-size:9px}
  .stats{grid-template-columns:1fr}
  .quick{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}
  .marcacard-corpo{padding:20px 18px 18px}
  .tipocard{padding:22px 18px}
}

/* ---------- impressão ---------- */
@media print{
  .sitenav,.crumbs,.pager,.linhanav,.langsel{display:none}
  .empresa{background:var(--ebano)}
  .empresa-inner{max-width:none;padding:12mm 14mm;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10mm}
  .empresa-logo{height:16mm;margin-bottom:6mm}
  .home-sec{padding:11mm 0}
  .marcagrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .marcacard{page-break-inside:avoid}
  .tipogrid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  /* a régua lateral de tela não vale no papel — aqui a margem é a do catálogo.
     Precisa vir depois, senão o clamp() em px venceria por ordem de arquivo */
  .sheet,.cover-inner,.brandbar-inner,.strip-inner,.empresa-inner,
  .foot-inner,.foot-note,.ambient figcaption{padding-left:14mm;padding-right:14mm}
}
