:root{
  --green:#17472c;
  --green-2:#245d3a;
  --green-3:#0f321f;
  --gold:#c59a32;
  --orange:#d26918;
  --cream:#f7f2e6;
  --cream-2:#efe7d5;
  --ink:#1d281f;
  --muted:#657067;
  --line:#ded4c1;
  --white:#ffffff;
  --shadow:0 22px 60px rgba(23,71,44,.14);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 12% 4%,rgba(197,154,50,.08),transparent 24%),
    radial-gradient(circle at 90% 22%,rgba(23,71,44,.06),transparent 30%),
    linear-gradient(180deg,#fbf8f0 0%,#f4eddf 55%,#fbf8f0 100%);
  line-height:1.55;
}
.container{width:min(1180px,92vw);margin:auto}
.topbar{background:var(--green-3);color:#fff;font-size:.91rem}
.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.nav{
  position:sticky;top:0;z-index:20;
  background:rgba(250,247,239,.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(23,71,44,.09);
}
.nav-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:245px;max-width:52vw;display:block}
.brand-sub{
  border-left:1px solid #cabd9e;
  padding-left:12px;
  color:var(--green);
  font-family:Georgia,'Times New Roman',serif;
  font-weight:700;
  line-height:1.05;
  font-size:.9rem;
}
.menu{display:flex;gap:22px;align-items:center}
.menu a{color:var(--ink);text-decoration:none;font-weight:800;font-size:.93rem}
.menu a:hover{color:var(--green-2)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 20px;border-radius:11px;font-weight:900;text-decoration:none;
  border:1px solid transparent;cursor:pointer;transition:.2s ease;
}
.btn-primary{background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff;box-shadow:0 12px 28px rgba(23,71,44,.22)}
.btn-primary:hover{background:#0f321f;transform:translateY(-1px)}
.btn-ghost{border-color:#cabfa9;color:var(--ink);background:rgba(255,255,255,.82)}
.btn-ghost:hover{border-color:var(--green);color:var(--green)}
.btn-light{background:#fff;color:var(--green);box-shadow:0 10px 28px rgba(0,0,0,.12)}

.hero{
  position:relative;overflow:hidden;padding:76px 0 66px;
  background:
    linear-gradient(90deg,rgba(249,245,235,.97),rgba(249,245,235,.86)),
    radial-gradient(circle at 84% 10%,rgba(197,154,50,.23),transparent 34%);
}
.hero:before,.section:not(.section-dark):before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(23,71,44,.02) 1px,transparent 1px),
    linear-gradient(90deg,rgba(23,71,44,.016) 1px,transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 90%);
}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:54px;position:relative;z-index:1}
.eyebrow{
  display:inline-block;color:var(--gold);font-weight:900;letter-spacing:.13em;
  text-transform:uppercase;font-size:.77rem;margin-bottom:13px
}
.hero h1{
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(3rem,5.4vw,5.3rem);line-height:.96;margin:0 0 22px;
  color:var(--green-3);letter-spacing:-.04em
}
.hero h1 span{color:var(--gold)}
.hero-lead{font-size:1.16rem;color:#4d5b51;max-width:690px;margin:0 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.trustline{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;color:#56635a;font-size:.91rem}
.trustline strong{color:var(--green)}
.hero-card{position:relative}
.hero-card img{
  width:100%;height:460px;object-fit:cover;display:block;border-radius:24px;
  box-shadow:var(--shadow);border:1px solid rgba(23,71,44,.13)
}
.hero-card:after{
  content:"";position:absolute;inset:auto 16px 16px 16px;height:44%;
  border-radius:0 0 18px 18px;background:linear-gradient(transparent,rgba(10,35,21,.34));pointer-events:none
}
.hero-badge{
  position:absolute;left:-20px;bottom:28px;z-index:2;background:#fff;
  border-left:5px solid var(--gold);padding:15px 18px;border-radius:12px;
  box-shadow:0 16px 42px rgba(0,0,0,.17);min-width:245px
}
.hero-badge strong{display:block;color:var(--green);font-family:Georgia,serif;font-size:1.25rem}
.hero-badge span{display:block;color:#616b63;font-size:.86rem;margin-top:2px}

.section{position:relative;padding:84px 0;background:rgba(251,248,241,.66)}
.section.alt{background:linear-gradient(135deg,rgba(239,231,213,.92),rgba(248,245,237,.97))}
.section-dark{background:linear-gradient(135deg,#0f321f 0%,#1d5132 55%,#0c2b1a 100%);color:#fff}
.section-header{max-width:820px;margin-bottom:40px}
.section-header.centered{margin-left:auto;margin-right:auto;text-align:center}
.section-header h2{
  font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.05rem,4vw,3.45rem);
  line-height:1.06;margin:7px 0 16px;color:var(--green-3)
}
.section-header p{color:#5d695f;font-size:1.04rem;margin:0}
.section-dark .section-header h2{color:#fff}
.section-dark .section-header p{color:#d6e0d8}

.solutions-section{background:linear-gradient(180deg,#fbf8f1 0%,#f3ebdd 100%)}
.solution-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.solution-card{
  position:relative;background:rgba(255,255,255,.93);border:1px solid #dfd3bd;
  border-radius:20px;padding:28px 30px 28px 106px;box-shadow:0 14px 36px rgba(38,54,42,.07);
  min-height:250px;transition:.22s ease
}
.solution-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(23,71,44,.12);border-color:rgba(197,154,50,.48)}
.service-icon{
  position:absolute;left:28px;top:29px;width:58px;height:58px;border-radius:50%;
  background:linear-gradient(145deg,var(--green),var(--green-2));
  display:grid;place-items:center;box-shadow:0 9px 22px rgba(23,71,44,.20)
}
.service-icon.orange{background:linear-gradient(145deg,#bb5312,#df7a23)}
.service-icon svg{
  width:32px;height:32px;fill:none;stroke:#fff;stroke-width:3;
  stroke-linecap:round;stroke-linejoin:round
}
.solution-card h3{
  font-family:Georgia,'Times New Roman',serif;color:var(--green-3);font-size:1.45rem;
  line-height:1.12;margin:0 0 14px;text-transform:uppercase
}
.solution-card ul{margin:0;padding-left:18px;display:grid;gap:5px;color:#435047}
.solution-card li::marker{color:var(--green);font-size:.82em}
.service-note{
  margin:15px 0 0;padding-top:13px;border-top:1px solid #e5dbc8;color:#6b716c;
  font-size:.82rem;font-weight:700
}
.legal-card{border-color:rgba(210,105,24,.32)}

.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:center}
.panel{
  background:rgba(255,255,255,.91);border-radius:22px;padding:36px;
  box-shadow:var(--shadow);border:1px solid #e4d9c6
}
.panel h2{
  font-family:Georgia,'Times New Roman',serif;font-size:2.55rem;line-height:1.08;
  margin:5px 0 18px;color:var(--green-3)
}
.panel p{color:#5f6a61;margin:0}
.checklist{display:grid;gap:17px}
.check{display:flex;gap:14px;align-items:flex-start}
.check i{
  width:30px;height:30px;border-radius:50%;background:#e5eee7;color:var(--green);
  display:grid;place-items:center;font-style:normal;font-weight:900;flex:0 0 auto
}
.check strong{display:block;margin-bottom:3px;color:var(--green-3)}
.check span{color:#667268;font-size:.95rem}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step{padding:24px 10px 10px;border-top:2px solid rgba(255,255,255,.24)}
.step b{display:inline-block;background:var(--gold);color:#fff;border-radius:99px;padding:4px 10px;font-size:.81rem;margin-bottom:12px}
.step h3{margin:0 0 8px}
.step p{margin:0;color:#d7e1da}

.partners-section{background:linear-gradient(145deg,#eee5d5 0%,#faf7ef 57%,#eee8dc 100%)}
.partners-header{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}
.partners-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.partner-card{
  overflow:hidden;border-radius:24px;background:rgba(255,255,255,.93);
  border:1px solid rgba(23,71,44,.10);box-shadow:0 24px 65px rgba(23,71,44,.10);
  transition:.25s ease;text-align:center
}
.partner-card:hover{transform:translateY(-5px);box-shadow:0 30px 75px rgba(23,71,44,.15)}
.partner-visual{
  min-height:220px;position:relative;display:flex;align-items:center;justify-content:center;
  padding:32px 28px;overflow:hidden
}
.partner-visual:before{
  content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(23,71,44,.97),rgba(39,91,57,.86));z-index:0
}
.partner-visual:after{
  content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-65px;top:-80px;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 0 0 28px rgba(255,255,255,.04),0 0 0 58px rgba(255,255,255,.025);z-index:0
}
.fp-visual:before{background:linear-gradient(135deg,#0e120d,#17472c 60%,#8f6b24)}
.partner-logo-frame{
  position:relative;z-index:2;background:#fff;display:grid;place-items:center;
  box-shadow:0 18px 40px rgba(0,0,0,.20);border:1px solid rgba(255,255,255,.62)
}
.storchi-logo{width:min(330px,76%);height:116px;border-radius:18px;padding:20px 28px}
.storchi-logo img{max-width:100%;max-height:72px;object-fit:contain}
.fp-logo{
  width:132px;height:132px;border-radius:50%;padding:9px;background:#080a08;
  border:1px solid rgba(197,154,50,.75)
}
.fp-logo img{max-width:112px;max-height:112px;object-fit:contain}
.partner-content{padding:30px 32px 34px}
.partner-kicker{display:block;color:var(--gold);font-weight:900;font-size:.75rem;letter-spacing:.1em;margin-bottom:8px}
.partner-content h3{font-family:Georgia,'Times New Roman',serif;color:var(--green-3);font-size:1.85rem;line-height:1.12;margin:0 0 13px}
.partner-content p{color:#5d695f;margin:0 0 18px}
.partner-contact{
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
  color:#fff;background:var(--green);border-radius:999px;padding:10px 16px;font-weight:900;font-size:.88rem
}
.partner-contact:hover{background:var(--green-3)}
.partners-note{
  margin:24px auto 0;max-width:980px;text-align:center;color:#687269;font-size:.86rem;
  background:rgba(255,255,255,.65);border:1px solid #e4d8c5;border-radius:12px;padding:14px 18px
}

.cta{
  background:
    radial-gradient(circle at 90% 15%,rgba(197,154,50,.32),transparent 24%),
    linear-gradient(135deg,#10351f,#245d3a);
  border-radius:26px;padding:44px;display:grid;grid-template-columns:1fr auto;
  align-items:center;gap:30px;color:#fff;box-shadow:var(--shadow)
}
.cta h2{font-family:Georgia,serif;font-size:2.35rem;margin:0 0 8px}
.cta p{margin:0;color:#dce5de}
.eyebrow-light{color:#e9c86d}

.faq{display:grid;gap:12px;max-width:940px;margin:0 auto}
.faq details{
  background:rgba(255,255,255,.91);border:1px solid #e4dac8;border-radius:14px;
  padding:19px 21px;box-shadow:0 10px 28px rgba(29,40,32,.04)
}
.faq summary{cursor:pointer;font-weight:900;color:var(--green)}
.faq p{color:#657066;margin:12px 0 0}

.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px}
.contact-card{
  background:rgba(255,255,255,.91);border-radius:20px;padding:30px;
  border:1px solid #e2d7c4;box-shadow:0 12px 38px rgba(29,40,32,.07)
}
.contact-intro h2{
  font-family:Georgia,serif;color:var(--green-3);font-size:2.35rem;line-height:1.08;margin:5px 0 15px
}
.contact-links{display:grid;gap:10px;margin:20px 0}
.contact-links a{color:var(--green);font-weight:900;text-decoration:none}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .full{grid-column:1/-1}
.form label{font-size:.86rem;font-weight:900;color:#4e5a50}
.form input,.form textarea,.form select{
  width:100%;padding:13px 14px;border:1px solid #d7ccb9;border-radius:10px;background:#fff;font:inherit
}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid rgba(23,71,44,.12);border-color:var(--green)}
.form textarea{min-height:130px;resize:vertical}
.notice{font-size:.8rem;color:#778078}
.success-message{color:#176b37;font-weight:900}
.error-message{color:#9d2d24;font-weight:900}

.footer{background:#0d2b1a;color:#dce5de;padding:48px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:30px}
.footer a{color:#fff;text-decoration:none}
.footer small{color:#a7b8ab}
.footer-logo{filter:brightness(0) invert(1);max-width:250px}
.footer-tagline{color:#cfdad2}
.legal{
  border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap
}
.legal-full small{max-width:930px;line-height:1.55}

.float-whatsapp{
  position:fixed;right:20px;bottom:20px;z-index:19;background:#1f7a42;color:#fff;
  text-decoration:none;border-radius:999px;padding:13px 18px;font-weight:900;
  box-shadow:0 12px 35px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.3)
}
.float-whatsapp:hover{background:#155d31;transform:translateY(-1px)}

@media(max-width:980px){
  .menu{display:none}
  .brand-sub{display:none}
  .hero-grid,.split,.contact-grid{grid-template-columns:1fr}
  .hero-card{order:-1}
  .hero-card img{height:390px}
  .hero-badge{left:16px}
  .solution-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .partners-grid{grid-template-columns:1fr}
  .cta{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .topbar .container{justify-content:center}
  .topbar .container span:last-child{display:none}
}
@media(max-width:620px){
  .nav-inner{height:72px}
  .brand img{width:215px}
  .hero{padding:42px 0 52px}
  .hero h1{font-size:clamp(2.6rem,13vw,4rem)}
  .hero-card img{height:280px;border-radius:18px}
  .hero-badge{position:static;margin-top:12px;min-width:0}
  .section{padding:60px 0}
  .solution-card{padding:94px 22px 24px;min-height:0}
  .service-icon{left:22px;top:22px}
  .solution-card h3{font-size:1.27rem}
  .steps{grid-template-columns:1fr}
  .panel{padding:26px}
  .panel h2{font-size:2rem}
  .storchi-logo{width:82%;height:100px}
  .storchi-logo img{max-height:60px}
  .fp-logo{width:108px;height:108px}
  .fp-logo img{max-width:91px;max-height:91px}
  .partner-content{padding:25px 21px 28px}
  .cta{padding:29px}
  .cta h2{font-size:2rem}
  .form{grid-template-columns:1fr}
  .form .full{grid-column:auto}
  .float-whatsapp{right:14px;bottom:14px;font-size:.88rem;padding:12px 15px}
}


/* ===== GUARDA DE COMPATIBILIDADE HOSTGATOR ===== */
.solution-grid .solution-card{display:block!important;position:relative!important;}
.solution-grid .service-icon{
  position:absolute!important;
  left:28px!important;
  top:29px!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  min-height:58px!important;
  max-width:58px!important;
  max-height:58px!important;
  overflow:hidden!important;
  border-radius:50%!important;
}
.solution-grid .service-icon svg{
  display:block!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  max-width:32px!important;
  max-height:32px!important;
  fill:none!important;
  stroke:#fff!important;
}
@media(max-width:620px){
  .solution-grid .service-icon{
    left:22px!important;
    top:22px!important;
  }
}
