/* Mobile layout: comfortable touch targets and compact campaign opening. */
@media(max-width:850px){
  header{min-height:0;gap:14px;padding:16px 20px 10px}
  header .brand{gap:9px;font-size:25px;min-width:0}
  header .brand small{font-size:9px;letter-spacing:.5px}
  header>.button.small{font-size:14px;min-height:44px;padding:10px 14px}
  nav{gap:0;justify-content:space-between;border-top:1px solid #dbe4d2;margin-top:3px;padding-top:5px;flex-wrap:wrap}
  nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;font-size:14px;flex:1;white-space:nowrap}
  .hero{min-height:0}
  .hero-copy{padding:30px 24px 26px}
  .hero-copy .eyebrow{gap:8px;flex-wrap:wrap;font-size:11px;letter-spacing:1px;line-height:1.5}
  .hero-copy .eyebrow i{width:20px}
  h1{font-size:clamp(2.5rem,10.6vw,3.5rem);line-height:1.04;letter-spacing:-.6px;margin:22px 0}
  .commitment{font-size:clamp(1.95rem,8vw,2.7rem);line-height:1.08;letter-spacing:-.5px}
  .intro{font-size:16px;line-height:1.5;margin:18px 0}
  .actions{gap:12px}
  .actions .button{width:100%;font-size:16px;min-height:52px;padding:15px 12px;text-align:center}
  .actions .text-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:0;font-size:15px}
  .hero-art{aspect-ratio:1;max-height:none}
  .hero-art>img{object-fit:contain;object-position:center}
  .anniversary{top:20px;right:6%;gap:8px}
  .anniversary>b{font-size:60px;letter-spacing:-3px}
  .anniversary>span{font-size:25px}
  .anniversary small{font-size:9px;letter-spacing:1px}
  .hero-art>p{right:6%;bottom:10px;font-size:10px;letter-spacing:1px;line-height:1.4}
  .ribbon{gap:10px;padding:22px 20px;line-height:1.6}
  .ribbon strong{font-size:14px;letter-spacing:1.5px}
  .wrap{padding:48px 24px}
  h2{font-size:clamp(2rem,9vw,2.8rem);line-height:1.1;letter-spacing:-.5px;margin:18px 0}
  .large{font-size:23px;line-height:1.4}
  p{font-size:16px;line-height:1.6}
  .story,.store,.campaign,.quote-grid{gap:26px}
  .timeline{gap:22px;margin-top:25px}
  .machine-list{margin-top:24px}
  .machine-list a{font-size:26px;line-height:1.2;padding:20px 0;gap:8px 12px;min-width:0}
  .machine-list small{font-size:14px}
  .benefits{margin-top:32px;gap:0}
  .benefits>div{padding:20px 0;border-bottom:1px solid #c6d4b7}
  .benefits p{margin-top:7px;font-size:16px}
  .campaign-art{max-width:360px}
  .store-photo{aspect-ratio:1.65}
  .store-photo img{width:160%;left:-30%;top:-272%}
  .contacts{gap:12px;margin-top:26px}
  .contacts a{min-height:60px;align-items:center;padding:14px 0;flex-wrap:wrap;gap:8px}
  .contacts small{font-size:13px}
  .contacts b{font-size:20px;white-space:nowrap}
  form{padding:22px 18px;min-width:0}
  form label{font-size:16px}
  input,select,textarea{min-height:48px;max-width:100%;font-size:16px}
  form button,#prepared-message{min-height:54px;white-space:normal;line-height:1.4;padding:14px;text-align:center}
  .form-note{font-size:14px;line-height:1.5}
  .faq summary{font-size:18px;min-height:44px;padding-right:8px}
  .thanks{padding:48px 24px 60px}
  .thanks h2{font-size:clamp(2rem,9vw,2.8rem);line-height:1.1}
  .thanks p{font-size:17px}
  .thanks .button{width:100%;max-width:360px;font-size:16px;min-height:52px;padding:15px 12px}
  footer{padding:28px 24px 105px;gap:18px;align-items:start}
  footer p{width:100%;margin:0;font-size:14px}
  footer>a:last-child{font-size:14px;min-height:44px;display:flex;align-items:center}
  .floating-contact{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));padding:13px 17px;min-height:48px;font-size:14px}
}
@media(max-width:380px){
  header{padding:14px 16px 8px;gap:10px}
  header>.button.small{font-size:13px;padding:10px}
  header .brand{font-size:22px}
  header .brand strong{font-size:20px}
  header .brand small{font-size:8px}
  header .seal{height:42px;width:42px;font-size:16px;flex-shrink:0}
  nav{display:grid;grid-template-columns:1fr 1fr;width:100%}
  nav a{font-size:14px}
  .hero-copy,.wrap{padding-left:20px;padding-right:20px}
}
@media(max-width:600px){header>.button.small{display:none}header .brand{min-height:50px}nav{margin-top:0}}
