@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");

:root { --color-primary-50: #f5f0ff; --color-primary-100: #ead5ff; --color-primary-200: #d5aaff; --color-primary-300: #bf80ff; --color-primary-400: #aa55ff; --color-primary-500: #5C0CFC; --color-primary-600: #4a0aca; --color-primary-700: #3d089f; --color-primary-800: #2f0675; --color-primary-900: #22044a; --color-secondary-100: #f0ebff; --color-secondary-400: #d2c3ff; --color-secondary-500: #c8b5ff; --color-accent: #5C0CFC; --color-accent-hover: #4a0aca; --color-accent-light: #7a3dff; --color-neutral-100: #f5f5f5; --color-neutral-200: #e5e5e5; --color-neutral-300: #d4d4d4; --color-background: #ffffff; --color-surface: #fafafa; --color-text-primary: #171717; --color-text-secondary: #525252; --color-text-tertiary: #737373; --color-border: #e5e5e5; --color-success: #10b981; --color-error: #ef4444; --gradient-primary: linear-gradient(135deg, #5C0CFC 0%, #7a3dff 100%); --gradient-secondary: linear-gradient(135deg, #f5f0ff 0%, #ead5ff 100%); --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --text-xs: 0.75rem; --text-sm: 0.875rem; --text-base: 1rem; --text-lg: 1.125rem; --text-xl: 1.25rem; --text-2xl: 1.5rem; --text-3xl: 1.875rem; --text-4xl: 2.25rem; --text-5xl: 3rem; --text-6xl: 3.75rem; --font-light: 300; --font-regular: 400; --font-medium: 500; --font-semibold: 600; --font-bold: 700; --leading-tight: 1.2; --leading-snug: 1.375; --leading-base: 1.5; --leading-relaxed: 1.625; --space-1: 0.25rem; --space-2: 0.5rem; --space-3: 0.75rem; --space-4: 1rem; --space-5: 1.25rem; --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem; --space-12: 3rem; --space-16: 4rem; --space-20: 5rem; --space-24: 6rem; --radius-sm: 0.25rem; --radius-md: 0.5rem; --radius-lg: 0.75rem; --radius-xl: 1rem; --radius-2xl: 1.5rem; --radius-full: 9999px; --shadow-sm: 0 1px 2px rgba(0,0,0,.05); --shadow-md: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06); --shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05); --shadow-xl: 0 20px 25px -5px rgba(0,0,0,.1), 0 10px 10px -5px rgba(0,0,0,.04); --shadow-primary: 0 10px 15px -3px rgba(92,12,252,.2); --transition-fast: 150ms cubic-bezier(.4,0,.2,1); --transition-normal: 250ms cubic-bezier(.4,0,.2,1); --transition-slow: 350ms cubic-bezier(.4,0,.2,1); --section-padding: var(--space-24) 0; }

*, ::before, ::after { box-sizing: border-box; margin: 0px; padding: 0px; }

html { font-size: 16px; scroll-behavior: smooth; overflow-x: hidden; }

body { font-family: var(--font-family); font-size: var(--text-base); line-height: var(--leading-base); color: var(--color-text-primary); background: var(--color-background); -webkit-font-smoothing: antialiased; overflow-x: hidden; }

/* Home de conversao */
.conversion-home { background: #fff; }
.conversion-home h1, .conversion-home h2, .conversion-home h3 { letter-spacing: -0.025em; }
.conversion-hero { position: relative; overflow: hidden; padding: 72px 0; background: radial-gradient(circle at 82% 12%, rgba(122, 61, 255, .24), transparent 34%), linear-gradient(135deg, #160436 0%, #31049a 58%, #5c0cfc 100%); color: #fff; }
.conversion-hero::after { content: ""; position: absolute; inset: auto -120px -240px auto; width: 520px; height: 520px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; }
.conversion-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(380px, .78fr); grid-template-areas: "copy form" "support form"; column-gap: clamp(36px, 6vw, 78px); row-gap: 0; align-items: center; }
.conversion-hero-copy { grid-area: copy; align-self: end; max-width: 700px; }
.conversion-hero-support { grid-area: support; align-self: start; }
.conversion-eyebrow, .conversion-heading > span, .form-kicker { display: inline-flex; margin-bottom: 16px; color: #cbb8ff; font-size: .78rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.conversion-hero h1 { margin: 0 0 22px; color: #fff; font-size: clamp(2.45rem, 5vw, 4.25rem); line-height: 1.03; }
.conversion-lead { max-width: 680px; margin: 0 0 26px; color: rgba(255,255,255,.88); font-size: clamp(1rem, 1.7vw, 1.18rem); line-height: 1.65; }
.conversion-benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; margin: 0 0 30px; }
.conversion-benefits li { position: relative; padding-left: 27px; color: #fff; font-size: .94rem; font-weight: 700; }
.conversion-benefits li::before { content: "✓"; position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: #20c66b; color: #fff; font-size: .72rem; }
.conversion-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.conversion-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; padding: 13px 21px; border: 1px solid transparent; border-radius: 999px; font-size: .84rem; font-weight: 800; line-height: 1.2; text-align: center; text-transform: uppercase; }
.conversion-btn:hover { color: #fff; transform: translateY(-2px); }
.conversion-btn-primary { background: var(--gradient-primary); color: #fff; box-shadow: 0 13px 28px rgba(92,12,252,.24); }
.conversion-hero .conversion-btn-primary { background: #fff; color: #3d089f; box-shadow: 0 14px 34px rgba(9,4,31,.25); }
.conversion-hero .conversion-btn-primary:hover { color: #3d089f; }
.conversion-btn-whatsapp { background: #13b966; color: #fff; box-shadow: 0 13px 28px rgba(19,185,102,.22); }
.conversion-disclaimer { margin: 16px 0 0; color: rgba(255,255,255,.66); font-size: .78rem; }
.hero-quote-card { grid-area: form; padding: 28px; border: 1px solid rgba(255,255,255,.45); border-radius: 20px; background: rgba(255,255,255,.98); color: #171717; box-shadow: 0 30px 74px rgba(13,4,45,.3); }
.hero-quote-card .form-kicker { margin-bottom: 7px; color: #5c0cfc; }
.hero-quote-card h2 { margin: 0 0 20px; color: #22044a; font-size: 1.55rem; line-height: 1.2; }
.hero-quote-card form { display: grid; gap: 13px; }
.hero-quote-card label { display: grid; gap: 6px; color: #393344; font-size: .8rem; font-weight: 800; }
.hero-quote-card input, .hero-quote-card select { width: 100%; min-height: 46px; padding: 0 12px; border: 1px solid #ded8ea; border-radius: 9px; background: #fff; color: #171717; font: inherit; }
.hero-quote-card input:focus, .hero-quote-card select:focus { outline: 3px solid rgba(92,12,252,.12); border-color: #5c0cfc; }
.hero-form-row { display: grid; grid-template-columns: .8fr 1.2fr; gap: 12px; }
.hero-quote-card button { min-height: 51px; border: 0; border-radius: 999px; background: #13b966; color: #fff; font: inherit; font-size: .85rem; font-weight: 800; text-transform: uppercase; box-shadow: 0 12px 25px rgba(19,185,102,.22); }
.hero-quote-card form > p { margin: 0; color: #6e6877; font-size: .72rem; line-height: 1.5; }
.hero-quote-card form > p a { color: #5c0cfc; font-weight: 800; text-decoration: underline; }
.conversion-section { padding: 82px 0; }
.conversion-heading { max-width: 850px; margin: 0 auto 40px; text-align: center; }
.conversion-heading > span { color: #5c0cfc; }
.conversion-heading h2, .price-layout h2 { margin: 0 0 16px; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.12; }
.conversion-heading p { margin: 0 auto; color: #5f5969; font-size: 1.04rem; line-height: 1.7; }
.trust-section, .plans-conversion-section, .conversion-faq { background: #fff; }
.trust-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.trust-card-grid article { padding: 25px; border: 1px solid #e9e4f3; border-radius: 16px; background: #fff; box-shadow: 0 12px 30px rgba(34,4,74,.07); }
.trust-card-grid strong { color: #5c0cfc; font-size: .78rem; letter-spacing: .08em; }
.trust-card-grid h3 { margin: 15px 0 9px; font-size: 1.1rem; }
.trust-card-grid p { margin: 0; color: #625c6c; font-size: .9rem; line-height: 1.6; }
.authority-copy { max-width: 850px; margin: 28px auto 0; color: #625c6c; text-align: center; }
.section-cta { margin-top: 30px; text-align: center; }
.network-section, .price-section, .audience-section { background: #f7f5fb; }
.hospital-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.hospital-grid article { min-height: 180px; display: grid; place-items: center; align-content: center; gap: 18px; padding: 24px; border: 1px solid #e5deef; border-radius: 16px; background: #fff; text-align: center; box-shadow: 0 8px 25px rgba(34,4,74,.05); }
.hospital-grid img { width: min(175px, 100%); height: 65px; object-fit: contain; }
.hospital-grid h3 { margin: 0; font-size: .94rem; }
.hospital-grid .hospital-photo-card { position: relative; overflow: hidden; padding: 0; isolation: isolate; }
.hospital-grid .hospital-photo-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(17,8,39,.04) 25%, rgba(17,8,39,.88) 100%); }
.hospital-grid .hospital-photo-card img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.hospital-grid .hospital-photo-card h3 { align-self: end; width: 100%; padding: 24px; color: #fff; font-size: 1.05rem; text-shadow: 0 2px 10px rgba(0,0,0,.4); }
.network-note { margin: 22px 0 0; color: #6b6573; font-size: .8rem; text-align: center; }
.conversion-plan-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.conversion-plan-grid article { grid-column: span 2; display: flex; flex-direction: column; padding: 27px; border: 1px solid #e4deed; border-radius: 18px; background: #fff; box-shadow: 0 13px 34px rgba(34,4,74,.07); }
.conversion-plan-grid article:nth-child(4) { grid-column: 2 / span 2; }
.conversion-plan-grid article:nth-child(5) { grid-column: 4 / span 2; }
.conversion-plan-grid .featured-plan { border-color: #ac8fff; background: linear-gradient(145deg,#210444,#4c0bd0); color: #fff; }
.plan-label { color: #5c0cfc; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.featured-plan .plan-label { color: #d9ccff; }
.conversion-plan-grid h3 { margin: 13px 0 10px; font-size: 1.35rem; }
.featured-plan h3 { color: #fff; }
.conversion-plan-grid p { color: #615b6a; font-size: .91rem; }
.featured-plan p, .featured-plan li { color: rgba(255,255,255,.8) !important; }
.conversion-plan-grid ul { display: grid; gap: 8px; margin: 5px 0 24px; }
.conversion-plan-grid li { position: relative; padding-left: 20px; color: #544f5d; font-size: .85rem; }
.conversion-plan-grid li::before { content: "✓"; position: absolute; left: 0; color: #13b966; font-weight: 800; }
.conversion-plan-grid article > a { margin-top: auto; color: #5c0cfc; font-size: .83rem; font-weight: 800; text-transform: uppercase; }
.featured-plan > a { color: #fff !important; }
.price-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 70px; align-items: center; }
.price-layout > div > p { max-width: 670px; margin-bottom: 28px; color: #5f5969; font-size: 1.04rem; line-height: 1.75; }
.price-factor-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.price-factor-list li { padding: 16px 18px; border: 1px solid #e3dced; border-radius: 12px; background: #fff; color: #3f3949; font-weight: 700; box-shadow: 0 8px 18px rgba(34,4,74,.04); }
.price-factor-list li::before { content: "✓"; margin-right: 9px; color: #13b966; }
.audience-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.audience-grid article { padding: 29px; border: 1px solid #e3dced; border-radius: 17px; background: #fff; }
.audience-grid h2 { margin: 0 0 14px; font-size: 1.35rem; }
.audience-grid p { color: #5f5969; line-height: 1.7; }
.audience-grid a { color: #5c0cfc; font-weight: 800; }
.conversion-faq-list { max-width: 900px; margin: 0 auto; border-top: 1px solid #e2dbea; }
.conversion-faq-list details { border-bottom: 1px solid #e2dbea; }
.conversion-faq-list summary { position: relative; padding: 22px 52px 22px 0; color: #241b31; font-weight: 800; cursor: pointer; list-style: none; }
.conversion-faq-list summary::-webkit-details-marker { display: none; }
.conversion-faq-list summary::after { content: "+"; position: absolute; right: 0; top: 15px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #d8ccec; border-radius: 50%; color: #5c0cfc; font-size: 1.25rem; }
.conversion-faq-list details[open] summary::after { content: "−"; }
.conversion-faq-list details p { margin: 0; padding: 0 52px 22px 0; color: #625c6b; line-height: 1.7; }

@media (max-width: 1024px) {
  .conversion-hero-grid { grid-template-columns: 1fr; grid-template-areas: "copy" "form" "support"; row-gap: 28px; }
  .conversion-hero-copy { max-width: 820px; text-align: center; margin: 0 auto; }
  .conversion-hero-support { text-align: center; }
  .conversion-benefits { max-width: 680px; margin-left: auto; margin-right: auto; text-align: left; }
  .conversion-actions { justify-content: center; }
  .hero-quote-card { width: min(680px, 100%); margin: 0 auto; }
  .trust-card-grid { grid-template-columns: repeat(2, 1fr); }
  .conversion-plan-grid { grid-template-columns: repeat(2, 1fr); }
  .conversion-plan-grid article, .conversion-plan-grid article:nth-child(4), .conversion-plan-grid article:nth-child(5) { grid-column: auto; }
  .conversion-plan-grid article:last-child { grid-column: 1 / -1; width: calc(50% - 9px); justify-self: center; }
  .price-layout { gap: 40px; }
}

@media (max-width: 720px) {
  .conversion-hero { padding: 52px 0; }
  .conversion-hero h1 { font-size: clamp(2.15rem, 11vw, 3rem); }
  .conversion-benefits, .hero-form-row, .trust-card-grid, .hospital-grid, .conversion-plan-grid, .price-layout, .price-factor-list, .audience-grid { grid-template-columns: 1fr; }
  .conversion-benefits { gap: 12px; }
  .conversion-actions { display: grid; grid-template-columns: 1fr; }
  .conversion-actions .conversion-btn { width: 100%; }
  .hero-quote-card { padding: 22px 18px; border-radius: 16px; }
  .conversion-section { padding: 60px 0; }
  .conversion-heading { margin-bottom: 30px; text-align: left; }
  .conversion-heading h2, .price-layout h2 { font-size: 2rem; }
  .hospital-grid article { min-height: 145px; }
  .conversion-plan-grid article:last-child { grid-column: auto; width: auto; }
  .price-layout { gap: 30px; }
  .section-cta .conversion-btn { width: 100%; }
  .conversion-faq-list summary { padding-right: 46px; }
  .conversion-faq-list details p { padding-right: 0; }
}

/* Hub de comparacao de Planos Amil */
.plans-hub { background: #fff; }
.plans-hub h1, .plans-hub h2, .plans-hub h3 { letter-spacing: -.025em; }
.plans-hub-hero { padding: 70px 0; overflow: hidden; background: radial-gradient(circle at 82% 10%, rgba(135,88,255,.28), transparent 34%), linear-gradient(135deg,#170333,#330594 58%,#5c0cfc); color: #fff; }
.plans-hub-hero-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(380px,.78fr); grid-template-areas: "copy form" "support form"; column-gap: clamp(36px,6vw,76px); align-items: center; }
.plans-hub-copy { grid-area: copy; align-self: end; }
.plans-hub-support { grid-area: support; align-self: start; }
.plans-hub-eyebrow, .plans-hub-heading > span, .plans-hub-form > span { display: inline-flex; margin-bottom: 15px; color: #cdbdff; font-size: .76rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.plans-hub-copy h1 { max-width: 720px; margin: 0 0 20px; color: #fff; font-size: clamp(2.4rem,5vw,4.15rem); line-height: 1.03; }
.plans-hub-copy p { max-width: 690px; margin: 0 0 24px; color: rgba(255,255,255,.87); font-size: 1.08rem; line-height: 1.7; }
.plans-hub-support > ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 18px; margin: 0 0 27px; }
.plans-hub-support > ul li { position: relative; padding-left: 26px; color: #fff; font-size: .91rem; font-weight: 700; }
.plans-hub-support > ul li::before { content: "✓"; position: absolute; left: 0; display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: #16bb65; font-size: .7rem; }
.plans-hub-actions { display: flex; flex-wrap: wrap; gap: 11px; }
.plans-hub-support small { display: block; margin-top: 15px; color: rgba(255,255,255,.65); font-size: .76rem; }
.plans-hub-btn { min-height: 49px; display: inline-flex; align-items: center; justify-content: center; padding: 12px 21px; border: 1px solid transparent; border-radius: 999px; font-size: .82rem; font-weight: 800; line-height: 1.2; text-align: center; text-transform: uppercase; }
.plans-hub-btn:hover { transform: translateY(-2px); }
.plans-hub-btn-light { background: #fff; color: #3d089f; }
.plans-hub-btn-light:hover { color: #3d089f; }
.plans-hub-btn-green { background: #13b966; color: #fff; box-shadow: 0 12px 28px rgba(19,185,102,.22); }
.plans-hub-btn-green:hover, .plans-hub-btn-purple:hover { color: #fff; }
.plans-hub-btn-purple { background: var(--gradient-primary); color: #fff; box-shadow: 0 12px 28px rgba(92,12,252,.2); }
.plans-hub-form { grid-area: form; padding: 27px; border: 1px solid rgba(255,255,255,.45); border-radius: 19px; background: rgba(255,255,255,.98); color: #171717; box-shadow: 0 30px 70px rgba(10,3,37,.3); }
.plans-hub-form > span { margin-bottom: 7px; color: #5c0cfc; }
.plans-hub-form h2 { margin: 0 0 19px; color: #22044a; font-size: 1.5rem; }
.plans-hub-form form { display: grid; gap: 12px; }
.plans-hub-form label { display: grid; gap: 5px; color: #41384b; font-size: .79rem; font-weight: 800; }
.plans-hub-form input, .plans-hub-form select { width: 100%; min-height: 45px; padding: 0 12px; border: 1px solid #ded7e9; border-radius: 8px; background: #fff; font: inherit; }
.plans-hub-form input:focus, .plans-hub-form select:focus { outline: 3px solid rgba(92,12,252,.12); border-color: #5c0cfc; }
.plans-hub-form-row { display: grid; grid-template-columns: .8fr 1.2fr; gap: 11px; }
.plans-hub-form button { min-height: 50px; border: 0; border-radius: 999px; background: #13b966; color: #fff; font: inherit; font-size: .84rem; font-weight: 800; text-transform: uppercase; }
.plans-hub-form form > p { margin: 0; color: #6c6575; font-size: .7rem; }
.plans-hub-form form > p a { font-weight: 800; text-decoration: underline; }
.plans-hub-section { padding: 78px 0; }
.plans-hub-heading { max-width: 900px; margin: 0 auto 38px; text-align: center; }
.plans-hub-heading > span { color: #5c0cfc; }
.plans-hub-heading h2, .plans-price-layout h2 { margin: 0 0 15px; font-size: clamp(2rem,4vw,2.9rem); line-height: 1.12; }
.plans-hub-heading p { margin: 0 auto; color: #625b6b; font-size: 1rem; line-height: 1.7; }
.profile-nav, .plans-detail-section, .plans-price-section, .plans-hub-faq { background: #f8f6fc; }
.profile-nav-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.profile-nav-grid a { display: grid; gap: 8px; padding: 23px; border: 1px solid #e4deed; border-radius: 15px; background: #fff; box-shadow: 0 10px 25px rgba(34,4,74,.05); }
.profile-nav-grid strong { color: #241c30; font-size: 1.04rem; }
.profile-nav-grid span { color: #686170; font-size: .88rem; }
.profile-nav-grid em { color: #5c0cfc; font-size: .78rem; font-style: normal; font-weight: 800; text-transform: uppercase; }
.plans-comparison-wrap { overflow-x: auto; border: 1px solid #e0d9ea; border-radius: 15px; background: #fff; box-shadow: 0 15px 35px rgba(34,4,74,.07); }
.plans-comparison-table { width: 100%; min-width: 1040px; border-collapse: collapse; }
.plans-comparison-table th, .plans-comparison-table td { padding: 16px 17px; border-bottom: 1px solid #ebe6f1; font-size: .84rem; line-height: 1.5; text-align: left; vertical-align: top; }
.plans-comparison-table thead th { background: #22044a; color: #fff; font-weight: 800; }
.plans-comparison-table tbody th { color: #3d089f; font-size: .92rem; }
.plans-comparison-table tbody tr:nth-child(even) { background: #fbf9fe; }
.plans-comparison-table tbody tr:last-child th, .plans-comparison-table tbody tr:last-child td { border-bottom: 0; }
.plans-comparison-table a { color: #5c0cfc; font-weight: 800; white-space: nowrap; }
.plans-hub-note { max-width: 960px; margin: 16px auto 0; color: #6e6777; font-size: .78rem; line-height: 1.6; text-align: center; }
.plans-hub-cta { margin-top: 28px; text-align: center; }
.plans-detail-list { display: grid; gap: 16px; }
.plans-detail-list article { display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; padding: 27px 29px; border: 1px solid #e2dbea; border-radius: 16px; background: #fff; box-shadow: 0 10px 28px rgba(34,4,74,.05); scroll-margin-top: 100px; }
.plans-detail-list article > div > span { color: #5c0cfc; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.plans-detail-list h2 { margin: 6px 0 10px; font-size: 1.55rem; }
.plans-detail-list p { margin: 0; color: #5f5868; line-height: 1.65; }
.plans-detail-list ul { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 15px; }
.plans-detail-list li { position: relative; padding-left: 18px; color: #4f4858; font-size: .82rem; font-weight: 700; }
.plans-detail-list li::before { content: "✓"; position: absolute; left: 0; color: #13b966; }
.plans-detail-list article > a { min-width: 205px; padding: 12px 17px; border: 1px solid #5c0cfc; border-radius: 999px; color: #5c0cfc; font-size: .76rem; font-weight: 800; text-align: center; text-transform: uppercase; }
.plans-detail-list .premium-detail { border-color: #4d258c; background: linear-gradient(145deg,#21043f,#3e0a8f); }
.plans-detail-list .premium-detail h2 { color: #fff; }
.plans-detail-list .premium-detail p, .plans-detail-list .premium-detail li { color: rgba(255,255,255,.78); }
.plans-detail-list .premium-detail > div > span { color: #d3c2ff; }
.plans-detail-list .premium-detail > a { border-color: #fff; color: #fff; }
.contracting-section, .specialist-section { background: #fff; }
.contracting-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 17px; }
.contracting-grid article { padding: 25px; border: 1px solid #e4deed; border-radius: 15px; background: #fff; box-shadow: 0 10px 28px rgba(34,4,74,.06); scroll-margin-top: 100px; }
.contracting-grid h3 { margin: 0 0 10px; font-size: 1.08rem; }
.contracting-grid p { margin: 0; color: #625b6a; font-size: .88rem; line-height: 1.65; }
.plans-network-section { background: #f8f6fc; }
.plans-network-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; }
.plans-network-grid article { position: relative; min-height: 158px; display: grid; place-items: center; align-content: center; gap: 14px; padding: 21px; overflow: hidden; border: 1px solid #e2dbea; border-radius: 14px; background: #fff; text-align: center; }
.plans-network-grid img { width: min(155px,100%); height: 58px; object-fit: contain; }
.plans-network-grid h3 { margin: 0; font-size: .85rem; }
.plans-network-grid .plans-network-photo { isolation: isolate; padding: 0; }
.plans-network-photo::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,transparent 20%,rgba(17,8,39,.88)); }
.plans-network-grid .plans-network-photo img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.plans-network-photo h3 { align-self: end; width: 100%; padding: 20px; color: #fff; }
.network-generic span { display: grid; place-items: center; width: 57px; height: 57px; border-radius: 50%; background: #5c0cfc; color: #fff; font-size: 1.7rem; }
.plans-price-layout { display: grid; grid-template-columns: 1.08fr .92fr; gap: 65px; align-items: center; }
.plans-price-layout > div > p { margin-bottom: 26px; color: #5f5868; font-size: 1rem; line-height: 1.75; }
.plans-price-layout > ul { display: grid; grid-template-columns: repeat(2,1fr); gap: 11px; }
.plans-price-layout > ul li { padding: 15px; border: 1px solid #e2dbea; border-radius: 11px; background: #fff; color: #494152; font-size: .87rem; font-weight: 700; }
.plans-price-layout > ul li::before { content: "✓"; margin-right: 8px; color: #13b966; }
.specialist-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.specialist-grid article { position: relative; padding: 22px 20px 22px 51px; border: 1px solid #e4deed; border-radius: 13px; background: #fff; color: #443c4d; font-weight: 700; }
.specialist-grid article::before { content: "✓"; position: absolute; left: 20px; top: 20px; display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; background: #13b966; color: #fff; font-size: .72rem; }
.plans-hub-faq-list { max-width: 920px; margin: 0 auto; border-top: 1px solid #ded6e9; }
.plans-hub-faq-list details { border-bottom: 1px solid #ded6e9; }
.plans-hub-faq-list summary { position: relative; padding: 21px 50px 21px 0; color: #261d31; font-weight: 800; cursor: pointer; list-style: none; }
.plans-hub-faq-list summary::-webkit-details-marker { display: none; }
.plans-hub-faq-list summary::after { content: "+"; position: absolute; right: 0; top: 14px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #d7cbe8; border-radius: 50%; color: #5c0cfc; font-size: 1.2rem; }
.plans-hub-faq-list details[open] summary::after { content: "−"; }
.plans-hub-faq-list p { margin: 0; padding: 0 50px 21px 0; color: #625b6a; line-height: 1.7; }

@media (max-width: 1024px) {
  .plans-hub-hero-grid { grid-template-columns: 1fr; grid-template-areas: "copy" "form" "support"; row-gap: 28px; }
  .plans-hub-copy, .plans-hub-support { max-width: 820px; margin: 0 auto; text-align: center; }
  .plans-hub-form { width: min(680px,100%); margin: 0 auto; }
  .plans-hub-support > ul { max-width: 680px; margin-left: auto; margin-right: auto; text-align: left; }
  .plans-hub-actions { justify-content: center; }
  .profile-nav-grid, .specialist-grid { grid-template-columns: repeat(2,1fr); }
  .contracting-grid, .plans-network-grid { grid-template-columns: repeat(2,1fr); }
  .plans-price-layout { gap: 38px; }
}

@media (max-width: 720px) {
  .plans-hub-hero { padding: 52px 0; }
  .plans-hub-copy h1 { font-size: clamp(2.1rem,11vw,3rem); }
  .plans-hub-support > ul, .plans-hub-form-row, .profile-nav-grid, .contracting-grid, .plans-network-grid, .plans-price-layout, .plans-price-layout > ul, .specialist-grid { grid-template-columns: 1fr; }
  .plans-hub-actions { display: grid; grid-template-columns: 1fr; }
  .plans-hub-actions .plans-hub-btn { width: 100%; }
  .plans-hub-form { padding: 22px 18px; }
  .plans-hub-section { padding: 58px 0; }
  .plans-hub-heading { margin-bottom: 29px; text-align: left; }
  .plans-hub-heading h2, .plans-price-layout h2 { font-size: 1.95rem; }
  .plans-comparison-wrap { margin-left: -16px; margin-right: -16px; border-left: 0; border-right: 0; border-radius: 0; }
  .plans-comparison-wrap::before { content: "Deslize para comparar todos os planos"; display: block; padding: 11px 16px; background: #f1ecfb; color: #5c0cfc; font-size: .72rem; font-weight: 800; text-transform: uppercase; }
  .plans-detail-list article { grid-template-columns: 1fr; gap: 20px; padding: 23px 20px; }
  .plans-detail-list article > a { width: 100%; min-width: 0; }
  .plans-hub-cta .plans-hub-btn { width: 100%; }
  .plans-hub-faq-list p { padding-right: 0; }
}

/* Navegacao interna global */
.nav-dropdown { position: relative; }
.nav-dropdown-trigger { display: inline-flex; align-items: center; gap: 6px; }
.nav-dropdown-trigger::after { content: ""; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); }
.nav-dropdown-menu { position: absolute; top: calc(100% + 16px); left: 50%; z-index: 1100; width: 310px; display: grid; gap: 4px; padding: 10px; border: 1px solid #e7e1ee; border-radius: 14px; background: #fff; box-shadow: 0 22px 55px rgba(34,4,74,.16); opacity: 0; visibility: hidden; transform: translate(-50%,8px); transition: .2s ease; }
.nav-dropdown:hover .nav-dropdown-menu, .nav-dropdown:focus-within .nav-dropdown-menu { opacity: 1; visibility: visible; transform: translate(-50%,0); }
.nav-dropdown-menu a { display: grid; gap: 2px; padding: 11px 12px; border-radius: 9px; color: #31293a; }
.nav-dropdown-menu a:hover { background: #f5f0ff; color: #5c0cfc; }
.nav-dropdown-menu strong { font-size: .86rem; }
.nav-dropdown-menu span { color: #746d7c; font-size: .72rem; }

.related-navigation { padding: 64px 0; border-top: 1px solid #ebe6f1; background: #faf9fc; }
.related-navigation-heading { max-width: 760px; margin: 0 auto 30px; text-align: center; }
.related-navigation-heading > span { display: inline-block; margin-bottom: 9px; color: #5c0cfc; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.related-navigation-heading h2 { margin: 0; font-size: clamp(1.75rem,3vw,2.35rem); }
.related-navigation-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.related-navigation-card { padding: 22px; border: 1px solid #e5dfec; border-radius: 15px; background: #fff; box-shadow: 0 10px 28px rgba(34,4,74,.05); }
.related-navigation-main { display: grid; gap: 7px; padding-bottom: 17px; border-bottom: 1px solid #ece7f2; }
.related-navigation-main strong { color: #251d2e; font-size: 1.04rem; }
.related-navigation-main span { color: #6b6473; font-size: .83rem; line-height: 1.55; }
.related-navigation-links { display: grid; gap: 8px; padding-top: 16px; }
.related-navigation-links a { position: relative; padding-left: 17px; color: #514958; font-size: .82rem; font-weight: 700; }
.related-navigation-links a::before { content: "→"; position: absolute; left: 0; color: #5c0cfc; }
.related-navigation-links a:hover { color: #5c0cfc; }

@media (max-width: 1024px) {
  .related-navigation-grid { grid-template-columns: 1fr; max-width: 720px; margin: 0 auto; }
}

@media (max-width: 720px) {
  .related-navigation { padding: 50px 0; }
  .related-navigation-heading { text-align: left; }
}

h1, h2, h3, h4, h5, h6 { font-weight: var(--font-bold); line-height: var(--leading-tight); color: var(--color-text-primary); }

p { margin-bottom: var(--space-4); }

a { color: var(--color-accent); text-decoration: none; transition: var(--transition-fast); }

a:hover { color: var(--color-accent-light); }

img { max-width: 100%; display: block; }

ul { list-style: none; }

button { font-family: var(--font-family); cursor: pointer; }

.container { width: 100%; max-width: 1200px; margin: 0px auto; padding: 0 var(--space-6); }

.navbar { background: white; box-shadow: var(--shadow-sm); position: sticky; top: 0px; z-index: 1000; }

.navbar-inner { display: flex; align-items: center; justify-content: space-between; padding: var(--space-4) 0; }

.navbar-logo img { height: 48px; object-fit: contain; }

.navbar-links { display: flex; align-items: center; gap: var(--space-8); }

.nav-link { color: var(--color-text-secondary); font-weight: var(--font-medium); font-size: var(--text-base); transition: var(--transition-fast); }

.nav-link:hover { color: var(--color-primary-500); }

.navbar-actions { display: flex; align-items: center; gap: var(--space-4); }

.navbar-phone { color: var(--color-text-primary); font-weight: var(--font-medium); font-size: var(--text-sm); white-space: nowrap; }

.navbar-phone:hover { color: var(--color-primary-500); }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); padding: var(--space-3) var(--space-6); font-size: var(--text-base); font-weight: var(--font-semibold); border-radius: var(--radius-md); border: 1px solid transparent; cursor: pointer; transition: all var(--transition-normal); text-decoration: none; }

.btn-primary { background: var(--gradient-primary); color: white; }

.btn-primary:hover { transform: translateY(-2px); box-shadow: var(--shadow-primary); filter: brightness(1.1); color: white; }

.btn-pill { border-radius: var(--radius-full); }

.hamburger { background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; padding: var(--space-2); color: var(--color-text-primary); display: none; }

.show-mobile { display: none; }

@media (max-width: 992px) {
  .hide-mobile { display: none !important; }
  .show-mobile { display: flex !important; }
  .hamburger { display: flex; }
  .navbar-inner { gap: var(--space-3); }
  .navbar-actions { gap: var(--space-2); min-width: 0px; }
  .navbar .btn-whatsapp { display: none !important; }
  .navbar .btn-whatsapp span { display: none; }
  .navbar .icon-whatsapp { width: 22px; height: 22px; }
  .navbar-logo img { height: 38px; }
}

@media (max-width: 768px) {
  .container { padding-left: var(--space-4); padding-right: var(--space-4); }
  .navbar-inner { min-height: 72px; padding: var(--space-3) 0; }
  .navbar-actions { flex: 0 0 auto; }
  .navbar .btn-whatsapp { display: none !important; }
  .hamburger { width: 44px; height: 44px; align-items: center; justify-content: center; flex-shrink: 0; }
}

.mobile-menu { display: none; flex-direction: column; background: white; border-top: 1px solid var(--color-border); padding: var(--space-4) var(--space-6); gap: var(--space-1); }

.mobile-menu.open { display: flex; }

.mobile-link { color: var(--color-text-secondary); font-weight: var(--font-medium); font-size: var(--text-base); padding: var(--space-3) 0; border-bottom: 1px solid var(--color-border); transition: var(--transition-fast); }

.mobile-link:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }

.mobile-link:hover { color: var(--color-primary-500); }

.hero-section { position: relative; width: 100%; min-height: 650px; background: linear-gradient(135deg, rgb(255, 252, 245) 0%, rgb(240, 235, 255) 100%); overflow: hidden; display: flex; align-items: stretch; padding-top: 50px; }

.hero-shape { position: absolute; filter: blur(80px); z-index: 1; opacity: 0.5; border-radius: 50%; }

.shape-1 { top: -10%; right: -5%; width: 600px; height: 600px; background: rgb(225, 212, 255); }

.shape-2 { bottom: 5%; left: -5%; width: 500px; height: 500px; background: rgb(255, 248, 230); }

.hero-container { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; gap: var(--space-12); padding-bottom: 0px; }

.hero-content { max-width: 620px; display: flex; flex-direction: column; justify-content: center; }

.hero-title { font-size: clamp(2rem, 5vw, 4rem); font-weight: 800; line-height: 1.05; color: var(--color-text-primary); letter-spacing: -0.02em; margin-bottom: var(--space-8); }

.text-highlight {
  display: inline;
  background: var(--gradient-primary);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--color-primary-500);
}

@supports not (-webkit-background-clip: text) {
  .text-highlight {
    background: none;
    color: var(--color-primary-500);
  }
}

.hero-description { font-size: var(--text-lg); line-height: 1.6; color: rgb(74, 74, 74); margin-bottom: var(--space-10); max-width: 500px; }

.hero-cta-group { display: flex; }

.btn-claimable { display: inline-flex; align-items: center; gap: 12px; background: var(--color-accent); color: var(--color-primary-50); padding: 20px 40px; border-radius: 50px; font-weight: 600; font-size: var(--text-base); border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; cursor: pointer; text-decoration: none; transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); box-shadow: 0 10px 25px var(--color-secondary-500); }

.btn-claimable:hover { transform: translateY(-4px) scale(1.02); box-shadow: 0 15px 35px var(--color-secondary-500); background: var(--color-accent-hover); color: white; }

.hero-visual { display: flex; justify-content: flex-end; align-items: flex-end; position: relative; height: 100%; margin-right: -10%; }

.hero-image-wrapper { position: relative; width: 100%; max-width: 800px; line-height: 0; z-index: 10; }

.hero-main-img { width: 150%; height: auto; max-height: 85vh; object-fit: contain; display: block; }

.animate-slide-up { animation: 0.8s cubic-bezier(0.2, 0.6, 0.2, 1) 0s 1 normal forwards running slideUp; opacity: 0; }

.animate-scale-in { animation: 1s cubic-bezier(0.2, 0.6, 0.2, 1) 0s 1 normal forwards running scaleIn; }

@keyframes slideUp { 
  0% { transform: translateY(40px); opacity: 0; }
  100% { transform: translateY(0px); opacity: 1; }
}

@keyframes scaleIn { 
  0% { transform: scale(0.95); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}

@media (max-width: 1024px) {
  .hero-container { grid-template-columns: 1fr; gap: var(--space-16); text-align: center; }
  .hero-content { margin: 0px auto; }
  .hero-description { margin-left: auto; margin-right: auto; }
  .hero-cta-group { justify-content: center; }
  .hero-visual { justify-content: center; margin-right: 0px; }
}

@media (max-width: 768px) {
  .hero-section { min-height: auto; padding-top: 150px; }
  .hero-title { font-size: 2.2rem; }
  .hero-image-wrapper { width: 80%; }
  .hero-main-img { width: 100%; }
}

.badge { display: inline-block; background: var(--color-primary-50); color: var(--color-primary-600); font-size: var(--text-sm); font-weight: var(--font-semibold); padding: var(--space-2) var(--space-4); border-radius: var(--radius-full); border: 1px solid var(--color-primary-200); letter-spacing: 0.05em; text-transform: uppercase; }

.script-highlight { font-weight: var(--font-bold); color: var(--color-primary-600); font-size: 1em; display: inline-block; }

.benefits-section { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(250, 250, 250) 100%); padding: var(--section-padding); overflow: hidden; }

.benefits-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: var(--space-12); }

.header-text h2 { margin-top: var(--space-4); max-width: 600px; font-size: var(--text-4xl); font-weight: var(--font-bold); color: var(--color-text-primary); }

.btn-view-all { display: inline-flex; align-items: center; gap: var(--space-2); background: var(--color-accent); color: white; padding: var(--space-3) var(--space-6); border-radius: var(--radius-full); font-size: var(--text-base); font-weight: var(--font-medium); white-space: nowrap; transition: all var(--transition-normal); text-decoration: none; }

.btn-view-all:hover { background: var(--color-accent-hover); transform: translateX(4px); color: white; }

.benefits-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-6); }

.benefits-footer-action { display: flex; justify-content: center; margin-top: var(--space-10); }

.benefit-card { background: white; border-radius: var(--radius-2xl); overflow: hidden; box-shadow: var(--shadow-md); transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); cursor: pointer; opacity: 0; transform: translateY(30px); }

.benefit-card.visible { opacity: 1; transform: translateY(0px); }

.benefit-card:hover { transform: translateY(-8px); box-shadow: rgba(92, 12, 252, 0.15) 0px 20px 40px; }

.card-image-container { height: 280px; width: 100%; position: relative; overflow: hidden; }

.card-image-container img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s; }

.benefit-card:hover .card-image-container img { transform: scale(1.05); }

.arrow-button { position: absolute; top: var(--space-4); right: var(--space-4); background: white; width: 48px; height: 48px; border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; box-shadow: var(--shadow-md); border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; cursor: pointer; transition: 0.3s; z-index: 10; }

.benefit-card:hover .arrow-button { background: var(--color-accent); }

.benefit-card:hover .arrow-button .arrow-icon { stroke: white !important; transform: rotate(45deg); }

.arrow-icon { transition: 0.3s; }

.card-content { padding: var(--space-6); }

.card-content h3 { font-size: var(--text-xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-bottom: var(--space-3); }

.card-content p { font-size: var(--text-base); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin: 0px; }

@media (max-width: 768px) {
  .benefits-section { padding: var(--space-16) 0; }
  .benefits-header { flex-direction: column; align-items: flex-start; gap: var(--space-6); }
  .header-text h2 { font-size: var(--text-3xl); }
  .benefits-grid { grid-template-columns: 1fr; }
  .card-image-container { height: 220px; }
}

.plans-section { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(250, 248, 255) 100%); padding: var(--section-padding); overflow: hidden; }

.plans-container { max-width: 1280px; margin: 0px auto; padding: 0 var(--space-6); }

.section-header { text-align: center; margin-bottom: var(--space-16); display: flex; flex-direction: column; align-items: center; }

.section-header .badge { margin-bottom: var(--space-4); }

.main-headline { font-size: var(--text-4xl); font-weight: var(--font-bold); color: var(--color-text-primary); max-width: 800px; margin: 0px auto; line-height: 1.2; }

.main-headline em {
  display: inline-block;
  background: var(--gradient-primary);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--color-primary-500);
  font-size: 1.1em;
  font-style: italic;
}

.subheadline { font-size: var(--text-lg); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-top: var(--space-4); max-width: 700px; margin-bottom: 0px; }

.plans-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: var(--space-6); align-items: stretch; }

.plan-card { background: white; border-radius: var(--radius-2xl); padding: var(--space-8); box-shadow: var(--shadow-md); border: 2px solid transparent; transition: 0.3s; position: relative; display: flex; flex-direction: column; height: 100%; }

.plan-card:hover { transform: translateY(-8px); box-shadow: rgba(92, 12, 252, 0.15) 0px 20px 40px; border-color: var(--color-primary-200); }

.plan-card:hover .plan-image { transform: scale(1.1); }

.plan-card-premium { border-color: rgba(92, 12, 252, 0.18); }

.plan-card-badge { align-self: flex-start; margin-bottom: var(--space-4); padding: 0.45rem 0.75rem; border-radius: var(--radius-full); background: linear-gradient(135deg, rgb(23, 23, 23) 0%, rgb(61, 8, 159) 100%); color: rgb(255, 255, 255); font-size: var(--text-xs); font-weight: var(--font-bold); }

.icon-container-image { width: 100%; height: 280px; border-radius: var(--radius-xl); overflow: hidden; margin-bottom: var(--space-6); background: var(--color-primary-50); }

.plan-image { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }

.plan-title { font-size: var(--text-2xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-bottom: var(--space-2); line-height: 1.3; }

.plan-price { font-size: var(--text-3xl); font-weight: var(--font-bold); color: var(--color-primary-500); margin-bottom: 0.25rem; line-height: 1; }

.plan-subtitle { font-size: var(--text-sm); color: var(--color-text-tertiary); margin-bottom: var(--space-6); }

.card-divider { height: 1px; background: var(--color-border); margin: var(--space-6) 0; width: 100%; }

.plan-intro { font-size: 0.9rem; margin-bottom: 1rem; color: var(--color-primary-600); font-weight: 600; }

.features-list { padding: 0px; margin-bottom: var(--space-8); flex: 1 1 0%; display: flex; flex-direction: column; gap: var(--space-3); }

.feature-item { display: flex; align-items: flex-start; gap: var(--space-3); font-size: var(--text-base); color: var(--color-text-secondary); }

.check-container { width: 20px; height: 20px; min-width: 20px; display: flex; align-items: center; justify-content: center; background: var(--color-primary-50); border-radius: var(--radius-full); color: var(--color-primary-500); margin-top: 2px; }

.plan-feature-group { margin-bottom: var(--space-6); }

.plan-feature-group h4 { margin-bottom: var(--space-3); color: var(--color-text-primary); font-size: var(--text-base); font-weight: var(--font-bold); }

.plan-feature-group .features-list { margin-bottom: 0px; flex: 0 1 auto; }

.view-more-btn { display: inline-flex; align-items: center; gap: 4px; background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; color: var(--color-primary-600); cursor: pointer; font-size: 0.85rem; font-weight: 600; margin-top: 0.5rem; margin-bottom: 1rem; padding: 0px; transition: var(--transition-fast); }

.view-more-btn:hover { color: var(--color-primary-800); }

.plan-footer { font-size: 0.85rem; margin-top: 1rem; color: var(--color-text-secondary); font-style: italic; margin-bottom: var(--space-4); }

.plan-note { margin: 0 0 var(--space-5); color: var(--color-text-tertiary); font-size: var(--text-xs); line-height: 1.55; }

.cta-button { display: block; width: 100%; text-align: center; background: transparent; color: var(--color-primary-500); border: 2px solid var(--color-primary-500); padding: var(--space-4); border-radius: var(--radius-full); font-size: var(--text-base); font-weight: var(--font-semibold); transition: 0.2s; cursor: pointer; margin-top: auto; text-decoration: none; }

.cta-button:hover { background: var(--gradient-primary); color: white; border-color: transparent; transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.2) 0px 4px 12px; }

.plan-selector-grid { gap: var(--space-7); }

.plan-selector-grid .plan-option-card { min-height: 292px; padding: var(--space-7); overflow: hidden; border: 1px solid rgba(92, 12, 252, 0.14); border-radius: 28px; background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.96)), radial-gradient(circle at right top, rgba(92, 12, 252, 0.14), transparent 44%); box-shadow: rgba(22, 22, 35, 0.09) 0px 18px 45px; }

.plan-selector-grid .plan-option-card::before { content: ""; position: absolute; inset: 0px 0px auto; height: 4px; background: linear-gradient(90deg, rgb(92, 12, 252), rgb(20, 184, 166)); }

.plan-selector-grid .plan-option-card::after { content: ""; position: absolute; right: -42px; top: -42px; width: 132px; height: 132px; border: 1px solid rgba(92, 12, 252, 0.18); border-radius: 50%; background: radial-gradient(circle, rgba(20, 184, 166, 0.14), transparent 68%); pointer-events: none; }

.plan-selector-grid .plan-option-card:hover { transform: translateY(-6px); border-color: rgba(92, 12, 252, 0.36); box-shadow: rgba(92, 12, 252, 0.14) 0px 26px 58px; }

.plan-selector-grid .plan-option-card-featured { background: linear-gradient(145deg, rgba(24, 24, 37, 0.98), rgba(63, 21, 137, 0.96)), radial-gradient(circle at right top, rgba(20, 184, 166, 0.2), transparent 44%); border-color: rgba(255, 255, 255, 0.14); }

.plan-selector-grid .plan-option-card-featured .plan-title, .plan-selector-grid .plan-option-card-featured .plan-code, .plan-selector-grid .plan-option-card-featured .plan-highlights li { color: rgb(255, 255, 255); }

.plan-selector-grid .plan-option-card-featured .plan-subtitle { color: rgba(255, 255, 255, 0.74); }

.plan-card-topline { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-5); }

.plan-chip { display: inline-flex; align-items: center; min-height: 32px; padding: 0 var(--space-4); border-radius: 999px; background: rgba(92, 12, 252, 0.09); color: var(--color-primary-600); font-size: var(--text-xs); font-weight: var(--font-bold); text-transform: uppercase; letter-spacing: 0.08em; }

.plan-option-card-featured .plan-chip { background: rgba(255, 255, 255, 0.14); color: rgb(255, 255, 255); }

.plan-code { color: rgba(92, 12, 252, 0.24); font-size: var(--text-2xl); font-weight: var(--font-bold); }

.plan-selector-grid .plan-title, .plan-selector-grid .plan-subtitle, .plan-highlights, .plan-option-button { position: relative; z-index: 1; }

.plan-highlights { display: grid; gap: var(--space-2); margin: var(--space-5) 0 var(--space-7); padding: 0px; list-style: none; }

.plan-highlights li { position: relative; padding-left: 24px; color: var(--color-text-secondary); font-size: var(--text-sm); }

.plan-highlights li::before { content: ""; position: absolute; left: 0px; top: 0.58em; width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, rgb(92, 12, 252), rgb(20, 184, 166)); box-shadow: rgba(92, 12, 252, 0.08) 0px 0px 0px 4px; }

.plan-selector-grid .plan-option-button { width: 100%; margin-top: auto; border: 0px; background: linear-gradient(90deg, var(--color-primary-500), var(--color-primary-700)); color: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.22) 0px 16px 30px; }

.plan-selector-grid .plan-option-button:hover { transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.28) 0px 20px 36px; }

.plan-option-card-featured .plan-option-button { background: linear-gradient(90deg, rgb(255, 255, 255), rgb(233, 221, 255)); color: var(--color-primary-700); }

.plan-selector-grid { gap: var(--space-6); }

.plan-selector-grid .plan-option-card { min-height: 278px; padding: var(--space-7); border: 1px solid rgba(92, 12, 252, 0.12); border-radius: 22px; background: linear-gradient(rgb(255, 255, 255) 0%, rgb(251, 250, 255) 100%); box-shadow: rgba(21, 18, 38, 0.08) 0px 16px 36px; }

.plan-selector-grid .plan-option-card::before { height: 100%; width: 5px; background: linear-gradient(rgb(92, 12, 252), rgb(20, 184, 166)); }

.plan-selector-grid .plan-option-card::after { display: none; }

.plan-selector-grid .plan-option-card:hover { transform: translateY(-4px); border-color: rgba(92, 12, 252, 0.24); box-shadow: rgba(21, 18, 38, 0.12) 0px 22px 46px; }

.plan-selector-grid .plan-option-card-featured { border-color: rgba(92, 12, 252, 0.22); background: linear-gradient(rgb(255, 255, 255) 0%, rgb(250, 247, 255) 100%), radial-gradient(circle at right top, rgba(92, 12, 252, 0.12), transparent 34%); }

.plan-selector-grid .plan-option-card-featured::before { background: linear-gradient(rgb(17, 24, 39), rgb(92, 12, 252)); }

.plan-selector-grid .plan-option-card-featured .plan-title, .plan-selector-grid .plan-option-card-featured .plan-code, .plan-selector-grid .plan-option-card-featured .plan-highlights li { color: var(--color-text-primary); }

.plan-selector-grid .plan-option-card-featured .plan-subtitle { color: var(--color-text-secondary); }

.plan-card-topline { margin-bottom: var(--space-4); }

.plan-chip { min-height: 30px; padding: 0 var(--space-3); border: 1px solid rgba(92, 12, 252, 0.12); background: rgb(244, 239, 255); color: var(--color-primary-700); font-size: 0.68rem; }

.plan-option-card-featured .plan-chip { border-color: rgba(17, 24, 39, 0.12); background: rgb(17, 24, 39); color: rgb(255, 255, 255); }

.plan-code { color: rgba(17, 24, 39, 0.18); font-size: var(--text-xl); }

.plan-selector-grid .plan-title { margin-bottom: var(--space-2); font-size: clamp(1.35rem, 2vw, 1.75rem); }

.plan-selector-grid .plan-subtitle { min-height: 44px; margin-bottom: 0px; color: var(--color-text-secondary); font-size: var(--text-base); line-height: 1.5; }

.plan-highlights { gap: 0px; margin: var(--space-5) 0 var(--space-6); border-top: 1px solid rgba(92, 12, 252, 0.1); }

.plan-highlights li { padding: 10px 0px 10px 26px; border-bottom: 1px solid rgba(92, 12, 252, 0.1); color: var(--color-text-secondary); }

.plan-highlights li::before { top: 1.08em; width: 7px; height: 7px; background: var(--color-primary-500); box-shadow: rgba(92, 12, 252, 0.08) 0px 0px 0px 4px; }

.plan-selector-grid .plan-option-button { min-height: 52px; border: 1px solid transparent; border-radius: var(--radius-full); background: var(--color-primary-500); color: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.2) 0px 14px 28px; }

.plan-selector-grid .plan-option-button::after { content: "→"; margin-left: 10px; transition: transform 0.2s; }

.plan-selector-grid .plan-option-button:hover { background: var(--color-primary-700); transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.26) 0px 18px 34px; }

.plan-selector-grid .plan-option-button:hover::after { transform: translateX(3px); }

.plan-option-card-featured .plan-option-button { background: rgb(17, 24, 39); color: rgb(255, 255, 255); }

.plan-option-card-featured .plan-option-button:hover { background: var(--color-primary-700); }

.plans-section .plan-selector-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 22px; align-items: stretch; }

.plans-section .plan-selector-grid .plan-option-card { min-height: 0px; padding: 26px; border: 1px solid rgb(232, 232, 243); border-radius: 20px; background: rgb(255, 255, 255); box-shadow: rgba(17, 24, 39, 0.07) 0px 14px 34px; overflow: hidden; display: flex; flex-direction: column; }

.plans-section .plan-selector-grid .plan-option-card::before { width: auto; height: 4px; inset: 0px 0px auto; background: linear-gradient(90deg, rgb(92, 12, 252), rgb(124, 58, 237)); }

.plans-section .plan-selector-grid .plan-option-card::after { display: block; content: ""; position: absolute; inset: auto 22px 78px; height: 1px; background: rgb(237, 237, 247); }

.plans-section .plan-selector-grid .plan-option-card:hover { transform: translateY(-5px); border-color: rgba(92, 12, 252, 0.22); box-shadow: rgba(17, 24, 39, 0.11) 0px 22px 46px; }

.plans-section .plan-card-topline { margin-bottom: 18px; }

.plans-section .plan-chip { min-height: 28px; padding: 0px 12px; border: 0px; border-radius: 999px; background: rgb(240, 235, 255); color: rgb(61, 8, 159); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.06em; }

.plans-section .plan-code { color: rgb(200, 196, 216); font-size: 0.86rem; letter-spacing: 0.08em; text-transform: uppercase; }

.plans-section .plan-selector-grid .plan-title { margin: 0px 0px 8px; font-size: 1.55rem; line-height: 1.15; }

.plans-section .plan-selector-grid .plan-subtitle { min-height: 48px; margin: 0px; color: var(--color-text-secondary); font-size: 0.98rem; }

.plans-section .plan-highlights { gap: 8px; margin: 22px 0px 28px; border: 0px; }

.plans-section .plan-highlights li { min-height: 34px; padding: 0px 0px 0px 28px; border: 0px; color: var(--color-text-primary); font-size: 0.94rem; }

.plans-section .plan-highlights li::before { top: 0.42em; width: 16px; height: 16px; background: rgb(240, 235, 255); box-shadow: none; }

.plans-section .plan-highlights li::after { content: ""; position: absolute; left: 5px; top: 0.72em; width: 6px; height: 3px; border-left: 2px solid rgb(92, 12, 252); border-bottom: 2px solid rgb(92, 12, 252); transform: rotate(-45deg); }

.plans-section .plan-selector-grid .plan-option-button { min-height: 50px; margin-top: auto; border: 1px solid rgb(92, 12, 252); border-radius: 14px; background: rgb(255, 255, 255); color: rgb(92, 12, 252); box-shadow: none; }

.plans-section .plan-selector-grid .plan-option-button::after { content: "→"; margin-left: 8px; }

.plans-section .plan-selector-grid .plan-option-button:hover { background: rgb(92, 12, 252); color: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.2) 0px 14px 26px; }

.plans-section .plan-selector-grid .plan-option-card-featured { border-color: rgb(33, 18, 56); background: linear-gradient(160deg, rgb(23, 17, 38) 0%, rgb(36, 16, 63) 100%); color: rgb(255, 255, 255); }

.plans-section .plan-selector-grid .plan-option-card-featured::before { background: linear-gradient(90deg, rgb(167, 139, 250), rgb(20, 184, 166)); }

.plans-section .plan-selector-grid .plan-option-card-featured::after { background: rgba(255, 255, 255, 0.12); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-chip { background: rgba(255, 255, 255, 0.12); color: rgb(255, 255, 255); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-code { color: rgba(255, 255, 255, 0.46); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-title, .plans-section .plan-selector-grid .plan-option-card-featured .plan-highlights li { color: rgb(255, 255, 255); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-subtitle { color: rgba(255, 255, 255, 0.74); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-highlights li::before { background: rgba(255, 255, 255, 0.14); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-highlights li::after { border-color: rgb(167, 139, 250); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-option-button { border-color: transparent; background: rgb(255, 255, 255); color: rgb(36, 16, 63); }

.plans-section .plan-selector-grid .plan-option-card-featured .plan-option-button:hover { background: rgb(237, 233, 254); color: rgb(36, 16, 63); }

@media (max-width: 1100px) {
  .plans-section .plan-selector-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (max-width: 768px) {
  .plans-section .plan-selector-grid { grid-template-columns: 1fr; }
}

.amil-lines-section { background: rgb(255, 255, 255); padding: 72px 0px 58px; }

.amil-lines-section .plans-container { max-width: 1120px; }

.amil-lines-section .section-header { margin-bottom: 60px; }

.amil-lines-section .section-header .badge { margin-bottom: 16px; padding: 8px 17px; border: 1px solid rgba(92, 12, 252, 0.28); border-radius: 999px; background: rgb(247, 241, 255); color: rgb(75, 0, 216); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.04em; }

.amil-lines-section .main-headline { font-size: clamp(2rem, 3vw, 2.25rem); line-height: 1.15; font-weight: 800; }

.amil-lines-section .plan-selector-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px; }

.amil-lines-section .plan-selector-grid .plan-option-card, .amil-lines-section .plan-selector-grid .plan-option-card-featured { min-height: 307px; padding: 14px 14px 22px; border: 1px solid rgba(92, 12, 252, 0.18); border-radius: 16px; background: rgb(255, 255, 255); box-shadow: rgba(18, 18, 31, 0.06) 0px 16px 38px; overflow: hidden; text-align: center; display: flex; flex-direction: column; }

.amil-lines-section .plan-selector-grid .plan-option-card::before, .amil-lines-section .plan-selector-grid .plan-option-card::after { display: none; }

.amil-lines-section .plan-selector-grid .plan-option-card:hover { transform: translateY(-5px); border-color: rgba(92, 12, 252, 0.28); box-shadow: rgba(18, 18, 31, 0.12) 0px 22px 44px; }

.amil-lines-section .plan-card-media { width: 100%; height: 102px; overflow: hidden; border-radius: 10px; background: rgb(242, 243, 247); }

.amil-lines-section .plan-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.35s; }

.amil-lines-section .plan-selector-grid .plan-option-card:hover .plan-card-media img { transform: scale(1.04); }

.amil-lines-section .plan-selector-grid .plan-title { position: relative; margin: 18px 14px 10px; color: rgb(22, 22, 34); font-size: 1.06rem; line-height: 1.25; font-weight: 800; }

.amil-lines-section .plan-selector-grid .plan-title::after { content: ""; display: block; width: 32px; height: 3px; margin: 12px auto 0px; border-radius: 999px; background: linear-gradient(90deg, rgb(92, 12, 252), rgb(20, 184, 166)); }

.amil-lines-section .plan-selector-grid .plan-subtitle { min-height: 52px; margin: 0px 16px 18px; color: rgb(91, 98, 112); font-size: 0.88rem; line-height: 1.5; }

.amil-lines-section .plan-selector-grid .plan-option-card-featured .plan-title { color: rgb(22, 22, 34); }

.amil-lines-section .plan-selector-grid .plan-option-card-featured .plan-subtitle { color: rgb(91, 98, 112); }

.amil-lines-section .plan-selector-grid .plan-option-button, .amil-lines-section .plan-selector-grid .plan-option-card-featured .plan-option-button { width: auto; min-height: 38px; margin: auto auto 0px; padding: 0px 20px; border: 0px; border-radius: 999px; background: linear-gradient(90deg, rgb(92, 12, 252), rgb(61, 8, 159)); color: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.18) 0px 12px 24px; font-size: 0.84rem; font-weight: 800; }

.amil-lines-section .plan-selector-grid .plan-option-button::after { content: none; }

.amil-lines-section .plan-selector-grid .plan-option-button:hover, .amil-lines-section .plan-selector-grid .plan-option-card-featured .plan-option-button:hover { background: rgb(47, 15, 183); color: rgb(255, 255, 255); transform: translateY(-1px); box-shadow: rgba(75, 24, 245, 0.24) 0px 14px 26px; }

@media (max-width: 1100px) {
  .amil-lines-section .plan-selector-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (max-width: 720px) {
  .amil-lines-section .plan-selector-grid { grid-template-columns: 1fr; }
  .amil-lines-section .plan-card-media { height: 132px; }
}

.animate-fade-in { animation: 0.6s ease-out 0s 1 normal forwards running fadeInUp; opacity: 0; }

@keyframes fadeInUp { 
  0% { opacity: 0; transform: translateY(30px); }
  100% { opacity: 1; transform: translateY(0px); }
}

@media (max-width: 1100px) {
  .plans-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (max-width: 768px) {
  .plans-grid { grid-template-columns: 1fr; }
  .main-headline { font-size: var(--text-3xl); }
  .plan-card { padding: var(--space-6); }
}

.adesao-section { background: var(--color-surface); padding: var(--section-padding); overflow: hidden; }

.adesao-header-centered { text-align: center; max-width: 800px; margin: 0 auto var(--space-16); }

.adesao-title-main { font-size: var(--text-4xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-bottom: var(--space-4); }

.adesao-subtitle-main { font-size: var(--text-lg); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: 0px; }

.adesao-grid-layout { display: grid; grid-template-columns: 1fr 1.5fr; gap: var(--space-8); max-width: 1200px; margin: 0px auto; }

.adesao-left-col { display: flex; flex-direction: column; gap: var(--space-8); }

.adesao-mini-card { background: white; padding: var(--space-8); border-radius: var(--radius-2xl); box-shadow: var(--shadow-sm); border: 1px solid var(--color-border); transition: var(--transition-normal); height: 100%; }

.adesao-mini-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); border-color: var(--color-primary-200); }

.adesao-mini-card h3 { font-size: var(--text-3xl); font-weight: var(--font-bold); color: var(--color-primary-500); margin-bottom: var(--space-3); }

.adesao-mini-card p { font-size: var(--text-base); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin: 0px; }

.adesao-large-card { background: var(--gradient-secondary); border-radius: var(--radius-2xl); display: flex; flex-direction: column; justify-content: space-between; position: relative; overflow: hidden; box-shadow: var(--shadow-md); border: 1px solid var(--color-primary-100); height: 750px; }

.large-card-content { padding: var(--space-10) var(--space-10) 0; z-index: 2; }

.adesao-large-card h3 { font-size: var(--text-4xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-bottom: var(--space-4); }

.adesao-large-card p { font-size: var(--text-lg); color: var(--color-text-secondary); line-height: var(--leading-relaxed); max-width: 80%; margin-bottom: var(--space-8); }

.adesao-cta-btn { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-3) var(--space-8); background: var(--gradient-primary); color: white; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; border-radius: var(--radius-full); font-size: var(--text-base); font-weight: var(--font-semibold); cursor: pointer; transition: all var(--transition-normal); box-shadow: var(--shadow-primary); text-decoration: none; }

.adesao-cta-btn:hover { transform: translateY(-2px); filter: brightness(1.1); box-shadow: rgba(92, 12, 252, 0.3) 0px 8px 20px; color: white; }

.large-card-image-wrapper { width: 85%; align-self: flex-end; margin-top: auto; line-height: 0; display: flex; justify-content: flex-end; }

.adesao-person-img { width: 100%; max-height: 550px; object-fit: contain; display: block; mix-blend-mode: multiply; }

@media (max-width: 992px) {
  .adesao-grid-layout { grid-template-columns: 1fr; }
  .large-card-content { padding: var(--space-8); }
  .adesao-large-card p { max-width: 100%; }
  .large-card-image-wrapper { width: 100%; max-width: 400px; margin: var(--space-4) auto 0; }
}

@media (max-width: 768px) {
  .adesao-title-main { font-size: var(--text-3xl); }
  .adesao-large-card h3 { font-size: var(--text-2xl); }
  .adesao-mini-card h3 { font-size: var(--text-xl); }
  .adesao-large-card { height: auto; }
}

.contact-form-section { padding: var(--section-padding); background: white; }

.contact-container { max-width: 1200px; }

.contact-inner-wrapper { background: linear-gradient(135deg, rgba(92, 12, 252, 0.53) 0%, rgb(122, 61, 255) 100%) center center / cover, url("https://images.unsplash.com/photo-1622253692010-333f2da6031d?q=80&w=1200&auto=format&fit=crop"); border-radius: var(--radius-2xl); display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-12); padding: var(--space-12); align-items: center; overflow: hidden; }

.contact-content-side { color: white; text-align: left; z-index: 2; }

.contact-badge { display: inline-block; background: rgba(255, 255, 255, 0.2); color: white; padding: var(--space-1) var(--space-4); border-radius: var(--radius-full); font-size: var(--text-xs); font-weight: var(--font-bold); letter-spacing: 0.1em; margin-bottom: var(--space-6); backdrop-filter: blur(4px); }

.contact-title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 800; line-height: 1.1; margin-bottom: var(--space-6); color: white; }

.script-highlight-contact { font-weight: 800; color: var(--color-primary-200); font-size: 1em; }

.contact-subtitle { font-size: var(--text-lg); line-height: var(--leading-relaxed); color: rgba(255, 255, 255, 0.8); margin-bottom: 0px; max-width: 500px; }

.contact-form-side { z-index: 2; }

.form-card { background: var(--color-secondary-400); padding: var(--space-10); border-radius: var(--radius-2xl); box-shadow: var(--shadow-xl); }

.form-group-contact { margin-bottom: var(--space-6); text-align: left; }

.form-group-contact label { display: block; font-size: var(--text-sm); font-weight: var(--font-bold); color: var(--color-primary-900); margin-bottom: var(--space-2); }

.form-group-contact input[type="text"], .form-group-contact input[type="email"], .form-group-contact input[type="tel"], .form-group-contact input[type="number"], .form-group-contact textarea { width: 100%; padding: var(--space-4); border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--radius-lg); font-size: var(--text-base); font-family: var(--font-family); background: white; transition: 0.3s; }

.form-group-contact textarea { min-height: 88px; resize: vertical; }

.form-group-contact input[readonly] { color: var(--color-primary-700); font-weight: var(--font-bold); background: var(--color-primary-50); }

.form-group-contact input:focus, .form-group-contact textarea:focus { outline: none; border-color: var(--color-primary-500); box-shadow: rgba(92, 12, 252, 0.1) 0px 0px 0px 4px; }

.lgpd-group { display: flex; align-items: flex-start; gap: 10px; margin-top: 10px; }

.lgpd-group input[type="checkbox"] { width: auto; margin-top: 4px; flex-shrink: 0; }

.lgpd-label { cursor: pointer; margin-bottom: 0px; display: block; font-size: 11px !important; color: var(--color-text-secondary) !important; font-weight: normal !important; }

.contact-submit-btn { width: 100%; background: var(--color-primary-500); color: white; padding: var(--space-4); border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; border-radius: var(--radius-full); font-size: var(--text-lg); font-weight: var(--font-bold); cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 10px; transition: 0.3s; box-shadow: rgba(92, 12, 252, 0.3) 0px 8px 20px; }

.contact-submit-btn:hover { background: var(--color-primary-600); transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.4) 0px 12px 24px; }

.contact-submit-btn:disabled { opacity: 0.7; cursor: not-allowed; transform: none; box-shadow: none; }

@media (max-width: 992px) {
  .contact-inner-wrapper { grid-template-columns: 1fr; padding: var(--space-8); }
  .contact-content-side { text-align: center; display: flex; flex-direction: column; align-items: center; }
  .contact-subtitle { max-width: 100%; }
}

@media (max-width: 768px) {
  .form-card { padding: var(--space-6); }
  .contact-title { font-size: 2.5rem; }
}

.success-overlay { position: fixed; inset: 0px; background: rgba(0, 0, 0, 0.55); backdrop-filter: blur(6px); display: flex; align-items: center; justify-content: center; z-index: 9999; animation: 0.3s ease 0s 1 normal none running fadeIn; padding: var(--space-4); }

.success-modal { background: white; width: 100%; max-width: 440px; border-radius: var(--radius-2xl); padding: var(--space-10) var(--space-8) var(--space-8); text-align: center; position: relative; animation: 0.4s cubic-bezier(0.16, 1, 0.3, 1) 0s 1 normal none running slideUpModal; box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 60px, rgba(92, 12, 252, 0.08) 0px 0px 0px 1px; }

.success-close { position: absolute; top: var(--space-4); right: var(--space-4); background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; color: var(--color-text-tertiary); cursor: pointer; padding: var(--space-1); border-radius: var(--radius-md); transition: 0.2s; display: flex; }

.success-close:hover { background: rgb(241, 245, 249); color: var(--color-text-primary); }

.success-icon-wrapper { width: 88px; height: 88px; margin: 0 auto var(--space-6); background: linear-gradient(135deg, var(--color-primary-50) 0%, var(--color-primary-100) 100%); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--color-primary-600); animation: 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.15s 1 normal both running popIn; }

.success-title { font-size: var(--text-2xl); font-weight: 800; color: var(--color-text-primary); margin: 0 0 var(--space-3); }

.success-message { font-size: var(--text-base); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin: 0 0 var(--space-8); }

.success-btn { width: 100%; background: linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-primary-600) 100%); color: white; padding: var(--space-4); border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; border-radius: var(--radius-full); font-size: var(--text-lg); font-weight: var(--font-bold); cursor: pointer; transition: 0.3s; box-shadow: rgba(92, 12, 252, 0.3) 0px 8px 20px; }

.success-btn:hover { transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.4) 0px 12px 28px; }

@keyframes fadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes slideUpModal { 
  0% { opacity: 0; transform: translateY(30px) scale(0.96); }
  100% { opacity: 1; transform: translateY(0px) scale(1); }
}

@keyframes popIn { 
  0% { opacity: 0; transform: scale(0.5); }
  100% { opacity: 1; transform: scale(1); }
}

.faq-section { background: white; padding: var(--section-padding); }

.faq-grid { display: grid; grid-template-columns: 320px 1fr; gap: var(--space-12); align-items: start; }

.sidebar-card { background: var(--color-secondary-100); border-radius: var(--radius-2xl); padding: var(--space-8); box-shadow: var(--shadow-sm); border: 1px solid var(--color-primary-100); position: sticky; top: 100px; }

.sidebar-image-container { border-radius: var(--radius-xl); overflow: hidden; margin-bottom: var(--space-6); aspect-ratio: 4 / 3; background: var(--color-neutral-100); }

.sidebar-image { width: 100%; height: 100%; object-fit: cover; }

.sidebar-title { font-size: var(--text-2xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-bottom: var(--space-4); line-height: var(--leading-tight); }

.sidebar-description { font-size: var(--text-base); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-8); }

.sidebar-cta { display: flex; align-items: center; justify-content: center; gap: var(--space-2); background: var(--color-accent); color: white; padding: var(--space-4) var(--space-6); border-radius: var(--radius-full); font-size: var(--text-base); font-weight: var(--font-semibold); width: 100%; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; cursor: pointer; transition: 0.3s; text-decoration: none; }

.sidebar-cta:hover { background: var(--color-accent-hover); transform: translateY(-2px); box-shadow: rgba(92, 12, 252, 0.3) 0px 8px 16px; color: white; }

.faq-header { margin-bottom: var(--space-8); }

.faq-headline { font-size: var(--text-4xl); font-weight: var(--font-bold); color: var(--color-text-primary); margin-top: var(--space-4); margin-bottom: 0px; }

.accordion-container { display: flex; flex-direction: column; gap: var(--space-4); }

.accordion-item { background: white; border: 2px solid var(--color-neutral-200); border-radius: var(--radius-lg); transition: 0.3s; overflow: hidden; cursor: pointer; }

.accordion-item.active { border-color: var(--color-primary-300); box-shadow: rgba(92, 12, 252, 0.1) 0px 4px 12px; }

.accordion-button { width: 100%; padding: var(--space-5) var(--space-6); background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); cursor: pointer; text-align: left; transition: background 0.2s; }

.question-text { font-size: var(--text-lg); font-weight: var(--font-semibold); color: var(--color-text-primary); line-height: var(--leading-snug); }

.icon-container { width: 32px; height: 32px; min-width: 32px; border-radius: var(--radius-full); background: var(--color-primary-50); display: flex; align-items: center; justify-content: center; transition: 0.3s; color: var(--color-primary-500); }

.accordion-item .icon-plus { display: flex; }

.accordion-item .icon-minus { display: none; }

.accordion-item.active .icon-plus { display: none; }

.accordion-item.active .icon-minus { display: flex; }

.accordion-item.active .icon-container { background: var(--color-primary-500); color: white; }

.accordion-panel { max-height: 0px; overflow: hidden; transition: max-height 0.35s; }

.accordion-panel.expanded { max-height: 500px; }

.answer-text { padding: 0 var(--space-6) var(--space-6); font-size: var(--text-base); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }

.blog-faq-block { margin: var(--space-12) 0; }

.blog-content .blog-faq-block .faq-header { margin-bottom: var(--space-6); }

.blog-content .blog-faq-block .faq-headline { margin: var(--space-4) 0 0; font-size: var(--text-3xl); line-height: var(--leading-tight); }

.blog-content .blog-faq-block .accordion-container { gap: var(--space-4); }

.blog-content .blog-faq-block .accordion-item { margin: 0px; }

.blog-content .blog-faq-block .answer-text { margin: 0px; }

.blog-page { background: white; max-width: 100%; overflow-x: hidden; }

.blog-list-hero, .blog-article-hero { padding: calc(var(--space-20) + 80px) 0 var(--space-16); background: linear-gradient(135deg, var(--color-primary-50) 0%, #ffffff 62%); }

.blog-list-hero-inner { max-width: 820px; }

.blog-category { display: inline-flex; align-items: center; width: fit-content; padding: var(--space-2) var(--space-4); border-radius: var(--radius-full); background: var(--color-primary-100); color: var(--color-primary-700); font-size: var(--text-xs); font-weight: var(--font-bold); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: var(--space-5); }

.blog-list-hero h1, .blog-article-intro h1 { font-size: clamp(2.25rem, 5vw, 4.5rem); line-height: var(--leading-tight); letter-spacing: -0.02em; color: var(--color-text-primary); margin: 0 0 var(--space-5); overflow-wrap: anywhere; }

.blog-list-hero p, .blog-article-intro p { font-size: var(--text-xl); line-height: var(--leading-relaxed); color: var(--color-text-secondary); margin: 0px; max-width: 760px; }

.blog-list-section { padding: var(--space-16) 0 var(--space-20); }

.blog-grid { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: var(--space-8); }

.blog-featured-card { display: grid; grid-template-columns: minmax(0px, 0.95fr) minmax(0px, 1.05fr); gap: var(--space-10); align-items: center; margin-bottom: var(--space-10); padding: var(--space-6); border: 1px solid var(--color-border); border-radius: 24px; background: white; box-shadow: rgba(23, 23, 23, 0.07) 0px 18px 48px; }

.blog-featured-image-wrap { display: block; aspect-ratio: 16 / 11; overflow: hidden; border-radius: 18px; background: var(--color-neutral-100); }

.blog-featured-image { width: 100%; height: 100%; object-fit: cover; display: block; }

.blog-featured-body { min-width: 0px; }

.blog-featured-label { display: inline-flex; width: fit-content; margin-bottom: var(--space-4); padding: var(--space-2) var(--space-4); border-radius: var(--radius-full); background: rgb(23, 23, 23); color: white; font-size: var(--text-xs); font-weight: var(--font-bold); text-transform: uppercase; letter-spacing: 0.08em; }

.blog-featured-card h2 { margin: 0 0 var(--space-4); font-size: clamp(1.7rem, 3vw, 2.6rem); line-height: var(--leading-tight); letter-spacing: -0.02em; }

.blog-featured-card h2 a { color: var(--color-text-primary); text-decoration: none; }

.blog-featured-card p { max-width: 620px; margin: 0 0 var(--space-6); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }

.blog-card { border: 1px solid var(--color-border); border-radius: var(--radius-lg); overflow: hidden; background: white; box-shadow: var(--shadow-sm); transition: transform var(--transition-normal), box-shadow var(--transition-normal); }

.blog-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }

.blog-card-image-wrap { display: block; aspect-ratio: 16 / 9; background: var(--color-neutral-100); overflow: hidden; }

.blog-card-image, .blog-article-image { width: 100%; height: 100%; object-fit: cover; display: block; }

.blog-card-body { padding: var(--space-8); }

.blog-card-meta, .blog-meta { display: flex; flex-wrap: wrap; gap: var(--space-3); color: var(--color-text-tertiary); font-size: var(--text-sm); font-weight: var(--font-semibold); margin-bottom: var(--space-4); }

.blog-card h2 { font-size: var(--text-2xl); line-height: var(--leading-snug); margin: 0 0 var(--space-4); overflow-wrap: anywhere; }

.blog-card h2 a { color: var(--color-text-primary); text-decoration: none; }

.blog-card h2 a:hover { color: var(--color-primary-500); }

.blog-card p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin: 0 0 var(--space-6); }

.blog-read-more, .blog-back-link { color: var(--color-primary-600); font-weight: var(--font-bold); text-decoration: none; }

.blog-read-more:hover, .blog-back-link:hover { color: var(--color-primary-800); }

.blog-article-grid { display: grid; grid-template-columns: minmax(0px, 1.05fr) minmax(320px, 0.95fr); gap: var(--space-12); align-items: center; }

.blog-article-intro { display: flex; flex-direction: column; align-items: flex-start; }

.blog-back-link { margin-bottom: var(--space-6); }

.blog-article-image-wrap { aspect-ratio: 4 / 3; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-xl); }

.blog-content-section { padding: var(--space-16) 0 var(--space-20); }

.blog-content-layout { display: grid; grid-template-columns: minmax(0px, 720px) 320px; gap: var(--space-12); align-items: start; }

.blog-content { font-size: var(--text-lg); line-height: var(--leading-relaxed); color: var(--color-text-secondary); min-width: 0px; }

.blog-content p { margin: 0 0 var(--space-6); }

.blog-content h2 { font-size: var(--text-3xl); line-height: var(--leading-tight); color: var(--color-text-primary); margin: var(--space-10) 0 var(--space-4); }

.blog-content h3 { font-size: var(--text-xl); line-height: var(--leading-snug); color: var(--color-text-primary); margin: var(--space-8) 0 var(--space-3); }

.blog-content ul, .blog-content ol { display: grid; gap: var(--space-3); padding-left: var(--space-6); margin: 0 0 var(--space-6); }

.blog-content li { padding-left: var(--space-2); }

.blog-content strong { color: var(--color-text-primary); }

.blog-content blockquote { margin: var(--space-8) 0; padding: var(--space-6); border-left: 4px solid var(--color-primary-500); border-radius: var(--radius-md); background: var(--color-primary-50); color: var(--color-text-primary); font-weight: var(--font-semibold); }

.blog-table-wrap { width: 100%; overflow-x: auto; margin: var(--space-8) 0; border: 1px solid var(--color-border); border-radius: var(--radius-lg); }

.blog-content table { width: 100%; min-width: 820px; border-collapse: collapse; background: white; }

.blog-content th, .blog-content td { padding: var(--space-4); border-bottom: 1px solid var(--color-border); text-align: left; vertical-align: top; }

.blog-content th { background: var(--color-primary-50); color: var(--color-primary-800); font-size: var(--text-sm); text-transform: uppercase; letter-spacing: 0.04em; }

.blog-content tr:last-child td { border-bottom: 0px; }

.blog-sidebar { position: sticky; top: 100px; border-radius: var(--radius-lg); background: var(--color-primary-50); border: 1px solid var(--color-primary-100); padding: var(--space-8); min-width: 0px; }

.blog-sidebar h2 { font-size: var(--text-2xl); line-height: var(--leading-snug); color: var(--color-text-primary); margin: 0 0 var(--space-4); }

.blog-sidebar p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin: 0 0 var(--space-6); }

.blog-sidebar-btn { display: inline-flex; width: 100%; align-items: center; justify-content: center; padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); background: rgb(37, 211, 102); color: white; font-weight: var(--font-bold); text-decoration: none; }

.blog-sidebar-btn:hover { background: rgb(30, 190, 93); color: white; }

.blog-article-featured .blog-article-hero { background: linear-gradient(135deg, rgba(23, 23, 23, 0.96) 0%, rgba(47, 6, 117, 0.88) 58%, rgba(255, 255, 255, 0.98) 58%, rgb(255, 255, 255) 100%); color: white; padding-bottom: var(--space-20); }

.blog-article-featured .blog-back-link { color: rgba(255, 255, 255, 0.82); }

.blog-article-featured .blog-category { background: rgba(255, 255, 255, 0.14); color: white; border: 1px solid rgba(255, 255, 255, 0.24); border-radius: 8px; }

.blog-article-featured .blog-article-intro h1 { color: white; max-width: 820px; }

.blog-article-featured .blog-article-intro p { color: rgba(255, 255, 255, 0.82); }

.blog-article-featured .blog-meta { color: rgba(255, 255, 255, 0.72); }

.featured-hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-8); }

.featured-primary-link, .featured-secondary-link { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: var(--space-3) var(--space-6); border-radius: 8px; font-weight: var(--font-bold); text-decoration: none; }

.featured-primary-link { background: white; color: var(--color-primary-800); }

.featured-primary-link:hover { color: var(--color-primary-900); }

.featured-secondary-link { background: rgb(37, 211, 102); color: white; }

.featured-secondary-link:hover { background: rgb(30, 190, 93); color: white; }

.blog-article-featured .blog-article-image-wrap { position: relative; border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.24); box-shadow: rgba(0, 0, 0, 0.28) 0px 28px 70px; }

.featured-image-badge { position: absolute; left: var(--space-5); right: var(--space-5); bottom: var(--space-5); display: flex; justify-content: space-between; gap: var(--space-4); align-items: center; padding: var(--space-4); border-radius: 8px; background: rgba(23, 23, 23, 0.82); color: white; backdrop-filter: blur(10px); }

.featured-image-badge span { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: 0.08em; color: rgba(255, 255, 255, 0.74); }

.featured-image-badge strong { font-size: var(--text-lg); }

.featured-summary-section { margin-top: calc(var(--space-12) * -1); position: relative; z-index: 2; }

.featured-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: var(--space-4); }

.featured-summary-card { min-height: 172px; padding: var(--space-6); border-radius: 8px; background: white; border: 1px solid var(--color-border); box-shadow: rgba(23, 23, 23, 0.08) 0px 16px 36px; }

.featured-summary-card span, .plan-family-card span, .article-highlight-panel span { display: block; margin-bottom: var(--space-3); color: var(--color-primary-600); font-size: var(--text-xs); font-weight: var(--font-bold); text-transform: uppercase; letter-spacing: 0.08em; }

.featured-summary-card strong { display: block; color: var(--color-text-primary); font-size: var(--text-2xl); line-height: var(--leading-tight); margin-bottom: var(--space-3); }

.featured-summary-card p { margin: 0px; color: var(--color-text-secondary); line-height: var(--leading-relaxed); }

.blog-article-featured .blog-content-section { padding-top: var(--space-20); background: linear-gradient(rgb(255, 255, 255) 0%, rgb(250, 250, 250) 100%); }

.blog-article-featured .blog-content { background: white; border: 1px solid var(--color-border); border-radius: 8px; padding: var(--space-10); box-shadow: rgba(23, 23, 23, 0.06) 0px 12px 40px; }

.article-highlight-panel { display: grid; grid-template-columns: 1fr auto; gap: var(--space-6); align-items: center; margin: var(--space-10) 0; padding: var(--space-8); border-radius: 8px; background: rgb(23, 23, 23); color: white; }

.article-highlight-panel strong { display: block; color: white; font-size: var(--text-2xl); line-height: var(--leading-snug); margin-bottom: var(--space-3); }

.article-highlight-panel p { color: rgba(255, 255, 255, 0.84); margin: 0px; }

.article-highlight-panel span, .plan-family-card-dark span { color: rgb(201, 184, 255) !important; }

.article-highlight-panel h2, .article-highlight-panel h3, .article-highlight-panel strong, .plan-family-card-dark h3, .plan-family-card-dark strong { color: rgb(255, 255, 255) !important; }

.article-highlight-panel p, .article-highlight-panel li, .plan-family-card-dark p { color: rgba(255, 255, 255, 0.86) !important; }

.article-highlight-panel a { display: inline-flex; align-items: center; justify-content: center; min-width: 150px; padding: var(--space-3) var(--space-5); border-radius: 8px; background: rgb(37, 211, 102); color: white; font-weight: var(--font-bold); text-decoration: none; }

.plan-family-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: var(--space-4); margin: var(--space-8) 0 var(--space-10); }

.plan-family-card { padding: var(--space-6); border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-surface); }

.plan-family-card h3 { margin-top: 0px; }

.plan-family-card p { margin-bottom: 0px; }

.plan-family-card-dark { background: rgb(23, 23, 23); color: white; border-color: rgb(23, 23, 23); }

.plan-family-card-dark h3, .plan-family-card-dark strong { color: white; }

.plan-family-card-dark p { color: rgba(255, 255, 255, 0.76); }

.blog-article-featured .blog-table-wrap { border-radius: 8px; box-shadow: rgba(23, 23, 23, 0.08) 0px 18px 40px; }

.blog-article-featured .blog-content th { background: rgb(23, 23, 23); color: white; }

.blog-article-featured .blog-content tbody tr:nth-child(2n) { background: rgb(250, 250, 250); }

.blog-article-featured .blog-content tbody tr:last-child { background: var(--color-primary-50); }

.network-strip { display: flex; flex-wrap: wrap; gap: var(--space-3); margin: var(--space-8) 0; }

.network-strip span { display: inline-flex; padding: var(--space-3) var(--space-4); border-radius: 8px; background: white; border: 1px solid var(--color-primary-100); color: var(--color-primary-700); font-weight: var(--font-bold); box-shadow: var(--shadow-sm); }

.blog-toc { display: grid; gap: var(--space-3); margin-bottom: var(--space-8); padding-bottom: var(--space-8); border-bottom: 1px solid var(--color-primary-100); }

.blog-toc strong { color: var(--color-text-primary); font-size: var(--text-sm); text-transform: uppercase; letter-spacing: 0.08em; }

.blog-toc a { color: var(--color-text-secondary); text-decoration: none; font-weight: var(--font-semibold); }

.blog-toc a:hover { color: var(--color-primary-600); }

.blog-article-featured .blog-sidebar { border-radius: 8px; box-shadow: rgba(23, 23, 23, 0.08) 0px 12px 34px; }

@media (max-width: 992px) {
  .blog-page .container { width: 100vw; max-width: 100vw; }
  .blog-article-intro, .blog-list-hero-inner, .blog-card, .blog-content-layout, .featured-summary-card, .plan-family-card { width: min(100%, 358px); max-width: calc(-32px + 100vw); margin-left: auto; margin-right: auto; }
  .blog-grid, .blog-article-grid, .blog-content-layout { grid-template-columns: 1fr; }
  .blog-list-hero h1, .blog-article-intro h1 { font-size: 1.2rem; line-height: 1.14; letter-spacing: 0px; max-width: 100%; word-break: break-all; overflow-wrap: anywhere; }
  .blog-list-hero p, .blog-article-intro p { font-size: var(--text-base); }
  .blog-card h2 { font-size: 1rem; line-height: 1.35; overflow-wrap: break-word; }
  .blog-card p { font-size: 0.95rem; }
  .blog-sidebar { position: static; }
  .blog-article-featured .blog-article-hero { background: linear-gradient(135deg, #171717 0%, var(--color-primary-800) 100%); }
  .featured-summary-grid, .plan-family-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .article-highlight-panel { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  .blog-list-hero, .blog-article-hero { padding: calc(var(--space-12) + 72px) 0 var(--space-8); }
  .blog-list-section, .blog-content-section { padding: var(--space-8) 0 var(--space-12); }
  .blog-list-hero h1, .blog-article-intro h1 { font-size: 1.2rem; line-height: 1.12; letter-spacing: 0px; margin-bottom: var(--space-4); max-width: calc(-32px + 100vw); }
  .blog-list-hero p, .blog-article-intro p, .blog-content { font-size: var(--text-base); }
  .blog-card-body, .blog-sidebar { padding: var(--space-6); }
  .blog-grid { gap: var(--space-5); }
  .blog-card { border-radius: 8px; max-width: 100%; }
  .blog-card-image-wrap { aspect-ratio: 4 / 3; }
  .blog-card h2 { font-size: 1rem; line-height: 1.32; }
  .blog-card p { margin-bottom: var(--space-5); }
  .blog-card-meta, .blog-meta { gap: var(--space-2); font-size: var(--text-xs); }
  .blog-article-grid { gap: var(--space-8); min-width: 0px; }
  .blog-article-image-wrap { aspect-ratio: 16 / 10; border-radius: 8px; }
  .blog-back-link { margin-bottom: var(--space-4); }
  .blog-category { border-radius: 8px; padding: var(--space-2) var(--space-3); margin-bottom: var(--space-4); }
  .featured-summary-grid, .plan-family-grid { grid-template-columns: 1fr; }
  .featured-summary-section { margin-top: 0px; padding: var(--space-5) 0 0; background: rgb(250, 250, 250); }
  .featured-summary-grid { gap: var(--space-3); }
  .featured-summary-card { min-height: 0px; padding: var(--space-5); }
  .featured-summary-card strong { font-size: var(--text-xl); }
  .blog-article-featured .blog-content-section { padding-top: var(--space-8); }
  .blog-article-featured .blog-content { padding: var(--space-6); border-left: 0px; border-right: 0px; border-radius: 0px; margin-left: calc(var(--space-4) * -1); margin-right: calc(var(--space-4) * -1); }
  .featured-hero-actions { width: 100%; gap: var(--space-2); }
  .featured-primary-link, .featured-secondary-link, .article-highlight-panel a { width: 100%; }
  .featured-image-badge { position: static; border-radius: 0px; }
  .article-highlight-panel { margin: var(--space-8) 0; padding: var(--space-6); }
  .article-highlight-panel strong { font-size: var(--text-xl); }
  .plan-family-grid { gap: var(--space-3); }
  .plan-family-card { padding: var(--space-5); }
  .blog-content h2 { font-size: 1.35rem; margin: var(--space-8) 0 var(--space-4); }
  .blog-content h3 { font-size: 1.1rem; margin: var(--space-6) 0 var(--space-3); }
  .blog-content ul, .blog-content ol { padding-left: var(--space-5); }
  .blog-content blockquote { padding: var(--space-5); margin: var(--space-6) 0; }
  .blog-table-wrap { border-radius: 8px; margin: var(--space-6) calc(var(--space-4) * -1); border-left: 0px; border-right: 0px; }
  .blog-content table { min-width: 640px; }
  .blog-content th, .blog-content td { padding: var(--space-3); font-size: var(--text-sm); white-space: nowrap; }
  .network-strip { gap: var(--space-2); }
  .network-strip span { width: 100%; justify-content: center; text-align: center; }
  .blog-toc { margin-bottom: var(--space-6); padding-bottom: var(--space-6); }
}

@media (max-width: 480px) {
  .blog-page .container, .blog-list-hero-inner, .blog-article-intro, .blog-card, .blog-card-body, .blog-content-layout, .blog-sidebar, .featured-summary-card, .plan-family-card, .article-highlight-panel { width: calc(-32px + 100vw) !important; max-width: calc(-32px + 100vw) !important; }
  .blog-list-hero, .blog-article-hero { padding: calc(var(--space-10) + 68px) 0 var(--space-6); }
  .blog-list-hero h1, .blog-article-intro h1 { font-size: 1.35rem; max-width: 100% !important; }
  .blog-card-body, .blog-sidebar, .blog-article-featured .blog-content, .article-highlight-panel, .plan-family-card, .featured-summary-card { padding: var(--space-5); }
  .blog-card-image-wrap, .blog-article-image-wrap { aspect-ratio: 1 / 1; }
  .featured-primary-link, .featured-secondary-link, .blog-sidebar-btn { min-height: 46px; padding: var(--space-3) var(--space-4); font-size: var(--text-sm); }
  .blog-content h2 { font-size: var(--text-xl); }
  .blog-content table { min-width: 560px; }
  .blog-content th, .blog-content td { padding: var(--space-2) var(--space-3); }
}

@media (max-width: 768px) {
  .blog-page { background: rgb(247, 247, 251); }
  .blog-page .container { padding-left: 20px; padding-right: 20px; width: 100% !important; max-width: 100% !important; }
  .blog-list-hero, .blog-article-hero { padding: var(--space-10) 0 var(--space-8); }
  .blog-list-hero-inner, .blog-article-intro, .blog-content-layout, .blog-card, .blog-sidebar, .featured-summary-card, .plan-family-card, .article-highlight-panel { margin-left: auto; margin-right: auto; width: 100% !important; max-width: 358px !important; }
  .blog-list-hero-inner, .blog-article-intro { text-align: left; }
  .blog-category { font-size: 0.7rem; letter-spacing: 0.08em; padding: 7px 10px; margin-bottom: var(--space-4); }
  .blog-list-hero h1, .blog-article-intro h1 { font-size: clamp(1.8rem, 7vw, 2.2rem); line-height: 1.08; letter-spacing: 0px; word-break: normal; overflow-wrap: break-word; text-wrap: balance; margin-bottom: var(--space-4); }
  .blog-list-hero p, .blog-article-intro p { font-size: 1rem; line-height: 1.65; color: var(--color-text-secondary); }
  .blog-list-section { padding: var(--space-8) 0 var(--space-14); }
  .blog-grid { gap: var(--space-6); }
  .blog-card { overflow: hidden; border-radius: 8px; background: white; box-shadow: rgba(23, 23, 23, 0.08) 0px 10px 30px; }
  .blog-card-image-wrap { aspect-ratio: 16 / 11; }
  .blog-card-body { padding: var(--space-6); }
  .blog-card-meta { gap: var(--space-2); font-size: 0.75rem; margin-bottom: var(--space-4); }
  .blog-card h2 { font-size: 1.2rem; line-height: 1.25; letter-spacing: 0px; margin-bottom: var(--space-4); word-break: normal; overflow-wrap: break-word; text-wrap: balance; }
  .blog-card p { font-size: 0.98rem; line-height: 1.65; margin-bottom: var(--space-5); }
  .blog-read-more { display: inline-flex; min-height: 42px; align-items: center; padding: 0 var(--space-4); border-radius: 8px; background: var(--color-primary-50); color: var(--color-primary-700); }
  .blog-article-featured .blog-article-hero { background: linear-gradient(160deg, rgb(23, 23, 23) 0%, rgb(47, 6, 117) 100%); padding-bottom: var(--space-8); }
  .blog-article-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-6); }
  .blog-meta { font-size: 0.75rem; gap: var(--space-2); margin-bottom: var(--space-5); }
  .featured-hero-actions { display: grid; grid-template-columns: 1fr; gap: var(--space-3); margin-top: var(--space-6); }
  .featured-primary-link, .featured-secondary-link { min-height: 48px; width: 100%; }
  .blog-article-image-wrap { width: 100%; max-width: 358px; margin: 0px auto; aspect-ratio: 16 / 10; border-radius: 8px; }
  .featured-image-badge { position: static; border-radius: 0px; }
  .featured-summary-section { margin-top: 0px; padding: var(--space-5) 0; background: rgb(247, 247, 251); }
  .featured-summary-grid, .plan-family-grid { grid-template-columns: 1fr; gap: var(--space-4); }
  .featured-summary-card, .plan-family-card { min-height: 0px; padding: var(--space-5); border-radius: 8px; box-shadow: rgba(23, 23, 23, 0.06) 0px 8px 22px; }
  .featured-summary-card strong { font-size: 1.35rem; }
  .blog-content-section, .blog-article-featured .blog-content-section { padding: var(--space-8) 0 var(--space-14); }
  .blog-article-featured .blog-content, .blog-content { width: 100%; max-width: 358px; margin-left: auto; margin-right: auto; padding: var(--space-6); border-radius: 8px; background: white; box-shadow: rgba(23, 23, 23, 0.06) 0px 10px 28px; font-size: 1rem; line-height: 1.75; }
  .blog-content h2 { font-size: 1.45rem; line-height: 1.18; margin: var(--space-8) 0 var(--space-4); text-wrap: balance; }
  .blog-content h3 { font-size: 1.1rem; line-height: 1.3; margin: var(--space-6) 0 var(--space-3); }
  .article-highlight-panel { display: grid; grid-template-columns: 1fr; gap: var(--space-5); padding: var(--space-6); }
  .article-highlight-panel strong { font-size: 1.25rem; }
  .article-highlight-panel a, .blog-sidebar-btn { width: 100%; }
  .blog-table-wrap { position: relative; margin: var(--space-6) -20px; border-left: 0px; border-right: 0px; border-radius: 0px; }
  .blog-table-wrap::before { content: "Arraste para ver todos os valores"; display: block; padding: var(--space-3) 20px; background: var(--color-primary-50); color: var(--color-primary-700); font-size: 0.78rem; font-weight: var(--font-bold); text-transform: uppercase; letter-spacing: 0.04em; }
  .blog-content table { min-width: 660px; }
  .blog-content th, .blog-content td { padding: var(--space-3); font-size: 0.86rem; white-space: nowrap; }
  .network-strip { display: grid; grid-template-columns: 1fr; gap: var(--space-2); }
  .network-strip span { width: 100%; justify-content: center; text-align: center; }
  .blog-sidebar { padding: var(--space-6); box-shadow: rgba(23, 23, 23, 0.06) 0px 10px 28px; }
  .blog-toc { display: none; }
}

@media (max-width: 768px) {
  .blog-list-hero { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(247, 247, 251) 100%); }
  .blog-list-hero-inner, .blog-article-intro { max-width: 340px !important; }
  .blog-list-hero-inner { text-align: center; }
  .blog-list-hero .blog-category { margin-left: auto; margin-right: auto; }
  .blog-list-title span { display: block; }
  .blog-list-hero h1 { margin-left: auto; margin-right: auto; font-size: clamp(1.9rem, 8vw, 2.15rem); line-height: 1.04; max-width: 320px !important; }
  .blog-list-hero p { max-width: 330px; margin-left: auto; margin-right: auto; font-size: 0.98rem; line-height: 1.58; }
  .blog-article-intro h1 { font-size: clamp(1.55rem, 6.4vw, 2rem); line-height: 1.12; }
  .blog-article-featured .blog-article-intro h1 { font-size: clamp(1.5rem, 6vw, 1.9rem); }
  .blog-card, .blog-content, .blog-sidebar { max-width: 340px !important; }
}

@media (max-width: 390px) {
  .blog-list-hero-inner, .blog-article-intro, .blog-card, .blog-content, .blog-sidebar { max-width: 326px !important; }
  .blog-list-hero h1 { max-width: 306px !important; font-size: 1.82rem; }
  .blog-article-intro h1, .blog-article-featured .blog-article-intro h1 { font-size: 1.48rem; }
}

@media (max-width: 768px) {
  .blog-page .container { padding-left: 16px; padding-right: 16px; width: 100% !important; max-width: none !important; margin-left: 0px !important; margin-right: 0px !important; }
  .blog-list-hero-inner, .blog-article-intro, .blog-content-layout, .blog-card, .blog-content, .blog-sidebar, .featured-summary-card, .plan-family-card, .article-highlight-panel { width: min(342px, -48px + 100vw) !important; max-width: min(342px, -48px + 100vw) !important; margin-left: 0px !important; margin-right: 0px !important; }
  .blog-list-hero h1 { max-width: 318px !important; margin-left: auto !important; margin-right: auto !important; }
  .blog-list-hero p { max-width: 330px; margin-left: auto; margin-right: auto; }
  .blog-article-image-wrap { width: min(342px, -48px + 100vw) !important; max-width: min(342px, -48px + 100vw) !important; margin-left: 0px !important; margin-right: 0px !important; }
  .featured-primary-link, .featured-secondary-link, .blog-sidebar-btn { max-width: 100%; }
}

@media (max-width: 1024px) {
  .faq-grid { grid-template-columns: 280px 1fr; gap: var(--space-8); }
}

@media (max-width: 768px) {
  .faq-section { padding: var(--space-10) 0; }
  .faq-grid { grid-template-columns: 1fr; }
  .sidebar-card { position: static; order: 2; margin-top: var(--space-8); }
  .faq-headline { font-size: var(--text-3xl); }
  .question-text { font-size: var(--text-base); }
}

.footer-section { background: var(--color-primary-900); padding: var(--space-20) 0 var(--space-8); color: white; text-align: center; overflow: hidden; }

.footer-headline { margin-bottom: var(--space-12); }

.headline-text { font-size: clamp(3rem, 8vw, 6rem); font-weight: 800; line-height: 0.9; letter-spacing: -0.02em; color: var(--color-primary-100); margin: 0px; text-transform: uppercase; }

.script-text { font-weight: 800; text-transform: uppercase; font-size: 0.85em; display: inline-block; color: white; margin: 0px 10px; }

.footer-hero-card { width: 100%; height: 400px; border-radius: var(--radius-2xl); overflow: hidden; margin-bottom: var(--space-16); box-shadow: var(--shadow-xl); border: 1px solid rgba(255, 255, 255, 0.1); }

.footer-hero-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: var(--transition-slow); }

.footer-hero-card:hover .footer-hero-img { transform: scale(1.05); }

.footer-broker-identity {
  width: min(520px, 100%);
  margin: 0 auto var(--space-12);
  padding: var(--space-5) var(--space-6);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius-xl);
  background: rgba(255, 255, 255, 0.06);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.footer-broker-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-5);
}

.footer-broker-logos img {
  width: 104px;
  height: 88px;
  padding: 5px;
  border-radius: var(--radius-md);
  background: white;
  object-fit: contain;
}

.footer-broker-logos img:last-child {
  width: 88px;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.18);
}

.footer-broker-data {
  display: grid;
  gap: 2px;
  margin-top: var(--space-4);
  color: rgba(255, 255, 255, 0.72);
  font-size: var(--text-xs);
  font-style: normal;
  line-height: 1.55;
}

.footer-broker-data strong {
  margin-bottom: 2px;
  color: white;
  font-size: var(--text-sm);
}

.footer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-12); text-align: left; margin-bottom: var(--space-20); border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: var(--space-12); }

.footer-col h3 { font-size: var(--text-sm); font-weight: var(--font-bold); color: white; letter-spacing: 0.1em; margin-bottom: var(--space-6); text-transform: uppercase; }

.footer-links { padding: 0px; margin: 0px; }

.footer-links li { margin-bottom: var(--space-3); }

.footer-links a { color: rgba(255, 255, 255, 0.6); font-size: var(--text-sm); text-transform: uppercase; transition: var(--transition-fast); }

.footer-links a:hover { color: var(--color-primary-100); }

.contact-item { display: flex; flex-direction: column; gap: var(--space-2); }

.contact-label { font-size: var(--text-xs); color: rgba(255, 255, 255, 0.5); text-transform: uppercase; letter-spacing: 0.05em; }

.contact-value { font-size: var(--text-base); font-weight: var(--font-bold); color: white; text-decoration: none; display: flex; align-items: center; gap: 8px; transition: var(--transition-fast); }

.contact-value.highlight { color: var(--color-primary-100); }

.contact-value:hover { color: var(--color-primary-300); }

.footer-bottom { display: flex; justify-content: space-between; align-items: center; padding-top: var(--space-8); border-top: 1px solid rgba(255, 255, 255, 0.1); font-size: var(--text-xs); color: rgba(255, 255, 255, 0.4); text-transform: uppercase; letter-spacing: 0.05em; }

.footer-bottom img { margin-top: -15px; width: 100px; height: auto; }

.footer-credit { display: flex; align-items: center; justify-content: center; gap: 8px; }

.copyright { margin: 0px; }

.credit { margin: 0px; }

@media (max-width: 992px) {
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-8); }
}

@media (max-width: 768px) {
  .headline-text { font-size: clamp(2rem, 10vw, 3.5rem); }
  .footer-hero-card { height: 250px; }
  .footer-broker-identity { padding: var(--space-5); }
  .footer-broker-logos { gap: var(--space-3); }
  .footer-broker-logos img { width: 88px; height: 74px; }
  .footer-broker-logos img:last-child { width: 74px; }
  .footer-grid { grid-template-columns: 1fr; gap: var(--space-10); }
  .footer-bottom { flex-direction: column; gap: var(--space-4); text-align: center; }
}

.reveal { opacity: 0; transform: translateY(25px); transition: opacity 0.7s, transform 0.7s; }

.reveal.revealed { opacity: 1; transform: translateY(0px); }

.reveal-left { opacity: 0; transform: translateX(-30px); transition: opacity 0.6s, transform 0.6s; }

.reveal-left.revealed { opacity: 1; transform: translateX(0px); }

.btn-whatsapp { background: rgb(37, 211, 102); color: rgb(255, 255, 255); display: flex; align-items: center; gap: 8px; font-weight: 600; transition: 0.3s; }

.btn-whatsapp:hover { background: rgb(30, 190, 93); transform: translateY(-2px); box-shadow: rgba(0, 0, 0, 0.15) 0px 8px 20px; }

.btn-whatsapp svg { width: 18px; height: 18px; }

.icon-whatsapp { width: 23px; height: 23px; }

.adesao-cta-btn { display: inline-flex; align-items: center; gap: 10px; }

.adesao-cta-btn svg { width: 20px; height: 20px; min-width: 20px; }

.cookie-consent { position: fixed; right: 20px; bottom: 20px; z-index: 10000; width: min(440px, -40px + 100vw); padding: 0px; pointer-events: none; opacity: 0; transform: translateY(12px); transition: opacity 0.28s, transform 0.28s; }

.cookie-consent.is-visible { opacity: 1; transform: translateY(0px); }

.cookie-consent-card { width: 100%; margin: 0px; display: grid; grid-template-columns: minmax(0px, 1fr); gap: var(--space-4); align-items: start; padding: var(--space-4); border: 1px solid rgba(92, 12, 252, 0.12); border-radius: 14px; background: rgba(255, 255, 255, 0.97); color: var(--color-text-primary); box-shadow: rgba(23, 23, 23, 0.12) 0px 12px 34px; backdrop-filter: blur(10px); pointer-events: auto; }

.cookie-consent-icon { display: none; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--color-primary-50); color: var(--color-primary-600); }

.cookie-kicker { margin: 0 0 var(--space-1); color: var(--color-primary-700); font-size: 0.68rem; font-weight: var(--font-bold); letter-spacing: 0.08em; text-transform: uppercase; }

.cookie-consent h2 { margin: 0 0 var(--space-2); color: var(--color-text-primary); font-size: 1rem; line-height: 1.2; }

.cookie-text { margin: 0px; color: var(--color-text-secondary); font-size: 0.84rem; line-height: 1.5; }

.cookie-text a { color: var(--color-primary-700); font-weight: var(--font-bold); text-decoration: underline; text-underline-offset: 3px; }

.cookie-consent-actions { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-3); }

.dental-features-list { flex: 0 1 auto; }

.cookie-link-btn, .cookie-btn { min-height: 38px; border-radius: 999px; font-family: var(--font-family); font-weight: var(--font-bold); white-space: nowrap; }

.cookie-link-btn { border: 0px; background: transparent; color: var(--color-text-primary); text-decoration: underline; text-underline-offset: 3px; }

.cookie-btn { padding: 0 var(--space-4); border: 1px solid var(--color-border); }

.cookie-btn-ghost { background: white; color: var(--color-text-primary); }

.cookie-btn-primary { border-color: rgb(3, 122, 55); background: rgb(3, 122, 55); color: white; box-shadow: none; }

.cookie-btn-primary:hover { background: rgb(2, 100, 46); }

@media (max-width: 560px) {
  .cookie-consent { right: 12px; bottom: 12px; width: calc(-24px + 100vw); padding: 0px; }
  .cookie-consent-card { gap: var(--space-3); }
  .cookie-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); }
  .cookie-btn { width: 100%; padding: 0 var(--space-4); }
}

.privacy-hero { padding: calc(var(--space-20) + 80px) 0 var(--space-12); background: linear-gradient(135deg, #ffffff 0%, var(--color-primary-50) 100%); }

.privacy-hero h1 { max-width: 760px; margin: var(--space-4) 0 var(--space-5); font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.05; letter-spacing: -0.02em; }

.privacy-hero p { max-width: 680px; margin: 0px; color: var(--color-text-secondary); font-size: var(--text-lg); line-height: var(--leading-relaxed); }

.privacy-content-section { padding: var(--space-14) 0 var(--space-20); }

.privacy-content { max-width: 820px !important; }

.privacy-content h2 { margin: var(--space-8) 0 var(--space-3); color: var(--color-text-primary); font-size: var(--text-2xl); }

.privacy-content p { color: var(--color-text-secondary); font-size: var(--text-lg); line-height: var(--leading-relaxed); }

.blog-page { overflow-x: hidden; background: var(--color-background) !important; }

.blog-page .container { width: 100% !important; max-width: 1200px !important; margin-left: auto !important; margin-right: auto !important; padding-left: var(--space-6) !important; padding-right: var(--space-6) !important; }

.blog-list-hero, .blog-article-hero { padding: calc(var(--space-20) + 50px) 0 var(--space-16) !important; }

.blog-list-hero { background: linear-gradient(135deg, rgb(255, 252, 245) 0%, rgb(240, 235, 255) 100%) !important; }

.blog-list-hero-inner { max-width: 760px !important; text-align: left !important; }

.blog-list-hero .blog-category, .blog-article-intro .blog-category { margin-left: 0px !important; margin-right: 0px !important; }

.blog-list-title span { display: inline !important; }

.blog-list-hero h1, .blog-article-intro h1 { max-width: 820px !important; margin-left: 0px !important; margin-right: 0px !important; font-size: clamp(2.2rem, 5vw, 4rem) !important; line-height: 1.05 !important; letter-spacing: -0.02em !important; word-break: normal !important; overflow-wrap: break-word !important; }

.blog-list-hero p, .blog-article-intro p { max-width: 620px !important; margin-left: 0px !important; margin-right: 0px !important; font-size: var(--text-lg) !important; line-height: 1.6 !important; }

.blog-list-section { padding: var(--section-padding) !important; background: linear-gradient(rgb(255, 255, 255) 0%, rgb(250, 250, 250) 100%) !important; }

.blog-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; gap: var(--space-8) !important; width: 100% !important; }

.blog-card { width: 100% !important; max-width: none !important; margin: 0px !important; border-radius: 24px !important; border: 1px solid var(--color-border) !important; background: white !important; box-shadow: var(--shadow-sm) !important; overflow: hidden !important; }

.blog-card-image-wrap { aspect-ratio: 16 / 10 !important; width: 100% !important; }

.blog-card-body { width: 100% !important; max-width: none !important; padding: var(--space-8) !important; }

.blog-card h2 { font-size: var(--text-2xl) !important; line-height: var(--leading-snug) !important; }

.blog-card p { font-size: var(--text-base) !important; line-height: var(--leading-relaxed) !important; }

.blog-read-more { align-items: center; min-height: 44px; padding: 0 var(--space-5); border-radius: 50px; background: var(--color-primary-50); color: var(--color-primary-700); display: inline-flex !important; }

.blog-featured-card { display: grid !important; grid-template-columns: minmax(0px, 0.95fr) minmax(0px, 1.05fr) !important; gap: var(--space-10) !important; width: 100% !important; max-width: none !important; margin: 0 0 var(--space-10) !important; padding: var(--space-6) !important; border-radius: 24px !important; }

.blog-article-grid { display: grid !important; grid-template-columns: minmax(0px, 1fr) minmax(320px, 0.9fr) !important; align-items: center !important; gap: var(--space-12) !important; }

.blog-article-intro, .blog-article-image-wrap, .blog-content, .blog-content-layout, .blog-sidebar, .featured-summary-card, .plan-family-card, .article-highlight-panel { width: 100% !important; max-width: none !important; margin-left: 0px !important; margin-right: 0px !important; }

.blog-article-image-wrap { aspect-ratio: 4 / 3 !important; border-radius: 24px !important; }

.featured-summary-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0px, 1fr)) !important; gap: var(--space-4) !important; }

.blog-content-layout { display: grid !important; grid-template-columns: minmax(0px, 720px) 320px !important; gap: var(--space-12) !important; align-items: start !important; }

.blog-article-featured .blog-content { padding: var(--space-10) !important; border-radius: 24px !important; }

@media (max-width: 1024px) {
  .blog-list-hero-inner { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
  .blog-list-hero .blog-category, .blog-article-intro .blog-category { margin-left: auto !important; margin-right: auto !important; }
  .blog-list-hero h1, .blog-list-hero p { margin-left: auto !important; margin-right: auto !important; }
  .blog-grid, .blog-featured-card, .blog-article-grid, .blog-content-layout { grid-template-columns: 1fr !important; }
  .featured-summary-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; }
}

@media (max-width: 768px) {
  .blog-page .container { max-width: 100% !important; padding-left: var(--space-4) !important; padding-right: var(--space-4) !important; }
  .blog-list-hero, .blog-article-hero { padding: var(--space-16) 0 var(--space-10) !important; }
  .blog-list-hero-inner { text-align: center !important; }
  .blog-list-title span { display: block !important; }
  .blog-list-hero h1 { max-width: 350px !important; font-size: 2.1rem !important; line-height: 1.08 !important; }
  .blog-list-hero p { max-width: 350px !important; font-size: var(--text-base) !important; }
  .blog-list-section, .blog-content-section, .blog-article-featured .blog-content-section { padding: var(--space-10) 0 var(--space-16) !important; }
  .blog-grid, .blog-featured-card, .blog-article-grid, .featured-summary-grid, .plan-family-grid, .blog-content-layout { grid-template-columns: 1fr !important; gap: var(--space-6) !important; }
  .blog-card { border-radius: 18px !important; }
  .blog-featured-card { gap: var(--space-5) !important; padding: var(--space-5) !important; border-radius: 18px !important; margin-bottom: var(--space-8) !important; }
  .blog-featured-image-wrap { border-radius: 14px !important; }
  .blog-featured-card h2 { font-size: 1.45rem !important; line-height: 1.15 !important; }
  .blog-card-body { padding: var(--space-6) !important; }
  .blog-card h2 { font-size: 1.35rem !important; }
  .blog-card-image-wrap { aspect-ratio: 16 / 11 !important; }
  .blog-article-intro { text-align: left !important; }
  .blog-article-intro .blog-category { margin-left: 0px !important; margin-right: 0px !important; }
  .blog-article-intro h1, .blog-article-featured .blog-article-intro h1 { font-size: 2rem !important; line-height: 1.1 !important; }
  .blog-article-intro p { font-size: var(--text-base) !important; }
  .blog-article-image-wrap { border-radius: 18px !important; }
  .featured-summary-card, .plan-family-card, .article-highlight-panel, .blog-sidebar, .blog-article-featured .blog-content, .blog-content { border-radius: 18px !important; padding: var(--space-6) !important; }
  .featured-summary-grid { margin-top: 0px !important; }
  .blog-table-wrap { margin-left: 0px !important; margin-right: 0px !important; border-radius: 18px !important; border-left: 1px solid var(--color-border) !important; border-right: 1px solid var(--color-border) !important; }
}

@media (max-width: 480px) {
  .blog-list-hero h1 { max-width: 320px !important; font-size: 1.9rem !important; }
  .blog-article-intro h1, .blog-article-featured .blog-article-intro h1 { font-size: 1.65rem !important; }
  .blog-card-body, .featured-summary-card, .plan-family-card, .article-highlight-panel, .blog-sidebar, .blog-article-featured .blog-content, .blog-content { padding: var(--space-5) !important; }
}

@media (max-width: 768px) {
  body .blog-page > section > .container, body .blog-page article > section > .container { width: calc(-32px + 100vw) !important; max-width: calc(-32px + 100vw) !important; padding-left: 0px !important; padding-right: 0px !important; margin-left: auto !important; margin-right: auto !important; }
  body .blog-page .blog-list-hero-inner, body .blog-page .blog-article-intro, body .blog-page .blog-card, body .blog-page .blog-featured-card, body .blog-page .blog-card-body, body .blog-page .blog-content, body .blog-page .blog-sidebar, body .blog-page .featured-summary-card, body .blog-page .plan-family-card, body .blog-page .article-highlight-panel, body .blog-page .blog-article-image-wrap { width: 100% !important; max-width: 100% !important; margin-left: 0px !important; margin-right: 0px !important; }
  body .blog-page .blog-grid, body .blog-page .blog-featured-card, body .blog-page .blog-article-grid, body .blog-page .blog-content-layout, body .blog-page .featured-summary-grid, body .blog-page .plan-family-grid { width: 100% !important; max-width: 100% !important; display: grid !important; grid-template-columns: minmax(0px, 1fr) !important; }
  body .blog-page .blog-list-hero h1, body .blog-page .blog-list-hero p { max-width: 100% !important; }
  body .blog-page .blog-list-hero h1 { font-size: 1.85rem !important; }
  body .blog-page .blog-card h2 { font-size: 1.25rem !important; overflow-wrap: anywhere !important; }
  body .blog-page .blog-featured-card h2 { overflow-wrap: anywhere !important; }
  body .blog-page .blog-card p, body .blog-page .blog-featured-card p, body .blog-page .blog-article-intro p, body .blog-page .featured-summary-card p { overflow-wrap: anywhere !important; }
}

@media (max-width: 520px) {
  body .blog-page > section > .container, body .blog-page article > section > .container { width: calc(-32px + 100vw) !important; max-width: calc(-32px + 100vw) !important; padding-left: 0px !important; padding-right: 0px !important; margin-left: auto !important; margin-right: auto !important; }
  body .blog-page .blog-list-hero-inner, body .blog-page .blog-article-intro, body .blog-page .blog-card, body .blog-page .blog-featured-card, body .blog-page .blog-card-body, body .blog-page .blog-content, body .blog-page .blog-sidebar, body .blog-page .featured-summary-card, body .blog-page .plan-family-card, body .blog-page .article-highlight-panel, body .blog-page .blog-article-image-wrap { width: 100% !important; max-width: 100% !important; }
  body .blog-page .blog-list-hero h1 { max-width: 100% !important; font-size: 1.7rem !important; line-height: 1.12 !important; margin-left: auto !important; margin-right: auto !important; }
  body .blog-page .blog-list-hero p { max-width: 100% !important; margin-left: auto !important; margin-right: auto !important; }
  body .blog-page .blog-card h2 { font-size: 1.18rem !important; line-height: 1.3 !important; }
  body .blog-page .blog-card p { font-size: 0.98rem !important; line-height: 1.65 !important; }
}

@media (max-width: 768px) {
  body .blog-page .blog-article-featured .blog-article-hero { padding-top: var(--space-12) !important; padding-bottom: var(--space-10) !important; }
  body .blog-page .featured-hero-actions { margin-top: var(--space-6) !important; }
  body .blog-page .blog-article-image-wrap { margin-top: var(--space-2) !important; }
  body .blog-page .featured-summary-section { background: rgb(246, 247, 251) !important; padding: var(--space-5) 0 !important; }
  body .blog-page .featured-summary-grid { gap: 12px !important; }
  body .blog-page .featured-summary-card, body .blog-page .plan-family-card { padding: 18px 20px !important; border-radius: 12px !important; box-shadow: none !important; }
  body .blog-page .featured-summary-card span, body .blog-page .plan-family-card span { margin-bottom: 10px !important; font-size: 0.72rem !important; }
  body .blog-page .featured-summary-card strong, body .blog-page .plan-family-card h3 { font-size: 1.15rem !important; line-height: 1.2 !important; margin-bottom: 8px !important; }
  body .blog-page .featured-summary-card p, body .blog-page .plan-family-card p { font-size: 0.95rem !important; line-height: 1.5 !important; }
  body .blog-page .blog-content-section, body .blog-page .blog-article-featured .blog-content-section { background: rgb(255, 255, 255) !important; }
  body .blog-page .blog-article-featured .blog-content, body .blog-page .blog-content { border: 0px !important; box-shadow: none !important; padding: 0px !important; border-radius: 0px !important; background: transparent !important; font-size: 1rem !important; line-height: 1.7 !important; }
  body .blog-page .blog-content p { margin-bottom: var(--space-5) !important; }
  body .blog-page .blog-content h2 { font-size: 1.45rem !important; margin-top: var(--space-8) !important; }
}

@media (min-width: 421px) and (max-width: 768px) {
  body .blog-page .featured-summary-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; gap: 12px !important; }
  body .blog-page .featured-summary-card { min-height: 154px !important; }
  body .blog-page .featured-summary-card p { font-size: 0.9rem !important; }
}

.blog-page:not(:has(.blog-article)) .blog-list-hero { position: relative; overflow: hidden; background: radial-gradient(circle at 78% 18%, rgba(92, 12, 252, 0.14) 0px, rgba(92, 12, 252, 0) 32%), linear-gradient(135deg, rgb(255, 255, 255) 0%, rgb(245, 240, 255) 58%, rgb(255, 255, 255) 100%) !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero::after { content: ""; position: absolute; right: max(24px, -600px + 50vw); bottom: -52px; width: 220px; height: 220px; border-radius: 50%; background: linear-gradient(135deg, rgba(92, 12, 252, 0.16), rgba(37, 211, 102, 0.12)); filter: blur(8px); opacity: 0.75; }

.blog-page:not(:has(.blog-article)) .blog-list-hero-inner { position: relative; z-index: 1; }

.blog-hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-8); }

.blog-hero-primary, .blog-hero-secondary { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 var(--space-6); border-radius: 50px; font-weight: var(--font-bold); text-decoration: none; }

.blog-hero-primary { background: var(--color-primary-500); color: white; box-shadow: rgba(92, 12, 252, 0.24) 0px 14px 28px; }

.blog-hero-primary:hover { background: var(--color-primary-700); color: white; }

.blog-hero-secondary { background: white; color: var(--color-text-primary); border: 1px solid var(--color-border); }

.blog-hero-secondary:hover { color: var(--color-primary-700); border-color: var(--color-primary-200); }

.blog-hero-proof { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-8); }

.blog-hero-proof span { display: inline-flex; align-items: center; min-height: 38px; padding: 0 var(--space-4); border-radius: 50px; background: rgba(255, 255, 255, 0.72); border: 1px solid rgba(92, 12, 252, 0.14); color: var(--color-primary-700); font-size: var(--text-sm); font-weight: var(--font-bold); }

.blog-section-heading { max-width: 720px; margin: 0 0 var(--space-8); }

.blog-section-heading h2 { margin: var(--space-4) 0 var(--space-3); color: var(--color-text-primary); font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.08; letter-spacing: -0.02em; }

.blog-section-heading p { margin: 0px; color: var(--color-text-secondary); font-size: var(--text-lg); line-height: var(--leading-relaxed); }

.blog-page:not(:has(.blog-article)) .blog-featured-card { position: relative; overflow: hidden; color: white; background: rgb(23, 23, 23) !important; border-color: rgb(23, 23, 23) !important; box-shadow: rgba(23, 23, 23, 0.18) 0px 24px 70px !important; }

.blog-page:not(:has(.blog-article)) .blog-featured-card::before { content: ""; position: absolute; inset: 0px; background: radial-gradient(circle at 92% 10%, rgba(92, 12, 252, 0.34), rgba(92, 12, 252, 0) 34%); pointer-events: none; }

.blog-page:not(:has(.blog-article)) .blog-featured-image-wrap, .blog-page:not(:has(.blog-article)) .blog-featured-body { position: relative; z-index: 1; }

.blog-page:not(:has(.blog-article)) .blog-featured-label { background: rgba(255, 255, 255, 0.14); border: 1px solid rgba(255, 255, 255, 0.2); color: white; }

.blog-page:not(:has(.blog-article)) .blog-featured-card .blog-card-meta { color: rgba(255, 255, 255, 0.68); }

.blog-page:not(:has(.blog-article)) .blog-featured-card h2 a { color: white; }

.blog-page:not(:has(.blog-article)) .blog-featured-card p { color: rgba(255, 255, 255, 0.76); }

.blog-page:not(:has(.blog-article)) .blog-featured-card .blog-read-more { background: white; color: var(--color-primary-800); }

.blog-page:not(:has(.blog-article)) .blog-card { border-radius: 18px !important; box-shadow: rgba(23, 23, 23, 0.06) 0px 10px 30px !important; }

.blog-page:not(:has(.blog-article)) .blog-card:hover { transform: translateY(-4px); box-shadow: rgba(23, 23, 23, 0.1) 0px 18px 42px !important; }

.blog-page:not(:has(.blog-article)) .blog-card-image-wrap { aspect-ratio: 16 / 10 !important; }

@media (max-width: 1024px) {
  .blog-hero-actions, .blog-hero-proof { justify-content: center; }
  .blog-section-heading { margin-left: auto; margin-right: auto; text-align: center; }
}

@media (max-width: 768px) {
  .blog-page:not(:has(.blog-article)) .blog-list-hero { padding-top: var(--space-12) !important; }
  .blog-hero-actions { display: grid; grid-template-columns: 1fr; margin-top: var(--space-6); }
  .blog-hero-proof { gap: var(--space-2); margin-top: var(--space-5); }
  .blog-hero-proof span { min-height: 34px; padding: 0 var(--space-3); font-size: 0.78rem; }
  .blog-section-heading { margin-bottom: var(--space-6); text-align: left; }
  .blog-section-heading h2 { font-size: 1.6rem; }
  .blog-section-heading p { font-size: var(--text-base); }
  .blog-page:not(:has(.blog-article)) .blog-featured-card { padding: var(--space-4) !important; }
  .blog-page:not(:has(.blog-article)) .blog-featured-card h2 { font-size: 1.45rem !important; line-height: 1.16 !important; }
}

.blog-page:not(:has(.blog-article)) .blog-list-hero { min-height: 520px; display: flex; align-items: center; padding: var(--space-20) 0 !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero::before { content: "Guia em destaque\a Plano Amil em Sao Paulo\a Precos, rede e contratacao 2026"; white-space: pre-line; position: absolute; right: max(58px, -600px + 50vw); top: 50%; width: min(360px, 32vw); padding: 30px; border-radius: 18px; background: rgb(23, 23, 23); color: white; font-size: 0.92rem; font-weight: 700; line-height: 1.55; box-shadow: rgba(23, 23, 23, 0.18) 0px 28px 70px; transform: translateY(-50%); z-index: 1; }

.blog-page:not(:has(.blog-article)) .blog-list-hero::after { right: max(24px, -600px + 50vw) !important; bottom: 52px !important; width: 170px !important; height: 170px !important; opacity: 0.9 !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero-inner { max-width: 700px !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero h1 { max-width: 740px !important; font-size: clamp(3rem, 5vw, 4.6rem) !important; line-height: 0.98 !important; letter-spacing: -0.035em !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero p { max-width: 590px !important; font-size: 1.08rem !important; line-height: 1.7 !important; }

.blog-page:not(:has(.blog-article)) .blog-category { background: rgba(92, 12, 252, 0.1); border: 1px solid rgba(92, 12, 252, 0.12); }

.blog-page:not(:has(.blog-article)) .blog-hero-primary, .blog-page:not(:has(.blog-article)) .blog-hero-secondary { min-width: 145px; }

.blog-page:not(:has(.blog-article)) .blog-hero-proof span { background: rgba(255, 255, 255, 0.82); box-shadow: rgba(92, 12, 252, 0.05) 0px 8px 22px; }

@media (max-width: 1100px) {
  .blog-page:not(:has(.blog-article)) .blog-list-hero::before { display: none; }
  .blog-page:not(:has(.blog-article)) .blog-list-hero { min-height: auto; }
}

@media (max-width: 768px) {
  .blog-page:not(:has(.blog-article)) .blog-list-hero { padding: var(--space-12) 0 var(--space-10) !important; }
  .blog-page:not(:has(.blog-article)) .blog-list-hero h1 { font-size: 2.25rem !important; line-height: 1.05 !important; letter-spacing: -0.02em !important; }
  .blog-page:not(:has(.blog-article)) .blog-list-hero p { font-size: 1rem !important; line-height: 1.6 !important; }
}

.blog-page:not(:has(.blog-article)) .blog-list-hero::before { display: none !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero { min-height: 560px; padding: var(--space-16) 0 !important; }

.blog-page:not(:has(.blog-article)) .blog-list-hero-inner { grid-template-columns: minmax(0px, 0.95fr) minmax(360px, 0.75fr); gap: var(--space-12); align-items: center; display: grid !important; max-width: 1200px !important; text-align: left !important; }

.blog-hero-copy { max-width: 720px; }

.blog-page:not(:has(.blog-article)) .blog-list-hero h1 { max-width: 720px !important; font-size: clamp(2.8rem, 4.5vw, 4.25rem) !important; line-height: 1.03 !important; }

.blog-hero-visual { position: relative; min-height: 390px; border-radius: 18px; overflow: hidden; background: white; box-shadow: rgba(23, 23, 23, 0.14) 0px 24px 70px; }

.blog-hero-visual img { width: 100%; height: 100%; min-height: 390px; object-fit: cover; display: block; }

.blog-hero-visual::after { content: ""; position: absolute; inset: 0px; background: linear-gradient(rgba(23, 23, 23, 0) 35%, rgba(23, 23, 23, 0.74) 100%); }

.blog-hero-visual-card { position: absolute; left: var(--space-5); right: var(--space-5); bottom: var(--space-5); z-index: 1; padding: var(--space-5); border-radius: 14px; background: rgba(255, 255, 255, 0.94); border: 1px solid rgba(255, 255, 255, 0.5); box-shadow: rgba(23, 23, 23, 0.16) 0px 18px 42px; }

.blog-hero-visual-card span { display: block; margin-bottom: var(--space-2); color: var(--color-primary-700); font-size: var(--text-xs); font-weight: var(--font-bold); letter-spacing: 0.08em; text-transform: uppercase; }

.blog-hero-visual-card strong { display: block; color: var(--color-text-primary); font-size: 1.25rem; line-height: 1.25; }

@media (max-width: 1024px) {
  .blog-page:not(:has(.blog-article)) .blog-list-hero-inner { grid-template-columns: 1fr; text-align: center !important; }
  .blog-hero-copy { max-width: 760px; margin: 0px auto; }
  .blog-hero-visual { max-width: 680px; width: 100%; margin: 0px auto; }
}

@media (max-width: 768px) {
  .blog-page:not(:has(.blog-article)) .blog-list-hero-inner { gap: var(--space-8); }
  .blog-hero-visual { min-height: 280px; border-radius: 14px; }
  .blog-hero-visual img { min-height: 280px; }
  .blog-hero-visual-card { left: var(--space-4); right: var(--space-4); bottom: var(--space-4); padding: var(--space-4); }
}

.exit-intent-overlay { position: fixed; inset: 0px; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: var(--space-6); background: rgba(23, 23, 23, 0.68); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity var(--transition-normal), visibility var(--transition-normal); }

.exit-intent-overlay.is-open { opacity: 1; visibility: visible; pointer-events: auto; }

.exit-intent-modal { position: relative; width: min(620px, 100%); overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.7); border-radius: 16px; background: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.28) 0px 30px 80px; transform: translateY(14px) scale(0.97); transition: transform var(--transition-normal); }

.exit-intent-overlay.is-open .exit-intent-modal { transform: translateY(0px) scale(1); }

.exit-intent-close { position: absolute; top: 14px; right: 14px; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border: 2px solid rgb(23, 23, 23); border-radius: 6px; background: rgb(255, 255, 255); color: rgb(23, 23, 23); font-size: 30px; line-height: 1; font-weight: 500; }

.exit-intent-close:hover { background: rgb(23, 23, 23); color: rgb(255, 255, 255); }

.exit-intent-content { display: grid; justify-items: center; gap: var(--space-5); padding: var(--space-12) var(--space-10) var(--space-10); text-align: center; }

.exit-intent-title { max-width: 520px; margin: 0px; color: rgb(5, 5, 5); font-size: clamp(1.7rem, 4vw, 2.35rem); line-height: 1.18; font-weight: 800; }

.exit-intent-subtitle { margin: 0px; color: rgb(23, 23, 23); font-size: clamp(1.1rem, 2.6vw, 1.55rem); line-height: 1.3; font-weight: 800; }

.exit-intent-whatsapp { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-3); min-height: 58px; padding: var(--space-3) var(--space-6); border-radius: 10px; background: rgb(6, 168, 68); color: rgb(255, 255, 255); font-size: var(--text-base); font-weight: 800; text-decoration: none; box-shadow: rgba(6, 168, 68, 0.3) 0px 16px 34px; transition: transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast); }

.exit-intent-whatsapp:hover { transform: translateY(-2px); background: rgb(7, 139, 58); color: rgb(255, 255, 255); box-shadow: rgba(6, 168, 68, 0.36) 0px 20px 42px; }

.exit-intent-whatsapp img { width: 34px; height: 34px; }

@media (max-width: 520px) {
  .exit-intent-overlay { align-items: center; padding: var(--space-4); }
  .exit-intent-modal { border-radius: 14px; }
  .exit-intent-content { gap: var(--space-4); padding: var(--space-12) var(--space-5) var(--space-8); }
  .exit-intent-close { top: 10px; right: 10px; }
  .exit-intent-whatsapp { width: 100%; max-width: 280px; }
}

.s380-page { --s380-blue: var(--color-primary-700); --s380-blue-2: var(--color-primary-500); --s380-green: var(--color-primary-500); --s380-ink: #0f172a; --s380-muted: #64748b; --s380-line: var(--color-primary-100); background: rgb(250, 248, 255); }

.s380-page .s380-hero { min-height: auto; padding: 86px 0px 72px; background: radial-gradient(circle at 12% 12%, rgba(200,181,255,.32) 0, rgba(200,181,255,0) 34%),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,.2) 0, rgba(255,255,255,0) 32%),
    linear-gradient(135deg, var(--color-primary-900) 0%, var(--color-primary-600) 54%, var(--color-accent-light) 100%); color: rgb(255, 255, 255); }

.s380-page .s380-hero::after { content: ""; position: absolute; inset: auto 0px 0px; height: 95px; background: linear-gradient(rgba(250, 248, 255, 0) 0%, rgb(250, 248, 255) 100%); pointer-events: none; }

.s380-page .s380-hero-container { grid-template-columns: minmax(0px, 1.08fr) minmax(360px, 0.72fr); align-items: center; gap: clamp(32px, 5vw, 72px); padding-bottom: 0px; }

.s380-page .s380-hero-content { max-width: 720px; }

.s380-page .s380-eyebrow { display: inline-flex; width: fit-content; margin-bottom: 18px; padding: 8px 14px; border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 999px; background: rgba(255, 255, 255, 0.12); color: var(--color-primary-100); font-size: 0.82rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; backdrop-filter: blur(8px); }

.s380-page .hero-title { margin-bottom: 22px; color: rgb(255, 255, 255); font-size: clamp(2.65rem, 7vw, 5.35rem); letter-spacing: 0px; }

.s380-page .text-highlight { display: block; margin-top: 8px; background: none; -webkit-text-fill-color: var(--color-primary-100); color: var(--color-primary-100); font-size: 0.36em; letter-spacing: 0.06em; text-transform: uppercase; }

.s380-page .hero-description { max-width: 650px; margin-bottom: 26px; color: rgba(255, 255, 255, 0.88); font-size: 1.14rem; }

.s380-hero-pills { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 12px; max-width: 620px; margin-bottom: 32px; }

.s380-hero-pills span { position: relative; min-height: 46px; padding: 12px 14px 12px 40px; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 8px; background: rgba(255, 255, 255, 0.1); color: rgb(255, 255, 255); font-weight: 800; box-shadow: rgba(34, 4, 74, 0.16) 0px 18px 42px; }

.s380-hero-pills span::before { content: ""; position: absolute; left: 14px; top: 50%; width: 14px; height: 14px; border-radius: 999px; background: var(--color-primary-200); box-shadow: rgba(255, 255, 255, 0.88) 0px 0px 0px 4px inset; transform: translateY(-50%); }

.s380-page .hero-cta-group { flex-wrap: wrap; gap: 14px; }

.s380-page .btn-claimable, .s380-outline-btn { min-height: 54px; padding: 14px 24px; border-radius: 8px; font-weight: 800; box-shadow: none; }

.s380-page .btn-claimable { background: var(--color-primary-500); color: rgb(255, 255, 255); }

.s380-page .btn-claimable:hover { background: var(--color-primary-600); color: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.28) 0px 18px 34px; }

.s380-outline-btn { display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255, 255, 255, 0.34); background: rgba(255, 255, 255, 0.1); color: rgb(255, 255, 255); }

.s380-outline-btn:hover { background: rgb(255, 255, 255); color: var(--s380-blue); }

.s380-quote-card { position: relative; z-index: 2; width: 100%; padding: 28px; border: 1px solid rgba(255, 255, 255, 0.48); border-radius: 8px; background: rgba(255, 255, 255, 0.96); box-shadow: rgba(34, 4, 74, 0.28) 0px 28px 70px; }

.s380-quote-card h2 { margin-bottom: 22px; color: var(--s380-ink); font-size: 1.45rem; }

.s380-quote-card .form-group-contact { margin-bottom: 16px; }

.s380-quote-card .form-group-contact label { color: var(--color-primary-700); }

.s380-quote-card .form-group-contact input[type="text"], .s380-quote-card .form-group-contact input[type="email"], .s380-quote-card .form-group-contact input[type="tel"], .s380-quote-card .form-group-contact input[type="number"], .s380-quote-card .form-group-contact textarea { border-color: var(--color-primary-100); border-radius: 8px; background: rgb(251, 249, 255); }

.s380-quote-card .lgpd-group { margin: 4px 0px 18px; }

.s380-quote-card .contact-submit-btn { border-radius: 8px; background: var(--color-primary-500); box-shadow: rgba(92, 12, 252, 0.24) 0px 12px 24px; }

.s380-quote-card .contact-submit-btn:hover { background: var(--color-primary-600); box-shadow: rgba(92, 12, 252, 0.3) 0px 16px 30px; }

.s380-page .s380-section { padding: 72px 0px; background: rgb(250, 248, 255); }

.s380-page .s380-soft-section { background: rgb(255, 255, 255); }

.s380-page .benefits-header, .s380-page .section-header { margin-bottom: 34px; }

.s380-page .section-header { text-align: left; align-items: flex-start; max-width: 1200px; margin-left: auto; margin-right: auto; }

.s380-page .badge { border-color: var(--color-primary-200); background: var(--color-primary-50); color: var(--color-primary-600); border-radius: 999px; }

.s380-page .header-text h2, .s380-page .main-headline { color: var(--s380-ink); font-size: clamp(2rem, 4vw, 3rem); letter-spacing: 0px; }

.s380-page .main-headline strong, .s380-page .script-highlight { color: var(--s380-blue-2); }

.s380-page .benefits-grid, .s380-page .plans-grid { gap: 20px; }

.s380-page .benefit-card, .s380-page .plan-card { border: 1px solid var(--color-primary-100); border-radius: 8px; box-shadow: rgba(15, 23, 42, 0.06) 0px 12px 30px; cursor: default; }

.s380-page .benefit-card:hover, .s380-page .plan-card:hover { border-color: rgba(92, 12, 252, 0.24); box-shadow: rgba(92, 12, 252, 0.12) 0px 18px 42px; }

.s380-page .card-content, .s380-page .plan-card { padding: 24px; }

.s380-page .card-content h3, .s380-page .plan-title { color: var(--s380-ink); font-size: 1.18rem; }

.s380-page .card-content h3::before, .s380-page .plan-title::before { content: ""; display: inline-block; width: 12px; height: 12px; margin-right: 9px; border-radius: 999px; background: var(--color-primary-500); box-shadow: 0 0 0 4px var(--color-primary-50); vertical-align: 1px; }

.s380-page .card-content p, .s380-page .plan-subtitle { color: var(--s380-muted); }

.s380-page .contact-form-section { background: rgb(250, 248, 255); }

.s380-page .contact-inner-wrapper { border-radius: 8px; background: linear-gradient(135deg, rgba(34, 4, 74, 0.93) 0%, rgba(92, 12, 252, 0.88) 58%, rgba(122, 61, 255, 0.86) 100%), url("https://images.unsplash.com/photo-1622253692010-333f2da6031d?q=80&w=1200&auto=format&fit=crop"); box-shadow: rgba(92, 12, 252, 0.16) 0px 24px 60px; }

.s380-page .form-card { border-radius: 8px; background: rgba(255, 255, 255, 0.94); }

.s380-page .form-card .contact-submit-btn { background: var(--color-primary-500); border-radius: 8px; }

.s380-audience-section { background: rgb(250, 248, 255); }

.s380-audience-header { max-width: 820px; margin: 0px auto 48px; text-align: center; }

.s380-audience-header h2 { margin: 0px 0px 14px; color: rgb(5, 11, 24); font-size: clamp(2rem, 4vw, 2.9rem); font-weight: 800; letter-spacing: 0px; }

.s380-audience-header h2 span { color: var(--color-primary-500); }

.s380-audience-header p { margin: 0px; color: rgb(89, 98, 116); font-size: 1.05rem; line-height: 1.6; }

.s380-audience-grid { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 24px; }

.s380-audience-card { min-height: 354px; padding: 28px 25px; border-top: 4px solid var(--color-primary-500); border-radius: 8px; background: rgb(255, 255, 255); box-shadow: rgba(92, 12, 252, 0.08) 0px 16px 34px; }

.s380-audience-icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 24px; border-radius: 10px; background: var(--color-primary-500); color: rgb(255, 255, 255); }

.s380-audience-icon svg { width: 28px; height: 28px; }

.s380-audience-card h3 { margin: 0px 0px 14px; color: rgb(5, 11, 24); font-size: 1.24rem; line-height: 1.35; font-weight: 800; }

.s380-audience-card p { margin: 0px; color: rgb(85, 94, 111); font-size: 0.96rem; line-height: 1.58; }

.s380-audience-card strong { color: rgb(63, 70, 84); font-weight: 800; }

.s380-info-section { padding: 70px 0px 76px; background: rgb(255, 255, 255); }

.s380-info-header { max-width: 820px; margin: 0px auto 42px; text-align: center; }

.s380-info-header h2 { margin: 0px 0px 16px; color: rgb(5, 11, 24); font-size: clamp(2rem, 4vw, 2.75rem); line-height: 1.15; font-weight: 800; letter-spacing: 0px; }

.s380-info-header h2 span { display: inline-grid; place-items: center; margin-right: 10px; width: 34px; height: 34px; color: var(--color-primary-500); vertical-align: -4px; }

.s380-info-header h2 span svg { width: 30px; height: 30px; }

.s380-info-header h2 strong { color: var(--color-primary-500); }

.s380-info-header p { margin: 0px; color: rgb(89, 98, 116); font-size: 1.05rem; line-height: 1.6; }

.s380-info-card { max-width: 1200px; margin: 0px auto; padding: 32px 34px 28px; border: 1px solid rgba(92, 12, 252, 0.06); border-radius: 8px; background: rgb(255, 255, 255); box-shadow: rgba(15, 23, 42, 0.08) 0px 18px 46px; }

.s380-info-card p { margin: 0px 0px 20px; color: rgb(31, 41, 55); font-size: 1rem; line-height: 1.7; }

.s380-info-list { margin-top: 24px; }

.s380-info-list li { position: relative; padding: 14px 0px 14px 30px; border-top: 1px solid rgb(237, 240, 245); color: rgb(31, 41, 55); font-size: 1rem; line-height: 1.5; }

.s380-info-list li::before { content: "✓"; position: absolute; left: 0px; top: 14px; color: var(--color-primary-500); font-weight: 800; }

.s380-info-list strong { color: var(--color-primary-700); font-weight: 800; }

.s380-differentials-section { padding: 78px 0px 72px; background: radial-gradient(circle at 8% 0%, rgba(234, 213, 255, 0.52) 0px, rgba(234, 213, 255, 0) 34%), radial-gradient(circle at 92% 12%, rgba(200, 181, 255, 0.34) 0px, rgba(200, 181, 255, 0) 30%), rgb(247, 250, 255); }

.s380-differentials-header { max-width: 760px; margin: 0px auto 44px; text-align: center; }

.s380-differentials-header h2 { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0px 0px 12px; color: rgb(7, 13, 36); font-size: clamp(2rem, 3.6vw, 3.2rem); line-height: 1.08; font-weight: 800; letter-spacing: 0px; white-space: nowrap; }

.s380-differentials-header h2 strong { color: var(--color-primary-500); }

.s380-title-icon { display: inline-grid; place-items: center; width: 52px; height: 52px; flex: 0 0 52px; border-radius: 16px; background: linear-gradient(135deg, var(--color-primary-200), var(--color-accent-light)); color: rgb(255, 255, 255); font-size: 1.85rem; box-shadow: rgba(92, 12, 252, 0.2) 0px 16px 30px; }

.s380-differentials-header > p { margin: 0px; color: rgb(77, 85, 103); font-size: 1.13rem; line-height: 1.55; }

.s380-differentials-header .s380-differentials-intro { max-width: 620px; margin: 26px auto 0px; color: rgb(39, 48, 71); }

.s380-differentials-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px; }

.s380-differential-card { position: relative; min-height: 220px; padding: 30px 24px 26px 112px; border-top: 1px solid rgba(92, 12, 252, 0.08); border-right: 1px solid rgba(92, 12, 252, 0.08); border-left: 1px solid rgba(92, 12, 252, 0.08); border-image: initial; border-bottom: 3px solid var(--card-accent, var(--color-primary-500)); border-radius: 16px; background: rgba(255, 255, 255, 0.92); box-shadow: none; overflow: hidden; }

.s380-differential-card::before { content: ""; position: absolute; inset: 0px; background: radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--card-accent, var(--color-primary-500)) 16%, transparent), transparent 34%); pointer-events: none; }

.s380-differential-icon { position: absolute; left: 24px; top: 30px; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 16px; background: linear-gradient(135deg, var(--card-accent, var(--color-primary-500)), color-mix(in srgb, var(--card-accent, var(--color-primary-500)) 68%, #ffffff)); color: rgb(255, 255, 255); box-shadow: none; }

.s380-differential-icon svg { width: 32px; height: 32px; }

.s380-differential-number { display: none; align-items: center; justify-content: center; min-width: 40px; min-height: 30px; margin-bottom: 18px; border-radius: 999px; background: color-mix(in srgb, var(--card-accent, var(--color-primary-500)) 14%, #ffffff); color: var(--card-accent, var(--color-primary-500)); font-weight: 800; }

.s380-differential-card h3 { position: relative; margin: 0px; color: rgb(7, 13, 36); font-size: clamp(1.12rem, 1.7vw, 1.32rem); line-height: 1.18; font-weight: 800; }

.s380-card-line { display: block; width: 36px; height: 3px; margin: 16px 0px; border-radius: 999px; background: var(--card-accent, var(--color-primary-500)); }

.s380-differential-card p { position: relative; max-width: 280px; margin: 0px; color: rgb(70, 80, 101); font-size: 0.92rem; line-height: 1.58; }

.s380-card-arrow { position: absolute; left: 24px; bottom: 24px; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(92, 12, 252, 0.1); border-radius: 999px; background: rgb(255, 255, 255); color: rgb(7, 13, 36); font-size: 1.35rem; line-height: 1; box-shadow: none; }

.s380-card-blue { --card-accent: var(--color-primary-500); }

.s380-card-teal { --card-accent: #7a3dff; }

.s380-card-purple { --card-accent: var(--color-primary-600); }

.s380-card-red { --card-accent: #9b5cff; }

.s380-card-green { --card-accent: var(--color-primary-400); }

.s380-card-yellow { --card-accent: #c8b5ff; }

.s380-card-violet { --card-accent: var(--color-primary-500); }

.s380-card-sky { --card-accent: #7a3dff; }

.s380-card-indigo { --card-accent: var(--color-primary-600); }

.s380-differentials-note { display: flex; align-items: center; justify-content: center; gap: 18px; max-width: 900px; margin: 36px auto 0px; padding: 16px 22px; border: 1px solid var(--color-primary-100); border-radius: 8px; background: rgba(255, 255, 255, 0.72); color: rgb(39, 48, 71); }

.s380-differentials-note span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 999px; background: var(--color-primary-50); color: var(--color-primary-500); font-weight: 800; }

.s380-differentials-note p { margin: 0px; font-size: 0.98rem; line-height: 1.5; }

.s380-coverage-section { padding: 70px 0px 72px; background: rgb(255, 255, 255); }

.s380-coverage-header { max-width: 820px; margin: 0px auto 42px; text-align: center; }

.s380-coverage-header h2 { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 0px 0px 12px; color: rgb(7, 13, 36); font-size: clamp(1.85rem, 3.3vw, 2.35rem); line-height: 1.15; font-weight: 800; letter-spacing: 0px; }

.s380-coverage-header h2 strong { color: var(--color-primary-500); }

.s380-coverage-icon { display: inline-grid; place-items: center; width: 30px; height: 30px; color: var(--color-primary-500); }

.s380-coverage-icon svg { width: 28px; height: 28px; }

.s380-coverage-header p { margin: 0px; color: rgb(89, 98, 116); font-size: 0.98rem; }

.s380-coverage-card { padding: 44px 40px; border: 1px solid rgba(92, 12, 252, 0.06); border-radius: 8px; background: rgb(255, 255, 255); box-shadow: rgba(15, 23, 42, 0.07) 0px 16px 38px; }

.s380-coverage-list li { position: relative; padding: 15px 0px 15px 30px; border-bottom: 1px solid rgb(237, 240, 245); color: rgb(31, 41, 55); font-size: 0.98rem; line-height: 1.5; }

.s380-coverage-list li:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }

.s380-coverage-list li::before { content: "✓"; position: absolute; left: 0px; top: 15px; color: var(--color-primary-500); font-weight: 900; }

.s380-coverage-list strong { color: var(--color-primary-700); font-weight: 800; }

.s380-advantages { margin-top: 30px; }

.s380-advantages h3 { display: flex; align-items: center; gap: 8px; margin: 0px 0px 16px; color: rgb(7, 13, 36); font-size: 1.18rem; font-weight: 800; }

.s380-advantages h3 span { color: var(--color-primary-500); font-size: 1rem; }

.s380-advantages-grid { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px 12px; }

.s380-advantages-grid span { position: relative; min-height: 42px; padding: 11px 16px 11px 44px; border: 1px solid var(--color-primary-100); border-radius: 8px; background: rgb(255, 255, 255); color: rgb(31, 41, 55); font-size: 0.94rem; line-height: 1.35; font-weight: 800; box-shadow: rgba(15, 23, 42, 0.04) 0px 8px 18px; }

.s380-advantages-grid span::before { content: "✓"; position: absolute; left: 14px; top: 50%; display: grid; place-items: center; width: 18px; height: 18px; border-radius: 999px; background: var(--color-primary-500); color: rgb(255, 255, 255); font-size: 0.74rem; transform: translateY(-50%); }

.s380-pricing-section { padding: 70px 0px 72px; background: rgb(244, 247, 251); }

.s380-pricing-header { max-width: 860px; margin: 0px auto 38px; text-align: center; }

.s380-pricing-header h2 { margin: 0px 0px 14px; color: rgb(7, 13, 36); font-size: clamp(1.9rem, 3.4vw, 2.45rem); line-height: 1.15; font-weight: 800; letter-spacing: 0px; }

.s380-pricing-header h2 span { display: inline-grid; place-items: center; margin-right: 8px; width: 34px; height: 34px; color: var(--color-primary-500); vertical-align: -5px; }

.s380-pricing-header h2 span svg { width: 30px; height: 30px; }

.s380-pricing-header h2 strong { color: var(--color-primary-500); }

.s380-pricing-header p { margin: 0px; color: rgb(89, 98, 116); font-size: 1rem; }

.s380-table-wrap { width: 100%; overflow-x: auto; border-radius: 8px; background: rgb(255, 255, 255); box-shadow: rgba(15, 23, 42, 0.06) 0px 14px 30px; }

.s380-price-table { width: 100%; min-width: 680px; border-collapse: separate; border-spacing: 0px; background: rgb(255, 255, 255); color: rgb(36, 48, 68); font-size: 0.95rem; }

.s380-price-table th { padding: 16px 22px; background: linear-gradient(90deg, var(--color-primary-700) 0%, var(--color-primary-500) 100%); color: rgb(255, 255, 255); font-weight: 800; text-align: left; }

.s380-price-table th:first-child { border-top-left-radius: 8px; }

.s380-price-table th:last-child { border-top-right-radius: 8px; }

.s380-price-table td { padding: 15px 22px; border-bottom: 1px solid rgb(232, 237, 244); background: rgb(255, 255, 255); }

.s380-price-table tbody tr:last-child td { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }

.s380-price-note { margin: 24px 0px 22px; color: rgb(89, 98, 116); font-size: 0.88rem; }

.s380-waiting-card { padding: 22px; border: 1px solid var(--color-primary-100); border-radius: 12px; background: rgb(255, 255, 255); }

.s380-waiting-heading { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 18px; }

.s380-waiting-heading > span { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 999px; background: var(--color-primary-50); color: var(--color-primary-500); font-size: 1.15rem; }

.s380-waiting-heading h3 { margin: 0px 0px 8px; color: rgb(7, 13, 36); font-size: 1.35rem; font-weight: 800; }

.s380-waiting-heading p { margin: 0px; color: rgb(89, 98, 116); font-size: 0.95rem; }

.s380-waiting-table-wrap { border: 1px solid var(--color-primary-100); box-shadow: none; }

.s380-waiting-table th { background: var(--color-primary-700); }

.s380-waiting-table th:last-child, .s380-waiting-table td:last-child { text-align: right; }

.s380-pricing-info-stack { display: grid; gap: 14px; margin-top: 18px; }

.s380-pricing-info-card { display: grid; grid-template-columns: 44px minmax(0px, 1fr); gap: 14px; padding: 18px 22px; border: 1px solid var(--color-primary-100); border-radius: 12px; background: rgb(255, 255, 255); }

.s380-pricing-info-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 999px; background: var(--color-primary-50); color: var(--color-primary-500); }

.s380-pricing-info-icon svg { width: 18px; height: 18px; }

.s380-pricing-info-card h3 { margin: 0px 0px 8px; color: rgb(7, 13, 36); font-size: 1.08rem; font-weight: 800; }

.s380-pricing-info-card p { margin: 0px; color: rgb(70, 80, 101); font-size: 0.94rem; line-height: 1.6; }

.s380-pricing-info-card strong { color: rgb(39, 48, 71); font-weight: 800; }

.s380-line-section { padding: 62px 0px 72px; background: rgb(244, 247, 251); }

.s380-line-header { margin-bottom: 26px; text-align: center; }

.s380-line-header h2 { display: inline-flex; align-items: center; gap: 8px; margin: 0px; color: rgb(7, 13, 36); font-size: clamp(1.55rem, 3vw, 2rem); line-height: 1.2; font-weight: 800; letter-spacing: 0px; }

.s380-line-header h2 span { color: var(--color-primary-500); }

.s380-line-grid { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 22px; }

.s380-line-card { display: flex; flex-direction: column; min-height: 368px; padding: 24px 24px 22px; border: 1px solid transparent; border-radius: 14px; background: rgb(255, 255, 255); box-shadow: rgba(15, 23, 42, 0.06) 0px 12px 26px; }

.s380-line-card.is-featured { border-color: var(--color-primary-500); box-shadow: none; }

.s380-line-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 22px; }

.s380-line-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 10px; background: linear-gradient(135deg, var(--color-primary-500), var(--color-accent-light)); color: rgb(255, 255, 255); font-size: 1.65rem; line-height: 1; }

.s380-line-icon svg { width: 28px; height: 28px; }

.s380-line-chip { display: inline-flex; align-items: center; min-height: 22px; padding: 4px 10px; border-radius: 999px; background: var(--color-primary-500); color: rgb(255, 255, 255); font-size: 0.66rem; font-weight: 800; line-height: 1; }

.s380-line-card h3 { margin: 0px 0px 8px; color: rgb(7, 13, 36); font-size: 1.42rem; line-height: 1.22; font-weight: 800; }

.s380-line-card h3 strong { color: var(--color-primary-500); }

.s380-line-card > p { margin: 0px 0px 18px; color: rgb(89, 98, 116); font-size: 0.95rem; }

.s380-line-card ul { margin-bottom: 24px; }

.s380-line-card li { position: relative; padding: 10px 0px 10px 22px; border-bottom: 1px solid rgb(237, 240, 245); color: rgb(39, 48, 71); font-size: 0.92rem; line-height: 1.3; }

.s380-line-card li:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }

.s380-line-card li::before { content: "✓"; position: absolute; left: 0px; top: 10px; color: var(--color-primary-500); font-weight: 900; }

.s380-line-card a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; margin-top: auto; padding: 10px 18px; border-radius: 8px; background: linear-gradient(135deg, var(--color-primary-600), var(--color-accent-light)); color: rgb(255, 255, 255); font-size: 0.92rem; font-weight: 800; text-decoration: none; }

.s380-line-card a:hover { transform: translateY(-2px); color: rgb(255, 255, 255); }

.s380-classic-section { padding: 0px 0px 72px; background: rgb(244, 247, 251); }

.s380-classic-header { padding-top: 8px; }

.s380-classic-grid { margin-bottom: 40px; }

.s380-line-chip-warm { background: rgb(255, 122, 47); }

.s380-offers-header { margin: 0px 0px 28px; text-align: center; }

.s380-offers-header h2 { margin: 0px; color: rgb(7, 13, 36); font-size: clamp(1.7rem, 3vw, 2.3rem); font-weight: 800; letter-spacing: 0px; }

.s380-dental-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 24px; }

.s380-dental-card { display: flex; flex-direction: column; min-height: 340px; padding: 28px 24px; border-radius: 10px; background: rgb(255, 255, 255); box-shadow: rgba(15, 23, 42, 0.06) 0px 12px 28px; }

.s380-dental-card h3 { max-width: 320px; margin: 0px 0px 10px; color: rgb(7, 13, 36); font-size: 1.05rem; line-height: 1.35; font-weight: 800; }

.s380-dental-card > p { margin: 0px 0px 20px; color: rgb(89, 98, 116); font-size: 0.88rem; }

.s380-dental-price { display: grid; place-items: center; margin-bottom: 20px; padding: 18px 16px; border-radius: 8px; background: rgb(238, 243, 249); color: rgb(7, 51, 95); text-align: center; }

.s380-dental-price span, .s380-dental-price small { color: rgb(89, 98, 116); font-size: 0.72rem; }

.s380-dental-price strong { color: rgb(0, 58, 112); font-size: 1.8rem; line-height: 1.1; font-weight: 800; }

.s380-dental-card ul { margin-bottom: 22px; }

.s380-dental-card li { position: relative; padding: 7px 0px 7px 18px; color: rgb(39, 48, 71); font-size: 0.88rem; line-height: 1.4; }

.s380-dental-card li::before { content: ""; position: absolute; left: 0px; top: 15px; width: 4px; height: 4px; border-radius: 999px; background: var(--color-primary-500); }

.s380-dental-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: auto; }

.s380-dental-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 14px; border: 1px solid var(--color-primary-600); border-radius: 18px; background: var(--color-primary-700); color: rgb(255, 255, 255); font-size: 0.86rem; font-weight: 800; text-align: center; }

.s380-dental-actions .s380-dental-outline { background: rgb(255, 255, 255); color: var(--color-primary-700); }

.s380-dental-actions a:hover { transform: translateY(-2px); color: rgb(255, 255, 255); }

.s380-dental-actions .s380-dental-outline:hover { color: var(--color-primary-700); }

.s380-choice-banner { margin-top: 36px; padding: 34px 24px; border-radius: 10px; background: var(--color-primary-700); color: rgb(255, 255, 255); text-align: center; }

.s380-choice-banner h3 { margin: 0px 0px 12px; color: rgb(255, 255, 255); font-size: clamp(1.35rem, 2.4vw, 1.7rem); font-weight: 800; }

.s380-choice-banner p { margin: 0px 0px 22px; color: rgba(255, 255, 255, 0.9); font-size: 0.98rem; }

.s380-choice-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }

.s380-choice-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 22px; border-radius: 999px; color: rgb(255, 255, 255); font-size: 0.9rem; font-weight: 800; text-decoration: none; }

.s380-choice-primary { background: rgb(255, 255, 255); color: var(--color-primary-700) !important; }

.s380-choice-whatsapp { background: rgb(37, 211, 102); }

.s380-choice-actions a:hover { transform: translateY(-2px); }

.s380-faq-section { padding: 70px 0px; background: rgb(250, 248, 255); }

.s380-faq-header { max-width: 860px; margin: 0px auto 30px; text-align: center; }

.s380-faq-header .badge { margin-bottom: 14px; }

.s380-faq-header h2 { margin: 0px; color: rgb(7, 13, 36); font-size: clamp(1.9rem, 3.4vw, 2.65rem); font-weight: 800; letter-spacing: 0px; }

.s380-faq-header h2 strong { color: var(--color-primary-500); }

.s380-faq-list { max-width: 960px; margin: 0px auto; border: 1px solid var(--color-primary-100); border-radius: 8px; background: rgb(255, 255, 255); }

.s380-faq-list article { padding: 20px 24px; border-bottom: 1px solid rgb(237, 240, 245); }

.s380-faq-list article:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }

.s380-faq-list h3 { margin: 0px 0px 8px; color: rgb(7, 13, 36); font-size: 1.08rem; font-weight: 800; }

.s380-faq-list p { margin: 0px; color: rgb(89, 98, 116); font-size: 0.96rem; line-height: 1.6; }

@media (max-width: 1024px) {
  .s380-page .s380-hero-container { grid-template-columns: 1fr; text-align: left; }
  .s380-page .s380-hero-content, .s380-page .hero-description { margin-left: 0px; margin-right: 0px; }
  .s380-page .hero-cta-group { justify-content: flex-start; }
  .s380-quote-card { max-width: 620px; }
  .s380-audience-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .s380-differentials-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .s380-differential-card { min-height: 220px; padding-left: 112px; }
  .s380-coverage-card { padding: 34px 28px; }
}

@media (max-width: 768px) {
  .s380-page .s380-hero { padding: 54px 0px 48px; }
  .s380-page .hero-title { font-size: 3rem; }
  .s380-hero-pills { grid-template-columns: 1fr; }
  .s380-page .btn-claimable, .s380-outline-btn { width: 100%; }
  .s380-quote-card { padding: 22px; }
  .s380-page .s380-section { padding: 52px 0px; }
  .s380-page .plans-grid { grid-template-columns: 1fr; }
  .s380-audience-header { margin-bottom: 30px; text-align: left; }
  .s380-audience-grid { grid-template-columns: 1fr; }
  .s380-audience-card { min-height: auto; }
  .s380-info-header { text-align: left; }
  .s380-info-card { padding: 26px 22px 22px; }
  .s380-differentials-section { padding: 56px 0px; }
  .s380-differentials-header h2 { display: block; text-align: left; font-size: 2rem; white-space: normal; }
  .s380-differentials-header { text-align: left; }
  .s380-differentials-grid { grid-template-columns: 1fr; }
  .s380-differential-card { min-height: auto; padding: 24px 22px 78px; }
  .s380-differential-icon { position: static; margin-bottom: 18px; }
  .s380-card-arrow { left: 24px; bottom: 24px; }
  .s380-differentials-note { align-items: flex-start; justify-content: flex-start; }
  .s380-coverage-section { padding: 54px 0px; }
  .s380-coverage-header { text-align: left; }
  .s380-coverage-header h2 { justify-content: flex-start; align-items: flex-start; }
  .s380-coverage-card { padding: 24px 20px; }
  .s380-advantages-grid { grid-template-columns: 1fr; }
  .s380-pricing-section { padding: 54px 0px; }
  .s380-pricing-header { text-align: left; }
  .s380-price-table { min-width: 620px; }
  .s380-waiting-card { padding: 18px; }
  .s380-pricing-info-card { grid-template-columns: 1fr; padding: 18px; }
  .s380-line-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .s380-dental-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .s380-line-grid { grid-template-columns: 1fr; }
  .s380-dental-actions { grid-template-columns: 1fr; }
  .s380-choice-actions { flex-direction: column; }
  .s380-faq-header { text-align: left; }
  .s380-faq-list article { padding: 18px; }
}

.h9j-page { --h9j-purple: #5c0cfc; --h9j-purple-dark: #2d0a68; --h9j-purple-deep: #1b063f; --h9j-lilac: #f5f1ff; --h9j-ink: #171326; --h9j-muted: #625d70; --h9j-border: #e7e1f1; color: var(--h9j-ink); background: rgb(255, 255, 255); }

.h9j-page *, .h9j-page ::before, .h9j-page ::after { box-sizing: border-box; }

.h9j-page p, .h9j-page li { font-size: 1rem; line-height: 1.75; }

.h9j-page a { text-underline-offset: 3px; }

.h9j-hero { position: relative; min-height: 650px; display: flex; align-items: center; overflow: hidden; color: rgb(255, 255, 255); background: linear-gradient(90deg, rgba(27, 6, 63, 0.97) 0%, rgba(57, 9, 126, 0.91) 46%, rgba(92, 12, 252, 0.38) 100%), url("assets/hospital-nove-de-julho-fachada.jpg") center 42% / cover no-repeat; }

.h9j-hero::after { content: ""; position: absolute; inset: auto 0px 0px; height: 5px; background: linear-gradient(90deg, rgb(92, 12, 252), rgb(181, 140, 255), rgb(92, 12, 252)); }

.h9j-hero-inner { position: relative; z-index: 1; padding-top: 104px; padding-bottom: 88px; }

.h9j-hero-copy { width: min(780px, 100%); }

.h9j-eyebrow, .h9j-kicker { display: inline-block; margin-bottom: 16px; color: var(--h9j-purple); font-size: 0.78rem; font-weight: 800; line-height: 1.3; letter-spacing: 0.08em; text-transform: uppercase; }

.h9j-hero .h9j-eyebrow, .h9j-contact .h9j-eyebrow { color: rgb(230, 215, 255); }

.h9j-hero h1 { max-width: 820px; margin: 0px 0px 24px; color: rgb(255, 255, 255); font-size: clamp(2.55rem, 5.2vw, 4.75rem); line-height: 1.04; letter-spacing: 0px; }

.h9j-hero-copy > p { max-width: 720px; margin: 0px; color: rgba(255, 255, 255, 0.9); font-size: 1.14rem; }

.h9j-hero-actions, .h9j-center-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

.h9j-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; padding: 13px 21px; border: 2px solid transparent; border-radius: 7px; font-size: 0.94rem; font-weight: 800; line-height: 1.2; text-align: center; text-decoration: none; transition: transform 0.2s, background-color 0.2s, border-color 0.2s; }

.h9j-btn:hover { transform: translateY(-2px); }

.h9j-page .h9j-btn-primary { color: rgb(255, 255, 255); background: var(--h9j-purple); }

.h9j-page .h9j-btn-primary:hover, .h9j-page .h9j-btn-primary:focus { color: rgb(255, 255, 255); background: rgb(69, 5, 206); }

.h9j-btn-light, .h9j-btn-white { color: var(--h9j-purple-dark); background: rgb(255, 255, 255); }

.h9j-btn-light:hover, .h9j-btn-white:hover { color: var(--h9j-purple-dark); background: rgb(244, 239, 255); }

.h9j-btn-outline { color: var(--h9j-purple); border-color: var(--h9j-purple); background: transparent; }

.h9j-btn-outline:hover { color: rgb(255, 255, 255); background: var(--h9j-purple); }

.h9j-btn-outline-white { color: rgb(255, 255, 255); border-color: rgba(255, 255, 255, 0.7); background: transparent; }

.h9j-btn-outline-white:hover { color: var(--h9j-purple-dark); background: rgb(255, 255, 255); }

.h9j-page .h9j-btn-whatsapp { gap: 9px; color: rgb(255, 255, 255); border-color: rgb(32, 185, 91); background: rgb(32, 185, 91); text-decoration: none; }

.h9j-page .h9j-btn-whatsapp:hover, .h9j-page .h9j-btn-whatsapp:focus { color: rgb(255, 255, 255); border-color: rgb(22, 143, 69); background: rgb(22, 143, 69); }

.h9j-page .h9j-btn-whatsapp svg { width: 21px; height: 21px; flex: 0 0 21px; fill: currentcolor; }

.h9j-hero-note { margin-top: 16px !important; font-size: 0.86rem !important; color: rgba(255, 255, 255, 0.72) !important; }

.h9j-photo-credit { position: absolute; right: 16px; bottom: -70px; color: rgba(255, 255, 255, 0.78); font-size: 0.7rem; text-decoration: none; }

.h9j-photo-credit:hover { color: rgb(255, 255, 255); text-decoration: underline; }

.h9j-trust-strip { color: rgb(255, 255, 255); background: var(--h9j-purple-deep); }

.h9j-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); }

.h9j-trust-grid > div { min-height: 104px; display: flex; flex-direction: column; justify-content: center; padding: 20px 28px; border-right: 1px solid rgba(255, 255, 255, 0.14); }

.h9j-trust-grid > div:last-child { border-right: 0px; }

.h9j-trust-grid strong { color: rgb(255, 255, 255); font-size: 1.26rem; }

.h9j-trust-grid span { margin-top: 4px; color: rgba(255, 255, 255, 0.7); font-size: 0.85rem; }

.h9j-section { padding: 84px 0px; }

.h9j-section-soft { background: rgb(247, 246, 250); }

.h9j-section-heading { max-width: 820px; margin-bottom: 34px; }

.h9j-heading-center { margin-right: auto; margin-left: auto; text-align: center; }

.h9j-section-heading h2 { margin: 0px; color: var(--h9j-ink); font-size: clamp(2rem, 3.3vw, 3rem); line-height: 1.12; letter-spacing: 0px; }

.h9j-section-heading > p { margin: 15px auto 0px; color: var(--h9j-muted); font-size: 1.05rem; }

.h9j-reading { max-width: 910px; margin-right: auto; margin-left: auto; }

.h9j-reading-left { margin-left: 0px; }

.h9j-reading > p, .h9j-prose > p { margin: 0px 0px 20px; color: var(--h9j-muted); }

.h9j-reading a, .h9j-prose a, .h9j-source-note a { color: var(--h9j-purple); font-weight: 700; }

.h9j-alert { margin-top: 36px; padding: 24px 28px; border-width: 1px 1px 1px 6px; border-style: solid; border-color: rgb(242, 200, 75) rgb(242, 200, 75) rgb(242, 200, 75) rgb(242, 182, 0); border-image: initial; border-radius: 6px; color: rgb(62, 49, 0); background: rgb(255, 248, 217); }

.h9j-alert strong { display: block; margin-bottom: 8px; color: rgb(45, 36, 0); font-size: 1.05rem; }

.h9j-alert p { margin: 0px; color: rgb(81, 67, 0); }

.h9j-split { display: grid; grid-template-columns: minmax(0px, 1.55fr) minmax(280px, 0.7fr); gap: 54px; align-items: start; }

.h9j-facts { padding: 28px; border-top: 4px solid var(--h9j-purple); border-radius: 6px; background: rgb(255, 255, 255); }

.h9j-facts h3 { margin: 0px 0px 18px; font-size: 1.25rem; }

.h9j-facts dl { margin: 0px; }

.h9j-facts dl > div { padding: 13px 0px; border-bottom: 1px solid var(--h9j-border); }

.h9j-facts dt { margin-bottom: 4px; color: var(--h9j-muted); font-size: 0.78rem; font-weight: 700; text-transform: uppercase; }

.h9j-facts dd { margin: 0px; font-weight: 700; }

.h9j-facts > a { display: inline-block; margin-top: 20px; color: var(--h9j-purple); font-weight: 800; }

.h9j-inline-cta { display: flex; align-items: center; justify-content: space-between; gap: 34px; margin-top: 42px; padding: 32px 34px; border-width: 1px 1px 1px 6px; border-style: solid; border-color: rgba(255, 255, 255, 0.16) rgba(255, 255, 255, 0.16) rgba(255, 255, 255, 0.16) rgb(184, 153, 255); border-image: initial; border-radius: 7px; color: rgb(255, 255, 255); background: linear-gradient(110deg, var(--h9j-purple-deep), var(--h9j-purple-dark) 58%, #5c0cfc); box-shadow: rgba(45, 10, 104, 0.17) 0px 18px 42px; }

.h9j-inline-copy { display: flex; flex-direction: column; gap: 7px; max-width: 620px; }

.h9j-inline-cta strong { color: rgb(255, 255, 255); font-size: 1.3rem; line-height: 1.3; }

.h9j-inline-copy > span { color: rgba(255, 255, 255, 0.78); font-size: 0.96rem; }

.h9j-inline-actions { display: flex; flex: 0 0 auto; gap: 10px; }

.h9j-inline-actions .h9j-btn { min-width: 172px; }

.h9j-table-wrap { margin-top: 34px; overflow-x: auto; border: 1px solid var(--h9j-border); border-radius: 7px; }

.h9j-table { width: 100%; min-width: 800px; border-collapse: collapse; background: rgb(255, 255, 255); }

.h9j-table th, .h9j-table td { padding: 18px 20px; border-bottom: 1px solid var(--h9j-border); font-size: 0.92rem; line-height: 1.55; text-align: left; vertical-align: top; }

.h9j-table thead th { color: rgb(255, 255, 255); background: var(--h9j-purple-dark); }

.h9j-table tbody th { color: var(--h9j-purple-dark); }

.h9j-table tbody tr:last-child th, .h9j-table tbody tr:last-child td { border-bottom: 0px; }

.h9j-table tbody tr:nth-child(2n) { background: rgb(250, 248, 255); }

.h9j-table-note, .h9j-source-note { margin: 14px 0px 0px; color: var(--h9j-muted); font-size: 0.82rem !important; }

.h9j-section-purple { color: rgb(255, 255, 255); background: linear-gradient(135deg, var(--h9j-purple-deep), var(--h9j-purple)); }

.h9j-heading-light h2, .h9j-heading-light > p { color: rgb(255, 255, 255); }

.h9j-section-purple .h9j-kicker { color: rgb(217, 197, 255); }

.h9j-heading-light > p { opacity: 0.78; }

.h9j-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }

.h9j-steps article { min-height: 260px; padding: 25px; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 6px; background: rgba(255, 255, 255, 0.09); }

.h9j-steps article > span { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 22px; border-radius: 50%; color: var(--h9j-purple-dark); font-weight: 800; background: rgb(255, 255, 255); }

.h9j-steps h3 { margin: 0px 0px 12px; color: rgb(255, 255, 255); font-size: 1.08rem; }

.h9j-steps p { margin: 0px; color: rgba(255, 255, 255, 0.78); font-size: 0.91rem; line-height: 1.65; }

.h9j-center-actions { justify-content: center; }

.h9j-services { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 1px; border: 1px solid var(--h9j-border); background: var(--h9j-border); }

.h9j-services article { min-height: 245px; padding: 27px; background: rgb(255, 255, 255); }

.h9j-services article:nth-child(2), .h9j-services article:nth-child(4), .h9j-services article:nth-child(5), .h9j-services article:nth-child(7) { background: rgb(250, 248, 255); }

.h9j-services h3 { margin: 0px 0px 13px; color: var(--h9j-purple-dark); font-size: 1.12rem; }

.h9j-services p { margin: 0px; color: var(--h9j-muted); font-size: 0.91rem; line-height: 1.65; }

.h9j-compare, .h9j-pros-cons { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 24px; }

.h9j-compare article, .h9j-pros-cons article { padding: 30px; border: 1px solid var(--h9j-border); border-radius: 6px; background: rgb(255, 255, 255); }

.h9j-compare h3, .h9j-pros-cons h3, .h9j-reading h3 { margin: 0px 0px 14px; color: var(--h9j-purple-dark); font-size: 1.25rem; }

.h9j-compare p { margin: 0px 0px 14px; color: var(--h9j-muted); }

.h9j-compare p:last-child { margin-bottom: 0px; }

.h9j-compare + .h9j-prose { margin-top: 42px; }

.h9j-pros-cons { margin-top: 32px; }

.h9j-pros-cons article { border-top-width: 4px; }

.h9j-positive { border-top-color: rgb(34, 167, 102) !important; }

.h9j-attention { border-top-color: rgb(229, 163, 0) !important; }

.h9j-pros-cons ul, .h9j-contact-copy ul { margin: 0px; padding: 0px; list-style: none; }

.h9j-pros-cons li, .h9j-contact-copy li { position: relative; padding: 10px 0px 10px 28px; border-bottom: 1px solid var(--h9j-border); color: var(--h9j-muted); }

.h9j-pros-cons li:last-child { border-bottom: 0px; }

.h9j-pros-cons li::before, .h9j-contact-copy li::before { content: "✓"; position: absolute; left: 0px; color: var(--h9j-purple); font-weight: 900; }

.h9j-geo-section { background: rgb(244, 240, 251); }

.h9j-regions { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 16px; }

.h9j-regions article { padding: 23px; border: 1px solid rgb(227, 217, 244); border-radius: 6px; background: rgb(255, 255, 255); }

.h9j-regions h3 { margin: 0px 0px 9px; color: var(--h9j-purple-dark); font-size: 1.06rem; }

.h9j-regions p { margin: 0px; color: var(--h9j-muted); font-size: 0.87rem; line-height: 1.6; }

.h9j-geo-copy { margin-top: 34px; color: var(--h9j-muted); text-align: center; }

.h9j-faq-list { max-width: 960px; margin: 0px auto; border-top: 1px solid var(--h9j-border); }

.h9j-faq-list details { border-bottom: 1px solid var(--h9j-border); background: transparent; }

.h9j-faq-list summary { position: relative; padding: 23px 54px 23px 0px; color: var(--h9j-ink); font-size: 1.06rem; font-weight: 800; line-height: 1.45; cursor: pointer; list-style: none; }

.h9j-faq-list summary::-webkit-details-marker { display: none; }

.h9j-faq-list summary::after { content: "+"; position: absolute; top: 17px; right: 4px; width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgb(217, 207, 240); border-radius: 50%; color: var(--h9j-purple); font-size: 1.35rem; font-weight: 500; background: rgb(255, 255, 255); }

.h9j-faq-list details[open] summary::after { content: "−"; }

.h9j-faq-list details p { margin: 0px; padding: 0px 54px 24px 0px; color: var(--h9j-muted); }

.h9j-final-cta { padding: 58px 0px; color: rgb(255, 255, 255); background: var(--h9j-purple-dark); }

.h9j-final-cta-inner { display: grid; grid-template-columns: minmax(0px, 1fr) auto; gap: 50px; align-items: center; }

.h9j-final-cta h2 { margin: 0px 0px 12px; color: rgb(255, 255, 255); font-size: clamp(1.85rem, 3vw, 2.65rem); line-height: 1.12; }

.h9j-final-cta p { max-width: 850px; margin: 0px; color: rgba(255, 255, 255, 0.76); }

.h9j-final-cta .h9j-kicker { color: rgb(217, 197, 255); }

.h9j-contact { padding: 82px 0px; color: rgb(255, 255, 255); background: linear-gradient(115deg, rgba(27, 6, 63, 0.98), rgba(92, 12, 252, 0.93)), url("assets/doctor.webp") center center / cover no-repeat; }

.h9j-contact-inner { display: grid; grid-template-columns: minmax(0px, 0.9fr) minmax(420px, 0.7fr); gap: 70px; align-items: center; }

.h9j-contact-copy h2 { margin: 0px 0px 18px; color: rgb(255, 255, 255); font-size: clamp(2.2rem, 4vw, 3.5rem); line-height: 1.08; }

.h9j-contact-copy > p { max-width: 600px; margin: 0px 0px 26px; color: rgba(255, 255, 255, 0.78); }

.h9j-contact-copy li { max-width: 540px; border-color: rgba(255, 255, 255, 0.15); color: rgb(255, 255, 255); }

.h9j-contact-copy li::before { color: rgb(214, 189, 255); }

.h9j-form-card { padding: 32px; border-radius: 7px; color: var(--h9j-ink); background: rgb(255, 255, 255); }

.h9j-form-card .global-quote-form h2 { margin: 0px 0px 22px; color: var(--h9j-purple-dark); font-size: 1.55rem; }

.h9j-form-card .form-group-contact { margin-bottom: 15px; }

.h9j-form-card .form-group-contact input, .h9j-form-card .form-group-contact textarea { border-radius: 6px; background: rgb(251, 250, 255); }

.h9j-form-card .contact-submit-btn { border-radius: 6px; background: var(--h9j-purple); }

@media (max-width: 1024px) {
  .h9j-steps, .h9j-services, .h9j-regions { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .h9j-contact-inner { grid-template-columns: minmax(0px, 0.8fr) minmax(390px, 1fr); gap: 38px; }
}

@media (max-width: 820px) {
  .h9j-hero { min-height: 590px; background-position: 58% center; }
  .h9j-hero-inner { padding-top: 92px; padding-bottom: 72px; }
  .h9j-trust-grid { grid-template-columns: repeat(2, 1fr); }
  .h9j-trust-grid > div:nth-child(2) { border-right: 0px; }
  .h9j-trust-grid > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
  .h9j-section { padding: 66px 0px; }
  .h9j-split, .h9j-contact-inner, .h9j-final-cta-inner { grid-template-columns: 1fr; }
  .h9j-contact-inner { gap: 42px; }
  .h9j-inline-cta { align-items: flex-start; flex-direction: column; }
  .h9j-inline-actions { width: 100%; }
  .h9j-inline-actions .h9j-btn { flex: 1 1 0px; }
}

@media (max-width: 640px) {
  .h9j-page p, .h9j-page li { font-size: 0.95rem; }
  .h9j-hero { min-height: auto; background-position: 64% center; }
  .h9j-hero::before { content: ""; position: absolute; inset: 0px; background: rgba(27, 6, 63, 0.25); }
  .h9j-hero-inner { padding-top: 82px; padding-bottom: 58px; }
  .h9j-hero h1 { font-size: 2.45rem; }
  .h9j-hero-copy > p { font-size: 1rem; }
  .h9j-photo-credit { right: 16px; bottom: -46px; }
  .h9j-hero-actions, .h9j-center-actions { flex-direction: column; }
  .h9j-btn { width: 100%; }
  .h9j-trust-grid { grid-template-columns: 1fr; }
  .h9j-trust-grid > div { min-height: 86px; padding: 17px 20px; border-right: 0px; border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
  .h9j-trust-grid > div:last-child { border-bottom: 0px; }
  .h9j-section { padding: 54px 0px; }
  .h9j-section-heading { margin-bottom: 27px; }
  .h9j-section-heading h2 { font-size: 2rem; }
  .h9j-alert, .h9j-facts, .h9j-inline-cta, .h9j-compare article, .h9j-pros-cons article, .h9j-form-card { padding: 22px; }
  .h9j-inline-actions { flex-direction: column; }
  .h9j-inline-actions .h9j-btn { width: 100%; }
  .h9j-steps, .h9j-services, .h9j-compare, .h9j-pros-cons, .h9j-regions { grid-template-columns: 1fr; }
  .h9j-steps article, .h9j-services article { min-height: auto; }
  .h9j-faq-list summary { padding-right: 48px; font-size: 1rem; }
  .h9j-faq-list details p { padding-right: 0px; }
  .h9j-contact { padding: 56px 0px; }
  .h9j-contact-copy h2 { font-size: 2.2rem; }
}

.slz-breadcrumb { padding: 15px 0px; border-bottom: 1px solid rgb(235, 230, 242); background: rgb(255, 255, 255); }

.slz-breadcrumb .container { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; color: rgb(118, 111, 130); font-size: 0.82rem; }

.slz-breadcrumb a { color: rgb(92, 12, 252); font-weight: 700; text-decoration: none; }

.slz-hero { background: linear-gradient(90deg, rgba(27, 6, 63, 0.98) 0%, rgba(57, 9, 126, 0.91) 47%, rgba(92, 12, 252, 0.28) 100%), url("assets/hospital-sao-luiz-itaim-fachada.webp") center 48% / cover no-repeat; }

.slz-hero-seo-image { position: absolute; width: 1px; height: 1px; padding: 0px; margin: -1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; border: 0px; }

.slz-units { display: grid; grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 14px; margin-top: 38px; }

.slz-units article { min-height: 215px; padding: 23px; border-width: 4px 1px 1px; border-style: solid; border-color: rgb(92, 12, 252) rgb(227, 220, 240) rgb(227, 220, 240); border-image: initial; border-radius: 6px; background: rgb(255, 255, 255); }

.slz-units article > span { display: inline-block; margin-bottom: 18px; color: rgb(92, 12, 252); font-size: 0.72rem; font-weight: 800; text-transform: uppercase; }

.slz-units h3 { margin: 0px 0px 10px; color: rgb(45, 10, 104); font-size: 1.05rem; line-height: 1.3; }

.slz-units p { margin: 0px; color: rgb(98, 93, 112); font-size: 0.86rem; line-height: 1.6; }

.slz-geo { background: rgb(244, 240, 251); }

.slz-network-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 18px; }

.slz-network-grid article { padding: 28px; border: 1px solid rgb(227, 220, 240); border-radius: 6px; background: rgb(255, 255, 255); }

.slz-network-grid h3 { margin: 0px 0px 12px; color: rgb(45, 10, 104); font-size: 1.18rem; }

.slz-network-grid p { margin: 0px; color: rgb(98, 93, 112); font-size: 0.93rem; }

.slz-network-copy { margin-top: 38px; }

@media (max-width: 1100px) {
  .slz-units { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
}

@media (max-width: 820px) {
  .slz-hero { background-position: 62% center; }
  .slz-units { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (max-width: 640px) {
  .slz-breadcrumb { padding: 12px 0px; }
  .slz-breadcrumb .container { gap: 6px; font-size: 0.74rem; }
  .slz-hero { background-position: 68% center; }
  .slz-units, .slz-network-grid { grid-template-columns: 1fr; }
  .slz-units article { min-height: auto; }
}

/* Amil + Beneficencia Portuguesa */
.bp-hero {
  background:
    linear-gradient(90deg, rgba(27, 6, 63, .98) 0%, rgba(57, 9, 126, .92) 48%, rgba(92, 12, 252, .32) 100%),
    url("assets/bp-hospital.jpg") center 44% / cover no-repeat;
}

.bp-unit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 36px;
}

.bp-unit-card,
.bp-info-card {
  overflow: hidden;
  border: 1px solid #e2daef;
  border-radius: 7px;
  background: #fff;
}

.bp-unit-card img {
  width: 100%;
  aspect-ratio: 16 / 8;
  display: block;
  object-fit: cover;
}

.bp-unit-card > div,
.bp-info-card {
  padding: 25px;
}

.bp-unit-card span,
.bp-info-card > span {
  color: #5c0cfc;
  font-size: .73rem;
  font-weight: 800;
  text-transform: uppercase;
}

.bp-unit-card h3,
.bp-info-card h3 {
  margin: 9px 0 11px;
  color: #2d0a68;
  font-size: 1.18rem;
}

.bp-unit-card p,
.bp-info-card li {
  color: #625d70;
  font-size: .9rem;
  line-height: 1.65;
}

.bp-unit-card p {
  margin: 0;
}

.bp-info-card {
  border-top: 4px solid #5c0cfc;
}

.bp-info-card ul {
  margin: 16px 0 0;
  padding-left: 20px;
}

.bp-info-card li {
  padding: 5px 0;
}

.bp-factors {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 34px;
}

.bp-factors article {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 20px 22px;
  border-left: 4px solid #5c0cfc;
  background: #f7f4fc;
}

.bp-factors strong {
  color: #2d0a68;
}

.bp-factors span {
  color: #625d70;
  font-size: .86rem;
}

.bp-service-checks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 17px;
}

.bp-service-checks article {
  min-height: 205px;
  padding: 25px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 6px;
  background: rgba(255, 255, 255, .09);
}

.bp-service-checks h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 1.12rem;
}

.bp-service-checks p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: .91rem;
  line-height: 1.65;
}

.bp-consult-steps {
  max-width: 950px;
  margin: 0 auto;
  border-top: 1px solid #e3dcf0;
}

.bp-consult-steps article {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 20px;
  padding: 23px 0;
  border-bottom: 1px solid #e3dcf0;
}

.bp-consult-steps article > span {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-weight: 800;
  background: #5c0cfc;
}

.bp-consult-steps h3 {
  margin: 0 0 7px;
  color: #2d0a68;
  font-size: 1.12rem;
}

.bp-consult-steps p {
  margin: 0;
  color: #625d70;
}

.bp-advantages {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid #e3dcf0;
  background: #e3dcf0;
}

.bp-advantages article {
  min-height: 185px;
  padding: 27px;
  background: #fff;
}

.bp-advantages article:nth-child(even) {
  background: #faf8ff;
}

.bp-advantages h3 {
  margin: 0 0 11px;
  color: #2d0a68;
  font-size: 1.08rem;
}

.bp-advantages p {
  margin: 0;
  color: #625d70;
  font-size: .9rem;
  line-height: 1.65;
}

.bp-geo {
  background: #f4f0fb;
}

@media (max-width: 920px) {
  .bp-unit-grid,
  .bp-factors,
  .bp-advantages {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bp-service-checks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .bp-hero {
    background-position: 58% center;
  }

  .bp-unit-grid,
  .bp-factors,
  .bp-service-checks,
  .bp-advantages {
    grid-template-columns: 1fr;
  }

  .bp-service-checks article,
  .bp-advantages article {
    min-height: auto;
  }

  .bp-consult-steps article {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 14px;
  }

  .bp-consult-steps article > span {
    width: 38px;
    height: 38px;
  }
}

/* Amil + Hospital Santa Catarina */
.hsc-hero {
  background:
    linear-gradient(90deg, rgba(27, 6, 63, .98) 0%, rgba(57, 9, 126, .91) 48%, rgba(92, 12, 252, .30) 100%),
    url("assets/hospital-santa-catarina-paulista.png") center 48% / cover no-repeat;
}

.hsc-about {
  display: grid;
  grid-template-columns: minmax(330px, .75fr) minmax(0, 1.25fr);
  gap: 46px;
  align-items: center;
}

.hsc-about-image {
  overflow: hidden;
  border-radius: 7px;
  background: #eae4f4;
}

.hsc-about-image img {
  width: 100%;
  min-height: 360px;
  display: block;
  object-fit: cover;
}

.hsc-about-copy p {
  margin: 0 0 18px;
  color: #625d70;
}

.hsc-about-copy p:last-child {
  margin-bottom: 0;
}

.hsc-info-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 38px;
}

.hsc-info-grid article {
  min-height: 170px;
  padding: 22px;
  border: 1px solid #e3dcf0;
  border-top: 4px solid #5c0cfc;
  border-radius: 6px;
  background: #fff;
}

.hsc-info-grid span {
  color: #5c0cfc;
  font-size: .7rem;
  font-weight: 800;
  text-transform: uppercase;
}

.hsc-info-grid h3 {
  margin: 11px 0 8px;
  color: #2d0a68;
  font-size: 1.08rem;
}

.hsc-info-grid p {
  margin: 0;
  color: #625d70;
  font-size: .87rem;
  line-height: 1.55;
}

.hsc-check-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 32px;
}

.hsc-check-grid article {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 20px 22px;
  border-left: 4px solid #5c0cfc;
  background: #f7f4fc;
}

.hsc-check-grid strong {
  color: #2d0a68;
}

.hsc-check-grid span {
  color: #625d70;
  font-size: .87rem;
}

.hsc-coverage-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 17px;
}

.hsc-coverage-grid article {
  min-height: 205px;
  padding: 25px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 6px;
  background: rgba(255, 255, 255, .09);
}

.hsc-coverage-grid h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 1.1rem;
}

.hsc-coverage-grid p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: .91rem;
  line-height: 1.65;
}

.hsc-modalities {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid #e3dcf0;
  background: #e3dcf0;
}

.hsc-modalities article {
  min-height: 230px;
  padding: 27px;
  background: #fff;
}

.hsc-modalities article:nth-child(even) {
  background: #faf8ff;
}

.hsc-modalities h3 {
  margin: 0 0 12px;
  color: #2d0a68;
  font-size: 1.12rem;
}

.hsc-modalities p {
  margin: 0;
  color: #625d70;
  font-size: .9rem;
  line-height: 1.65;
}

.hsc-geo {
  background: #f4f0fb;
}

@media (max-width: 1024px) {
  .hsc-info-grid,
  .hsc-coverage-grid,
  .hsc-modalities {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .hsc-about {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .hsc-about-image img {
    min-height: 300px;
  }

  .hsc-check-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .hsc-hero {
    background-position: 58% center;
  }

  .hsc-info-grid,
  .hsc-check-grid,
  .hsc-coverage-grid,
  .hsc-modalities {
    grid-template-columns: 1fr;
  }

  .hsc-info-grid article,
  .hsc-coverage-grid article,
  .hsc-modalities article {
    min-height: auto;
  }

  .hsc-about-image img {
    min-height: 230px;
  }
}

/* Amil + Hospital da Luz */
.hluz-hero {
  background:
    url("assets/hospital-luz-vila-mariana.png") calc(100% - 56px) center / 500px auto no-repeat,
    linear-gradient(105deg, #1b063f 0%, #39097e 58%, #5c0cfc 100%);
}

.hluz-about {
  display: grid;
  grid-template-columns: minmax(300px, .7fr) minmax(0, 1.3fr);
  gap: 48px;
  align-items: center;
}

.hluz-image {
  display: grid;
  place-items: center;
  min-height: 410px;
  padding: 18px;
  border-radius: 7px;
  background: linear-gradient(145deg, #ede7ff, #fff);
}

.hluz-image img {
  width: min(100%, 390px);
  height: auto;
  display: block;
}

.hluz-copy p {
  margin: 0 0 18px;
  color: #625d70;
}

.hluz-copy p:last-child {
  margin-bottom: 0;
}

.hluz-factor-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 30px;
}

.hluz-factor-grid article {
  padding: 20px;
  border: 1px solid #e2daef;
  border-left: 4px solid #5c0cfc;
  color: #2d0a68;
  font-weight: 750;
  background: #faf8ff;
}

.hluz-geo {
  background: #f4f0fb;
}

@media (max-width: 1024px) {
  .hluz-hero {
    background:
      url("assets/hospital-luz-vila-mariana.png") calc(100% + 80px) center / 450px auto no-repeat,
      linear-gradient(105deg, #1b063f 0%, #39097e 65%, #5c0cfc 100%);
  }

  .hluz-factor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .hluz-hero {
    background:
      linear-gradient(90deg, rgba(27, 6, 63, .98), rgba(57, 9, 126, .88)),
      url("assets/hospital-luz-vila-mariana.png") 110% center / 390px auto no-repeat;
  }

  .hluz-about {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

@media (max-width: 640px) {
  .hluz-hero {
    background:
      linear-gradient(90deg, rgba(27, 6, 63, .98), rgba(57, 9, 126, .9)),
      url("assets/hospital-luz-vila-mariana.png") 150% center / 340px auto no-repeat;
  }

  .hluz-image {
    min-height: 310px;
  }

  .hluz-factor-grid {
    grid-template-columns: 1fr;
  }
}
