
  :root{
    --verde:#1F4A3E; --verde-claro:#3C6B5C;
    --rose:#B4685E; --rose-claro:#D8A8A0;
    --dourado:#C99A4E; --dourado-escuro:#A97E38;
    --creme:#FBF7F2; --creme-escuro:#F2E9E1;
    --texto:#3A3532; --texto-suave:#8a8178;
    --nude:#8B6A52;
  }
  *{ margin:0; padding:0; box-sizing:border-box; }
  html{ scroll-padding-top:174px; }
  body{ font-family:'Jost',sans-serif; color:var(--texto); background:var(--creme); line-height:1.6; -webkit-font-smoothing:antialiased; }
  h1,h2,h3,.serif{ font-family:'Cormorant Garamond', serif; }
  a{ text-decoration:none; color:inherit; }
  .wrap{ max-width:1180px; margin:0 auto; padding:0 clamp(28px, 6vw, 90px); }
  img{ max-width:100%; }

  /* TOPBAR / NAV (identico ao resto do site) */
  .topbar{ background:var(--verde); color:var(--creme); }
  .topbar .wrap{ display:flex; align-items:center; justify-content:space-between; padding-top:9px; padding-bottom:9px; }
  .topbar .topbar-contact{ display:flex; gap:26px; }
  .topbar .topbar-contact a{ color:var(--creme); font-size:12.5px; letter-spacing:0.5px; opacity:0.9; display:flex; align-items:center; gap:7px; }
  .topbar .topbar-contact a:hover{ opacity:1; }
  .topbar .topbar-contact svg{ width:15px; height:15px; flex-shrink:0; }
  .topbar .topbar-contact .contact-icon{ display:flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:rgba(251,247,242,0.14); flex-shrink:0; }
  .topbar .topbar-social{ display:flex; gap:16px; }
  .topbar .topbar-social a{ color:var(--creme); opacity:0.9; display:flex; align-items:center; gap:8px; font-size:12.5px; letter-spacing:0.5px; }
  .topbar .topbar-social a:hover{ opacity:1; }
  .topbar .topbar-social .ig-icon{ display:flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:rgba(251,247,242,0.14); flex-shrink:0; }
  .topbar .topbar-social svg{ width:15px; height:15px; }

  nav{ display:flex; align-items:center; justify-content:space-between; padding:14px 0; background:rgba(251,247,242,0.92); backdrop-filter:blur(6px); border-bottom:1px solid #EADDD2; position:sticky; top:0; z-index:100; box-shadow:0 2px 18px rgba(31,74,62,0.05); }
  nav .wrap{ display:flex; align-items:center; justify-content:space-between; }
  .brand{ display:flex; align-items:center; gap:12px; margin-left:-18px; }
  .brand img{ height:60px; width:auto; display:block; }
  .brand-name{ font-family:'Cormorant Garamond',serif; font-size:20px; color:var(--verde); }
  nav ul{ list-style:none; display:flex; gap:42px; }
  nav ul a{ font-size:13.5px; letter-spacing:1.8px; text-transform:uppercase; color:var(--texto); font-weight:500; position:relative; padding-bottom:4px; }
  nav ul a::after{ content:""; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--rose); transition:width .25s; }
  nav ul a:hover::after{ width:100%; }
  .nav-toggle{ display:none; background:none; border:none; padding:6px; cursor:pointer; color:var(--verde); }
  .nav-toggle svg{ width:26px; height:26px; display:block; }

  /* HERO */
  .mds-hero{ padding:70px 0 40px; text-align:center; }
  .eyebrow{ font-size:13px; letter-spacing:3px; text-transform:uppercase; color:var(--rose); margin-bottom:18px; display:block; }
  .mds-hero h1{ font-size:clamp(30px,5vw,46px); color:var(--verde); font-weight:500; max-width:720px; margin:0 auto 18px; }
  .mds-hero .lead{ max-width:560px; margin:0 auto; color:var(--texto-suave); font-size:16px; }
  .notice-box{
    max-width:680px; margin:32px auto 0; background:var(--creme-escuro); border:1px solid #EADDD2;
    border-radius:10px; padding:18px 22px; display:flex; gap:14px; align-items:flex-start; text-align:left;
  }
  .notice-box p{ font-size:13.5px; color:#6b635c; line-height:1.6; }
  .notice-icon{ font-size:18px; flex-shrink:0; }

  /* CARD GERAL */
  .mds-wrap{ max-width:640px; margin:0 auto; padding:0 clamp(20px,5vw,0px) 100px; }
  .mds-card{ background:#fff; border:1px solid #EADDD2; border-radius:16px; padding:38px clamp(20px,5vw,48px); box-shadow:0 20px 50px rgba(31,74,62,0.06); }
  .mds-step-label{ font-size:12px; letter-spacing:2px; text-transform:uppercase; color:var(--dourado-escuro); text-align:center; margin-bottom:10px; }
  .mds-card h2{ font-size:28px; color:var(--verde); text-align:center; margin-bottom:24px; font-weight:500; }

  /* FORM (etapa 1) */
  label{ font-size:12.5px; color:var(--verde); text-transform:uppercase; letter-spacing:0.5px; display:block; margin-bottom:6px; }
  input[type=text]{ width:100%; padding:13px 15px; border:1px solid #D9CCC1; border-radius:6px; font-size:15px; margin-bottom:20px; font-family:inherit; background:#fff; color:var(--texto); }
  input:focus{ outline:none; border-color:var(--rose); }
  .btn-primary{
    display:inline-flex; align-items:center; justify-content:center; gap:8px; width:100%;
    background:var(--verde); color:var(--creme); padding:16px 30px; font-size:13px; letter-spacing:2px;
    text-transform:uppercase; border-radius:6px; border:none; cursor:pointer; font-family:'Jost',sans-serif;
    transition:background .25s;
  }
  .btn-primary:hover{ background:var(--rose); }
  .btn-primary:disabled{ opacity:0.5; cursor:not-allowed; }
  .btn-ghost{
    display:inline-flex; align-items:center; justify-content:center; width:100%; margin-top:12px;
    background:transparent; color:var(--verde); padding:14px 30px; font-size:13px; letter-spacing:1.5px;
    text-transform:uppercase; border-radius:6px; border:1px solid var(--verde); cursor:pointer; font-family:'Jost',sans-serif;
  }
  .btn-ghost:hover{ background:var(--creme-escuro); }

  /* ETAPA 2: roda + slider */
  #radarWrap{ max-width:340px; margin:0 auto 10px; }
  .media-atual{ text-align:center; font-size:13px; color:var(--texto-suave); margin-bottom:26px; }
  .media-atual strong{ color:var(--verde); font-family:'Cormorant Garamond',serif; font-size:20px; }
  .area-atual-cat{ font-size:11.5px; letter-spacing:1.5px; text-transform:uppercase; color:var(--rose); margin-bottom:4px; text-align:center; }
  .area-atual-nome{ font-size:24px; text-align:center; color:var(--verde); margin-bottom:18px; font-weight:500; }
  .slider-row{ margin-bottom:8px; }
  input[type=range]{
    width:100%; height:6px; border-radius:3px; background:var(--creme-escuro); appearance:none; outline:none; margin:14px 0 6px;
  }
  input[type=range]::-webkit-slider-thumb{
    appearance:none; width:26px; height:26px; border-radius:50%; background:var(--verde); border:3px solid var(--creme);
    box-shadow:0 3px 10px rgba(31,74,62,0.3); cursor:pointer;
  }
  input[type=range]::-moz-range-thumb{
    width:26px; height:26px; border-radius:50%; background:var(--verde); border:3px solid var(--creme);
    box-shadow:0 3px 10px rgba(31,74,62,0.3); cursor:pointer; border:none;
  }
  .slider-labels{ display:flex; justify-content:space-between; font-size:11.5px; color:var(--texto-suave); margin-bottom:26px; }
  .areas-progress{ font-size:12px; letter-spacing:1px; text-transform:uppercase; color:var(--texto-suave); margin-bottom:10px; }
  .areas-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; }
  .area-chip{
    padding:8px 16px; border-radius:30px; border:1px solid #D9CCC1; background:#fff; font-size:13px; color:var(--texto);
    cursor:pointer; transition:all .15s;
  }
  .area-chip.active{ background:var(--verde); color:var(--creme); border-color:var(--verde); }
  .area-chip.respondida:not(.active){ background:var(--creme-escuro); border-color:#EADDD2; }
  .area-chip .val{ font-weight:600; }

  /* RESULTADOS */
  .res-header{ text-align:center; margin-bottom:8px; }
  .res-header .eyebrow{ margin-bottom:12px; }
  .res-header h2{ font-size:30px; }
  .res-header h2 em{ font-style:italic; color:var(--rose); }
  .res-intro{ text-align:center; color:var(--texto-suave); font-size:15px; max-width:520px; margin:14px auto 30px; }
  #radarResultWrap{ max-width:380px; margin:0 auto 20px; }
  .res-stats{ display:flex; justify-content:center; gap:40px; text-align:center; margin-bottom:50px; flex-wrap:wrap; }
  .res-stats .stat-label{ font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:var(--texto-suave); margin-bottom:4px; }
  .res-stats .stat-value{ font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--verde); font-weight:600; }

  .res-section{ margin-bottom:46px; }
  .res-section .num{ font-size:12px; letter-spacing:2px; color:var(--dourado-escuro); text-transform:uppercase; margin-bottom:8px; }
  .res-section h3{ font-size:24px; color:var(--verde); margin-bottom:18px; font-weight:500; }
  .res-section p{ font-size:15px; margin-bottom:16px; }
  .res-sublabel{ font-size:11.5px; letter-spacing:1.3px; text-transform:uppercase; margin:20px 0 8px; display:flex; align-items:center; gap:7px; }
  .res-sublabel .dot{ width:7px; height:7px; border-radius:50%; display:inline-block; }
  .res-sublabel.desequilibrio .dot{ background:var(--rose); }
  .res-sublabel.compensacao .dot{ background:var(--dourado); }
  .res-sublabel.padrao .dot{ background:var(--nude); }
  ul.res-list{ list-style:none; }
  ul.res-list li{ font-size:14.5px; margin-bottom:10px; padding-left:0; }
  .tags-row{ display:flex; flex-wrap:wrap; gap:10px; margin-top:6px; }
  .tag-pill{ padding:9px 16px; border-radius:30px; background:var(--creme-escuro); border:1px solid #EADDD2; font-size:13.5px; }

  .divider-dot{ text-align:center; color:var(--dourado); margin:36px 0; font-size:18px; }

  /* diagnostico por area (acordeao) */
  .area-item{ border-top:1px solid #EADDD2; }
  .area-item:first-child{ border-top:none; }
  .area-item-head{ display:flex; align-items:center; justify-content:space-between; padding:18px 0; cursor:pointer; gap:14px; }
  .area-item-head-left{ display:flex; align-items:center; gap:10px; }
  .area-item-dot{ width:8px; height:8px; border-radius:50%; flex-shrink:0; }
  .area-item-nome{ font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--texto); }
  .area-item-nota{ font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--verde); font-weight:600; }
  .area-item-chevron{ width:16px; height:16px; color:var(--texto-suave); transition:transform .2s; flex-shrink:0; }
  .area-item.open .area-item-chevron{ transform:rotate(180deg); }
  .area-item-body{ display:none; padding:0 0 24px; }
  .area-item.open .area-item-body{ display:block; }
  .area-item-body .leitura{ font-size:14.5px; margin-bottom:16px; }
  .area-item-body .campo-label{ font-size:11px; letter-spacing:1.3px; text-transform:uppercase; color:var(--texto-suave); margin:14px 0 6px; }
  .area-item-body ul{ list-style:none; }
  .area-item-body ul li{ font-size:14px; margin-bottom:6px; position:relative; padding-left:14px; }
  .area-item-body ul li::before{ content:"•"; position:absolute; left:0; color:var(--dourado); }

  /* direcionamento (acordeao simples) */
  .dir-item{ border-top:1px solid #EADDD2; }
  .dir-item:first-child{ border-top:none; }
  .dir-item-head{ display:flex; align-items:center; justify-content:space-between; padding:18px 0; cursor:pointer; }
  .dir-item-head span{ font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--texto); }
  .dir-item-body{ display:none; padding:0 0 20px; }
  .dir-item.open .dir-item-body{ display:block; }
  .dir-item.open .area-item-chevron{ transform:rotate(180deg); }

  blockquote.pergunta{
    border-left:3px solid var(--verde); padding-left:18px; margin-bottom:20px; font-family:'Cormorant Garamond',serif;
    font-style:italic; font-size:17px; color:var(--texto);
  }

  .res-final{ text-align:center; font-family:'Cormorant Garamond',serif; font-style:italic; color:var(--rose); font-size:16px; max-width:480px; margin:0 auto 40px; }

  [hidden]{ display:none !important; }

  /* FOOTER */
  footer{ padding:60px 0 40px; }
  .foot-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:40px; margin-bottom:40px; }
  .foot-brand img{ height:133px !important; width:auto !important; max-width:none !important; margin-bottom:14px; display:block; }
  .foot-brand p{ font-size:13px; color:#8a8178; max-width:280px; }
  footer h4{ font-size:13px; letter-spacing:1.5px; text-transform:uppercase; color:var(--verde); margin-bottom:16px; }
  footer ul{ list-style:none; }
  footer li{ font-size:14px; margin-bottom:10px; color:#5c554f; display:flex; align-items:center; gap:7px; }
  footer li svg{ width:14px; height:14px; flex-shrink:0; }
  footer li a{ display:flex; align-items:center; gap:7px; }
  footer li.endereco{ align-items:flex-start; }
  footer li.endereco svg{ margin-top:3px; }
  .foot-bottom{ border-top:1px solid #E7DCD3; padding-top:24px; font-size:12.5px; color:#a49a90; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; text-align:center; }
  .foot-bottom a{ color:#a49a90; text-decoration:underline; }
  .foot-bottom a:hover{ color:var(--rose); }
  @media (max-width:860px){
    .foot-grid{ grid-template-columns:1fr; }
    .topbar .topbar-contact a:first-child{ display:none; }
    .topbar .wrap{ justify-content:center; gap:20px; }
    .nav-toggle{ display:block; }
    nav ul{ display:none; }
    nav.menu-open ul{
      display:flex; flex-direction:column; gap:0; position:absolute; top:100%; left:0; right:0;
      background:var(--creme); border-bottom:1px solid #EADDD2; box-shadow:0 14px 24px rgba(31,74,62,0.10);
      padding:6px clamp(28px,6vw,90px) 14px;
    }
    nav.menu-open ul li{ width:100%; }
    nav.menu-open ul a{ display:block; padding:12px 0; border-bottom:1px solid #EADDD2; }
    nav.menu-open ul li:last-child a{ border-bottom:none; }
  }

  /* botao Cadastre-se no menu */
  .nav-cta{ background:var(--verde); color:var(--creme) !important; padding:12px 26px; border-radius:2px; font-size:12.5px !important; text-transform:uppercase; letter-spacing:1.5px !important; font-weight:500; display:flex; align-items:center; gap:8px; transition:background .25s; }
  .nav-cta:hover{ background:var(--rose); color:var(--creme) !important; }
  .nav-cta::after{ display:none; }
  .nav-cta{ white-space:nowrap; }
  @media (min-width:861px) and (max-width:1200px){ nav ul{ gap:22px; } nav ul a{ letter-spacing:1.2px; } .nav-cta{ padding:12px 16px; } }
  @media (min-width:861px) and (max-width:960px){ nav ul{ gap:13px; } nav ul a{ font-size:12px; letter-spacing:.5px; } .nav-cta{ padding:10px 11px; font-size:11.5px !important; letter-spacing:.8px !important; } }
