/* Pedaço de Minas — folha de estilos partilhada (Minas Noir). Fonte de verdade: DESIGN.md */
:root{
  --carvao:#1A1714;--pedra:#2C2825;--pedra-clara:#3D3733;
  --queijo:#C8963E;--queijo-pale:#D4A854;
  --vermelho:#E30016;--creme-fundo:#F5F0E8;
  --creme:#EDE8DF;--creme-muted:#C4BDB4;--argila:#9E8E7A;
  --ardosia:#4A5568;--ardosia-clara:#64748B;
  --success:#4ab84a;
  --bg:var(--carvao);--surface:var(--pedra);--surface-2:var(--pedra-clara);
  --accent:var(--queijo);--text:var(--creme);--text-muted:var(--creme-muted);--text-faint:var(--argila);
  --border:rgba(200,150,62,.15);--border-sub:rgba(237,232,223,.08);
  --font-display:'Playfair Display','Georgia',serif;
  --font-sub:'Cormorant Garamond','Georgia',serif;
  --font-body:'DM Sans',system-ui,sans-serif;
  --font-mono:'IBM Plex Mono','Courier New',monospace;
  --sp-2:2px;--sp-4:4px;--sp-8:8px;--sp-12:12px;--sp-16:16px;--sp-20:20px;--sp-24:24px;--sp-32:32px;--sp-48:48px;--sp-64:64px;--sp-80:80px;--sp-96:96px;
  --r-sm:4px;--r-md:6px;--r-lg:10px;
  --ease-enter:cubic-bezier(0,0,.2,1);--ease-exit:cubic-bezier(.4,0,1,1);--ease-move:cubic-bezier(.4,0,.2,1);
  --dur-micro:80ms;--dur-short:200ms;--dur-med:350ms;--dur-long:700ms;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--queijo);outline-offset:3px;border-radius:2px}
.site-header :focus-visible{outline-color:var(--carvao)}
[id]{scroll-margin-top:110px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.skip-link{position:absolute;top:-48px;left:0;background:var(--queijo);color:var(--carvao);padding:var(--sp-8) var(--sp-16);border-radius:0 0 var(--r-sm) 0;font-family:var(--font-mono);font-size:11px;text-decoration:none;transition:top .2s;z-index:1000}
.skip-link:focus{top:0}

/* BOTÕES (sweep dourado: camada sólida que avança da esquerda, sem gradientes) */
.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-8);min-height:48px;padding:14px 28px;border-radius:var(--r-sm);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:color var(--dur-short) var(--ease-move),border-color var(--dur-short) var(--ease-move)}
.btn::before{content:'';position:absolute;inset:0;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-med) var(--ease-move)}
.btn:hover::before,.btn:focus-visible::before{transform:scaleX(1)}
.btn-primary{background:var(--queijo);color:var(--carvao)}
.btn-primary::before{background:var(--queijo-pale)}
.btn-secondary{background:transparent;color:var(--creme);border-color:rgba(237,232,223,.3)}
.btn-secondary::before{background:rgba(200,150,62,.18)}
.btn-secondary:hover{border-color:var(--queijo);color:var(--queijo-pale)}
.btn-b2b{background:var(--ardosia);color:var(--creme)}
.btn-b2b::before{background:var(--ardosia-clara)}
.btn-sm{min-height:44px;padding:10px 20px;font-size:12px}
.btn[disabled]{opacity:.6;cursor:progress}
.btn-pdf-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;border:1px solid currentColor;border-radius:var(--r-sm);padding:1px 6px}
.link-quiet{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--queijo);text-decoration:underline;text-decoration-color:rgba(200,150,62,.4);text-underline-offset:4px;background:none;border:0;cursor:pointer;padding:var(--sp-8) 0;min-height:44px}
.link-quiet:hover{color:var(--queijo-pale)}

/* B2B STRIP */
.b2b-strip{position:fixed;bottom:0;left:0;right:0;z-index:300;background:rgba(44,40,37,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(74,85,104,.3);padding:var(--sp-12) var(--sp-48);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-16)}
.b2b-strip-text{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--creme-muted)}
.b2b-strip-btn{background:var(--ardosia);color:var(--creme);border-radius:var(--r-sm);padding:var(--sp-8) var(--sp-20);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:background var(--dur-short);min-height:44px;display:inline-flex;align-items:center}
.b2b-strip-btn:hover{background:var(--ardosia-clara)}

/* HEADER (creme-fundo, onde a logo vive) */
.site-header{position:sticky;top:0;z-index:200;background:var(--creme-fundo);border-bottom:1px solid rgba(227,0,22,.12)}
.header-inner{max-width:1280px;margin:0 auto;padding:var(--sp-16) var(--sp-48);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-24)}
.header-logo img{height:56px;width:auto;display:block}
.header-nav{display:flex;gap:var(--sp-32);list-style:none;align-items:center}
.header-nav a,.header-nav button{font-family:var(--font-body);font-size:13px;letter-spacing:.03em;color:var(--pedra-clara);text-decoration:none;transition:color var(--dur-short) var(--ease-move);background:none;border:0;cursor:pointer;padding:var(--sp-8) 0}
.header-nav a:hover,.header-nav button:hover,.header-nav a.active{color:var(--vermelho)}
.header-nav a.active{font-weight:500;border-bottom:1px solid var(--vermelho)}
.header-right{display:flex;align-items:center;gap:var(--sp-16)}
.header-b2b{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ardosia);text-decoration:none;border:1px solid rgba(74,85,104,.5);padding:var(--sp-12) var(--sp-16);border-radius:var(--r-sm);transition:all var(--dur-short) var(--ease-move)}
.header-b2b:hover{color:var(--carvao);border-color:var(--ardosia)}
.header-lang{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--pedra-clara)}
.header-lang a{color:inherit;text-decoration:none;padding:var(--sp-12) var(--sp-4)}
.header-lang a:hover{color:var(--vermelho)}
.header-lang .active{color:var(--carvao);font-weight:500}
.menu-toggle{display:none;background:none;border:1px solid rgba(26,23,20,.3);border-radius:var(--r-sm);min-width:44px;min-height:44px;cursor:pointer;color:var(--carvao);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:0 var(--sp-12)}

/* HERO */
.hero{min-height:92vh;background:var(--carvao);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-96) var(--sp-48) var(--sp-64);text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 55% at 50% 40%,rgba(200,150,62,.08) 0%,transparent 65%)}
.hero>*{position:relative}
.hero-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-32);opacity:0;animation:fadeUp var(--dur-long) var(--ease-enter) .2s forwards}
.hero-title{font-family:var(--font-display);font-size:clamp(40px,6vw,84px);font-weight:700;line-height:1.02;letter-spacing:-.02em;color:var(--creme);margin-bottom:var(--sp-24);max-width:1000px}
.hero-title .line{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.hero-title .line>span{display:block;transform:translateY(110%);animation:lineUp 900ms var(--ease-enter) forwards;animation-delay:calc(500ms + var(--i,0)*150ms)}
.hero-title em{font-style:italic;color:var(--queijo)}
.hero-sub{font-family:var(--font-sub);font-size:clamp(18px,2.2vw,24px);font-style:italic;font-weight:300;color:var(--creme-muted);margin-bottom:var(--sp-32);max-width:640px;opacity:0;animation:fadeUp var(--dur-long) var(--ease-enter) 1s forwards}
.hero-ctas{display:flex;gap:var(--sp-16);flex-wrap:wrap;justify-content:center;margin-bottom:var(--sp-64);opacity:0;animation:fadeUp var(--dur-long) var(--ease-enter) 1.2s forwards}
.hero-image{width:100%;max-width:880px;aspect-ratio:880/360;border-radius:var(--r-md);overflow:hidden;background:var(--pedra);opacity:0;animation:fadeUp var(--dur-long) var(--ease-enter) 1.4s forwards}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}
.hero-desc{font-size:15px;line-height:1.75;color:var(--creme-muted);max-width:640px;margin-bottom:0}

/* STORY / STATS */
.story{padding:var(--sp-96) var(--sp-48);background:var(--bg);border-top:1px solid var(--border-sub)}
.story-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-24)}
.story-headline{font-family:var(--font-display);font-size:clamp(32px,4vw,52px);font-weight:600;line-height:1.1;color:var(--text);margin-bottom:var(--sp-24)}
.story-headline em,.b2b-headline em{font-style:italic;color:var(--queijo)}
.story-body{font-size:17px;line-height:1.75;color:var(--text-muted);margin-bottom:var(--sp-16)}
.story-sig{font-family:var(--font-sub);font-size:18px;font-style:italic;color:var(--text-faint);padding-top:var(--sp-24);border-top:1px solid var(--border-sub)}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-16)}
.stat-card{background:var(--surface);border:1px solid var(--border-sub);border-radius:var(--r-md);padding:var(--sp-24);transition:border-color var(--dur-short) var(--ease-move)}
.stat-card:hover{border-color:var(--border)}
.stat-num{font-family:var(--font-mono);font-size:clamp(32px,3.4vw,44px);font-weight:500;line-height:1.1;color:var(--queijo);margin-bottom:var(--sp-8);font-variant-numeric:tabular-nums}
.stat-lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}

/* PRODUTOS (home) */
.products{padding:var(--sp-96) var(--sp-48);background:var(--surface);border-top:1px solid var(--border-sub)}
.products-inner{max-width:1280px;margin:0 auto}
.section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-48);display:flex;align-items:center;gap:var(--sp-16)}
.section-label::after{content:'';flex:1;height:1px;background:var(--border)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-20)}
.product-card{background:var(--bg);border:1px solid var(--border-sub);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;transition:border-color var(--dur-med) var(--ease-move),transform var(--dur-med) var(--ease-enter)}
.product-card:hover{border-color:var(--border);transform:translateY(-4px)}
.product-card:focus-within{border-color:var(--queijo)}
.product-image{aspect-ratio:3/2;background:var(--surface-2);overflow:hidden}
.product-image img,.product-image picture{width:100%;height:100%;object-fit:cover;display:block}
.product-body{padding:var(--sp-24);flex:1}
.product-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-8)}
.product-name{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--text);margin-bottom:var(--sp-8)}
.product-desc{font-size:14px;line-height:1.65;color:var(--text-muted)}
.product-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-12);padding:var(--sp-12) var(--sp-24);border-top:1px solid var(--border-sub)}
.product-format{font-family:var(--font-mono);font-size:11px;color:var(--text-faint)}
.product-btn{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text);border:1px solid rgba(237,232,223,.25);border-radius:var(--r-sm);padding:7px 16px;text-decoration:none;transition:border-color var(--dur-short),color var(--dur-short);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.product-btn:hover{border-color:var(--queijo);color:var(--queijo)}
.products-more{margin-top:var(--sp-32);display:flex;gap:var(--sp-24);flex-wrap:wrap;align-items:center}

/* CERT STRIP */
.cert-strip{background:var(--bg);border-top:1px solid var(--border-sub);border-bottom:1px solid var(--border-sub);padding:var(--sp-24) var(--sp-48);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-24)}
.cert-item{display:flex;align-items:center;gap:var(--sp-16)}
.cert-icon{width:38px;height:38px;border:1px solid var(--border);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;color:var(--queijo);font-family:var(--font-mono);font-size:13px;flex-shrink:0}
.cert-lbl{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted)}
.cert-val{font-size:13px;font-weight:500;color:var(--text);margin-top:2px}

/* B2B */
.b2b-section{padding:var(--sp-96) var(--sp-48);background:var(--surface);border-top:1px solid var(--border-sub)}
.b2b-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}
.b2b-section .eyebrow{color:var(--ardosia-clara)}
.b2b-headline{font-family:var(--font-display);font-size:clamp(28px,3.5vw,48px);font-weight:600;line-height:1.1;color:var(--text);margin-bottom:var(--sp-20)}
.b2b-body{font-size:17px;line-height:1.75;color:var(--text-muted);margin-bottom:var(--sp-32)}
.b2b-creds{display:flex;flex-direction:column;gap:var(--sp-12);list-style:none;margin-bottom:var(--sp-32)}
.b2b-cred{font-family:var(--font-mono);font-size:13px;letter-spacing:.02em;color:var(--text-muted);display:flex;align-items:center;gap:var(--sp-12)}
.b2b-cred::before{content:'✓';color:var(--queijo);font-size:14px}
.b2b-ctas{display:flex;gap:var(--sp-16);flex-wrap:wrap;align-items:center}
.b2b-note{font-size:14px;color:var(--text-muted);margin-top:var(--sp-16)}
.b2b-form-title{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--text);margin-bottom:var(--sp-4)}
.b2b-form-sub{font-size:14px;color:var(--text-muted);margin-bottom:var(--sp-16)}
.b2b-form form{display:flex;flex-direction:column;gap:14px}
.form-group{display:flex;flex-direction:column;gap:var(--sp-4)}
.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.form-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}
.form-label .opt{opacity:.7;text-transform:none;letter-spacing:.04em}
.form-input{background:var(--surface-2);border:1px solid var(--border-sub);border-radius:var(--r-sm);padding:var(--sp-12) var(--sp-16);font-family:var(--font-body);font-size:15px;color:var(--text);transition:border-color var(--dur-short) var(--ease-move);width:100%;min-height:44px}
.form-input:focus{border-color:var(--queijo);outline:2px solid var(--queijo);outline-offset:1px}
.form-input::placeholder{color:var(--text-faint)}
.form-input[aria-invalid="true"]{border-color:var(--vermelho)}
select.form-input{appearance:auto}
textarea.form-input{resize:vertical;min-height:88px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-12)}
.field-error{font-size:13px;color:#FF6B78;min-height:0}
.field-error:empty{display:none}
.check{display:flex;gap:var(--sp-12);align-items:flex-start;font-size:13px;line-height:1.5;color:var(--text-muted)}
.check input{margin-top:3px;width:20px;height:20px;accent-color:var(--queijo);flex-shrink:0}
.check a{color:var(--queijo);text-underline-offset:3px}
.form-submit{margin-top:var(--sp-8);align-self:flex-start}
.form-status{font-size:14px;line-height:1.6;border-radius:var(--r-md);padding:0}
.form-status:not(:empty){padding:var(--sp-16);border:1px solid var(--border);background:var(--surface-2)}
.form-status.ok{border-color:var(--success)}
.form-status.err{border-color:var(--vermelho)}
.form-status a{color:var(--queijo)}
.form-whatsapp{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--queijo);text-decoration:none;min-height:44px}
.form-whatsapp:hover{color:var(--text)}

/* INSTAGRAM */
.social{padding:var(--sp-64) var(--sp-48);background:var(--bg);border-top:1px solid var(--border-sub)}
.social-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-32);flex-wrap:wrap}
.social h2{font-family:var(--font-display);font-size:clamp(24px,3vw,34px);font-weight:600;margin-bottom:var(--sp-8)}
.social p{color:var(--text-muted);max-width:560px}
.social-embed{width:100%}

/* FOOTER */
.site-footer{background:var(--pedra);border-top:1px solid var(--border-sub);padding:var(--sp-64) var(--sp-48) var(--sp-96)}
.footer-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sp-48);margin-bottom:var(--sp-48)}
.footer-brand-name{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--text);margin-bottom:var(--sp-12)}
.footer-brand-sig{font-family:var(--font-sub);font-size:16px;font-style:italic;color:var(--text-muted);line-height:1.6;max-width:280px}
.footer-col-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-20)}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:var(--sp-8)}
.footer-links a,.footer-links button{font-family:var(--font-body);font-size:14px;color:var(--text-muted);text-decoration:none;transition:color var(--dur-short);min-height:32px;display:inline-block;background:none;border:0;cursor:pointer;text-align:left;padding:0}
.footer-links a:hover,.footer-links button:hover,.footer-links a.active{color:var(--text)}
.footer-social{display:flex;gap:14px;margin-top:var(--sp-16);flex-wrap:wrap}
.footer-social a{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--queijo);text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
.footer-social a:hover{color:var(--text)}
.footer-bottom{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding-top:var(--sp-24);border-top:1px solid var(--border-sub);flex-wrap:wrap;gap:var(--sp-12)}
.footer-copy{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text-faint);line-height:1.8}
.footer-copy a,.footer-copy button{color:inherit;text-decoration:none;background:none;border:0;cursor:pointer;font:inherit;letter-spacing:inherit;padding:0}
.footer-copy a:hover,.footer-copy button:hover{color:var(--queijo)}
.footer-credit{max-width:1280px;margin:var(--sp-16) auto 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-faint);opacity:.8}
.footer-credit a{color:inherit;text-underline-offset:3px}
.footer-credit a:hover{color:var(--queijo)}

/* WHATSAPP FIXO (mobile) */
.wa-fab{display:none}

/* PRODUTOS (página) */
.back-link{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--text-faint);text-decoration:none}
.hero.hero-page{min-height:64vh}
.hero-page .hero-title{font-size:clamp(40px,6vw,80px)}
.product-nav{background:var(--pedra);border-bottom:1px solid var(--border-sub);padding:0 var(--sp-48);display:flex;overflow-x:auto}
.product-nav a{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);text-decoration:none;padding:var(--sp-16) var(--sp-24);display:block;border-bottom:2px solid transparent;white-space:nowrap;transition:color .2s,border-color .2s;min-height:48px}
.product-nav a:hover{color:var(--creme);border-bottom-color:var(--border)}
.product-nav a.active{color:var(--queijo);border-bottom-color:var(--queijo)}
.philosophy{padding:var(--sp-80) var(--sp-48);background:var(--pedra);border-top:1px solid var(--border-sub)}
.philosophy-inner{max-width:800px;margin:0 auto;text-align:center}
.philosophy-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-24)}
.philosophy-text{font-family:var(--font-sub);font-size:clamp(22px,2.5vw,30px);font-style:italic;font-weight:300;line-height:1.5;color:var(--creme)}
.philosophy-text strong{font-style:normal;font-weight:500;color:var(--queijo)}
.product-feature{padding:var(--sp-96) var(--sp-48);border-top:1px solid var(--border-sub)}
.product-feature:nth-of-type(odd){background:var(--bg)}
.product-feature:nth-of-type(even){background:var(--pedra)}
.pf-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.pf-inner.reverse .pf-image-wrap{order:2}
.pf-image-wrap{position:relative}
.pf-image{width:100%;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;background:var(--surface-2)}
.pf-image img,.pf-image picture{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.pf-image-badge{position:absolute;top:var(--sp-20);left:var(--sp-20);font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--queijo);background:rgba(26,23,20,.88);padding:6px 14px;border-radius:var(--r-sm);border:1px solid var(--border)}
.pf-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-16)}
.pf-title{font-family:var(--font-display);font-size:clamp(32px,4vw,52px);font-weight:600;line-height:1.08;color:var(--text);margin-bottom:var(--sp-20)}
.pf-tagline{font-family:var(--font-sub);font-size:20px;font-style:italic;color:var(--creme-muted);margin-bottom:var(--sp-24);line-height:1.4}
.pf-desc{font-size:16px;line-height:1.8;color:var(--text-muted);margin-bottom:var(--sp-32)}
.pf-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-12);margin-bottom:var(--sp-32)}
.spec-item{background:var(--surface-2);border:1px solid var(--border-sub);border-radius:var(--r-sm);padding:var(--sp-16)}
.spec-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}
.spec-value{font-family:var(--font-mono);font-size:14px;font-weight:400;color:var(--text)}
.pf-certs{display:flex;gap:var(--sp-8);flex-wrap:wrap;margin-bottom:var(--sp-32)}
.cert-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--queijo);border:1px solid var(--border);padding:5px 12px;border-radius:var(--r-sm);background:rgba(200,150,62,.06)}
.pf-ideal{margin-bottom:var(--sp-32)}
.ideal-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-12)}
.ideal-tags{display:flex;gap:var(--sp-8);flex-wrap:wrap}
.ideal-tag{font-size:13px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-sub);padding:6px 14px;border-radius:var(--r-sm)}
.pf-prep{background:var(--surface-2);border:1px solid var(--border-sub);border-radius:var(--r-md);padding:var(--sp-20);margin-bottom:var(--sp-32)}
.prep-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-4)}
.prep-text{font-size:14px;color:var(--text-muted);line-height:1.6}
.pf-ctas{display:flex;gap:var(--sp-12);flex-wrap:wrap}
.why-pdm{padding:var(--sp-96) var(--sp-48);background:var(--bg);border-top:1px solid var(--border-sub)}
.why-inner,.certs-inner{max-width:1280px;margin:0 auto}
.why-header,.certs-header{text-align:center;margin-bottom:var(--sp-64)}
.why-label,.certs-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:var(--sp-20)}
.why-title{font-family:var(--font-display);font-size:clamp(28px,3.5vw,44px);font-weight:600;color:var(--text);line-height:1.1}
.why-title em{font-style:italic;color:var(--queijo)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-24)}
.why-card,.cert-card{background:var(--surface);border:1px solid var(--border-sub);border-radius:var(--r-md);padding:var(--sp-32) var(--sp-24);transition:border-color .2s}
.why-card:hover,.cert-card:hover{border-color:var(--border)}
.why-num{font-family:var(--font-mono);font-size:32px;font-weight:500;color:var(--queijo);opacity:.6;line-height:1;margin-bottom:var(--sp-16)}
.why-card-title,.cert-card-title{font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--text);margin-bottom:var(--sp-12)}
.cert-card-title{color:var(--queijo)}
.why-card-text,.cert-card-text{font-size:14px;line-height:1.7;color:var(--text-muted)}
.certs-section{padding:var(--sp-80) var(--sp-48);background:var(--pedra);border-top:1px solid var(--border-sub)}
.certs-title{font-family:var(--font-display);font-size:clamp(26px,3vw,38px);font-weight:600;color:var(--text)}
.certs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-20)}
.cert-card{background:var(--bg);text-align:center}
.cert-card-icon{font-family:var(--font-mono);font-size:22px;color:var(--queijo);margin-bottom:var(--sp-16);display:block}
.b2b-final{padding:var(--sp-96) var(--sp-48);background:var(--carvao);border-top:1px solid var(--border-sub);text-align:center}
.b2b-final-inner{max-width:720px;margin:0 auto}
.b2b-final-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ardosia-clara);margin-bottom:var(--sp-24)}
.b2b-final-title{font-family:var(--font-display);font-size:clamp(28px,4vw,48px);font-weight:600;line-height:1.1;color:var(--creme);margin-bottom:var(--sp-20)}
.b2b-final-title em{font-style:italic;color:var(--queijo)}
.b2b-final-text{font-size:16px;line-height:1.75;color:var(--text-muted);margin-bottom:var(--sp-48)}
.b2b-stats{display:flex;justify-content:center;gap:var(--sp-64);margin-bottom:var(--sp-48);flex-wrap:wrap}
.b2b-stat-num{font-family:var(--font-mono);font-size:34px;font-weight:500;color:var(--queijo);display:block;line-height:1.1;font-variant-numeric:tabular-nums}
.b2b-stat-lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-top:4px;display:block}
.b2b-final-ctas{display:flex;gap:var(--sp-16);justify-content:center;flex-wrap:wrap}

/* LEGAL */
.legal-page{max-width:720px;margin:0 auto;padding:80px 24px 120px}
.legal-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--queijo);margin-bottom:16px}
.legal-title{font-family:var(--font-display);font-size:clamp(32px,4.5vw,48px);font-weight:700;line-height:1.1;margin-bottom:16px}
.legal-updated{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--text-faint);margin-bottom:56px}
.legal-section{margin-top:40px}
.legal-section h2{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--text);margin-bottom:14px}
.legal-section p{color:var(--text-muted);margin-bottom:14px}
.legal-section p:last-child{margin-bottom:0}
.legal-section ul{margin:0 0 14px 20px;color:var(--text-muted)}
.legal-section li{margin-bottom:6px}
.legal-section a,.legal-section .link-btn{color:var(--queijo);text-decoration:underline;text-decoration-color:rgba(200,150,62,.4);text-underline-offset:3px;background:none;border:0;cursor:pointer;font:inherit}
.legal-section a:hover,.legal-section .link-btn:hover{color:var(--queijo-pale)}
.legal-section strong{color:var(--text);font-weight:500}
.legal-table{width:100%;border-collapse:collapse;margin-bottom:14px;font-size:14px}
.legal-table th,.legal-table td{text-align:left;padding:10px 12px;border:1px solid var(--border-sub);color:var(--text-muted);vertical-align:top}
.legal-table th{color:var(--text);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:400}
.legal-divider{height:1px;background:var(--border-sub);margin:56px 0 0}

/* CONSENTIMENTO DE COOKIES */
.cc{position:fixed;left:var(--sp-16);right:var(--sp-16);bottom:var(--sp-16);z-index:700;max-width:780px;margin:0 auto;background:var(--pedra);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-24);box-shadow:0 12px 40px rgba(0,0,0,.5)}
.cc[hidden]{display:none}
.cc h2{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:var(--sp-8)}
.cc p{font-size:14px;line-height:1.6;color:var(--text-muted);margin-bottom:var(--sp-16)}
.cc a{color:var(--queijo);text-underline-offset:3px}
.cc-actions{display:flex;gap:var(--sp-12);flex-wrap:wrap}
.cc-actions .btn{flex:1 1 150px}
.cc-prefs{border-top:1px solid var(--border-sub);margin:0 0 var(--sp-16);padding-top:var(--sp-16);display:grid;gap:var(--sp-12)}
.cc-prefs[hidden]{display:none}
.cc-row{display:flex;gap:var(--sp-12);align-items:flex-start;font-size:14px;color:var(--text-muted)}
.cc-row input{margin-top:3px;width:20px;height:20px;accent-color:var(--queijo);flex-shrink:0}
.cc-row strong{color:var(--text);font-weight:500;display:block}

/* MODAL DO CATÁLOGO */
dialog.cat-dialog{margin:auto;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;background:var(--pedra);color:var(--text);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-32)}
dialog.cat-dialog::backdrop{background:rgba(26,23,20,.82)}
.cat-close{position:absolute;top:var(--sp-8);right:var(--sp-8);width:44px;height:44px;background:none;border:0;color:var(--text-muted);font-size:26px;line-height:1;cursor:pointer;border-radius:var(--r-sm)}
.cat-close:hover{color:var(--queijo)}
.cat-title{font-family:var(--font-display);font-size:26px;font-weight:600;margin-bottom:var(--sp-8);padding-right:var(--sp-32)}
.cat-sub{font-size:14px;color:var(--text-muted);margin-bottom:var(--sp-24)}
.cat-form{display:flex;flex-direction:column;gap:var(--sp-16)}
.cat-langs{border:0;display:flex;gap:var(--sp-12);flex-wrap:wrap}
.cat-langs legend{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-8)}
.cat-lang{position:relative;flex:1 1 180px}
.cat-lang input{position:absolute;opacity:0;inset:0;cursor:pointer}
.cat-lang span{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-8);min-height:48px;padding:0 var(--sp-16);border:1px solid var(--border-sub);border-radius:var(--r-sm);background:var(--surface-2);font-size:14px}
.cat-lang input:checked+span{border-color:var(--queijo);color:var(--queijo-pale)}
.cat-lang input:focus-visible+span{outline:2px solid var(--queijo);outline-offset:2px}
.cat-privacy{font-size:12px;line-height:1.6;color:var(--text-faint)}
.cat-privacy a{color:var(--queijo)}

/* WHATSAPP + RESPONSIVO */
@media(max-width:1024px){.why-grid,.certs-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){
  .header-inner{padding:var(--sp-12) var(--sp-16)}
  .header-logo img{height:44px}
  .menu-toggle{display:inline-flex;align-items:center}
  .header-b2b{display:none}
  nav.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--creme-fundo);border-bottom:1px solid rgba(227,0,22,.12);padding:var(--sp-8) var(--sp-24) var(--sp-16)}
  nav.main-nav.open{display:block}
  .header-nav{flex-direction:column;align-items:flex-start;gap:0}
  .header-nav li{width:100%}
  .header-nav a,.header-nav button{display:flex;min-height:48px;align-items:center;width:100%;font-size:15px}
  .hero{padding:var(--sp-64) var(--sp-24) var(--sp-48)}
  .hero-image{aspect-ratio:4/3}
  .story,.products,.b2b-section,.philosophy,.product-feature,.why-pdm,.certs-section,.b2b-final,.social{padding:var(--sp-64) var(--sp-24)}
  .story-inner,.b2b-inner,.pf-inner{grid-template-columns:1fr;gap:var(--sp-48)}
  .pf-inner.reverse .pf-image-wrap{order:0}
  .product-grid,.why-grid,.certs-grid{grid-template-columns:1fr}
  .cert-strip{padding:var(--sp-24);flex-direction:column;align-items:flex-start}
  .form-row{grid-template-columns:1fr}
  .product-nav{padding:0 var(--sp-16)}
  .b2b-stats{gap:var(--sp-32)}
  .site-footer{padding:var(--sp-48) var(--sp-24) 120px}
  .footer-grid{grid-template-columns:1fr;gap:var(--sp-32)}
  .b2b-strip{padding:var(--sp-8) var(--sp-16)}
  .b2b-strip-text{font-size:10px;letter-spacing:.08em}
  .wa-fab{display:inline-flex;align-items:center;gap:var(--sp-8);position:fixed;right:var(--sp-16);bottom:76px;z-index:350;min-height:48px;padding:0 var(--sp-20);background:var(--queijo);color:var(--carvao);border-radius:var(--r-sm);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;box-shadow:0 6px 20px rgba(0,0,0,.45)}
  .wa-fab:hover{background:var(--queijo-pale)}
  .cc{left:var(--sp-8);right:var(--sp-8);bottom:var(--sp-8);padding:var(--sp-16);max-height:90vh;overflow:auto}
  dialog.cat-dialog{padding:var(--sp-24)}
}
@media(max-width:375px){.stats-grid{grid-template-columns:1fr}}

/* MOTION */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes lineUp{from{transform:translateY(110%)}to{transform:translateY(0)}}
.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease-enter),transform .7s var(--ease-enter)}
.js .reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}
  .hero-title .line>span{transform:none;animation:none}
  .hero-eyebrow,.hero-sub,.hero-ctas,.hero-image{opacity:1;animation:none}
  .js .reveal{opacity:1;transform:none}
  .btn::before{transition:none}
}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--carvao)}
::-webkit-scrollbar-thumb{background:var(--pedra-clara);border-radius:3px}

/* tabelas legais em ecrãs pequenos */
.legal-table{overflow-wrap:anywhere}
@media(max-width:768px){
  .legal-table,.legal-table tbody,.legal-table tr,.legal-table th,.legal-table td{display:block;width:100%}
  .legal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .legal-table tr{border:1px solid var(--border-sub);border-radius:var(--r-md);margin-bottom:var(--sp-12);padding:var(--sp-8) 0}
  .legal-table th,.legal-table td{border:0;padding:var(--sp-4) var(--sp-12)}
  .legal-table tbody th{color:var(--queijo)}
}
