.fh-editions{padding:1.25rem var(--fh-edge) 0;color:var(--color-fh-ink);font-family:var(--font-fh);font-size:var(--text-fh);line-height:1.45}
.fh-editions h1,.fh-editions h2,.fh-editions p,.fh-editions figure{margin:0;font-size:inherit;font-weight:400}
.fh-editions [hidden]{display:none!important}
.fh-editions a,.fh-editions button{color:inherit}
.fh-editions a:hover,.fh-editions button:hover{text-decoration:underline;text-underline-offset:4px}
.fh-editions :focus-visible{outline:2px solid currentColor;outline-offset:5px}
.fh-edition-muted{color:var(--color-fh-gray-6)}
.fh-editions-intro{display:flex;justify-content:space-between;gap:1.5rem;margin:0 0 2.5rem}
.fh-edition-cover{display:block;width:min(100%,620px);margin:0 auto;text-decoration:none}
.fh-edition-cover>img{height:64svh;width:100%;object-fit:contain}
.fh-edition-caption{display:flex;justify-content:space-between;gap:2rem;margin-top:1rem}
.fh-edition-footer{display:flex;justify-content:space-between;gap:2rem;padding:2rem 0 1rem;margin-top:3rem;color:var(--color-fh-gray-6)}
.fh-edition-top{display:flex;justify-content:space-between;gap:1rem;margin-bottom:2rem}
.fh-edition-top>span{color:var(--color-fh-gray-6)}
.fh-edition-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:clamp(2rem,7vw,8rem);align-items:start}
.fh-edition-figure img{display:block;width:100%;height:calc(100svh - 12rem);min-height:420px;object-fit:contain}
.fh-edition-figure figcaption{position:static;padding:0;background:none;cursor:auto;display:flex;justify-content:space-between;gap:1rem;color:var(--color-fh-gray-6);margin-top:1rem}
.fh-edition-info{max-width:440px;padding-top:.25rem;width:100%}
.fh-editions .fh-edition-description{margin:2rem 0 1rem;max-width:38ch}
.fh-edition-info fieldset{border:0;padding:0;margin:2rem 0 1rem;min-width:0}
.fh-edition-info legend{margin-bottom:.75rem}
.fh-edition-option{display:flex;align-items:center;gap:.75rem;border-top:1px solid #c8c7c2;min-height:48px;cursor:pointer}
.fh-edition-option:last-child{border-bottom:1px solid #c8c7c2}
.fh-edition-option>span:last-child:not(:nth-child(2)){margin-left:auto}
.fh-edition-option input{accent-color:#000;width:16px;height:16px;flex-shrink:0}
.fh-edition-price{display:flex;justify-content:space-between;gap:1rem;margin:2rem 0 1rem}
.fh-edition-price>span:last-child{color:var(--color-fh-gray-6);text-align:right}
.fh-edition-action{display:flex;justify-content:space-between;width:100%;padding:.85rem 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;cursor:pointer;background:none;text-align:left;font:inherit;margin:1rem 0 1.25rem}
.fh-edition-info details{border-bottom:1px solid #c8c7c2;padding:.9rem 0}
.fh-edition-info summary{cursor:pointer}
.fh-edition-info details p{padding:.8rem 0 .25rem;color:var(--color-fh-gray-6)}
.fh-edition-back{cursor:pointer;background:none;border:0;padding:0;min-height:44px;margin-bottom:1rem;font:inherit}
.fh-edition-bag-item{display:flex;align-items:start;gap:1rem;margin:2rem 0}
.fh-edition-bag-item img{width:72px;height:96px;object-fit:contain}
.fh-edition-bag-item button{margin-left:auto;cursor:pointer;background:none;border:0;font:inherit;min-height:44px}
.fh-edition-destination{display:block;margin-bottom:.5rem}
.fh-edition-info select{width:100%;border:1px solid #9a9993;background:transparent;color:inherit;padding:.75rem;font:inherit;border-radius:0;margin-bottom:.75rem}
.fh-edition-totals{margin:2rem 0}.fh-edition-totals>div{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0}.fh-edition-totals>div:last-child{border-top:1px solid #c8c7c2;margin-top:.5rem;padding-top:1rem}.fh-edition-totals dd{margin:0}
@media(max-width:700px){.fh-editions{padding-top:.75rem}.fh-editions-intro{display:block}.fh-editions-intro p{margin-top:.75rem;color:var(--color-fh-gray-6)}.fh-edition-top{font-size:inherit;margin-bottom:1.5rem}.fh-edition-layout{grid-template-columns:1fr;gap:2rem}.fh-edition-figure img{height:auto;min-height:0;max-height:70svh}.fh-edition-figure figcaption{font-size:inherit}.fh-edition-info{max-width:none}.fh-edition-footer{display:block}.fh-edition-footer p+p{margin-top:.5rem}.fh-edition-cover>img{height:auto;max-height:65svh}.fh-head__nav{gap:.8rem}.fh-head__mark{letter-spacing:.12em}}
@media(prefers-reduced-motion:no-preference){.fh-edition-action span{transition:transform .2s var(--fh-ease)}.fh-edition-action:hover span{transform:translateX(3px)}}

.fh-edition-figure figcaption a{white-space:nowrap}

.fh-edition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 3rem}
.fh-edition-grid .fh-edition-cover{width:100%;margin:0}
.fh-edition-grid .fh-edition-cover>img{width:100%;height:58svh;object-fit:contain}
.fh-edition-option small{display:block;font:inherit;color:var(--color-fh-gray-6)}
.fh-edition-option{padding:.65rem 0}
.fh-editions .fh-edition-photo-credit{margin-top:.5rem;color:var(--color-fh-gray-6)}
.fh-edition-info [data-edition-status]{margin-bottom:1rem}
@media(max-width:700px){.fh-edition-grid{grid-template-columns:1fr;gap:3rem}.fh-edition-grid .fh-edition-cover>img{height:auto;max-height:65svh}}

.fh-series-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:center;min-height:60svh}
.fh-series-gallery a{display:block;padding-bottom:.65rem;border-bottom:1px solid transparent}
.fh-series-gallery img{height:42svh;min-height:0;width:100%;object-fit:contain}
.fh-series-gallery span{display:block;margin-top:1rem}
.fh-series-gallery .fh-series-selected{border-bottom-color:currentColor}
.fh-series-cover{display:flex;align-items:center;gap:1rem;height:58svh}
.fh-series-cover img{width:calc((100% - 2rem)/3);height:100%;object-fit:contain}
.fh-bag-images{display:flex;gap:.3rem;flex-shrink:0}
.fh-bag-images:has(img:nth-child(2)) img{width:36px;height:64px}
@media(max-width:700px){.fh-series-gallery{min-height:0;gap:.5rem}.fh-series-gallery img{height:30svh;max-height:30svh}.fh-series-cover{height:38svh}}

/* Fine-line controls retain native radio/select keyboard semantics. */
.fh-edition-option input[type="radio"],
.fh-edition-option input[type="checkbox"]{
  appearance:none;-webkit-appearance:none;position:relative;display:grid;
  place-content:center;width:17px;height:17px;min-width:17px;margin:0;
  border:1px solid var(--color-fh-gray-6);border-radius:0;background:transparent;
  color:var(--color-fh-ink);cursor:pointer;
}
.fh-edition-option input::before,.fh-edition-option input::after{
  content:"";position:absolute;left:3px;top:7px;width:9px;height:1px;
  background:currentColor;opacity:0;transform:rotate(45deg);
}
.fh-edition-option input::after{transform:rotate(-45deg)}
.fh-edition-option input:checked::before,.fh-edition-option input:checked::after{opacity:1}
.fh-edition-option:hover input,.fh-edition-option input:checked{border-color:var(--color-fh-ink)}
.fh-edition-option input:disabled{opacity:.4;cursor:not-allowed}
.fh-edition-info select{
  appearance:none;-webkit-appearance:none;border:0;border-top:1px solid var(--color-fh-gray-6);
  border-bottom:1px solid var(--color-fh-gray-6);border-radius:0;padding:.85rem 2.25rem .85rem .15rem;
  min-height:48px;cursor:pointer;background-color:transparent;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .25rem center;background-size:16px;
}
.fh-edition-info select:hover{border-color:var(--color-fh-ink)}
.fh-edition-info select option{background:var(--color-fh-bg);color:var(--color-fh-ink)}
@supports (appearance:base-select){
  .fh-edition-info select,.fh-edition-info select::picker(select){appearance:base-select}
  .fh-edition-info select{background-image:none}
  .fh-edition-info select::picker-icon{content:"";width:7px;height:7px;margin-right:.4rem;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);align-self:center}
  .fh-edition-info select::picker(select){border:1px solid var(--color-fh-gray-6);background:var(--color-fh-bg);color:var(--color-fh-ink);font:inherit;box-shadow:none;padding:.3rem}
  .fh-edition-info select option{padding:.6rem;min-height:44px;gap:.8rem}
  .fh-edition-info select option:hover,.fh-edition-info select option:focus{background:var(--color-fh-surface)}
  .fh-edition-info select option::checkmark{content:"×";font:inherit}
}
@media(min-width:701px){
  .fh-edition-figure{position:sticky;top:calc(var(--fh-head-height) + 1rem);align-self:start}
  .fh-edition-figure> a>img{min-height:0;height:calc(100svh - 15rem)}
  .fh-series-gallery{min-height:0;padding:1rem 0}
  .fh-series-gallery img{height:clamp(160px,42svh,520px)}
}
@media(forced-colors:active){
  .fh-edition-option input::before,.fh-edition-option input::after{background:CanvasText}
  .fh-edition-info select{appearance:auto;background-image:none}
}

/* Primary purchase action: a filled, full-width button. */
.fh-editions [data-edition-form] .fh-edition-action{min-height:52px;padding:1rem 1.25rem;border:1px solid var(--color-fh-ink,#000);background:var(--color-fh-ink,#000);color:var(--color-fh-paper,#eeedea);align-items:center}
.fh-editions [data-edition-form] .fh-edition-action:hover{background:var(--color-fh-paper,#eeedea);color:var(--color-fh-ink,#000);text-decoration:none}
.fh-editions [data-edition-form] .fh-edition-action:focus-visible{outline:2px solid var(--color-fh-ink,#000);outline-offset:4px}
.fh-editions [data-edition-form] .fh-edition-action:active{background:#333;color:#fff}

.fh-size-quantity{display:flex;align-items:center;justify-content:space-between;gap:var(--fh-edge);padding:var(--fh-edge) 0;border-top:1px solid var(--color-fh-surface)}
.fh-edition-info .fh-size-quantity select{width:5rem;flex-shrink:0;margin:0}
.fh-editions [data-edition-form] .fh-edition-action:disabled{background:var(--color-fh-surface);color:var(--color-fh-gray-6);border-color:var(--color-fh-surface);cursor:not-allowed}

.fh-edition-lightbox{position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:0;border:0;background:var(--color-fh-bg);color:var(--color-fh-ink);font-family:var(--font-fh);font-size:var(--text-fh);line-height:var(--text-fh--line-height);overflow:hidden}
.fh-edition-lightbox[open]{display:flex;flex-direction:column}
.fh-edition-lightbox::backdrop{background:var(--color-fh-bg)}
.fh-edition-lightbox .fh-overlay__head{flex-shrink:0}
.fh-edition-lightbox__image{flex:1;min-height:0;padding:var(--fh-edge);display:flex;align-items:center;justify-content:center}
.fh-edition-lightbox__image img{display:block;width:100%;height:100%;object-fit:contain}
.fh-edition-lightbox__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--fh-edge);padding:0 var(--fh-edge) var(--fh-edge)}
.fh-edition-lightbox__footer span{flex:1;text-align:center}
.fh-edition-lightbox__footer button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.fh-edition-lightbox :focus-visible{outline:1px solid currentColor;outline-offset:4px}

/* Direct quantity selection, using the existing site's type and spacing. */
.fh-editions :focus:not(:focus-visible){outline:none}
.fh-editions :focus-visible,.fh-editions [data-edition-form] .fh-edition-action:focus-visible{outline:1px solid currentColor;outline-offset:3px}
.fh-size-choice{border-top:1px solid var(--color-fh-surface);padding-bottom:var(--fh-edge)}
.fh-size-choice .fh-size-quantity{border:0;padding-bottom:calc(var(--fh-edge) / 2);gap:calc(var(--fh-edge) / 2)}
.fh-quantity-stepper{display:flex;align-items:center;flex-shrink:0;border-bottom:1px solid var(--color-fh-gray-6)}
.fh-quantity-stepper button{font:inherit;background:none;border:0;padding:0;width:44px;height:44px;cursor:pointer}
.fh-quantity-stepper output{min-width:1.5em;text-align:center;font-variant-numeric:tabular-nums}
.fh-quantity-stepper button:disabled{color:var(--color-fh-gray-6);opacity:.4;cursor:default}
.fh-quantity-stepper button:not(:disabled):hover{background:var(--color-fh-surface);text-decoration:none}
.fh-edition-info .fh-frame-option{margin:0;border:0;padding:0}
.fh-frame-option summary{display:flex;justify-content:space-between;gap:var(--fh-edge);list-style:none;color:var(--color-fh-gray-6)}
.fh-frame-option summary::-webkit-details-marker{display:none}
.fh-frame-option summary::after{display:none}
.fh-frame-option .fh-frame-add{color:var(--color-fh-ink)}
.fh-frame-option .fh-frame-hide,.fh-frame-option[open] .fh-frame-add{display:none}
.fh-frame-option[open] .fh-frame-hide{display:inline}
.fh-frame-option>div{padding-top:calc(var(--fh-edge) / 2)}
.fh-frame-option>div a{display:inline-block;margin-top:calc(var(--fh-edge) / 2)}

.fh-framed-preview{display:block;position:relative;width:fit-content;max-width:100%;margin:auto}
.fh-edition-figure .fh-framed-preview img{width:auto;max-width:100%;height:auto;max-height:calc(100svh - 15rem);min-height:0}
.fh-framed-preview.has-frame{border:var(--frame-width) solid var(--frame-color);box-shadow:3px 5px 5px rgb(0 0 0 / .16),8px 12px 18px rgb(0 0 0 / .22)}
.fh-frame-option [data-frame-options] .fh-edition-option{padding:calc(var(--fh-edge) / 3) 0}
.fh-frame-option [data-preview-size]{font:inherit;border:0;background:none;padding:calc(var(--fh-edge) / 2) 0;cursor:pointer}
.fh-series-gallery .fh-framed-preview{max-width:100%}
.fh-series-gallery .fh-framed-preview img{max-height:42svh}

.fh-frame-option [data-view3d]{font:inherit;border:0;background:none;padding:calc(var(--fh-edge) / 2) 0;margin-left:var(--fh-edge);cursor:pointer}
.fh-view3d-stage{flex:1;min-height:0;position:relative;display:grid;place-items:center}
.fh-view3d-stage canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}
.fh-view3d-stage canvas:active{cursor:grabbing}
.fh-view3d-controls{padding:var(--fh-edge);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--fh-edge)}
.fh-view3d-controls button{font:inherit;background:none;border:0;color:inherit;min-width:44px;min-height:44px;cursor:pointer}
.fh-view3d-controls>span:last-child{color:var(--color-fh-gray-6)}

.fh-editions[data-pointer-focus] [data-edition-enlarge]:focus{outline:none}

/* Top-left light: the frame casts onto the upper/left image edge. */
.fh-framed-preview.has-frame::before{content:"";position:absolute;inset:calc(-1 * var(--frame-width));pointer-events:none;box-shadow:inset 1px 1px 1px rgb(255 255 255 / .48),inset -1px -1px 1px rgb(0 0 0 / .22)}
.fh-framed-preview.has-frame::after{background:radial-gradient(ellipse at 18% 12%,rgb(255 255 255 / .085),rgb(255 255 255 / .025) 32%,transparent 65%);border:1px solid;border-color:rgb(0 0 0 / .18) rgb(255 255 255 / .4) rgb(255 255 255 / .4) rgb(0 0 0 / .18);content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 3px 4px 5px rgb(0 0 0 / .23),inset 1px 1px 2px rgb(0 0 0 / .16)}

/* A loose print resting on the surface, lit from the upper left. */
.fh-framed-preview:not(.has-frame){box-shadow:1px 1px 2px rgb(0 0 0 / .09),2px 3px 5px rgb(0 0 0 / .055)}

/* Subtle reflected light across the black aluminium, upper left to lower right. */
.fh-framed-preview.has-frame.has-black-frame{border-color:transparent;background:linear-gradient(135deg,#303030 0%,#242424 24%,#1a1a1a 60%,#181818 100%) border-box}

.fh-editions .fh-edition-selection-title{margin-top:1lh}

.fh-frame-aperture{display:block;overflow:hidden}
.fh-framed-preview.has-frame .fh-frame-aperture img{transform:scale(var(--frame-crop-x),var(--frame-crop-y));transform-origin:center}
