/* ==========================================================================
   MAHIRA SELECT - pages.css
   Long form content, policy pages, blog, search and 404.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Document head
   -------------------------------------------------------------------------- */
.ms-doc__head{padding-block:clamp(40px,5vw,72px) clamp(24px,3vw,36px);}
.ms-doc__meta{font-size:var(--ms-fs-xs);color:var(--ms-muted);margin-top:10px;}
.ms-doc__hero{margin:0 0 clamp(32px,4vw,56px);}
.ms-doc__hero img{width:100%;height:auto;}

/* --------------------------------------------------------------------------
   Prose. Policy documents must be scannable, not a wall of text.
   -------------------------------------------------------------------------- */
.ms-prose{padding-bottom:clamp(48px,6vw,88px);}
.ms-prose > * + *{margin-top:1.15em;}

.ms-prose h2{
  font-size:clamp(1.375rem,1.15rem + .95vw,1.875rem);
  margin-top:2.2em;padding-top:1.1em;
  border-top:var(--ms-hairline);
}
.ms-prose h2:first-child{margin-top:0;padding-top:0;border-top:0;}
.ms-prose h3{font-size:1.1875rem;margin-top:1.8em;}
.ms-prose h4{
  font-family:var(--ms-font-body);
  font-size:var(--ms-fs-micro);font-weight:600;
  letter-spacing:var(--ms-track-micro);text-transform:uppercase;
  color:var(--ms-muted);margin-top:1.8em;
}

.ms-prose p,.ms-prose li{color:var(--ms-ink);}
.ms-prose p{max-width:68ch;}

.ms-prose ul,.ms-prose ol{padding-left:1.25em;max-width:68ch;}
.ms-prose ul{list-style:disc;}
.ms-prose ol{list-style:decimal;}
.ms-prose li + li{margin-top:.5em;}
.ms-prose li::marker{color:var(--ms-gold);}

.ms-prose a{
  color:var(--ms-gold-ink);
  text-decoration:underline;text-underline-offset:.2em;
  text-decoration-thickness:1px;
}
.ms-prose a:hover{color:var(--ms-ink);}

.ms-prose strong{font-weight:600;}

.ms-prose blockquote{
  margin:1.6em 0;padding:20px 24px;
  background:var(--ms-champagne);
  border-left:2px solid var(--ms-gold);
}
.ms-prose blockquote p{margin:0;}

.ms-prose table{
  margin:1.6em 0;font-size:var(--ms-fs-sm);
  display:block;overflow-x:auto;white-space:nowrap;
}
.ms-prose th,.ms-prose td{
  padding:12px 16px;text-align:left;
  border-bottom:var(--ms-hairline);
}
.ms-prose th{
  font-size:var(--ms-fs-micro);font-weight:600;
  letter-spacing:var(--ms-track-micro);text-transform:uppercase;
  color:var(--ms-muted);
}

.ms-prose img{margin:1.6em 0;}
.ms-prose hr{border:0;border-top:var(--ms-hairline);margin:2.4em 0;}

/* A callout for the parts of a policy customers must not miss. */
.ms-callout{
  margin:1.8em 0;padding:24px 26px;
  background:var(--ms-surface);
  border:1px solid var(--ms-gold);
}
.ms-callout__title{
  font-family:var(--ms-font-body);
  font-size:var(--ms-fs-micro);font-weight:600;
  letter-spacing:var(--ms-track-micro);text-transform:uppercase;
  color:var(--ms-gold-ink);margin-bottom:10px;
}
.ms-callout p:last-child{margin-bottom:0;}

/* --------------------------------------------------------------------------
   Help block at the foot of information pages
   -------------------------------------------------------------------------- */
.ms-help{background:var(--ms-sand);padding-block:clamp(40px,5vw,64px);}
.ms-help__inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--ms-space-md);flex-wrap:wrap;
}
.ms-help__actions{display:flex;gap:10px;flex-wrap:wrap;}
.ms-help p{margin-top:8px;}

/* --------------------------------------------------------------------------
   Post grid
   -------------------------------------------------------------------------- */
.ms-postgrid{
  display:grid;gap:clamp(28px,3vw,48px);
  grid-template-columns:1fr;
}
@media (min-width:640px){ .ms-postgrid{grid-template-columns:repeat(2,1fr);} }
@media (min-width:1024px){ .ms-postgrid{grid-template-columns:repeat(3,1fr);} }

.ms-postcard{display:flex;flex-direction:column;}
.ms-postcard__media{
  position:relative;display:block;aspect-ratio:3/2;
  overflow:hidden;background:var(--ms-sand);margin-bottom:16px;
}
.ms-postcard__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ms-ease);}
.ms-postcard:hover .ms-postcard__img{transform:scale(1.03);}
.ms-postcard__meta{font-size:var(--ms-fs-xs);color:var(--ms-muted);margin-bottom:8px;}
.ms-postcard__title{font-size:1.25rem;line-height:1.24;margin-bottom:8px;}
.ms-postcard__excerpt{font-size:var(--ms-fs-sm);color:var(--ms-muted);}

/* --------------------------------------------------------------------------
   404
   -------------------------------------------------------------------------- */
.ms-404__inner{text-align:center;display:flex;flex-direction:column;align-items:center;}
.ms-404__mark{width:72px;height:auto;opacity:.5;margin-bottom:24px;}
.ms-404__search{
  display:flex;gap:10px;flex-wrap:wrap;
  width:100%;max-width:480px;margin:32px auto 0;
}
.ms-404__search input[type='search']{flex:1 1 220px;min-width:0;}
.ms-404__links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:36px;}

/* --------------------------------------------------------------------------
   Search results extras
   -------------------------------------------------------------------------- */
.ms-search__none{padding-block:20px 8px;}
