*{box-sizing:border-box}body{margin:0;color:#292929;background:white;font:14px/1.9 Arial,'Helvetica Neue',sans-serif}.wrap{max-width:1000px;margin:auto}.mast{height:146px}.tag{font-size:11px;padding-top:12px}.logo{display:block;font-size:38px;font-weight:bold;line-height:1.2;margin-top:32px;text-decoration:none;color:#333}.nav{background:#111}.navinner{display:flex;flex-wrap:wrap}.nav a{display:block;padding:10px 21px;border-left:1px solid #555;color:white;text-decoration:none;font-size:13px}.nav a:last-child{border-right:1px solid #555}.nav a:hover,.nav a.active{background:#555}.hero{background:#000;min-height:395px;margin-top:20px;display:flex;align-items:center;justify-content:center}.hero img{width:100%;height:auto;max-height:450px;object-fit:contain}.hero-mark{color:white;text-align:center;writing-mode:vertical-rl;font-family:serif;font-size:28px;letter-spacing:.15em}.hero-mark small{font-size:12px}.homebottom{display:grid;grid-template-columns:55% 40%;gap:5%;margin:30px 0 48px;border-top:1px solid #ddd;padding-top:30px}.homephotos{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.homephotos img{width:100%;height:125px;object-fit:cover}.homebottom h3,aside h3{font-size:14px;border-bottom:3px solid #eee;margin:0 0 12px}.columns{display:grid;grid-template-columns:minmax(0,725px) 190px;gap:74px;min-height:650px;padding-top:30px;padding-bottom:55px}.columns h2{font-size:17px;margin:0 0 32px}.rule{border-top:1px solid #ddd;margin:18px 24px 26px}.bodytext{white-space:normal;line-height:2.3;overflow-wrap:anywhere}.galleryimage{border-top:1px solid #ddd;padding:20px 24px;text-align:center}.galleryimage img{max-width:100%;height:auto}.footer{background:#111;color:white;min-height:155px}.footnav{display:flex;justify-content:space-between;padding-top:38px}.footnav a{color:white;text-decoration:none;font-size:13px}aside p{padding-left:10px;font-size:13px}@media(max-width:1050px){.wrap{margin:0 20px}}@media(max-width:650px){.mast{height:118px}.logo{font-size:30px;margin-top:20px}.nav a{padding:8px 12px;font-size:12px}.hero{min-height:220px}.homebottom,.columns{display:block}.homebottom section{margin-top:25px}.columns aside{margin-top:40px}.footnav{flex-wrap:wrap;gap:16px}.footer{min-height:130px}.homephotos{gap:12px}.homephotos img{height:auto;aspect-ratio:1.75;object-fit:cover}}
/* Adaptive layout: desktop / tablet / phone */
img{max-width:100%}
@media (min-width:651px) and (max-width:900px){
 .columns{grid-template-columns:minmax(0,1fr) 170px;gap:28px}
 .navinner{justify-content:space-between}
 .nav a{padding:10px 15px}
 .homebottom{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:650px){
 body{font-size:15px;line-height:1.85}
 .wrap{margin:0 16px}
 .mast{height:106px}
 .tag{padding-top:9px;font-size:10px}
 .logo{font-size:29px;margin-top:14px}
 .navinner{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
 .nav a{padding:13px 2px;font-size:clamp(9px,2.6vw,12px);text-align:center;border-left:0;border-right:1px solid #555;line-height:1.4}
 .nav a:first-child{border-left:1px solid #555}
 .hero{margin-top:16px;min-height:180px}
 .hero-mark{font-size:22px}
 .homebottom{margin-top:24px;padding-top:20px}
 .homephotos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .homephotos img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}
 .columns{min-height:0;padding-top:24px;padding-bottom:40px}
 .columns h2{font-size:18px;margin-bottom:20px}
 .bodytext{font-size:15px;line-height:2;overflow-wrap:anywhere}
 .galleryimage{padding:18px 0}
 .rule{margin-left:0;margin-right:0}
 .columns aside{margin-top:35px;border-top:1px solid #ddd;padding-top:20px}
 .footer{min-height:0;padding-bottom:25px}
 .footnav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px;padding-top:24px}
 .footnav a{font-size:12px;min-height:32px}
}
@media(max-width:360px){.wrap{margin:0 12px}.nav a{font-size:9px}.logo{font-size:26px}}

/* v3: full-width content, optional text after photos, centered adjustable images */
.columns-single{display:block;max-width:1000px;min-height:450px}
.columns-single article{width:100%;max-width:725px;margin:0 auto}
.galleryimage{display:flex;justify-content:center;align-items:flex-start;width:100%;}
.galleryimage img{display:block;width:var(--image-width,100%);max-width:100%;height:auto;object-fit:contain;margin:0 auto}
.heroimage{background:#000;display:flex;justify-content:center;align-items:center;margin-top:20px;min-height:250px}
.heroimage img{display:block;width:var(--image-width,100%);max-width:100%;height:auto;max-height:450px;object-fit:contain;margin:0 auto}
.home-intro{margin-top:26px}
.homephotos .galleryimage{padding:0;border:0}
.homephotos .galleryimage img{height:auto;max-height:none;object-fit:contain}
.body-after{margin-top:25px}
@media(max-width:650px){.columns-single article{max-width:100%}.heroimage{min-height:160px;margin-top:16px}.homephotos .galleryimage{padding:0}}

/* ABOUT only: retain heading rule, remove photo-top rules */
.columns-about .galleryimage{border-top:0;}

/* Mobile-only back-to-top button */
.mobile-back-to-top{display:none}
@media(max-width:650px){
.mobile-back-to-top{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom, 0px));z-index:1000;display:flex;align-items:center;justify-content:center;min-width:58px;min-height:48px;padding:8px 12px;background:#222;color:#fff;text-decoration:none;font-size:12px;font-weight:bold;letter-spacing:.04em;border:1px solid #777;border-radius:7px;box-shadow:0 2px 10px #0004;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
.mobile-back-to-top.is-visible{opacity:.92;visibility:visible;pointer-events:auto;transform:translateY(0)}
.mobile-back-to-top:focus-visible{outline:3px solid #777;outline-offset:3px}
}
@media(prefers-reduced-motion:reduce){.mobile-back-to-top{transition:none}}

/* HOME mobile: full-width, natural-height images in one column */
@media(max-width:650px){
 .home-page .homebottom{display:block}
 .home-page .homephotos{display:block}
 .home-page .homephotos .galleryimage{width:100%;margin-bottom:20px}
 .home-page .heroimage img,.home-page .homephotos .galleryimage img{width:100% !important;max-width:100% !important;height:auto !important;max-height:none !important;aspect-ratio:auto !important;object-fit:contain !important}
 .home-page .homebottom section{margin-top:24px}
}

/* HOME only: full-width natural-size photos on phones (cache refresh fix) */
@media screen and (max-width:650px) {
  .home-page .homephotos {display:flex !important;flex-direction:column !important;gap:20px !important;}
  .home-page .homephotos .galleryimage {display:block !important;width:100% !important;padding:0 !important;}
  .home-page .homephotos .galleryimage img,
  .home-page .heroimage img {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
  }
  .home-page .heroimage {width:100% !important;min-height:0 !important;}
}
