.slide-portfolio{color:var(--hero-ink);background-color:var(--about-bg);backface-visibility:visible;overflow:hidden}.gallery{--gallery-bg:var(--about-bg);--gallery-panel:var(--hero-panel);--gallery-ink:var(--hero-ink);--gallery-muted:var(--hero-muted);--gallery-accent:var(--hero-accent);--gallery-line:var(--about-line);--gallery-chrome-inset:calc(100% * 12 / 124);background:var(--about-bg);-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:100%;display:flex;position:absolute;inset:0;overflow:hidden}.gallery__viewport{touch-action:none;cursor:grab;width:100%;padding:2vh 0;position:relative;overflow:hidden}.gallery__viewport.is-dragging{cursor:grabbing}.gallery__track{--x:0px;width:max-content;transform:translate3d(var(--x), 0, 0);will-change:transform;gap:clamp(18px,3vw,48px);padding:0 10vw;display:flex}.gallery-card{background:#1a1a1a;border:1px solid #1c181414;border-radius:18px;flex:none;width:clamp(260px,31vw,470px);height:clamp(390px,66vh,690px);transition:transform .35s cubic-bezier(.2,.75,.2,1),border-color .35s,box-shadow .35s;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 16px 48px #1c18141f}.gallery-card:focus{outline:none}.gallery-card:focus-visible{border-color:var(--gallery-accent);outline:2px solid var(--gallery-accent);outline-offset:4px}@media (hover:hover) and (pointer:fine){.gallery-card:hover{border-color:#1c181429;transform:translateY(-8px);box-shadow:0 22px 56px #1c181429}.gallery-card:hover img{filter:brightness()saturate();transform:scale(1.055)}}.gallery-card img{object-fit:cover;object-position:var(--img-pos,50%) center;pointer-events:none;filter:brightness()saturate();width:100%;height:100%;transition:filter .35s,transform .6s cubic-bezier(.2,.7,.2,1);display:block;transform:scale(1.02)}.gallery-card:after{content:"";pointer-events:none;background:linear-gradient(#0000 58%,#00000073);position:absolute;inset:0}.gallery-card__caption{z-index:2;pointer-events:none;justify-content:space-between;align-items:end;gap:16px;display:flex;position:absolute;bottom:20px;left:22px;right:22px}.gallery-card__title{font-family:var(--font-accent), Georgia, serif;margin:0;font-size:clamp(23px,2vw,34px);font-weight:400;line-height:1.05}.gallery-card__category{color:#ffffffa6;letter-spacing:.17em;text-transform:uppercase;margin-top:9px;font-size:10px}.gallery-card__index{color:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000002e;border:1px solid #ffffff61;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:11px;display:grid}.gallery__fade{z-index:6;pointer-events:none;width:8vw;position:absolute;top:0;bottom:0}.gallery__fade--left{background:linear-gradient(90deg, var(--gallery-bg), transparent);left:0}.gallery__fade--right{background:linear-gradient(-90deg, var(--gallery-bg), transparent);right:0}.gallery__progress{left:50%;bottom:calc(var(--gallery-chrome-inset) + 26px);z-index:20;background:#1c18141f;width:min(420px,62vw);height:2px;position:absolute;overflow:hidden;transform:translate(-50%)}.gallery__progress>span{background:var(--gallery-accent);transform-origin:0;width:0;height:100%;display:block}.gallery__nav{z-index:8;width:2.75rem;height:2.75rem;color:var(--hero-ink);cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;background:#fff;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 .4rem 1.1rem #1c18142e}.gallery__nav--prev{left:calc(var(--gallery-chrome-inset) + max(1.1rem, env(safe-area-inset-left)))}.gallery__nav--next{right:calc(var(--gallery-chrome-inset) + max(1.1rem, env(safe-area-inset-right)))}.gallery__nav:focus{outline:none}.gallery__nav:focus-visible{outline:2px solid var(--hero-accent);outline-offset:3px}.gallery__nav:hover{background:#fffaf4}.gallery__nav:active{transform:translateY(-50%)scale(.94)}.gallery__nav:disabled{opacity:.28;cursor:default;pointer-events:none}.gallery__nav svg{display:block}.gallery-modal{--gallery-bg:var(--about-bg);--gallery-panel:var(--hero-panel);--gallery-ink:var(--hero-ink);--gallery-muted:var(--hero-muted);--gallery-accent:var(--hero-accent);--gallery-line:var(--about-line);z-index:42;opacity:0;visibility:hidden;pointer-events:none;place-items:center;padding:10px;transition:opacity .25s,visibility .25s;display:grid;position:fixed;inset:0}.gallery-modal[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto}.gallery-modal__scrim{cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#100f0e99;border:0;margin:0;padding:0;position:absolute;inset:0}.gallery-modal__card{z-index:1;background:var(--about-bg);width:min(1060px,100vw - 28px);height:min(720px,100vh - 20px);max-height:min(78vh,720px);color:var(--hero-ink);border-radius:28px;grid-template-columns:58% 42%;transition:transform .28s cubic-bezier(.2,.75,.2,1);display:grid;position:relative;overflow:hidden;transform:scale(.97)translateY(6px);box-shadow:0 30px 100px #00000059}.gallery-modal[aria-hidden=false] .gallery-modal__card{transform:scale(1)translateY(0)}.gallery-modal__media{background:#222;min-width:0;min-height:0;position:relative;overflow:hidden}.gallery-modal__image{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;transition:opacity .18s,transform .35s cubic-bezier(.2,.75,.2,1);display:block}.gallery-modal__image.is-swap{opacity:.3;transform:scale(1.018)}.gallery-modal__arrow{z-index:3;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1616169e;border:1px solid #ffffff61;border-radius:50%;place-items:center;width:44px;height:44px;transition:transform .18s,background .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.gallery-modal__arrow:hover,.gallery-modal__arrow:focus-visible{background:#161616d1;transform:translateY(-50%)scale(1.06)}.gallery-modal__arrow:focus{outline:none}.gallery-modal__arrow:focus-visible{outline:2px solid var(--gallery-accent);outline-offset:3px}.gallery-modal__arrow--prev{left:20px}.gallery-modal__arrow--next{right:20px}.gallery-modal__count{z-index:3;color:#fff;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#201f1ec7;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:700;position:absolute;bottom:18px;left:20px}.gallery-modal__info{background:var(--about-bg);scrollbar-width:thin;min-width:0;min-height:0;padding:34px 36px 28px 32px;position:relative;overflow:auto}.gallery-modal__close{z-index:5;border:1px solid var(--gallery-accent);width:50px;height:50px;color:var(--gallery-ink);cursor:pointer;background:0 0;border-radius:50%;padding:0;font-size:28px;line-height:1;transition:transform .2s,background .2s;position:absolute;top:14px;right:14px}.gallery-modal__close:hover,.gallery-modal__close:focus-visible{background:#b56a4514;transform:rotate(6deg)scale(1.04)}.gallery-modal__close:focus{outline:none}.gallery-modal__close:focus-visible{outline:2px solid var(--gallery-accent);outline-offset:3px}.gallery-modal__eyebrow{color:var(--gallery-accent);letter-spacing:.18em;text-transform:uppercase;margin:0 64px 10px 0;font-size:10px;font-weight:800}.gallery-modal__title{font-family:var(--font-accent), Georgia, serif;letter-spacing:-.02em;margin:0 56px 14px 0;font-size:clamp(1.7rem,2.8vw,2.55rem);font-weight:400;line-height:1.08}.gallery-modal__lead{max-width:42ch;color:var(--gallery-muted);margin:0 0 16px;font-size:14px;line-height:1.5}.gallery-modal__details{border-top:1px solid var(--gallery-line);margin-top:14px}.gallery-modal__row{border-bottom:1px solid var(--gallery-line);padding:10px 0 11px}.gallery-modal__label{color:var(--gallery-accent);letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;font-size:9.5px;font-weight:800;display:block}.gallery-modal__text{color:#1c1814c7;font-size:12.5px;line-height:1.45}.gallery-modal__text a{color:inherit;text-decoration:none;box-shadow:inset 0 -1px #b56a458c}.gallery-modal__text a:hover,.gallery-modal__text a:focus-visible{color:var(--gallery-accent)}@media (max-width:900px){.gallery__viewport{padding:max(5.25rem, calc(env(safe-area-inset-top) + 4.5rem)) 0 max(5.25rem, calc(env(safe-area-inset-bottom) + 4.5rem))}.gallery__track{gap:18px;padding-inline:8vw}.gallery-card{width:72vw;max-width:360px;height:min(64vh,560px)}.gallery__fade{width:4vw}.gallery__progress{bottom:calc(var(--gallery-chrome-inset) + max(4.75rem, calc(env(safe-area-inset-bottom) + 3.9rem)))}.gallery__nav{width:2.5rem;height:2.5rem}.gallery__nav--prev{left:calc(var(--gallery-chrome-inset) + max(.65rem, env(safe-area-inset-left)))}.gallery__nav--next{right:calc(var(--gallery-chrome-inset) + max(.65rem, env(safe-area-inset-right)))}.gallery-modal{align-items:stretch;padding:0}.gallery-modal__card{border-radius:0;grid-template-rows:minmax(42svh,48svh) minmax(0,1fr);grid-template-columns:1fr;width:100%;height:100dvh;max-height:none}.gallery-modal__info{padding:24px 20px calc(24px + env(safe-area-inset-bottom));overflow:auto}.gallery-modal__close{background:#f7f6f2e6;width:44px;height:44px;top:12px;right:12px}.gallery-modal__title{margin-right:2.75rem;font-size:clamp(1.55rem,7vw,2.1rem)}.gallery-modal__eyebrow{margin-right:2.75rem}.gallery-modal__arrow{width:40px;height:40px}.gallery-modal__arrow--prev{left:12px}.gallery-modal__arrow--next{right:12px}.gallery-modal__count{bottom:12px;left:12px}}@media (max-width:640px){.gallery-card{width:78vw;height:min(58vh,480px)}.gallery-card__caption{bottom:16px;left:16px;right:16px}.gallery-card__title{font-size:22px}.gallery-modal__card{grid-template-rows:minmax(38svh,44svh) minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.gallery-card,.gallery-card img,.gallery-modal,.gallery-modal__card,.gallery-modal__image,.gallery-modal__close,.gallery-modal__arrow,.gallery__nav{transition-duration:1ms}}
