@media(min-width:1400px){.intro{padding-top:60px}.experience-grid{gap:34px}.art-wrap{height:480px}}@media(max-width:760px){.site-header{padding:20px 22px}.header-note{display:none}.map-link{font-size:9px}.brand{font-size:11px;gap:9px;letter-spacing:1px}.brand img{width:37px;height:37px}.brand small{font-size:7px}main{padding:0 18px;max-width:540px}.intro{padding:36px 0 27px}h1{font-size:36px;letter-spacing:-1px}.intro .eyebrow{font-size:7px;letter-spacing:1.4px}.intro p{font-size:10px}.experience-grid{grid-template-columns:1fr;gap:18px}.shop-card{display:grid;grid-template-columns:115px 1fr;border-radius:14px}.art-wrap{height:155px}.image-tag,.art-caption{display:none}.shop-info{padding:18px 15px}.shop-info .eyebrow{font-size:6px;letter-spacing:1px}.shop-info h2{font-size:14px;margin:8px 0}.shop-info p{font-size:9px;margin:5px 0}.shop-info>a{right:10px;top:11px;width:24px;height:24px}.shop-info .data-note{font-size:7px!important}.review-card{padding:25px 23px}.review-card h2{font-size:25px}.star{font-size:43px}.stars{gap:13px}.suggestions button{font-size:9px}.little-note{padding:25px 0;gap:19px}footer{margin:0 20px;padding:20px 0;flex-wrap:wrap;gap:15px;font-size:8px}footer button{font-size:8px}dialog{padding:30px 24px}#review-modal{margin:auto 0 0;width:100%;max-width:none;border-radius:24px 24px 0 0;padding-bottom:max(25px,env(safe-area-inset-bottom))}#privacy-modal{margin:auto}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:760px){.photo-gallery{padding:22px;margin-top:22px}.gallery-heading{align-items:flex-start;flex-direction:column;gap:3px}.gallery-heading h2{font-size:25px}.photo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-list figcaption{font-size:9px}}
@media(max-width:760px){.photo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-list figure:first-child{grid-column:1/-1}.photo-list figure:first-child img{aspect-ratio:16/10;object-position:center 40%}}
/* Mobile refinement: readable copy, comfortable touch targets and balanced cards. */
@media(max-width:760px){
  body{background:linear-gradient(180deg,#eef2e7 0,#f8f6ef 360px)}
  .site-header{padding:16px 18px;gap:12px;background:#f8f6efcc}
  .map-link{font-size:10px;min-height:44px;display:flex;align-items:center;text-align:right}
  main{padding:0 16px}
  .intro{padding:32px 4px 25px}
  h1{font-size:clamp(30px,8.8vw,40px);line-height:1.3;margin:17px 0}
  .intro p{font-size:12px;line-height:1.9}
  .intro .eyebrow{font-size:8px;letter-spacing:1px}
  .shop-card{grid-template-columns:108px minmax(0,1fr);box-shadow:0 8px 24px #30473708}
  .shop-info{padding:18px 14px}
  .shop-info h2{font-size:14px;padding-right:12px;line-height:1.6}
  .shop-info p{font-size:11px}
  .shop-info .data-note{font-size:9px!important}
  .shop-info .eyebrow{font-size:7px;letter-spacing:.6px}
  .shop-info>a{width:30px;height:30px;right:8px;top:5px}
  .art-wrap{height:100%;min-height:170px}
  .review-card{padding:25px 20px;border-radius:22px;box-shadow:0 12px 34px #30473708}
  .card-top .eyebrow{font-size:8px;letter-spacing:.5px;line-height:1.8}
  .review-card h2{font-size:27px}
  .muted{font-size:12px}
  .rating-field{margin:26px 0 24px}
  .rating-field legend,.rating-field p{font-size:12px;line-height:1.7}
  .stars{gap:6px;margin:16px 0 10px}
  .star{width:48px;min-height:52px;font-size:43px}
  .text-label{font-size:12px;align-items:center}
  .text-label span{font-size:10px}
  textarea{font-size:16px;min-height:145px;padding:15px;line-height:1.7;border-radius:13px}
  .suggestion-label{font-size:11px;line-height:1.8}
  .suggestions{gap:8px}
  .suggestions button{font-size:11px;min-height:40px;padding:9px 12px}
  .draft-row{font-size:10px;line-height:1.7;margin:12px 0;gap:6px}
  .draft-row button{font-size:10px;min-height:44px;flex-shrink:0}
  .primary{min-height:55px;font-size:12px;border-radius:13px;gap:10px}
  .honest-note{font-size:11px;line-height:1.9;margin-top:14px}
  .auth-area{font-size:11px;line-height:1.8}
  .photo-gallery{padding:20px;border-radius:22px}
  .gallery-status{font-size:12px}
  .gallery-heading>a{font-size:11px;min-height:44px;display:flex;align-items:center}
  .photo-list figcaption{font-size:10px;line-height:1.8}
  .little-note p{font-size:11px}
  footer{font-size:10px;padding-bottom:max(22px,env(safe-area-inset-bottom));align-items:center}
  footer button{font-size:10px;min-height:44px;text-align:left;padding:0}
  #toast{bottom:max(20px,env(safe-area-inset-bottom));width:max-content;max-width:calc(100% - 32px);line-height:1.8}
}
@media(max-width:360px){.review-card{padding:22px 16px}.brand{font-size:10px}.map-link{font-size:9px}.stars{gap:2px}.star{width:44px}.primary{font-size:11px}.suggestion-label span{display:block;margin-left:0}}
@media(max-width:760px){#apology-modal{margin:auto 0 0;width:100%;max-width:none;border-radius:24px 24px 0 0;padding:32px 24px max(26px,env(safe-area-inset-bottom))}}
/* Final phone layout polish */
@media(max-width:760px){
  .site-header{position:relative;padding:12px 16px;border-bottom-color:#e5e9dc}
  .brand{gap:8px;letter-spacing:1.3px}.brand img{width:40px;height:40px}
  .map-link{border:1px solid #dfe5d8;border-radius:99px;padding:0 12px;background:#fffefb;color:#426653}
  .intro{padding-top:27px;padding-bottom:21px}
  .intro h1{margin:14px 0;font-size:clamp(31px,9vw,38px)}
  .intro p{max-width:330px;margin:0 auto}
  .experience-grid{gap:16px}
  .shop-card{grid-template-columns:112px minmax(0,1fr);border-radius:18px;background:#fffefb}
  .art-wrap{min-height:156px}
  .shop-info{padding:16px 13px;display:flex;align-items:center}
  .shop-info>div:first-child{padding-right:3px}
  .shop-info h2{font-size:14px;line-height:1.45;margin:7px 0}
  .shop-info p{font-size:10px;line-height:1.6}
  .shop-info>a{top:9px;right:9px;width:28px;height:28px}
  .review-card{padding:24px 19px;border-radius:24px}
  .progress{margin:14px 0 21px}
  .review-card h2{font-size:26px;line-height:1.4}
  .rating-field{margin:24px 0 20px}
  .stars{justify-content:space-between;gap:4px;padding:0 5px}
  .star{flex:1;max-width:55px;border-radius:14px;background:#faf9f4}
  .star.selected{background:#f7f1e3}
  .suggestions button{border-radius:999px;background:#f1f4eb}
  .draft-row{color:#788273}
  .primary{box-shadow:0 7px 16px #42665324}
  .photo-gallery{margin-top:18px;padding:19px 16px;border-radius:20px}
  .photo-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-16px;padding:0 16px 8px 0;scrollbar-width:thin}
  .photo-list figure,.photo-list figure:first-child{flex:0 0 78%;grid-column:auto;scroll-snap-align:start;margin-top:5px}
  .photo-list img,.photo-list figure:first-child img{aspect-ratio:4/3;border-radius:15px}
  .photo-list figcaption{font-size:10px}
  .gallery-heading{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}
  .gallery-heading h2{font-size:24px}
  .gallery-source{font-size:9px;white-space:nowrap}
  .little-note{padding:22px 0 25px}
  footer{row-gap:7px}
}
