:root { --ink:#3c1e20; --green:#b22d30; --lime:#e8a09a; --cream:#f7efea; --paper:#fffaf7; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-geist-sans), Arial, sans-serif; }
main { width:100%; background:var(--paper); overflow:hidden; }
a { color:inherit; text-decoration:none; }
.site-header { height:84px; display:flex; align-items:center; justify-content:space-between; gap:32px; padding-left:max(24px,calc((100vw - 1250px)/2)); padding-right:max(24px,calc((100vw - 1250px)/2)); border-bottom:1px solid rgba(60,30,32,.12); background:#fffac2;  z-index:10;position: fixed;
  width: 100%; }
.brand { display:flex; align-items:center; gap:12px; min-width:190px; }
.brand-logo { display:block; width:178px; height:auto; max-height:72px; object-fit:contain; }
.brand > span:last-child { display:grid; line-height:1; }
.brand strong { font-size:18px; letter-spacing:-.03em; }
.brand small { margin-top:6px; text-transform:uppercase; font-size:8px; letter-spacing:.13em; color:#6b7d76; font-weight:650; }
.brand-mark { width:38px; height:38px; border-radius:50% 50% 50% 12px; background:var(--green); display:grid; place-items:center; rotate:-6deg; }
.brand-mark i { width:13px; height:19px; border:2px solid var(--lime); border-top:0; border-left:0; border-radius:0 0 14px 0; rotate:38deg; }
nav { display:flex; gap:34px; font-size:13px; font-weight:600; color:#6d5556; }
nav a:hover { color:var(--green); }
.header-cta { padding:12px 18px; border:1px solid var(--green); border-radius:8px; font-size:12px; font-weight:750; background-color: #942226; color: #fff;}
.hero {background-color: #dad387; min-height:680px; display:grid; grid-template-columns:1.03fr .97fr; align-items:center; gap:4vw; padding-top:clamp(206px,7vw,100px); padding-bottom:clamp(56px,7vw,100px); padding-left:max(24px,calc((100vw - 1250px)/2)); padding-right:max(24px,calc((100vw - 1250px)/2)); overflow:hidden; }
.hero-copy { max-width:670px; }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 26px; color:var(--green); text-transform:uppercase; letter-spacing:.12em; font-weight:750; font-size:11px; }
.eyebrow span { width:28px; height:2px; background:var(--lime); }
h1 { font-family:Georgia, 'Times New Roman', serif; font-size:clamp(47px,5.3vw,78px); letter-spacing:-.055em; line-height:.99; margin:0; font-weight:500; }
h1 em { color:var(--green); font-weight:500; }
.hero-lead { max-width:590px; color:#715b5b; font-size:clamp(16px,1.5vw,19px); line-height:1.65; margin:28px 0 32px; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.btn { min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:0 22px; border-radius:7px; font-size:13px; font-weight:750; transition:.2s ease; }
.btn-primary { background:var(--green); color:white; gap:28px; box-shadow:0 12px 28px rgba(178,45,48,.2); }
.btn-primary:hover { transform:translateY(-2px); background:#942226; }
.btn-quiet { border:1px solid rgba(60,30,32,.2);background-color: #212423; color: #fff;}
.btn-quiet:hover { background:#3c1e20; }
.hero-proof { display:flex; align-items:center; gap:13px; margin-top:42px; }
.proof-icon { width:31px; height:31px; display:grid; place-items:center; border-radius:50%; background:#f2d7d5; color:var(--green); font-weight:900; }
.hero-proof p { margin:0; display:grid; gap:4px; }
.hero-proof strong { font-size:11px; }
.hero-proof small { color:#212423; font-size:9px; }
.proof-sep { height:31px; width:1px; background:#d4ddd8; margin:0 7px; }
.hero-visual { min-height:530px; position:relative; display:grid; place-items:center; }
.hero-visual::before { content:''; position:absolute; inset:5% 4% 6% 8%; background:var(--cream); border-radius:46% 54% 48% 52% / 56% 42% 58% 44%; rotate:-5deg; }
.orb { position:absolute; border-radius:50%; }
.orb-one { width:570px; height:570px; background:var(--lime); opacity:.78; right:3%; top:4%; }
.orb-two { width:95px; height:95px; border:1px solid rgba(178,45,48,.25); left:4%; bottom:10%; }
.visual-card { background:rgba(255,255,255,.94); border:1px solid rgba(60,30,32,.1); box-shadow:0 24px 60px rgba(60,30,32,.13); }
.hero-photo-frame { position:absolute; inset:7% 3% 8% 7%; z-index:2; overflow:hidden; border:7px solid rgba(255,255,255,.82); border-radius:28px; background:#fff; box-shadow:0 28px 70px rgba(60,30,32,.18); }
.hero-photo-frame::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(60,30,32,.14)); pointer-events:none; }
.hero-photo { display:block; width:100%; height:100%; object-fit:cover; object-position:58% center; }
.main-card { position:relative; z-index:2; width:min(340px,72%); padding:34px; border-radius:22px; rotate:-2deg; }
.card-kicker { margin:0 0 15px; text-transform:uppercase; letter-spacing:.14em; font-size:9px; font-weight:800; color:#789087; }
.score-ring { width:116px; height:116px; display:grid; place-items:center; border-radius:50%; margin:12px auto 25px; background:conic-gradient(var(--green) 0 86%, #e7ece7 86%); position:relative; }
.score-ring::after { content:''; position:absolute; inset:9px; border-radius:50%; background:white; }
.score-ring span { position:relative; z-index:1; font:500 34px Georgia,serif; }
.score-ring small { font:700 11px Arial; }
.main-card h2 { font:500 28px Georgia,serif; margin:0 0 9px; }
.main-card > p:not(.card-kicker) { color:#6b7d76; line-height:1.5; font-size:12px; margin:0; }
.mini-bars { height:32px; display:flex; gap:6px; align-items:flex-end; margin-top:20px; }
.mini-bars i { display:block; flex:1; border-radius:4px 4px 1px 1px; background:#f0c9c5; }
.mini-bars i:nth-child(1){height:34%}.mini-bars i:nth-child(2){height:62%}.mini-bars i:nth-child(3){height:48%}.mini-bars i:nth-child(4){height:90%;background:var(--lime)}
.float-card { position:absolute; z-index:3; padding:14px 17px; border-radius:12px; display:flex; align-items:center; gap:11px; min-width:190px; }
.float-card > span { width:34px; height:34px; display:grid; place-items:center; border-radius:9px; background:var(--green); color:white; font-size:11px; font-weight:800; }
.float-card p { display:grid; gap:4px; margin:0; }
.float-card strong { font-size:13px; }.float-card small { font-size:13px; color:#809088; }
.top-card { right:0; top:24%; }.bottom-card { left:1%; bottom:20%; }.bottom-card > span { background:var(--lime); color:var(--ink); }
.visual-note { position:absolute; bottom:2%; z-index:3; font:italic 15px Georgia,serif; }.visual-note b { color:var(--green); margin:0 5px; }
.trust-strip { background:var(--ink); color:white; min-height:114px; padding-top:24px; padding-bottom:24px; padding-left:max(24px,calc((100vw - 1250px)/2)); padding-right:max(24px,calc((100vw - 1250px)/2)); display:flex; justify-content:space-between; align-items:center; gap:34px; }
.trust-strip > p { max-width:300px; margin:0; font:italic 17px/1.35 Georgia,serif; color:#f4dddd; }
.trust-strip div { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:16px; font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:#ead1d1; }
.trust-strip i { width:4px; height:4px; border-radius:50%; background:var(--lime); }
@media(max-width:860px){ nav{display:none}.hero{grid-template-columns:1fr;padding-top:62px}.hero-visual{min-height:470px}.trust-strip{align-items:flex-start;flex-direction:column}.trust-strip div{justify-content:flex-start}.header-cta{display:none} }
@media(max-width:520px){.site-header{height:72px}.hero{padding-inline:20px}.hero-proof{align-items:flex-start;flex-wrap:wrap}.proof-sep{display:none}.hero-visual{min-height:420px}.main-card{width:78%;padding:25px}.top-card{top:18%}.bottom-card{bottom:17%}.float-card{min-width:168px}.trust-strip{padding-inline:20px}}

.section-pad { padding-top:clamp(76px,9vw,132px); padding-bottom:clamp(76px,9vw,132px); padding-left:max(24px,calc((100vw - 1250px)/2)); padding-right:max(24px,calc((100vw - 1250px)/2)); }
.section-label { margin:0 0 18px; color:var(--green); text-transform:uppercase; letter-spacing:.15em; font-size:10px; font-weight:800; }
.section-label.light { color:var(--lime); }
.section-head { max-width:850px; margin-bottom:54px; }
.section-head h2,.audit h2,.contact h2,.inspection h2,.training-copy h2 { margin:0; font:500 clamp(38px,4vw,58px)/1.06 Georgia,serif; letter-spacing:-.045em; }
.section-head > p:last-child,.split-head > p { color:#657970; line-height:1.7; }
.split-head { max-width:none; display:grid; grid-template-columns:1.3fr .7fr; gap:8vw; align-items:end; }
.muted-section { background:#fffac2; }
.audit { display:grid; grid-template-columns:1fr 1fr; gap:10vw; align-items:start; }
.audit > div:last-child { color:#5c7168; line-height:1.75; font-size:16px; }
.audit .btn { margin-top:20px; }
.solution-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.solution-grid article { padding:42px; min-height:330px; border:1px solid rgba(60,30,32,.14); border-radius:18px; display:flex; flex-direction:column; align-items:flex-start;background-color: #dad387; }
.solution-grid article > span,.services-grid article > span { color:#789087; font:italic 14px Georgia,serif; }
.solution-grid h3 { font:500 31px/1.1 Georgia,serif; margin:54px 0 15px; }
.solution-grid p { color:#000; line-height:1.7; margin:0 0 27px; }
.solution-grid a { margin-top:auto; font-size:12px; font-weight:800; border-bottom:1px solid currentColor; padding-bottom:4px; }
.solution-grid .accent-card { background:var(--green); color:white; border-color:var(--green); }
.solution-grid .accent-card p,.solution-grid .accent-card > span { color:#f0c4c2; }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d9e0dc; border-left:1px solid #d9e0dc; }
.services-grid article { padding:32px; min-height:245px; border-right:1px solid #d9e0dc; border-bottom:1px solid #d9e0dc; transition:.2s ease; }
.services-grid article:hover { background:#f5f1e8; transform:translateY(-3px); }
.services-grid h3 { font:500 22px/1.15 Georgia,serif; margin:36px 0 12px; }
.services-grid p { color:#6a7d75; line-height:1.65; margin:0; font-size:13px; }
.center-action { display:flex; justify-content:center; margin-top:42px; }
.process { background:var(--ink); color:white; }
.process .section-head h2 { max-width:780px; }
.steps { display:grid; grid-template-columns:repeat(5,1fr); margin-bottom:46px; border:1px solid rgba(255,255,255,.18); border-radius:14px; overflow:hidden; }
.steps article { padding:28px 22px 12px 0; border-right:1px solid rgba(255,255,255,.14); min-height:240px; }
.steps article + article { padding-left:22px; }
.steps article:first-child { padding-left:22px; }
.steps article:last-child { border-right:0; padding-right:22px; }
.steps article > span { color:var(--lime); font:italic 16px Georgia,serif; }
.steps h3 { font:500 20px Georgia,serif; margin:64px 0 13px; }
.steps p { font-size:12px; line-height:1.65; color:#b9cbc3; }
.process .btn-primary { background:var(--lime); color:var(--ink); }
.training-feature { display:grid; grid-template-columns:1.06fr .94fr; gap:clamp(44px,7vw,100px); align-items:center; background:var(--paper); }
.training-media { min-height:520px; position:relative; border-radius:26px; overflow:hidden; box-shadow:0 24px 65px rgba(60,30,32,.14); }
.training-media::after { content:''; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(60,30,32,.35)); pointer-events:none; }
.training-media > img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.photo-caption { position:absolute; z-index:2; right:20px; bottom:20px; left:20px; display:flex; align-items:center; gap:15px; padding:16px 18px; border:1px solid rgba(255,255,255,.32); border-radius:14px; color:white; background:rgba(60,30,32,.72); backdrop-filter:blur(10px); }
.photo-caption > span { padding:8px 11px; border-radius:999px; background:var(--lime); color:var(--ink); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.photo-caption p { display:grid; gap:3px; margin:0; }
.photo-caption strong { font:500 18px Georgia,serif; }.photo-caption small { font-size:11px; color:#f6e8e7; }
.training-copy > p:not(.section-label) { margin:24px 0; color:#715b5b; font-size:17px; line-height:1.75; }
.training-copy ul { list-style:none; display:grid; gap:13px; margin:0 0 32px; padding:0; }
.training-copy li { display:flex; align-items:center; gap:12px; font-size:15px; font-weight:700; }
.training-copy li span { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:#f4ddda; }
.segment-cloud { display:flex; flex-wrap:wrap; gap:10px; }
.segment-cloud span { border:1px solid #d5ddd9; border-radius:999px; padding:13px 18px; font-size:12px; font-weight:700; background:white; }
.segment-cloud b { color:#94a59e; margin-right:9px; font:italic 10px Georgia,serif; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.benefit-grid article { background:var(--paper); border-radius:14px; padding:30px; min-height:190px; }
.benefit-grid span { width:38px; height:38px; display:grid; place-items:center; background:#f2d7d5; border-radius:9px; color:var(--green); font-weight:800; }
.benefit-grid h3 { margin:28px 0 10px; font:500 22px Georgia,serif; }
.benefit-grid p { margin:0; color:#6a7d75; font-size:13px; }
.about { background:var(--green); color:white; display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; }
.about-statement h2 { margin:0; font:500 clamp(40px,4.8vw,68px)/1.02 Georgia,serif; letter-spacing:-.05em; }
.about-statement > p:last-child { color:#c5d9d0; font:italic 20px Georgia,serif; }
.pillars { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:15px; align-items:center; }
.pillars article { border-top:1px solid rgba(255,255,255,.28); padding-top:18px; min-height:180px; }
.pillars article span { color:var(--lime); font-size:10px; }
.pillars article h3 { font:500 22px Georgia,serif; margin:50px 0 9px; }
.pillars article p { color:#fff; font-size:11px; line-height:1.5; }
.pillars > b { color:var(--lime); font:italic 26px Georgia,serif; }
.inspection { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(40px,7vw,96px); align-items:center; border-bottom:1px solid #dbe1de; background:var(--cream); }
.inspection-media { min-height:420px; position:relative; overflow:hidden; border-radius:24px; box-shadow:0 22px 55px rgba(60,30,32,.12); }
.inspection-media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.inspection-media span { position:absolute; left:18px; bottom:18px; padding:10px 14px; border-radius:999px; color:white; background:rgba(60,30,32,.78); backdrop-filter:blur(8px); font-size:11px; font-weight:750; letter-spacing:.04em; }
.inspection-copy { max-width:700px; }
.inspection p:not(.section-label) { color:#657970; line-height:1.65; max-width:670px; }
.inspection .btn { margin-top:16px; }
.faq { display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; }
.faq-list { border-top:1px solid #cfd8d3; }
.faq details { border-bottom:1px solid #cfd8d3; padding:0; }
.faq summary { cursor:pointer; display:flex; justify-content:space-between; gap:20px; padding:24px 0; font:500 18px Georgia,serif; list-style:none; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary b { font:400 20px Arial; color:var(--green); transition:.2s; }
.faq details[open] summary b { rotate:45deg; }
.faq details p { margin:0 42px 25px 0; color:#63786f; line-height:1.65; font-size:13px; }
.contact { background:var(--ink); color:white; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }
.contact-copy > p:not(.section-label) { color:#b9cbc3; max-width:480px; line-height:1.7; }
.contact-lines { margin-top:55px; display:grid; gap:11px; font-size:13px; color:#dce7e2; }
.contact form { background:white; color:var(--ink); padding:36px; border-radius:16px; display:grid; gap:18px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.contact label { display:grid; gap:8px; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.contact input,.contact select,.contact textarea { width:100%; border:1px solid #d7dfdb; border-radius:6px; padding:13px 14px; background:#fffefa; color:var(--ink); font:13px Arial,sans-serif; text-transform:none; letter-spacing:normal; resize:vertical; }
.contact input:focus,.contact select:focus,.contact textarea:focus { outline:2px solid rgba(232,160,154,.7); border-color:var(--green); }
.btn-form { border:0; background:var(--lime); color:var(--ink); justify-content:space-between; cursor:pointer; }
.contact form > small { color:#889991; font-size:9px; }
footer { padding-top:48px; padding-bottom:28px; padding-left:max(24px,calc((100vw - 1250px)/2)); padding-right:max(24px,calc((100vw - 1250px)/2)); background:#2d1517; color:white; display:grid; grid-template-columns:1fr 1fr auto; gap:32px; align-items:center; }
.footer-brand .brand-logo { width:215px; max-height:none; }
footer > p { color:#9eb2aa; font-size:10px; text-align:center; }
footer > div { display:flex; gap:15px; font-size:11px; }
footer > small { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.12); padding-top:22px; color:#829990; font-size:9px; }
.floating-whatsapp { position:fixed; right:22px; bottom:20px; z-index:20; padding:12px 16px; border-radius:999px; background:#075E54; color:#fff; box-shadow:0 10px 30px rgba(0,0,0,.22); font-size:11px; font-weight:800; }
.floating-whatsapp span { color:var(--green); margin-right:5px; }
@media(max-width:980px){.services-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(3,1fr)}.benefit-grid{grid-template-columns:repeat(2,1fr)}.about,.contact,.training-feature,.inspection{grid-template-columns:1fr}.faq{grid-template-columns:1fr}.training-media,.inspection-media{min-height:460px}footer{grid-template-columns:1fr}footer>p{text-align:left}footer>small{grid-column:auto}}
@media(max-width:720px){.section-pad{padding-inline:20px}.audit,.solution-grid,.split-head{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.steps article,.steps article+article{padding:22px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14);min-height:0}.steps h3{margin:22px 0 8px}.services-grid{grid-template-columns:1fr}.benefit-grid{grid-template-columns:1fr}.pillars{grid-template-columns:1fr}.pillars>b{display:none}.field-row{grid-template-columns:1fr}.contact form{padding:24px 18px}.footer-brand{min-width:0}.training-media,.inspection-media{min-height:360px}}

/* Refinamento de legibilidade e acabamento */
nav { font-size:18px; }
.header-cta { font-size:14px; padding:13px 20px; }
.eyebrow,.section-label { font-size:12px; }
.hero-lead { font-size:clamp(18px,1.55vw,21px); }
.btn { min-height:54px; padding-inline:24px; font-size:18px; }
.hero-proof strong { font-size:13px; }
.hero-proof small { font-size:15px; }
.trust-strip > p { font-size:20px; }
.trust-strip div { font-size:12px; }
.audit > div:last-child,.solution-grid p,.section-head > p:last-child,.split-head > p { font-size:17px; }

.services-grid { border:0; gap:16px; }
.services-grid article { position:relative; overflow:hidden; min-height:270px; padding:36px; border:1px solid rgba(60,30,32,.12); border-radius:18px; background:#fff; box-shadow:0 8px 30px rgba(60,30,32,.04); }
.services-grid article::before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background:var(--green); transform:scaleY(0); transform-origin:bottom; transition:transform .25s ease; }
.services-grid article:hover { background:#fff; border-color:rgba(178,45,48,.28); box-shadow:0 18px 45px rgba(60,30,32,.1); transform:translateY(-5px); }
.services-grid article:hover::before { transform:scaleY(1); }
.services-grid article > span { display:inline-grid; place-items:center; width:38px; height:38px; border-radius:50%; background:#f4ddda; color:var(--green); font-size:14px; font-weight:700; }
.services-grid h3 { margin:38px 0 15px; font-size:27px; line-height:1.12; }
.services-grid p { font-size:15px; line-height:1.72; }

.solution-grid h3 { font-size:34px; }
.solution-grid a { font-size:14px; }
.steps article > span { font-size:18px; }
.steps h3 { font-size:23px; }
.steps p { font-size:14px; }
.segment-cloud span { padding:14px 20px; font-size:14px; }
.segment-cloud b { font-size:12px; }
.benefit-grid h3 { font-size:25px; }
.benefit-grid p { font-size:15px; line-height:1.6; }
.pillars article span { font-size:12px; }
.pillars article h3 { font-size:25px; }
.pillars article p { font-size:14px; }
.inspection p:not(.section-label) { font-size:17px; }
.faq summary { font-size:21px; }
.faq details p { font-size:15px; }
.contact-copy > p:not(.section-label) { font-size:17px; }
.contact-lines { font-size:15px; }
.contact label { font-size:12px; }
.contact input,.contact select,.contact textarea { font-size:15px; }
.contact form > small,footer > small { font-size:11px; }
.hp-field { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.form-status { min-height:20px; margin:0; font-size:14px; line-height:1.45; text-transform:none; letter-spacing:normal; }
.form-status.is-success { color:#247044; }
.form-status.is-error { color:#a1262a; }
.btn-form:disabled { cursor:wait; opacity:.68; }
footer > p,footer > div { font-size:14px; }
.floating-whatsapp { font-size:13px; padding:14px 18px; }

@media(max-width:720px){
  .services-grid article { min-height:auto; padding:30px; }
  .services-grid h3 { font-size:25px; }
  .trust-strip div { font-size:11px; }
  .steps article:last-child { border-bottom:0; }
}
