/* Ren revision: scoped to the Ren page, with no global style changes. */
.ren-hero { padding-bottom: 110px; }
.ren-hero-media { position:absolute; inset:0; }
.ren-hero-left { position:absolute; inset:0; width:100%; z-index:1; }
.ren-hero-left img { width:100%; height:100%; object-fit:cover; object-position:center; }
.ren-hero-shade { z-index:1; background:linear-gradient(90deg,rgba(0,20,13,.35),transparent 80%),linear-gradient(0deg,rgba(0,20,13,.8),rgba(0,20,13,.12) 70%); }
.ren-hero-content { width:min(740px,76vw); }
.ren-hero-content > p { line-height:1.8; }
.ren-hero-english { text-transform:none; letter-spacing:.04em; }
.ren-hero li small { display:block; margin-top:3px; font-size:11px; }
.ren-hero ul { margin-bottom:12px; }
.ren-hero-content > .ren-price-extra { margin:0 0 24px; font-size:12px; color:#fff; font-family:inherit; letter-spacing:.03em; text-transform:none; }
.ren-hero > .ren-price-disclaimer { position:absolute; bottom:25px; right:6vw; left:6vw; z-index:2; margin:0; text-align:right; font-size:12px; line-height:1.8; }
.ren-point-grid .ren-price-phase { margin:-12px 0 14px; }
.ren-point-grid .ren-price-extra, .ren-point-grid .ren-price-disclaimer { margin-top:12px; font-size:12px; }
.ren-memory-images img:first-child { width:70%; height:88%; object-position:center; }
.ren-memory-images img:last-child { width:74%; height:45%; object-position:center; }
.ren-comics { padding:0 0 110px; }
.ren-comic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.ren-image-button { display:block; width:100%; padding:0; border:0; background:#fff; cursor:zoom-in; color:inherit; }
.ren-image-button img { display:block; width:100%; height:auto; }
.ren-image-button:focus-visible, .ren-gallery-controls button:focus-visible, .ren-dialog-toolbar button:focus-visible { outline:3px solid #a67c22; outline-offset:4px; }
.ren-image-help { margin:18px 0; font-size:13px; line-height:1.8; color:#595959; text-align:center; }
.ren-gallery-grid { justify-content:flex-start; gap:24px; margin:0; padding:4px 4px 14px; width:100%; scroll-snap-type:x mandatory; scroll-padding-inline:4px; }
.ren-gallery-grid figure { width:calc((100% - 48px) / 3); min-width:0; scroll-snap-align:start; }
.ren-gallery-grid img { width:100%; height:auto; aspect-ratio:2000 / 1414; object-fit:contain; background:#fff; }
.ren-gallery-grid .ren-gallery-photo img { object-fit:cover; }
.ren-gallery-grid figcaption { font-size:13px; }
.ren-gallery-controls { display:flex; justify-content:center; align-items:center; gap:25px; margin:25px 0 0; }
.ren-gallery-controls button { width:48px; height:48px; border:1px solid #173f31; background:#fff; color:#173f31; font-size:24px; cursor:pointer; }
.ren-gallery-controls button:disabled { opacity:.3; cursor:default; }
.ren-gallery-count { min-width:66px; text-align:center; font-size:14px; font-variant-numeric:tabular-nums; }
.ren-image-dialog { width:calc(100% - 32px); max-width:1200px; max-height:92dvh; padding:0; border:0; background:#fff; }
.ren-image-dialog::backdrop { background:rgba(0,0,0,.82); }
.ren-dialog-toolbar { display:flex; justify-content:flex-end; gap:12px; padding:12px; background:#fff; }
.ren-dialog-toolbar button { padding:10px 16px; border:1px solid #173f31; background:#fff; color:#173f31; cursor:pointer; font-size:14px; }
.ren-dialog-scroll { max-height:calc(92dvh - 70px); overflow:auto; overscroll-behavior:contain; }
.ren-dialog-scroll img { display:block; width:auto; max-width:100%; max-height:calc(92dvh - 70px); height:auto; margin:auto; object-fit:contain; }
.ren-image-dialog.is-zoomed .ren-dialog-scroll img { width:1600px; max-width:none; max-height:none; }
.ren-form-grid, .ren-form-grid label { min-width:0; }
.ren-form-grid input, .ren-form-grid textarea { box-sizing:border-box; min-width:0; max-width:100%; width:100%; }
.ren-form-grid input[type="datetime-local"] { display:block; min-inline-size:0; inline-size:100%; max-inline-size:100%; -webkit-appearance:none; appearance:none; }
.ren-form-grid input[type="datetime-local"]::-webkit-date-and-time-value { text-align:left; min-width:0; }
@media (max-width:1000px) and (min-width:768px) {
 .ren-gallery-grid figure { width:calc((100% - 24px) / 2); }
}
@media (max-width:767px) {
 .ren-hero { min-height:850px; padding:150px 24px 90px; align-items:flex-end; }
 .ren-hero-left { inset:0; width:100%; clip-path:none; }
 .ren-hero-left img { object-position:center; }
 .ren-hero-shade { background:linear-gradient(0deg,rgba(0,20,13,.87),rgba(0,20,13,.36) 53%,rgba(0,20,13,.06) 80%); }
 .ren-hero-content { width:100%; }
 .ren-hero h1 { font-size:58px; }
 .ren-hero-content > p { font-size:11px; margin-bottom:12px; }
 .ren-hero h2 { font-size:22px; margin:18px 0 24px; }
 .ren-hero ul { gap:6px; }
 .ren-hero li small { display:inline; margin-left:8px; }
 .ren-hero > .ren-price-disclaimer { left:24px; right:24px; bottom:20px; font-size:11px; text-align:left; }
 .ren-hero-content > .ren-price-extra { font-size:11px; }
 .ren-comics { padding-bottom:80px; }
 .ren-comic-grid { grid-template-columns:1fr; gap:24px; }
 .ren-gallery-grid { gap:16px; margin:0; padding:4px 4px 14px; }
 .ren-gallery-grid figure { width:100%; }
 .ren-gallery-grid img { height:auto; }
 .ren-memory-images { min-height:450px; }
 .ren-memory-images img:first-child { height:82%; width:70%; }
 .ren-memory-images img:last-child { height:43%; width:78%; }
 .ren-form-grid input[type="datetime-local"] { font-size:16px; padding:14px 10px; }
 .ren-contact-options { grid-template-columns:minmax(0,1fr); }
 .ren-actions-compact .ren-action-button { min-width:0; }
 .ren-contact-options > div,.ren-phone,.ren-phone > span:last-child { min-width:0; }
 .ren-phone { gap:12px; }
 .ren-phone strong { font-size:clamp(23px,6.8vw,32px); }
 .ren-image-dialog { width:calc(100% - 16px); }
 .ren-dialog-toolbar { gap:8px; padding:8px; }
 .ren-dialog-toolbar button { padding:8px 12px; }
}
