/* Final phone layout overrides, shared by Safari and Chromium. */
@media(max-width:700px){
  .wrap{width:calc(100% - 40px)}
  .nav{height:74px;gap:16px}.nav .small{min-height:40px}
  .hero{padding:20px 0 30px;gap:24px}
  .hero-copy{min-width:0}
  .hero h1{font-size:clamp(31px,8.6vw,39px);line-height:1.13;letter-spacing:-.035em;max-width:390px;text-wrap:balance}
  .hero h1 br{display:inline}.hero h1 br:after{content:' '}
  .hero .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:15px}
  .hero .lede{font-size:17px;line-height:1.5;margin-top:20px;text-wrap:pretty}
  .hero-explainer{font-size:15px;line-height:1.6;margin-top:10px}
  .hero .actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}
  .hero .actions .button{font-size:14px;min-height:48px;padding:12px 17px}
  .hero .actions .text-link{font-size:12px}
  .hero .micro{font-size:10px;gap:5px 12px;margin-top:16px}
  .hero-photo{height:auto;aspect-ratio:1.1;object-fit:cover;object-position:50% 60%;border-radius:12px 40px 12px 12px}
  .hero-art figcaption{padding-top:10px}
  .mobile-cta{left:50%;right:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:max-content;max-width:calc(100% - 40px);min-height:48px;padding:12px 24px;font-size:14px;border-radius:999px;box-shadow:0 4px 20px #243f3433}
  .mobile-cta:hover{transform:translateX(-50%)}
  .section{padding-top:52px;padding-bottom:52px}.section-head{margin-bottom:30px}
  h2{font-size:30px;line-height:1.17}.section-head>p:last-child{font-size:14px;line-height:1.6}
  .proof{padding:23px 0}.proof div span{font-size:10px;line-height:1.4;display:block}
  .offer-grid{padding-left:30px}.offer-grid article{grid-template-columns:96px minmax(0,1fr);gap:0 13px}.offer-grid .photo,.offer-grid .workshop{width:96px;height:112px}.offer-grid p{font-size:13px;line-height:1.5}.offer-grid h3{font-size:16px}.offer-grid:before{left:10px}.offer-grid .mobile-flow-line{left:1px}.qr-flow:after{left:10px}
  .menu-design{width:260px}.gallery-group{gap:16px;padding-right:16px}.gallery-heading p:not(.eyebrow){line-height:1.6}.gallery-controls{align-items:center}.gallery-controls button{min-height:44px}
  .testimonial blockquote{font-size:19px;line-height:1.65;margin:23px 0}.faq-list summary{padding-top:19px;padding-bottom:19px;font-size:15px;line-height:1.5}
  footer{padding-bottom:110px}.closing{padding:40px 22px 50px}.closing h2{font-size:32px}
}
/* Touch Safari retains focus after taps. Only keyboard focus should pause motion. */
@keyframes gallery-loop{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--loop-offset,-1029px),0,0)}}
.gallery-track:focus-within{animation-play-state:running}
.gallery-track.keyboard-focus,.gallery-track.paused{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.gallery-track{animation:none!important}.gallery-window{overflow-x:auto;touch-action:pan-x pan-y}}
