:root{
  --fr-navy:#0a2438;
  --fr-deep:#061923;
  --fr-blue:#15506f;
  --fr-gold:#b99150;
  --fr-muted:#5e6c76;
  --fr-line:#dce5ea;
  --fr-soft:#f3f7f9;
  --fr-success:#1f6b48;
  --fr-error:#8a302f;
}

.fr-breadcrumb{background:#fff;border-bottom:1px solid var(--fr-line)}
.fr-breadcrumb-inner{min-height:42px;display:flex;align-items:center;gap:8px;font-size:.74rem;color:#77858e}
.fr-breadcrumb a{color:var(--fr-blue);font-weight:700;text-decoration:none}

.fr-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--fr-blue);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em}
.fr-kicker:before{content:"";width:28px;height:2px;background:var(--fr-gold)}

.fr-hero{background:radial-gradient(circle at 84% 18%,rgba(21,80,111,.14),transparent 28%),linear-gradient(135deg,#f8fbfc,#edf4f7)}
.fr-hero-grid{padding:62px 0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:50px;align-items:center}
.fr-hero h1{margin:14px 0;color:var(--fr-deep);font-size:clamp(2.7rem,4.8vw,4.6rem);line-height:1;letter-spacing:-.05em}
.fr-lead{max-width:800px;margin:0;color:#4d606b;font-size:1.02rem;line-height:1.7}
.fr-hero-panel{padding:25px;border-radius:18px;background:linear-gradient(145deg,var(--fr-navy),#0b3149);color:#fff}
.fr-hero-panel strong{display:block;font-size:1.13rem;line-height:1.35}
.fr-hero-panel p{margin:10px 0 0;color:#b8cad2;font-size:.86rem;line-height:1.62}

.fr-section{padding:62px 0;background:#fff}
.fr-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:start}
.fr-form-wrap{min-width:0}
.fr-form{padding:28px;border:1px solid var(--fr-line);border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(6,25,35,.055)}
.fr-section-title{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:start;margin:2px 0 18px;padding-top:8px}
.fr-section-title:not(:first-of-type){margin-top:28px;padding-top:26px;border-top:1px solid var(--fr-line)}
.fr-section-title>span{color:var(--fr-gold);font-weight:900;font-size:.83rem}
.fr-section-title strong{display:block;color:var(--fr-deep);font-size:1.08rem}
.fr-section-title small{display:block;margin-top:3px;color:#7a878f;font-size:.76rem}

.fr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.fr-field{display:flex;flex-direction:column;gap:7px}
.fr-field-wide{grid-column:span 1}
.fr-field-full{grid-column:1/-1}
.fr-field label,.fr-form legend{color:var(--fr-deep);font-size:.79rem;font-weight:800}
.fr-field input,.fr-field select,.fr-field textarea{
  width:100%;
  min-height:45px;
  padding:11px 12px;
  border:1px solid #cfdbe1;
  border-radius:10px;
  background:#fff;
  color:#263b47;
  font:inherit;
  font-size:.9rem;
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.fr-field textarea{min-height:110px;resize:vertical;line-height:1.55}
.fr-field input:focus,.fr-field select:focus,.fr-field textarea:focus{
  border-color:var(--fr-blue);
  box-shadow:0 0 0 3px rgba(21,80,111,.10);
}
.fr-help{color:#7c8990;font-size:.72rem;line-height:1.45}

.fr-service-panel{
  margin:28px 0 0;
  padding:22px;
  border:1px solid #d9e3e8;
  border-radius:14px;
  background:var(--fr-soft);
}
.fr-service-panel[hidden]{display:none!important}
.fr-service-panel legend{padding:0 7px;color:var(--fr-blue);font-size:.79rem;text-transform:uppercase;letter-spacing:.08em}

.fr-consent{display:flex;gap:10px;align-items:flex-start;margin-top:24px;padding:16px;border:1px solid var(--fr-line);border-radius:11px;background:#fafcfd;color:#53636d;font-size:.78rem;line-height:1.55}
.fr-consent input{margin-top:3px;flex:0 0 auto}

.fr-submit-row{display:flex;align-items:center;gap:18px;margin-top:20px}
.fr-submit{min-width:190px}
.fr-submit:disabled{opacity:.65;cursor:wait}
.fr-submit-note{color:#7a878f;font-size:.72rem;line-height:1.45}

.fr-side{position:sticky;top:104px;display:grid;gap:14px}
.fr-side-card{padding:22px;border-radius:15px;background:linear-gradient(145deg,var(--fr-navy),#0b3149);color:#fff}
.fr-side-card>span{display:block;color:#d8b66f;font-size:.59rem;font-weight:900;letter-spacing:.13em}
.fr-side-card ol{margin:14px 0 0;padding-left:20px}
.fr-side-card li{margin:9px 0;color:#c0d0d7;font-size:.8rem;line-height:1.5}
.fr-side-card-soft{background:var(--fr-soft);border:1px solid var(--fr-line);color:var(--fr-deep)}
.fr-side-card-soft strong{display:block}
.fr-side-card-soft p{color:var(--fr-muted);font-size:.8rem;line-height:1.55}
.fr-side-card-soft a{color:var(--fr-blue);font-weight:850;text-decoration:none;font-size:.79rem}

.fr-alert{margin-bottom:16px;padding:17px 18px;border-radius:12px;border:1px solid}
.fr-alert strong{display:block}
.fr-alert p{margin:4px 0 0;font-size:.83rem;line-height:1.55}
.fr-alert-success{background:#f1faf5;border-color:#b9ddc8;color:var(--fr-success)}
.fr-alert-error{background:#fff5f4;border-color:#ecc6c2;color:var(--fr-error)}
.fr-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:1000px){
  .fr-hero-grid,.fr-layout{grid-template-columns:1fr}
  .fr-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .fr-breadcrumb{display:none}
  .fr-hero-grid{padding:48px 0}
  .fr-hero h1{font-size:clamp(2.25rem,11vw,3.4rem)}
  .fr-section{padding:48px 0}
  .fr-form{padding:20px}
  .fr-grid{grid-template-columns:1fr}
  .fr-field-wide,.fr-field-full{grid-column:auto}
  .fr-submit-row{flex-direction:column;align-items:stretch}
  .fr-submit{width:100%}
  .fr-side{grid-template-columns:1fr}
}


/* PASSO 13.1 — evita overflow horizontal no formulário */
html,body{max-width:100%;overflow-x:hidden}
