/* Orza — site comercial (orzahub.com). Tokens do DESIGN.md + serifa da marca. */
:root{
  --primary:#0F5A56;--primary-hover:#0C4B48;--primary-soft:#E8F2F1;
  --green-900:#0A2A27;--green-800:#0D3E3A;
  --gold:#C9A15A;--gold-bright:#D9B36A;--gold-soft:#F5EDDE;--gold-text:#9A6818;
  --bg:#FAFBFA;--surface:#FFFFFF;--surface-subtle:#F5F7F6;
  --t1:#23272A;--t2:#596164;--t3:#7A8587;--border:#E3E8E6;--border-strong:#CAD4D0;
  --success:#26734D;
  --r-lg:10px;--r-card:12px;--r-pill:999px;
  --shadow-card:0 1px 2px rgba(20,30,30,.05);--shadow-el:0 8px 24px rgba(20,30,30,.08);
  --display:'Fraunces',Georgia,serif;--heading:'Plus Jakarta Sans',sans-serif;--body:'Inter',sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--t1);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.01em;text-wrap:balance}
h3{font-family:var(--heading);font-weight:700;letter-spacing:-.01em}
h2{font-size:44px;line-height:1.1}
a{color:inherit;text-decoration:none}
:focus-visible{outline:none;box-shadow:0 0 0 3px var(--bg),0 0 0 6px var(--primary);border-radius:var(--r-lg)}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--r-lg);font-weight:600;font-size:15px;border:1px solid transparent;transition:background-color .15s var(--ease),border-color .15s var(--ease),transform .15s var(--ease);cursor:pointer;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-p{background:var(--primary);color:#fff}.btn-p:hover{background:var(--primary-hover)}
.btn-s{background:var(--surface);color:var(--t1);border-color:var(--border-strong)}.btn-s:hover{border-color:var(--t3);background:var(--surface-subtle)}
.btn-gold{background:var(--gold);color:var(--green-900)}.btn-gold:hover{background:var(--gold-bright)}
.btn-o{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}.btn-o:hover{border-color:#fff}
.btn-lg{height:56px;padding:0 28px;font-size:16px}
.lnk{font-weight:600;color:var(--primary)}.lnk:hover{text-decoration:underline}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);margin-bottom:14px}
.sub{font-size:18px;color:var(--t2);max-width:600px;margin-top:12px}
.ic{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* header */
header{background:var(--green-900);color:#fff}
header .wrap{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}
header .logo img{height:36px;width:auto}
header .links{display:flex;gap:28px;font-weight:500;color:rgba(255,255,255,.8);font-size:15px;list-style:none}
header .links a:hover{color:#fff}
header .acts{display:flex;gap:10px}
header .acts .btn{height:44px}
header details{position:relative;display:none}
header summary{list-style:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer}
header summary::-webkit-details-marker{display:none}
header .menu{position:absolute;right:0;top:56px;z-index:20;width:260px;background:var(--green-800);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-card);padding:12px;box-shadow:var(--shadow-el)}
header .menu a{display:block;padding:10px 12px;border-radius:10px;font-weight:500;font-size:15px}
header .menu a:hover{background:rgba(255,255,255,.1)}
header .menu .cta{margin-top:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:8px}
header .menu .cta .btn{width:100%}

/* hero */
.hero{position:relative;overflow:hidden;background:var(--green-900);color:#fff;padding:80px 0 88px}
.hero .photo{position:absolute;right:0;top:0;bottom:0;width:64%;background:url(../img/orza-hero.webp) 100% 100%/auto 185% no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34%);mask-image:linear-gradient(90deg,transparent 0,#000 34%)}
.hero .grad{position:absolute;inset:0;background:linear-gradient(90deg,var(--green-900) 34%,rgba(10,42,39,.45) 58%,rgba(10,42,39,0) 90%)}
.hero .top{position:absolute;left:0;right:0;top:0;height:160px;background:linear-gradient(180deg,var(--green-900) 20%,transparent)}
.hero .bot{position:absolute;left:0;right:0;bottom:0;height:130px;background:linear-gradient(0deg,var(--green-900) 8%,transparent)}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:64px;align-items:center}
.hero h1{font-size:76px;line-height:1.02;margin-bottom:24px}
.hero h1 span{color:var(--gold)}
.hero .lead{font-size:20px;line-height:1.5;color:rgba(255,255,255,.82);max-width:520px;margin-bottom:32px}
.hero .cta{display:flex;gap:16px;flex-wrap:wrap}
.hero .fine{margin-top:16px;font-size:14px;color:rgba(255,255,255,.65)}
.hero .trades{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);font-size:14px;color:rgba(255,255,255,.7)}
.hero .trades b{font-weight:600;color:#fff;margin-right:12px}
.hero .trades span{margin-right:12px}
.hero .trades span:not(:last-child):after{content:"·";margin-left:12px;color:var(--gold)}
.phone-col{justify-self:end;width:100%;max-width:340px}
.p-cap{font-size:13px;color:rgba(255,255,255,.6);text-align:center;margin-top:12px}

/* phone */
.phone{background:var(--surface);color:var(--t1);border:1px solid var(--border);border-radius:28px;box-shadow:0 40px 80px -20px rgba(0,0,0,.5);overflow:hidden;font-size:13px}
.p-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}
.p-h img{height:20px;width:auto}
.p-h span{margin-left:auto;font-size:12px;color:var(--t3)}
.chat{padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.b{max-width:88%;padding:10px 12px;border-radius:14px;line-height:1.45}
.b.u{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:4px}
.b.u .v{display:flex;align-items:center;gap:6px;font-size:11px;opacity:.85;margin-bottom:4px}
.b.u .v .ic{width:12px;height:12px}
.b.a{align-self:flex-start;background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}
.aud{align-self:flex-start;display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:14px;border-bottom-left-radius:4px;padding:8px 12px 8px 8px}
.aud .play{width:30px;height:30px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;flex:none}
.aud .play .ic{width:14px;height:14px;stroke:#fff;fill:#fff}
.aud .bars{display:flex;gap:2px;align-items:flex-end;height:20px}
.aud .bars i{width:3px;background:var(--primary);border-radius:2px;opacity:.7;display:block}
.aud small{color:var(--t3);font-size:11px;white-space:nowrap}
.doc{display:flex;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px;align-self:flex-start;max-width:88%}
.doc .f{width:32px;height:38px;border-radius:5px;background:var(--surface-subtle);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--primary);flex:none}
.doc b{display:block;font-size:12px}.doc small{color:var(--t3);font-size:11px}
.p-in{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid var(--border);background:var(--surface)}
.p-in .fld{flex:1;height:40px;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;padding:0 12px;color:var(--t3)}
.p-in .mic{width:44px;height:44px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;flex:none}
.p-in .mic .ic{stroke:#fff}

/* strip */
.strip{background:var(--gold);color:var(--green-900);padding:16px 0;font-weight:600;font-size:15px}
.strip .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}

/* sections */
section.s{padding:104px 0}
.s.alt{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.cmds ul{list-style:none;border-top:1px solid var(--border)}
.cmds li{display:grid;grid-template-columns:36px 1fr auto;gap:14px;align-items:start;padding:18px 0;border-bottom:1px solid var(--border)}
.cmds li .m{width:36px;height:36px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center}
.cmds li .m .ic{width:18px;height:18px}
.cmds li .q{font-family:var(--heading);font-weight:600;font-size:17px;line-height:1.35}
.cmds li .q small{display:block;font-family:var(--body);font-weight:400;font-size:14px;color:var(--t2);margin-top:4px}
.cmds li .who{font-size:13px;color:var(--t3);white-space:nowrap;padding-top:4px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:56px}
.st{padding-top:20px;border-top:2px solid var(--primary)}
.st .l{font-size:13px;font-weight:600;color:var(--primary);letter-spacing:.02em}
.st h3{font-size:20px;margin:14px 0 8px}
.st p{color:var(--t2);font-size:15px}
.modes{display:flex;gap:10px;margin-top:40px;flex-wrap:wrap}
.modes span{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border:1px solid var(--border);border-radius:var(--r-pill);font-size:14px;font-weight:500;background:var(--bg)}

/* why */
.why{background:var(--green-900);color:#fff;padding:104px 0}
.why .eyebrow{color:var(--gold-bright)}
.why .sub{color:rgba(255,255,255,.75)}
.why .two{align-items:center;gap:64px}
.why img{border-radius:14px;border:1px solid rgba(255,255,255,.12)}
.why ul{list-style:none;margin-top:28px;display:flex;flex-direction:column;gap:12px;font-size:16px}
.why li{display:flex;gap:12px;align-items:flex-start}.why li .ic{color:var(--gold)}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.plan{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:28px;display:flex;flex-direction:column}
.plan.hi{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.plan .tag{align-self:flex-start;font-size:12px;font-weight:700;color:var(--green-900);background:var(--gold);padding:4px 10px;border-radius:var(--r-pill);margin-bottom:14px}
.plan h3{font-size:20px}
.plan .who{color:var(--t2);font-size:14px;margin:4px 0 20px;min-height:42px}
.plan .price{font-family:var(--display);font-size:48px;line-height:1;font-variant-numeric:tabular-nums}
.plan .price small{font-size:15px;color:var(--t2);font-weight:500;font-family:var(--body)}
.plan .iva{font-size:13px;color:var(--t3);margin-top:4px}
.plans-2{grid-template-columns:repeat(2,minmax(0,420px));justify-content:center}
.plan .anual{font-size:13px;color:var(--t2);margin-top:8px}
.plan .trial{font-size:13px;color:var(--success);font-weight:500;margin-top:8px}
.plan ul{list-style:none;margin:22px 0 26px;display:flex;flex-direction:column;gap:10px;font-size:15px;flex:1}
.plan li{display:flex;gap:10px;align-items:flex-start}.plan li .ic{width:18px;height:18px;color:var(--primary);margin-top:2px}
.plan .btn{width:100%}
.pnote{margin-top:24px;font-size:14px;color:var(--t3);text-align:center}
.plans-empty{margin-top:48px;padding:32px;border:1px dashed var(--border-strong);border-radius:var(--r-card);color:var(--t2);text-align:center}

/* assurance */
.assure{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.assure .a{display:flex;gap:14px}
.assure .a .ic{color:var(--primary);width:22px;height:22px;margin-top:2px}
.assure b{display:block;font-size:16px;margin-bottom:4px}.assure p{color:var(--t2);font-size:14.5px}

/* faq */
.faqgrid{display:grid;grid-template-columns:1fr 1.5fr;gap:56px}
.faq details{border-bottom:1px solid var(--border)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-family:var(--heading);font-weight:600;font-size:17px;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{color:var(--t3);transition:transform .2s var(--ease)}
.faq details[open] summary .ic{transform:rotate(45deg)}
.faq p{padding-bottom:20px;color:var(--t2);font-size:15px;max-width:60ch}

/* final */
.final{background:var(--green-900);color:#fff;padding:112px 0}
.final .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.final h2{font-size:56px;max-width:520px}.final h2 span{color:var(--gold)}
.final p{color:rgba(255,255,255,.75);margin-top:12px;font-size:18px}
.final .btn{margin-top:28px}
.final img{width:300px}

/* legal */
.legal-page{max-width:760px;margin:0 auto;padding:80px 24px}
.legal-page h1{font-size:40px;line-height:1.1}
.legal-page .upd{margin-top:8px;font-size:14px;color:var(--t3)}
.legal-page h2{font-family:var(--heading);font-size:20px;font-weight:700;margin:40px 0 12px}
.legal-page p,.legal-page li{color:var(--t2);margin-top:12px}
.legal-page ul{padding-left:24px}
.legal-page a{color:var(--primary);text-decoration:underline}

/* footer */
footer{padding:56px 0 28px;font-size:14px;color:var(--t2);border-top:1px solid var(--border)}
footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:40px;margin-bottom:40px}
footer b{display:block;color:var(--t1);margin-bottom:12px}
footer ul{list-style:none}footer li{margin-bottom:8px}
footer li a:hover{color:var(--t1)}
footer .tag img{height:52px;width:auto;margin-bottom:14px}
footer .prestador{font-size:12.5px;color:var(--t3);margin-bottom:12px}
footer .legal{border-top:1px solid var(--border);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--t3)}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
@media (max-width:1023px){.hero .wrap{grid-template-columns:minmax(0,1fr);gap:48px}.phone-col{justify-self:center}.hero h1{font-size:56px}}
@media (max-width:767px){
  header .links,header .acts{display:none}header details{display:block}
  .hero{padding:56px 0 64px}.hero .photo,.hero .grad{display:none}.hero h1{font-size:44px}
  h2{font-size:32px}section.s,.why,.final{padding:72px 0}
  .two,.steps,.plans,.assure,.faqgrid,footer .cols,.why .two{grid-template-columns:1fr;gap:32px}
  .final h2{font-size:40px}.final img{display:none}
  .cmds li{grid-template-columns:36px 1fr}.cmds li .who{grid-column:2;padding-top:0}
}
