/**
 * Nazar Furyk — стилі сайту (відновлено на основі шаблону Cargo «Softsect»)
 */

body {
	background-color: #fff;
	color: #000;
}

a:active {
	opacity: 0.7;
}

.page a.active {
	opacity: .4;
}

i,
em {
	font-style: italic;
}

b,
strong {
	font-weight: bolder;
}

sub,
sup {
	position: relative;
	vertical-align: baseline;
}

sub {
	top: 0.3em;
}

sup {
	top: -0.4em;
}

s {
	text-decoration: line-through;
}

img {
	border: 0;
	padding: 0;
}

ul,
ol {
	margin: 0;
	padding: 0 0 0 1em;
}

blockquote {
	margin: 0;
	padding: 0 0 0 2em;
}

hr {
	background: rgba(127, 127, 127, 0.2);
	border: 0;
	height: 1px;
	display: block;
}

.content img {
	float: none;
	margin-bottom: .5em;
}

/**
 * Текст
 */

[data-predefined-style="true"] bodycopy {
	font-size: 1.4rem;
	font-weight: 300;
	color: rgba(0, 0, 0, 0.75);
	font-family: -apple-system, "system-ui", "Helvetica Neue", Arial, sans-serif;
	font-style: normal;
	line-height: 1.3;
}

[data-predefined-style="true"] bodycopy a {
	color: rgba(0, 0, 0, 0.75);
	border-bottom: 1px solid rgba(0, 0, 0, 0.75);
	text-decoration: none;
}

bodycopy a.image-link,
bodycopy a.icon-link,
bodycopy a.image-link:hover,
bodycopy a.icon-link:hover {
	border-bottom: 0;
	padding-bottom: 0;
}

[data-predefined-style="true"] h1 {
	font-family: -apple-system, "system-ui", "Helvetica Neue", Arial, sans-serif;
	font-style: normal;
	font-weight: 400;
	padding: 0;
	margin: 0;
	font-size: 2.8rem;
	line-height: 1.3;
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] h1 a {
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] h2 {
	font-family: -apple-system, "system-ui", "Helvetica Neue", Arial, sans-serif;
	font-style: normal;
	font-weight: 400;
	padding: 0;
	margin: 0;
	color: rgba(0, 0, 0, 0.85);
	font-size: 2.4rem;
	line-height: 1.3;
}

[data-predefined-style="true"] h2 a {
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] small {
	display: inline-block;
	font-size: 1.1rem;
	line-height: 1.3;
	font-family: -apple-system, "system-ui", "Helvetica Neue", Arial, sans-serif;
	font-style: normal;
	font-weight: 300;
	color: rgba(0, 0, 0, 0.35);
}

[data-predefined-style="true"] small a {
	color: rgb(0, 0, 0);
	border-bottom-width: 0em;
}

/* Телефон: текст більший, щоб читався */
[data-predefined-style="true"] body.mobile small {
	font-size: 1.65rem;
}

[data-predefined-style="true"] body.mobile bodycopy {
	font-size: 1.8rem;
}

/**
 * Розкладка за замовчуванням (сторінки з власними налаштуваннями їх перекривають)
 */

[data-css-preset] .page {
	background-color: initial /*!page_bgcolor*/;
}

.mobile .page,
[data-css-preset].mobile .page {
	position: relative;
	max-width: 100%;
	width: 100%;
	background-color: transparent /*!page_bgcolor*/;
}

[data-css-preset] body {
	background-color: rgb(255, 255, 255) /*!body_bgcolor*/;
}

[data-css-preset] text-limit {
	display: inline-block /*!text_width*/;
	max-width: 66rem /*!text_width*/;
}

/**
 * Мобільне меню (червоний хрест) — приховано
 */

#site_menu_button,
#site_menu_wrapper {
	display: none !important;
}

/**
 * Збільшення фото
 */

.content img.image-zoom:active {
	opacity: .7;
}

[data-css-preset] .quick-view {
	padding: 2.5rem /*!quick_view_padding*/;
	height: 100% /*!quick_view_height*/;
	width: 100% /*!quick_view_width*/;
}

body.mobile .quick-view {
	width: 100%;
	height: 100%;
	margin: 0;
}

[data-css-preset] .quick-view-background {
	background: rgba(0, 0, 0, 0.9) /*!quick_view_bgcolor*/;
}

.quick-view-navigation .left-arrow { left: 10px; }
.quick-view-navigation .right-arrow { right: 10px; }
.quick-view-navigation .left-arrow,
.quick-view-navigation .right-arrow,
.quick-view-navigation .close-button,
.image-gallery-navigation .left-arrow,
.image-gallery-navigation .right-arrow {
	height: 36px;
	width: 36px;
}
.quick-view-navigation .close-button { top: 10px; right: 10px; }
.quick-view-navigation .inner-color,
.image-gallery-navigation .inner-color {
	stroke: #fff;
	stroke-width: 1.5px;
}
.quick-view-navigation .outer-color,
.image-gallery-navigation .outer-color {
	stroke: #000;
	stroke-width: 2.5px;
	opacity: 0.6;
}

/* Головна — варіант B */
.nf-home { display: flex; flex-direction: column; min-height: calc(100vh - 48px); font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 300; font-size: 14.5px; line-height: 1.15; color: #000; text-align: left; }
.nf-home a, .nf-home a:hover, .nf-home a:active, .nf-home a:visited { color: #000 !important; -webkit-text-fill-color: #000 !important; border-bottom: none !important; text-decoration: none !important; opacity: 1 !important; background: none !important; }
.nf-head, .nf-foot { display: flex; justify-content: space-between; gap: 12px; }
.nf-links { display: flex; gap: 32px; }
.nf-muted { color: #bfbfbf; }
.nf-list { margin-top: auto; border-bottom: 1px solid #000; }
.nf-row { display: block; border-top: 1px solid #000; }
.nf-line { display: grid; grid-template-columns: 22% 1fr 4%; align-items: end; padding: 4px 0 6px; }
.nf-num { font-size: 7.4vw; font-weight: 600; letter-spacing: -0.06em; line-height: .8; }
.nf-name { font-size: 30px; line-height: 1; padding-bottom: 2px; }
.nf-arr { text-align: right; padding-bottom: 2px; }
.nf-strip { display: flex; gap: 9px; height: 0; overflow: hidden; padding-left: 22%; transition: height .45s ease, padding .45s ease; }
.nf-strip img { height: 100% !important; width: auto !important; max-width: none !important; display: block; }
.nf-open .nf-strip { height: 34vh; padding-bottom: 12px; }
.nf-list:hover .nf-row .nf-strip { height: 0; padding-bottom: 0; }
.nf-list .nf-row:hover .nf-strip { height: 34vh; padding-bottom: 12px; }
.nf-foot { margin-top: 12px; }
@media (max-width: 700px) {
  .nf-line { grid-template-columns: 30% 1fr 8%; }
  .nf-num { font-size: 15vw; }
  .nf-name { font-size: 20px; }
  .nf-strip, .nf-open .nf-strip, .nf-list:hover .nf-row .nf-strip, .nf-list .nf-row:hover .nf-strip { height: 26vh; padding: 0 0 10px 0; overflow-x: auto; }
  .nf-links { gap: 18px; }
}/* CV: щоб ліва колонка була «липкою» */
.main_container {
	overflow: clip !important;
}
/* Press: сітка карток з more / less */
.np { font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 300; font-size: 1.1rem; line-height: 1.35; color: #000; text-align: left; }
.np a { color: #000 !important; -webkit-text-fill-color: #000; border-bottom: 0 !important; text-decoration: none; }
.np a:hover { opacity: .5; }
.np-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px 8px; align-items: start; }
.np-ph { position: relative; aspect-ratio: 3 / 2; background: #f3f3f3; overflow: hidden; }
.np-sc { display: flex; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.np-sc::-webkit-scrollbar { display: none; }
.np-sc img { flex: 0 0 100%; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; scroll-snap-align: start; display: block; }
.np-n { position: absolute; right: 6px; bottom: 5px; color: #fff; font-size: .8em; text-shadow: 0 0 3px rgba(0,0,0,.6); pointer-events: none; }
.np-cap { display: grid; grid-template-columns: 2.7em minmax(0, 1fr) 1.1em; gap: 4px; margin-top: 4px; }
.np-y, .np-m, .np-inf { color: #808080; }
.np-t, .np-m { display: block; }
.np-go { text-align: right; }
.np-more summary { list-style: none; cursor: pointer; color: #b4b4b4; display: inline-block; margin-top: 2px; }
.np-more summary::-webkit-details-marker { display: none; }
.np-more summary::after { content: "more"; }
.np-more summary:hover { color: #000; }
.np-more[open] { position: relative; padding-bottom: 1.8em; }
.np-more[open] summary { position: absolute; left: 0; bottom: 0; }
.np-more[open] summary::after { content: "less"; }
.np-ex { margin-top: 8px; }
.np-ex p { margin: 0; }
.np-ex p + p { margin-top: 1.35em; }
.np-ex p a { text-decoration: underline; text-decoration-color: #c8c8c8; text-underline-offset: 2px; }
.np-inf, .np-lk { margin-top: 8px; }
.np-inf a { color: #808080 !important; -webkit-text-fill-color: #808080; }
.np-lk a { display: block; color: rgba(0, 35, 255, .61) !important; -webkit-text-fill-color: rgba(0, 35, 255, .61); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 700px) {
  .np { font-size: 1.65rem; }
  .np-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}/* Головна v3: без фото, список на весь екран, 04 зверху */
.nf-v3 .nf-list { flex: 1; display: flex; flex-direction: column; margin-top: 14px; }
.nf-v3 .nf-row { flex: 1; display: flex; align-items: flex-end; }
.nf-v3 .nf-line { width: 100%; grid-template-columns: 22% 1fr; padding: 0 0 8px; }
.nf-v3 .nf-num { font-size: min(12.5vw, 15.5vh); }
.nf-v3 .nf-name { display: flex; justify-content: space-between; }
.nf-v3 .nf-head, .nf-v3 .nf-foot { font-size: 30px; line-height: 1; }
.nf-v3 .nf-foot { margin-top: 14px; }
.nf-v3 .nf-links { gap: 42px; }
.nf-v3 .nf-yr { color: #a0a0a0; -webkit-text-fill-color: #a0a0a0; font-variant-numeric: tabular-nums; }
.nf-v3 .nf-num, .nf-v3 .nf-name, .nf-v3 .nf-yr { transition: color .25s ease, -webkit-text-fill-color .25s ease; }
.nf-v3 .nf-list:hover .nf-row .nf-num, .nf-v3 .nf-list:hover .nf-row .nf-name, .nf-v3 .nf-list:hover .nf-row .nf-yr { color: #c8c8c8; -webkit-text-fill-color: #c8c8c8; }
.nf-v3 .nf-list .nf-row:hover .nf-num, .nf-v3 .nf-list .nf-row:hover .nf-name { color: #000; -webkit-text-fill-color: #000; }
.nf-v3 .nf-list .nf-row:hover .nf-yr { color: #a0a0a0; -webkit-text-fill-color: #a0a0a0; }
.nf-v3 .nf-foot a:hover { color: #808080 !important; -webkit-text-fill-color: #808080 !important; }
@media (max-width: 700px) {
  .nf-home.nf-v3 { min-height: calc(100vh - 57px); }
  .nf-v3 .nf-head, .nf-v3 .nf-foot { font-size: 17px; }
  .nf-v3 .nf-links { gap: 18px; }
  .nf-v3 .nf-line { grid-template-columns: 34% 1fr; }
  .nf-v3 .nf-num { font-size: 19vw; }
  .nf-v3 .nf-name { font-size: 17px; flex-direction: column; align-items: flex-start; }
  .nf-v3 .nf-yr { margin-top: 3px; }
}/* Postcards: галерея листівок */
.nfp { display: flex; flex-direction: column; height: calc(100vh - 64px); font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 300; font-size: 14.5px; line-height: 1.35; color: #000; text-align: left; }
.nfp a, .nfp a:active, .nfp a:visited { color: #000 !important; -webkit-text-fill-color: #000 !important; border-bottom: none !important; text-decoration: none !important; }
.nfp a:hover { color: #808080 !important; -webkit-text-fill-color: #808080 !important; }
.nfp .nfp-g { color: #a0a0a0; -webkit-text-fill-color: #a0a0a0; }
.nfp-top, .nfp-ttl, .nfp-rt, .nfp-rb, .nfp-shtop { font-size: 30px; line-height: 1; }
.nfp-top { display: flex; justify-content: space-between; padding-bottom: 12px; border-bottom: 1px solid #000; }
.nfp-top nav { display: flex; gap: 42px; }
.nfp-stage { flex: 1; min-height: 0; display: grid; grid-template-columns: 1fr auto 1fr; gap: 0 46px; padding-top: 18px; }
.nfp-col { display: flex; flex-direction: column; justify-content: space-between; min-height: 0; }
.nfp-r { text-align: right; }
.nfp-ttl span { display: block; }
.nfp-ttl .nfp-g { margin-top: 7px; }
.nfp-all, .nfp-arr, .nfp-add, .nfp-flip, .nfp-btn, .nfp-small span, .nfp-strip span, .nfp-th { cursor: pointer; user-select: none; -webkit-user-select: none; }
.nfp-all { display: inline-block; margin-top: 26px; font-size: 17.5px; border-bottom: 1px solid #000; padding-bottom: 1px; }
.nfp-all:hover, .nfp-btn:hover { color: #808080; }
.nfp-cond p { color: #808080; margin: 0; }
.nfp-cond p + p { margin-top: 9px; }
.nfp-cond p.nfp-ua { color: #b0b0b0; }
.nfp-cond a { color: #808080 !important; -webkit-text-fill-color: #808080 !important; text-decoration: underline !important; text-decoration-color: #c8c8c8 !important; text-underline-offset: 2px; }
.nfp-cond-m { display: none; }
.nfp-card { display: flex; align-items: center; justify-content: center; min-height: 0; }
.nfp-imw { position: relative; background: #fbfbf9; box-shadow: 0 0 0 1px rgba(0,0,0,.08); cursor: e-resize; box-sizing: border-box; }
.nfp-ph, .nfp-tp { position: relative; overflow: hidden; width: 100%; height: 100%; }
.nfp-imw img { position: absolute !important; display: block; max-width: none !important; max-height: none !important; }
.nfp-rb { display: flex; flex-direction: column; align-items: flex-end; }
.nfp-cart { display: none; margin-bottom: 26px; width: 100%; }
.nfp-cart.on { display: block; }
.nfp-cart .nfp-list { display: block; font-size: 17.5px; line-height: 1.35; color: #a0a0a0; margin-top: 5px; }
.nfp-cart .nfp-go { display: inline-block; margin-top: 12px; }
.nfp-small { display: block; font-size: 17.5px; line-height: 1.5; color: #a0a0a0; margin-top: 7px; opacity: 0; transition: opacity .2s; }
.nfp-cart:hover .nfp-small { opacity: 1; }
.nfp-small span:hover { color: #000; }
.nfp-navr { display: flex; gap: 18px; align-items: baseline; }
.nfp-arr { color: #a0a0a0; } .nfp-arr:hover { color: #000; }
.nfp-add { color: #a0a0a0; margin-top: 9px; } .nfp-add:hover, .nfp-add.on { color: #000; }
.nfp-flip { font-size: 17.5px; color: #a0a0a0; margin-top: 9px; } .nfp-flip:hover { color: #000; }
.nfp-strip { display: flex; justify-content: space-between; border-top: 1px solid #000; padding-top: 9px; margin-top: 14px; font-size: 20px; line-height: 1; font-variant-numeric: tabular-nums; }
.nfp-strip span { color: #bdbdbd; transition: color .15s; }
.nfp-strip span:hover, .nfp-strip span.cur { color: #000; }
.nfp-strip span.sel { color: #000; font-weight: 600; }
.nfp-sheet { position: fixed; inset: 0; background: #fff; z-index: 9999; padding: 18px 10px 34px; overflow-y: auto; display: none; }
.nfp-sheet.on { display: block; }
.nfp-shtop { display: flex; justify-content: space-between; padding-bottom: 12px; border-bottom: 1px solid #000; margin-bottom: 26px; }
.nfp-grid { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 30px 21px; align-items: end; }
.nfp-tw { width: 100%; background: #fbfbf9; box-shadow: 0 0 0 1px rgba(0,0,0,.08); box-sizing: border-box; }
.nfp-tp { height: auto; }
.nfp-tw img { position: absolute !important; display: block; max-width: none !important; max-height: none !important; }
.nfp-n { margin-top: 7px; font-size: 17.5px; color: #a0a0a0; }
.nfp-th:hover .nfp-n { color: #000; }
.nfp-th.sel .nfp-n { color: #000; font-weight: 600; }
.nfp-th.sel .nfp-n::after { content: " ✓"; }
.nfp-toast { position: fixed; left: 50%; bottom: 70px; transform: translateX(-50%); background: #000; color: #fff; padding: 9px 16px; font-size: 17.5px; opacity: 0; transition: opacity .25s; pointer-events: none; z-index: 10000; }
.nfp-toast.on { opacity: 1; }
@media (max-width: 700px) {
  .nfp { height: auto; display: block; }
  .nfp-top, .nfp-ttl, .nfp-rt, .nfp-rb, .nfp-shtop { font-size: 17px; }
  .nfp-top nav { gap: 16px; }
  .nfp-stage { display: flex; flex-direction: column; gap: 14px; }
  .nfp-l1 { order: 1; flex-direction: row; justify-content: space-between; align-items: baseline; }
  .nfp-l1 .nfp-cond, .nfp-ttl .nfp-g { display: none; }
  .nfp-all { margin-top: 0; font-size: 15px; }
  .nfp-card { order: 2; }
  .nfp-imw { cursor: default; }
  .nfp-r { order: 3; text-align: left; }
  .nfp-rt { display: none; }
  .nfp-rb { align-items: stretch; }
  .nfp-navr { order: 1; justify-content: space-between; } .nfp-add { order: 2; margin-top: 10px; } .nfp-flip { order: 3; } .nfp-cart { order: 4; margin: 16px 0 0; }
  .nfp-small { opacity: 1; }
  .nfp-strip { display: grid; grid-template-columns: repeat(9, 1fr); gap: 10px 0; font-size: 15px; }
  .nfp-cond-m { display: block; margin-top: 20px; }
  .nfp-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px 10px; }
}
/* Верхня панель: Prints, Postcards, CV/Bio, Press */
.nfn { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 12px; border-bottom: 1px solid #000; margin-bottom: 26px; font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 300; font-size: 30px !important; line-height: 1 !important; color: #000; text-align: left; }
.nfn nav { display: flex; gap: 42px; }
.nfn a, .nfn a:visited, .nfn a:active { color: #000 !important; -webkit-text-fill-color: #000 !important; border-bottom: none !important; text-decoration: none !important; white-space: nowrap; font-size: inherit !important; }
.nfn a:hover { color: #808080 !important; -webkit-text-fill-color: #808080 !important; }
.nfn .nfn-on { color: #a0a0a0; -webkit-text-fill-color: #a0a0a0; white-space: nowrap; }
@media (max-width: 700px) { .nfn { font-size: 17px !important; margin-bottom: 18px; } .nfn nav { gap: 16px; } }
/* Однакові поля на всіх сторінках — панель зверху завжди на тому ж місці */
.page.container_width { width: 100% !important; max-width: 100% !important; }
bodycopy.content_padding { padding: 16px !important; }
@media (max-width: 700px) { bodycopy.content_padding { padding: 10px !important; } }
/* Проєкти: фото + плівка + текст ліворуч (Landmark та інші) */
.nfl { display: flex; flex-direction: column; height: calc(100vh - 103px); font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; font-weight: 300; font-size: 14.5px; line-height: 1.35; color: #000; text-align: left; }
.nfl a { color: #000 !important; -webkit-text-fill-color: #000 !important; border-bottom: none !important; text-decoration: none !important; }
.nfl .nfl-g { color: #a0a0a0; -webkit-text-fill-color: #a0a0a0; }
.nfl-ln { display: flex; justify-content: space-between; align-items: baseline; font-size: 30px; line-height: 1; }
.nfl-nv { display: flex; gap: 18px; align-items: baseline; font-variant-numeric: tabular-nums; }
.nfl-arr { color: #a0a0a0; cursor: pointer; user-select: none; -webkit-user-select: none; } .nfl-arr:hover { color: #000; }
.nfl-mid { flex: 1; min-height: 0; padding: 16px 0; display: grid; grid-template-columns: 1fr auto 1fr; gap: 0 46px; }
.nfl-t { min-height: 0; overflow-y: auto; display: flex; flex-direction: column; justify-content: space-between; gap: 26px; scrollbar-width: none; }
.nfl-t::-webkit-scrollbar { display: none; }
.nfl-lead { font-size: 17.5px; line-height: 1.35; }
.nfl-lead p { margin: 0; } .nfl-lead p + p, .nfl-more p { margin: 1.35em 0 0; }
.nfl-more summary { list-style: none; cursor: pointer; color: #a0a0a0; display: inline-block; margin-top: 9px; }
.nfl-more summary::-webkit-details-marker { display: none; }
.nfl-more summary::after { content: "more"; } .nfl-more[open] summary::after { content: "less"; }
.nfl-more summary:hover { color: #000; }
.nfl-more[open] { position: relative; padding-bottom: 2.2em; } .nfl-more[open] summary { position: absolute; left: 0; bottom: 0; }
.nfl-side { color: #808080; } .nfl-side p { margin: 0; } .nfl-side p + p { margin-top: 9px; }
.nfl-ph { min-height: 0; display: flex; align-items: center; justify-content: center; }
.nfl-ph img { display: block; height: 100% !important; width: auto !important; max-width: none !important; cursor: e-resize; }
.nfl-film { display: flex; gap: 7px; border-top: 1px solid #000; padding-top: 12px; overflow-x: auto; scrollbar-width: none; }
.nfl-film::-webkit-scrollbar { display: none; }
.nfl-film img { display: block; height: 80px !important; width: auto !important; max-width: none !important; cursor: pointer; opacity: .35; transition: opacity .15s; }
.nfl-film img:hover, .nfl-film img.cur { opacity: 1; }
@media (max-width: 700px) {
  .nfl { height: auto; }
  .nfl-ln { font-size: 17px; } .nfl-nv { gap: 12px; }
  .nfl-mid { display: contents; }
  .nfl-ln { order: 1; } .nfl-ph { order: 2; padding: 12px 0; } .nfl-film { order: 3; } .nfl-t { order: 4; overflow: visible; margin-top: 20px; }
  .nfl-ph img { width: 100% !important; height: auto !important; cursor: default; }
  .nfl-film img { height: 60px !important; }
  .nfl-lead { font-size: 15px; }
}