.v5a-public-page{background:#e5dccd;color:#393a31}
.v5a-public-page>header{max-width:1480px;margin-inline:auto;border-bottom:1px solid #cfc5b5}
.v5a-public-page>header nav a[aria-current=page]{border-bottom-color:currentColor}
.v5a-public-page>main{max-width:1320px;min-height:62vh;margin:auto;padding:30px 4% 90px}
.v5a-public-page h1,.v5a-public-page h2{font-family:Georgia,serif;font-weight:400}
.workshop-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(36px,6vw,82px);align-items:center;padding:52px 0 72px}
.workshop-hero h1,.blog-intro h1{font-size:clamp(46px,5.6vw,78px);letter-spacing:-2.6px;line-height:1.04;margin:14px 0 28px}
.workshop-hero p{max-width:48ch;font-size:16px;line-height:1.75}
.workshop-hero .button{margin-top:18px}
.workshop-hero figure{margin:0}
.workshop-hero img{display:block;width:100%;height:clamp(360px,38vw,520px);object-fit:cover;object-position:center;border-radius:18px;filter:saturate(.78) contrast(.96)}
.workshop-invitation{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(34px,7vw,100px);align-items:start;padding:clamp(40px,6vw,74px);scroll-margin-top:24px;background:#efe4d3;border-radius:20px}
.workshop-invitation h2,.joining-band h2{font-size:clamp(34px,4vw,52px);line-height:1.12;margin:12px 0 0}
.workshop-invitation>div:last-child p{margin-top:0;font-size:16px;line-height:1.75}
.workshop-invitation .button{margin-top:18px}
.joining-band{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,80px);margin-top:28px;padding:clamp(38px,6vw,72px);border-radius:20px;background:#384236;color:#faf5eb}
.joining-band .eyebrow{color:#d6bda0}
.joining-band ol{margin:0;padding-left:22px}
.joining-band li{padding:0 0 26px 10px}
.joining-band li:last-child{padding-bottom:0}
.joining-band b{display:block;margin-bottom:6px;font:22px/1.25 Georgia,serif}
.joining-band span{display:block;max-width:52ch;color:#dedfd3;font-size:14px;line-height:1.65}
.workshop-faq{max-width:820px;margin:clamp(64px,9vw,112px) auto 0}
.workshop-faq h2{font-size:clamp(34px,4vw,48px);margin:12px 0 24px}
.workshop-faq details{padding:21px 0;border-bottom:1px solid #c9bdab}
.workshop-faq summary{min-height:28px;cursor:pointer;font-size:17px}
.workshop-faq details p{font-size:14px;line-height:1.75}
.blog-intro{padding:70px 0 54px;max-width:850px}
.blog-intro>p:last-child{font-size:17px;line-height:1.7}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.article-card{display:flex;min-height:240px;flex-direction:column;align-items:flex-start;padding:30px;border:1px solid #cfc3b1;border-radius:18px;background:#f6f0e6}
.article-card:nth-child(3n+2){background:#e9dfcf}
.article-card:nth-child(3n){background:#d8ded2}
.article-card h2{margin:0 0 36px;font-size:clamp(23px,2.2vw,31px);line-height:1.28}
.article-card a{margin-top:auto;font-size:13px;font-weight:700;text-underline-offset:5px}
.public-footer{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;max-width:1320px;margin:auto;padding:42px 4% 52px;border-top:1px solid #c9bdab}
.public-footer img{display:block;width:185px}
.public-footer p,.public-footer a{font-size:13px;line-height:1.75}
.public-footer p{margin:12px 0}
.public-footer nav{display:flex;position:static;flex-direction:column;gap:8px;margin:0;padding:0;border:0;background:transparent}
.public-footer nav a{padding:0}
.v5a-public-page .button{border-radius:30px;background:#704b40;border-color:#704b40}
.v5a-public-page .button:hover{background:#5e3e35}
.v5a-public-page summary:focus-visible,.v5a-public-page a:focus-visible,.v5a-public-page button:focus-visible{outline:2px solid #795344;outline-offset:4px}
@media(max-width:900px){
  .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workshop-hero{gap:34px}
  .public-footer{grid-template-columns:1fr 1fr}
  .public-footer>div:last-child{grid-column:1/-1}
}
@media(max-width:700px){
  .v5a-public-page>main{padding:20px 5% 66px}
  .v5a-public-page>header>a[href^='tel:']{display:inline-flex;font-size:12px;padding:8px 10px;white-space:nowrap}
  .workshop-hero{grid-template-columns:1fr;padding:34px 0 48px}
  .workshop-hero h1,.blog-intro h1{font-size:clamp(42px,12vw,58px);letter-spacing:-1.8px}
  .workshop-hero img{height:300px}
  .workshop-invitation,.joining-band{grid-template-columns:1fr;gap:24px;padding:30px 24px}
  .article-grid{grid-template-columns:1fr}
  .article-card{min-height:210px}
  .blog-intro{padding:48px 0 36px}
  .public-footer{grid-template-columns:1fr;padding-inline:5%}
  .public-footer>div:last-child{grid-column:auto}
}
@media(max-width:420px){
  .v5a-public-page>header{gap:8px}
  .v5a-public-page>header .brand-logo{width:125px}
  .v5a-public-page>header>a[href^='tel:']{font-size:11px;padding-inline:8px}
}
