/* ==========================================================================
   Hilm theme – main styles
   Values measured from the reference site (desktop 1440px grid, 1300px wrap).
   ========================================================================== */

:root {
	--hilm-base: #16244e;
	--hilm-base-rgb: 22, 36, 78;
	--hilm-accent: #ce9354;
	--hilm-accent-rgb: 206, 147, 84;
	--hilm-text: #16244e;
	--hilm-muted: #7b7f91;
	--hilm-body-bg: #f7f7f7;
	--hilm-footer-bg: #ce9354;
	--hilm-gradient: linear-gradient(135deg, #1ebbf0 30%, #39dfaa 100%);
	--hilm-divider: rgba(51, 51, 51, .11);
	--hilm-font: "Poppins", Helvetica, Arial, Verdana, sans-serif;
	--hilm-header-h: 130px;
	--hilm-wrap: 1300px;
	--hilm-wrap-pad: 50px;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	overflow-x: hidden;
	font: 400 16px/1.6 var(--hilm-font);
	color: var(--hilm-text);
	background: var(--hilm-body-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	word-wrap: break-word;
}
img { max-width: 100%; height: auto; border: 0; vertical-align: middle; }
a { color: var(--hilm-base); text-decoration: none; transition: color .3s, background-color .3s, opacity .3s; }
a:hover { color: var(--hilm-base); }
p { margin: 0 0 10px; }
h1, h2, h3, h4, h5, h6 { margin: 0 0 10px; color: var(--hilm-base); font-family: var(--hilm-font); font-weight: 700; }
h1 { font-size: 52px; line-height: 62px; }
h2 { font-size: 34px; line-height: 44px; }
h3 { font-size: 24px; line-height: 34px; }
h4 { font-size: 20px; line-height: 30px; }
h5 { font-size: 16px; line-height: 26px; }
h6 { font-size: 14px; line-height: 24px; }
ul, ol { margin: 0 0 10px 20px; padding: 0; }
blockquote { margin: 0 0 20px; padding: 0 0 0 20px; border-left: 3px solid var(--hilm-accent); font-style: italic; }
table { border-collapse: collapse; width: 100%; margin-bottom: 20px; }
th, td { border-bottom: 1px solid var(--hilm-divider); padding: 8px; text-align: left; }
hr { border: 0; border-top: 1px solid var(--hilm-divider); margin: 30px 0; }
button { font-family: inherit; }
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], textarea, select {
	font: 400 15px/1.5 var(--hilm-font);
	color: #8b8d94;
	background: #fdfdfd;
	border: 1px solid var(--hilm-divider);
	border-radius: 2px;
	padding: 5px 15px;
	height: 40px;
	width: 100%;
	transition: all .3s;
	-webkit-appearance: none;
}
textarea { height: auto; }
input:focus, textarea:focus, select:focus { outline: none; border-color: rgba(var(--hilm-base-rgb), .3); color: var(--hilm-base); }
::placeholder { color: #8b8d94; opacity: .5; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}
.skip-link:focus { clip: auto; clip-path: none; height: auto; width: auto; z-index: 100000; background: #fff; padding: 10px 15px; left: 5px; top: 5px; }
.hilm-icon { width: 1em; height: 1em; display: inline-block; vertical-align: middle; flex: none; }

.wf-wrap { max-width: var(--hilm-wrap); margin: 0 auto; padding: 0 var(--hilm-wrap-pad); }

/* ---------- Preloader ---------- */
#hilm-load {
	position: fixed; inset: 0; z-index: 9901; background: var(--hilm-base);
	display: flex; align-items: center; justify-content: center;
	transition: opacity .3s ease, visibility 0s .3s;
}
.hilm-loaded #hilm-load { opacity: 0; visibility: hidden; }
html:not(.js) #hilm-load { display: none; } /* no JavaScript: never block the page */
.hilm-spinner { position: relative; width: 75px; height: 75px; }
.hilm-spinner i {
	position: absolute; left: 34px; top: 4px; width: 7px; height: 22px; border-radius: 5px;
	background: rgba(51, 51, 51, .25); transform-origin: 3.5px 33.5px;
	transform: rotate(calc(var(--i) * 30deg));
	animation: hilm-spin 1s linear infinite; animation-delay: calc(var(--i) * 1s / 12 - 1s);
}
@keyframes hilm-spin { 0% { opacity: 1; } 100% { opacity: 0; } }

/* ---------- Page wrapper & overlap footer ---------- */
#page { position: relative; min-height: 100vh; }
.page-inner { position: relative; z-index: 100; background: #fff; }
.hilm-scene-page .page-inner, .hilm-microsite .page-inner { background: transparent; }

/* ---------- Header (desktop: split menu, transparent over title) ---------- */
.masthead {
	position: absolute; top: 0; left: 0; right: 0; z-index: 102;
	height: var(--hilm-header-h);
	background: transparent;
}
.admin-bar .masthead { top: 32px; }
.header-bar {
	display: flex; align-items: stretch; justify-content: center;
	height: 100%; padding: 0 40px;
}
.header-bar .navigation { flex: 1 1 0; display: flex; align-items: center; min-width: max-content; }
.header-bar .nav-left { justify-content: flex-end; }
.header-bar .nav-right { justify-content: flex-start; }
.branding { display: flex; align-items: center; flex: none; }
.branding a { display: block; padding: 0 40px; }
.branding img { width: 380px; height: auto; max-height: 106px; }

.main-nav { display: flex; align-items: stretch; height: 100%; margin: 0; padding: 0; list-style: none; }
.main-nav > li { position: relative; display: flex; align-items: center; }
.main-nav > li > a {
	position: relative; display: flex; align-items: center;
	height: 38px; margin: 46px 0; padding: 0 27px;
	border-radius: 100px;
	color: #fff;
	transition: background .3s, color .3s;
}
.main-nav > li > a .menu-text { display: block; font: 300 13px/17px var(--hilm-font); white-space: nowrap; color: inherit; }
.main-nav > li:hover > a,
.main-nav > li > a:focus-visible,
.main-nav > li.act > a { background: #fff; color: var(--hilm-base); }

/* Dropdown */
.main-nav .sub-nav {
	position: absolute; top: 100%; left: 0; z-index: 200;
	width: 250px; margin: 0; padding: 0; list-style: none;
	background: #fff; box-shadow: 0 0 4px rgba(0, 0, 0, .2);
	opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility 0s .2s;
}
.main-nav > li:hover > .sub-nav,
.main-nav > li:focus-within > .sub-nav,
.main-nav > li:hover > .mega-wrap,
.main-nav > li:focus-within > .mega-wrap { opacity: 1; visibility: visible; transition: opacity .2s ease, visibility 0s; }
.main-nav .sub-nav li { position: relative; }
.main-nav .sub-nav a { display: flex; align-items: center; padding: 12px 10px; color: var(--hilm-base); transition: background .3s, color .3s; }
.main-nav .sub-nav a .menu-text { font: 400 13px/17px var(--hilm-font); }
.main-nav .sub-nav a:hover { background: rgba(var(--hilm-base-rgb), .06); color: var(--hilm-accent); }
.main-nav .sub-nav li.act > a { color: var(--hilm-accent); }
.main-nav .sub-nav .sub-nav { top: 0; left: 100%; }

/* Mega menu */
.main-nav .mega-wrap {
	position: absolute; top: 100%; left: 0; z-index: 200;
	padding: 20px 10px; background: #fff; box-shadow: 0 0 4px rgba(0, 0, 0, .2);
	opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility 0s .2s;
	text-align: left;
}
.main-nav .mega-wrap > .sub-nav {
	position: static; opacity: 1; visibility: inherit; transition: none; box-shadow: none; width: auto; background: none;
	display: grid; grid-template-columns: repeat(var(--cols, 3), 260px);
}
.main-nav .mega-cols-1 { --cols: 1; } .main-nav .mega-cols-2 { --cols: 2; } .main-nav .mega-cols-3 { --cols: 3; }
.main-nav .mega-cols-4 { --cols: 4; } .main-nav .mega-cols-5 { --cols: 5; } .main-nav .mega-cols-6 { --cols: 6; }
.main-nav .mega-wrap > .sub-nav > li { padding: 0 10px; }
.main-nav .mega-wrap > .sub-nav > li > a { display: block; padding: 9px 0; text-align: center; background: none; }
.main-nav .mega-wrap .menu-text { display: block; }
.main-nav .mega-wrap .mega-img { display: inline-block; width: 200px; height: 200px; object-fit: contain; margin: 0 0 10px; transition: opacity .38s; }
.main-nav .mega-wrap > .sub-nav > li > a .menu-text { font: 500 14px/20px var(--hilm-font); color: var(--hilm-accent); transition: color .3s; }
.main-nav .mega-wrap > .sub-nav > li > a:hover { background: none; }
.main-nav .mega-wrap > .sub-nav > li > a:hover .menu-text { color: var(--hilm-base); }
.main-nav > li.mega-full-width { position: static; }
.main-nav > li.mega-full-width > .mega-wrap { left: 40px; right: 40px; }
.main-nav > li.mega-full-width > .mega-wrap > .sub-nav { grid-template-columns: repeat(var(--cols, 5), 1fr); }

/* Header search */
.mini-search { display: flex; align-items: center; margin-left: 50px; }
.search-toggle {
	display: flex; width: 16px; height: 16px; padding: 0; border: 0; background: none; cursor: pointer;
	color: #fff; font-size: 16px; transition: opacity .3s;
}
.search-toggle:hover { opacity: .7; }
.overlay-search {
	position: fixed; inset: 0; z-index: 9800;
	display: flex; align-items: center; justify-content: center;
	background: rgba(var(--hilm-base-rgb), .9);
	opacity: 0; visibility: hidden; transition: opacity .55s, visibility 0s .55s;
}
.overlay-search.open { opacity: 1; visibility: visible; transition: opacity .55s, visibility 0s; }
.overlay-search .overlay-close { position: absolute; top: 25px; right: 25px; width: 34px; height: 34px; padding: 2px; border: 0; background: none; color: #fff; font-size: 30px; cursor: pointer; }
.overlay-search .searchform { position: relative; width: 350px; max-width: calc(100% - 40px); }
.overlay-search .searchform-s { height: 64px; padding: 5px 45px 5px 15px; font-size: 13px; color: var(--hilm-base); background: #f4f4f4; border: 3px solid var(--hilm-accent); border-radius: 8px; }
.overlay-search .searchform-s::placeholder { color: var(--hilm-base); opacity: .75; }
.overlay-search .submit { font-size: 18px; right: 15px; }
.searchform { position: relative; }
.searchform .submit { position: absolute; right: 12px; top: 0; height: 100%; display: flex; align-items: center; border: 0; padding: 0; background: none; color: var(--hilm-base); font-size: 16px; cursor: pointer; transition: opacity .3s; }
.searchform .submit:hover { opacity: .7; }

/* ---------- Language switcher (Polylang): "TR / EN" ---------- */
.hilm-lang ul { display: flex; align-items: center; margin: 0; padding: 0; list-style: none; }
.hilm-lang li { display: flex; align-items: center; margin: 0; }
.hilm-lang li + li::before { content: ""; width: 1px; height: 11px; margin: 0 10px; background: currentColor; opacity: .35; }
.hilm-lang a, .hilm-lang .is-current > span { font: 400 12px/1 var(--hilm-font); letter-spacing: .1em; text-transform: uppercase; }
.hilm-lang a { color: inherit; opacity: .65; transition: opacity .3s, color .3s; }
.hilm-lang a:hover, .hilm-lang a:focus-visible { color: inherit; opacity: 1; }
.hilm-lang .is-current > span { font-weight: 600; }
/* Desktop: top right corner of the header, so the centred logo and both menus keep their place */
.hilm-lang-header { position: absolute; top: 16px; right: clamp(16px, 2.8vw, 40px); z-index: 3; color: #fff; }
/* Mobile: first thing in the slide-in menu */
.hilm-lang-mobile { margin: 0 0 18px; color: var(--hilm-base); }
.hilm-lang-mobile a, .hilm-lang-mobile .is-current > span { font-size: 13px; }
.hilm-lang-mobile .is-current > span { color: var(--hilm-accent); }

/* ---------- Mobile header ---------- */
.mobile-header-bar { display: none; }
.mobile-menu-icon {
	position: relative; display: flex; flex: none; width: 42px; height: 41px; padding: 12px 9px; margin-left: auto;
	border: 0; background: none; cursor: pointer; align-self: center;
}
.mobile-menu-icon .menu-line { position: absolute; left: 9px; width: 24px; height: 3px; background: #fff; transition: transform .2s linear, background-color .2s linear; }
.mobile-menu-icon .menu-line:nth-child(1) { top: 12px; }
.mobile-menu-icon .menu-line:nth-child(2) { top: 19px; }
.mobile-menu-icon .menu-line:nth-child(3) { top: 26px; }
.mobile-menu-icon:hover .menu-line:nth-child(1) { transform: translateY(-2px); }
.mobile-menu-icon:hover .menu-line:nth-child(3) { transform: translateY(2px); }

.mobile-menu-overlay {
	position: fixed; inset: 0; z-index: 9601; background: rgba(17, 17, 17, .6);
	opacity: 0; visibility: hidden; transition: opacity .4s, visibility 0s .4s;
}
.mobile-header {
	position: fixed; top: 0; right: 0; z-index: 9602;
	width: 300px; max-width: 100%; height: 100%; overflow-y: auto;
	padding: 45px 28px 30px 30px; background: #fff;
	transform: translateX(100%); transition: transform .5s ease;
}
.hilm-menu-open .mobile-menu-overlay { opacity: 1; visibility: visible; transition: opacity .4s, visibility 0s; }
.hilm-menu-open .mobile-header { transform: none; }
.close-mobile-menu {
	position: absolute; top: 12px; right: 13px; width: 30px; height: 30px; padding: 5px;
	border: 0; background: none; color: var(--hilm-base); font-size: 20px; cursor: pointer; transition: opacity .5s, transform .3s;
}
.close-mobile-menu:hover { transform: rotate(90deg); }
.mobile-main-nav, .mobile-main-nav ul { list-style: none; margin: 0; padding: 0; }
.mobile-main-nav > li { position: relative; display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid var(--hilm-divider); }
.mobile-main-nav > li:last-child { border-bottom: 0; }
.mobile-main-nav li > a { flex: 1; display: block; padding: 15.2px 25px 15.2px 0; color: var(--hilm-base); }
.mobile-main-nav li > a .menu-text { display: block; font: 400 16px/20px var(--hilm-font); }
.mobile-main-nav li > a:hover, .mobile-main-nav li.act > a { color: var(--hilm-accent); }
.mobile-main-nav .next-level-button {
	display: flex; align-items: center; justify-content: center; width: 30px; height: 46px; padding: 0; margin-right: 5px;
	border: 0; background: none; color: rgba(var(--hilm-base-rgb), .3); font-size: 18px; cursor: pointer; transition: transform .3s ease-out;
}
.mobile-main-nav .open-sub > .next-level-button { transform: rotate(45deg); }
.mobile-main-nav li > ul { display: none; width: 100%; padding: 0 0 15px 25px; }
.mobile-main-nav .open-sub > ul { display: block; }
.mobile-main-nav li li { display: flex; flex-wrap: wrap; align-items: center; }
.mobile-main-nav li li > a { padding: 7px 0; }
.mobile-main-nav li li > a .menu-text { font-size: 16px; line-height: 20px; }
.mobile-search { margin-top: 45px; }
.mobile-search .searchform-s { border: 0; background: none; padding-left: 30px; height: 30px; font-size: 14px; }
.mobile-search .searchform-s::placeholder { color: transparent; }
.mobile-search .submit { left: 0; right: auto; color: rgba(var(--hilm-base-rgb), .3); font-size: 18px; }

/* ---------- Page title ---------- */
.page-title {
	display: flex; align-items: center;
	padding-top: var(--hilm-header-h);
	background: var(--hilm-base) var(--hilm-title-bg) center top repeat;
	text-align: center;
}
.admin-bar .page-title { padding-top: calc(var(--hilm-header-h) + 32px); }
.page-title .wf-wrap {
	width: 100%; min-height: 120px; padding-top: 10px; padding-bottom: 10px;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
}
.page-title h1 { margin: 0; font: italic 400 24px/30px var(--hilm-font); color: #fff; }
.page-title h1 span { font: inherit; }
.page-title-breadcrumbs { margin-top: 8px; }
.breadcrumbs { list-style: none; margin: 0; padding: 0; font: italic 300 12px/12px var(--hilm-font); color: var(--hilm-muted); }
.breadcrumbs li { display: inline-block; position: relative; }
.breadcrumbs li + li { margin-left: 8px; padding-left: 12px; }
.breadcrumbs li + li::before { content: "/"; position: absolute; left: 0; top: 0; width: 15px; height: 13px; color: rgba(123, 127, 145, .5); }
.breadcrumbs a { color: var(--hilm-muted); }
.breadcrumbs a:hover { color: var(--hilm-base); }

/* ---------- Main ---------- */
.site-main { display: block; padding: 70px 0; }
.hilm-full-width .site-main { padding: 0; }
.hilm-full-width .site-main > .wf-wrap { max-width: none; padding: 0; }
.hilm-layout { display: block; }
.hilm-with-sidebar .hilm-layout { display: grid; grid-template-columns: minmax(0, 1fr) 350px; gap: 50px; }
.sidebar .widget { margin-bottom: 40px; }
.widget-title { font-size: 16px; line-height: 26px; }

.entry-content::after { content: ""; display: table; clear: both; }
.entry-content > *:last-child { margin-bottom: 0; }
.entry-content a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.entry-content .wp-block-button__link, .entry-content .hilm-pbtn, .entry-content .wp-block-image a, .entry-content .wp-block-gallery a, .entry-content .hilm-card a, .entry-content .hilm-design-row a, .entry-content .hilm-masonry a, .entry-content .wp-block-columns figure a { text-decoration: none; }
.wp-video, .wp-video-shortcode, .entry-content iframe, .entry-content video, .entry-content embed { max-width: 100% !important; }
.entry-content video { height: auto; }
.alignleft { float: left; margin: 0 25px 10px 0; }
.alignright { float: right; margin: 0 0 10px 25px; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption-text, figcaption { font-size: 13px; color: var(--hilm-muted); }
.hilm-below-scene { padding-top: 70px; padding-bottom: 70px; background: #fff; }

/* Core block layout helpers used by page content */
.entry-content .wp-block-columns { margin-bottom: 0; }
.entry-content .wp-block-image { margin: 0 0 10px; }
.entry-content .wp-block-separator { border: 0; border-top: 1px solid var(--hilm-divider); }
.has-text-align-justify { text-align: justify; }

/* ---------- Push buttons (gold / navy, icon slides in from below) ---------- */
.wp-block-button.is-style-hilm-push .wp-block-button__link,
.wp-block-button.is-style-hilm-push-navy .wp-block-button__link,
.hilm-pbtn {
	position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center;
	width: 100%; min-height: 40px; padding: 0 10px;
	font: italic 600 14px/19.6px var(--hilm-font); color: #fff;
	background: var(--hilm-accent); border: 1px solid #fff; border-radius: 10px;
	transition: background-color .3s, border-color .3s, color .3s;
	text-align: center; cursor: pointer;
}
.hilm-pbtn .hb-text, .wp-block-button__link .hb-text { display: inline-block; transform: translateY(0); transition: transform .45s; }
.hilm-pbtn .hb-icon, .wp-block-button__link .hb-icon {
	position: absolute; left: 0; right: 0; top: 500px; height: 100%;
	display: flex; align-items: center; justify-content: center; font-size: 20px; color: #fff;
	transition: top .45s;
}
.hilm-pbtn:hover, .hilm-pbtn:focus-visible,
.is-style-hilm-push .wp-block-button__link:hover, .is-style-hilm-push .wp-block-button__link:focus-visible { background: var(--hilm-base); color: #fff; }
.hilm-pbtn:hover .hb-text, .hilm-pbtn:focus-visible .hb-text, .wp-block-button__link:hover .hb-text, .wp-block-button__link:focus-visible .hb-text { transform: translateY(-500px); }
.hilm-pbtn:hover .hb-icon, .hilm-pbtn:focus-visible .hb-icon, .wp-block-button__link:hover .hb-icon, .wp-block-button__link:focus-visible .hb-icon { top: 0; }
.hilm-pbtn-navy, .wp-block-button.is-style-hilm-push-navy .wp-block-button__link { font-style: normal; background: var(--hilm-base); border-color: var(--hilm-base); min-height: 35px; }
.hilm-pbtn-navy:hover, .hilm-pbtn-navy:focus-visible, .is-style-hilm-push-navy .wp-block-button__link:hover { background: var(--hilm-accent); border-color: var(--hilm-accent); }
.wp-block-buttons.hilm-buttons { display: grid; grid-template-columns: repeat(var(--n, 3), 1fr); gap: 0 30px; margin: 0; }
.wp-block-buttons.hilm-buttons.hilm-n2 { --n: 2; }
.wp-block-buttons.hilm-buttons > .wp-block-button { width: 100%; margin: 0 0 10px; }
.wp-block-buttons.hilm-buttons.hilm-tall .wp-block-button__link { min-height: 50px; font-style: normal; }

/* Theme default WP button */
.wp-block-button:not([class*="is-style-hilm"]) .wp-block-button__link, .dt-btn, .comment-form .submit, .button, input[type="submit"] {
	display: inline-flex; align-items: center; padding: 12px 18px; font: 400 14px/16px var(--hilm-font);
	color: #fff; background: var(--hilm-accent); border: 0; border-radius: 1px; cursor: pointer; transition: all .3s ease-out; text-decoration: none;
}
.wp-block-button:not([class*="is-style-hilm"]) .wp-block-button__link:hover, .dt-btn:hover, .comment-form .submit:hover, .button:hover, input[type="submit"]:hover { background: var(--hilm-base); color: #fff; }

/* ---------- Eserleri: book rows ---------- */
.wp-block-columns.is-style-hilm-book-row {
	/* Same maths as the original 4/8 row with 35px gutters: image = (W + 65) / 3 - 65 */
	display: grid !important; grid-template-columns: calc((100% + 50px) / 3 - 65px) minmax(0, 1fr); column-gap: 50px;
	align-items: center; margin: 0 -15px 60px 0; row-gap: 0;
}
.wp-block-columns.is-style-hilm-book-row > .wp-block-column { flex-basis: auto !important; margin: 0 !important; min-width: 0; }
.wp-block-columns.is-style-hilm-book-row > .wp-block-column + .wp-block-column { border-left: 1px solid rgba(var(--hilm-accent-rgb), .2); padding-left: 15px; }
.wp-block-columns.is-style-hilm-book-row .wp-block-image { margin: 0; text-align: center; }
.wp-block-columns.is-style-hilm-book-row .wp-block-image img { width: 100%; }
.is-style-hilm-intro, p.hilm-intro, .hilm-intro {
	font: italic 300 13px/20px var(--hilm-font) !important; color: var(--hilm-accent) !important; margin: 0 0 10px !important; text-transform: none;
}
.hilm-lead, .hilm-lead p, p.hilm-lead { font: italic 400 14px/22px var(--hilm-font); text-align: justify; margin: 0 0 10px; }
.hilm-lead + .hilm-buttons, .hilm-intro + .hilm-buttons { margin-top: 10px; }

/* Book detail page */
.wp-block-columns.hilm-book-detail { display: grid !important; grid-template-columns: 22.85% 74.3%; column-gap: 2.85%; align-items: start; margin: 0 -15px 60px; }
.wp-block-columns.hilm-book-detail > .wp-block-column { flex-basis: auto !important; min-width: 0; }
.wp-block-column.is-style-hilm-book-card { border: 1px solid var(--hilm-accent); border-radius: 10px; padding: 0 15px 15px; }
.is-style-hilm-book-card .wp-block-image { margin: 0; }
.hilm-details-title { margin: 10px 0 0 !important; font: 300 18px/27px var(--hilm-font) !important; color: var(--hilm-accent) !important; text-align: center; }
.hilm-details-line { width: 160px; margin: 10px auto 20px !important; border: 0 !important; border-bottom: 1px solid var(--hilm-base) !important; opacity: 1; height: 0; }
.hilm-spec { margin: 0 0 10px; font: 400 14px/25.6px var(--hilm-font); }
.hilm-spec .hilm-spec-label { display: block; font: 300 12px/18px var(--hilm-font); color: var(--hilm-accent); }
.hilm-spec .hilm-spec-value { display: block; padding-left: 20px; margin-top: 0; }
.hilm-toc-title { margin: 20px 0 20px !important; font: 300 15px/22px var(--hilm-font) !important; color: var(--hilm-accent) !important; text-align: center; }
.hilm-toc { font-size: 14px; line-height: 20px; padding: 0 15px 20px; }
.hilm-toc h4, .hilm-toc .hilm-toc-part { font: 700 13px/20px var(--hilm-font); margin: 0 0 6px; }
.hilm-toc ul { margin: 0 0 10px 35px; font-size: 14px; line-height: 20px; }

/* ---------- Hayatı ---------- */
.hilm-hero-right { margin: -70px 0 35px !important; text-align: right; }
.hilm-full-width .hilm-hero-right { margin-top: 0 !important; }
.hilm-hero-right img { width: 75%; max-width: 1080px; }
.wp-block-heading.is-style-hilm-script, h2.is-style-hilm-script, .is-style-hilm-script {
	margin: -50px 0 0 !important; padding: 0 70px;
	font: 700 44px/55px "Great Vibes", cursive !important; color: #be9258 !important; text-align: left;
}
.hilm-bio { margin: 10px 70px 0 calc(70px + (100% - 140px) * .1708); font: 300 17px/27px var(--hilm-font); }
.hilm-hero-right + .is-style-hilm-script + .hilm-bio { margin-top: 50px; }
.hilm-bio p { font: inherit; text-align: justify; margin: 0 0 10px; }
.hilm-bio p:last-child { margin-bottom: 0; }
.hilm-bio + .is-style-hilm-script { margin-top: 42px !important; }
.hilm-full-width .entry-content { padding-bottom: 70px; }

/* ---------- Tasarımlar: design rows ---------- */
.hilm-design-row { display: flex; align-items: center; width: 100vw; margin: 0 0 80px calc(50% - 50vw); }
.hilm-scroll-lock { overflow-x: hidden; }
.hilm-design-row:first-child { margin-top: 0; }
.hdr-cover { flex: 0 0 25%; text-align: center; }
.hdr-cover img { width: 100%; }
.hdr-main { flex: 0 0 75%; min-width: 0; }
.hdr-head { display: flex; align-items: center; margin: 0 0 20px; padding: 0 80px; }
.hdr-title {
	flex: 1; margin: 0; padding: 5px 0; min-height: 35px; border-radius: 10px;
	background: rgba(var(--hilm-accent-rgb), .25);
	font: 400 16px/25px var(--hilm-font); color: var(--hilm-accent); text-align: center;
}
.hdr-head .hdr-btn { flex: 0 0 auto; width: 148px; margin-left: 5px; }
.hilm-carousel { position: relative; padding: 0 80px; }
.hc-viewport { overflow: hidden; }
.hc-track { display: flex; gap: 20px; transition: transform .6s ease; will-change: transform; }
.hc-item { flex: 0 0 calc((100% - 20px) / 2); min-width: 0; }
.hc-item a, .hilm-gallery-link { position: relative; display: block; overflow: hidden; border-radius: 10px; }
.hc-item img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: cover; border-radius: 10px; }
.hc-prev, .hc-next {
	position: absolute; top: 50%; z-index: 5; width: 30px; height: 30px; padding: 0; margin-top: -15px;
	display: flex; align-items: center; justify-content: center;
	border: 0; border-radius: 500px; background: var(--hilm-accent); color: #fff; font-size: 14px; cursor: pointer;
	transition: background .3s, color .3s;
}
.hc-prev { left: 30px; } .hc-next { right: 30px; }
.hc-prev:hover, .hc-next:hover { background: var(--hilm-base); color: rgba(255, 255, 255, .75); }

/* Gallery rollover (gold veil slides up, zoom icon, slow image zoom) */
.hilm-gallery-link img { transition: transform .3s ease-out, opacity .35s; }
.hilm-gallery-link:hover img { transform: scale(1.07); transition: transform 4s ease-out, opacity .25s ease-out; }
.hilm-g-rollover {
	position: absolute; left: 0; top: 100%; z-index: 100; width: 100%; height: 100%;
	background: rgba(var(--hilm-accent-rgb), .4); border-radius: inherit; opacity: 0;
	transition: all .3s;
}
.hc-item .hilm-g-rollover { background: rgba(var(--hilm-accent-rgb), .5); }
.hilm-gallery-link:hover .hilm-g-rollover, .hilm-gallery-link:focus-visible .hilm-g-rollover { top: 0; opacity: 1; }
.hilm-zoom-ico {
	position: absolute; left: 50%; top: 50%; z-index: 10; width: 44px; height: 44px; margin: -22px 0 0 -22px;
	display: flex; align-items: center; justify-content: center; border-radius: 100px; color: #fff; font-size: 40px;
}

/* Masonry gallery */
.hilm-masonry { position: relative; margin: -15px; }
.hilm-masonry::after { content: ""; display: table; clear: both; }
.hilm-masonry .hm-item { margin: 0; padding: 15px; width: 25%; float: left; }
.hilm-masonry.hilm-cols-3 .hm-item { width: 33.333%; }
.hilm-masonry.hilm-cols-2 .hm-item { width: 50%; }
.hilm-masonry.hilm-cols-5 .hm-item { width: 20%; }
.hilm-masonry.is-laid .hm-item { position: absolute; float: none; transition: transform .3s; }
.hilm-masonry .hilm-gallery-link, .hilm-masonry img { border-radius: 5px; }
.hilm-masonry img { display: block; width: 100%; }
.wp-block-gallery.is-style-hilm-masonry { display: block !important; position: relative; margin: -15px; }
.wp-block-gallery.is-style-hilm-masonry > figure.wp-block-image { width: 25% !important; margin: 0 !important; padding: 15px; float: left; }
.wp-block-gallery.is-style-hilm-masonry.is-laid > figure.wp-block-image { position: absolute; float: none; }
.wp-block-gallery.is-style-hilm-masonry > figure img { width: 100%; height: auto !important; border-radius: 5px; object-fit: initial !important; }
.wp-block-gallery.is-style-hilm-masonry > figure a { border-radius: 5px; }

/* ---------- Post cards (Konulu Yazılar / Videolar shortcode) ---------- */
.hilm-posts { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 20px; margin: 0 max(-80px, calc((100% - 100vw) / 2 + 20px)); }
.hilm-posts.hilm-cols-2 { --cols: 2; } .hilm-posts.hilm-cols-4 { --cols: 4; }
.hilm-card { display: flex; flex-direction: column; background: rgba(var(--hilm-accent-rgb), .1); border-radius: 10px; overflow: hidden; }
.hilm-card-img, .blog-media { position: relative; display: block; overflow: hidden; }
.hilm-card-img img, .blog-media img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: cover; transition: transform .3s ease-out, opacity .35s; }
.hilm-rollover::after {
	content: ""; position: absolute; inset: 0; opacity: 0;
	background: linear-gradient(135deg, rgba(30, 187, 240, .2) 30%, rgba(57, 223, 170, .2) 100%);
	transition: opacity .35s linear;
}
.hilm-rollover .hilm-zoom-ico { z-index: 3; opacity: 0; transition: opacity .35s linear; }
.hilm-rollover:hover::after, .hilm-rollover:hover .hilm-zoom-ico { opacity: 1; }
.hilm-card-body { position: relative; z-index: 10; padding: 15px; }
.hilm-card .entry-title { margin: 0 0 10px; font: 500 18px/26px var(--hilm-font); }
.hilm-card .entry-title a { color: var(--hilm-accent); text-decoration: none; }
.hilm-card .entry-title a:hover { color: var(--hilm-base); }
.hilm-card .entry-excerpt { margin: 0 0 5px; font-size: 13px; line-height: 19px; }
.hilm-card .entry-excerpt p { margin: 0 0 10px; }
.post-details {
	position: relative; display: inline-flex; align-items: center; margin: 0 0 -8px; padding: 0 0 8px;
	font: 500 13px/17px var(--hilm-font); color: var(--hilm-accent); text-decoration: none !important;
}
.post-details .hilm-icon { font-size: 8px; margin-left: 7px; }
.post-details::after { content: ""; position: absolute; left: 0; top: 23px; width: 0; height: 2px; background: var(--hilm-gradient); transition: width .4s; }
.post-details:hover { color: var(--hilm-base); }
.post-details:hover::after { width: 100%; }

/* ---------- Archive / search masonry cards ---------- */
.hilm-archive-grid { position: relative; margin: -10px; }
.hilm-archive-grid::after { content: ""; display: table; clear: both; }
.hilm-archive-grid > article { float: left; width: 33.333%; padding: 10px; background: none; }
.hilm-archive-grid.is-laid > article { position: absolute; float: none; }
.hilm-entry > .hilm-entry-in { background: rgba(0, 0, 0, .04); }
.hilm-entry .blog-content { padding: 10px 25px 20px; }
.hilm-entry .entry-title { margin: 0; padding: 10px 0 0; font: 700 20px/30px var(--hilm-font); }
.hilm-entry .entry-title a { color: var(--hilm-base); }
.hilm-entry .entry-title a:hover { color: var(--hilm-base); opacity: .85; }
.entry-meta { padding: 10px 0 0; font-size: 13px; line-height: 18.2px; color: var(--hilm-base); }
.entry-meta > * + *::before { content: "•"; display: inline-block; margin: 0 5px; color: var(--hilm-accent); text-decoration: none; }
.entry-meta a { color: var(--hilm-accent); }
.entry-meta a:hover { color: var(--hilm-base); }
.entry-meta .category-link a + a::before { content: none; }
.hilm-entry .blog-content > p { margin: 0 0 10px; padding: 10px 0 0; font-size: 16px; line-height: 25.6px; }
.paginator { display: flex; justify-content: center; gap: 5px; margin-top: 40px; }
.paginator .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; padding: 0 8px; font-size: 14px; color: var(--hilm-base); border-radius: 3px; text-decoration: none; }
.paginator .page-numbers.current, .paginator .page-numbers:hover { background: var(--hilm-accent); color: #fff; }

/* ---------- Single post ---------- */
.post-thumbnail { position: relative; margin: 0 0 45px; }
.post-thumbnail img { display: block; width: 100%; }
.fancy-date { position: absolute; top: 10px; right: 10px; z-index: 30; }
.fancy-date a {
	display: flex; flex-direction: column; align-items: center; width: 42px; padding: 2px 0; background: #fff;
	font-family: Arial, sans-serif; font-weight: 700; color: #222; text-decoration: none !important;
}
.fancy-date span { position: relative; display: block; padding: 1px; color: #222; }
.fancy-date .entry-month { font-size: 12px; line-height: 22px; margin-bottom: 2px; }
.fancy-date .entry-date { font-size: 22px; line-height: 28px; margin-bottom: 3px; padding: 2px; }
.fancy-date .entry-year { font-size: 12px; line-height: 22px; }
.fancy-date .entry-month::after, .fancy-date .entry-date::after { content: ""; position: absolute; left: 50%; width: 14px; height: 2px; margin-left: -7px; background: var(--hilm-gradient); }
.fancy-date .entry-month::after { bottom: -2px; }
.fancy-date .entry-date::after { bottom: -3px; }
.single-post-entry .entry-content { margin: 0 0 50px; }
.single-post-entry .entry-content p { text-align: justify; }
.post-meta { margin: 0 0 55px; text-align: center; }
.post-meta .entry-meta { display: flex; justify-content: center; flex-wrap: wrap; padding: 0; font-size: 13px; color: var(--hilm-accent); }
.post-meta .entry-meta a { color: var(--hilm-accent); text-decoration: none; }
.entry-tags { margin-top: 10px; font-size: 13px; }
.entry-tags a { display: inline-block; margin: 0 5px 5px 0; padding: 2px 10px; border: 1px solid var(--hilm-divider); color: var(--hilm-base); text-decoration: none; }
.post-navigation { margin: 0 0 50px; border-top: 1px solid var(--hilm-divider); border-bottom: 1px solid var(--hilm-divider); }
.post-navigation .nav-links { display: flex; justify-content: space-between; padding: 25px 0; }
.post-navigation a { position: relative; display: flex; flex-direction: column; max-width: 48%; padding: 0 35px; text-decoration: none; }
.post-navigation .nav-next { margin-left: auto; text-align: right; }
.post-navigation .hilm-icon { position: absolute; top: 50%; margin-top: -18px; font-size: 36px; color: rgba(var(--hilm-base-rgb), .25); transition: color .3s; }
.post-navigation .nav-previous .hilm-icon { left: 0; } .post-navigation .nav-next .hilm-icon { right: 0; }
.post-navigation .meta-nav { margin: 0 0 5px; font-size: 13px; line-height: 18.2px; text-transform: uppercase; color: var(--hilm-accent); }
.post-navigation .post-title { font: 700 20px/30px var(--hilm-font); color: var(--hilm-base); transition: opacity .3s; }
.post-navigation a:hover .post-title { opacity: .75; }
.post-navigation a:hover .hilm-icon { color: var(--hilm-base); }
.related-posts { margin: 0 0 50px; padding: 0 0 40px; border-bottom: 1px solid var(--hilm-divider); }
.related-title { margin: 0 0 30px; font: 700 24px/34px var(--hilm-font); }
.related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px 40px; }
.related-item { display: flex; align-items: flex-start; gap: 20px; }
.related-img { flex: 0 0 110px; }
.related-img img { width: 110px; height: 80px; object-fit: cover; display: block; transition: opacity .3s; }
.related-img:hover img { opacity: .8; }
.related-content a { display: block; font: 400 16px/26px var(--hilm-font); color: var(--hilm-base); text-decoration: none; }
.related-content a:hover { color: var(--hilm-accent); }
.related-content time { font-size: 13px; color: var(--hilm-muted); }

/* Comments */
.comments-area { margin-top: 0; }
.comment-reply-title { margin: 0 0 30px; font: 700 24px/34px var(--hilm-font); }
.comment-notes, .logged-in-as { margin: 0 0 15px; font-size: 13px; line-height: 18.2px; }
.comment-form p { margin: 0 0 10px; }
.comment-form textarea { height: 192px; padding: 5px 15px; }
.comment-form-cookies-consent { font-size: 13px; display: flex; align-items: center; gap: 6px; margin: 15px 0 20px !important; }
.comment-form .form-submit { margin-top: 20px; }
.comment-list { list-style: none; margin: 0 0 50px; }
.comment-list .comment { margin: 0 0 25px; }
.comment-list .children { list-style: none; margin-left: 40px; }
.comment-body { position: relative; padding-left: 80px; min-height: 60px; }
.comment-author .avatar { position: absolute; left: 0; top: 0; border-radius: 50%; }
.comment-metadata { font-size: 13px; }
.comment-metadata a { color: var(--hilm-muted); }
.reply a { font-size: 13px; color: var(--hilm-accent); }
.comments-title { margin-bottom: 30px; }

/* ---------- 404 / search form ---------- */
.error-404 { min-height: 500px; text-align: center; }
.error-404 .entry-title, .no-results .entry-title { font: 700 34px/44px var(--hilm-font); margin: 0 0 10px; }
.hilm-searchform-wide .searchform-s { padding-right: 30px; color: var(--hilm-base); }

/* ---------- Footer (fixed, revealed below the page) ---------- */
.footer {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 99;
	background: var(--hilm-footer-bg); color: var(--hilm-base);
}
.footer .wf-wrap { max-width: none; padding: 50px 50px 15px; }
.footer-widgets { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0 50px; min-height: 30px; }
.footer-widgets:empty { display: none; }
.footer .widget { margin-bottom: 20px; }
.footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 30px; padding: 15px 0 0; border-top: 1px solid rgba(255, 255, 255, .25); font-size: 13px; }
.footer-nav ul { display: flex; flex-wrap: wrap; gap: 0 20px; list-style: none; margin: 0; }
.footer a { color: var(--hilm-base); }
.footer a:hover { color: #fff; }
.hilm-social { display: flex; gap: 8px; }
.hilm-social a { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: rgba(255, 255, 255, .25); font-size: 15px; transition: background .3s, color .3s; }
.hilm-social a:hover { background: var(--hilm-base); color: #fff; }

.scroll-top {
	position: fixed; right: 10px; bottom: 10px; z-index: -1;
	display: flex; align-items: center; justify-content: center; width: 40px; height: 40px;
	background: rgba(0, 0, 0, .2); color: #fff; opacity: 0; transition: all .4s ease;
}
.scroll-top.on { opacity: 1; z-index: 109; }
.scroll-top:hover { background: rgba(0, 0, 0, .5); color: #fff; }
.scroll-top .hilm-icon { width: 24px; height: 24px; }

/* ==========================================================================
   Responsive
   ========================================================================== */
/* Desktop header scales so both menus (up to 4–5 items each) + search stay on one row down to 993px */
@media (min-width: 993px) {
	.header-bar { padding: 0 clamp(16px, 2.8vw, 40px); }
	.main-nav > li > a { padding: 0 clamp(7px, calc(1.6vw - 8px), 27px); }
	.branding a { padding: 0 clamp(12px, calc(4.2vw - 20px), 40px); }
	.branding img { width: clamp(210px, calc(31vw - 66px), 380px); }
	.mini-search { margin-left: clamp(14px, calc(2.4vw - 10px), 50px); }
}
/* First switch: mobile header */
@media (max-width: 992px) {
	.header-bar, .hilm-lang-header { display: none; }
	.masthead { height: auto; }
	.mobile-header-bar { display: flex; align-items: center; padding: 0 5px; }
	.mobile-branding { flex: 1; display: flex; justify-content: center; min-width: 0; padding-left: 42px; }
	.mobile-branding a { display: block; padding: 20px 7px 15px 0; }
	.mobile-branding img { width: 380px; max-width: 100%; }
	.page-title { padding-top: var(--hilm-mobile-header-h, 141px); }
	.admin-bar .page-title { padding-top: calc(var(--hilm-mobile-header-h, 141px) + 46px); }
	.hilm-posts { margin: 0; }
	.hdr-head, .hilm-carousel { padding-left: 40px; padding-right: 40px; }
	.hc-prev { left: 5px; } .hc-next { right: 5px; }
	.footer-widgets { grid-template-columns: repeat(2, 1fr); }
	.hilm-with-sidebar .hilm-layout { grid-template-columns: 1fr; }
}
@media (max-width: 782px) { .admin-bar .masthead { top: 46px; } }
/* Second switch */
@media (max-width: 990px) {
	.hilm-masonry .hm-item, .wp-block-gallery.is-style-hilm-masonry > figure.wp-block-image { width: 33.333% !important; }
}
@media (max-width: 767px) {
	.hilm-hero-right { overflow: hidden; }
	.wp-block-heading.is-style-hilm-script, .is-style-hilm-script { margin-top: 30px !important; text-align: left !important; }
	.hilm-hero-right img { width: 140% !important; max-width: none; margin-left: -40%; }
	.hilm-design-row { flex-wrap: wrap; }
	.hdr-cover { flex-basis: 100%; max-width: 360px; margin: 0 auto 20px; }
	.hdr-main { flex-basis: 100%; }
	.hdr-head, .hilm-carousel { padding-left: 0; padding-right: 0; }
	.wp-block-columns.is-style-hilm-book-row, .wp-block-columns.hilm-book-detail { grid-template-columns: 1fr; row-gap: 35px; margin-left: 0; margin-right: 0; }
	.wp-block-columns.is-style-hilm-book-row .wp-block-image img { width: 100%; }
	.hilm-masonry .hm-item, .wp-block-gallery.is-style-hilm-masonry > figure.wp-block-image { width: 50% !important; }
}
@media (max-width: 778px) {
	:root { --hilm-wrap-pad: 20px; }
	.page-title .wf-wrap { min-height: 0; padding-left: 20px; padding-right: 20px; }
	.hilm-archive-grid > article { width: 50%; }
	.hilm-posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.related-grid { grid-template-columns: 1fr 1fr; }
	.wp-block-heading.is-style-hilm-script, h2.is-style-hilm-script, .is-style-hilm-script { padding: 0 20px; }
	.hilm-bio { margin-left: 20px; margin-right: 20px; }
	.hilm-hero-right img { width: 100%; }
	.footer .wf-wrap { padding-left: 20px; padding-right: 20px; }
	.footer-widgets { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
	.hilm-archive-grid > article { width: 100%; }
	.hilm-posts { grid-template-columns: 1fr; }
	.hc-item { flex-basis: 100%; }
	.related-grid { grid-template-columns: 1fr; }
	.wp-block-buttons.hilm-buttons { grid-template-columns: 1fr; }
	.post-navigation .nav-links { flex-direction: column; gap: 20px; }
	.post-navigation a { max-width: 100%; }
}
@media (max-width: 480px) {
	.mobile-branding { padding-left: 0; justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* ---------- Lightbox ---------- */
.hilm-lb { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity .3s, visibility 0s .3s; }
.hilm-lb.open { opacity: 1; visibility: visible; transition: opacity .3s, visibility 0s; }
.hilm-lb-bg { position: absolute; inset: 0; background: rgba(0, 0, 0, .9); }
.hilm-lb-img { position: relative; max-width: calc(100% - 140px); max-height: calc(100% - 100px); opacity: 0; transform: scale(.96); transition: opacity .3s, transform .3s; }
.hilm-lb-img.in { opacity: 1; transform: none; }
.hilm-lb-top { position: absolute; top: 0; left: 0; right: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; height: 44px; padding: 0 0 0 15px; color: #fff; font-size: 13px; background: rgba(0, 0, 0, .3); }
.hilm-lb-close { width: 44px; height: 44px; border: 0; background: none; color: #fff; font-size: 30px; cursor: pointer; opacity: .75; }
.hilm-lb-close:hover { opacity: 1; }
.hilm-lb-prev, .hilm-lb-next { position: absolute; top: 50%; z-index: 2; width: 70px; height: 100px; margin-top: -50px; border: 0; background: none; cursor: pointer; opacity: .75; }
.hilm-lb-prev { left: 0; } .hilm-lb-next { right: 0; }
.hilm-lb-prev::before, .hilm-lb-next::before { content: ""; position: absolute; left: 50%; top: 50%; width: 16px; height: 16px; margin: -8px 0 0 -8px; border: solid #fff; border-width: 0 0 3px 3px; transform: rotate(45deg); }
.hilm-lb-next::before { transform: rotate(-135deg); }
.hilm-lb-prev:hover, .hilm-lb-next:hover { opacity: 1; }
.hilm-lb.single .hilm-lb-prev, .hilm-lb.single .hilm-lb-next { display: none; }
.hilm-lb-open { overflow: hidden; }

/* Masonry grids: hidden until positioned (avoids layout shift), then fade in like the original. */
.js .hilm-masonry, .js .wp-block-gallery.is-style-hilm-masonry, .js .hilm-archive-grid { visibility: hidden; opacity: 0; transition: opacity .5s ease; }
.js .hilm-masonry.is-laid, .js .wp-block-gallery.is-style-hilm-masonry.is-laid, .js .hilm-archive-grid.is-laid { visibility: visible; opacity: 1; }

/* Cropped gallery grid (Tasarım pages) with client-side pagination */
.hilm-ggrid { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 30px; }
.hilm-ggrid.hilm-cols-2 { --cols: 2; } .hilm-ggrid.hilm-cols-4 { --cols: 4; }
.hilm-ggrid .hm-item { margin: 0; }
.hilm-ggrid .hm-item.is-hidden { display: none; }
.hilm-ggrid .hilm-gallery-link, .hilm-ggrid img { border-radius: 5px; }
.hilm-ggrid img { display: block; width: 100%; aspect-ratio: var(--ratio, 2 / 1); object-fit: cover; }
.hilm-gpager { display: flex; justify-content: center; align-items: center; margin: 50px 0 0; padding: 0 0 2px; }
.hilm-gpager button { margin: 0 6px; padding: 1px 8px; border: 0; background: none; cursor: pointer; font: 400 13px/26px var(--hilm-font); color: var(--hilm-base); position: relative; transition: color .3s; }
.hilm-gpager button::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: 0; height: 2px; background: var(--hilm-accent); transform: scaleX(0); transition: transform .3s; }
.hilm-gpager button:hover, .hilm-gpager button.act { color: var(--hilm-accent); }
.hilm-gpager button.act::after { transform: scaleX(1); }
@media (max-width: 990px) { .hilm-ggrid { --cols: 2 !important; } }
@media (max-width: 767px) { .hilm-ggrid { --cols: 1 !important; } }

/* Maintenance / microsite cover (Bakım page) */
.hilm-microsite .site-main, .hilm-microsite .site-main > .wf-wrap { padding: 0; max-width: none; }
.wp-block-cover.hilm-bakim { margin: 0; padding: 0; }
.wp-block-cover .hilm-bakim-text { font: italic 700 27px/1.5 var(--hilm-font) !important; color: #a8742f !important; margin: 0; }

/* ---------- Sizden Gelenler (memory form) ---------- */
.hm-page-intro { max-width: 900px; margin: 0 auto 40px; text-align: center; }
.hm-page-intro .is-style-hilm-script { margin: 0 0 15px !important; padding: 0 !important; text-align: center !important; }
.hm-page-intro p { font: 300 17px/27px var(--hilm-font); }
.hilm-memory { max-width: 900px; margin: 0 auto; }
.hm-intro { text-align: center; margin: 0 0 30px; font: 300 16px/26px var(--hilm-font); }
.hm-form { position: relative; padding: 40px 45px 35px; background: rgba(var(--hilm-accent-rgb), .08); border: 1px solid rgba(var(--hilm-accent-rgb), .35); border-radius: 10px; }
.hm-row.hm-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 25px; }
.hm-field { margin: 0 0 20px; position: relative; }
.hm-field label, .hm-check label { display: block; margin: 0 0 6px; font: 500 14px/20px var(--hilm-font); color: var(--hilm-base); }
.hm-check label { display: inline; font-weight: 400; font-size: 14px; }
.hm-req { color: var(--hilm-accent); }
.hm-opt { font-weight: 300; font-size: 12px; color: var(--hilm-muted); }
.hm-form input[type="text"], .hm-form input[type="email"], .hm-form input[type="tel"], .hm-form textarea {
	height: 44px; padding: 8px 15px; background: #fff; color: var(--hilm-base); font-size: 15px;
	border: 1px solid rgba(var(--hilm-base-rgb), .15); border-radius: 6px; transition: border-color .3s, box-shadow .3s;
}
.hm-form textarea { height: auto; min-height: 200px; resize: vertical; line-height: 1.6; }
.hm-form input:focus, .hm-form textarea:focus { border-color: var(--hilm-accent); box-shadow: 0 0 0 3px rgba(var(--hilm-accent-rgb), .18); }
.hm-form .hm-invalid { border-color: #c0392b !important; box-shadow: 0 0 0 3px rgba(192, 57, 43, .12) !important; }
.hm-field .hm-err-text { display: block; margin-top: 5px; font-size: 13px; color: #c0392b; }
.hm-count { position: absolute; right: 10px; bottom: 8px; font-size: 12px; color: var(--hilm-muted); background: rgba(255, 255, 255, .85); padding: 0 4px; border-radius: 3px; }
.hm-count.hm-low { color: #c0392b; }
.hm-file input[type="file"] { display: block; width: 100%; padding: 10px; background: #fff; border: 1px dashed rgba(var(--hilm-accent-rgb), .6); border-radius: 6px; font: 400 14px var(--hilm-font); color: var(--hilm-base); cursor: pointer; }
.hm-file input[type="file"]::file-selector-button { margin-right: 12px; padding: 6px 14px; border: 0; border-radius: 6px; background: var(--hilm-base); color: #fff; font: 400 13px var(--hilm-font); cursor: pointer; transition: background .3s; }
.hm-file input[type="file"]:hover::file-selector-button { background: var(--hilm-accent); }
.hm-check { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 12px; }
.hm-check input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--hilm-accent); }
.hm-submit { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin: 25px 0 0; }
.hm-btn { width: 240px; min-height: 46px; font-style: normal; font-weight: 600; font-size: 15px; }
.hm-btn[disabled] { opacity: .6; cursor: wait; }
.hm-note { font-size: 12px; color: var(--hilm-muted); }
.hm-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.hm-notice { margin: 0 0 25px; padding: 15px 20px; border-radius: 8px; font: 400 15px/24px var(--hilm-font); }
.hm-notice.hm-ok { background: rgba(46, 125, 50, .1); border: 1px solid rgba(46, 125, 50, .35); color: #1e5b22; }
.hm-notice.hm-err { background: rgba(192, 57, 43, .08); border: 1px solid rgba(192, 57, 43, .35); color: #8e2a1f; }
.hm-form.hm-done .hm-row, .hm-form.hm-done .hm-field, .hm-form.hm-done .hm-check, .hm-form.hm-done .hm-submit { display: none; }
@media (max-width: 767px) {
	.hm-form { padding: 25px 18px 20px; }
	.hm-row.hm-2 { grid-template-columns: 1fr; }
	.hm-btn { width: 100%; }
}

/* ---------- Empty parent pages: sub page overview ---------- */
.hilm-subnav { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 0 0 60px; }
.hilm-subnav-link {
	display: inline-flex; align-items: center; min-height: 38px; padding: 0 22px; border-radius: 100px;
	border: 1px solid rgba(var(--hilm-accent-rgb), .6); color: var(--hilm-accent) !important; text-decoration: none !important;
	font: 400 14px/1 var(--hilm-font); transition: background-color .3s, color .3s, border-color .3s;
}
.hilm-subnav-link:hover, .hilm-subnav-link:focus-visible { background: var(--hilm-accent); border-color: var(--hilm-accent); color: #fff !important; }
.hilm-subpage { margin: 0 0 80px; }
.hilm-subpage:last-child { margin-bottom: 0; }
.hilm-subpage > .hdr-head { padding: 0; margin: 0 0 35px; }
.hilm-subpage .hilm-posts { margin-left: 0; margin-right: 0; }
@media (max-width: 767px) {
	.hilm-subnav { margin-bottom: 40px; }
	.hilm-subpage > .hdr-head { flex-wrap: wrap; gap: 10px; }
	.hilm-subpage > .hdr-head .hdr-btn { margin-left: 0; width: 100%; }
}
