/* Interior surfaces. Keep all presentation rules inside main, away from shared chrome. */
.malito-inner {
  --mi-canvas:#f5f8fc;
  --mi-surface:#fff;
  --mi-border:#d8e5ef;
  --mi-radius:20px;
  --mi-shadow:0 2px 5px #153c5610,0 18px 38px -20px #153c5630;
  --mi-shadow-raised:0 5px 12px #153c5612,0 24px 48px -18px #153c5638;
  --mi-icon:linear-gradient(145deg,#006396,#103e5a);
}
.malito-inner.mp-page #main { background:var(--mi-canvas); }
.malito-inner #main .mp-hero { padding-block:24px; box-shadow:inset 0 -1px #ffffff12; }
.malito-inner #main .mp-hero::after {
  content:""; position:absolute; inset:auto 0 0; height:2px;
  background:linear-gradient(90deg,transparent,#19a4cb80,#f7ae3b80,transparent); pointer-events:none;
}
.malito-inner #main .mp-hero-summary { background:#ffffff08; border-color:#ffffff24; box-shadow:inset 0 1px #ffffff08; }
.malito-inner #main :is(.mp-tinted,.mp-related,.ma-values-section) { background:#edf3f9; }
.malito-inner #main .mp-section-heading { margin-bottom:32px; }
.malito-inner #main .mp-kicker { letter-spacing:0; }
.malito-inner #main .mp-kicker::before { width:22px; height:3px; border-radius:4px; }

/* Shared depth, with stronger treatment reserved for navigation and featured cards. */
.malito-inner #main :is(.mp-card,.mp-product-card,.mp-values-grid>article,.mp-contact-cards>a,.mp-request,.mp-side-card,.ma-person,.ma-org-grid>article,.ma-credential,.ma-directory-grid>a,.ma-values>article,.ma-social-pillars>article,.account-login-card,.mag-card,.mag-feature) {
  border:1px solid var(--mi-border); border-radius:var(--mi-radius);
  background-color:var(--mi-surface); box-shadow:var(--mi-shadow);
}
.malito-inner #main .mp-card {
  position:relative; isolation:isolate; overflow:hidden; min-width:0; padding:30px;
  background:radial-gradient(ellipse at 100% 0,#e9f4fc,transparent 65%),#fff;
  transition:transform 200ms ease,box-shadow 200ms ease,border-color 200ms ease;
}
.malito-inner #main .mp-card::before {
  content:""; position:absolute; inset:0 0 auto; height:3px;
  background:linear-gradient(90deg,#f7ae3b,#26afcf 28%,#00588e); pointer-events:none;
}
.malito-inner #main .mp-card-top { margin-bottom:24px; }
.malito-inner #main .mp-card-top>svg {
  width:32px; height:32px; padding:7px; border:1px solid #d7e7f2;
  border-radius:50%; background:#fff; color:#00588e;
}
.malito-inner #main :is(.mp-card-icon,.ma-unit-icon) {
  background:var(--mi-icon); color:#fff; border:1px solid #ffffff30;
  border-radius:14px; box-shadow:0 7px 14px -5px #00588e66,inset 0 1px #ffffff24;
}
.malito-inner #main .mp-card-icon { width:52px; height:52px; }
.malito-inner #main .mp-card h3 { font-size:1.08rem; margin-bottom:12px; }
.malito-inner #main .mp-card>p { font-size:.87rem; line-height:2.05; margin-bottom:24px; }
.malito-inner #main .mp-card-more {
  min-height:44px; padding-top:14px; border-top:1px solid #deebf4; font-size:.81rem;
}
.malito-inner #main .mp-card-more svg { margin-inline-start:auto; }
.malito-inner #main :is(.mp-button-blue,.mp-button-gold) { box-shadow:0 6px 14px -7px #123f5860,inset 0 1px #ffffff40; }
.malito-inner #main .mp-button { transition:transform 180ms ease,background-color 180ms ease,box-shadow 180ms ease; }
.malito-inner #main .mp-filters {
  width:fit-content; max-width:100%; padding:7px; margin-bottom:16px;
  border:1px solid #d7e4ee; border-radius:16px; background:#e9f0f7; gap:6px;
}
.malito-inner #main .mp-filters button { background:transparent; border-radius:10px; }
.malito-inner #main .mp-filters button[aria-pressed=true] { background:#00588e; color:#fff; box-shadow:0 3px 7px #00588e30; }
.malito-inner #main .mp-group-heading { border-bottom:0; padding-bottom:0; margin-bottom:22px; }
.malito-inner #main .mp-group-heading h2 { border-inline-start:3px solid #f7ae3b; padding-inline-start:12px; }

/* Service detail: scope, process and support each have a distinct visual weight. */
.malito-inner #main .mp-scope-grid { gap:20px; }
.malito-inner #main .mp-scope-grid>article {
  padding:25px; border:1px solid var(--mi-border); border-radius:16px;
  background:#fff; box-shadow:0 10px 24px -18px #153c5638;
}
.malito-inner #main .mp-scope-no {
  display:inline-flex; align-items:center; justify-content:center; min-width:38px; min-height:32px;
  padding:4px 8px; margin-bottom:16px; border:1px solid #d7e7f2; border-radius:9px;
  background:#ecf5fc; color:#00588e; font-size:.75rem; font-weight:600;
}
.malito-inner #main .mp-steps { gap:20px; }
.malito-inner #main .mp-steps>li { padding:24px; border:1px solid var(--mi-border); border-radius:16px; background:#fff; }
.malito-inner #main .mp-step-no { font-size:1.35rem; font-weight:600; }
.malito-inner #main .mp-step-no::after { background:linear-gradient(90deg,#dce7f0,#f7ae3b); }
.malito-inner #main .mp-side-card { border-top:3px solid #00588e; background:linear-gradient(160deg,#edf6fc,#fff 45%); }
.malito-inner #main :is(.mp-note,.mp-preparation) { border-radius:14px; background:#eaf3fa; }
.malito-inner #main .mp-faq-list { display:grid; gap:12px; border-top:0; }
.malito-inner #main .mp-faq details { padding-inline:22px; border:1px solid var(--mi-border); border-radius:14px; background:#fff; }
.malito-inner #main .mp-faq details[open] { border-color:#8db9d2; box-shadow:0 8px 24px -16px #00588e45; }
.malito-inner #main .mp-faq summary { min-height:68px; padding-block:18px; }
.malito-inner #main .mp-faq summary span {
  display:grid; place-items:center; flex:none; width:30px; height:30px;
  border-radius:50%; background:#edf5fb; font-size:1.25rem;
}
.malito-inner #main .mp-faq details>div { padding:0 0 22px; }
.malito-inner #main .mp-values-grid>article { background:linear-gradient(155deg,#fff 55%,#edf5fb); }
.malito-inner #main .mp-product-card { background:radial-gradient(ellipse at 100% 0,#deeffb,transparent 65%),#fff; }
.malito-inner #main .mp-product-card:nth-child(2) { background:radial-gradient(ellipse at 100% 0,#fff0d5,transparent 65%),#fff; }
.malito-inner #main .mp-product-card>.mp-card-icon { width:62px; height:62px; }
.malito-inner #main .mp-product-card:nth-child(2)>.mp-card-icon { color:#14283d; background:#f7ae3b; box-shadow:0 7px 16px -6px #b36c0066; }

/* About: retain the portraits and documents, add a coherent card system around them. */
.malito-inner #main .ma-directory { background:linear-gradient(145deg,#edf4fa,#f7fafd); }
.malito-inner #main .ma-directory-grid { gap:20px; }
.malito-inner #main .ma-directory-grid>a { padding:24px; background:#fff; transition:transform 200ms ease,box-shadow 200ms ease,border-color 200ms ease; }
.malito-inner #main .ma-directory-icon {
  display:grid; place-items:center; flex:none; width:52px; height:52px;
  color:#fff; background:var(--mi-icon); border-radius:14px; box-shadow:0 6px 14px -6px #00588e70;
}
.malito-inner #main .ma-person-copy { border-top:1px solid #e4edf4; background:linear-gradient(155deg,#fff,#f2f7fb); }
.malito-inner #main .ma-team-section+.ma-team-section { padding-top:48px; }
.malito-inner #main .ma-group-title { padding-inline-start:14px; border-inline-start:3px solid #f7ae3b; }
.malito-inner #main :is(.ma-values>article,.ma-social-pillars>article) { padding:26px; }
.malito-inner #main :is(.ma-values article>span,.ma-social-pillars article>span) {
  display:grid; place-items:center; width:54px; height:54px; margin-bottom:22px;
  border-radius:14px; background:var(--mi-icon); color:#fff; box-shadow:0 6px 14px -6px #00588e70;
}
.malito-inner #main :is(.ma-values,.ma-social-pillars) { gap:22px; }
.malito-inner #main :is(.ma-original-chart,.ma-brand-symbol,.ma-foundation-logos) { border:1px solid var(--mi-border); border-radius:20px; box-shadow:var(--mi-shadow); }
.malito-inner #main .ma-original-chart { background:#fff; }
.malito-inner #main .ma-document-thumb { background:linear-gradient(145deg,#eef5fa,#e3edf5); }
.malito-inner #main .ma-document-thumb>span { min-height:44px; }
.malito-inner #main .ma-close { background:linear-gradient(135deg,#e7f1f8,#f8fbfd); border-top-color:#d3e3ef; }

/* Contact and account forms keep simple, predictable controls. */
.malito-inner #main .mp-contact-cards>a { background:linear-gradient(140deg,#fff,#edf5fb); transition:box-shadow 200ms ease,border-color 200ms ease; }
.malito-inner #main .mp-request { background:linear-gradient(165deg,#edf6fc,#fff 27%); border-top:3px solid #00588e; }
.malito-inner #main .mp-request :is(input,textarea,select) { background:#fff; border-radius:10px; box-shadow:inset 0 1px 2px #173c5805; }
.malito-inner #main .mp-request :is(input,textarea,select):focus { box-shadow:0 0 0 3px #00588e12; }
.malito-inner #main .mp-offices>article { padding:26px; margin-bottom:18px; border:1px solid var(--mi-border); border-radius:16px; background:#fff; }
.malito-inner #main .account-login-card { border-top:3px solid #00588e; background:linear-gradient(160deg,#edf6fc,#fff 28%); }

/* Magazine surfaces use the same depth while preserving the reading layout. */
.malito-inner #main .mag-masthead { background:linear-gradient(130deg,#fff,#edf5fb); }
.malito-inner #main .mag-card { box-shadow:var(--mi-shadow); }
.malito-inner #main .mag-card-read { border-top-color:#d8e7f1; }
.malito-inner #main .mag-feature { box-shadow:0 24px 50px -28px #153c5640; }
.malito-inner #main .mag-feature-copy { background:linear-gradient(150deg,#fff 55%,#edf5fb); }

@media (hover:hover) and (pointer:fine) {
  .malito-inner #main :is(.mp-card,.ma-directory-grid>a):hover { transform:translateY(-5px); box-shadow:var(--mi-shadow-raised); border-color:#91bcd5; }
  .malito-inner #main .mp-contact-cards>a:hover { border-color:#91bcd5; box-shadow:var(--mi-shadow-raised); }
}
.malito-inner #main :is(.mp-card,.ma-directory-grid>a,.mp-contact-cards>a):focus-visible { outline:3px solid #f19b14; outline-offset:4px; }
@media (max-width:767px) {
  .malito-inner #main .mp-hero { padding-block:18px; }
  .malito-inner #main :is(.mp-card,.mp-scope-grid>article,.mp-steps>li,.ma-values>article,.ma-social-pillars>article) { padding:24px; }
  .malito-inner #main :is(.mp-card-grid,.mp-values-grid,.mp-scope-grid,.mp-steps) { gap:18px; }
  .malito-inner #main .mp-card-more { min-height:48px; }
  .malito-inner #main .ma-directory-grid>a { padding:20px; gap:14px; }
  .malito-inner #main .ma-directory-icon { width:44px; height:44px; border-radius:12px; }
  .malito-inner #main .mp-faq details { padding-inline:18px; }
  .malito-inner #main :is(.mp-request,.mp-offices>article) { padding:24px; }
  .malito-inner #main .mp-contact-cards>a { padding:22px; }
}
@media (prefers-reduced-motion:reduce) {
  .malito-inner #main :is(.mp-card,.ma-directory-grid>a,.mp-button) { transition:none; }
  .malito-inner #main :is(.mp-card,.ma-directory-grid>a,.mp-button):hover { transform:none; }
}
@media (forced-colors:active) {
  .malito-inner #main :is(.mp-card-icon,.ma-unit-icon,.ma-directory-icon,.ma-values article>span,.ma-social-pillars article>span) { color:CanvasText; background:Canvas; border:1px solid ButtonText; box-shadow:none; }
}
