/* Shared mobile shell. Desktop footer links remain expanded. */
.mobile-nav-scrim { display:none; }
.home-footer-group > summary { list-style:none; }
.home-footer-group > summary::-webkit-details-marker { display:none; }
@media (min-width:761px) {
  .home-footer-group > summary { cursor:default; }
}
@media (max-width:760px) {
  html.mobile-navigation-open { overflow:hidden; }
  body.home-page .home-header { height:64px; z-index:1100; }
  body.home-page .home-header-inner { width:calc(100% - 32px); gap:12px; }
  body.home-page .home-brand { font-size:20px; gap:8px; letter-spacing:.04em; }
  body.home-page .home-brand-mark { width:33px; height:33px; }
  body.home-page .menu-toggle { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:70px; min-height:44px; font-size:14px; padding:8px; }
  body.home-page .menu-toggle::before { content:''; width:18px; height:14px; flex-shrink:0; border-block:1.5px solid currentColor; background:linear-gradient(currentColor,currentColor) center / 100% 1.5px no-repeat; }
  body.home-page .menu-toggle[aria-expanded="true"]::before { border:0; height:18px; background:linear-gradient(45deg,transparent 46%,currentColor 47% 53%,transparent 54%),linear-gradient(-45deg,transparent 46%,currentColor 47% 53%,transparent 54%); }
  body.home-page .home-nav { position:absolute; top:64px; left:12px; right:12px; max-height:calc(100dvh - 80px - env(safe-area-inset-bottom)); padding:10px 12px 16px; border:1px solid #dce3d3; border-radius:0 0 18px 18px; box-shadow:0 18px 38px #203e2e22; gap:2px; overscroll-behavior:contain; }
  body.home-page .home-nav > a { min-height:44px; padding:10px 12px; font-size:15px; }
  body.home-page .home-nav .lang-switch { margin:8px 0; }
  body.home-page .home-nav .lang-opt { min-width:44px; min-height:44px; }
  body.home-page .home-nav > .nav-auth { margin-top:4px; }
  .mobile-nav-scrim.is-open { display:block; position:fixed; inset:64px 0 0; z-index:1090; background:#203e2e66; border:0; padding:0; width:100%; cursor:pointer; }
  .science-page .sc-section-nav, .about-page .ab-section-nav { top:64px; }
  .contact-page { --ct-header-height:64px; }
  body.home-page .home-footer { padding:24px 0 0; border-radius:18px 18px 0 0; }
  body.home-page .home-footer > .home-container { width:calc(100% - 32px); }
  body.home-page .home-footer-grid { display:block; padding-bottom:14px; }
  .home-footer-about { margin-bottom:14px; }
  .home-footer-about h4 { font-size:16px; margin-bottom:6px; }
  .home-footer-tagline { font-size:13px; margin-bottom:8px; }
  .home-footer-about p { font-size:13px; line-height:1.8; }
  .home-footer-group { border-top:1px solid #ffffff25; }
  .home-footer-group > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:8px 0; cursor:pointer; }
  .home-footer-group > summary h4 { margin:0; font-size:14px; }
  .home-footer-group > summary::after { content:'＋'; font-size:20px; line-height:1; color:#d5ddce; }
  .home-footer-group[open] > summary::after { content:'−'; }
  .home-footer-group > ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; padding-bottom:10px; }
  .home-footer-group li a { display:flex; align-items:center; min-height:44px; font-size:13px; padding:6px 0; }
  .home-footer-group > summary:focus-visible { outline:2px solid #e8c7a4; outline-offset:2px; }
  body.home-page .home-footer-meta { padding:12px 0 max(16px,env(safe-area-inset-bottom)); gap:2px 14px; font-size:12px; }
  .home-footer-meta .home-footer-legal { gap:2px 16px; }
  .home-footer-meta a { min-height:36px; display:inline-flex; align-items:center; }
}

@media (max-width:760px) {
  .home-page .home-hero { gap:18px; padding-top:0; }
  .home-hero-copy { padding:18px 0 0; }
  .home-hero .home-eyebrow { margin-bottom:10px; }
  .home-page .home-hero h1 { font-size:34px; line-height:1.35; margin-bottom:12px; }
  .home-hero-lead { font-size:15px; line-height:1.75; }
  .home-hero .home-actions { margin-top:16px; gap:10px; }
  .home-hero .home-button { padding-inline:20px; }
  .home-hero-note { margin-top:10px; }
  .home-hero-visual { aspect-ratio:auto; height:160px; border-radius:20px 12px 12px; }
  .home-hero-visual figcaption { bottom:10px; right:10px; font-size:12px; padding:6px 10px; }
  .home-knowledge { padding:24px 0 16px; }
  .home-section-heading { flex-direction:row; align-items:center; gap:8px; margin-bottom:14px; }
  .home-section-heading h2 { font-size:20px; max-width:none; flex:1; }
  .home-section-heading .home-text-link { flex-shrink:0; align-self:center; font-size:12px; min-height:44px; }
  .home-story-grid { gap:12px; }
  .home-story { display:grid; grid-template-columns:88px minmax(0,1fr); align-items:stretch; gap:12px; padding:12px; border:1px solid #dce3d3; border-radius:14px; background:#fffef9; }
  .home-story-image { aspect-ratio:auto; min-height:92px; height:100%; border-radius:9px; }
  .home-story-image img { height:100%; object-fit:cover; }
  .home-story-body { min-width:0; padding:0; }
  .home-story .home-tag { font-size:11px; margin-bottom:4px; }
  .home-story h3 { font-size:17px; line-height:1.5; margin:0 0 5px; }
  .home-story p { padding:0; font-size:13px; line-height:1.65; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
  .home-story .home-story-arrow { position:static; margin-top:6px; font-size:12px; gap:6px; }
  .home-story .home-arrow { width:18px; height:18px; }
  .home-latest { margin-top:18px; padding:14px 0; gap:8px; }
  .home-article-link { min-height:44px; font-size:14px; }
  .home-page .polish-reading-path { padding-top:18px; }
  .home-page .polish-path-item { padding:14px 0; }
  .home-page .polish-path-item p { font-size:13px; }
  .home-needs { padding-top:18px; padding-bottom:22px; }
  .home-centered-title { margin-bottom:14px; }
  .home-needs-grid { padding:16px 0; gap:20px 0; border-radius:16px; }
  .home-need { padding-inline:12px; }
  .home-need .home-icon-circle { width:48px; height:48px; margin-bottom:8px; }
  .home-need .home-icon { width:30px; height:30px; }
  .home-need p { font-size:13px; line-height:1.7; }
  .home-need-action { display:inline-flex; align-items:center; min-height:44px; margin-top:6px; }
  .home-support { padding:20px 0 16px; }
  .home-callout { margin-top:18px; }

  .sc-hero-inner { padding:16px 0 18px; }
  .sc-breadcrumb, .sc-hero .home-eyebrow { display:none; }
  .science-page .sc-hero h1 { font-size:28px; margin-bottom:6px; }
  .sc-hero-lead { max-width:100%; font-size:14px; line-height:1.7; }
  .sc-hero::before { left:55%; opacity:.16; }
  .sc-section-nav { margin-top:12px; border-radius:12px; }
  .sc-section-nav a { min-height:56px; font-size:13px; gap:4px; }
  .sc-section-nav .home-icon { width:20px; height:20px; }
  .sc-section { padding-top:24px; scroll-margin-top:138px; }
  #knowledge { padding-top:16px; }
  #knowledge > .sc-heading { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .science-page .sc-search { padding:8px 12px; margin-bottom:10px; }
  .science-page .sc-search input { font-size:16px; }
  .sc-search-count { font-size:12px; margin-bottom:10px; }
  .science-page .sc-categories { gap:7px; margin-bottom:12px; }
  .science-page .sc-categories button { font-size:13px; padding:8px 13px; }
  .sc-article-grid { gap:12px; }
  .sc-article-card { min-height:0; padding:15px 16px 8px; border-radius:14px; }
  .sc-article-top { margin-bottom:8px; min-height:20px; }
  .science-page .sc-article-card h3 { font-size:18px; line-height:1.55; margin-bottom:8px; }
  .sc-article-card p { font-size:14px; line-height:1.7; margin-bottom:10px; }
  .science-page .sc-article-card .sc-summary { -webkit-line-clamp:2; margin-bottom:6px; }
  .sc-article-meta { font-size:12px; }
  .sc-article-actions { margin-top:10px; padding-top:8px; }
  .sc-article-actions > a { display:inline-flex; align-items:center; min-height:44px; }
  .sc-load-more { width:100%; }
  .sc-videos .video-grid { gap:20px; }
  .sc-quiz-banner { padding:22px 18px; }
}
