.wc-gallery { display:block; padding-block:var(--gallery-padding-top) var(--gallery-padding-bottom); --gallery-rule:rgba(var(--color-foreground),.2); }
.wc-gallery__eyebrow { margin-bottom:35px; overflow-wrap:anywhere; }
.wc-gallery__eyebrow::before { content:""; display:inline-block; width:7px; height:7px; margin-right:12px; border-radius:50%; background:var(--gallery-accent); }
.wc-gallery__heading-row { display:grid; grid-template-columns:1.55fr 1fr; gap:60px; align-items:end; margin-bottom:52px; }
.woodcraft-theme .wc-gallery__heading { margin:0 0 0 -.055em; font-size:var(--gallery-heading-size,64px); font-weight:500; line-height:.98; letter-spacing:-.07em; }
.wc-gallery__heading > span { display:block; }
.wc-gallery__heading > span:last-child { color:var(--gallery-accent); }
.wc-gallery__intro { max-width:345px; justify-self:end; padding-bottom:5px; font-size:14px; line-height:1.85; }
.wc-gallery__index { display:flex; justify-content:space-between; align-items:center; padding-block:18px; border-top:1px solid var(--gallery-rule); font-size:11px; }
.wc-gallery__index > span:first-child { min-width:0; overflow-wrap:anywhere; }
.wc-gallery__symbol { display:flex; align-items:center; gap:7px; }
.wc-gallery__symbol i { width:13px; height:13px; background:currentColor; }
.wc-gallery__symbol i:first-child { border-radius:50%; }
.wc-gallery__symbol i:last-child { background:transparent; border:1px solid currentColor; border-radius:50%; }
.wc-gallery__grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:var(--gallery-gap); row-gap:var(--gallery-row-gap,64px); align-items:start; }
.wc-gallery__item,.wc-gallery__note { grid-column:span var(--gallery-span,6); margin:var(--gallery-offset,0px) 0 0; min-width:0; }
.wc-gallery__media { position:relative; min-width:0; margin:0; padding:0; border:0; }
.wc-gallery__frame { position:relative; overflow:hidden; background:rgba(var(--color-foreground),.035); }
.wc-gallery__frame--landscape { aspect-ratio:4/3; }
.wc-gallery__frame--wide { aspect-ratio:16/10; }
.wc-gallery__frame--square { aspect-ratio:1; }
.wc-gallery__frame--portrait { aspect-ratio:3/4; }
.wc-gallery__frame .wc-gallery__image { display:block; width:100%; height:100%; object-fit:cover; }
.wc-gallery__frame--contain .wc-gallery__image { object-fit:contain; }
.wc-gallery__frame--natural .wc-gallery__image { height:auto; }
.wc-gallery__view { width:100%; height:100%; }
.wc-gallery__frame .wc-gallery__view--contain .wc-gallery__image { object-fit:contain; }
.wc-gallery__frame .wc-gallery__view--cover .wc-gallery__image { object-fit:cover; }
.wc-gallery__view { display:none; }
.wc-gallery__view[data-gallery-view-panel="1"] { display:block; }
.wc-gallery__view-input:checked ~ .wc-gallery__frame .wc-gallery__view { display:none; }
.wc-gallery__view-input[value="1"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="1"],
.wc-gallery__view-input[value="2"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="2"],
.wc-gallery__view-input[value="3"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="3"],
.wc-gallery__view-input[value="4"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="4"],
.wc-gallery__view-input[value="5"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="5"],
.wc-gallery__view-input[value="6"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="6"],
.wc-gallery__view-input[value="7"]:checked ~ .wc-gallery__frame [data-gallery-view-panel="7"] { display:block; }
.wc-gallery__view-controls { position:absolute; z-index:1; bottom:16px; left:16px; display:flex; flex-wrap:wrap; max-width:calc(100% - 32px); border:1px solid rgba(37,37,31,.55); background:#f4f1eaf0; color:#25251f; }
.wc-gallery__view-controls label { display:grid; place-items:center; min-width:44px; min-height:44px; padding:6px 10px; font-size:11px; line-height:1; cursor:pointer; }
.wc-gallery__view-controls label + label { border-left:1px solid rgba(37,37,31,.25); }
.wc-gallery__view-input[value="1"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="1"],
.wc-gallery__view-input[value="2"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="2"],
.wc-gallery__view-input[value="3"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="3"],
.wc-gallery__view-input[value="4"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="4"],
.wc-gallery__view-input[value="5"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="5"],
.wc-gallery__view-input[value="6"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="6"],
.wc-gallery__view-input[value="7"]:checked ~ .wc-gallery__view-controls [data-gallery-view-label="7"] { background:#25251f; color:#f4f1ea; }
.wc-gallery__view-input[value="1"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="1"],
.wc-gallery__view-input[value="2"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="2"],
.wc-gallery__view-input[value="3"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="3"],
.wc-gallery__view-input[value="4"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="4"],
.wc-gallery__view-input[value="5"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="5"],
.wc-gallery__view-input[value="6"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="6"],
.wc-gallery__view-input[value="7"]:focus-visible ~ .wc-gallery__view-controls [data-gallery-view-label="7"] { outline:2px solid currentColor; outline-offset:-5px; }
.wc-gallery__media--extended-views .wc-gallery__view-controls { position:static; display:grid; grid-template-columns:repeat(auto-fit,minmax(44px,1fr)); max-width:none; background:#f4f1ea; }
.wc-gallery__media--extended-views .wc-gallery__view-controls label { border:0; box-shadow:1px 0 0 rgba(37,37,31,.25),0 1px 0 rgba(37,37,31,.25); }
@media (max-width:359px) {
  .wc-gallery__media--extended-views .wc-gallery__view-controls { grid-template-columns:repeat(4,minmax(44px,1fr)); }
}
.wc-gallery__zoom { display:block; width:100%; height:100%; }
.wc-gallery__zoom:focus-visible { outline-offset:-5px; }
.wc-gallery__zoom-icon { position:absolute; right:16px; bottom:16px; display:grid; place-items:center; width:40px; height:40px; border:1px solid rgba(37,37,31,.55); border-radius:50%; background:#f4f1eade; color:#25251f; font-size:24px; }
.wc-gallery__media--many-views .wc-gallery__zoom-icon { top:16px; bottom:auto; }
.wc-gallery__caption { display:grid; grid-template-columns:32px minmax(0,1fr); gap:14px; padding-top:16px; }
.wc-gallery__number { padding-top:3px; font-size:10px; }
.woodcraft-theme .wc-gallery__title { margin:0; font-size:16px; line-height:1.5; font-weight:500; letter-spacing:-.025em; }
.wc-gallery__description { margin-top:4px; color:rgba(var(--color-foreground),.7); font-size:12px; line-height:1.7; }
.wc-gallery__note { padding:32px 32px 32px 0; align-self:center; }
.wc-gallery__note-mark { display:flex; align-items:center; gap:4px; margin-bottom:45px; }
.wc-gallery__note-mark i { display:block; width:40px; height:40px; background:var(--gallery-accent); }
.wc-gallery__note-mark i:first-child { border-radius:50%; }
.wc-gallery__note-mark i:last-child { background:transparent; border:1px solid currentColor; }
.woodcraft-theme .wc-gallery__note-heading { margin:18px 0 22px; font-size:clamp(28px,3vw,44px); line-height:1.12; letter-spacing:-.05em; }
.wc-gallery__note .rte { max-width:300px; font-size:13px; line-height:1.8; }
.wc-gallery__closing { display:grid; grid-template-columns:1.55fr 1fr; gap:60px; margin-top:80px; padding-top:40px; border-top:1px solid var(--gallery-rule); }
.woodcraft-theme .wc-gallery__closing h2 { max-width:600px; font-size:clamp(32px,4.3vw,60px); line-height:1.08; }
.wc-gallery__closing .rte { max-width:360px; font-size:13px; line-height:1.8; margin-bottom:24px; }
.wc-gallery__dialog { padding:0; border:0; background:rgb(var(--color-background)); color:rgb(var(--color-foreground)); max-width:min(1240px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); width:fit-content; overflow:auto; }
.wc-gallery__dialog::backdrop { background:rgba(20,20,17,.86); }
.wc-gallery__dialog-inner { position:relative; padding:40px 24px 20px; }
.wc-gallery__dialog-image { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100dvh - 168px); object-fit:contain; margin:auto; }
.wc-gallery__close { position:absolute; right:0; top:0; width:44px; height:44px; display:grid; place-items:center; background:rgb(var(--color-background)); color:inherit; border:0; cursor:pointer; font-size:30px; line-height:1; }
.wc-gallery__dialog-caption { display:flex; justify-content:space-between; gap:24px; align-items:baseline; padding-top:16px; }
.woodcraft-theme .wc-gallery__dialog-caption h2 { font-size:15px; margin:0; letter-spacing:0; line-height:1.5; }
.wc-gallery__dialog-caption .link { font-size:11px; color:inherit; }
@media (prefers-reduced-motion:no-preference) {
  .wc-gallery__image { transition:transform .45s ease; }
  .wc-gallery__zoom:hover .wc-gallery__image { transform:scale(1.025); }
}
@media (max-width:989px) {
  .wc-gallery__heading-row { gap:30px; }
  .wc-gallery__grid { row-gap:calc(var(--gallery-row-gap,64px) * .7); }
  .wc-gallery__note { padding-right:0; }
  .wc-gallery__note-mark { margin-bottom:28px; }
}
@media (max-width:749px) {
  .wc-gallery { padding-block:calc(var(--gallery-padding-top)*.65) calc(var(--gallery-padding-bottom)*.7); }
  .wc-gallery__eyebrow { margin-bottom:26px; font-size:9px; }
  .wc-gallery__heading-row { grid-template-columns:1fr; gap:28px; margin-bottom:32px; }
  .woodcraft-theme .wc-gallery__heading { font-size:var(--gallery-heading-mobile-size,44px); }
  .wc-gallery__intro { justify-self:start; max-width:390px; font-size:13px; }
  .wc-gallery__grid { grid-template-columns:1fr; row-gap:calc(var(--gallery-row-gap,64px) * .6); }
  .wc-gallery__item,.wc-gallery__note { grid-column:auto; margin-top:0; }
  .wc-gallery__note { padding:22px 16px 28px; border-block:1px solid var(--gallery-rule); }
  .wc-gallery__note-mark { margin-bottom:24px; }
  .wc-gallery__note-mark i { width:30px; height:30px; }
  .wc-gallery__note .rte { max-width:100%; }
  .wc-gallery__caption { grid-template-columns:24px minmax(0,1fr); gap:10px; }
  .wc-gallery__title { font-size:15px; }
  .wc-gallery__closing { grid-template-columns:1fr; gap:24px; margin-top:44px; padding-top:32px; }
  .wc-gallery__dialog { max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); }
  .wc-gallery__dialog-inner { padding:44px 12px 16px; }
  .wc-gallery__dialog-image { max-height:calc(100dvh - 200px); }
  .wc-gallery__dialog-caption { flex-direction:column; gap:8px; }
}
