/* Gallery-only refresh. Approved Home and Spaces styles are unchanged. */
html:has(.gallery-v18) { scroll-behavior:auto; }
.gallery-v18 .gallery-hero { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:38px; min-height:0; padding:50px 0 65px; }
.gallery-v18 .gallery-hero h1 { font-size:clamp(40px,4.2vw,62px); }
.gallery-v18 .gallery-hero__visual:before { display:none; }
.gallery-v18 .gallery-hero__visual img { width:auto; height:580px; max-width:100%; object-fit:contain; margin:0 auto; filter:none; border-radius:24px; }
.gallery-v18 .gallery-nav { display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:28px; max-width:560px; padding-top:14px; border-top:1px solid #ded9ec; }
.gallery-v18 .gallery-nav:before,.gallery-v18 .gallery-nav:after { display:none; }
.gallery-v18 .gallery-nav a { grid-column:auto; padding:8px 0; font-size:13px; line-height:1.5; min-height:36px; }
.gallery-v18 .g18-row { width:min(1200px,calc(100% - 80px)); margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:65px; padding:62px 0; scroll-margin-top:28px; }
.gallery-v18 .g18-row h2 { font-size:clamp(34px,3.35vw,49px); font-weight:590; line-height:1.1; letter-spacing:-.048em; margin:0; }
.gallery-v18 .g18-copy { min-width:0; }
.gallery-v18 .g18-copy > p:not(.section-kicker) { color:var(--ink-soft,#656577); font-size:16px; line-height:1.7; margin:22px 0 0; }
.gallery-v18 .g18-visual { margin:0; min-width:0; }
.gallery-v18 .g18-visual img { display:block; width:100%; height:auto; border-radius:24px; }
.gallery-v18 .g18-features { display:grid; gap:19px; margin-top:28px; }
.gallery-v18 .g18-features article { border-left:2px solid #dad3ff; padding-left:17px; }
.gallery-v18 .g18-features h3 { font-size:16px; line-height:1.4; font-weight:650; margin:0 0 5px; letter-spacing:-.01em; }
.gallery-v18 .g18-features p { font-size:14px; line-height:1.65; color:var(--ink-soft,#656577); margin:0; }
.gallery-v18 .g18-points { margin:25px 0 0; padding:0; list-style:none; display:grid; gap:14px; }
.gallery-v18 .g18-points li { padding-left:19px; position:relative; color:#565261; font-size:14px; line-height:1.65; }
.gallery-v18 .g18-points li:before { content:""; position:absolute; left:0; top:9px; width:5px; height:5px; border-radius:50%; background:#7254ed; }
.gallery-v18 .g18-row--share { width:min(1290px,calc(100% - 48px)); margin:30px auto; padding:54px; gap:46px; border-radius:32px; color:white; background:radial-gradient(circle at 95% 0,#5056b8a8,transparent 55%),linear-gradient(135deg,#19132f,#4223aa); }
.gallery-v18 .g18-row--share .section-kicker { color:#b7c7ff; }
.gallery-v18 .g18-row--share .g18-copy>p:not(.section-kicker),.gallery-v18 .g18-row--share .g18-features p { color:#ded8f0; }
.gallery-v18 .g18-row--share .g18-features article { border-color:#7c68b4; }
.gallery-v18 .g18-row--share .g18-visual img { border-radius:20px; }
.gallery-v18 .site-header { gap:18px; }
.gallery-v18 .my-locale-switcher { flex-shrink:0; margin-left:0; }
.gallery-v18 a:focus-visible,.gallery-v18 summary:focus-visible { outline:3px solid #6651ff; outline-offset:5px; }
@media(max-width:1024px) {
 .gallery-v18 .gallery-hero { display:grid; grid-template-columns:1fr; width:calc(100% - 48px); gap:28px; padding:36px 0 44px; }
 .gallery-v18 .gallery-hero__copy { max-width:720px; width:100%; }
 .gallery-v18 .gallery-hero__visual { max-width:680px; width:100%; margin:0 auto; }
 .gallery-v18 .g18-row { width:calc(100% - 48px); gap:30px; padding:46px 0; }
 .gallery-v18 .g18-row--share { padding:34px; gap:30px; }
 .gallery-v18 .g18-row h2 { font-size:36px; }
}
@media(max-width:720px) {
 .gallery-v18 .gallery-hero { width:calc(100% - 40px); padding:32px 0 35px; }
 .gallery-v18 .gallery-hero h1 { font-size:clamp(36px,9.5vw,48px); }
 .gallery-v18 .gallery-hero__visual img { width:100%; height:auto; max-height:580px; }
 .gallery-v18 .gallery-hero__copy>p:not(.eyebrow) { font-size:15px; }
 .gallery-v18 .gallery-nav { gap:3px 20px; margin-top:24px; }
 .gallery-v18 .g18-row { width:calc(100% - 40px); grid-template-columns:1fr; gap:28px; padding:38px 0; }
 .gallery-v18 .g18-row h2 { font-size:34px; }
 .gallery-v18 .g18-row .g18-copy { order:0; }
 .gallery-v18 .g18-row .g18-visual { order:1; }
 .gallery-v18 .g18-copy>p:not(.section-kicker) { font-size:15px; margin-top:18px; }
 .gallery-v18 .g18-features { gap:18px; margin-top:24px; }
 .gallery-v18 .g18-row--share { width:calc(100% - 24px); margin:18px auto; padding:32px 22px; border-radius:26px; }
 .gallery-v18 .g18-visual img,.gallery-v18 .gallery-hero__visual img { border-radius:18px; }
 .gallery-v18 .site-header { gap:10px; }
}
