:root {
 --achilles-blue: #2f5597;
 --achilles-green: #1b7b32;
 --achilles-text: #243044;
 --achilles-muted: #667085;
 --achilles-soft: #f4f8ff;
 }
 body { font-family: "Noto Sans", Arial, sans-serif; color: var(--achilles-text); }
 .top-header { background: rgba(255,255,255,.96); backdrop-filter: blur(10px); box-shadow: 0 8px 30px rgba(30,55,90,.08); }
 .brand-logo { max-height: 58px; width: auto; }
 .nav-link { font-weight: 600; }
 .hero {
 background:
 radial-gradient(circle at 85% 10%, rgba(27,123,50,.12), transparent 28%),
 linear-gradient(135deg, #ffffff 0%, #f4f8ff 55%, #eef5ff 100%);
 padding-top: 120px;
 padding-bottom: 80px;
 }
 .hero-logo { max-width: 460px; width: 100%; filter: drop-shadow(0 18px 35px rgba(30,55,90,.16)); }
 .section-title { color: var(--achilles-blue); font-weight: 800; }
 .badge-soft { background: rgba(47,85,151,.1); color: var(--achilles-blue); border: 1px solid rgba(47,85,151,.15); }
 .service-card {
 border: 0;
 border-radius: 22px;
 box-shadow: 0 16px 40px rgba(30,55,90,.10);
 height: 100%;
 transition: .2s ease;
 }
 .service-card:hover { transform: translateY(-4px); box-shadow: 0 20px 50px rgba(30,55,90,.15); }
 .icon-box {
 width: 54px; height: 54px; border-radius: 18px;
 display: inline-flex; align-items: center; justify-content: center;
 background: linear-gradient(135deg, var(--achilles-blue), #7994cf);
 color: white;
 }
 .btn-achilles {
 background: linear-gradient(135deg, var(--achilles-blue), #6f88c1);
 color: white;
 border: 0;
 box-shadow: 0 12px 25px rgba(47,85,151,.28);
 }
 .btn-achilles:hover { color: white; filter: brightness(.96); }
 .btn-outline-achilles { border-color: var(--achilles-blue); color: var(--achilles-blue); }
 .btn-outline-achilles:hover { background: var(--achilles-blue); color: white; }
 .info-strip { background: var(--achilles-blue); color: white; }
 .muted { color: var(--achilles-muted); }
 .about-photo-wrap {
 position: relative;
 border-radius: 24px;
 overflow: hidden;
 box-shadow: 0 18px 45px rgba(30,55,90,.16);
 background: #fff;
 }
 .about-photo {
 width: 100%;
 height: 100%;
 display: block;
 object-fit: cover;
 aspect-ratio: 4 / 3;
 }
 .about-photo-badge {
 position: absolute;
 left: 18px;
 bottom: 18px;
 background: rgba(255,255,255,.94);
 color: var(--achilles-blue);
 padding: 10px 14px;
 border-radius: 14px;
 font-size: 14px;
 font-weight: 700;
 box-shadow: 0 10px 20px rgba(0,0,0,.08);
 }
 .about-side-stack {
 display: grid;
 gap: 22px;
 }
 .map-box {
 min-height: 320px;
 border: 0;
 border-radius: 22px;
 overflow: hidden;
 box-shadow: 0 16px 40px rgba(30,55,90,.12);
 }
 footer { background: #16243b; color: rgba(255,255,255,.82); }
 footer a { color: white; text-decoration: none; }
 @media (max-width: 991px) {
 .hero { padding-top: 95px; }
 .brand-logo { max-height: 48px; }
 .hero-logo { max-width: 340px; }
 .about-photo-badge { position: static; margin: 12px; display: inline-block; }
 .section-title { font-size: 1.85rem; }
 }
 .eyebrow {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 color: var(--achilles-blue);
 font-weight: 900;
 font-size: 14px;
 letter-spacing: .04em;
 text-transform: uppercase;
 margin-bottom: 14px;
 }
 .eyebrow::before {
 content: "";
 display: inline-block;
 width: 34px;
 height: 4px;
 border-radius: 999px;
 background: linear-gradient(90deg, var(--achilles-blue), var(--achilles-green));
 }
 .section-title {
 letter-spacing: -.03em;
 }
 .text-justify-desktop {
 text-align: justify;
 }
 .about-modern {
 background:
 radial-gradient(circle at 95% 5%, rgba(47,85,151,.13), transparent 28%),
 linear-gradient(135deg, #ffffff 0%, #f6f9ff 100%);
 }
 .about-panel {
 border-radius: 34px;
 padding: clamp(26px, 4vw, 54px);
 background: rgba(255,255,255,.92);
 box-shadow: 0 24px 70px rgba(30,55,90,.11);
 border: 1px solid rgba(47,85,151,.08);
 position: relative;
 overflow: hidden;
 }
 .about-panel::after {
 content: "";
 position: absolute;
 right: -90px;
 bottom: -90px;
 width: 230px;
 height: 230px;
 border-radius: 999px;
 background: rgba(27,123,50,.08);
 pointer-events: none;
 }
 .about-content {
 position: relative;
 z-index: 2;
 }
 .about-lead {
 font-size: 1.05rem;
 line-height: 1.8;
 color: var(--achilles-muted);
 }
 .about-info-grid {
 display: grid;
 grid-template-columns: 1fr;
 gap: 14px;
 margin-top: 28px;
 }
 .about-info-item {
 display: flex;
 gap: 12px;
 align-items: flex-start;
 padding: 15px 16px;
 border-radius: 18px;
 background: #f8fbff;
 border: 1px solid rgba(47,85,151,.10);
 }
 .about-info-item .material-icons-outlined {
 color: var(--achilles-blue);
 font-size: 25px;
 margin-top: 1px;
 }
 .about-info-item strong {
 display: block;
 color: var(--achilles-text);
 margin-bottom: 3px;
 }
 .about-info-item span:last-child {
 color: var(--achilles-muted);
 line-height: 1.45;
 }
 .about-visual {
 position: relative;
 z-index: 2;
 }
 .about-photo-card {
 position: relative;
 border-radius: 30px;
 overflow: hidden;
 box-shadow: 0 26px 65px rgba(30,55,90,.20);
 isolation: isolate;
 max-width: 520px;
 margin-left: auto;
 }
 .about-photo-card img {
 width: 100%;
 display: block;
 aspect-ratio: 4 / 3.05;
 object-fit: cover;
 transform: scale(1.01);
 }
 .about-photo-card::after {
 content: "";
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, transparent 45%, rgba(13,27,48,.50) 100%);
 z-index: 1;
 }
 .about-photo-caption {
 position: absolute;
 left: 20px;
 right: 20px;
 bottom: 18px;
 z-index: 2;
 color: #fff;
 }
 .about-photo-caption strong {
 display: block;
 font-size: 18px;
 line-height: 1.2;
 }
 .about-photo-caption span {
 font-size: 14px;
 opacity: .92;
 }
 .about-floating-card {
 position: absolute;
 left: -18px;
 top: 22px;
 z-index: 3;
 background: rgba(255,255,255,.96);
 color: var(--achilles-blue);
 border-radius: 18px;
 padding: 12px 15px;
 box-shadow: 0 16px 36px rgba(30,55,90,.17);
 font-weight: 900;
 max-width: 210px;
 font-size: 14px;
 }
 .service-card {
 border: 1px solid rgba(47,85,151,.08) !important;
 background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
 }
 .service-card h5 {
 color: var(--achilles-blue);
 }
 .service-card .muted {
 color: #56657c;
 }
 .symptom-section {
 background:
 linear-gradient(135deg, #f5f8ff 0%, #ffffff 60%);
 }
 .symptom-card {
 height: 100%;
 padding: 24px;
 border-radius: 24px;
 background: #fff;
 border: 1px solid rgba(47,85,151,.09);
 box-shadow: 0 14px 36px rgba(30,55,90,.08);
 transition: .2s ease;
 }
 .symptom-card:hover {
 transform: translateY(-3px);
 box-shadow: 0 20px 46px rgba(30,55,90,.13);
 }
 .symptom-number {
 width: 42px;
 height: 42px;
 border-radius: 15px;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 font-weight: 900;
 background: linear-gradient(135deg, var(--achilles-blue), #86a0d5);
 margin-bottom: 16px;
 }
 .symptom-card h5 {
 color: var(--achilles-blue);
 font-weight: 800;
 margin-bottom: 10px;
 }
 .symptom-card p {
 color: var(--achilles-muted);
 margin-bottom: 0;
 text-align: left;
 }
 .symptom-cta {
 border-radius: 26px;
 background: #16243b;
 color: rgba(255,255,255,.88);
 padding: 28px;
 box-shadow: 0 18px 48px rgba(22,36,59,.18);
 }
 .symptom-cta h4 {
 color: #fff;
 font-weight: 850;
 }
 @media (max-width: 991px) {
 .about-photo-card {
 max-width: 100%;
 margin-left: 0;
 }
 .about-floating-card {
 left: 16px;
 }
 }
 @media (max-width: 767px) {
 .text-justify-desktop {
 text-align: left;
 }
 .about-panel {
 border-radius: 26px;
 }
 .about-floating-card {
 position: static;
 margin-bottom: 12px;
 display: inline-block;
 }
 .about-photo-card img {
 aspect-ratio: 4 / 3.4;
 }
 }
 .about-modern-clean {
 background: linear-gradient(135deg, #ffffff 0%, #f7faff 100%);
 }
 .section-kicker {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 color: var(--achilles-blue);
 font-size: 15px;
 font-weight: 850;
 letter-spacing: .02em;
 margin-bottom: 12px;
 }
 .section-kicker::before {
 content: "";
 width: 34px;
 height: 4px;
 display: inline-block;
 border-radius: 999px;
 background: linear-gradient(90deg, var(--achilles-blue), var(--achilles-green));
 }
 .about-copy-clean {
 max-width: 760px;
 }
 .text-justify-desktop {
 text-align: justify;
 }
 .about-info-clean {
 display: grid;
 gap: 13px;
 max-width: 720px;
 }
 .about-info-row {
 display: flex;
 gap: 14px;
 align-items: flex-start;
 padding: 15px 17px;
 border-radius: 18px;
 background: #ffffff;
 border: 1px solid rgba(47,85,151,.11);
 box-shadow: 0 10px 26px rgba(30,55,90,.07);
 }
 .about-info-row > span {
 color: var(--achilles-blue);
 font-size: 25px;
 margin-top: 2px;
 flex: 0 0 auto;
 }
 .about-info-row strong {
 display: block;
 color: var(--achilles-text);
 margin-bottom: 3px;
 font-weight: 800;
 }
 .about-info-row p {
 margin: 0;
 color: var(--achilles-muted);
 text-align: left !important;
 line-height: 1.45;
 }
 .clinic-photo-clean {
 max-width: 470px;
 margin-left: auto;
 border-radius: 26px;
 overflow: hidden;
 background: #fff;
 box-shadow: 0 18px 45px rgba(30,55,90,.16);
 position: relative;
 }
 .clinic-photo-clean img {
 width: 100% !important;
 height: auto !important;
 aspect-ratio: 16 / 10 !important;
 object-fit: cover !important;
 object-position: center center !important;
 display: block !important;
 transform: none !important;
 }
 .clinic-photo-clean figcaption {
 position: absolute;
 left: 16px;
 bottom: 16px;
 background: rgba(255,255,255,.94);
 color: var(--achilles-blue);
 padding: 9px 13px;
 border-radius: 13px;
 font-size: 13px;
 font-weight: 850;
 box-shadow: 0 10px 22px rgba(0,0,0,.10);
 }
 @media (max-width: 991px) {
 .clinic-photo-clean {
 max-width: 100%;
 margin-left: 0;
 }
 }
 @media (max-width: 767px) {
 .text-justify-desktop {
 text-align: left;
 }
 .clinic-photo-clean img {
 aspect-ratio: 4 / 3 !important;
 }
 .clinic-photo-clean figcaption {
 position: static;
 display: inline-block;
 margin: 12px;
 }
 }
 :root {
 --achilles-navy: #132643;
 --achilles-blue-strong: #24539a;
 --achilles-blue-soft: #eff5ff;
 --achilles-green-strong: #16783a;
 --achilles-card-border: rgba(36, 83, 154, .12);
 --achilles-shadow-soft: 0 18px 45px rgba(19, 38, 67, .10);
 --achilles-shadow-strong: 0 30px 80px rgba(19, 38, 67, .18);
 }
 .section-kicker,
 .eyebrow {
 display: inline-flex !important;
 align-items: center;
 gap: 12px;
 color: var(--achilles-blue-strong) !important;
 font-size: 14px !important;
 font-weight: 900 !important;
 letter-spacing: .055em;
 text-transform: uppercase;
 margin-bottom: 14px;
 background: transparent !important;
 border: 0 !important;
 padding: 0 !important;
 box-shadow: none !important;
 }
 .section-kicker::before,
 .eyebrow::before {
 content: "";
 width: 42px;
 height: 4px;
 border-radius: 999px;
 background: linear-gradient(90deg, var(--achilles-blue-strong), var(--achilles-green-strong));
 display: inline-block;
 flex: 0 0 auto;
 }
 .section-title {
 letter-spacing: -.035em;
 }
 .text-justify-desktop {
 text-align: justify;
 }
 .about-modern-clean {
 background:
 radial-gradient(circle at 88% 18%, rgba(36,83,154,.13), transparent 26%),
 linear-gradient(135deg, #ffffff 0%, #f7faff 100%) !important;
 position: relative;
 overflow: hidden;
 }
 .about-copy-clean {
 max-width: 760px;
 }
 .about-info-clean {
 display: grid;
 gap: 14px;
 max-width: 740px;
 }
 .about-info-row {
 display: flex;
 gap: 14px;
 align-items: flex-start;
 padding: 16px 18px;
 border-radius: 20px;
 background: rgba(255,255,255,.92);
 border: 1px solid var(--achilles-card-border);
 box-shadow: 0 12px 30px rgba(19,38,67,.07);
 transition: transform .18s ease, box-shadow .18s ease;
 }
 .about-info-row:hover {
 transform: translateY(-2px);
 box-shadow: 0 18px 38px rgba(19,38,67,.10);
 }
 .about-info-row > span {
 color: var(--achilles-blue-strong);
 font-size: 25px;
 margin-top: 2px;
 flex: 0 0 auto;
 }
 .about-info-row strong {
 display: block;
 color: var(--achilles-navy);
 margin-bottom: 3px;
 font-weight: 850;
 }
 .about-info-row p {
 margin: 0;
 color: var(--achilles-muted);
 text-align: left !important;
 line-height: 1.45;
 }
 .clinic-photo-clean {
 max-width: 560px;
 margin-left: auto;
 border-radius: 30px;
 overflow: hidden;
 background: #fff;
 box-shadow: var(--achilles-shadow-strong);
 position: relative;
 transform: translateY(4px);
 }
 .clinic-photo-link {
 display: block;
 cursor: zoom-in;
 position: relative;
 }
 .clinic-photo-link::after {
 content: "Clique para ampliar";
 position: absolute;
 right: 16px;
 top: 16px;
 z-index: 3;
 background: rgba(255,255,255,.94);
 color: var(--achilles-blue-strong);
 border-radius: 999px;
 padding: 8px 12px;
 font-size: 12px;
 font-weight: 850;
 box-shadow: 0 10px 24px rgba(0,0,0,.12);
 opacity: .96;
 }
 .clinic-photo-clean img {
 width: 100% !important;
 height: auto !important;
 aspect-ratio: 16 / 10 !important;
 object-fit: cover !important;
 object-position: center center !important;
 display: block !important;
 transform: none !important;
 transition: transform .35s ease;
 }
 .clinic-photo-link:hover img {
 transform: scale(1.035) !important;
 }
 .clinic-photo-clean figcaption {
 position: absolute;
 left: 16px;
 bottom: 16px;
 background: rgba(255,255,255,.95);
 color: var(--achilles-blue-strong);
 padding: 10px 14px;
 border-radius: 14px;
 font-size: 13px;
 font-weight: 850;
 box-shadow: 0 10px 24px rgba(0,0,0,.12);
 pointer-events: none;
 }
 .services-premium {
 background:
 radial-gradient(circle at 18% 0%, rgba(89,125,195,.25), transparent 30%),
 linear-gradient(135deg, #132643 0%, #24539a 58%, #1b7b32 100%);
 color: #fff;
 position: relative;
 overflow: hidden;
 }
 .services-premium::before {
 content: "";
 position: absolute;
 inset: 0;
 background-image:
 linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
 linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
 background-size: 46px 46px;
 mask-image: linear-gradient(180deg, rgba(0,0,0,.75), transparent 92%);
 pointer-events: none;
 }
 .services-premium .container {
 position: relative;
 z-index: 2;
 }
 .services-premium .section-title,
 .services-premium h2 {
 color: #fff !important;
 }
 .services-premium .eyebrow,
 .services-premium .section-kicker {
 color: rgba(255,255,255,.92) !important;
 }
 .services-premium .eyebrow::before,
 .services-premium .section-kicker::before {
 background: linear-gradient(90deg, #ffffff, rgba(255,255,255,.35));
 }
 .services-premium .muted {
 color: rgba(255,255,255,.78) !important;
 }
 .services-premium .service-card {
 background: rgba(255,255,255,.10) !important;
 border: 1px solid rgba(255,255,255,.18) !important;
 box-shadow: 0 22px 55px rgba(0,0,0,.16) !important;
 backdrop-filter: blur(14px);
 color: #fff;
 }
 .services-premium .service-card:hover {
 transform: translateY(-6px);
 background: rgba(255,255,255,.16) !important;
 box-shadow: 0 28px 70px rgba(0,0,0,.22) !important;
 }
 .services-premium .service-card h5 {
 color: #fff !important;
 }
 .services-premium .service-card p {
 color: rgba(255,255,255,.80) !important;
 }
 .services-premium .icon-box {
 background: rgba(255,255,255,.18) !important;
 border: 1px solid rgba(255,255,255,.26);
 color: #fff !important;
 box-shadow: inset 0 1px 0 rgba(255,255,255,.25);
 }
 .insights-modern {
 background: #ffffff;
 position: relative;
 overflow: hidden;
 }
 .insights-modern::before {
 content: "";
 position: absolute;
 right: -150px;
 top: -160px;
 width: 420px;
 height: 420px;
 border-radius: 999px;
 background: rgba(36,83,154,.08);
 pointer-events: none;
 }
 .insight-highlight {
 border-radius: 30px;
 padding: clamp(26px, 4vw, 42px);
 background:
 linear-gradient(135deg, rgba(36,83,154,.08), rgba(27,123,50,.08)),
 #f8fbff;
 border: 1px solid rgba(36,83,154,.12);
 box-shadow: var(--achilles-shadow-soft);
 }
 .insight-highlight h3 {
 color: var(--achilles-navy);
 font-weight: 900;
 letter-spacing: -.03em;
 }
 .insight-list {
 display: grid;
 gap: 14px;
 }
 .insight-item {
 display: flex;
 gap: 14px;
 align-items: flex-start;
 padding: 18px;
 border-radius: 22px;
 background: #fff;
 border: 1px solid rgba(36,83,154,.10);
 box-shadow: 0 12px 30px rgba(19,38,67,.07);
 }
 .insight-item-number {
 width: 42px;
 height: 42px;
 border-radius: 15px;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 flex: 0 0 auto;
 font-weight: 900;
 color: #fff;
 background: linear-gradient(135deg, var(--achilles-blue-strong), #7e9ed8);
 }
 .insight-item h5 {
 color: var(--achilles-blue-strong);
 font-weight: 850;
 margin-bottom: 5px;
 }
 .insight-item p {
 color: var(--achilles-muted);
 margin: 0;
 text-align: left;
 }
 .insight-cta-soft {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 margin-top: 24px;
 border-radius: 999px;
 padding: 13px 20px;
 background: var(--achilles-blue-strong);
 color: #fff !important;
 text-decoration: none;
 font-weight: 850;
 box-shadow: 0 14px 30px rgba(36,83,154,.25);
 }
 @media (max-width: 991px) {
 .clinic-photo-clean {
 max-width: 100%;
 margin-left: 0;
 }
 .services-premium {
 text-align: left;
 }
 }
 @media (max-width: 767px) {
 .text-justify-desktop {
 text-align: left;
 }
 .clinic-photo-clean img {
 aspect-ratio: 4 / 3 !important;
 }
 .clinic-photo-link::after {
 display: none;
 }
 .clinic-photo-clean figcaption {
 position: static;
 display: inline-block;
 margin: 12px;
 }
 .insight-item {
 padding: 16px;
 }
 }


/* Ajustes finais do projeto */
.phone-display {
  cursor: default !important;
  pointer-events: none;
  user-select: text;
  text-decoration: none !important;
}

.hero .btn-lg {
  --bs-btn-padding-y: .72rem;
  --bs-btn-padding-x: 1.45rem;
  --bs-btn-font-size: 1rem;
  line-height: 1.25;
  font-weight: 700;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.hero .phone-display {
  max-width: 310px;
  white-space: normal;
  text-align: center;
  letter-spacing: .01em;
}

.hero .btn-outline-achilles {
  min-width: 180px;
  background: rgba(255,255,255,.72);
}

.hero .btn-outline-achilles:hover,
.hero .btn-outline-achilles:focus,
.hero .btn-outline-achilles:active {
  background: var(--achilles-blue) !important;
  border-color: var(--achilles-blue) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 25px rgba(47,85,151,.22);
}

.hero .btn-outline-achilles:hover *,
.hero .btn-outline-achilles:focus *,
.hero .btn-outline-achilles:active * {
  color: #ffffff !important;
}

@media (max-width: 575px) {
  .hero .btn-lg {
    width: 100%;
    font-size: .95rem;
    padding-block: .68rem;
  }

  .hero .phone-display,
  .hero .btn-outline-achilles {
    max-width: 100%;
    min-width: 0;
  }
}
