/* gierasimczuk.com.pl static restore: fixes on top of semplice5 */

/* footer link lists: the editor set line-height 0.333rem, so any label that wraps overlaps itself */
#content-holder .content-block p[data-line-height-xl="0.333rem"] { line-height: 1.35 !important; margin-bottom: .55rem; }

/* blog index had no visible page title */
#content-holder .page-h1 { max-width: 1500px; margin: 0 auto; padding: 4rem 30px 0; font-size: 2.2rem; line-height: 1.2; }
#content-holder .page-h1 + .posts { padding-top: 0 !important; }
#content-holder .page-h1 + .posts > .post:first-child { padding-top: 2rem !important; }

/* the block that used to sit above the office map now meets the footer: give it the theme's section spacing */
#content-holder section.gx-end { padding-bottom: 4.444rem; }

/* home: the large list of services is set in the site face (the theme asked for Open Sans, which was never loaded) */
#content-holder .apg-text [data-font="bold"] { font-family: "anaheim", sans-serif; font-weight: 400; }

/* portfolio grid: a soft shade behind the centred title so it reads on light photos */
#content-holder [data-module="portfoliogrid"] .thumb-inner { position: relative; }
#content-holder [data-module="portfoliogrid"] .thumb-inner::after {
	content: ""; position: absolute; inset: 0; z-index: 5; pointer-events: none; border-radius: 50%;
	background: radial-gradient(circle at 50% 50%, rgba(17, 17, 17, .48) 0%, rgba(17, 17, 17, .24) 55%, rgba(17, 17, 17, 0) 100%);
	transition: opacity .4s cubic-bezier(.16, 1, .3, 1);
}
#content-holder [data-module="portfoliogrid"] a:hover .thumb-inner::after,
#content-holder [data-module="portfoliogrid"] a:focus-visible .thumb-inner::after { opacity: .55; }
#content-holder [data-module="portfoliogrid"] .post-title { text-shadow: 0 1px 3px rgba(17, 17, 17, .45); }
/* the same for the service circles on the home page */
.grm-grid a::after {
	content: ""; position: absolute; inset: 0; z-index: 50; pointer-events: none; border-radius: 50%;
	background: radial-gradient(circle at 50% 50%, rgba(17, 17, 17, .48) 0%, rgba(17, 17, 17, .24) 55%, rgba(17, 17, 17, 0) 100%);
	transition: opacity .4s cubic-bezier(.16, 1, .3, 1);
}
.grm-grid a:hover::after, .grm-grid a:focus-visible::after { opacity: 0; }
.grm-grid .title { text-shadow: 0 1px 3px rgba(17, 17, 17, .45); }

@media (max-width: 767.98px) {
	/* home: the list of services in large type ran off both edges of a phone screen */
	#content-holder .apg-text { padding: 2.5rem 1.25rem !important; }
	#content-holder .apg-text .apg-post-title .title,
	#content-holder .apg-text .apg-text-seperator { font-size: clamp(1.9rem, 9vw, 3rem) !important; line-height: 1.1 !important; overflow-wrap: anywhere; }
	/* home: service circles two per row, so their labels fit inside */
	.grm-grid { padding: 3vw 3vw 1vw; }
	.grm-grid a { width: 45.5vw; height: 45.5vw; margin-bottom: 3vw; }
	.grm-grid .title { font-size: 17px; padding: 0 12px; }
	/* justified text leaves holes between words in a narrow column */
	#content-holder p[style*="justify"] { text-align: left !important; }
	/* columns stack on a phone: the offset that lined the second column up with the first becomes a gap */
	#content-holder .gx-offset { padding-top: 2.2rem !important; }
	#content-holder .page-h1 { padding-top: 2.2rem; }
}
