/* Reveal the complete glass panel immediately; animate position only.
   Ancestor opacity fades can defer descendant backdrop blur until the fade ends. */
/* Text reveal extends, rather than replaces, the portfolio fan and scroll motion. */
.fhgd .fhgd-stage{position:absolute;left:var(--fhgd-visual-x,50%);top:var(--fhgd-visual-y,45%);width:90%;height:70%;transform:translate(-50%,-50%);transition:left var(--fhgd-duration) cubic-bezier(.18,.8,.2,1),top var(--fhgd-duration) cubic-bezier(.18,.8,.2,1),width var(--fhgd-duration);pointer-events:none}
.fhgd .fhgd-ready .fhgd-stage{left:var(--fhgd-reveal-x,29%);top:var(--fhgd-reveal-y,42%);width:55%}
.fhgd .fhgd-stage .fhgd-logo{width:var(--fhgd-logo-width);max-width:45%;min-height:0;max-height:none;top:55%}
.fhgd .fhgd-stage .fhgd-logo-image{max-height:240px;height:auto;aspect-ratio:1;object-fit:contain}
.fhgd .fhgd-stage .fhgd-piece{width:clamp(80px,9vw,155px);background:#f1eadc;color:#342348;overflow:hidden;display:flex;flex-direction:column;aspect-ratio:3/4;box-shadow:0 18px 40px #0003}
.fhgd .fhgd-card-art{display:block;object-fit:contain;width:100%;height:49%;padding:10px 8px 0;flex-shrink:0}
.fhgd .fhgd-card-image{display:block;width:100%;height:100%;object-fit:var(--fhgd-fit,cover);position:absolute;inset:0}
.fhgd .fhgd-card-copy{padding:8px 10px 12px;position:relative;white-space:pre-line}
.fhgd .fhgd-card-copy strong{display:block;font-family:var(--fhgd-heading-font);font-weight:var(--fhgd-heading-weight);font-size:clamp(9px,.9vw,14px);line-height:1.3;letter-spacing:-.02em}
.fhgd .fhgd-card-copy span{display:block;margin-top:7px;font-family:var(--fhgd-body-font);font-size:clamp(9px,.8vw,12px);line-height:1.4}
.fhgd .fhgd-custom-card .fhgd-card-copy{margin-top:auto;background:#f1eadceb}
.fhgd .fhgd-mobile{display:none}
.fhgd .fhgd-details{top:24%;bottom:18%;left:56%;right:6%;display:block;pointer-events:none;opacity:1;transform:translateY(22px);transition:transform var(--fhgd-duration,950ms) cubic-bezier(.45,0,.2,1);visibility:hidden}
.fhgd .fhgd-ready .fhgd-details{opacity:1;transform:translateY(0);visibility:visible}
.fhgd .fhgd-left{max-width:none;width:100%}
.fhgd .fhgd-panel{background:var(--fhgd-panel-fill,rgba(255,255,255,.09));border:1px solid var(--fhgd-panel-border,rgba(255,255,255,.18));border-radius:var(--fhgd-panel-radius,20px);padding:var(--fhgd-panel-padding,28px);backdrop-filter:blur(var(--fhgd-panel-blur,16px));-webkit-backdrop-filter:blur(var(--fhgd-panel-blur,16px));max-height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;pointer-events:auto}
.fhgd .fhgd-heading{margin:12px 0!important;white-space:pre-line}
.fhgd .fhgd-body{white-space:pre-line}
.fhgd .fhgd-caption{position:absolute;bottom:65px;left:var(--fhgd-padding);right:var(--fhgd-padding);font-family:var(--fhgd-body-font);font-size:12px;line-height:1.5;opacity:.7;white-space:pre-line;pointer-events:none}
.fhgd .fhgd-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 17px;border:1px solid var(--fhgd-panel-border);border-radius:999px;background:var(--fhgd-panel-fill);color:var(--fhgd-text)!important;font-family:var(--fhgd-body-font);font-weight:600;text-decoration:none!important;font-size:13px;line-height:1.4;margin-top:20px;transition:background .25s,transform .25s;pointer-events:auto}
.fhgd .fhgd-cta span{transition:transform .25s}.fhgd .fhgd-cta:hover{background:#ffffff20}.fhgd .fhgd-cta:hover span{transform:translate(2px,-2px)}.fhgd .fhgd-cta:focus-visible{outline:3px solid #f4ca52;outline-offset:4px}
.fhgd .fhgd-dot .fhgd-nav-icon{opacity:.55}.fhgd .fhgd-dot[aria-current=true] .fhgd-nav-icon{opacity:1}
/* No-JS keeps the text and artwork usable. */
.fhgd:not([data-fhgd-ready]) .fhgd-details{opacity:1;transform:none;visibility:visible}
.fhgd:not([data-fhgd-ready]) .fhgd-stage{left:var(--fhgd-reveal-x,29%);top:var(--fhgd-reveal-y,42%);width:55%}
@media(max-width:700px){
 .fhgd .fhgd-desktop{display:none}.fhgd .fhgd-mobile{display:block}
 .fhgd .fhgd-viewport,.fhgd .fhgd-slide{min-height:600px}
 .fhgd .fhgd-word{top:12%;font-size:var(--fhgd-word-mobile);padding:0 5%}
 .fhgd .fhgd-stage{left:var(--fhgd-visual-mx,50%);top:var(--fhgd-visual-my,44%);width:96%;height:48%}
 .fhgd .fhgd-ready .fhgd-stage,.fhgd:not([data-fhgd-ready]) .fhgd-stage{left:var(--fhgd-reveal-mx,50%);top:var(--fhgd-reveal-my,24%);width:96%;height:40%}
 .fhgd .fhgd-stage .fhgd-logo{width:var(--fhgd-logo-mobile);max-width:45%;top:52%}
 .fhgd .fhgd-stage .fhgd-logo-image{max-height:155px}
 .fhgd .fhgd-stage .fhgd-piece{width:20vw;max-width:115px;top:48%;border-radius:7px}
 .fhgd .fhgd-card-art{height:55%;padding:7px 5px 0}.fhgd .fhgd-card-copy{padding:6px 7px}.fhgd .fhgd-card-copy strong{font-size:clamp(8px,2vw,11px)}.fhgd .fhgd-card-copy span{font-size:9px;margin-top:4px}
 .fhgd .fhgd-details{top:47%;bottom:13%;left:var(--fhgd-padding-mobile);right:calc(var(--fhgd-padding-mobile) + 14px);transform:translateY(18px)}
 .fhgd .fhgd-panel{padding:var(--fhgd-panel-mobile-padding,20px);border-radius:min(var(--fhgd-panel-radius),20px)}
 .fhgd .fhgd-heading{line-height:var(--fhgd-heading-line-mobile)!important}.fhgd .fhgd-body{line-height:var(--fhgd-body-line-mobile)!important}
 .fhgd .fhgd-eyebrow{font-size:9px}.fhgd .fhgd-logo-hint{margin-top:10px}
 .fhgd .fhgd-caption{bottom:44px;left:var(--fhgd-padding-mobile);right:32px;font-size:10px}
 .fhgd .fhgd-nav{top:27%;right:2px;max-height:42%}.fhgd .fhgd-dot{width:26px;height:26px;min-width:26px}
 .fhgd .fhgd-scroll-hint{bottom:14px;font-size:8px}
 .fhgd .fhgd-cta{font-size:12px;margin-top:14px;padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){.fhgd .fhgd-stage,.fhgd .fhgd-details,.fhgd .fhgd-cta,.fhgd .fhgd-cta span{transition:none}.fhgd .fhgd-ready .fhgd-details{transform:none}}
