/* Habesha Care — V7.7 MOBILE DENSITY & ALIGNMENT
 * No desktop declarations. Condenses mobile cards and white-space without
 * deleting approved content or changing page functionality.
 * The mobile footer retains contact, social links, free consultation and legal.
 */
@media (max-width: 760px) {
  :root { --fc77-gutter: 20px; }
  /* Enforce the approved V7.6 phone cleanup over older !important styles. */
  html body main#top section.hero .hero-copy > .trust-line { display:none!important; }
  html body main#top { max-width: 100%; overflow-x: clip; }
  html body main#top > section { box-sizing:border-box!important; max-width:100%!important; }
  html body main#top :is(h1,h2,h3,h4,p,li) { max-width:100%!important; overflow-wrap:break-word; }
  /* English paragraphs have an even right margin, not justified gaps.
     Centered degree certificates, badges, and intentional graphic labels are exempt. */
  html[lang="en"] body main#top section p:not(.amharic):not(.amharic-welcome):not(.mm-university):not(.fc-consult-facts):not(.fc-v76-lang-description),
  html[lang="en"] body main#top section article p,
  html[lang="en"] body main#top section details p,
  html[lang="en"] body main#top section li {
    text-align:left!important; text-align-last:left!important;
    text-justify:auto!important; word-spacing:normal!important;
    letter-spacing:normal!important; hyphens:none!important;
  }
  /* ------------ Footer: keep what helps people contact/book ------------ */
  html body footer.site-footer .footer-main {
    display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    gap:21px!important; padding:30px var(--fc77-gutter) 23px!important;
  }
  /* The mobile menu already offers these links; don't repeat a long list. */
  html body footer.site-footer .footer-main > .footer-column:nth-child(3) {
    display:none!important;
  }
  /* Hide only the repetitive care-home categories, NOT the free CTA. */
  html body footer.site-footer .footer-service > h3,
  html body footer.site-footer .footer-service > .footer-states { display:none!important; }
  html body footer.site-footer .footer-service {
    display:block!important; margin:0!important; padding:0!important;
    background:transparent!important; border:0!important; box-shadow:none!important;
  }
  html body footer.site-footer .footer-service .button {
    display:flex!important; width:100%!important; min-height:48px!important;
    justify-content:center!important; align-items:center!important;
    padding:13px 12px!important; font-size:13px!important;
    line-height:1.4!important; text-align:center!important;
    white-space:normal!important;
  }
  html body footer.site-footer .footer-about .footer-logo {
    max-width:182px!important; height:auto!important;
    margin:0 0 4px!important;
  }
  html body footer.site-footer .footer-about > p {
    font-size:12.5px!important; line-height:1.55!important;
    margin:0 0 9px!important; color:#ddd4c5!important;
  }
  html body footer.site-footer .social-links { margin-top:12px!important; gap:7px!important; }
  html body footer.site-footer .social-links a { padding:7px 10px!important; font-size:12px!important; }
  html body footer.site-footer .footer-column > h3 { font-size:20px!important; margin:0 0 12px!important; }
  html body footer.site-footer .footer-column > p { margin:0 0 9px!important; font-size:12.5px!important; line-height:1.5!important; }
  html body footer.site-footer .footer-bottom { padding:15px 50px 18px var(--fc77-gutter)!important; }
  html body footer.site-footer .footer-bottom p { font-size:11.5px!important; line-height:1.4!important; }
  html body footer.site-footer .footer-bottom p + p { margin-top:4px!important; }

  /* ------------ Shared page transitions and CTA ------------ */
  html body main#top > section.consultation {
    padding:37px var(--fc77-gutter) 38px!important;
    gap:16px!important;
  }
  html body main#top .consultation h2 { margin-bottom:11px!important; }
  html body main#top .consultation p { line-height:1.55!important; }
  html body main#top .consultation .button,
  html body main#top .consultation a.button { min-height:46px!important; }
  html body main#top .section-heading { margin-bottom:21px!important; }
  html body main#top .section-heading.compact { margin-bottom:20px!important; }

  /* ------------ Meet Meron: condensed biography + credentials ------------ */
  html body main#top > section.mm-intro { min-height:0!important; }
  html body main#top .mm-intro .mm-portrait.mm-gold-frame { padding:14px 16px!important; }
  html body main#top .mm-intro .mm-gold-frame img {
    max-height:340px!important; object-fit:cover!important;
    object-position:center 20%!important;
  }
  html body main#top .mm-intro .mm-intro-copy {
    padding:22px var(--fc77-gutter) 27px!important;
  }
  html body main#top .mm-intro .mm-intro-copy h1 { margin-bottom:12px!important; }
  html body main#top .mm-intro-copy > p:not(.mm-eyebrow) {
    line-height:1.55!important; margin-bottom:10px!important;
  }
  html body main#top > section.mm-journey,
  html body main#top > section.mm-benefits,
  html body main#top > section.mm-credentials {
    padding:31px var(--fc77-gutter) 35px!important;
  }
  html body main#top .mm-section-heading h2 { margin:0 0 15px!important; }
  html body main#top .mm-section-heading p { line-height:1.5!important; }
  html body main#top .mm-journey-grid,
  html body main#top .mm-benefit-grid,
  html body main#top .mm-credentials .credentials {
    display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important; width:100%!important; margin-top:20px!important;
  }
  html body main#top .mm-journey-grid article { padding:17px 17px 19px!important; min-height:0!important; }
  html body main#top .mm-journey-grid h3 { font-size:20px!important; margin:9px 0 8px!important; line-height:1.26!important; }
  html body main#top .mm-journey-grid .mm-position { margin:7px 0 8px!important; }
  html body main#top .mm-journey-grid article p { font-size:14px!important; line-height:1.55!important; }
  html body main#top > section.mm-founder-story { padding:30px var(--fc77-gutter)!important; }
  html body main#top .mm-founder-story :is(.mm-statement-shell,.mm-founder-aside) { max-width:100%!important; box-sizing:border-box!important; }
  html body main#top .mm-founder-story .mm-statement-heading { margin-bottom:18px!important; }
  html body main#top .mm-founder-story p { line-height:1.58!important; }
  /* Benefits read as compact editorial rows rather than a tall card stack. */
  html body main#top .mm-benefit-grid article {
    display:grid!important; grid-template-columns:29px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important; gap:4px 11px!important;
    min-height:0!important; padding:14px 15px!important; align-items:start!important;
  }
  html body main#top .mm-benefit-grid article > span {
    grid-column:1!important; grid-row:1 / span 2!important;
    align-self:start!important; font-size:23px!important; line-height:1.25!important;
  }
  html body main#top .mm-benefit-grid article h3 {
    grid-column:2!important; grid-row:1!important; margin:0!important; font-size:18px!important;
  }
  html body main#top .mm-benefit-grid article p {
    grid-column:2!important; grid-row:2!important; margin:0!important;
    font-size:14px!important; line-height:1.53!important;
  }
  html body main#top .mm-credentials .qualification {
    min-height:0!important; padding:16px 14px 18px!important; gap:4px!important;
  }
  html body main#top .mm-credentials .qualification-icon {
    width:48px!important; height:48px!important; margin:0 0 6px!important;
  }
  html body main#top .mm-credentials .qualification-icon svg { width:24px!important; height:24px!important; }
  html body main#top .mm-credentials .qualification strong { font-size:16px!important; line-height:1.3!important; }
  html body main#top .mm-credentials .qualification small { font-size:13px!important; line-height:1.42!important; margin:2px 0!important; }
  html body main#top .mm-credentials .mm-university { font-size:12.5px!important; line-height:1.4!important; padding:2px!important; }
  html body main#top .mm-training-note { margin:17px 0 0!important; font-size:13px!important; line-height:1.5!important; }
  html body main#top > section.mm-connect { padding:22px var(--fc77-gutter)!important; }

  /* ------------ Payroll: full scope retained, less whitespace ------------ */
  html body main#top > section.payroll-choice { padding:34px var(--fc77-gutter) 26px!important; }
  html body main#top .payroll-choice-heading { margin-bottom:19px!important; }
  html body main#top .payroll-choice-intro { line-height:1.55!important; }
  html body main#top .payroll-state-choice { padding:15px!important; }
  html body main#top .payroll-state-prompt { margin-bottom:12px!important; }
  html body main#top > section.payroll-state-details,
  html body main#top > section.payroll-responsibility {
    padding:37px var(--fc77-gutter) 40px!important;
  }
  html body main#top .payroll-state-details .section-heading { margin-bottom:21px!important; }
  html body main#top .payroll-service-grid { gap:11px!important; }
  html body main#top .payroll-service-grid article {
    min-height:0!important; padding:18px 17px!important;
  }
  html body main#top .payroll-service-grid article h3 { margin:0 0 10px!important; }
  html body main#top .payroll-service-grid article p { line-height:1.55!important; }
  html body main#top .payroll-service-grid article .learn-more { margin-top:12px!important; }
  html body main#top .payroll-boundary { margin-top:20px!important; padding:18px!important; }
  html body main#top .fc-responsibility-cards { gap:10px!important; }
  html body main#top .fc-responsibility-cards article,
  html body main#top .responsibility-grid article,
  html body main#top .payroll-authorization .authorization-shell { padding:18px!important; min-height:0!important; }
  html body main#top .payroll-responsibility details,
  html body main#top .payroll-responsibility .service-line-grid article { min-height:0!important; }

  /* ------------ Bookkeeping: lighter stacks and shorter feature panels ------------ */
  html body main#top > section.fc-bookkeeping-journey,
  html body main#top > section.fc-bk-deliverables,
  html body main#top > section.services,
  html body main#top > section.payroll-crosslink,
  html body main#top > section.process {
    padding:37px var(--fc77-gutter) 40px!important;
  }
  html body main#top .fc-bk-layout { gap:12px!important; }
  html body main#top .fc-bk-options { gap:10px!important; }
  html body main#top .fc-bk-choice,
  html body main#top .fc-bk-detail,
  html body main#top .fc-bk-panel,
  html body main#top .fc-bk-deliverable { min-height:0!important; }
  html body main#top .fc-bk-choice { padding:15px 16px!important; }
  html body main#top .fc-bk-detail { padding:17px!important; }
  html body main#top .fc-bk-panel-title { margin:8px 0 14px!important; }
  html body main#top .fc-bk-deliverables-grid { gap:11px!important; }
  html body main#top .fc-bk-deliverable { padding:18px 16px!important; }
  html body main#top section.services .service-grid { gap:11px!important; }
  html body main#top section.services .service-grid article { padding:18px 16px!important; min-height:0!important; }
  html body main#top section.payroll-crosslink .faithcore-standard { padding:22px 18px!important; }
  html body main#top section.process ol { gap:11px!important; }
  html body main#top section.process li { padding:16px!important; }
  html body main#top .community-visual-copy { padding:22px var(--fc77-gutter)!important; }
  html body main#top section.community-visual img { max-height:255px!important; object-fit:cover!important; }

  /* ------------ Services: keep the approved explanation, remove giant slabs ------------ */
  html body main#top > section.fc-v3-hub {
    padding:19px var(--fc77-gutter) 37px!important;
    gap:12px!important;
  }
  html body main#top .fc-v3-hub-card { min-height:0!important; padding:19px 17px!important; }
  html body main#top .fc-v3-hub-card h2,
  html body main#top .fc-v3-hub-card h3 { margin:10px 0 11px!important; }
  html body main#top .fc-v3-hub-card p { line-height:1.55!important; }
  html body main#top > section.fc-v3-hub-note { padding:29px var(--fc77-gutter)!important; gap:13px!important; }

  /* ------------ How It Works interior: reduce space, preserve all disclosures ------------ */
  html body main#top > section.hc-how-hero { padding:32px var(--fc77-gutter) 37px!important; gap:16px!important; }
  html body main#top .hc-hero-side { max-height:210px!important; overflow:hidden!important; }
  html body main#top .hc-hero-side img { max-height:210px!important; object-fit:cover!important; }
  html body main#top > section.hc-how-process,
  html body main#top > section.hc-how-fees,
  html body main#top > section.hc-how-faq {
    padding:36px var(--fc77-gutter) 39px!important;
  }
  html body main#top .hc-how-intro { margin-bottom:21px!important; }
  html body main#top .hc-steps { gap:9px!important; }
  /* Existing step cards have padding on their toggle, not the outer article. */
  html body main#top .hc-step { min-height:0!important; padding:0!important; }
  html body main#top .hc-step-toggle { padding:16px 18px 15px!important; }
  html body main#top .hc-step-detail { padding:0 18px 15px!important; }
  html body main#top .hc-step h3 { margin:13px 0 9px!important; }
  html body main#top .hc-step p { margin:0 0 12px!important; line-height:1.58!important; }
  html body main#top .hc-fees-intro > p:not(.hc-eyebrow) { line-height:1.57!important; }
  html body main#top .hc-fee-note { padding:17px!important; margin-top:16px!important; }
  html body main#top .hc-fees-reasons > details,
  html body main#top .hc-faq-questions > details { padding:12px 0!important; }

  /* ------------ FAQs & free-consultation page ------------ */
  /* FAQ presentation is approved: do not alter its questions or expanded styling. */
  html body main#top > section.fc-consult-hero { padding:27px var(--fc77-gutter) 30px!important; }
  html body main#top > section.fc-choose { padding:27px var(--fc77-gutter) 29px!important; }
  html body main#top .fc-consult-topline { margin-bottom:19px!important; }
  html body main#top .fc-options { gap:10px!important; }
  html body main#top .fc-option {
    min-height:0!important; padding:15px 41px 15px 16px!important;
    gap:4px 10px!important;
  }
  html body main#top .fc-option[aria-pressed="true"] {
    padding-top:26px!important;
  }
  html body main#top .fc-option .fc-option-icon { height:37px!important; }
  html body main#top > section.fc-contact-strip { padding:18px var(--fc77-gutter) 24px!important; }
}
@media(max-width:350px){:root{--fc77-gutter:16px}}
