/* てとて: 狭い画面・長文を含むレスポンシブ保護 */
:root{--page-max:1160px}
html{overflow-x:clip}
*,*::before,*::after{min-width:0}
img,video,iframe,canvas{max-width:100%}
img,video{height:auto}
p,li,dd,h1,h2,h3,a{overflow-wrap:anywhere}
.event-card,.newsletter-card,.past-event-card{max-width:100%;min-width:0}
.event-card-photo{display:block}
.tetote-empty{padding:2rem 1.5rem;border:1px solid rgba(39,42,36,.18);background:#fff8;line-height:1.8}
.tetote-detail-wrap{max-width:850px;margin:0 auto;padding:clamp(24px,5vw,72px) 20px}
.tetote-detail-wrap h1{font-size:clamp(1.5rem,3.7vw,2.8rem);line-height:1.45}
.tetote-detail-wrap .detail-image{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.tetote-detail-wrap .detail-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:2rem 0}
@media(max-width:700px){
  .event-cards,.past-event-grid,.newsletter-grid{grid-template-columns:minmax(0,1fr)!important}
  .events-head,.newsletter-teaser{max-width:100%}
  .event-card{width:100%;}
  .event-meta>div{display:flex;flex-wrap:wrap;gap:.5rem}
  .archive-container{width:min(100%,100% - 24px)!important}
  .newsletter-card{min-width:0}
  .newsletter-featured-inner{grid-template-columns:1fr!important}
  .site-header,.mobile-nav{max-width:100vw}
}
@media(max-width:380px){body{font-size:15px;letter-spacing:.015em}.event-card-body{padding:18px}.newsletter-grid{gap:15px}}
