/**
 * Theme Name:     Twenty Twenty-Five Child
 * Author:         the WordPress team
 * Template:       twentytwentyfive
 * Text Domain:	   twenty-twenty-five-child
 * Description:    Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
 */


.no-under a {
	text-decoration: unset!important;
}


main .entry-content > :is(h2, h3, h4, h5, h6) {
	margin-top: 4.2rem !important;
}

.upindex {
	position: relative;
	z-index: 3;
}

[data-preview] {
	cursor: pointer;
}


*:has(> footer) {
    min-height: 100dvh;
	display: flex;
	flex-wrap: nowrap;
    gap: 0;
    flex-direction: column;
    align-items: stretch;
}

header, footer {
	margin-top: auto !important;
}

header {
	position: sticky;
	top: 0;
	z-index: 999;
	//box-shadow: 0px 2px 8px #0000002e;
}

footer {
	background-color: #000;
	padding-bottom: calc(env(safe-area-inset-bottom) + 10px);
}


.is-layout-grid {
	grid-auto-flow: dense;
}

main {
	margin-block-start: 0px !important;
	margin-block-end: 1.2rem;
}

main:has(figure.ofo) {--bg: #f0b81b;}
main:has(figure.sms) {--bg: #515f84;}
main:has(figure.dst) {--bg: #7098b9;}
main:has(figure.nyk) {--bg: #d6d7d7}
main:has(figure.oph) {--bg: #c7e5e3}


main:has(figure.light) section.banner {
	color: #fff;
}

main:has(section.banner) .entry-content > figure:first-child img {
	max-width: 180px;
	max-height: 130px;
	width: unset;
}

section.banner {
	overflow: hidden;
	background: var(--bg);
}



.work-card > ul {
	display: contents;
	list-style: none;
	padding: 0;
	margin: 0 !important;
}


.work-card > figure,
.work-card li {
	position: relative;
	overflow: hidden;
}

.work-card figure:before{
	backdrop-filter: blur(0px);
	transition: all 1s cubic-bezier(.25, 1, .5, 1);
    content: "";
    height: 100%;
	backdrop-filter: blur(0);
    -webkit-mask-image: linear-gradient(0deg, #00000047 0%, #000000bd 28%);
    mask-image: linear-gradient(0deg, #00000047 0%, #000000bd 28%);
	position: absolute;
	inset: 0;
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.738) 19%, rgba(0, 0, 0, 0.541) 34%, rgba(0, 0, 0, 0.382) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.002) 98.2%, transparent 100%);
    pointer-events: none;
    opacity: 0.75;
	z-index: 1;
}

.work-card:hover figure:not(:hover):before {
	backdrop-filter: blur(3px);
/* 	background: linear-gradient(0deg, #000000 0%, #00000047 0%); */
}

.work-card figure img{
    transition: all 0.6s cubic-bezier(.25, 1, .5, 1);
}

.work-card figure:hover img{
	transform: scale(1.04);
}

.work-card figure:hover:before{
	opacity: 0.2;
}

.work-card figcaption, 
.work-card .caption {
	position: absolute;
	bottom: 0;
    left: 0;
    padding: 1rem;
/* 	opacity: 0; */
	z-index: 2;
}

.work-card figcaption,
.work-card :is(h1, h2, h3, h4, h5, h6) {
	font-size: var(--wp--preset--font-size--small);
	transition: opacity 0.5s;
/*     text-shadow: 0 0 1.5px #000; */
    color: #fff;
	font-weight: 600;
    margin: 0 !important;
}



/* figure:hover figcaption,
figure:has(figcaption):hover:before,
li:hover figure+:is(h1, h2, h3, h4, h5, h6),
li figure:has(+:is(h1, h2, h3, h4, h5, h6)):hover:before {
	opacity: 1;	
}
figure img::before {
  content: attr(alt);
}

 */






.toolbox {
	padding: 1em!important;
	gap: 2em;
	margin: 2.2rem auto;
}
.toolbox img {
	max-height: 44px;
	width: inherit;
}




.preview-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.preview-modal.active {
  display: flex;
}

.preview-window {
  width: 90%;
  height: 90%;
  background: #111;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 20px 80px rgba(0,0,0,0.6);
}

.preview-window iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.preview-modal:before {
	content: "🞨";
    position: absolute;
    font-size: 22px;
	right: calc(env(safe-area-inset-right) + 26px);
    top: calc(env(safe-area-inset-top) + 20px);
    color: #fff;
	cursor: pointer;
}
 


.preview-window iframe::-webkit-scrollbar {
    width: 10px;
    height: 4px;
}

.preview-window iframe::-webkit-scrollbar-track {
    background-color: transparent;
	margin: -41px 0 0 0;
}

.preview-window iframe::-webkit-scrollbar-thumb {
    background: lightgrey;
	border-radius: 0.625rem;
}




@media (max-width: 750px) {
	.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	section.banner > .is-layout-flex {
		flex-wrap: wrap;
	} 
	
	section.banner figure {
		margin: -6vh auto -20vh !important;
	}
}

