/* Scoped refinement: existing hero and flight styles remain owned by drpeyma.css. */
:root {
    --dp-medical-ink: #23385d;
    --dp-medical-muted: #5b6b85;
    --dp-medical-primary: #3154ad;
    --dp-medical-hover: #274591;
    --dp-medical-soft: #edf2fc;
    --dp-medical-line: #d7e2f3;
    --dp-medical-focus: #7999e3;
}
.dp-noscript { text-align: center; padding: 24px; background: #f6fbfb; color: #123248; }
.dp-noscript h1 { font: 700 28px/1.8 var(--dp-font-fa); }
/* Dialogs use one surface, a clear header, and a scrolling body. */
#modalOverlay.dp-modal-overlay {
    --dp-action-primary:#3154ad;
    --dp-action-primary-hover:#274591;
    --dp-action-soft:#edf2fc;
    --dp-action-ring:#7999e3;
    --dp-action-border:#cddaf2;
    --dp-dialog-ink: var(--dp-medical-ink);
    --dp-dialog-muted: var(--dp-medical-muted);
    --dp-dialog-border: var(--dp-medical-line);
    --dp-dialog-teal: var(--dp-medical-primary);
    --dp-dialog-teal-hover: var(--dp-medical-hover);
    --dp-contact-blue: var(--dp-medical-primary);
    --dp-contact-blue-soft: var(--dp-medical-soft);
    padding: max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));
    background: rgba(7, 29, 45, .62);
    backdrop-filter: blur(12px);
}
#modalOverlay .dp-modal[data-modal] {
    border: 1px solid rgba(255,255,255,.8) !important;
    border-radius: 26px !important;
    background: #fff !important;
    color: var(--dp-medical-ink) !important;
    box-shadow: 0 32px 90px rgba(6,32,48,.25) !important;
    max-height: calc(100dvh - 48px) !important;
    overflow: hidden;
}
#modalOverlay .dp-modal::before,#modalOverlay .dp-modal::after { display: none !important; }
#modalOverlay .dp-modal__topbar { background: #f5f6fa !important; border-bottom: 1px solid #e5e8ef !important; padding: 16px 26px !important; }
#modalOverlay .dp-modal__badge { color: var(--dp-medical-primary) !important; background: transparent !important; border: 0 !important; padding: 0 !important; font-size: 13px !important; letter-spacing: 0 !important; }
#modalOverlay .dp-modal__badge::before { background: var(--dp-medical-primary) !important; }
#modalOverlay .dp-modal[data-modal] .dp-modal__header { padding: 26px 30px 20px !important; background: #fff !important; text-align: start !important; }
#modalOverlay .dp-modal__header::after { display: none !important; }
#modalOverlay .dp-modal__title,#modalOverlay .dp-modal[data-modal=contact] .dp-modal__title {
    font-size: clamp(23px,2.5vw,30px) !important; line-height: 1.6 !important; letter-spacing: -.025em !important; color: var(--dp-medical-ink) !important;
}
#modalOverlay .dp-modal__desc,#modalOverlay .dp-modal[data-modal=contact] .dp-modal__desc { color: var(--dp-medical-muted) !important; font-size: 15px !important; line-height: 1.9 !important; max-width: 64ch !important; margin: 10px 0 0 !important; }
#modalOverlay .dp-modal__body { padding: 0 30px 28px !important; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #b0b7cc transparent; }
#modalOverlay .dp-modal :is(.dp-modal__card,.dp-modal__product-card,.dp-modal__blog-item,.dp-modal__detail-content) {
    border-color: var(--dp-medical-line) !important; border-radius: 18px !important; background: #fff !important;
    box-shadow: none !important;
}
#modalOverlay :is(.dp-modal__card-title,.dp-modal__product-title,.dp-modal__blog-title) { color: var(--dp-medical-ink) !important; font-size: 17px !important; line-height: 1.65 !important; }
#modalOverlay :is(.dp-modal__card-desc,.dp-modal__product-desc,.dp-modal__blog-desc,.dp-modal__page-summary) { color: var(--dp-medical-muted) !important; font-size: 14px !important; line-height: 1.9 !important; }
#modalOverlay :is(.dp-modal__card-thumb,.dp-modal__product-icon) { background: #edf0f7 !important; color: #183481 !important; }
#modalOverlay :is(.dp-modal__card-tag,.dp-modal__product-tag,.dp-modal__blog-cat,.dp-modal__detail-kicker) { color: #142b6b !important; background: #edf2fc !important; border-color: #d5dbea !important; }
#modalOverlay .dp-modal__footer-cta { background: #f5f6fa !important; border-color: var(--dp-medical-line) !important; box-shadow: none !important; }
#modalOverlay .dp-modal[data-modal] .dp-modal__close { color: #2e3e6a !important; background: #fff !important; border-color: var(--dp-medical-line) !important; box-shadow: none !important; border-radius: 50% !important; }
#modalOverlay #modalContact .dp-modal__header--contact::before { display: none !important; }
#modalOverlay #modalContact .contact-response-note { color: #172d6a !important; background: #edf0f7 !important; border-color: #d5dbea !important; }
#modalOverlay #modalContact :is(.contact-direct-card,.dp-modal__quick-btn) { background: #f9fafc !important; border-color: var(--dp-medical-line) !important; box-shadow: none !important; min-height: 94px !important; }
#modalOverlay #modalContact .contact-direct-card--phone { background: #edf0f7 !important; border-color: #b8c1d9 !important; }
#modalOverlay #modalContact .dp-modal__quick-label { color: var(--dp-medical-ink) !important; font-size: 16px !important; }
#modalOverlay #modalContact .dp-modal__quick-val { color: var(--dp-medical-muted) !important; font-size: 14px !important; }
#modalOverlay .dp-modal__trust-row { padding-top: 18px !important; gap: 8px !important; }
#modalOverlay .dp-modal__trust-item { border: 0 !important; background: transparent !important; color: #5b6b85 !important; font-size: 12px !important; }
#modalOverlay .dp-modal__detail-back { border-color: var(--dp-medical-line) !important; color: var(--dp-medical-primary) !important; box-shadow: none !important; }


/* One action hierarchy for every dialog: filled primary, quiet back control. */
#modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta) {
    display:inline-flex !important; align-items:center !important; justify-content:center !important;
    min-height:52px !important; max-width:100% !important; padding:13px 22px !important; gap:18px !important;
    -webkit-appearance:none; appearance:none; font-family:inherit !important; isolation:isolate;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
    border:1px solid #2f50a5 !important; border-radius:12px !important;
    color:#fff !important; -webkit-text-fill-color:#fff !important; background:#3154ad !important;
    box-shadow:0 3px 8px rgba(19,83,104,.13) !important;
    font-size:14px !important; font-weight:600 !important; line-height:1.7 !important;
    letter-spacing:0 !important; text-decoration:none !important; text-shadow:none !important;
    cursor:pointer; white-space:normal !important; text-align:center !important;
    transition:background .18s ease,box-shadow .18s ease,transform .18s ease !important;
}
#modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta)::before { display:none !important; }
#modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta)::after,
#modalOverlay .dp-modal .dp-modal__detail-back::before {
    content:'' !important; position:static !important; display:block !important; flex:0 0 20px !important;
    width:20px !important; height:20px !important; margin:0 !important; padding:0 !important;
    border:0 !important; border-radius:0 !important; background:currentColor !important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
    transform:none !important; box-shadow:none !important; opacity:1 !important;
}
html[dir=rtl] #modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta)::after,
html[dir=ltr] #modalOverlay .dp-modal .dp-modal__detail-back::before { transform:scaleX(-1) !important; }
#modalOverlay .dp-modal .dp-modal__detail-back {
    display:inline-flex !important; align-items:center !important; gap:9px !important; min-height:44px !important;
    padding:9px 14px !important; margin-bottom:18px !important; border:1px solid #d8ddeb !important;
    border-radius:12px !important; background:#f4f6fa !important; color:#31416d !important;
    font-size:13px !important; font-weight:500 !important; line-height:1.6 !important;
    box-shadow:none !important; transition:background .18s ease,border-color .18s ease !important;
}
#modalOverlay .dp-modal .dp-modal__detail-back::after { display:none !important; }
#modalOverlay :is(button,a,[role=button]):focus-visible { outline:3px solid #3b5aae !important; outline-offset:3px !important; }
#modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta):active {
    transform:translateY(1px) !important; box-shadow:0 1px 4px rgba(19,83,104,.14) !important;
}
#modalOverlay .dp-modal :is(button,a):is(:disabled,[aria-disabled=true]) { opacity:.5 !important; cursor:not-allowed !important; transform:none !important; }
@media(hover:hover) {
    #modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta):hover {
        background:#274591 !important;
        box-shadow:0 5px 12px rgba(19,83,104,.17) !important;
        transform:translateY(-1px) !important;
    }
    #modalOverlay .dp-modal .dp-modal__detail-back:hover { background:#e9ecf6 !important; border-color:#b6c0dc !important; }
    #modalOverlay .dp-modal :is(.dp-modal__card[role=button],a.dp-modal__product-card,.dp-modal__blog-item[role=button]):hover { border-color:#7d8cb6 !important; background:#f7f8fb !important; transform:translateY(-2px) !important; }
}

@media (max-width:600px) {
    #modalOverlay.dp-modal-overlay { padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom)); }
    #modalOverlay .dp-modal[data-modal] { border-radius:22px !important; max-height:calc(100dvh - 32px) !important; }
    #modalOverlay .dp-modal__topbar { padding:12px 18px !important; }
    #modalOverlay .dp-modal[data-modal] .dp-modal__header { padding:20px 20px 16px !important; }
    #modalOverlay .dp-modal__title { font-size:23px !important; }
    #modalOverlay .dp-modal__desc { font-size:14px !important; }
    #modalOverlay .dp-modal__body { padding:0 20px 22px !important; }
    #modalOverlay #modalContact :is(.contact-direct-card,.dp-modal__quick-btn) { min-height:82px !important; }
}
@media (prefers-reduced-motion:reduce) {
    #modalOverlay .dp-modal,#modalOverlay :is(button,a,[role=button]) { transition:none !important; }
}

#modalOverlay .dp-modal__scope-title { margin:0 0 12px; font-size:14px; font-weight:600; color:#23385d; }
#modalOverlay .dp-modal__deliverables { display:grid; gap:10px; list-style:none; margin:0 0 24px; padding:18px; background:#f5f6fa; border:1px solid #d7e2f3; border-radius:14px; }
#modalOverlay .dp-modal__deliverables li { display:flex; align-items:center; gap:12px; font-size:14px; line-height:1.8; color:#354267; }
#modalOverlay .dp-modal__deliverables li::before { content:''; flex:none; width:8px; height:4px; border-left:2px solid #16358b; border-bottom:2px solid #16358b; transform:rotate(-45deg); }
#modalOverlay #modalContact .contact-direct-card::before { display:none !important; }
#modalOverlay #modalContact .contact-response-note::before { display:none !important; }

/* Requested refinements: original opening and flight backdrop stay intact. */
.lang-switcher .lang-switcher__dropdown { gap: 8px !important; padding: 10px !important; border-radius: 34px !important; background: #f8fcff !important; border: 1px solid #d8e7f1 !important; box-shadow: 0 14px 38px rgba(6,29,55,.2) !important; }
.lang-switcher .lang-btn {
    width: 48px !important; min-width: 48px !important; height: 48px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    flex-direction: row !important; padding: 5px !important;
    border: 1px solid transparent !important; border-radius: 50% !important;
    background: #fff !important; color: #17364d !important; box-shadow: none !important;
}
.lang-switcher .lang-btn .lang-btn__flag {
    display: block; flex: 0 0 36px !important; width: 36px !important; height: 36px !important;
    object-fit: cover !important; border: 0 !important; border-radius: 50% !important;
    box-shadow: none !important; filter: none !important; transform: none !important;
}
.lang-switcher .lang-btn.active { background:#eaf3fb !important; border-color:#b6d3e9 !important; }
.lang-switcher .lang-btn:hover { background:#f0f6fb !important; }
.lang-switcher .lang-btn:focus-visible { outline:3px solid #3b8cce !important; outline-offset:2px; }
.lang-switcher .lang-btn::before,.lang-switcher .lang-btn::after { display:none !important; }

/* Restore the original sky and glass palette; retain room below the logo. */
.services-contrast { position:fixed; inset:0; z-index:0; pointer-events:none; opacity:0; background:rgba(42,65,150,.10); transition:opacity 280ms ease; }
.wrapper:has(.about--in) .services-contrast { opacity:1; }
.about__content {
    width:min(100%,1240px) !important;
    padding:clamp(190px,24vh,245px) clamp(26px,4.5vw,68px) 150px !important;
}
.about .services-badge { color:#d9fbff !important; background:rgba(0,172,193,.12) !important; border-color:rgba(167,239,255,.32) !important; font-size:12px !important; }
.about .services-main-title { color:#f5faff !important; -webkit-text-fill-color:#f5faff !important; background:none !important; text-shadow:none !important; line-height:1.65 !important; }
.about p.services-main-desc { color:#eff6ff !important; opacity:1 !important; font-size:16px !important; line-height:1.95 !important; max-width:720px !important; }
.about .services-header { margin-bottom:42px !important; }
.about .service-card {
    background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(246,250,255,.095) 52%,rgba(205,230,255,.12)) !important; border:1px solid rgba(255,255,255,.24) !important;
    box-shadow:0 12px 30px rgba(25,44,116,.10),inset 0 1px 0 rgba(255,255,255,.25) !important; padding:30px 28px 26px !important;
    border-radius:20px !important;
}
.about .service-card::before,.about .service-card::after { display:none !important; }
.about .service-card--featured { background:linear-gradient(145deg,rgba(255,255,255,.21),rgba(232,249,255,.13) 48%,rgba(0,172,193,.06)) !important; border-color:rgba(168,239,250,.40) !important; }
.about .service-card--accent { background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(246,250,255,.10) 52%,rgba(255,179,0,.055)) !important; border-color:rgba(255,233,182,.32) !important; }
.about .service-card__icon { background:linear-gradient(135deg,rgba(0,172,193,.15),rgba(21,101,192,.12)) !important; color:#c9f8ff !important; border:1px solid rgba(185,239,255,.30) !important; box-shadow:none !important; }
.about .service-card__title { color:#f4faff !important; font-size:21px !important; line-height:1.7 !important; }
.about .service-card__desc { color:#edf4ff !important; font-size:15px !important; line-height:1.9 !important; opacity:1 !important; }
.about .service-card__tag { top:30px !important; left:auto !important; right:auto !important; inset-inline-end:78px !important; background:rgba(213,245,255,.10) !important; color:#e0faff !important; border-color:rgba(205,241,255,.28) !important; }
.about .service-card__number {
    position:absolute !important; top:27px !important; left:auto !important; right:auto !important;
    inset-inline-start:auto !important; inset-inline-end:28px !important;
    font:500 28px/1.2 var(--dp-font-en),sans-serif !important;
    font-variant-numeric:tabular-nums; letter-spacing:.025em !important;
    color:#d7e9ff !important; -webkit-text-fill-color:#d7e9ff !important;
    opacity:1 !important; background:none !important; text-shadow:none !important;
}
.about .service-card__more { color:#f2f9ff !important; background:rgba(37,99,235,.15) !important; border-color:rgba(191,219,254,.38) !important; box-shadow:none !important; padding:10px 15px !important; font-size:13px !important; font-weight:500 !important; }
.about .why-drpeyma__title,.about .seo-faq__title,.about .why-item__title { color:#f4f9ff !important; }
.about .why-item__desc,.about .seo-faq__item p { color:#edf4ff !important; }
.about .seo-faq__item,
.about .seo-faq__item:hover,
.about .seo-faq__item[open] { background:transparent !important; box-shadow:none !important; border-color:rgba(227,240,255,.20) !important; }
.about .seo-faq__item summary,.about .seo-faq__item p { background:transparent !important; }
.about .seo-faq__item summary { color:#f4f9ff !important; font-size:16px !important; font-weight:600 !important; line-height:1.85 !important; }
.about .seo-faq__item p { font-size:15px !important; font-weight:400 !important; line-height:1.95 !important; }

/* A single, legible consultation action across services and dialogs. */
.about .services-cta { padding:44px 32px !important; border:1px solid rgba(185,239,255,.32) !important; border-radius:22px !important; background:linear-gradient(135deg,rgba(0,172,193,.10),rgba(21,101,192,.10),rgba(0,172,193,.06)) !important; }
.about .services-cta::before,.about .services-cta::after { display:none !important; }
.about .services-cta__title { color:#f4faff !important; font-size:clamp(24px,2.3vw,32px) !important; line-height:1.7 !important; }
.about p.services-cta__desc { color:#edf6ff !important; font-size:15px !important; line-height:1.95 !important; max-width:620px !important; margin:14px auto 24px !important; }
.about .services-cta__btn {
    display:inline-flex !important; justify-content:center !important; align-items:center !important;
    min-height:54px !important; padding:13px 20px !important; gap:16px !important;
    border-radius:14px !important; border:1px solid #2b7dbb !important;
    background:#086b73 !important; color:#fff !important; -webkit-text-fill-color:#fff !important;
    box-shadow:0 5px 14px rgba(4,38,73,.12) !important; text-shadow:none !important;
    font-size:15px !important; font-weight:600 !important; line-height:1.7 !important;
    text-decoration:none !important; transition:background .2s ease,box-shadow .2s ease,transform .2s ease !important;
}
.about .services-cta__btn:is(:visited,:hover,:focus-visible,:active) { color:#fff !important; -webkit-text-fill-color:#fff !important; }
.about .services-cta__btn { border-color:#086b73 !important; box-shadow:0 8px 24px rgba(4,52,69,.22),inset 0 1px 0 rgba(255,255,255,.16) !important; }
.about .services-cta__btn::before { display:none !important; }
.about .services-cta__btn::after {
    content:'\2190' !important; display:grid !important; place-items:center !important;
    flex:0 0 30px !important; width:30px !important; height:30px !important;
    margin:0 !important; border:0 !important; border-radius:9px !important;
    background:rgba(255,255,255,.13) !important; color:inherit !important;
    font:400 21px/1 sans-serif !important; transform:none !important;
}
.about .services-cta__btn::after { background:rgba(255,255,255,.14) !important; }
html[dir=ltr] .about .services-cta__btn::after { content:'\2192' !important; }
.about .services-cta__btn:focus-visible { outline:3px solid #8ad4ff !important; outline-offset:5px !important; }
@media(hover:hover) {
    .about .service-card:hover { background:linear-gradient(145deg,rgba(255,255,255,.25),rgba(232,245,255,.15)) !important; border-color:rgba(231,246,255,.50) !important; transform:translateY(-3px) !important; }
    .about .service-card__more:hover { background:rgba(99,160,255,.26) !important; }
    .about .services-cta__btn:hover { background:#04535c !important; color:#fff !important; transform:translateY(-2px) !important; }

}
@media(max-width:1049px) { .about__content { width:min(100%,790px) !important; padding:180px 28px 130px !important; } }
@media(max-width:600px) {
    .about__content { padding:155px 18px 115px !important; }
    .about .services-header { margin-bottom:30px !important; }
    .about .services-main-title { font-size:26px !important; }
    .about p.services-main-desc { font-size:14px !important; }
    .about .service-card { padding:25px 22px !important; }
    .about .service-card__number { top:25px !important; inset-inline-end:22px !important; font-size:25px !important; }
    .about .service-card__tag { top:27px !important; inset-inline-end:66px !important; }
    .about .service-card__title { font-size:19px !important; }
    .about .seo-faq__item summary { font-size:15px !important; }
    .about .seo-faq__item p { font-size:14px !important; }
    .about .services-cta { padding:32px 22px !important; }
    .about .services-cta__btn { width:100% !important; font-size:14px !important; gap:10px !important; padding:12px 15px !important; }
    #modalOverlay #modalContact :is(.contact-direct-card,.dp-modal__quick-btn) { min-height:72px !important; padding:16px !important; }
}
@media(prefers-reduced-motion:reduce) {
    .services-contrast,.about .services-cta__btn { transition:none !important; }
}

/* Mobile dialogs use an opaque scrim to avoid blurring a live WebGL canvas. */
@media (max-width:600px), (pointer:coarse) {
    #modalOverlay.dp-modal-overlay { backdrop-filter:none !important; -webkit-backdrop-filter:none !important; background:rgba(7,29,45,.82) !important; }
    .services-contrast { transition:none !important; }
}


/* A quiet, consistent dialog family: clear headings, generous cards and visible actions. */
#modalOverlay :is(#modalProducts,#modalPortfolio) { width:min(920px,100%) !important; }
#modalOverlay #modalContact { width:min(640px,100%) !important; }
#modalOverlay .dp-modal__topbar { background:#fff !important; padding:16px 28px !important; }
#modalOverlay .dp-modal__badge { color:#556183 !important; font-weight:500 !important; }
#modalOverlay .dp-modal__badge::before { width:6px !important; height:6px !important; background:#4361b2 !important; box-shadow:none !important; }
#modalOverlay .dp-modal[data-modal] .dp-modal__close { width:44px !important; height:44px !important; background:#f5f7fb !important; border:1px solid #dbe0ee !important; transition:background .18s,color .18s !important; }
#modalOverlay .dp-modal[data-modal] .dp-modal__header { padding:25px 30px 22px !important; }
#modalOverlay .dp-modal__header-mark { display:grid; place-items:center; width:50px; height:50px; margin-bottom:18px; border:1px solid #cdd4e9; border-radius:16px; color:#233d86; background:#edf0fa; }
#modalOverlay .dp-modal__header-mark svg { width:25px; height:25px; }
#modalOverlay .dp-modal__title { font-weight:700 !important; }
#modalOverlay :is(#modalProducts,#modalPortfolio) .dp-modal__desc { max-width:62ch !important; }
#modalOverlay #modalProducts .dp-modal__products-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }
#modalOverlay #modalProducts .dp-modal__product-card {
    position:relative !important; display:grid !important; grid-template-columns:50px minmax(0,1fr) !important;
    align-items:start !important; gap:16px !important; padding:24px !important; min-height:180px !important;
    border:1px solid #d8deed !important; border-radius:18px !important; background:#f8f9fd !important;
    text-align:start !important; text-decoration:none !important;
}
#modalOverlay #modalProducts .dp-modal__product-card::before { display:none !important; }
#modalOverlay #modalProducts .dp-modal__product-icon { width:50px !important; height:50px !important; border:1px solid #d1d9ee !important; border-radius:15px !important; background:#e9edf8 !important; color:#213d8a !important; box-shadow:none !important; transform:none !important; }
#modalOverlay #modalProducts .dp-modal__product-icon svg { width:27px !important; height:27px !important; }
#modalOverlay #modalProducts .dp-modal__product-card--meet .dp-modal__product-icon { background:#edf2fb !important; color:#4966a1 !important; }
#modalOverlay #modalProducts .dp-modal__product-card--panel .dp-modal__product-icon { background:#e8ebf5 !important; color:#273e7e !important; }
#modalOverlay #modalProducts .dp-modal__product-content { min-width:0 !important; padding:0 !important; }
#modalOverlay #modalProducts .dp-modal__product-tag { display:inline-block !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:none !important; color:#525f82 !important; font-size:12px !important; font-weight:500 !important; }
#modalOverlay #modalProducts .dp-modal__product-title { margin:6px 0 8px !important; font-size:20px !important; }
#modalOverlay #modalProducts .dp-modal__product-desc { margin:0 !important; padding-inline-end:25px !important; line-height:1.85 !important; }
#modalOverlay #modalProducts .dp-modal__product-card::after {
    content:'\2197' !important; position:absolute !important; inset:auto !important; inset-inline-end:18px !important; bottom:18px !important;
    display:grid !important; place-items:center !important; width:30px !important; height:30px !important; border:1px solid #d3d9eb !important;
    border-radius:50% !important; background:#fff !important; color:#304683 !important; font:400 20px/1 sans-serif !important;
    opacity:1 !important; transform:none !important; box-shadow:none !important;
}
html[dir=rtl] #modalOverlay #modalProducts .dp-modal__product-card::after { content:'\2196' !important; }
#modalOverlay #modalProducts .dp-modal__footer-cta { display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:16px !important; margin-top:20px !important; padding:20px !important; border:1px solid #d8deed !important; border-radius:16px !important; background:#f2f4fa !important; color:#313f67 !important; }
#modalOverlay #modalPortfolio .dp-modal__grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:18px !important; }
#modalOverlay #modalPortfolio .dp-modal__card { overflow:hidden !important; border:1px solid #d8deed !important; text-align:start !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb { position:relative !important; height:130px !important; min-height:130px !important; border-bottom:1px solid #d8deed !important; background:#edf2fc !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb--brand { background:#edf2fc !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb-icon { width:64px !important; height:64px !important; border:1px solid #c5cfe9 !important; border-radius:20px !important; background:rgba(255,255,255,.8) !important; color:#2b458c !important; box-shadow:0 5px 18px rgba(29,72,98,.06) !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb-icon svg { width:32px !important; height:32px !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb-num { position:absolute !important; top:18px !important; bottom:auto !important; left:auto !important; right:auto !important; inset-inline-end:20px !important; color:#717fa6 !important; font:500 17px/1.3 var(--dp-font-en) !important; opacity:1 !important; }
#modalOverlay #modalPortfolio .dp-modal__card-body { padding:22px !important; }
#modalOverlay #modalPortfolio .dp-modal__card-tag { padding:4px 9px !important; border-radius:7px !important; font-size:11px !important; background:#edf0f9 !important; color:#324780 !important; }
#modalOverlay #modalPortfolio .dp-modal__card-title { margin:12px 0 8px !important; font-size:19px !important; }
#modalOverlay #modalPortfolio .dp-modal__card-desc { margin:0 !important; }
#modalOverlay #modalPortfolio .dp-modal__card-result { display:flex !important; gap:8px !important; align-items:center !important; margin-top:18px !important; padding-top:14px !important; border-top:1px solid #e3e7f2 !important; color:#354675 !important; background:none !important; font-size:12px !important; line-height:1.8 !important; }
#modalOverlay #modalPortfolio .dp-modal__card-result svg { flex:none; width:17px !important; height:17px !important; }
#modalOverlay #modalPortfolio .dp-modal__card--you { grid-column:1/-1 !important; display:flex !important; flex-direction:row !important; align-items:center !important; background:#f4f6fb !important; }
#modalOverlay #modalPortfolio .dp-modal__card--you .dp-modal__card-thumb { flex:0 0 108px !important; width:108px !important; min-height:0 !important; height:auto !important; border:0 !important; background:none !important; }
#modalOverlay #modalPortfolio .dp-modal__card--you .dp-modal__card-thumb-num { display:none !important; }
#modalOverlay #modalPortfolio .dp-modal__card--you .dp-modal__card-body { flex:1 !important; min-width:0 !important; }
#modalOverlay #modalPortfolio .dp-modal__you-cta { margin-top:16px !important; min-height:46px !important; }
#modalOverlay .dp-modal__detail-hero { padding:26px !important; border:1px solid #d8deed !important; border-radius:18px !important; background:#edf0f9 !important; box-shadow:none !important; }
#modalOverlay .dp-modal__detail-title { color:#23385d !important; line-height:1.7 !important; font-size:24px !important; }
#modalOverlay .dp-modal__detail-desc,#modalOverlay .dp-modal__detail-text { color:#5b6b85 !important; font-size:15px !important; line-height:1.95 !important; }
#modalOverlay .dp-modal__detail-num { color:#8e9bbd !important; font-family:var(--dp-font-en) !important; }
#modalOverlay .dp-modal__detail-panel,#modalOverlay .dp-modal__detail-result { color:#314271 !important; background:#f2f4fa !important; border-color:#d8deed !important; border-radius:12px !important; }
#modalOverlay #modalContact .dp-modal__online-dot { display:none !important; }
#modalOverlay #modalContact .dp-modal__response-note { display:inline-block !important; margin-top:14px !important; padding:0 !important; color:#31447a !important; border:0 !important; border-radius:0 !important; background:none !important; font-size:12px !important; }
#modalOverlay #modalContact .dp-modal__response-note::before { display:none !important; }
#modalOverlay #modalContact .contact-direct-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px !important; margin:0 !important; }
#modalOverlay #modalContact .contact-direct-card {
    position:relative !important; display:flex !important; flex-direction:column !important; align-items:center !important;
    justify-content:center !important; gap:12px !important; min-height:128px !important; padding:18px 10px !important;
    border:1px solid #d8deed !important; border-radius:16px !important; background:#f8f9fd !important; text-align:center !important;
}
#modalOverlay #modalContact .contact-direct-card__icon { display:grid !important; place-items:center !important; width:42px !important; height:42px !important; flex:0 0 42px !important; border:1px solid #d9dfef !important; border-radius:13px !important; background:#fff !important; color:#33509e !important; box-shadow:none !important; transform:none !important; }
#modalOverlay #modalContact .contact-direct-card__icon svg { width:23px !important; height:23px !important; }
#modalOverlay #modalContact .contact-direct-card__content { min-width:0 !important; display:flex !important; flex-direction:column !important; gap:5px !important; }
#modalOverlay #modalContact .contact-direct-card__arrow { display:none !important; }
#modalOverlay #modalContact .dp-modal__quick-label { font-size:14px !important; line-height:1.7 !important; }
#modalOverlay #modalContact .dp-modal__quick-val { font-size:12px !important; line-height:1.6 !important; opacity:1 !important; }
#modalOverlay #modalContact .contact-direct-card--phone {
    grid-column:1/-1 !important; flex-direction:row !important; justify-content:flex-start !important; text-align:start !important;
    min-height:104px !important; padding:22px !important; gap:16px !important; background:#162d6d !important; border-color:#162d6d !important;
}
#modalOverlay #modalContact .contact-direct-card--phone .contact-direct-card__icon { color:#fff !important; background:rgba(255,255,255,.10) !important; border-color:rgba(255,255,255,.20) !important; width:48px !important; height:48px !important; flex-basis:48px !important; }
#modalOverlay #modalContact .contact-direct-card--phone .dp-modal__quick-label { color:#d8dff3 !important; font-size:13px !important; }
#modalOverlay #modalContact .contact-direct-card--phone .dp-modal__quick-val { color:#fff !important; font-size:21px !important; direction:ltr !important; font-variant-numeric:tabular-nums !important; letter-spacing:.03em !important; }
#modalOverlay #modalContact .contact-direct-card--phone .contact-direct-card__arrow { display:block !important; position:static !important; width:20px !important; height:20px !important; margin-inline-start:auto !important; color:#c2cded !important; }
html[dir=rtl] #modalOverlay #modalContact .contact-direct-card--phone .contact-direct-card__arrow { transform:rotate(180deg) !important; }
#modalOverlay #modalContact .dp-modal__trust-row { margin-top:22px !important; padding-top:18px !important; border-top:1px solid #e0e4f0 !important; justify-content:center !important; flex-wrap:wrap !important; gap:14px !important; }
#modalOverlay #modalContact .dp-modal__trust-item { font-size:11px !important; }
@media(hover:hover) {
    #modalOverlay #modalProducts .dp-modal__product-card:hover { border-color:#7f90bf !important; background:#f0f3fa !important; }
    #modalOverlay #modalPortfolio .dp-modal__card[role=button]:hover { border-color:#7f90bf !important; box-shadow:0 8px 24px rgba(19,66,94,.08) !important; }
    #modalOverlay #modalContact .contact-direct-card:hover { border-color:#91a0ca !important; background:#edf0f9 !important; transform:translateY(-2px) !important; }
    #modalOverlay #modalContact .contact-direct-card--phone:hover { border-color:#213b84 !important; background:#213b84 !important; }
    #modalOverlay .dp-modal[data-modal] .dp-modal__close:hover { background:#e8ecf7 !important; }
}
@media(max-width:600px) {
    #modalOverlay .dp-modal__topbar { padding:13px 20px !important; }
    #modalOverlay .dp-modal[data-modal] .dp-modal__header { padding:20px 20px 18px !important; }
    #modalOverlay .dp-modal__header-mark { width:44px; height:44px; border-radius:14px; margin-bottom:14px; }
    #modalOverlay #modalProducts .dp-modal__products-grid,#modalOverlay #modalPortfolio .dp-modal__grid { grid-template-columns:minmax(0,1fr) !important; gap:12px !important; }
    #modalOverlay #modalProducts .dp-modal__product-card { grid-template-columns:42px minmax(0,1fr) !important; gap:13px !important; padding:19px 17px !important; min-height:150px !important; }
    #modalOverlay #modalProducts .dp-modal__product-icon { width:42px !important; height:42px !important; border-radius:13px !important; }
    #modalOverlay #modalProducts .dp-modal__product-title { font-size:18px !important; }
    #modalOverlay #modalProducts .dp-modal__product-desc { font-size:13px !important; padding-inline-end:14px !important; }
    #modalOverlay #modalProducts .dp-modal__footer-cta { padding:18px !important; }
    #modalOverlay #modalProducts .dp-modal__footer-cta-btn { width:100% !important; }
    #modalOverlay #modalPortfolio .dp-modal__card-thumb { height:108px !important; min-height:108px !important; }
    #modalOverlay #modalPortfolio .dp-modal__card-body { padding:19px !important; }
    #modalOverlay #modalPortfolio .dp-modal__card--you .dp-modal__card-thumb { display:none !important; }
    #modalOverlay #modalContact .contact-direct-grid { gap:8px !important; }
    #modalOverlay #modalContact .contact-direct-card { min-height:120px !important; gap:9px !important; padding:14px 6px !important; }
    #modalOverlay #modalContact .contact-direct-card--phone { min-height:94px !important; padding:18px !important; gap:14px !important; }
    #modalOverlay #modalContact .dp-modal__quick-label { font-size:12px !important; }
    #modalOverlay #modalContact .dp-modal__quick-val { font-size:11px !important; }
    #modalOverlay #modalContact .contact-direct-card--phone .dp-modal__quick-val { font-size:20px !important; }
    #modalOverlay #modalContact .dp-modal__trust-row { gap:8px 12px !important; margin-top:18px !important; }
}

#modalOverlay :is(.dp-modal__product-desc,.dp-modal__card-desc,.dp-modal__detail-desc,.dp-modal__desc) { font-weight:400 !important; }

@media(max-width:600px) {
    #modalOverlay :is(#modalContact,#modalPortfolio,#modalProducts) { max-width:calc(100vw - 24px) !important; min-width:0 !important; }
}

/* The existing logo becomes a restart control only when the flight ends. */
.intro__title .dp-logo-restart {
    position:absolute; left:0; top:50%; width:100%; height:100%; min-height:176px;
    transform:translateY(-50%); padding:0; appearance:none; border:0; border-radius:24px;
    background:transparent; box-shadow:none; cursor:pointer; pointer-events:auto;
    -webkit-tap-highlight-color:transparent;
}
.intro__title .dp-logo-restart[hidden] { display:none; }
.intro__title .dp-logo-restart:focus-visible { outline:8px solid #fff; outline-offset:12px; }
@media(max-width:640px) { .intro__title .dp-logo-restart { min-height:126px; } }


/* Compact contact header and one scroll container, including the header/body. */
#modalOverlay .dp-modal[data-modal] .dp-modal__close {
    border-radius:13px !important; color:#424f72 !important; background:#f5f6fa !important;
    border:1px solid #d9deeb !important; font-size:23px !important; font-weight:400 !important;
}
#modalOverlay #modalContact.dp-modal {
    display:block !important; height:auto !important; min-height:0 !important;
    overflow-y:auto !important; overflow-x:hidden !important; overscroll-behavior:contain;
    scrollbar-width:thin; scrollbar-color:#abb5cf transparent; scrollbar-gutter:stable;
    scroll-padding-top:76px; -webkit-overflow-scrolling:touch;
}
#modalOverlay #modalContact::-webkit-scrollbar { width:6px; height:0; }
#modalOverlay #modalContact::-webkit-scrollbar-track { background:transparent; margin-block:20px; }
#modalOverlay #modalContact::-webkit-scrollbar-thumb { background:#abb5cf; border-radius:6px; }
#modalOverlay #modalContact > .dp-modal__topbar {
    position:sticky !important; top:0; z-index:10; min-height:64px !important;
    padding:10px 24px !important; background:#fff !important; backdrop-filter:none !important;
}
#modalOverlay #modalContact > .dp-modal__header--contact {
    display:grid !important; grid-template-columns:42px minmax(0,1fr) !important;
    align-items:center; gap:8px 13px; padding:20px 28px 20px !important;
    flex:none !important; min-height:0 !important;
}
#modalOverlay #modalContact .dp-modal__header-mark {
    grid-column:1; grid-row:1; width:42px; height:42px; margin:0; border-radius:13px;
    background:#edeff6; color:#253e83; border-color:#d5dae9;
}
#modalOverlay #modalContact .dp-modal__header-mark svg { width:22px; height:22px; }
#modalOverlay #modalContact .dp-modal__title {
    grid-column:2; grid-row:1; margin:0 !important; font-size:25px !important; line-height:1.55 !important;
}
#modalOverlay #modalContact .dp-modal__desc {
    grid-column:1/-1; margin:3px 0 0 !important; font-size:14px !important; line-height:1.9 !important;
}
#modalOverlay #modalContact .dp-modal__response-note {
    grid-column:1/-1; margin:0 !important; font-size:11px !important; line-height:1.8 !important;
}
#modalOverlay #modalContact > .dp-modal__body {
    flex:none !important; height:auto !important; max-height:none !important; min-height:0 !important;
    overflow:visible !important; scrollbar-gutter:auto !important; padding:0 28px 24px !important;
}
#modalOverlay #modalContact .contact-direct-card {
    min-height:124px !important; padding:17px 10px !important; gap:10px !important;
    border-radius:16px !important; background:#f8f9fc !important;
}
#modalOverlay #modalContact .contact-direct-card--phone {
    min-height:94px !important; padding:18px 20px !important; gap:16px !important;
    border-color:#173380 !important; background:var(--dp-medical-primary) !important;
    box-shadow:0 4px 14px rgba(19,83,104,.12),inset 0 1px 0 rgba(255,255,255,.1) !important;
}
#modalOverlay #modalContact .contact-direct-card--phone .contact-direct-card__icon { border-radius:14px !important; }
#modalOverlay #modalContact .dp-modal__trust-row { margin-top:18px !important; padding-top:16px !important; }
#modalOverlay #modalProducts .dp-modal__product-card::after { width:32px !important; height:32px !important; border-radius:10px !important; }
@media(hover:hover) {
    #modalOverlay #modalContact .contact-direct-card--phone:hover { background:var(--dp-medical-hover) !important; }
    #modalOverlay .dp-modal[data-modal] .dp-modal__close:hover { background:#eaedf6 !important; border-color:#b6bfd8 !important; transform:none !important; }
}
@media(max-width:600px) {
    #modalOverlay #modalContact > .dp-modal__topbar { padding:9px 18px !important; min-height:62px !important; }
    #modalOverlay #modalContact > .dp-modal__header--contact { padding:18px 20px !important; grid-template-columns:38px minmax(0,1fr) !important; gap:8px 11px; }
    #modalOverlay #modalContact .dp-modal__header-mark { width:38px; height:38px; margin:0; }
    #modalOverlay #modalContact .dp-modal__title { font-size:22px !important; }
    #modalOverlay #modalContact > .dp-modal__body { padding:0 20px 20px !important; }
    #modalOverlay #modalContact .contact-direct-card { min-height:112px !important; padding:14px 6px !important; }
    #modalOverlay #modalContact .contact-direct-card--phone { min-height:88px !important; padding:16px !important; gap:12px !important; }
    #modalOverlay .dp-modal :is(.dp-modal__detail-cta,.dp-modal__footer-cta-btn,.dp-modal__you-cta,.dp-modal__page-cta) { min-height:48px !important; padding:11px 16px !important; font-size:14px !important; }
}
@media(prefers-reduced-motion:reduce) {
    #modalOverlay .dp-modal :is(button,a,[role=button]) { transition:none !important; transform:none !important; }
}


/* Service details: compact identity, numbered deliverables and a clear next step. */
#modalOverlay #modalPage.dp-modal {
    display:block !important; width:min(760px,100%) !important; overflow-y:auto !important;
    overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#abb5cf transparent; scroll-padding-top:74px;
}
#modalOverlay #modalPage > .dp-modal__topbar { position:sticky !important; top:0; z-index:2; padding:12px 26px !important; }
#modalOverlay #modalPage .dp-modal__header {
    margin:0 !important; padding:28px 30px !important;
    background:#f5f7fc !important; border-bottom:1px solid #e1e5ef;
}
#modalOverlay #modalPage.dp-modal--service-detail .dp-modal__header {
    display:grid !important; grid-template-columns:52px minmax(0,1fr); align-items:center; gap:14px 16px;
}
#modalOverlay #modalPage .dp-modal__service-mark {
    grid-column:1; grid-row:1; display:grid; place-items:center; width:52px; height:52px;
    color:#3154ad; background:#fff; border:1px solid #c6cee3; border-radius:17px; box-shadow:0 4px 12px rgba(16,77,89,.05);
}
#modalOverlay #modalPage .dp-modal__service-mark svg { width:26px; height:26px; }
#modalOverlay #modalPage.dp-modal--service-detail .dp-modal__title { grid-column:2; grid-row:1; font-size:clamp(21px,2.4vw,28px) !important; margin:0 !important; }
#modalOverlay #modalPage.dp-modal--service-detail .dp-modal__desc { grid-column:1/-1; margin:0 !important; font-size:14px !important; }
#modalOverlay #modalPage > .dp-modal__body { overflow:visible !important; max-height:none !important; padding:26px 30px 30px !important; }
#modalOverlay #modalPage .dp-modal__scope-title { color:#243258; font-size:14px; font-weight:600; margin:0 0 16px; }
#modalOverlay #modalPage .dp-modal__deliverables {
    grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:12px;
    padding:0; margin:0 0 24px; background:none; border:0; border-radius:0;
}
#modalOverlay #modalPage .dp-modal__deliverables li {
    display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:15px;
    padding:19px 17px; border:1px solid #dbe0ee; border-radius:16px;
    color:#243258; background:linear-gradient(155deg,#fff,#f5f7fb); font-size:14px; line-height:1.9;
}
#modalOverlay #modalPage .dp-modal__deliverables li::before { display:none; }
#modalOverlay #modalPage .dp-modal__deliverable-number {
    display:grid; place-items:center; width:32px; height:32px; flex:none; border-radius:10px;
    color:#6b7797; background:transparent; font-size:22px; font-weight:500; font-variant-numeric:tabular-nums;
}
#modalOverlay #modalPage .dp-modal__next-step {
    display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px;
    border:1px solid #ccd3e5; border-radius:18px; background:#edeff6;
}
#modalOverlay #modalPage .dp-modal__next-copy { min-width:0; }
#modalOverlay #modalPage .dp-modal__next-title { color:#122350; font-size:15px; font-weight:600; line-height:1.8; margin:0 0 5px; }
#modalOverlay #modalPage .dp-modal__next-desc { color:#5b6b85; font-size:13px; line-height:1.85; margin:0; }
#modalOverlay #modalPage .dp-modal__page-cta { flex-shrink:0; margin:0 !important; gap:12px !important; padding:12px 16px !important; }
@media(max-width:720px) {
    #modalOverlay #modalPage .dp-modal__next-step { flex-direction:column; align-items:stretch; }
    #modalOverlay #modalPage .dp-modal__page-cta { width:100% !important; }
}
@media(max-width:600px) {
    #modalOverlay #modalPage > .dp-modal__topbar { padding:10px 18px !important; }
    #modalOverlay #modalPage .dp-modal__header { padding:23px 20px !important; }
    #modalOverlay #modalPage > .dp-modal__body { padding:22px 20px !important; }
    #modalOverlay #modalPage .dp-modal__deliverables { grid-template-columns:minmax(0,1fr); gap:10px; }
    #modalOverlay #modalPage .dp-modal__deliverables li { flex-direction:row; align-items:center; gap:13px; padding:15px; }
    #modalOverlay #modalPage .dp-modal__next-step { padding:18px; gap:16px; }
}
.dp-aircraft-hover { cursor:pointer !important; }
.dp-aircraft-action {
    position:fixed; z-index:12; inset-inline-start:50%; bottom:max(24px,env(safe-area-inset-bottom));
    transform:translateX(-50%); width:44px; height:44px; padding:11px; border:1px solid rgba(255,255,255,.6);
    border-radius:24px; background:#164f70; color:#fff; font:500 13px/1.7 var(--dp-font-fa),sans-serif;
    box-shadow:0 4px 18px rgba(15,41,81,.15); opacity:0; pointer-events:none; transition:opacity .18s ease;
}
html[dir=rtl] .dp-aircraft-action { transform:translateX(50%); }
html[lang=en] .dp-aircraft-action { font-family:var(--dp-font-en),sans-serif; }
html[lang=ar] .dp-aircraft-action { font-family:var(--dp-font-ar),sans-serif; }
.dp-aircraft-action[hidden] { display:none !important; }
.dp-aircraft-action:focus-visible { opacity:1; }
.dp-aircraft-action:focus-visible { pointer-events:auto; outline:3px solid #fff; outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .dp-aircraft-action { transition:none; } }

/* Quiet secondary actions preserve the hierarchy of the filled consultation CTA. */
#modalOverlay .dp-modal .dp-modal__detail-back {
    border:0 !important; background:transparent !important; border-radius:10px !important;
    color:#424f72 !important; -webkit-text-fill-color:currentColor !important;
    padding:9px 4px !important; gap:8px !important;
}
#modalOverlay .dp-modal__next-step .dp-modal__page-cta { align-self:center; }
#modalOverlay .dp-modal__page-cta:visited { color:#fff !important; -webkit-text-fill-color:#fff !important; }
.about .service-card__more {
    display:inline-flex !important; align-items:center !important; justify-content:center !important;
    box-sizing:border-box !important; position:relative; min-height:36px !important; gap:8px !important; padding:6px 12px !important;
    width:fit-content !important; max-width:100%; margin-top:15px !important; font-size:13px !important; line-height:1.6 !important;
    border-radius:8px !important; border:1px solid rgba(228,243,255,.26) !important;
    background:rgba(15,67,117,.16) !important; color:#fff !important; -webkit-text-fill-color:#fff !important;
    font-weight:500 !important; text-shadow:none !important;
}
@media(max-width:720px) {
    #modalOverlay .dp-modal__next-step .dp-modal__page-cta { align-self:stretch; }
}
@media(hover:hover) {
    #modalOverlay .dp-modal .dp-modal__detail-back:hover { color:#3154ad !important; background:#edeff6 !important; }
    .about .service-card__more:hover { background:rgba(10,54,98,.32) !important; border-color:rgba(228,243,255,.52) !important; }
}


/* Keep the global audio control in the empty center of the topbar area. */
.sound-btn.sound-btn--modal-open {
    position:fixed !important; top:max(12px,env(safe-area-inset-top)) !important;
    left:50% !important; right:auto !important; bottom:auto !important;
    transform:translateX(-50%) !important; margin:0 !important;
    width:44px !important; height:44px !important; padding:10px !important; box-sizing:border-box !important;
    border:1px solid #d5dbeb !important; border-radius:13px !important;
    background:#162e70 !important; opacity:1 !important;
    display:flex !important; align-items:center !important; justify-content:space-evenly !important;
}
.sound-btn.sound-btn--modal-open span { height:20px !important; background:#fff !important; }
.sound-btn.sound-btn--modal-open:focus-visible { outline:3px solid #3b5aae !important; outline-offset:3px; }

/* Dialog scroll isolation, including the original virtual services scroller. */
html.dp-dialog-open,html.dp-dialog-open body { overflow:hidden !important; overscroll-behavior:none; touch-action:auto !important; }
html.dp-dialog-open [id^="vsh-scrollbar-"] { visibility:hidden !important; pointer-events:none !important; }
#modalOverlay { overscroll-behavior:contain; }
#modalOverlay .dp-modal--active { touch-action:pan-y pinch-zoom; }
#modalOverlay #modalPage.dp-modal { border-radius:18px !important; overflow-x:hidden !important; scrollbar-gutter:stable; }
#modalOverlay :is(#modalPage,#modalContact,.dp-modal__body) { overscroll-behavior:contain; }
/* Chromium needs auto here to honor the inset track; Firefox retains thin. */
@supports selector(::-webkit-scrollbar) {
    #modalOverlay :is(#modalPage,#modalContact,.dp-modal__body) { scrollbar-width:auto !important; scrollbar-color:auto !important; }
    #modalOverlay :is(#modalPage,#modalContact,.dp-modal__body)::-webkit-scrollbar { width:6px; height:0; }
    #modalOverlay :is(#modalPage,#modalContact,.dp-modal__body)::-webkit-scrollbar-track { margin-block:18px; background:transparent; }
    #modalOverlay :is(#modalPage,#modalContact)::-webkit-scrollbar-track { margin-block:78px 18px; }
    #modalOverlay :is(#modalPage,#modalContact,.dp-modal__body)::-webkit-scrollbar-thumb { background:#a3adc8; border-radius:8px; border:1px solid transparent; background-clip:padding-box; }
    #modalOverlay :is(#modalPage,#modalContact,.dp-modal__body)::-webkit-scrollbar-thumb:hover { background-color:#68779f; }
}
/* A compact visual button with a full 44px touch target. */
.about .service-card__more::before { content:""; position:absolute; inset:-4px 0; }
.about .service-card__more::after { content:""; width:13px; height:13px; flex:0 0 13px; background:currentColor !important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M5 12h14m-5-5 5 5-5 5%27 fill=%27none%27 stroke=%27black%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M5 12h14m-5-5 5 5-5 5%27 fill=%27none%27 stroke=%27black%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E") center/contain no-repeat; }
html[dir=rtl] .about .service-card__more::after { transform:scaleX(-1); }
/* Distinct, contextual service details; color supplements the icon and number. */
#modalOverlay #modalPage .dp-modal__deliverables li { --point-ink:#306aab; --point-soft:#e5f0fc; --point-line:#ccdef3; background:#f2f8ff; border-color:var(--point-line); gap:14px; }
#modalOverlay #modalPage .dp-modal__deliverables li:nth-child(3n+2) { --point-ink:#485eb0; --point-soft:#eaeefd; --point-line:#d7dff7; background:#f6f7ff; }
#modalOverlay #modalPage .dp-modal__deliverables li:nth-child(3n+3) { --point-ink:#7651a2; --point-soft:#f0eafa; --point-line:#e2d8ef; background:#faf7fd; }
#modalOverlay #modalPage .dp-modal__deliverable-head { display:flex; align-items:center; justify-content:space-between; width:100%; gap:10px; }
#modalOverlay #modalPage .dp-modal__deliverable-icon { display:grid; place-items:center; width:36px; height:36px; flex:none; background:var(--point-soft); color:var(--point-ink); border-radius:11px; }
#modalOverlay #modalPage .dp-modal__deliverable-icon svg { width:21px; height:21px; }
#modalOverlay #modalPage .dp-modal__deliverable-number { width:auto; height:auto; font-weight:500; font-size:14px; line-height:1.5; color:var(--point-ink); }
html[lang=fa] .dp-stat__num { font-family:var(--dp-font-fa) !important; font-weight:600; line-height:1.35; direction:ltr; unicode-bidi:isolate; font-variant-numeric:tabular-nums; letter-spacing:0; }
html[lang=fa] .dp-stat__separator { position:relative; top:.09em; color:#e6f9ff; -webkit-text-fill-color:currentColor; }
@media(max-width:600px) {
    #modalOverlay #modalPage .dp-modal__deliverable-head { flex-direction:column; width:36px; flex:none; gap:4px; }
    #modalOverlay #modalPage .dp-modal__deliverables li { align-items:flex-start; gap:13px; }
    #modalOverlay #modalPage .dp-modal__deliverable-number { font-size:11px; }
}

/* A pearl-glass invitation, aligned with the FAQ above it. */
.about .services-cta.services-cta--growth {
    --glass-x:76%; --glass-y:8%; --glass-art-x:0deg; --glass-art-y:0deg;
    position:relative; isolation:isolate; overflow:hidden; box-sizing:border-box;
    display:grid; grid-template-columns:minmax(0,1fr) 164px; align-items:center; gap:16px 24px;
    width:min(100%,760px)!important; max-width:760px!important; margin:28px auto 0!important;
    min-height:248px; padding:28px!important; text-align:start!important;
    border:1px solid rgba(255,255,255,.94)!important; border-radius:28px!important;
    background:#f3f7fd!important;
    box-shadow:0 24px 56px rgba(16,34,78,.18),0 5px 16px rgba(16,34,78,.08),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(98,131,193,.1)!important;
    transition:box-shadow .24s ease,border-color .24s ease!important;
}
.about .services-cta.services-cta--growth::before {
    content:''!important; display:block!important; position:absolute; inset:0; width:auto; height:auto; z-index:0; pointer-events:none;
    border-radius:inherit;
    background:linear-gradient(145deg,rgba(255,255,255,.6),transparent 52%);
    opacity:.5;
}
.about .services-cta.services-cta--growth::after {
    content:''!important; display:block!important; position:absolute; inset:0; width:auto; height:auto; z-index:0; pointer-events:none;
    border-radius:inherit;
    background:linear-gradient(116deg,transparent 24%,rgba(255,255,255,.28) 36%,transparent 58%);
    opacity:.25; transition:opacity .24s ease;
}
.services-cta--growth .services-cta__copy {
    position:relative; z-index:1; min-width:0; grid-column:1; grid-row:1; align-self:end;
}
.about .services-cta--growth .services-cta__title {
    position:relative; z-index:1; margin:0!important; color:#132a4a!important; -webkit-text-fill-color:#132a4a!important;
    font-size:clamp(23px,2.2vw,26px)!important; font-weight:700; line-height:1.65!important; letter-spacing:0!important;
}
.about .services-cta--growth p.services-cta__desc {
    position:relative; z-index:1; max-width:52ch!important; margin:8px 0 0!important; color:#425778!important;
    font-size:14px!important; line-height:1.9!important; text-align:start!important;
}
.services-cta--growth .services-cta__actions {
    position:relative; z-index:1; grid-column:1; grid-row:2; align-self:start;
    display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px;
    padding-top:14px; border-top:1px solid rgba(55,89,146,.12);
}
.about .services-cta--growth .services-cta__btn {
    box-sizing:border-box!important; width:fit-content!important; min-height:50px!important; max-width:100%!important;
    padding:12px 18px!important; margin:0!important; gap:10px!important;
    border:1px solid #2c50aa!important; border-radius:14px!important; background:linear-gradient(135deg,#3868d0,#294ca7)!important;
    color:#fff!important; -webkit-text-fill-color:#fff!important;
    box-shadow:0 7px 18px rgba(39,77,156,.2),inset 0 1px 0 rgba(255,255,255,.24)!important;
    font-size:14px!important; line-height:1.6!important; font-weight:600!important; letter-spacing:0!important;
    text-shadow:none!important; white-space:normal!important; text-align:center!important;
    transition:background .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.about .services-cta--growth .services-cta__btn::before,
.about .services-cta--growth .services-cta__btn::after { display:none!important; content:none!important; }
.services-cta--growth .services-cta__btn svg { display:block; flex:none; }
.services-cta--growth .services-cta__arrow { margin-inline-start:3px; opacity:.9; transition:translate .18s ease; }
html[dir=rtl] .services-cta--growth .services-cta__arrow { transform:rotate(180deg); }
.about .services-cta--growth .services-cta__btn:is(:visited,:focus-visible,:active) { color:#fff!important; -webkit-text-fill-color:#fff!important; }
.about .services-cta--growth .services-cta__btn:focus-visible { outline:3px solid #7398e2!important; outline-offset:4px!important; }
.about .services-cta--growth .services-cta__btn:active { transform:translateY(1px)!important; box-shadow:0 2px 5px rgba(36,66,145,.16)!important; }
.services-cta--growth .services-cta__note {
    display:inline-flex; align-items:center; gap:6px;
    color:#466185; font-size:12px; line-height:1.8; white-space:normal;
}
.services-cta--growth .services-cta__note svg { flex:none; color:#5680b2; }
.services-cta--growth .services-cta__art {
    position:relative; z-index:1; grid-column:2; grid-row:1/3; min-width:0; min-height:170px;
    display:grid; place-items:center; pointer-events:none; perspective:600px;
}
.services-cta--growth .services-cta__art::before {
    content:""; position:absolute; inset:7px 2px; z-index:-1; border-radius:30px;
    border:1px solid rgba(255,255,255,.95);
    background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(218,233,255,.65));
    box-shadow:0 7px 16px rgba(76,108,169,.06),inset 0 0 0 1px rgba(104,143,206,.07);
    transform:rotate(-5deg);
}
.services-cta--growth .services-cta__art img {
    display:block; width:min(100%,160px); height:auto; aspect-ratio:320/280;
    transform:rotateX(var(--glass-art-x)) rotateY(var(--glass-art-y));
    transition:transform .24s ease;
    filter:drop-shadow(0 10px 10px rgba(42,68,130,.13));
}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
    .about .services-cta.services-cta--growth {
        background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(245,249,255,.9) 58%,rgba(232,242,255,.88))!important;
        backdrop-filter:blur(18px) saturate(115%); -webkit-backdrop-filter:blur(18px) saturate(115%);
    }
}
html.dp-boot-fallback .about .services-cta.services-cta--growth {
    background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(245,249,255,.95) 58%,rgba(232,242,255,.94))!important;
}
@media(hover:hover) and (pointer:fine) {
    .about .services-cta.services-cta--growth:hover,
    .about .services-cta.services-cta--growth:focus-within {
        border-color:#fff!important;
        box-shadow:0 28px 62px rgba(16,34,78,.22),0 6px 18px rgba(16,34,78,.09),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(98,131,193,.12)!important;
    }
    .about .services-cta.services-cta--growth:hover::after { opacity:.45; }
    .about .services-cta--growth .services-cta__btn:hover { background:linear-gradient(135deg,#315fc5,#244699)!important; transform:translateY(-2px)!important; box-shadow:0 10px 23px rgba(36,66,145,.26)!important; }
    .services-cta--growth .services-cta__btn:is(:hover,:focus-visible) .services-cta__arrow { translate:3px 0; }
    html[dir=rtl] .services-cta--growth .services-cta__btn:is(:hover,:focus-visible) .services-cta__arrow { translate:-3px 0; }
}
@media(max-width:720px) {
    .about .services-cta.services-cta--growth { grid-template-columns:minmax(0,1fr) 88px; gap:10px 14px; min-height:0; padding:22px!important; border-radius:24px!important; backdrop-filter:blur(12px) saturate(115%); -webkit-backdrop-filter:blur(12px) saturate(115%); }
    .services-cta--growth .services-cta__copy { display:contents; }
    .services-cta--growth .services-cta__art { grid-column:2; grid-row:1/3; justify-items:center; align-self:center; min-height:96px; }
    .services-cta--growth .services-cta__art::before { inset:4px -1px; border-radius:20px; }
    .services-cta--growth .services-cta__art img { width:92px; max-width:none; }
    .about .services-cta--growth .services-cta__title { grid-column:1; grid-row:2; align-self:center; font-size:22px!important; }
    .about .services-cta--growth p.services-cta__desc { grid-column:1/-1; grid-row:3; margin:4px 0 0!important; font-size:14px!important; line-height:1.85!important; }
    .services-cta--growth .services-cta__actions { grid-column:1/-1; grid-row:4; justify-content:center; gap:10px; margin-top:4px; padding-top:16px; }
    .about .services-cta--growth .services-cta__btn { width:100%!important; justify-content:center; }
}
@keyframes dp-glass-invitation {
    from { opacity:.35; translate:0 16px; scale:.985; }
    to { opacity:1; translate:0 0; scale:1; }
}
@media(prefers-reduced-motion:no-preference) {
    .about .services-cta.services-cta--growth[data-glass-revealed] { animation:dp-glass-invitation .42s cubic-bezier(.16,1,.3,1) both; }
}
@media(prefers-reduced-motion:reduce) {
    .about .services-cta.services-cta--growth,
    .about .services-cta.services-cta--growth::before,
    .about .services-cta.services-cta--growth::after,
    .about .services-cta--growth .services-cta__btn,
    .services-cta--growth .services-cta__art img { animation:none!important; transition:none!important; translate:none!important; scale:none!important; transform:none!important; }
}
@media(prefers-reduced-motion:reduce) {
    .services-cta--growth .services-cta__arrow { transition:none!important; translate:none!important; }
}
@media(prefers-reduced-transparency:reduce) {
    .about .services-cta.services-cta--growth,
    html.dp-boot-fallback .about .services-cta.services-cta--growth { background:#f3f7fd!important; backdrop-filter:none; -webkit-backdrop-filter:none; }
    .about .services-cta.services-cta--growth::before,
    .about .services-cta.services-cta--growth::after { display:none!important; }
}

/* A short, continuous highlight follows the actual rounded perimeter. */
@property --dp-orbit-progress {
    syntax:"<number>";
    initial-value:0;
    inherits:true;
}
.services-cta--growth .services-cta__gold-ring {
    position:absolute; inset:0; z-index:2; box-sizing:border-box;
    border-radius:inherit; pointer-events:none;
}
.services-cta--growth .services-cta__orbit {
    display:block; width:100%; height:100%; overflow:visible; pointer-events:none;
}
.services-cta--growth .services-cta__orbit rect {
    fill:none; stroke-linecap:round; stroke-linejoin:round;
}
.services-cta--growth .services-cta__orbit-track { stroke:#5671bf; stroke-width:1; opacity:.24; }
.services-cta--growth .services-cta__orbit-light {
    stroke:url(#dp-growth-orbit-gradient); stroke-width:2.1;
    stroke-dashoffset:calc(var(--dp-orbit-progress) - var(--orbit-lead,0));
}
.services-cta--growth .services-cta__orbit-light--tail { stroke-dasharray:14 86; opacity:.22; }
.services-cta--growth .services-cta__orbit-light--middle { --orbit-lead:6; stroke-dasharray:8 92; opacity:.5; }
.services-cta--growth .services-cta__orbit-light--front { --orbit-lead:10; stroke-dasharray:4 96; opacity:.92; }
.services-cta--growth .services-cta__orbit-light--tip {
    --orbit-lead:13.35; stroke:#238bbd; stroke-width:2.6; stroke-dasharray:.65 99.35;
}
/* The tail is a fading curve drawn from the star's recent movement. */
.services-cta--growth .services-cta__comet {
    position:absolute; left:var(--comet-x,50%); top:var(--comet-y,50%); z-index:0;
    display:none; width:22px; height:22px;
    transform:translate(-50%,-50%); opacity:0; pointer-events:none;
    transition:opacity .12s ease;
    --comet-trail-color:#398bc4;
}
.services-cta--growth[data-comet-on-button] .services-cta__comet {
    z-index:3; --comet-trail-color:#d5f8ff;
}
.services-cta--growth .services-cta__comet-trail {
    position:absolute; left:11px; top:11px; display:block;
    width:1px; height:1px; overflow:visible; pointer-events:none;
}
.services-cta--growth .services-cta__comet-trail path {
    fill:none; stroke:var(--comet-trail-color); stroke-linecap:round; stroke-linejoin:round;
}
.services-cta--growth .services-cta__comet-star {
    position:relative; display:block;
    filter:drop-shadow(0 1px 2px rgba(32,62,152,.2)) drop-shadow(0 0 3px rgba(75,184,232,.25));
}
.services-cta--growth[data-comet-on-button] .services-cta__comet-star {
    filter:drop-shadow(0 0 4px rgba(174,239,255,.65));
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .services-cta--growth .services-cta__comet { display:block; }
    .services-cta--growth[data-comet-active] .services-cta__comet { opacity:1; }
    .services-cta--growth[data-comet-on-button] .services-cta__arrow { opacity:0; }
}
@media(prefers-reduced-motion:reduce), (forced-colors:active) {
    .services-cta--growth .services-cta__comet { display:none!important; transition:none; }
    .services-cta--growth .services-cta__arrow { opacity:.9!important; }
}

.services-cta--growth .services-cta__offer {
    position:relative; z-index:1; display:inline-flex; align-items:center; gap:6px;
    width:fit-content; max-width:100%; box-sizing:border-box;
    margin:0 0 12px; padding:4px 10px;
    border:1px solid #d4e3f6; border-radius:9px;
    background:linear-gradient(120deg,rgba(255,255,255,.92),rgba(230,241,255,.85));
    color:#365c92; -webkit-text-fill-color:#365c92;
    font-size:11px; font-weight:600; line-height:1.8;
    box-shadow:inset 0 1px 0 #fff;
}
.services-cta--growth .services-cta__offer svg { flex:none; color:#527db8; }
@keyframes dp-orbit-trace {
    from { --dp-orbit-progress:0; }
    to { --dp-orbit-progress:-100; }
}
@media(prefers-reduced-motion:no-preference) {
    .services-cta--growth[data-glass-revealed] .services-cta__gold-ring {
        animation:dp-orbit-trace 10s linear infinite; animation-play-state:paused;
    }
}
@media(prefers-reduced-motion:no-preference) {
    .services-cta--growth[data-orbit-visible] .services-cta__gold-ring { animation-play-state:running; }
}
@media(max-width:720px) {
    .services-cta--growth .services-cta__offer { grid-column:1; grid-row:1; align-self:end; margin:0; }
}
@media(prefers-reduced-motion:reduce) {
    .services-cta--growth .services-cta__gold-ring { animation:none!important; }
}
@media(forced-colors:active) {
    .services-cta--growth .services-cta__gold-ring { display:none; }
    .services-cta--growth .services-cta__offer { border-color:CanvasText; background:Canvas; color:CanvasText; -webkit-text-fill-color:CanvasText; }
}

/* Dialog actions share the consultation blue, including inherited form states. */
#modalOverlay { --dp-accent:#3154ad; --dp-accent-light:#7999e3; --dp-primary:#3154ad; --dp-primary-deep:#274591; }
#modalOverlay .dp-modal__form-submit { background:var(--dp-medical-primary) !important; border-color:#2f50a5 !important; color:#fff !important; box-shadow:none !important; }
#modalOverlay .dp-modal__form-submit:hover { background:var(--dp-medical-hover) !important; }

/* Font-independent outlines: only SVG contours are drawn, with no fill. */
.about .service-card__number {
    width:54px !important; height:36px !important; line-height:0 !important;
    color:#d7e9ff !important; -webkit-text-fill-color:initial !important;
    -webkit-text-stroke:0 !important; background:none !important; background-clip:border-box !important;
}
.about .service-card__number svg { display:block; width:100%; height:100%; overflow:visible; fill:none !important; }
.about .service-card__number svg path { fill:none !important; stroke:currentColor; }
.about .service-card__tag { inset-inline-end:88px !important; }
@media(forced-colors:active) {
    .about .service-card__number { color:CanvasText !important; }
}

/* Clear reading order: fit, scope, then one next action. */
#modalOverlay #modalPage .dp-modal__fit {
    display:grid; grid-template-columns:94px minmax(0,1fr); gap:16px; align-items:baseline;
    padding:0 0 19px; margin:0 0 21px; border-bottom:1px solid var(--dp-medical-line);
}
#modalOverlay #modalPage .dp-modal__fit h3 { margin:0; color:var(--dp-medical-primary); font-size:12px; line-height:1.9; font-weight:600; }
#modalOverlay #modalPage .dp-modal__fit p { margin:0; color:var(--dp-medical-muted); font-size:13px; line-height:1.9; }
#modalOverlay #modalPage .dp-modal__deliverables li { padding:18px 16px; border-radius:13px; gap:12px; }
#modalOverlay #modalPage .dp-modal__deliverable-copy { min-width:0; }
#modalOverlay #modalPage .dp-modal__deliverable-title { margin:0 0 6px; color:var(--dp-medical-ink); font-size:14px; line-height:1.7; font-weight:650; }
#modalOverlay #modalPage .dp-modal__deliverable-copy p { margin:0; color:var(--dp-medical-muted); font-size:13px; line-height:1.85; }
#modalOverlay #modalPage .dp-modal__scope-title { margin-bottom:14px; }
#modalOverlay #modalPage .dp-modal__next-step { padding:18px; border-radius:13px; background:#f4f6fc; }
#modalOverlay #modalPage .dp-modal__next-title { font-size:14px; }
#modalOverlay #modalPage .dp-modal__header { padding:22px 28px !important; }
#modalOverlay #modalPage > .dp-modal__body { display:block !important; padding:22px 28px 26px !important; }
#modalOverlay :is(.dp-modal__detail-panel,.dp-modal__detail-result) { display:block !important; text-align:start; }
#modalOverlay .dp-modal__detail-label { margin:0 0 7px; color:var(--dp-medical-primary); font-size:12px; line-height:1.7; font-weight:600; }
#modalOverlay :is(.dp-modal__detail-panel,.dp-modal__detail-result) p { margin:0; font-size:14px; line-height:1.9; }
#modalOverlay #modalProducts .dp-modal__product-card { min-height:164px !important; padding:20px !important; gap:13px !important; border-radius:14px !important; }
#modalOverlay #modalProducts .dp-modal__product-title { font-size:18px !important; }
#modalOverlay #modalPortfolio .dp-modal__card-thumb { height:105px !important; min-height:105px !important; }
#modalOverlay #modalPortfolio .dp-modal__card-body { padding:20px !important; }
#modalOverlay #modalContact .contact-prepare { margin-top:16px; border-block:1px solid var(--dp-medical-line); text-align:start; }
#modalOverlay #modalContact .contact-prepare summary {
    display:flex; justify-content:space-between; align-items:center; gap:14px; min-height:44px;
    padding:9px 0; box-sizing:border-box; list-style:none; cursor:pointer;
    color:var(--dp-medical-ink); font-size:12px; line-height:1.8; font-weight:500;
}
#modalOverlay #modalContact .contact-prepare summary::-webkit-details-marker { display:none; }
#modalOverlay #modalContact .contact-prepare summary::after { content:'+'; flex:none; color:var(--dp-medical-primary); font:400 20px/1 sans-serif; }
#modalOverlay #modalContact .contact-prepare[open] summary::after { content:'−'; }
#modalOverlay #modalContact .contact-prepare summary:focus-visible { outline:2px solid var(--dp-medical-focus); outline-offset:3px; border-radius:4px; }
#modalOverlay #modalContact .contact-prepare p { margin:0 0 14px; color:var(--dp-medical-muted); font-size:13px; line-height:1.9; }
#modalOverlay #modalContact .dp-modal__trust-row { margin-top:12px !important; padding-top:0 !important; border-top:0 !important; }
@media(max-width:600px) {
    #modalOverlay #modalPage .dp-modal__fit { grid-template-columns:minmax(0,1fr); gap:4px; padding-bottom:15px; margin-bottom:17px; }
    #modalOverlay #modalPage .dp-modal__header { padding:18px 20px !important; }
    #modalOverlay #modalPage > .dp-modal__body { padding:18px 20px 22px !important; }
    #modalOverlay #modalPage .dp-modal__deliverables li { padding:15px 13px; }
    #modalOverlay #modalPage .dp-modal__deliverable-title { font-size:14px; margin-bottom:4px; }
    #modalOverlay #modalPage .dp-modal__next-step { padding:16px; gap:12px; }
    #modalOverlay #modalPage .dp-modal__next-step .dp-modal__page-cta { width:fit-content !important; align-self:flex-start; }
    #modalOverlay #modalProducts .dp-modal__product-card { min-height:0 !important; padding:18px !important; }
}

/* One dimensional illustration family makes services easy to recognize. */
.about .service-card__icon.service-card__icon--dimensional {
    width:88px!important; height:88px!important; padding:0!important; margin-bottom:16px!important;
    border:0!important; border-radius:0!important; background:none!important; box-shadow:none!important;
    overflow:visible!important;
}
.about .service-card__icon--dimensional > svg { display:none!important; }
.about .service-card__icon--dimensional .service-card__art {
    display:block; width:100%; height:100%; object-fit:contain;
    transition:transform .25s cubic-bezier(.2,.8,.2,1);
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .about .service-card:is(:hover,:focus-within) .service-card__art { transform:translateY(-3px) rotate(2deg); }
}
@media(max-width:600px) {
    .about .service-card__icon.service-card__icon--dimensional { width:80px!important; height:80px!important; margin-bottom:14px!important; }
}
@media(prefers-reduced-motion:reduce) {
    .about .service-card__art { transition:none!important; transform:none!important; }
}

