*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--page-bg);color:var(--text-color);font-family:var(--font-family);font-size:var(--font-size);line-height:var(--line-height);font-weight:normal}
body:before{content:"";display:var(--bg-display);position:fixed;inset:0;z-index:0;pointer-events:none;background-image:var(--bg-image);background-repeat:no-repeat;background-position:var(--bg-position);background-size:var(--bg-size);opacity:var(--bg-opacity)}
a{color:inherit;text-decoration:underline}
a:hover{color:var(--link-hover-color);text-decoration:underline}
.site-frame{position:fixed;top:0;left:0;width:var(--navigation-width);z-index:1000;background:transparent;padding:0;margin:0;color:var(--text-color)}
.site-frame p{margin:0;padding:0;font-size:var(--font-size);line-height:var(--line-height);font-weight:normal;text-transform:none}
.site-title-line{display:block}.navigation-text{display:block;max-width:var(--navigation-width);text-align:left}
.site-frame a,.site-frame span{display:inline-block;margin:0;padding:0;line-height:var(--line-height);font-weight:normal;text-transform:none;white-space:nowrap}.site-frame a{font-size:var(--font-size);margin-right:var(--menu-gap);color:inherit}.site-frame a:hover{color:var(--link-hover-color);text-decoration:underline}.site-frame .category{font-size:var(--category-font-size);font-style:var(--category-font-style);text-transform:none;margin-right:var(--menu-gap)}
main{position:relative;z-index:1;margin:0;padding:0;width:100%}
.page-top-placeholder{display:block;width:100%;height:var(--page-top-placeholder-height);margin:0;padding:0;background:#fff;position:relative}
article,.project,.text-block,p{margin:0;padding:0}
.project img,.project iframe{display:block;margin:0;padding:0;height:auto}.project img{max-width:none}
.media-cross{position:relative;display:block;width:fit-content;margin:0;padding:0;background:var(--image-bg)}.content-html .media-cross{display:block}.media-cross img,.media-cross iframe{display:block;margin:0;padding:0}.media-cross svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;display:block}.media-cross line{vector-effect:non-scaling-stroke;stroke:var(--image-overlay-color);stroke-width:var(--image-overlay-width);shape-rendering:geometricPrecision}.media-cross.no-overlay svg{display:none}
.project-title{color:var(--project-title-color);font-style:normal;margin:0;padding:0}.project-title>div{margin:0;padding:0}.youtube-cover{display:block;aspect-ratio:16/9;background:var(--image-bg);max-width:none}
.text-block,.text-block p,.read-more,.expanded-content p,.purchase-link,.content-html{font-size:var(--font-size);line-height:var(--line-height);font-weight:normal;text-transform:none;margin:0;padding:0}.content-html p{margin:0;padding:0}.content-html img{display:block;margin:0;padding:0;max-width:100%;height:auto}.read-more,.purchase-link{display:inline}.expanded-content[hidden]{display:none!important}

/* BE08 image/overlay/background fix:
   desktop content images and GIFs keep native file size;
   overlay wrapper follows the real image box;
   image background is preserved;
   both diagonal and cross overlays remain locked to the image. */
.content-html img,
.content-media-cross img{
    width:auto!important;
    max-width:none!important;
    height:auto!important;
}

.content-media-cross{
    display:block!important;
    width:fit-content!important;
    max-width:none!important;
    height:auto!important;
    position:relative!important;
    margin:0!important;
    padding:0!important;
    background:var(--image-bg)!important;
}

.content-media-cross img{
    display:block!important;
    margin:0!important;
    padding:0!important;
}

.content-media-cross svg{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    pointer-events:none!important;
    z-index:2!important;
    display:block!important;
}

.content-media-cross line{
    vector-effect:non-scaling-stroke;
    stroke:var(--image-overlay-color);
    stroke-width:var(--image-overlay-width);
    shape-rendering:geometricPrecision;
}

@media (max-width:1099px){.site-frame{width:100vw!important;max-width:100vw!important}.navigation-text{width:100vw!important;max-width:100vw!important}.text-block,.project-title{width:100vw!important}.project img,.project iframe,.youtube-cover,.media-cross,.media-cross img{width:100vw!important;max-width:100vw!important;height:auto}}
