/*
 * Eylül Bilen Beauty — warm ivory and champagne-gold public theme.
 * Loaded after the original Medicio stylesheet so the CMS structure stays intact.
 */
:root {
  --default-font: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;
  --heading-font: "Cormorant Garamond", Georgia, serif;
  --nav-font: "Montserrat", sans-serif;
  --background-color: #fffdfa;
  --default-color: #5e554e;
  --heading-color: #382d26;
  --accent-color: #b4883f;
  --surface-color: #ffffff;
  --contrast-color: #ffffff;
  --nav-color: #493f38;
  --nav-hover-color: #a4772e;
  --nav-mobile-background-color: #fffdfa;
  --nav-dropdown-background-color: #fffdfa;
  --nav-dropdown-color: #493f38;
  --nav-dropdown-hover-color: #a4772e;
  --beauty-gold: #b4883f;
  --beauty-gold-dark: #8a6429;
  --beauty-gold-light: #e3c887;
  --beauty-ivory: #fbf7f0;
  --beauty-cream: #f3eadc;
  --beauty-brown: #382d26;
  --beauty-muted: #81756c;
  --beauty-border: rgba(180, 136, 63, .22);
  --beauty-shadow: 0 18px 50px rgba(75, 55, 36, .10);
}

body {
  background:
    radial-gradient(circle at 8% 20%, rgba(227, 200, 135, .10), transparent 22rem),
    var(--background-color);
  font-size: 15px;
  line-height: 1.75;
  letter-spacing: .01em;
}

::selection {
  color: #fff;
  background: var(--beauty-gold);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: .015em;
}

/* Header */
.header {
  background: rgba(255, 253, 250, .96);
  border-bottom: 1px solid rgba(180, 136, 63, .14);
  box-shadow: 0 8px 35px rgba(75, 55, 36, .07);
  backdrop-filter: blur(16px);
}

.header .topbar {
  height: 34px;
  color: #7a6648;
  background: linear-gradient(90deg, #f7f0e5, #fffdfa 48%, #f7f0e5);
  border-bottom: 1px solid var(--beauty-border);
  font-size: 11px;
  letter-spacing: .055em;
}

.header .topbar i {
  color: var(--beauty-gold);
}

.header .branding {
  min-height: 86px;
  padding: 8px 0;
}

.header .logo img {
  width: auto;
  max-width: 285px;
  max-height: 68px;
  margin: 0;
  mix-blend-mode: multiply;
}

.header .logo h1 {
  color: var(--beauty-gold-dark);
  font-family: var(--nav-font);
  font-size: 25px;
  font-weight: 500;
  letter-spacing: .16em;
}

@media (min-width: 1200px) {
  .navmenu a,
  .navmenu a:focus {
    position: relative;
    padding: 28px 14px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .045em;
  }

  .navmenu > ul > li > a::after {
    content: "";
    position: absolute;
    right: 14px;
    bottom: 19px;
    left: 14px;
    height: 1px;
    background: var(--beauty-gold);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .3s ease;
  }

  .navmenu > ul > li:hover > a::after,
  .navmenu > ul > li > a.active::after {
    transform: scaleX(1);
  }

  .navmenu .dropdown ul {
    padding: 12px;
    border: 1px solid var(--beauty-border);
    border-radius: 14px;
    box-shadow: var(--beauty-shadow);
  }

  .navmenu .dropdown ul a {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13px;
  }

  .navmenu .dropdown ul a:hover {
    background: var(--beauty-ivory);
  }
}

.header .cta-btn,
.header .cta-btn:focus {
  min-width: 124px;
  padding: 11px 20px;
  margin-left: 22px;
  color: #fff;
  background: linear-gradient(135deg, #c79d50, #926b2e);
  border: 1px solid #b88a3d;
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(150, 105, 42, .20);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .08em;
  text-align: center;
  text-transform: uppercase;
}

.header .cta-btn:hover,
.header .cta-btn:focus:hover {
  color: #fff;
  background: linear-gradient(135deg, #936a2e, #c79d50);
  box-shadow: 0 10px 28px rgba(150, 105, 42, .30);
  transform: translateY(-1px);
}

/* Shared sections */
section,
.section {
  padding: 88px 0;
  scroll-margin-top: 120px;
}

.light-background {
  --background-color: #f8f2e9;
  --surface-color: #fffdfa;
}

.section-title {
  max-width: 780px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 52px;
}

.section-title::before {
  content: "✦";
  display: block;
  margin-bottom: 7px;
  color: var(--beauty-gold);
  font-size: 14px;
  line-height: 1;
}

.section-title h2 {
  margin-bottom: 17px;
  padding-bottom: 20px;
  color: var(--beauty-brown);
  font-size: clamp(34px, 4vw, 48px);
  font-weight: 600;
  line-height: 1.05;
}

.section-title h2::after {
  width: 74px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--beauty-gold), transparent);
}

.section-title p {
  color: var(--beauty-muted);
  font-size: 14px;
  letter-spacing: .025em;
}

/* Hero */
.hero .carousel {
  min-height: min(720px, calc(100vh - 120px));
  background: var(--beauty-cream);
}

.hero .carousel-item {
  align-items: center;
  justify-content: flex-start;
}

.hero .carousel-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(42, 31, 23, .38) 0%, rgba(42, 31, 23, .08) 49%, transparent 72%),
    linear-gradient(0deg, rgba(32, 24, 18, .18), transparent 45%);
}

.hero img {
  filter: saturate(.88) sepia(.06);
}

.hero .container {
  width: min(610px, calc(100% - 110px));
  margin: 0 0 0 max(7vw, 50px);
  padding: 42px 46px 40px;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(135deg, rgba(35, 25, 19, .72), rgba(65, 48, 34, .46));
  border: 1px solid rgba(255, 255, 255, .24);
  border-top: 1px solid rgba(255, 255, 255, .32);
  border-radius: 3px 34px 3px 34px;
  box-shadow: 0 28px 70px rgba(30, 21, 15, .25);
  text-align: left;
  backdrop-filter: blur(7px);
}

.hero .container::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background: linear-gradient(var(--beauty-gold-light), var(--beauty-gold-dark));
}

.hero h2 {
  max-width: 520px;
  margin-bottom: 15px;
  color: #fff;
  font-size: clamp(40px, 5vw, 62px);
  font-weight: 600;
  line-height: .98;
  text-shadow: 0 3px 18px rgba(0, 0, 0, .18);
}

.hero p {
  max-width: 520px;
  margin-bottom: 17px;
  color: rgba(255, 255, 255, .88);
  font-size: 14px;
}

.hero .btn-get-started,
.call-to-action .cta-btn,
.pricing .btn-buy {
  padding: 11px 29px;
  color: #fff;
  background: linear-gradient(135deg, #c79d50, #91692e);
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 999px;
  box-shadow: 0 8px 22px rgba(34, 24, 16, .16);
  font-family: var(--nav-font);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.hero .btn-get-started {
  margin: 8px 0 0;
}

.hero .btn-get-started:hover,
.call-to-action .cta-btn:hover,
.pricing .btn-buy:hover {
  color: #fff;
  background: linear-gradient(135deg, #8d652b, #cda456);
  border-color: rgba(255, 255, 255, .5);
  transform: translateY(-2px);
}

.hero .carousel-control-next-icon,
.hero .carousel-control-prev-icon {
  width: 46px;
  height: 46px;
  color: #fff;
  background: rgba(55, 40, 28, .50);
  border: 1px solid rgba(255, 255, 255, .35);
  backdrop-filter: blur(8px);
}

.hero .carousel-indicators li {
  width: 24px;
  height: 3px;
  background: rgba(255, 255, 255, .65);
  border-radius: 999px;
}

.hero .carousel-indicators li.active {
  background: var(--beauty-gold-light);
}

/* Cards and feature blocks */
.featured-services {
  position: relative;
  z-index: 4;
  margin-top: -36px;
  background: transparent;
}

.featured-services .service-item {
  padding: 38px 30px;
  overflow: hidden;
  background: rgba(255, 253, 250, .98);
  border: 1px solid var(--beauty-border);
  border-radius: 3px 22px 3px 22px;
  box-shadow: var(--beauty-shadow);
}

.featured-services .service-item::before {
  background: linear-gradient(145deg, #c9a25b, #8d652b);
}

.featured-services .service-item .icon {
  margin-bottom: 17px;
}

.featured-services .service-item .icon i {
  color: var(--beauty-gold);
  font-size: 32px;
}

.featured-services .service-item h4 {
  font-family: var(--nav-font);
  font-size: 16px;
  font-weight: 600;
}

.featured-services .service-item:hover::before {
  border-radius: 3px 22px 3px 22px;
}

.services .service-item,
.stats .stats-item,
.contact .info-item,
.contact .php-email-form,
.faq .faq-container .faq-item,
.pricing .pricing-item {
  background: rgba(255, 255, 255, .94);
  border: 1px solid var(--beauty-border);
  border-radius: 3px 22px 3px 22px;
  box-shadow: 0 14px 42px rgba(75, 55, 36, .07);
}

.services .service-item {
  padding: 36px 28px;
}

.services .service-item .icon {
  width: 74px;
  height: 74px;
  color: var(--beauty-gold);
  background: linear-gradient(145deg, #fff, #f7ecda);
  border: 1px solid var(--beauty-border);
  box-shadow: 0 12px 28px rgba(118, 83, 36, .12);
}

.services .service-item h3 {
  font-size: 27px;
  font-weight: 600;
}

.services .service-item h3::after {
  height: 1px;
  background: var(--beauty-gold);
}

.services .service-item:hover {
  border-color: rgba(180, 136, 63, .45);
  box-shadow: 0 22px 55px rgba(75, 55, 36, .12);
  transform: translateY(-5px);
}

.stats .stats-item {
  padding: 27px;
}

.stats .stats-item i {
  color: var(--beauty-gold);
}

.stats .stats-item span {
  color: var(--beauty-brown);
  font-family: var(--heading-font);
  font-size: 42px;
}

/* Content images */
.about img,
.features .features-image,
.tabs .tab-pane img {
  border-radius: 3px 34px 3px 34px;
}

.about img,
.features .features-image img,
.tabs .tab-pane img {
  box-shadow: var(--beauty-shadow);
}

.about .content h3,
.features h3,
.tabs .details h3 {
  color: var(--beauty-brown);
  font-size: clamp(30px, 3vw, 40px);
  font-weight: 600;
  line-height: 1.1;
}

.about .content ul i {
  color: var(--beauty-gold);
}

.features h3::after {
  width: 74px;
  height: 1px;
  background: var(--beauty-gold);
}

.features .icon-box {
  margin-top: 32px;
}

.features .icon-box i {
  width: 58px;
  height: 58px;
  color: var(--beauty-gold);
  background: var(--beauty-ivory);
  border: 1px solid var(--beauty-border);
  border-radius: 50%;
  box-shadow: none;
}

.features .icon-box:hover i {
  color: #fff;
  background: var(--beauty-gold);
}

/* CTA */
.accent-background {
  --background-color: #5a4433;
  --default-color: #fffaf2;
  --heading-color: #ffffff;
  --surface-color: #6c523d;
  --contrast-color: #ffffff;
}

.call-to-action {
  background:
    linear-gradient(rgba(61, 44, 32, .94), rgba(61, 44, 32, .94)),
    radial-gradient(circle at 20% 40%, rgba(225, 192, 121, .5), transparent 25rem);
}

.call-to-action::before,
.call-to-action::after {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  border: 1px solid rgba(227, 200, 135, .20);
  border-radius: 50%;
}

.call-to-action::before {
  top: -105px;
  left: 4%;
}

.call-to-action::after {
  right: 4%;
  bottom: -115px;
}

.call-to-action h3 {
  color: #fff;
  font-size: 39px;
  font-weight: 600;
}

.call-to-action p {
  color: rgba(255, 255, 255, .78);
}

/* Forms */
.appointment .php-email-form {
  padding: 38px;
  background: rgba(255, 253, 250, .92);
  border: 1px solid var(--beauty-border);
  border-radius: 3px 30px 3px 30px;
  box-shadow: var(--beauty-shadow);
}

.appointment .php-email-form input,
.appointment .php-email-form textarea,
.appointment .php-email-form select,
.contact .php-email-form input[type="text"],
.contact .php-email-form input[type="email"],
.contact .php-email-form textarea {
  min-height: 50px;
  color: var(--beauty-brown);
  background: #fff;
  border: 1px solid rgba(92, 72, 53, .17);
  border-radius: 10px;
}

.appointment .php-email-form input:focus,
.appointment .php-email-form textarea:focus,
.appointment .php-email-form select:focus,
.contact .php-email-form input[type="text"]:focus,
.contact .php-email-form input[type="email"]:focus,
.contact .php-email-form textarea:focus {
  border-color: var(--beauty-gold);
  box-shadow: 0 0 0 3px rgba(180, 136, 63, .10);
}

.appointment .php-email-form button[type="submit"],
.contact .php-email-form button[type="submit"] {
  padding: 12px 32px;
  color: #fff;
  background: linear-gradient(135deg, #c79d50, #91692e);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.appointment .php-email-form button[type="submit"]:hover,
.contact .php-email-form button[type="submit"]:hover {
  background: linear-gradient(135deg, #91692e, #c79d50);
  transform: translateY(-1px);
}

/* Tabs, testimonials, team and gallery */
.tabs .nav-link {
  margin-bottom: 6px;
  padding: 15px 18px;
  border: 1px solid transparent;
  border-radius: 2px 14px 2px 14px;
}

.tabs .nav-link.active {
  color: #fff;
  background: linear-gradient(135deg, #c79d50, #91692e);
  border-color: transparent;
  box-shadow: 0 9px 25px rgba(150, 105, 42, .17);
}

.testimonials .testimonial-item p {
  min-height: 220px;
  padding: 32px 30px 70px;
  background: #fff;
  border: 1px solid var(--beauty-border);
  border-radius: 3px 24px 3px 24px;
  box-shadow: 0 14px 40px rgba(75, 55, 36, .07);
  font-family: var(--heading-font);
  font-size: 18px;
  font-style: normal;
  line-height: 1.55;
}

.testimonials .testimonial-item .quote-icon-left,
.testimonials .testimonial-item .quote-icon-right {
  color: var(--beauty-gold-light);
}

.testimonials .testimonial-item .testimonial-img {
  border-color: var(--beauty-ivory);
}

.doctors .team-member {
  border: 1px solid var(--beauty-border);
  border-radius: 3px 24px 3px 24px;
  box-shadow: 0 15px 44px rgba(75, 55, 36, .09);
}

.doctors .team-member .member-info {
  padding: 24px 20px 27px;
  text-align: center;
}

.doctors .team-member .member-info h4 {
  font-size: 25px;
  font-weight: 600;
}

.gallery .swiper-slide img {
  border-radius: 2px 20px 2px 20px;
}

@media (min-width: 992px) {
  .gallery .swiper-slide-active {
    background: #fff;
    border: 2px solid var(--beauty-gold);
    border-radius: 3px 24px 3px 24px;
    box-shadow: var(--beauty-shadow);
  }
}

.swiper-pagination .swiper-pagination-bullet,
.gallery .swiper-pagination .swiper-pagination-bullet,
.testimonials .swiper-pagination .swiper-pagination-bullet {
  border-color: var(--beauty-gold);
}

.gallery .swiper-pagination .swiper-pagination-bullet-active,
.testimonials .swiper-pagination .swiper-pagination-bullet-active {
  background: var(--beauty-gold);
}

/* Pricing, FAQ and contact */
.pricing .pricing-item {
  height: 100%;
  padding: 28px;
}

.pricing .pricing-item h3 {
  margin: -28px -28px 23px;
  padding: 23px 18px;
  color: var(--beauty-brown);
  background: linear-gradient(135deg, #fbf5eb, #f1e4d0);
  font-family: var(--nav-font);
  font-size: 14px;
  letter-spacing: .04em;
}

.pricing .pricing-item h4 {
  color: var(--beauty-gold-dark);
  font-size: 42px;
}

.pricing .featured {
  border-color: rgba(180, 136, 63, .65);
  box-shadow: 0 20px 55px rgba(106, 76, 37, .15);
  transform: translateY(-7px);
}

.pricing .featured h3,
.pricing .advanced {
  color: #fff;
  background: linear-gradient(135deg, #c79d50, #91692e);
}

.pricing .btn-wrap {
  margin: 0 -28px -28px;
  padding: 23px 15px;
  background: var(--beauty-ivory);
}

.faq .faq-container .faq-item {
  padding: 23px 25px;
}

.faq .faq-container .faq-active {
  border-color: rgba(180, 136, 63, .65);
  box-shadow: 0 12px 35px rgba(75, 55, 36, .07);
}

.contact .info-item {
  padding: 29px 15px 32px;
}

.contact .info-item i {
  color: var(--beauty-gold);
  background: var(--beauty-ivory);
  border: 1px solid var(--beauty-border);
}

.contact .php-email-form {
  padding: 36px;
}

/* Inner pages */
.page-title .heading {
  padding: 90px 0;
  background:
    linear-gradient(rgba(255, 253, 250, .90), rgba(255, 253, 250, .90)),
    radial-gradient(circle at 50% 0, rgba(218, 182, 108, .28), transparent 32rem);
  border-color: var(--beauty-border);
}

.page-title .heading h1 {
  color: var(--beauty-brown);
  font-size: clamp(42px, 5vw, 62px);
  font-weight: 600;
}

.page-title nav {
  background: var(--beauty-ivory);
}

.service-details .services-list {
  padding: 18px 28px;
  background: #fff;
  border-color: var(--beauty-border);
  border-radius: 3px 20px 3px 20px;
  box-shadow: 0 12px 35px rgba(75, 55, 36, .06);
}

.service-details .services-list a {
  border-color: var(--beauty-border);
}

.service-details .services-list a.active,
.service-details .services-list a:hover {
  border-color: var(--beauty-gold);
}

/* Footer */
.footer.light-background {
  --background-color: #30251f;
  --default-color: rgba(255, 250, 242, .72);
  --heading-color: #ffffff;
  --surface-color: #3b2e27;
  color: var(--default-color);
  background:
    radial-gradient(circle at 15% 10%, rgba(202, 160, 83, .13), transparent 24rem),
    var(--background-color);
}

.footer .footer-top {
  padding-top: 70px;
}

.footer .footer-about .logo span {
  color: var(--beauty-gold-light);
  font-family: var(--heading-font);
  font-size: 32px;
  font-weight: 600;
}

.footer h4 {
  color: var(--beauty-gold-light);
  font-family: var(--nav-font);
  font-size: 12px;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.footer .footer-links ul a,
.footer .social-links a {
  color: rgba(255, 250, 242, .70);
}

.footer .footer-links ul a:hover,
.footer .social-links a:hover {
  color: var(--beauty-gold-light);
}

.footer .social-links a {
  border-color: rgba(227, 200, 135, .35);
}

.footer .copyright {
  border-color: rgba(227, 200, 135, .13);
}

.whatsapp-float {
  position: fixed;
  left: 22px;
  bottom: 22px;
  z-index: 99990;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  color: #fff;
  background: #25d366;
  border-radius: 50%;
  box-shadow: 0 12px 28px rgba(18, 140, 71, .35);
  font-size: 40px;
  line-height: 1;
}

.whatsapp-float .bi::before {
  font-size: 40px;
}

.whatsapp-float:hover {
  color: #fff;
  background: #1ebe5d;
  transform: translateY(-2px);
}

.scroll-top {
  right: 22px;
  bottom: 22px;
  background: linear-gradient(135deg, #c79d50, #91692e);
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 50%;
  box-shadow: 0 10px 26px rgba(45, 31, 20, .24);
}

/* Responsive */
@media (max-width: 1199px) {
  .header .branding {
    min-height: 74px;
  }

  .header .logo img {
    max-width: 225px;
    max-height: 58px;
  }

  .navmenu ul {
    border: 1px solid var(--beauty-border);
    border-radius: 3px 22px 3px 22px;
    box-shadow: var(--beauty-shadow);
  }

  .hero .container {
    margin-left: 50px;
    margin-right: 50px;
  }
}

@media (max-width: 767px) {
  section,
  .section {
    padding: 66px 0;
  }

  .header .topbar {
    height: 30px;
    font-size: 10px;
  }

  .header .branding {
    min-height: 68px;
  }

  .header .logo img {
    max-width: 176px;
    max-height: 50px;
  }

  .header .cta-btn {
    display: none;
  }

  .hero .carousel {
    min-height: 620px;
  }

  .hero .carousel-item::after {
    background: linear-gradient(0deg, rgba(39, 28, 20, .72), rgba(39, 28, 20, .05) 80%);
  }

  .hero .container {
    width: auto;
    margin: 0 20px 54px;
    padding: 30px 27px;
    align-self: flex-end;
  }

  .hero h2 {
    font-size: 39px;
  }

  .featured-services {
    margin-top: 0;
  }

  .appointment .php-email-form,
  .contact .php-email-form {
    padding: 24px 20px;
  }

  .pricing .featured {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
