/* Aksu Clinic — site-wide neutral palette with restrained burgundy actions.
   This file intentionally loads last so legacy warm/brown component rules cannot
   reappear in hover, focus or mobile states. */

:root {
  --aksu-burgundy: #27060f;
  --aksu-burgundy-hover: #450b1a;
  --aksu-black: #000;
  --aksu-ink: #1d1d1f;
  --aksu-grey: #6e6e73;
  --aksu-soft-grey: #f5f5f7;
  --aksu-white: #fff;
  --aksu-line: rgba(0, 0, 0, .14);
  --aksu-line-dark: rgba(255, 255, 255, .2);
  --aksu-cta-bg: var(--aksu-burgundy);
  --aksu-cta-bg-hover: var(--aksu-burgundy-hover);
  --aksu-cta-text: var(--aksu-white);
}

html,
body,
.page-shell,
main {
  background-color: var(--aksu-soft-grey);
  color: var(--aksu-ink);
}

/* Burgundy is reserved for actions. Every state keeps a white label. */
body :is(
  .header-cta,
  .mobile-header-cta,
  .mobile-consultation-cta,
  .precision-cta,
  .clinic-signature-lead a,
  .smile-panel-cta,
  .doctor-tumu,
  .home-faq-top .page-cta,
  .button-primary,
  .nav-mega-cta,
  .page-cta a,
  .guide-cta a,
  .treatment-detail-aside a,
  .treatment-detail-bottom a,
  .doctor-editorial-cta .button,
  .clinic-package-foot button,
  .neo-glass-button,
  .journey-cta,
  .results-all-link,
  .google-reviews-link,
  .founder-intro-form button,
  .wizard-next
) {
  border-color: var(--aksu-burgundy) !important;
  background: var(--aksu-burgundy) !important;
  background-image: none !important;
  box-shadow: 0 12px 30px rgba(39, 6, 15, .2) !important;
  color: var(--aksu-white) !important;
}

body :is(
  .header-cta,
  .mobile-header-cta,
  .mobile-consultation-cta,
  .precision-cta,
  .clinic-signature-lead a,
  .smile-panel-cta,
  .doctor-tumu,
  .home-faq-top .page-cta,
  .button-primary,
  .nav-mega-cta,
  .page-cta a,
  .guide-cta a,
  .treatment-detail-aside a,
  .treatment-detail-bottom a,
  .doctor-editorial-cta .button,
  .clinic-package-foot button,
  .neo-glass-button,
  .journey-cta,
  .results-all-link,
  .google-reviews-link,
  .founder-intro-form button,
  .wizard-next
):is(:hover, :focus-visible) {
  border-color: var(--aksu-burgundy-hover) !important;
  background: var(--aksu-burgundy-hover) !important;
  background-image: none !important;
  box-shadow: 0 16px 34px rgba(39, 6, 15, .28) !important;
  color: var(--aksu-white) !important;
}

body :is(
  .header-cta,
  .mobile-header-cta,
  .mobile-consultation-cta,
  .precision-cta,
  .clinic-signature-lead a,
  .smile-panel-cta,
  .doctor-tumu,
  .home-faq-top .page-cta,
  .button-primary,
  .nav-mega-cta,
  .page-cta a,
  .guide-cta a,
  .treatment-detail-aside a,
  .treatment-detail-bottom a,
  .doctor-editorial-cta .button,
  .clinic-package-foot button,
  .neo-glass-button,
  .journey-cta,
  .results-all-link,
  .google-reviews-link,
  .founder-intro-form button,
  .wizard-next
) :where(span, small, strong, b, i, svg),
body :is(
  .header-cta,
  .mobile-header-cta,
  .mobile-consultation-cta,
  .precision-cta,
  .clinic-signature-lead a,
  .smile-panel-cta,
  .doctor-tumu,
  .home-faq-top .page-cta,
  .button-primary,
  .nav-mega-cta,
  .page-cta a,
  .guide-cta a,
  .treatment-detail-aside a,
  .treatment-detail-bottom a,
  .doctor-editorial-cta .button,
  .clinic-package-foot button,
  .neo-glass-button,
  .journey-cta,
  .results-all-link,
  .google-reviews-link,
  .founder-intro-form button,
  .wizard-next
):is(:hover, :focus-visible) :where(span, small, strong, b, i, svg) {
  color: inherit !important;
  stroke: currentColor !important;
}

/* Header and menus remain neutral. */
body .site-header :where(.desktop-nav > a, .nav-trigger, .language-button) {
  color: var(--aksu-ink) !important;
}

body .site-header :where(.desktop-nav > a, .nav-trigger)::after {
  background: var(--aksu-ink) !important;
}

body .site-header .nav-mega-col > a:is(:hover, :focus-visible),
body .site-header .language-menu a:is(:hover, :focus-visible),
body .mobile-menu a:is(:hover, :focus-visible),
body .mobile-sub-toggle:is(:hover, :focus-visible) {
  background: var(--aksu-soft-grey) !important;
  color: var(--aksu-black) !important;
}

body .site-header .nav-mega-feature-cta,
body .mobile-sub-toggle {
  border-color: var(--aksu-line) !important;
}

body .neo-hero,
body .neo-hero .hero-video-background,
body .neo-hero .precision-hero-inner,
body .neo-hero .precision-copy {
  color: var(--aksu-white) !important;
}

/* Contact cards: do not allow the old white-on-white hover regression. */
body .neo-contact-cards > a,
body .neo-contact-hours {
  border-color: var(--aksu-line) !important;
  background: var(--aksu-soft-grey) !important;
  box-shadow: none !important;
  color: var(--aksu-ink) !important;
}

body .neo-contact-cards > a :where(small, strong, span),
body .neo-contact-hours :where(small, strong, span) {
  color: var(--aksu-ink) !important;
}

body.home-page .neo-contact .neo-contact-cards > a:is(:hover, :focus-visible),
body .neo-contact-cards > a:is(:hover, :focus-visible),
body .neo-contact-hours:is(:hover, :focus-visible) {
  border-color: rgba(0, 0, 0, .28) !important;
  background: var(--aksu-white) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .09) !important;
  color: var(--aksu-ink) !important;
}

body.home-page .neo-contact .neo-contact-cards > a:is(:hover, :focus-visible) :where(small, strong, span),
body .neo-contact-cards > a:is(:hover, :focus-visible) :where(small, strong, span),
body .neo-contact-hours:is(:hover, :focus-visible) :where(small, strong, span) {
  color: var(--aksu-ink) !important;
}

body .neo-contact .neo-contact-icon,
body .neo-contact-cards .neo-contact-icon {
  border-color: var(--aksu-ink) !important;
  background: var(--aksu-ink) !important;
  background-image: none !important;
  box-shadow: none !important;
  color: var(--aksu-white) !important;
}

body .neo-contact .neo-contact-icon svg,
body .neo-contact-cards .neo-contact-icon svg {
  color: inherit !important;
  stroke: currentColor !important;
}

body .neo-map > a {
  border-color: var(--aksu-ink) !important;
  background: var(--aksu-white) !important;
  color: var(--aksu-ink) !important;
}

body .neo-map > a:is(:hover, :focus-visible) {
  border-color: var(--aksu-ink) !important;
  background: var(--aksu-ink) !important;
  color: var(--aksu-white) !important;
}

/* Neutral controls use grey/black, including hover and keyboard focus. */
body :is(
  .material-arrow,
  .treatment-carousel-actions button,
  .neo-review-controls button,
  .result-stories button,
  .precision-arrow
) {
  border-color: var(--aksu-line) !important;
  background: var(--aksu-ink) !important;
  background-image: none !important;
  color: var(--aksu-white) !important;
}

body :is(
  .material-arrow,
  .treatment-carousel-actions button,
  .neo-review-controls button,
  .result-stories button,
  .precision-arrow
):is(:hover, :focus-visible) {
  border-color: #424245 !important;
  background: #424245 !important;
  color: var(--aksu-white) !important;
}

/* Footer links use an underline for feedback; social icons invert cleanly. */
body .site-footer .footer-links a:is(:hover, :focus-visible) {
  color: var(--aksu-white) !important;
}

body .site-footer .footer-social a:is(:hover, :focus-visible) {
  border-color: var(--aksu-white) !important;
  background: var(--aksu-white) !important;
  color: var(--aksu-black) !important;
}

body .site-footer .footer-social a:is(:hover, :focus-visible) :where(svg, path) {
  color: inherit !important;
  stroke: currentColor !important;
}

body .site-footer .footer-brand > i {
  background: var(--aksu-white) !important;
}

body .site-footer .footer-contact b {
  border-color: var(--aksu-line-dark) !important;
  color: var(--aksu-white) !important;
}

/* Remove the remaining legacy champagne/brown detail colours. */
body .clinic-package-foot,
body .patient-country-flag,
body .patient-record-shot,
body .official-case-grid article,
body .guide-index a,
body .guide-card-top > i,
body .journey-step-icon,
body .journey-languages > span {
  border-color: var(--aksu-line) !important;
}

body :where(
  .clinic-certificate-top,
  .clinic-section-heading,
  .clinic-spaces-grid figcaption,
  .rontgen-ipucu,
  .rontgen-ipucu i,
  .journey-step-marker,
  .insight-reading-copy a
) {
  color: var(--aksu-grey) !important;
}

body .clinic-section-heading :where(h2, h3, strong) {
  color: var(--aksu-ink) !important;
}

body .clinic-certificate-top > i,
body .clinic-certificate-top button > i {
  background: var(--aksu-ink) !important;
  color: var(--aksu-white) !important;
}

body .journey-step-icon {
  color: var(--aksu-grey) !important;
}

body .smile-panel-kiyas .kiyas-cizgi > i {
  background: var(--aksu-ink) !important;
}

body .doctor-showcase-head h2 em {
  color: #a1a1a6 !important;
}

body .doctor-profile-card a i {
  border-color: var(--aksu-line-dark) !important;
  color: var(--aksu-white) !important;
}

body .journey-country-band > span {
  border-color: var(--aksu-line) !important;
}

body .art-crumb > span {
  color: var(--aksu-grey) !important;
}

body :is(a, button) > i[aria-hidden="true"] {
  color: inherit !important;
}

body.home-page .journey-story .journey-cta:is(:hover, :focus-visible) {
  border-color: var(--aksu-burgundy-hover) !important;
  background: var(--aksu-burgundy-hover) !important;
}

body.consultation-page .consultation-page-form .wizard-actions :is(.wizard-next, .button-primary) {
  border-color: var(--aksu-burgundy) !important;
  background: var(--aksu-burgundy) !important;
  color: var(--aksu-white) !important;
}

body.consultation-page .consultation-page-form .wizard-actions :is(.wizard-next, .button-primary):is(:hover, :focus-visible) {
  border-color: var(--aksu-burgundy-hover) !important;
  background: var(--aksu-burgundy-hover) !important;
  color: var(--aksu-white) !important;
}

/* Consultation typography: readable at desktop and mobile sizes. */
body.consultation-page .wizard-contact-grid label > span,
body.consultation-page .wizard-photo-field > span,
body.consultation-page .wizard-consent,
body.consultation-page .form-note {
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.consultation-page .wizard-contact-grid :where(input, select, textarea) {
  min-height: 52px;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.consultation-page .wizard-contact-grid textarea {
  min-height: 96px;
}

body.consultation-page .wizard-photo-copy strong,
body.consultation-page .wizard-photo-action {
  font-size: 14px !important;
}

body.consultation-page .wizard-photo-copy small,
body.consultation-page .wizard-photo-help,
body.consultation-page .consultation-form-meta p {
  font-size: 12px !important;
  line-height: 1.5 !important;
}

/* Small legal/footer copy remains readable everywhere. */
body .site-footer .footer-bottom :where(p, small, a, span) {
  font-size: 12px !important;
  line-height: 1.55 !important;
}

@media (max-width: 900px) {
  body .site-header .mobile-header-cta {
    display: inline-flex !important;
  }

  body .mobile-menu .mobile-consultation-cta {
    display: flex !important;
  }

  body.consultation-page .wizard-contact-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 620px) {
  body.consultation-page .wizard-contact-grid label > span,
  body.consultation-page .wizard-photo-field > span,
  body.consultation-page .wizard-consent,
  body.consultation-page .form-note {
    font-size: 13px !important;
  }

  body.consultation-page .wizard-contact-grid :where(input, select, textarea) {
    font-size: 16px !important; /* prevents iOS focus zoom */
  }

  body.consultation-page .wizard-photo-drop {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 13px !important;
    padding: 16px !important;
  }

  body.consultation-page .wizard-photo-action {
    grid-column: 1 / -1;
    width: 100%;
    justify-content: center;
  }
}
