/* V3.0: preserve the existing design; improve phone controls and reading. */
html { scroll-padding-bottom:100px; }
body { -webkit-text-size-adjust:100%; }
body .ssb-quick-actions { display:none; }
body .language button, html #ssb-preview .language button { min-width:44px; min-height:44px; }
body :is(a,button,input,select,textarea):focus-visible { outline:3px solid #a97c2b; outline-offset:4px; }
body .ssb-quick-actions a:focus-visible { outline-color:#f0d8a7; outline-offset:-4px; }
@media(max-width:640px) {
  body { padding-bottom:calc(82px + env(safe-area-inset-bottom,0px)); }
  html #ssb-preview .top { padding-left:20px; padding-right:20px; }
  html #ssb-preview .brand { white-space:normal; min-width:0; font-size:clamp(20px,5.6vw,25px); }
  html #ssb-preview .brand-name { min-width:0; }
  html #ssb-preview .header-actions { gap:8px; flex-wrap:wrap; }
  html #ssb-preview .language { margin-left:0; }
  html #ssb-preview nav { white-space:normal; flex-wrap:wrap; gap:2px 12px; overflow:visible; }
  html #ssb-preview nav a { min-height:44px; padding:8px 3px; font-size:13px; }
  html #ssb-preview :is(.top-action,.action) { min-height:48px; }
  html #ssb-preview .hero-content, html #ssb-preview .gathering-card { min-width:0; }
  html #ssb-preview .hero h1 { font-size:clamp(39px,10.8vw,60px); }
  html #ssb-preview :is(.hero p,.intro p,.story-copy,.visit-copy p) { font-size:16px; line-height:1.65; }
  html #ssb-preview .time div { max-width:none; overflow-wrap:anywhere; }
  body :is(.top,.header-right,.header-actions,.contact-actions,.action-row) { min-width:0; }
  body :is(.brand,.back,.contact-actions .email,.resource,.help) { overflow-wrap:anywhere; }
  body :is(.button,.action,.back,.resource,.help,.contact-actions .email,.submit) { min-height:48px; }
  body :is(.back,.resource,.help,.contact-actions .email) { display:inline-flex; align-items:center; }
  body :is(input,select,textarea) { font-size:16px; }
  body .ssb-quick-actions { position:fixed; inset:auto 0 0; z-index:80; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px)); background:#193e2d; border-top:1px solid #789080; box-shadow:0 -4px 18px #173c2c16; }
  body .ssb-quick-actions a { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:56px; min-width:0; border-radius:5px; color:#fffdf8; text-decoration:none; font:700 12px/1.3 Arial,Helvetica,sans-serif; }
  body .ssb-quick-actions a:hover { background:#2d5540; }
  body .ssb-quick-actions svg { width:18px; height:18px; stroke:#e6cb92; fill:none; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
  body .ministry-nav a { min-height:48px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
