.elementor-kit-6{--e-global-color-primary:#0D6B61;--e-global-color-secondary:#172623;--e-global-color-text:#172623;--e-global-color-accent:#F6F2E9;--e-global-typography-primary-font-family:"Manrope";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   AASHIRWAD DENTAL — GLOBAL DESIGN SYSTEM
   Astra + Elementor Pro
   ========================================================= */


/* ---------------------------------------------------------
   1. BRAND VARIABLES
   --------------------------------------------------------- */

:root {
  --adc-green: #0D6B61;
  --adc-ivory: #F6F2E9;
  --adc-ink: #172623;

  --adc-green-soft: rgba(13, 107, 97, 0.08);
  --adc-green-medium: rgba(13, 107, 97, 0.16);
  --adc-ink-soft: rgba(23, 38, 35, 0.68);
  --adc-border: rgba(23, 38, 35, 0.12);
  --adc-border-light: rgba(246, 242, 233, 0.18);

  --adc-shadow-sm:
    0 10px 30px rgba(23, 38, 35, 0.06);

  --adc-shadow-md:
    0 24px 60px rgba(23, 38, 35, 0.10);

  --adc-shadow-green:
    0 18px 45px rgba(13, 107, 97, 0.22);

  --adc-container: 1240px;

  --adc-gutter:
    clamp(18px, 4vw, 32px);

  --adc-section-space:
    clamp(80px, 9vw, 140px);

  --adc-radius-sm: 12px;
  --adc-radius-md: 20px;
  --adc-radius-lg: 32px;
  --adc-radius-xl: 44px;
  --adc-radius-pill: 999px;

  --adc-transition:
    350ms cubic-bezier(.22, .61, .36, 1);

  --adc-reveal-transition:
    900ms cubic-bezier(.16, 1, .3, 1);
}


/* ---------------------------------------------------------
   2. GLOBAL RESET AND BASE STYLING
   --------------------------------------------------------- */

html {
  scroll-behavior: smooth;
  overflow-x: clip;
}

body {
  margin: 0;
  overflow-x: clip;
  background: var(--adc-ivory);
  color: var(--adc-ink);
  font-family: "Inter", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
svg,
video {
  display: block;
  max-width: 100%;
}

button,
input,
textarea,
select {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--adc-ink);
  font-family: "Manrope", Arial, sans-serif;
  line-height: 1.12;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

p {
  text-wrap: pretty;
}

::selection {
  background: var(--adc-green);
  color: var(--adc-ivory);
}


/* ---------------------------------------------------------
   3. PAGE AND SECTION SYSTEM
   --------------------------------------------------------- */

.adc-section {
  position: relative;
  isolation: isolate;
  width: 100%;
  padding-block: var(--adc-section-space);
  overflow: clip;
  background: var(--adc-ivory);
}

.adc-section--light {
  background: var(--adc-ivory);
  color: var(--adc-ink);
}

.adc-section--white {
  background: #ffffff;
  color: var(--adc-ink);
}

.adc-section--green {
  background: var(--adc-green);
  color: var(--adc-ivory);
}

.adc-section--dark {
  background: var(--adc-ink);
  color: var(--adc-ivory);
}

.adc-section--green h1,
.adc-section--green h2,
.adc-section--green h3,
.adc-section--green h4,
.adc-section--dark h1,
.adc-section--dark h2,
.adc-section--dark h3,
.adc-section--dark h4 {
  color: var(--adc-ivory);
}

.adc-container {
  position: relative;
  z-index: 2;
  width: min(
    calc(100% - (var(--adc-gutter) * 2)),
    var(--adc-container)
  );
  margin-inline: auto;
}

.adc-container--narrow {
  width: min(
    calc(100% - (var(--adc-gutter) * 2)),
    860px
  );
  margin-inline: auto;
}

.adc-container--wide {
  width: min(
    calc(100% - (var(--adc-gutter) * 2)),
    1440px
  );
  margin-inline: auto;
}


/* ---------------------------------------------------------
   4. TYPOGRAPHY SYSTEM
   --------------------------------------------------------- */

.adc-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  padding: 9px 16px;
  border: 1px solid var(--adc-green-medium);
  border-radius: var(--adc-radius-pill);
  background: var(--adc-green-soft);
  color: var(--adc-green);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.adc-kicker::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}

.adc-section--green .adc-kicker,
.adc-section--dark .adc-kicker {
  border-color: var(--adc-border-light);
  background: rgba(246, 242, 233, 0.08);
  color: var(--adc-ivory);
}

.adc-title {
  max-width: 920px;
  margin: 0 0 24px;
  font-size: clamp(2.15rem, 4.3vw, 4rem);
  font-weight: 750;
}

.adc-title--hero {
  max-width: 980px;
  font-size: clamp(2.75rem, 6vw, 5.7rem);
  line-height: 1.02;
}

.adc-title--small {
  font-size: clamp(1.8rem, 3vw, 2.8rem);
}

.adc-lead {
  max-width: 720px;
  margin: 0;
  color: var(--adc-ink-soft);
  font-size: clamp(1.05rem, 1.4vw, 1.2rem);
  line-height: 1.85;
}

.adc-section--green .adc-lead,
.adc-section--dark .adc-lead {
  color: rgba(246, 242, 233, 0.78);
}

.adc-section-heading {
  max-width: 850px;
  margin-bottom: clamp(44px, 6vw, 76px);
}

.adc-section-heading--center {
  margin-inline: auto;
  text-align: center;
}

.adc-section-heading--center .adc-title,
.adc-section-heading--center .adc-lead {
  margin-inline: auto;
}


/* ---------------------------------------------------------
   5. BUTTON SYSTEM
   --------------------------------------------------------- */

.adc-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.adc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 14px 27px;
  border: 1px solid transparent;
  border-radius: var(--adc-radius-pill);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.01em;
  cursor: pointer;
  transition:
    transform var(--adc-transition),
    box-shadow var(--adc-transition),
    background var(--adc-transition),
    color var(--adc-transition),
    border-color var(--adc-transition);
}

.adc-btn:hover {
  transform: translateY(-3px);
}

.adc-btn:focus-visible {
  outline: 3px solid rgba(13, 107, 97, 0.28);
  outline-offset: 4px;
}

.adc-btn--primary {
  background: var(--adc-green);
  color: var(--adc-ivory);
  box-shadow: var(--adc-shadow-green);
}

.adc-btn--primary:hover {
  color: var(--adc-ivory);
  filter: brightness(0.9);
}

.adc-btn--secondary {
  border-color: var(--adc-border);
  background: transparent;
  color: var(--adc-ink);
}

.adc-btn--secondary:hover {
  border-color: var(--adc-green);
  background: var(--adc-green-soft);
  color: var(--adc-green);
}

.adc-section--green .adc-btn--primary,
.adc-section--dark .adc-btn--primary {
  background: var(--adc-ivory);
  color: var(--adc-green);
  box-shadow: var(--adc-shadow-md);
}

.adc-section--green .adc-btn--secondary,
.adc-section--dark .adc-btn--secondary {
  border-color: var(--adc-border-light);
  color: var(--adc-ivory);
}

.adc-section--green .adc-btn--secondary:hover,
.adc-section--dark .adc-btn--secondary:hover {
  background: rgba(246, 242, 233, 0.10);
  color: var(--adc-ivory);
}


/* Elementor button widget compatibility */

.adc-el-btn-primary .elementor-button {
  border-radius: var(--adc-radius-pill) !important;
  background: var(--adc-green) !important;
  color: var(--adc-ivory) !important;
  box-shadow: var(--adc-shadow-green);
  font-family: "Manrope", Arial, sans-serif !important;
  font-weight: 700 !important;
  transition: var(--adc-transition);
}

.adc-el-btn-primary .elementor-button:hover {
  transform: translateY(-3px);
  filter: brightness(0.9);
}


/* ---------------------------------------------------------
   6. GRID SYSTEM
   --------------------------------------------------------- */

.adc-grid {
  display: grid;
  gap: clamp(18px, 2.5vw, 30px);
}

.adc-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.adc-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.adc-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.adc-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(48px, 8vw, 110px);
}


/* ---------------------------------------------------------
   7. CARD SYSTEM
   --------------------------------------------------------- */

.adc-card {
  position: relative;
  height: 100%;
  padding: clamp(26px, 3vw, 40px);
  overflow: hidden;
  border: 1px solid var(--adc-border);
  border-radius: var(--adc-radius-lg);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: var(--adc-shadow-sm);
  transition:
    transform var(--adc-transition),
    box-shadow var(--adc-transition),
    border-color var(--adc-transition);
}

.adc-card:hover {
  transform: translateY(-7px);
  border-color: var(--adc-green-medium);
  box-shadow: var(--adc-shadow-md);
}

.adc-card--green {
  border-color: transparent;
  background: var(--adc-green);
  color: var(--adc-ivory);
}

.adc-card--green h2,
.adc-card--green h3,
.adc-card--green h4 {
  color: var(--adc-ivory);
}

.adc-card-title {
  margin: 0 0 14px;
  font-size: clamp(1.25rem, 1.8vw, 1.65rem);
  font-weight: 700;
}

.adc-card-text {
  margin: 0;
  color: var(--adc-ink-soft);
  font-size: 15px;
  line-height: 1.8;
}

.adc-card--green .adc-card-text {
  color: rgba(246, 242, 233, 0.76);
}


/* ---------------------------------------------------------
   8. SIGNATURE CIRCULAR MOTIF
   --------------------------------------------------------- */

.adc-ring {
  position: absolute;
  z-index: -1;
  width: 280px;
  aspect-ratio: 1;
  border: 1px solid var(--adc-green-medium);
  border-radius: 50%;
  pointer-events: none;
}

.adc-ring::after {
  content: "";
  position: absolute;
  inset: 18%;
  border: 1px dashed var(--adc-green-medium);
  border-radius: inherit;
}

.adc-ring--large {
  width: min(50vw, 680px);
}

.adc-ring--top-right {
  top: -150px;
  right: -140px;
}

.adc-ring--bottom-left {
  bottom: -160px;
  left: -140px;
}

.adc-section--green .adc-ring,
.adc-section--dark .adc-ring {
  border-color: rgba(246, 242, 233, 0.12);
}

.adc-section--green .adc-ring::after,
.adc-section--dark .adc-ring::after {
  border-color: rgba(246, 242, 233, 0.10);
}


/* ---------------------------------------------------------
   9. IMAGE SYSTEM
   --------------------------------------------------------- */

.adc-image-frame {
  position: relative;
  overflow: hidden;
  border-radius: var(--adc-radius-xl);
  background: var(--adc-green-soft);
}

.adc-image-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 700ms cubic-bezier(.16, 1, .3, 1);
}

.adc-image-frame:hover img {
  transform: scale(1.035);
}

.adc-image-frame--portrait {
  aspect-ratio: 4 / 5;
}

.adc-image-frame--landscape {
  aspect-ratio: 16 / 10;
}


/* ---------------------------------------------------------
   10. DIVIDERS AND SMALL ELEMENTS
   --------------------------------------------------------- */

.adc-divider {
  width: 100%;
  height: 1px;
  background: var(--adc-border);
}

.adc-icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: var(--adc-green-soft);
  color: var(--adc-green);
  font-family: "Manrope", Arial, sans-serif;
  font-weight: 700;
}

.adc-meta {
  color: var(--adc-ink-soft);
  font-size: 13px;
  line-height: 1.5;
}


/* ---------------------------------------------------------
   11. ELEMENTOR FORM SYSTEM
   Add class "adc-form" to the Elementor Form widget
   --------------------------------------------------------- */

.adc-form .elementor-field-group {
  margin-bottom: 16px !important;
}

.adc-form .elementor-field-label {
  margin-bottom: 8px !important;
  color: var(--adc-ink) !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.adc-form input.elementor-field,
.adc-form textarea.elementor-field,
.adc-form select.elementor-field {
  min-height: 54px;
  padding: 14px 17px !important;
  border: 1px solid var(--adc-border) !important;
  border-radius: var(--adc-radius-sm) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: var(--adc-ink) !important;
  box-shadow: none !important;
  transition:
    border-color var(--adc-transition),
    box-shadow var(--adc-transition),
    background var(--adc-transition);
}

.adc-form textarea.elementor-field {
  min-height: 145px;
  resize: vertical;
}

.adc-form input.elementor-field:focus,
.adc-form textarea.elementor-field:focus,
.adc-form select.elementor-field:focus {
  border-color: var(--adc-green) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px var(--adc-green-soft) !important;
  outline: none !important;
}

.adc-form .elementor-button {
  min-height: 54px;
  padding: 15px 28px !important;
  border-radius: var(--adc-radius-pill) !important;
  background: var(--adc-green) !important;
  color: var(--adc-ivory) !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-weight: 700 !important;
  box-shadow: var(--adc-shadow-green);
  transition: var(--adc-transition);
}

.adc-form .elementor-button:hover {
  transform: translateY(-3px);
  filter: brightness(0.9);
}


/* ---------------------------------------------------------
   12. SCROLL REVEAL SYSTEM
   Activated only when JavaScript is available
   --------------------------------------------------------- */

.adc-motion-enabled .adc-reveal,
.adc-motion-enabled .adc-reveal-left,
.adc-motion-enabled .adc-reveal-right,
.adc-motion-enabled .adc-reveal-scale {
  opacity: 0;
  filter: blur(7px);
  transition:
    opacity var(--adc-reveal-transition),
    transform var(--adc-reveal-transition),
    filter var(--adc-reveal-transition);
  transition-delay: var(--adc-delay, 0ms);
  will-change: opacity, transform, filter;
}

.adc-motion-enabled .adc-reveal {
  transform: translate3d(0, 52px, 0);
}

.adc-motion-enabled .adc-reveal-left {
  transform: translate3d(-52px, 0, 0);
}

.adc-motion-enabled .adc-reveal-right {
  transform: translate3d(52px, 0, 0);
}

.adc-motion-enabled .adc-reveal-scale {
  transform: scale(0.965);
}

.adc-motion-enabled .adc-reveal.is-visible,
.adc-motion-enabled .adc-reveal-left.is-visible,
.adc-motion-enabled .adc-reveal-right.is-visible,
.adc-motion-enabled .adc-reveal-scale.is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
}


/* Page-load animation for hero content */

.adc-intro {
  animation: adcIntro 950ms cubic-bezier(.16, 1, .3, 1) both;
}

.adc-intro--delay-1 {
  animation-delay: 120ms;
}

.adc-intro--delay-2 {
  animation-delay: 240ms;
}

.adc-intro--delay-3 {
  animation-delay: 360ms;
}

@keyframes adcIntro {
  from {
    opacity: 0;
    filter: blur(7px);
    transform: translateY(34px);
  }

  to {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}


/* ---------------------------------------------------------
   13. TABLET RESPONSIVENESS
   --------------------------------------------------------- */

@media (max-width: 1024px) {

  .adc-grid--3,
  .adc-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .adc-split {
    grid-template-columns: 1fr;
    gap: 56px;
  }

}


/* ---------------------------------------------------------
   14. MOBILE RESPONSIVENESS
   --------------------------------------------------------- */

@media (max-width: 767px) {

  :root {
    --adc-section-space: 76px;
    --adc-gutter: 18px;
  }

  body {
    font-size: 15px;
  }

  .adc-title {
    font-size: clamp(2rem, 10vw, 2.75rem);
    line-height: 1.08;
  }

  .adc-title--hero {
    font-size: clamp(2.65rem, 13vw, 4rem);
    line-height: 1.02;
  }

  .adc-grid--2,
  .adc-grid--3,
  .adc-grid--4 {
    grid-template-columns: 1fr;
  }

  .adc-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .adc-btn {
    width: 100%;
  }

  .adc-card {
    padding: 26px;
    border-radius: 24px;
  }

  .adc-ring--large {
    width: 430px;
  }

  .adc-motion-enabled .adc-reveal-left,
  .adc-motion-enabled .adc-reveal-right {
    transform: translate3d(0, 42px, 0);
  }

}


/* ---------------------------------------------------------
   15. ACCESSIBILITY — REDUCED MOTION
   --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .adc-motion-enabled .adc-reveal,
  .adc-motion-enabled .adc-reveal-left,
  .adc-motion-enabled .adc-reveal-right,
  .adc-motion-enabled .adc-reveal-scale {
    opacity: 1;
    filter: none;
    transform: none;
  }

}/* End custom CSS */