:root{
    --cream:#FDF8F2;
    --cream-2:#F7F0E6;
    --forest:#182A1E;
    --forest-2:#0F1D14;
    --espresso:#1E1706;
    --gold:#FFD700;
    --bronze:#8A6D22;
    --white:#FFFFFF;
    --line: rgba(30,23,6,0.12);
    --max: 1180px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--cream);
    color:var(--espresso);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.display{
    font-family:'Fraunces',serif;
    font-weight:600;
    letter-spacing:-0.01em;
    margin:0;
  }
  .eyebrow{
    font-family:'Inter',sans-serif;
    text-transform:uppercase;
    letter-spacing:0.14em;
    font-size:0.72rem;
    font-weight:600;
    color:var(--bronze);
  }
  .wrap{max-width:var(--max); margin:0 auto; padding:0 32px;}
  a{color:inherit;}

  /* NAV */
  header.nav{
    position:sticky; top:0; z-index:50;
    background:rgba(253,248,242,0.92);
    backdrop-filter:blur(8px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:var(--max); margin:0 auto; padding:16px 32px;
    display:flex; align-items:center; justify-content:space-between;
  }
  .brand{display:flex; align-items:center; gap:10px; text-decoration:none;}
  .brand img{height:46px; width:auto;}
  .brand span{font-family:'Fraunces',serif; font-weight:700; font-size:1.05rem; letter-spacing:0.01em;}
  nav.links{display:flex; gap:32px; font-size:0.88rem; font-weight:500;}
  nav.links a{text-decoration:none; color:var(--espresso); opacity:0.75; transition:opacity .2s;}
  nav.links a:hover{opacity:1;}
  .nav-cta{
    background:var(--forest); color:var(--cream); text-decoration:none;
    padding:10px 20px; border-radius:100px; font-size:0.85rem; font-weight:600;
    transition:background .2s;
  }
  .nav-cta:hover{background:var(--forest-2);}
  .nav-actions{display:flex; gap:12px; align-items:center;}
  .nav-toggle{
    display:none; background:none; border:1.5px solid var(--espresso); border-radius:10px;
    width:40px; height:40px; align-items:center; justify-content:center; cursor:pointer; flex:none;
  }
  .nav-toggle span, .nav-toggle span::before, .nav-toggle span::after{
    content:""; display:block; width:18px; height:2px; background:var(--espresso); position:relative; transition:transform .2s, opacity .2s;
  }
  .nav-toggle span::before{position:absolute; top:-6px;}
  .nav-toggle span::after{position:absolute; top:6px;}
  .nav-toggle.open span{background:transparent;}
  .nav-toggle.open span::before{transform:translateY(6px) rotate(45deg);}
  .nav-toggle.open span::after{transform:translateY(-6px) rotate(-45deg);}
  .mobile-panel{
    display:none; flex-direction:column; gap:4px; padding:8px 32px 24px;
    border-top:1px solid var(--line);
  }
  .mobile-panel.open{display:flex;}
  .mobile-panel a{
    text-decoration:none; color:var(--espresso); font-size:1rem; font-weight:500;
    padding:14px 0; border-bottom:1px solid var(--line);
  }
  .mobile-panel .nav-cta, .mobile-panel .btn-ghost{
    margin-top:14px; text-align:center; border-bottom:none; padding:14px 20px;
  }

  /* HERO */
  .hero{
    position:relative;
    padding:120px 32px 100px;
    overflow:hidden;
  }
  .ring{
    position:absolute;
    border:1.5px solid var(--bronze);
    border-radius:50%;
    opacity:0.35;
  }
  .ring.r1{width:640px; height:640px; top:-260px; right:-160px; opacity:0.25;}
  .ring.r2{width:420px; height:420px; top:-80px; right:60px; opacity:0.3;}
  .hero-inner{max-width:var(--max); margin:0 auto; position:relative; z-index:2;}
  .hero-inner .eyebrow{margin-bottom:22px; display:block;}
  .hero h1{
    font-size:clamp(2.4rem, 5.4vw, 4.6rem);
    line-height:1.04;
    max-width:920px;
  }
  .hero h1 em{font-style:italic; font-weight:500; color:var(--forest);}
  .hero p.lead{
    max-width:560px;
    margin-top:28px;
    font-size:1.1rem;
    line-height:1.6;
    color:rgba(30,23,6,0.72);
  }
  .hero-ctas{display:flex; gap:16px; margin-top:40px; flex-wrap:wrap;}
  .btn-primary{
    background:var(--espresso); color:var(--cream); text-decoration:none;
    padding:15px 28px; border-radius:100px; font-weight:600; font-size:0.95rem;
    transition:transform .2s, background .2s; display:inline-block;
  }
  .btn-primary:hover{background:var(--forest); transform:translateY(-1px);}
  .btn-ghost{
    border:1.5px solid var(--espresso); color:var(--espresso); text-decoration:none;
    padding:14px 26px; border-radius:100px; font-weight:600; font-size:0.95rem;
    transition:background .2s;
  }
  .btn-ghost:hover{background:rgba(30,23,6,0.06);}

  /* STATS RING STRIP */
  .stats{
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:var(--cream-2);
  }
  .stats-inner{
    max-width:var(--max); margin:0 auto; padding:0 32px;
    display:grid; grid-template-columns:repeat(4,1fr);
  }
  .stat{
    padding:44px 24px;
    border-right:1px solid var(--line);
    position:relative;
  }
  .stat:last-child{border-right:none;}
  .stat-ring{
    width:64px; height:64px; border:1.5px solid var(--bronze);
    border-radius:50%; display:flex; align-items:center; justify-content:center;
    margin-bottom:16px;
  }
  .stat-num{font-family:'Fraunces',serif; font-size:1.8rem; font-weight:700;}
  .stat-label{font-size:0.85rem; color:rgba(30,23,6,0.65); margin-top:6px; line-height:1.4;}

  /* SECTION GENERIC */
  section{padding:100px 32px;}
  .section-head{max-width:640px; margin-bottom:56px;}
  .section-head .eyebrow{margin-bottom:14px; display:block;}
  .section-head h2{font-size:clamp(1.8rem,3.4vw,2.6rem); line-height:1.15;}
  .section-head h2 em{font-style:italic; font-weight:500; color:var(--forest);}
  .section-head p{margin-top:18px; font-size:1.02rem; line-height:1.65; color:rgba(30,23,6,0.72);}

  /* HISTORIA */
  .historia{background:var(--forest); color:var(--cream);}
  .historia-inner{max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:0.9fr 1.1fr; gap:64px; align-items:start;}
  .historia .eyebrow{color:var(--gold);}
  .historia h2{color:var(--cream); font-size:clamp(1.9rem,3.6vw,2.7rem); line-height:1.14;}
  .historia h2 em{color:var(--gold); font-style:italic; font-weight:500;}
  .historia-body p{font-size:1.02rem; line-height:1.75; color:rgba(253,248,242,0.82); margin:0 0 20px;}
  .historia-quote{
    border-left:2px solid var(--gold);
    padding-left:24px; margin-top:32px;
    font-family:'Fraunces',serif; font-style:italic; font-size:1.25rem;
    line-height:1.5; color:var(--cream);
  }

  /* ECOSSISTEMA GRID */
  .eco-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
  .eco-card{background:var(--cream); padding:36px 32px; min-height:230px; display:flex; flex-direction:column; justify-content:space-between;}
  .eco-card .tag{
    align-self:flex-start; font-size:0.68rem; font-weight:700; text-transform:uppercase;
    letter-spacing:0.08em; padding:5px 10px; border-radius:100px; margin-bottom:18px;
  }
  .tag.live{background:rgba(24,42,30,0.1); color:var(--forest);}
  .tag.build{background:rgba(255,215,0,0.18); color:var(--bronze);}
  .eco-card h3{font-size:1.2rem; font-weight:600;}
  .eco-card p{font-size:0.92rem; line-height:1.55; color:rgba(30,23,6,0.68); margin-top:10px;}

  /* CREDENCIAIS */
  .credenciais{background:var(--cream-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .cred-inner{max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:28px;}
  .cred-card{
    background:var(--white); border:1px solid var(--line); border-radius:18px;
    padding:36px; display:flex; gap:22px; align-items:flex-start;
  }
  .cred-ring{
    flex:none; width:56px; height:56px; border-radius:50%;
    border:1.5px solid var(--bronze); display:flex; align-items:center; justify-content:center;
    font-family:'Fraunces',serif; font-weight:700; color:var(--bronze); font-size:0.95rem;
  }
  .cred-card h3{font-size:1.1rem; font-weight:600; margin-bottom:8px;}
  .cred-card p{font-size:0.92rem; line-height:1.6; color:rgba(30,23,6,0.68); margin:0;}

  /* PARCEIROS CTA */
  .parceiros{
    background:var(--espresso); color:var(--cream); text-align:left;
    border-radius:28px; max-width:var(--max); margin:0 auto; padding:72px 64px;
    position:relative; overflow:hidden;
  }
  .parceiros .ring{border-color:var(--gold); opacity:0.25;}
  .parceiros .ring.r1{width:460px; height:460px; bottom:-220px; left:-140px; top:auto;}
  .parceiros-inner{position:relative; z-index:2; max-width:620px;}
  .parceiros .eyebrow{color:var(--gold);}
  .parceiros h2{color:var(--cream); font-size:clamp(1.8rem,3.4vw,2.5rem); margin-top:14px; line-height:1.16;}
  .parceiros h2 em{color:var(--gold); font-style:italic; font-weight:500;}
  .parceiros p{margin-top:18px; font-size:1.02rem; line-height:1.65; color:rgba(253,248,242,0.78); max-width:540px;}
  .parceiros .hero-ctas{margin-top:36px;}
  .parceiros .btn-primary{background:var(--gold); color:var(--espresso);}
  .parceiros .btn-primary:hover{background:#e8c400;}
  .parceiros .btn-ghost{border-color:rgba(253,248,242,0.5); color:var(--cream);}
  .parceiros .btn-ghost:hover{background:rgba(253,248,242,0.08);}

  /* FOOTER */
  footer{background:var(--forest-2); color:rgba(253,248,242,0.75); padding:64px 32px 32px;}
  .footer-inner{max-width:var(--max); margin:0 auto;}
  .footer-top{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:40px; padding-bottom:40px; border-bottom:1px solid rgba(253,248,242,0.14);}
  .footer-brand{display:flex; align-items:center; gap:12px;}
  .footer-brand img{height:92px; width:auto;}
  .footer-brand span{font-family:'Fraunces',serif; color:var(--cream); font-weight:700; font-size:1.1rem;}
  .footer-cols{display:flex; gap:64px; flex-wrap:wrap;}
  .footer-col h4{font-size:0.78rem; text-transform:uppercase; letter-spacing:0.1em; color:var(--gold); margin-bottom:14px; font-family:'Inter',sans-serif; font-weight:600;}
  .footer-col a{display:block; text-decoration:none; color:rgba(253,248,242,0.75); font-size:0.9rem; margin-bottom:10px;}
  .footer-bottom{padding-top:24px; font-size:0.8rem; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; color:rgba(253,248,242,0.5);}

  /* SISTEMA LINKS SECTION */
  .sistema-section{background:var(--forest); color:var(--cream);}
  .sistema-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; margin-bottom:48px;}
  .sistema-head .eyebrow{color:var(--gold);}
  .sistema-head h2{color:var(--cream); font-size:clamp(1.8rem,3.4vw,2.4rem); margin-top:14px;}
  .sistema-head h2 em{color:var(--gold); font-style:italic; font-weight:500;}
  .sistema-head-cta{
    flex:none; display:inline-flex; align-items:center; gap:8px;
    color:var(--gold); text-decoration:none; font-weight:600; font-size:0.92rem;
    border-bottom:1px solid rgba(255,215,0,0.4); padding-bottom:4px;
  }
  .sistema-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(253,248,242,0.14); border:1px solid rgba(253,248,242,0.14); border-radius:16px; overflow:hidden;}
  .sistema-card{
    background:var(--forest-2); padding:32px 26px; text-decoration:none; color:var(--cream);
    display:flex; flex-direction:column; gap:14px; min-height:180px; justify-content:space-between;
    transition:background .2s;
  }
  .sistema-card:hover{background:#152018;}
  .sistema-card .ico{
    width:44px; height:44px; border:1.5px solid var(--gold); border-radius:50%;
    display:flex; align-items:center; justify-content:center; font-size:1.1rem;
  }
  .sistema-card h3{font-size:1.05rem; font-weight:600; font-family:'Fraunces',serif;}
  .sistema-card p{font-size:0.86rem; line-height:1.5; color:rgba(253,248,242,0.7); margin:0;}
  .sistema-card .go{font-size:0.8rem; font-weight:600; color:var(--gold);}

  /* PAGE HERO (paginas internas) */
  .page-hero{padding:150px 32px 80px; position:relative; overflow:hidden;}
  .page-hero .eyebrow{display:block; margin-bottom:20px;}
  .page-hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem); line-height:1.08; max-width:820px;}
  .page-hero h1 em{font-style:italic; font-weight:500; color:var(--forest);}
  .page-hero p.lead{max-width:600px; margin-top:24px; font-size:1.08rem; line-height:1.65; color:rgba(30,23,6,0.72);}
  .breadcrumb{font-size:0.82rem; margin-bottom:20px; color:rgba(30,23,6,0.55);}
  .breadcrumb a{color:var(--bronze); text-decoration:none; font-weight:600;}

  /* CONTENT PROSE */
  .prose{max-width:760px;}
  .prose p{font-size:1.04rem; line-height:1.8; color:rgba(30,23,6,0.78); margin:0 0 22px;}
  .prose h3{font-size:1.3rem; margin:40px 0 14px;}
  .prose blockquote{
    border-left:2px solid var(--bronze); margin:32px 0; padding-left:24px;
    font-family:'Fraunces',serif; font-style:italic; font-size:1.25rem; line-height:1.55; color:var(--forest);
  }

  /* VALUE GRID (equipe/historia) */
  .value-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:20px;}
  .value-card{background:var(--white); border:1px solid var(--line); border-radius:16px; padding:30px;}
  .value-card .num{font-family:'Fraunces',serif; font-style:italic; color:var(--bronze); font-size:1.1rem; margin-bottom:14px; display:block;}
  .value-card h3{font-size:1.1rem; font-weight:600; margin-bottom:10px;}
  .value-card p{font-size:0.92rem; line-height:1.6; color:rgba(30,23,6,0.68); margin:0;}

  /* TWO COL FEATURE */
  .feature-row{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;}
  .feature-row.rev{direction:rtl;}
  .feature-row.rev > *{direction:ltr;}
  .feature-panel{
    background:var(--forest); border-radius:20px; padding:44px; color:var(--cream);
    min-height:320px; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden;
  }
  .feature-panel.dark2{background:var(--espresso);}
  .feature-panel .eyebrow{color:var(--gold); margin-bottom:16px; display:block;}
  .feature-panel h3{color:var(--cream); font-size:1.6rem; line-height:1.25; margin-bottom:14px;}
  .feature-panel p{color:rgba(253,248,242,0.78); font-size:0.96rem; line-height:1.65; margin:0;}
  .feature-list{margin-top:10px;}
  .feature-list li{font-size:1.0rem; line-height:1.6; color:rgba(30,23,6,0.78); margin-bottom:14px; padding-left:26px; position:relative;}
  .feature-list li::before{content:"—"; position:absolute; left:0; color:var(--bronze); font-weight:700;}

  /* STEP LIST */
  .steps{counter-reset:step; margin-top:10px;}
  .step{display:grid; grid-template-columns:64px 1fr; gap:20px; padding:28px 0; border-top:1px solid var(--line);}
  .step:last-child{border-bottom:1px solid var(--line);}
  .step-num{counter-increment:step; font-family:'Fraunces',serif; font-style:italic; color:var(--bronze); font-size:1.3rem;}
  .step-num::before{content:"0" counter(step);}
  .step h3{font-size:1.1rem; font-weight:600; margin-bottom:8px;}
  .step p{font-size:0.94rem; line-height:1.6; color:rgba(30,23,6,0.7); margin:0;}

  /* FAQ */
  details.faq{border-bottom:1px solid var(--line); padding:22px 0;}
  details.faq summary{cursor:pointer; font-weight:600; font-size:1.02rem; list-style:none; display:flex; justify-content:space-between; align-items:center;}
  details.faq summary::-webkit-details-marker{display:none;}
  details.faq summary::after{content:"+"; font-size:1.4rem; color:var(--bronze); font-weight:400;}
  details.faq[open] summary::after{content:"–";}
  details.faq p{margin:14px 0 0; font-size:0.95rem; line-height:1.65; color:rgba(30,23,6,0.7);}

  @media (max-width:860px){
    .sistema-grid{grid-template-columns:1fr 1fr;}
    .value-grid{grid-template-columns:1fr;}
    .feature-row{grid-template-columns:1fr;}
    .feature-row.rev{direction:ltr;}
    nav.links{display:none;}
    .nav-actions{display:none;}
    .nav-toggle{display:flex;}
    .nav-inner{padding:14px 20px;}
    .brand span{font-size:0.92rem;}
    .brand img{height:38px; width:auto;}
    .mobile-panel{padding:8px 20px 20px;}
    .historia-inner{grid-template-columns:1fr;}
    .eco-grid{grid-template-columns:1fr 1fr;}
    .stats-inner{grid-template-columns:1fr 1fr;}
    .stat{border-bottom:1px solid var(--line); padding:32px 20px;}
    .cred-inner{grid-template-columns:1fr;}
    .parceiros{padding:40px 24px; border-radius:18px;}
    .wrap{padding:0 20px;}
    .hero{padding:48px 20px 64px;}
    .hero-ctas{flex-direction:column; align-items:stretch;}
    .hero-ctas a{text-align:center;}
    section{padding:64px 20px;}
    .sistema-section .wrap, .page-hero .wrap{padding:0 20px;}
    .page-hero{padding:48px 20px 56px;}
    .sistema-head{flex-direction:column; align-items:flex-start;}
  }

  @media (max-width:520px){
    .sistema-grid{grid-template-columns:1fr;}
    .eco-grid{grid-template-columns:1fr;}
    .stats-inner{grid-template-columns:1fr;}
    .stat{border-right:none;}
    .cred-card{flex-direction:column; padding:28px 24px;}
    .parceiros-inner .hero-ctas{width:100%;}
  }

  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
  }
