/* Alternating light and dark sections, with restrained depth and warm accents. */
.site-home {
  --night: #082f3b;
  --night-deep: #052630;
  --aqua: #79e7df;
  --sand: #f2dbb7;
  --coral: #e7ab98;
  --lilac: #d9d0f2;
  background: #f8fbfc;
}
.site-home .announcement { background: var(--night); color: #e5f8f7; }
.site-home .hero {
  position: relative;
  background: radial-gradient(ellipse at 90% 5%, #b9f0eb75, transparent 51%), radial-gradient(ellipse at 0% 100%, #fae9d960, transparent 45%), #f8fbfc;
}
.site-home .hero h1 em { color: #00818b; }
.site-home .hero .btn-brand {
  background: linear-gradient(135deg, #00848c, #006972);
  border-color: #00747d;
  box-shadow: 0 5px 0 #034e58, 0 15px 28px #007b8322;
}
.site-home .hero .btn-brand:hover { box-shadow: 0 7px 0 #034e58, 0 22px 34px #007b8330; }
.site-home .hero-art-column { padding-top: 14px; }
.site-home .hero-brand-stage {
  background: linear-gradient(145deg, #fcffff 5%, #d4f5f2 65%, #bddfe9);
  border: 1px solid #b3e5e5;
  border-bottom: 7px solid #a7d2d8;
  box-shadow: 15px 26px 0 -8px #bddde4, 26px 40px 65px #063a4b1c;
}
.site-home .hero-image-stage {
  padding: 0;
  background: #e7f5f3;
  border-color: #b8dfe0;
  border-bottom-color: #a6cfd5;
  box-shadow: 15px 26px 0 -8px #accfd6, 26px 40px 65px #063a4b24;
}
.site-home .hero-image-stage .hero-brand-logo { border-radius: 30px 30px 25px 25px; }
.site-home .hero-image-stage .art-label { top: 13px; color: #315d62; font-size: .48rem; letter-spacing: 1.8px; transform: translateZ(45px); }
.site-home .hero-image-stage .floating-note { bottom: -22px; }
.hero-orbit {
  position: absolute; inset: 5% -8%; border: 1px solid #018b9c2a; border-radius: 50%;
  transform: translateZ(-25px) rotateZ(-26deg) rotateY(32deg); pointer-events: none;
}
.hero-orbit::after { content: ''; position: absolute; width: 12px; height: 12px; left: 12%; top: 9%; background: var(--coral); border-radius: 50%; box-shadow: 0 3px 0 #c68b79; }
.site-home .art-seal { background: #fff1dd; color: #79572e; border: 1px solid #ecd6b5; box-shadow: 0 6px 0 #d9c7aa, 0 18px 25px #173b4a15; }
.site-home .floating-note { border-bottom: 4px solid #cae5e3; box-shadow: 0 18px 35px #093e4e1d; }
.floating-symbol {
  position: absolute; display: grid; place-items: center; width: 59px; height: 59px;
  border-radius: 18px; border: 1px solid #fff9; z-index: 3; pointer-events: none;
  transform: translateZ(65px) rotate(-10deg); animation: symbol-drift 8s ease-in-out infinite;
}
.floating-symbol .icon { width: 30px; height: 30px; }
.symbol-flower { top: 45px; left: -25px; background: #eee8fa; color: #6c568e; box-shadow: 0 6px 0 #c9bee0, 0 16px 28px #1237461a; }
.symbol-spark { right: -20px; bottom: 100px; background: #ffe4d7; color: #a55b40; box-shadow: 0 6px 0 #dfbba9, 0 16px 28px #1237461a; animation-delay: -4s; }
@keyframes symbol-drift { 0%,100% { translate: 0 0; rotate: -3deg; } 50% { translate: 0 -10px; rotate: 4deg; } }

.site-home .care-ribbon { background: var(--night); color: #def3f3; border: 0; padding: 26px 0; }
.site-home .care-ribbon .icon { color: var(--aqua); }
.site-home .care-ribbon span:nth-child(2) .icon { color: var(--sand); }
.site-home .care-ribbon span:nth-child(3) .icon { color: #efb7a3; }
.site-home .care-section { padding: 90px 0 0; background: #f9fcfd; }
.site-home .service-shortcuts { margin-bottom: 0; }
.site-home .service-shortcuts a { border-color: #bddfdc; background: #e5f6f2; box-shadow: 0 3px 0 #cee3de; }
.site-home .service-shortcuts a:last-child { background: #fbefdc; border-color: #ead5b5; color: #70532d; box-shadow: 0 3px 0 #e7d4b9; }
.site-home .service-category { position: relative; padding: 50px 0 80px; }
.site-home .service-category + .service-category { margin: 0; padding: 78px 0; border: 0; }
.site-home .category-heading { margin-bottom: 35px; }
.site-home .category-heading .care-icon { background: #daf4ed; color: #006d73; border: 1px solid #c0e4da; box-shadow: 0 5px 0 #badcd4, 0 14px 22px #0c49500c; transform: rotate(-6deg); }
.site-home .category-heading .care-icon .icon { transform: rotate(6deg); }
.site-home .service-photo-card {
  position: relative; border-color: #dae7e9; border-radius: 18px;
  box-shadow: 0 5px 0 #e2edef, 0 12px 24px #113d4a09;
  transform: perspective(1100px) translateY(var(--lift, 0px)) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));
}
.site-home .service-photo-card:hover { --lift: -6px; border-color: #a6d9d9; box-shadow: 0 7px 0 #c5e3e2, 0 26px 38px #124c5c21; }
.site-home .service-photo { position: relative; }
.site-home .service-photo::after { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: 0; background: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), #fff4, transparent 65%); transition: opacity .3s; }
.site-home .service-photo-card:hover .service-photo::after { opacity: 1; }
.service-symbol {
  position: absolute; right: 16px; bottom: 15px; display: grid; place-items: center; width: 47px; height: 47px;
  border: 1px solid #fff9; border-radius: 14px; background: #e5f9f3; color: #006f73;
  box-shadow: 0 4px 0 #a3cfc9, 0 9px 17px #092f3b1f; z-index: 1;
}
.service-symbol .icon { width: 23px; height: 23px; }
#podologia .col-md-6:nth-child(3n + 2) .service-symbol { background: #fff1d9; color: #8a6130; box-shadow: 0 4px 0 #d8c19c, 0 9px 17px #092f3b1f; }
#podologia .col-md-6:nth-child(3n) .service-symbol { background: #ede8fa; color: #6e588f; box-shadow: 0 4px 0 #c8bce0, 0 9px 17px #092f3b1f; }
.site-home #acupuntura {
  isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 100% 5%, #13637766, transparent 42%), linear-gradient(145deg, #07323e, #062631);
  color: #f3fbfc;
}
.site-home #acupuntura .category-heading h3 { color: #f7f5ed; }
.site-home #acupuntura .category-heading p { color: #c0dce2; }
.site-home #acupuntura .category-heading .care-icon { background: #f1d8b3; color: #684e2b; border-color: #fbe7ca; box-shadow: 0 5px 0 #98774c, 0 14px 22px #0002; }
.site-home #acupuntura .service-photo-card { background: #123d4b; border-color: #426a76; box-shadow: 0 5px 0 #021f2a, 0 14px 30px #0002; }
.site-home #acupuntura .service-photo-card:hover { border-color: #80b4bc; box-shadow: 0 7px 0 #021e27, 0 27px 40px #0004; }
.site-home #acupuntura .service-card-content h4 { color: #fbf9f3; }
.site-home #acupuntura .service-card-content p { color: #c5dfe5; }
.site-home #acupuntura .service-card-content .btn { color: #153847; background: #f2dbb7; border-color: #f2dbb7; box-shadow: 0 3px 0 #ad8d62; }
.site-home #acupuntura .service-card-content .btn:hover { background: #ffedce; border-color: #ffedce; box-shadow: 0 5px 0 #ad8d62; }
.site-home #acupuntura .service-symbol { background: #f2dbb7; color: #70522e; box-shadow: 0 4px 0 #a98657, 0 9px 17px #092f3b40; }
.section-orbit { position: absolute; top: -110px; right: -90px; display: grid; place-items: center; width: 400px; height: 400px; border: 1px solid #8ccdc52b; border-radius: 50%; color: #7fe4da17; transform: rotate(-20deg); pointer-events: none; z-index: -1; }
.section-orbit::after { content: ''; position: absolute; inset: 30px; border: 1px solid #a8d9cf25; border-radius: 50%; }
.section-orbit .icon { width: 215px; height: 215px; }
.site-home .service-note-wrap { background: var(--night-deep); padding: 17px 20px; }
.site-home .service-image-note { margin: 0; color: #a8cbd2; }

.site-home .journey-section { background: radial-gradient(ellipse at 0% 100%, #e9f5ef, transparent 48%), #fbf8f1; padding: 95px 0; }
.site-home .journey-list { padding: 28px 30px; border: 1px solid #e2e9df; border-radius: 22px; background: #ffffffd9; box-shadow: 8px 9px 0 #e5e9dd, 0 25px 45px #0b414c0c; }
.site-home .journey-list li { gap: 23px; padding: 27px 0; border-color: #e2e9e1; }
.site-home .journey-list li:first-child { padding-top: 8px; }
.site-home .journey-list li:last-child { padding-bottom: 8px; }
.site-home .journey-list .step-marker { position: relative; display: grid; place-items: center; flex-shrink: 0; width: 52px; height: 52px; border-radius: 16px; background: #dff5ef; color: #086f74; box-shadow: 0 5px 0 #badbd4; transform: rotate(-7deg); }
.step-marker .icon { width: 25px; height: 25px; transform: rotate(7deg); }
.step-marker small { position: absolute; top: -9px; right: -6px; display: grid; place-items: center; width: 23px; height: 23px; background: var(--night); color: #fff; border: 2px solid #fff; border-radius: 50%; font-family: Arial, sans-serif; font-size: .55rem; transform: rotate(7deg); }
.site-home .journey-list li:nth-child(2) .step-marker { background: #f9e6c7; color: #8c6130; box-shadow: 0 5px 0 #ddc5a1; }
.site-home .journey-list li:nth-child(3) .step-marker { background: #eee6fa; color: #775990; box-shadow: 0 5px 0 #cfc0df; }

.site-home .faq-section { position: relative; overflow: hidden; background: radial-gradient(ellipse at 0% 100%, #14596766, transparent 55%), #0a3141; color: #f5fbfd; }
.site-home .faq-section .eyebrow { color: #9de6dc; }
.site-home .faq-section h2 em { color: #a8e9dc; }
.site-home .faq-section .section-intro { color: #c3dce2; }
.site-home .faq-section .text-link { color: #f2dbb7; }
.section-symbol { display: grid; place-items: center; width: 63px; height: 63px; margin: 0 0 28px; border-radius: 19px; background: #245361; color: #b2eee2; border: 1px solid #58828c; box-shadow: 0 6px 0 #031e2a; transform: rotate(-8deg); }
.section-symbol .icon { width: 31px; height: 31px; transform: rotate(8deg); }
.site-home .faq-section .accordion { --bs-accordion-bg: #fff; --bs-accordion-active-bg: #fff; }
.site-home .faq-section .accordion-item { margin-bottom: 13px; border: 1px solid #52707c; border-radius: 13px; overflow: hidden; box-shadow: 0 4px 0 #031f2b; }
.site-home .faq-section .accordion-button { padding: 18px; gap: 12px; color: #203e46; background: #fff; font-size: .85rem; }
.faq-icon { display: grid; place-items: center; flex-shrink: 0; width: 32px; height: 32px; border-radius: 10px; background: #e9f5f1; color: #007b83; }
.faq-icon .icon { width: 18px; height: 18px; }
.site-home .faq-section .accordion-item:nth-child(2n) .faq-icon { background: #fbefdc; color: #8a6233; }
.site-home .faq-section .accordion-body { padding: 0 28px 22px 62px; color: #536970; font-size: .82rem; }
.site-home .final-section { padding: 75px 0; background: #f7fbfc; }
.site-home .final-panel { border: 1px solid #1e969d; border-bottom: 7px solid #005d6a; background: linear-gradient(115deg, #006c78 5%, #008c94 65%, #087ca0); box-shadow: 12px 14px 0 #d9e9ed, 0 25px 40px #064a5c14; }
.site-home .final-panel .eyebrow { display: flex; align-items: center; gap: 10px; color: #e0f9f0; }
.site-home .final-panel .eyebrow .icon { width: 20px; height: 20px; color: #f6deb9; }
.site-home .final-panel h2 em { color: #c6f0dc; }
.site-home .final-panel p:not(.eyebrow) { color: #e3f3f3; }
.site-home .final-panel .btn-light-brand { background: #fff1da; color: #17424b; border-color: #fff1da; box-shadow: 0 4px 0 #c6ad83; }
.site-home .final-decoration { right: 45px; top: 20px; color: #baefdb; opacity: .25; }
.site-home .final-decoration .icon { width: 300px; height: 300px; }
.cta-orbit { position: absolute; width: 360px; height: 360px; border: 1px solid #c9fff75c; border-radius: 50%; right: 5px; top: 45px; transform: rotateX(55deg) rotateZ(-20deg); pointer-events: none; }
.site-home .site-footer { padding-top: 5px; }
.site-home .floating-whatsapp { background: #00838c; box-shadow: 0 4px 0 #005761, 0 10px 28px #082f3b30; }
.site-home #acupuntura a:focus-visible, .site-home .faq-section a:focus-visible { outline-color: #f2dbb7 !important; }

@media (max-width: 991px) {
  .site-home .hero-art { margin-top: 30px; }
  .site-home .care-section { padding-top: 70px; }
  .site-home .service-category { padding-bottom: 65px; }
  .site-home .service-category + .service-category { padding: 65px 0; }
  .site-home .journey-section { padding: 75px 0; }
}
@media (max-width: 575px) {
  .site-home .care-section { padding-top: 58px; }
  .site-home .hero-brand-stage { box-shadow: 9px 16px 0 -5px #bddde4, 15px 25px 40px #063a4b1c; }
  .site-home .hero-image-stage { padding: 0; box-shadow: 9px 16px 0 -5px #accfd6, 15px 25px 40px #063a4b24; }
  .site-home .hero-image-stage .hero-brand-logo { border-radius: 23px 23px 19px 19px; }
  .site-home .hero-image-stage .art-label { top: 9px; font-size: .38rem; letter-spacing: 1.2px; }
  .site-home .hero-image-stage .floating-note { bottom: -32px; }
  .floating-symbol { width: 43px; height: 43px; border-radius: 14px; }
  .floating-symbol .icon { width: 23px; height: 23px; }
  .symbol-flower { top: 30px; left: -10px; }
  .symbol-spark { right: -9px; bottom: 95px; }
  .hero-orbit { inset: 6% -5%; }
  .site-home .care-ribbon { padding: 22px 0; }
  .site-home .service-category { padding: 40px 0 55px; }
  .site-home .service-category + .service-category { padding: 50px 0; }
  .site-home .category-heading h3 { line-height: 1.2; }
  .service-symbol { width: 43px; height: 43px; border-radius: 13px; }
  .site-home .journey-section { padding: 60px 0; }
  .site-home .journey-list { padding: 20px; box-shadow: 5px 6px 0 #e5e9dd, 0 18px 30px #0b414c0c; }
  .site-home .journey-list li { gap: 18px; }
  .site-home .journey-list .step-marker { width: 43px; height: 43px; border-radius: 13px; }
  .step-marker .icon { width: 22px; height: 22px; }
  .section-symbol { width: 54px; height: 54px; border-radius: 16px; }
  .site-home .faq-section .accordion-button { padding: 15px 13px; font-size: .8rem; gap: 10px; }
  .site-home .faq-section .accordion-body { padding: 0 22px 20px 55px; font-size: .8rem; }
  .site-home .final-section { padding: 55px 0; }
  .site-home .final-panel { box-shadow: 7px 9px 0 #d9e9ed, 0 18px 30px #064a5c14; }
  .site-home .final-panel .eyebrow { font-size: .48rem; letter-spacing: 1.1px; gap: 7px; }
  .site-home .final-panel .eyebrow .icon { width: 18px; height: 18px; }
  .site-home .final-decoration { right: -120px; top: 80px; }
  .cta-orbit { right: -170px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-home [data-tilt], .site-home .service-photo-card:hover { transform: none !important; }
  .floating-symbol { animation: none; }
}
