/* Dent Alert — complete services, isolated from the theme. */
.dx-services,.dx-services *{box-sizing:border-box}
.dx-services{position:relative;isolation:isolate;overflow:hidden;padding:48px max(24px,3.8vw) 72px;background:radial-gradient(ellipse at 60% 25%,#e9f6ff 0,transparent 65%),linear-gradient(150deg,#f8fcff,#eef8ff 65%,#d6f2ff);color:#0a2868;text-align:left}
.dx-services-layout{position:relative;z-index:2;max-width:1980px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,350px) minmax(0,1fr);gap:28px 36px}
.dx-services-intro{grid-row:1/3}
.dx-services-badge{display:inline-flex;align-items:center;gap:10px;margin:0 0 23px;padding:9px 12px;border:1px solid #d9efff;border-radius:30px;background:#ffffffd9;box-shadow:0 2px 10px #008fea24;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;line-height:1.3}
.dx-services-badge>span{flex:none;width:13px;height:13px;border-radius:50%;background:linear-gradient(135deg,#55ff7a,#00ac23);box-shadow:0 0 10px #00d93c40}
.dx-services h2{font-size:clamp(30px,2.2vw,44px);line-height:1.07;font-weight:850;letter-spacing:-.035em;margin:0;color:#0a2868}
.dx-services h2>span{display:block;color:#008e40;background:linear-gradient(110deg,#00976c,#108c17);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.dx-services h2::after{content:'';display:block;width:170px;max-width:65%;height:4px;margin-top:18px;border-radius:4px;background:linear-gradient(90deg,#0758ff,#00d38b99)}
.dx-services-description{margin:18px 0 0;font-size:18px;line-height:1.4;color:#6275a1}
.dx-services-trust{display:flex;gap:16px;margin:36px 0 0;padding:0;list-style:none}
.dx-services-trust li{display:flex;align-items:center;gap:9px;margin:0;padding:0;flex:1;font-size:12px;font-weight:700;line-height:1.3}
.dx-services-trust li::before{display:none}
.dx-services-trust li+li{border-left:1px solid #abc7e7;padding-left:12px}
.dx-services-trust svg{width:33px;height:33px;flex:none;color:#00a9ee}
.dx-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 14px;align-items:stretch}
.dx-service-card{--service-accent:#008cff;position:relative;display:flex;align-items:flex-start;gap:15px;padding:24px 42px 24px 18px;border:1px solid #ffffffdb;border-radius:27px;background:linear-gradient(120deg,#ffffffed,#f8fcffbb);box-shadow:0 12px 26px #008ee90b,inset 0 1px 3px #fff;text-decoration:none!important;color:#0a2868!important;backdrop-filter:blur(12px);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.dx-service-card::before{content:'';position:absolute;z-index:-1;top:-2px;left:-3px;width:52px;height:67px;border-top:4px solid var(--service-accent);border-left:4px solid var(--service-accent);border-radius:28px 0 0 0;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--service-accent) 25%,transparent))}
.dx-service-card--green{--service-accent:#00bf39}
.dx-service-icon{display:flex;align-items:center;justify-content:center;flex:none;width:74px;height:78px;border-radius:27px;background:radial-gradient(circle at 50% 75%,#fff, color-mix(in srgb,var(--service-accent) 16%,#fff));color:var(--service-accent);box-shadow:inset 0 2px 6px color-mix(in srgb,var(--service-accent) 12%,transparent),0 5px 12px #008dea12}
.dx-service-icon svg{width:49px;height:49px;filter:drop-shadow(0 3px 3px #0089d81a)}
.dx-service-copy{display:flex;flex-direction:column;gap:9px;min-width:0;padding-top:3px}
.dx-service-copy strong{font-size:17px;line-height:1.2;font-weight:800;color:#0a2868}
.dx-service-copy>span{font-size:14px;line-height:1.5;color:#6575a5}
.dx-service-arrow{position:absolute;bottom:18px;right:12px;display:grid;place-items:center;width:37px;height:37px;border:1px solid #ddf1ff;border-radius:50%;background:#fff;color:#0754ff;box-shadow:0 2px 6px #009fff36;transition:transform .25s ease}
.dx-service-arrow svg{width:25px;height:25px}
.dx-service-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--service-accent) 35%,white);box-shadow:0 18px 30px #008ee91c}
.dx-service-card:hover .dx-service-arrow{transform:translateX(3px)}
.dx-services-call{grid-column:2;justify-self:center;display:flex;align-items:center;gap:22px;min-height:90px;padding:10px 18px;min-width:440px;border:2px solid #a9fff4;border-radius:999px;background:linear-gradient(105deg,#006bff,#005bc8 33%,#00bb10);box-shadow:0 0 20px #00cfff66,0 10px 25px #00b73b29;color:#fff!important;text-decoration:none!important;transition:transform .25s ease,box-shadow .25s ease}
.dx-services-phone{display:grid;place-items:center;width:63px;height:63px;flex:none;border-radius:50%;background:linear-gradient(135deg,#00bdff,#0053dc);box-shadow:inset 0 2px 4px #ffffff55}
.dx-services-phone svg{width:38px;height:38px}
.dx-services-call>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:5px}
.dx-services-call small{color:#fff;font-size:14px;line-height:1.2;text-transform:uppercase}
.dx-services-call strong{color:#fff;font-size:29px;font-weight:800;line-height:1.1;white-space:nowrap;letter-spacing:.02em}
.dx-services-call-arrow{display:grid;place-items:center;width:56px;height:56px;flex:none;border-radius:50%;background:#fff;color:#00ac31}
.dx-services-call-arrow svg{width:32px;height:32px}
.dx-services-call:hover{transform:translateY(-3px);box-shadow:0 0 26px #00cfff88,0 14px 28px #00b73b33}
.dx-services :is(a):focus-visible{outline:3px solid #006bff;outline-offset:5px}
.dx-services-waves{position:absolute;z-index:0;bottom:-120px;left:-5%;width:110%;height:260px;transform:rotate(-4deg);border-radius:50% 60% 0 0;background:linear-gradient(100deg,#0078fc40,#00bb9a44 38%,#00b9ee35);box-shadow:0 -28px 0 #8fceff33,0 -56px 0 #fff7;pointer-events:none}
.dx-services-decoration{position:absolute;z-index:1;bottom:-58px;right:-15px;width:235px;height:250px;transform:rotate(-12deg);color:#e9faff;pointer-events:none;filter:drop-shadow(0 8px 12px #008ee94d)}
.dx-services-decoration>svg{width:100%;height:100%;fill:#e5f6ff;stroke:#a8e0ff;stroke-width:.7}
.dx-services-decoration>span{position:absolute;top:45px;left:-24px;width:280px;height:90px;border:17px solid #00c4ee;border-left-color:#00bf87;border-bottom-color:#00a7e5;border-radius:50%;transform:rotate(-16deg);box-shadow:inset 0 2px 4px #fff9}
@media(min-width:1500px){.dx-service-card{min-height:150px}.dx-services-call{margin-top:8px}}
@media(max-width:1599px){.dx-services-layout{grid-template-columns:270px minmax(0,1fr);gap:26px}.dx-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dx-service-card{padding:22px 48px 22px 18px}.dx-services-trust{flex-wrap:wrap;gap:15px}.dx-services-trust li{flex-basis:100%}.dx-services-trust li+li{border:0;padding-left:0}.dx-services-decoration{opacity:.6}}
@media(max-width:900px){.dx-services{padding:36px 24px 65px}.dx-services-layout{grid-template-columns:1fr;gap:28px}.dx-services-intro{grid-row:auto;max-width:640px}.dx-services h2{font-size:36px;max-width:560px}.dx-services-description{max-width:560px}.dx-services-trust{margin-top:24px;flex-wrap:nowrap}.dx-services-trust li{flex-basis:auto}.dx-services-trust li+li{border-left:1px solid #abc7e7;padding-left:15px}.dx-services-call{grid-column:1}.dx-services-decoration{opacity:.25}}
@media(max-width:540px){.dx-services{padding:30px 18px 44px}.dx-services-badge{font-size:9px;letter-spacing:.07em;margin-bottom:18px}.dx-services h2{font-size:32px;line-height:1.12}.dx-services-description{font-size:16px}.dx-services-trust{gap:8px}.dx-services-trust li{font-size:10px;gap:5px}.dx-services-trust li+li{padding-left:8px}.dx-services-trust svg{width:26px;height:26px}.dx-services-grid{gap:14px 10px}.dx-service-card{flex-direction:column;gap:12px;padding:17px 13px 48px;border-radius:21px}.dx-service-icon{width:57px;height:59px;border-radius:20px}.dx-service-icon svg{width:38px;height:38px}.dx-service-copy{gap:8px;padding-top:0}.dx-service-copy strong{font-size:15px}.dx-service-copy>span{font-size:12px;line-height:1.45}.dx-service-arrow{width:30px;height:30px;right:12px;bottom:12px}.dx-service-arrow svg{width:22px;height:22px}.dx-services-call{min-width:0;width:100%;gap:12px;min-height:77px;padding:9px 12px}.dx-services-phone{width:46px;height:46px}.dx-services-phone svg{width:28px;height:28px}.dx-services-call small{font-size:10px}.dx-services-call strong{font-size:23px}.dx-services-call-arrow{width:40px;height:40px}.dx-services-call-arrow svg{width:26px;height:26px}.dx-services-decoration{display:none}}
@media(prefers-reduced-motion:reduce){.dx-service-card,.dx-service-arrow,.dx-services-call{transition:none}.dx-service-card:hover,.dx-service-card:hover .dx-service-arrow,.dx-services-call:hover{transform:none}}

/* Wave-cut transition: the services background overlaps the bottom of the hero. */
.dx-services {
 --services-cut: 96px;
 z-index: 3;
 margin-top: -80px;
 padding-top: 115px;
 padding-bottom: 100px;
 background: radial-gradient(ellipse at 90% 80%,#b8f4ee80,transparent 45%),linear-gradient(135deg,#f4faff,#e5f1ff 55%,#e1f8fc);
 -webkit-mask-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22black%22%20d%3D%22M0%2070C160-10%20270%2090%20480%2040S760%2038%20940%2054S1240%2078%201440%208V100H0Z%22%2F%3E%3C%2Fsvg%3E'),linear-gradient(#000,#000);
 mask-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22black%22%20d%3D%22M0%2070C160-10%20270%2090%20480%2040S760%2038%20940%2054S1240%2078%201440%208V100H0Z%22%2F%3E%3C%2Fsvg%3E'),linear-gradient(#000,#000);
 -webkit-mask-size: 100% var(--services-cut),100% calc(100% - var(--services-cut) + 1px);
 mask-size: 100% var(--services-cut),100% calc(100% - var(--services-cut) + 1px);
 -webkit-mask-position: top,bottom;
 mask-position: top,bottom;
 -webkit-mask-repeat: no-repeat;
 mask-repeat: no-repeat;
}
.dx-hero:has(+ .dx-services) { padding-bottom: 90px; }
.dx-services::after {
 content: 'SERVICII';
 position: absolute;
 z-index: 0;
 bottom: -18px;
 left: 29%;
 font-size: clamp(80px,10vw,190px);
 line-height: 1;
 font-weight: 900;
 letter-spacing: -.04em;
 color: #4387db0c;
 pointer-events: none;
}
.dx-services-layout { grid-template-columns: minmax(260px,330px) minmax(0,1fr); gap: 30px 38px; }
.dx-services-intro { grid-row: auto; }
.dx-services-grid { align-content: start; scroll-margin-top: 120px; }
.dx-service-card::before { display: none; }
.dx-service-icon { border-radius: 50%; }
.dx-services-all {
 display: flex; align-items: center; justify-content: space-between; gap: 18px;
 width: 100%; max-width: 315px; min-height: 66px; padding: 10px 15px 10px 25px; margin-top: 26px;
 border: 1px solid #bdfcff; border-radius: 999px;
 background: linear-gradient(110deg,#009dff,#0068ca 48%,#00c52d);
 box-shadow: 0 0 17px #00cbff50,0 8px 22px #007ece30;
 color: #fff !important; text-decoration: none !important; transition: transform .25s ease,box-shadow .25s ease;
}
.dx-services-all>span:first-child { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .11em; }
.dx-services-all>span:last-child { display: grid; place-items: center; width: 42px; height: 42px; flex: none; background: white; color: #00b74a; border-radius: 50%; }
.dx-services-all svg { width: 25px; height: 25px; }
.dx-services-all:hover { transform: translateY(-3px); box-shadow: 0 0 25px #00cbff70,0 12px 26px #007ece40; }
.dx-services-decoration { right: 10px; width: 225px; height: 235px; bottom: -55px; opacity: .65; }
@media(min-width:1600px) {
 .dx-services { padding-left: 7.5%; padding-right: 4.5%; }
 .dx-services-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px 12px; }
 .dx-service-card { min-height: 145px; padding: 20px 35px 22px 14px; gap: 12px; }
 .dx-service-icon { width: 66px; height: 68px; }
 .dx-service-copy strong { font-size: 16px; }
 .dx-service-copy>span { font-size: 13px; }
}
@media(max-width:900px) {
 .dx-services { --services-cut: 70px; margin-top: -50px; padding-top: 85px; padding-bottom: 65px; }
 .dx-services-layout { grid-template-columns: 1fr; }
 .dx-hero:has(+ .dx-services) { padding-bottom: 65px; }
 .dx-services::after { left: 15%; font-size: 18vw; }
}
@media(max-width:540px) {
 .dx-services { --services-cut: 48px; margin-top: -35px; padding-top: 62px; padding-bottom: 48px; }
 .dx-services-layout { gap: 25px; }
 .dx-services-all { min-height: 59px; max-width: 100%; }
 .dx-services-all>span:first-child { font-size: 11px; }
 .dx-hero:has(+ .dx-services) { padding-bottom: 50px; }
}
@media(prefers-reduced-motion:reduce) {
 .dx-services-all { transition: none; }
 .dx-services-all:hover { transform: none; }
}
/* Center the services CTA below the introduction heading. */
.dx-services-all { margin-left: auto; margin-right: auto; }
/* Service-specific dental pictograms with readable enamel silhouettes. */
.dx-service-icon svg { fill: rgba(255,255,255,.7); stroke-width: 1.55; }
.dx-service-icon svg path { vector-effect: non-scaling-stroke; }
/* Transparent 3D service icons supplied by the clinic. */
.dx-services .dx-service-icon--realistic {
 width: 82px;
 height: 86px;
 background: transparent;
 border: 0;
 border-radius: 0;
 box-shadow: none;
 overflow: visible;
}
.dx-services .dx-service-icon--realistic img {
 display: block;
 width: 100%;
 height: 100%;
 max-width: 100%;
 margin: 0;
 border: 0;
 border-radius: 0;
 object-fit: contain;
 filter: drop-shadow(0 4px 5px rgba(0,88,150,.14));
 transition: transform .25s ease;
}
.dx-services .dx-service-card:hover .dx-service-icon--realistic img { transform: translateY(-2px) scale(1.06); }
@media (max-width: 540px) {
 .dx-services .dx-service-icon--realistic { width: 72px; height: 76px; align-self: center; }
}
@media (prefers-reduced-motion: reduce) {
 .dx-services .dx-service-icon--realistic img { transition: none; }
 .dx-services .dx-service-card:hover .dx-service-icon--realistic img { transform: none; }
}
/* Additional breathing room below the slider wave. */
.dx-services { padding-top: 150px; }
@media (max-width: 900px) { .dx-services { padding-top: 110px; } }
@media (max-width: 540px) { .dx-services { padding-top: 82px; } }
/* Services fill the section; a single centered CTA follows the cards. */
.dx-services .dx-services-layout { grid-template-columns: minmax(0,1fr); gap: 32px; }
.dx-services .dx-services-grid { grid-column: 1; }
.dx-services .dx-services-all { grid-column: 1; justify-self: center; margin: 0 auto; }
.dx-services .dx-services-accessible-title {
 position: absolute !important;
 width: 1px; height: 1px; padding: 0; margin: -1px;
 overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.dx-services .dx-services-accessible-title::after { display: none; }
@media (max-width: 540px) { .dx-services .dx-services-layout { gap: 26px; } }
/* Calm CSS-only backgrounds below the photographic hero. */
.dx-services {
 background: radial-gradient(ellipse at 8% 18%,rgba(0,157,255,.09),transparent 48%),radial-gradient(ellipse at 94% 85%,rgba(0,188,104,.07),transparent 45%),linear-gradient(180deg,#f3faff,#f8fcff);
}
.dx-services-decoration,.dx-services::after { display: none; }
.dx-services-waves { opacity: .25; }
.dx-service-card { border-color: #e4eef7; background: rgba(255,255,255,.92); box-shadow: 0 8px 25px rgba(15,66,113,.045); }
.dx-service-card:hover { box-shadow: 0 16px 32px rgba(15,91,157,.11); }
@media (max-width: 540px) { .dx-services-waves { opacity: .15; } }
