/*=========================================================
  NEHA TAGAI BHATT
  Main Stylesheet
=========================================================*/


/*=========================================================
  CSS VARIABLES
=========================================================*/

:root {
	--color-primary: #c99543;
	--color-primary-light: #deb36d;
	--color-primary-dark: #916426;

	--color-black: #17120d;
	--color-dark: #241b14;
	--color-brown: #3a2a1e;

	--color-white: #ffffff;
	--color-ivory: #fffaf2;
	--color-cream: #f7f1e8;
	--color-light: #fcfaf7;

	--color-text: #5d554e;
	--color-muted: #81766d;

	--border-color: rgba(74, 53, 38, 0.14);

	--container: 1440px;
	--content-container: 1240px;

	--radius-small: 4px;
	--radius-medium: 10px;
	--radius-round: 999px;

	--shadow-small: 0 8px 24px rgba(25, 17, 11, 0.08);
	--shadow-medium: 0 16px 45px rgba(25, 17, 11, 0.14);

	--transition-fast: 180ms ease;
	--transition: 280ms ease;

	--font-heading: "Cormorant Garamond", Georgia, serif;
	--font-body: "Inter", Arial, sans-serif;
	--font-signature: "Allura", cursive;
}


/*=========================================================
  RESET
=========================================================*/

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	margin: 0;
	padding: 0;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;

	overflow-x: hidden;

	background: var(--color-light);
	color: var(--color-text);

	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;

	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.menu-open {
	overflow: hidden;
}

img,
picture,
svg,
video {
	display: block;
	max-width: 100%;
}

img {
	height: auto;
}

figure {
	margin: 0;
}

a {
	color: inherit;
	text-decoration: none;
	transition:
		color var(--transition-fast),
		background-color var(--transition-fast),
		border-color var(--transition-fast),
		opacity var(--transition-fast),
		transform var(--transition-fast);
}

button,
input,
textarea,
select {
	font: inherit;
}

button {
	margin: 0;
	padding: 0;

	border: 0;
	background: none;

	color: inherit;
	cursor: pointer;
}

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

ul {
	list-style: none;
}

p {
	margin: 0 0 22px;
}

p:last-child {
	margin-bottom: 0;
}


/*=========================================================
  ACCESSIBILITY
=========================================================*/

.screen-reader-text {
	position: absolute !important;

	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;

	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);

	border: 0;

	white-space: nowrap;
}

.screen-reader-text:focus {
	top: 12px;
	left: 12px;
	z-index: 100000;

	width: auto;
	height: auto;
	margin: 0;
	padding: 12px 18px;

	overflow: visible;
	clip: auto;
	clip-path: none;

	border-radius: var(--radius-small);
	background: var(--color-white);
	color: var(--color-black);

	box-shadow: var(--shadow-medium);

	font-size: 14px;
	font-weight: 600;
	white-space: normal;
}

:focus-visible {
	outline: 2px solid var(--color-primary-light);
	outline-offset: 4px;
}


/*=========================================================
  LAYOUT
=========================================================*/

.container {
	width: min(
		calc(100% - clamp(40px, 8vw, 128px)),
		var(--container)
	);
	margin-inline: auto;
}

.content-container {
	width: min(
		calc(100% - clamp(40px, 8vw, 128px)),
		var(--content-container)
	);
	margin-inline: auto;
}

.section {
	padding-block: clamp(80px, 9vw, 140px);
}

.section-small {
	padding-block: clamp(60px, 7vw, 100px);
}


/*=========================================================
  TYPOGRAPHY
=========================================================*/

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 24px;

	color: var(--color-black);

	font-family: var(--font-heading);
	font-weight: 500;
	line-height: 1.05;
}

h1 {
	font-size: clamp(52px, 7vw, 96px);
}

h2 {
	font-size: clamp(42px, 5vw, 70px);
}

h3 {
	font-size: clamp(30px, 3vw, 44px);
}

h4 {
	font-size: clamp(24px, 2vw, 32px);
}

h5 {
	font-size: 22px;
}

h6 {
	font-size: 18px;
}

strong,
b {
	font-weight: 600;
}

small {
	font-size: 0.875em;
}

.text-gold {
	color: var(--color-primary);
}

.text-center {
	text-align: center;
}

.section-eyebrow {
	display: inline-block;
	margin-bottom: 18px;

	color: var(--color-primary);

	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.34em;
	text-transform: uppercase;
}


/*=========================================================
  BUTTONS
=========================================================*/

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-height: 54px;
	padding: 15px 30px;

	border: 1px solid transparent;
	border-radius: var(--radius-round);

	font-family: var(--font-body);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.12em;
	text-align: center;
	text-transform: uppercase;

	cursor: pointer;

	transition:
		transform var(--transition),
		box-shadow var(--transition),
		background-color var(--transition),
		border-color var(--transition),
		color var(--transition);
}

.btn:hover,
.btn:focus-visible {
	transform: translateY(-2px);
}

.btn-gold {
	border-color: rgba(229, 185, 112, 0.58);

	background:
		linear-gradient(
			135deg,
			#b97d2b 0%,
			#d8a452 50%,
			#bb7e2c 100%
		);

	color: var(--color-white);

	box-shadow:
		0 12px 30px rgba(115, 72, 22, 0.2),
		inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.btn-gold:hover,
.btn-gold:focus-visible {
	color: var(--color-white);

	box-shadow:
		0 16px 38px rgba(115, 72, 22, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

.btn-outline {
	border-color: rgba(185, 125, 43, 0.72);
	background: transparent;
	color: var(--color-primary-dark);
}

.btn-outline:hover,
.btn-outline:focus-visible {
	background: var(--color-primary);
	color: var(--color-white);
}


/*=========================================================
  SITE HEADER
=========================================================*/

.site-header{
	position:absolute;
	top:0;
	left:0;
	z-index:1000;

	width:100%;

	border-bottom:1px solid rgba(255,255,255,.08);

	background:rgba(34,24,16,.36);

	backdrop-filter:blur(12px) saturate(140%);
	-webkit-backdrop-filter:blur(12px) saturate(140%);

	box-shadow:
	0 8px 30px rgba(0,0,0,.08),
	inset 0 -1px 0 rgba(255,255,255,.04);

	transition:all .35s ease;
}

.site-header::after {
	content: "";

	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;

	height: 1px;

	background:
		linear-gradient(
			90deg,
			transparent 0%,
			rgba(211, 161, 79, 0.2) 22%,
			rgba(211, 161, 79, 0.55) 50%,
			rgba(211, 161, 79, 0.2) 78%,
			transparent 100%
		);

	pointer-events: none;
}

.header-transparent {
	position: absolute;
}

.header-solid,
body:not(.home) .site-header,
.site-header.is-scrolled{

	position:fixed;

	background:rgba(24,17,12,.74);

	backdrop-filter:blur(18px) saturate(150%);
	-webkit-backdrop-filter:blur(18px) saturate(150%);

	box-shadow:
	0 18px 45px rgba(0,0,0,.18);

	border-bottom:1px solid rgba(212,165,89,.14);
}

.admin-bar .site-header {
	top: 32px;
}

.site-header .container {
	width: min(
		calc(100% - clamp(40px, 7vw, 110px)),
		var(--container)
	);
	margin-inline: auto;
}

.header-inner {
	position: relative;
	z-index: 2;

	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(22px, 3vw, 48px);

	min-height: 90px;
}


/*=========================================================
  ARTIST LOGO
=========================================================*/

.site-branding {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

.artist-logo {
	position: relative;

	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;

	min-width: 230px;
	padding-top: 4px;

	color: var(--color-ivory);
	line-height: 1;
	text-decoration: none;
}

.artist-logo__signature {
	position: relative;
	z-index: 2;

	margin-bottom: -11px;
	margin-left: 2px;

	color: var(--color-primary-light);

	font-family: var(--font-signature);
	font-size: 43px;
	font-weight: 400;
	line-height: 0.82;

	transform: rotate(-3deg);

	text-shadow: 0 4px 20px rgba(0, 0, 0, 0.18);
}

.artist-logo__name {
	display: inline-block;

	color: var(--color-ivory);

	font-family: var(--font-heading);
	font-size: 31px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.045em;
	text-transform: uppercase;
	white-space: nowrap;

	text-shadow: 0 3px 18px rgba(0, 0, 0, 0.22);
}

.artist-logo__dot {
	position: absolute;
	right: -11px;
	bottom: 3px;

	width: 6px;
	height: 6px;

	border-radius: 50%;

	background: var(--color-primary-light);
	box-shadow: 0 0 16px rgba(222, 179, 109, 0.4);
}

.artist-logo:hover .artist-logo__signature,
.artist-logo:focus-visible .artist-logo__signature {
	color: #efc883;
}


/* Fallback WordPress site title */

.site-title {
	margin: 0;

	color: var(--color-ivory);

	font-family: var(--font-heading);
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
}

.site-title a {
	color: inherit;
}


/* Image logo support */

.site-branding img,
.custom-logo {
	width: auto;
	max-height: 74px;
}


/*=========================================================
  DESKTOP NAVIGATION
=========================================================*/

.main-navigation {
	display: flex;
	align-items: center;
	justify-content: center;

	margin-left: auto;
}

.primary-menu,
.main-navigation .menu {
	display: flex;
	align-items: center;
	gap: clamp(24px, 2.4vw, 44px);

	margin: 0;
	padding: 0;

	list-style: none;
}

.primary-menu li,
.main-navigation .menu li {
	position: relative;

	margin: 0;
	padding: 0;
}

.primary-menu a,
.main-navigation .menu a {
	position: relative;

	display: inline-flex;
	align-items: center;

	padding: 34px 0 31px;

	color: rgba(255, 250, 242, 0.9);

	font-family: var(--font-body);
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.22em;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;

	transition:
		color var(--transition-fast),
		opacity var(--transition-fast);
}

.primary-menu a::after,
.main-navigation .menu a::after {
	content: "";

	position: absolute;
	right: 0;
	bottom: 20px;
	left: 0;

	height: 1px;

	background:
		linear-gradient(
			90deg,
			transparent,
			var(--color-primary-light),
			transparent
		);

	transform: scaleX(0);
	transform-origin: center;
	transition: transform var(--transition);
}

.primary-menu a:hover,
.primary-menu a:focus-visible,
.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a,
.main-navigation .menu a:hover,
.main-navigation .menu a:focus-visible,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
	color: var(--color-primary-light);
}

.primary-menu a:hover::after,
.primary-menu a:focus-visible::after,
.primary-menu .current-menu-item > a::after,
.primary-menu .current_page_item > a::after,
.main-navigation .menu a:hover::after,
.main-navigation .menu a:focus-visible::after,
.main-navigation .current-menu-item > a::after,
.main-navigation .current_page_item > a::after {
	transform: scaleX(1);
}


/*=========================================================
  HEADER ACTIONS
=========================================================*/

.header-actions {
	display: flex;
	align-items: center;
	flex-shrink: 0;

	margin-left: clamp(4px, 1vw, 18px);
}

.header-contact-button,
.header-inquire-button,
.header-actions .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-width: 170px;
	min-height: 50px;
	padding: 14px 28px;

	border: 1px solid rgba(229, 185, 112, 0.7);
	border-radius: var(--radius-round);

	background:
		linear-gradient(
			135deg,
			#b97d2b 0%,
			#d8a452 52%,
			#ba7d2c 100%
		);

	color: var(--color-white);

	box-shadow:
		0 12px 28px rgba(0, 0, 0, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.28);

	font-family: var(--font-body);
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.14em;
	text-decoration: none;
	text-transform: uppercase;

	transition:
		transform var(--transition),
		box-shadow var(--transition),
		filter var(--transition);
}

.header-contact-button:hover,
.header-contact-button:focus-visible,
.header-inquire-button:hover,
.header-inquire-button:focus-visible,
.header-actions .btn:hover,
.header-actions .btn:focus-visible {
	color: var(--color-white);

	filter: brightness(1.05);
	transform: translateY(-2px);

	box-shadow:
		0 16px 34px rgba(0, 0, 0, 0.23),
		inset 0 1px 0 rgba(255, 255, 255, 0.34);
}


/*=========================================================
  MOBILE MENU BUTTON
=========================================================*/

.menu-toggle {
	position: relative;
	z-index: 1002;

	display: none;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	flex-shrink: 0;
	gap: 5px;

	width: 50px;
	height: 50px;
	margin: 0;
	padding: 0;

	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 50%;

	background: rgba(255, 255, 255, 0.08);
	color: var(--color-ivory);

	backdrop-filter: blur(12px) saturate(140%);
	-webkit-backdrop-filter: blur(12px) saturate(140%);

	box-shadow:
		0 8px 24px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.12);

	cursor: pointer;

	transition:
		background-color 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease,
		transform 0.3s ease;
}

.menu-toggle:hover,
.menu-toggle:focus-visible {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(212, 165, 89, 0.45);

	box-shadow:
		0 12px 28px rgba(0, 0, 0, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);

	transform: translateY(-2px);
}

.menu-toggle:hover,
.menu-toggle:focus-visible {
	border-color: rgba(222, 179, 109, 0.7);
	background: rgba(255, 255, 255, 0.1);
}

.menu-toggle span {
	display: block;

	width: 23px;
	height: 1.5px;

	border-radius: 2px;
	background: currentColor;

	transition:
		transform var(--transition),
		opacity var(--transition);
}

.menu-toggle.is-active span:nth-child(1) {
	transform: translateY(6.5px) rotate(45deg);
}

.menu-toggle.is-active span:nth-child(2) {
	opacity: 0;
}

.menu-toggle.is-active span:nth-child(3) {
	transform: translateY(-6.5px) rotate(-45deg);
}


/*=========================================================
  TABLET HEADER
=========================================================*/

@media (max-width: 1180px) {

	.site-header .container {
		width: min(calc(100% - 56px), var(--container));
	}

	.header-inner {
		gap: 24px;
		min-height: 86px;
	}

	.artist-logo {
		min-width: 194px;
	}

	.artist-logo__signature {
		font-size: 41px;
	}

	.artist-logo__name {
		font-size: 25px;
	}

	.artist-logo__dot {
		right: -15px;
		width: 7px;
		height: 7px;
	}

	.primary-menu,
	.main-navigation .menu {
		gap: 24px;
	}

	.primary-menu a,
	.main-navigation .menu a {
		padding-top: 37px;
		padding-bottom: 34px;

		font-size: 11px;
		letter-spacing: 0.12em;
	}

	.primary-menu a::after,
	.main-navigation .menu a::after {
		bottom: 23px;
	}

	.header-contact-button,
	.header-inquire-button,
	.header-actions .btn {
		min-width: 154px;
		min-height: 50px;
		padding-inline: 22px;
	}
}


/*=========================================================
  MOBILE NAVIGATION
=========================================================*/

@media (max-width: 1024px) {

.site-header{

	background:rgba(26,18,12,.40);

	backdrop-filter:blur(12px) saturate(140%);
	-webkit-backdrop-filter:blur(12px) saturate(140%);
}

	.site-header .container {
		width: min(calc(100% - 44px), var(--container));
	}

	.header-inner {
		min-height: 88px;
	}

	.menu-toggle {
		display: flex;
		margin-left: auto;
	}

	.header-actions {
		display: none;
	}

	.main-navigation {
		position: fixed;
		inset: 0;
		z-index: 1000;

		display: flex;
		align-items: center;
		justify-content: center;

		margin: 0;
		padding: 120px 30px 60px;

		visibility: hidden;
		opacity: 0;

		background:
			radial-gradient(
				circle at 50% 0%,
				rgba(88, 59, 34, 0.36),
				transparent 42%
			),
			linear-gradient(
				145deg,
				rgba(19, 14, 10, 0.99),
				rgba(49, 35, 23, 0.99)
			);

		backdrop-filter: blur(22px);
		-webkit-backdrop-filter: blur(22px);

		transform: translateY(-18px);

		transition:
			opacity var(--transition),
			visibility var(--transition),
			transform var(--transition);
	}

	.main-navigation.is-open {
		visibility: visible;
		opacity: 1;
		transform: translateY(0);
	}

	.primary-menu,
	.main-navigation .menu {
		display: flex;
		align-items: center;
		flex-direction: column;
		gap: 8px;

		width: 100%;
		max-width: 620px;
	}

	.primary-menu li,
	.main-navigation .menu li {
		width: 100%;
		text-align: center;
	}

	.primary-menu a,
	.main-navigation .menu a {
		display: inline-flex;
		justify-content: center;

		padding: 14px 28px;

		color: var(--color-ivory);

		font-family: var(--font-heading);
		font-size: clamp(38px, 7vw, 58px);
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0;
		text-transform: none;
		white-space: normal;
	}

	.primary-menu a::after,
	.main-navigation .menu a::after {
		right: 28px;
		bottom: 5px;
		left: 28px;
	}
}


/*=========================================================
  MOBILE
=========================================================*/

@media (max-width: 767px) {

	.site-header .container {
		width: calc(100% - 36px);
	}

	.header-inner {
		gap: 14px;
		min-height: 84px;
	}

	.artist-logo {
		min-width: 160px;
	}

	.artist-logo__signature {
		margin-bottom: -8px;
		font-size: 35px;
	}

	.artist-logo__name {
		font-size: 21px;
		letter-spacing: 0.035em;
	}

	.artist-logo__dot {
		right: -13px;
		bottom: 2px;

		width: 6px;
		height: 6px;
	}

	.site-branding img,
	.custom-logo {
		max-height: 58px;
	}

	.menu-toggle {
		width: 44px;
		height: 44px;
	}

	.main-navigation {
		padding: 105px 22px 44px;
	}

	.primary-menu a,
	.main-navigation .menu a {
		font-size: clamp(34px, 11vw, 50px);
	}
}


/*=========================================================
  SMALL MOBILE
=========================================================*/

@media (max-width: 420px) {

	.site-header .container {
		width: calc(100% - 28px);
	}

	.header-inner {
		min-height: 76px;
	}

	.artist-logo {
		min-width: 145px;
	}

	.artist-logo__signature {
		font-size: 32px;
	}

	.artist-logo__name {
		font-size: 19px;
	}

	.menu-toggle {
		width: 42px;
		height: 42px;
	}

	.menu-toggle span {
		width: 21px;
	}
}


/*=========================================================
  WORDPRESS ADMIN BAR
=========================================================*/

@media screen and (max-width: 782px) {

	.admin-bar .site-header {
		top: 46px;
	}
}


/*=========================================================
  REDUCED MOTION
=========================================================*/

@media (prefers-reduced-motion: reduce) {

	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* ==========================================================
   FOOTER
========================================================== */

.site-footer{
	background:#fbf8f2;
	border-top:1px solid rgba(185,151,91,.18);
	margin-top:0;
}


/* ==========================================================
   COMMISSION CTA — LUXURY EDITORIAL VERSION
========================================================== */

.footer-commission{
	position:relative;
	isolation:isolate;
	overflow:hidden;
	padding:135px 24px 130px;
	text-align:center;
	background:
		linear-gradient(
			180deg,
			#f8f3e9 0%,
			#fcfaf5 48%,
			#f7f1e7 100%
		);
}

.footer-commission::before{
	content:"";
	position:absolute;
	inset:0;
	z-index:-3;
	opacity:.42;
	pointer-events:none;
	background-image:
		repeating-linear-gradient(
			0deg,
			rgba(91,70,42,.018) 0,
			rgba(91,70,42,.018) 1px,
			transparent 1px,
			transparent 5px
		),
		repeating-linear-gradient(
			90deg,
			rgba(91,70,42,.012) 0,
			rgba(91,70,42,.012) 1px,
			transparent 1px,
			transparent 7px
		);
}

.footer-commission::after{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	z-index:-2;
	width:680px;
	height:680px;
	border-radius:50%;
	background:
		radial-gradient(
			circle,
			rgba(185,151,91,.12) 0%,
			rgba(185,151,91,.055) 35%,
			transparent 70%
		);
	transform:translate(-50%,-50%);
	pointer-events:none;
}

.footer-commission__inner{
	position:relative;
	z-index:2;
	max-width:820px;
	margin:0 auto;
	padding:58px 70px 62px;
}

.footer-commission__inner::before,
.footer-commission__inner::after{
	content:"";
	position:absolute;
	left:50%;
	width:145px;
	height:1px;
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(185,151,91,.95),
			transparent
		);
	transform:translateX(-50%);
}

.footer-commission__inner::before{
	top:0;
}

.footer-commission__inner::after{
	bottom:0;
}

.footer-commission__eyebrow{
	position:relative;
	display:block;
	margin-bottom:24px;
	color:#a78245;
	font-size:.76rem;
	font-weight:500;
	line-height:1.4;
	letter-spacing:.34em;
	text-transform:uppercase;
}

.footer-commission__eyebrow::before{
	content:"✦";
	display:block;
	margin-bottom:18px;
	color:rgba(185,151,91,.75);
	font-size:.72rem;
	letter-spacing:0;
}

.footer-commission__title{
	max-width:760px;
	margin:0 auto;
	color:#29241d;
	font-family:var(--font-heading);
	font-size:clamp(3rem,6vw,5.4rem);
	font-weight:500;
	line-height:.98;
	letter-spacing:-.025em;
}

.footer-commission__text{
	max-width:610px;
	margin:32px auto 43px;
	color:#6d665d;
	font-size:1.08rem;
	line-height:1.9;
}

.footer-commission__button{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:.85rem;
	min-width:225px;
	padding:17px 34px;
	border:1px solid rgba(167,130,69,.82);
	background:rgba(255,255,255,.22);
	color:#342d24;
	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.35),
		0 12px 30px rgba(62,45,23,.055);
	font-size:.76rem;
	font-weight:500;
	line-height:1.2;
	letter-spacing:.17em;
	text-decoration:none;
	text-transform:uppercase;
	transition:
		background-color .35s ease,
		color .35s ease,
		border-color .35s ease,
		box-shadow .35s ease,
		transform .35s ease;
}

.footer-commission__button span{
	display:inline-block;
	font-size:1rem;
	transition:transform .35s ease;
}

.footer-commission__button:hover,
.footer-commission__button:focus-visible{
	border-color:#a78245;
	background:#a78245;
	color:#fff;
	box-shadow:0 16px 34px rgba(82,58,25,.16);
	transform:translateY(-3px);
}

.footer-commission__button:hover span,
.footer-commission__button:focus-visible span{
	transform:translateX(5px);
}

.footer-commission__button:focus-visible{
	outline:2px solid #29241d;
	outline-offset:4px;
}


/* ==========================================================
   MAIN FOOTER
========================================================== */

.site-footer__main{
	position:relative;
	padding:90px 20px 70px;
	border-top:0;
	background:#fbf8f2;
}

.site-footer__main::before{
	content:"";
	position:absolute;
	top:0;
	left:50%;
	width:min(1120px,calc(100% - 48px));
	height:1px;
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(185,151,91,.38),
			transparent
		);
	transform:translateX(-50%);
}

.footer-container{
	display:grid;
	grid-template-columns:2fr 1fr 1fr;
	gap:80px;
	max-width:1280px;
	margin:auto;
}


/* ==========================================================
   FOOTER BRAND
========================================================== */

.footer-brand__name{
	display:inline-block;
	margin-bottom:12px;
	color:#222;
	font-family:var(--font-heading);
	font-size:2.2rem;
	text-decoration:none;
}

.footer-brand__role{
	margin-bottom:22px;
	color:#b9975b;
	font-size:.75rem;
	letter-spacing:.18em;
	text-transform:uppercase;
}

.footer-brand__description{
	max-width:420px;
	color:#666;
	line-height:1.9;
}


/* ==========================================================
   FOOTER HEADINGS
========================================================== */

.footer-heading{
	margin-bottom:28px;
	color:#222;
	font-family:var(--font-heading);
	font-size:1.5rem;
}


/* ==========================================================
   FOOTER MENU
========================================================== */

.footer-menu__list{
	margin:0;
	padding:0;
	list-style:none;
}

.footer-menu__list li{
	margin-bottom:14px;
}

.footer-menu__list a{
	color:#666;
	text-decoration:none;
	transition:
		color .3s ease,
		padding-left .3s ease;
}

.footer-menu__list a:hover,
.footer-menu__list a:focus-visible{
	padding-left:6px;
	color:#b9975b;
}


/* ==========================================================
   FOOTER CONTACT
========================================================== */

.footer-contact__text{
	margin-bottom:26px;
	color:#666;
	line-height:1.9;
}

.footer-contact__link{
	display:inline-block;
	color:#b9975b;
	font-size:.78rem;
	letter-spacing:.1em;
	text-decoration:none;
	text-transform:uppercase;
	transition:color .3s ease;
}

.footer-contact__link:hover,
.footer-contact__link:focus-visible{
	color:#222;
}


/* ==========================================================
   FOOTER BOTTOM BAR
========================================================== */

.site-footer__bottom{
	padding:28px 20px;
	border-top:1px solid rgba(185,151,91,.18);
}

.footer-bottom-container{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	max-width:1280px;
	margin:auto;
}

.footer-copyright{
	margin:0;
	color:#888;
	font-size:.88rem;
}

.footer-back-to-top{
	color:#666;
	text-decoration:none;
	transition:color .3s ease;
}

.footer-back-to-top:hover,
.footer-back-to-top:focus-visible{
	color:#b9975b;
}


/* ==========================================================
   FOOTER — TABLET
========================================================== */

@media(max-width:992px){

	.footer-commission{
		padding:105px 24px 100px;
	}

	.footer-commission__inner{
		max-width:720px;
		padding:50px 45px 55px;
	}

	.footer-container{
		grid-template-columns:1fr;
		gap:55px;
		text-align:center;
	}

	.footer-brand__description{
		margin-inline:auto;
	}

	.footer-bottom-container{
		flex-direction:column;
	}
}


/* ==========================================================
   FOOTER — MOBILE
========================================================== */

@media(max-width:768px){

	.footer-commission{
		padding:88px 20px 82px;
	}

	.footer-commission::after{
		width:470px;
		height:470px;
	}

	.footer-commission__inner{
		padding:43px 10px 48px;
	}

	.footer-commission__inner::before,
	.footer-commission__inner::after{
		width:105px;
	}

	.footer-commission__eyebrow{
		margin-bottom:20px;
		font-size:.68rem;
		letter-spacing:.26em;
	}

	.footer-commission__eyebrow::before{
		margin-bottom:15px;
	}

	.footer-commission__title{
		font-size:clamp(2.7rem,14vw,4rem);
		line-height:1;
	}

	.footer-commission__text{
		margin:25px auto 34px;
		font-size:.98rem;
		line-height:1.8;
	}

	.footer-commission__button{
		width:100%;
		max-width:285px;
		min-width:0;
		padding:16px 22px;
		font-size:.7rem;
	}

	.site-footer__main{
		padding:65px 25px;
	}

	.footer-heading{
		margin-bottom:20px;
	}
}

/* ==========================================================
   NTB LUXURY V3 — UNIFIED HEADER, FOOTER & MOBILE MENU
========================================================== */

.site-header,
.site-header.header-solid,
body:not(.home) .site-header,
.site-header.is-scrolled {
	position: fixed;
	background: #433b34;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border-bottom: 1px solid rgba(222, 179, 109, 0.18);
	box-shadow: 0 12px 34px rgba(31, 23, 17, 0.14);
}

.site-header::after {
	opacity: .72;
}

/* Ensure all non-hero pages begin below the unified fixed header. */
body.inner-page:not(.single-product):not(.page-contact-us):not(.page-contact) #primary {
	padding-top: 118px;
}

.site-footer,
.site-footer__main,
.site-footer__bottom {
	background: #fbfaf7;
}

@media (max-width: 1024px) {
	.site-header,
	.site-header.header-solid,
	body:not(.home) .site-header,
	.site-header.is-scrolled {
		background: #433b34;
	}

	.primary-menu a,
	.main-navigation .menu a {
		font-size: clamp(27px, 6vw, 38px);
		line-height: 1.1;
	}
}

@media (max-width: 767px) {
	.primary-menu a,
	.main-navigation .menu a {
		font-size: clamp(25px, 8vw, 34px);
		padding-top: 11px;
		padding-bottom: 11px;
	}
}
\n\n/* ==========================================================\n   NTB LUXURY V4 — LIGHT UNIFIED HEADER\n========================================================== */\n.site-header,.site-header.header-solid,body:not(.home) .site-header,.site-header.is-scrolled{position:fixed;background:rgba(252,249,244,.97);color:#342c25;backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%);border-bottom:1px solid rgba(132,91,43,.16);box-shadow:0 10px 34px rgba(57,42,29,.075)}\n.site-header::after{height:1px;opacity:.52;background:linear-gradient(90deg,transparent,rgba(183,137,72,.16) 22%,rgba(183,137,72,.38) 50%,rgba(183,137,72,.16) 78%,transparent)}\n.artist-logo{color:#342c25}.artist-logo__signature{color:#b27d39;text-shadow:none}.artist-logo__name,.site-title{color:#342c25;text-shadow:none}.artist-logo__dot{background:#c3934e;box-shadow:0 0 12px rgba(195,147,78,.22)}\n.primary-menu a,.main-navigation .menu a{color:#4a4139}.primary-menu a:hover,.primary-menu a:focus-visible,.primary-menu .current-menu-item>a,.primary-menu .current_page_item>a,.main-navigation .menu a:hover,.main-navigation .menu a:focus-visible,.main-navigation .current-menu-item>a,.main-navigation .current_page_item>a{color:#95662e}\n.menu-toggle{border-color:rgba(85,66,49,.18);background:rgba(255,255,255,.72);color:#3d342d;box-shadow:0 7px 20px rgba(58,42,29,.08);backdrop-filter:none;-webkit-backdrop-filter:none}\n@media(max-width:1024px){.site-header,.site-header.header-solid,body:not(.home) .site-header,.site-header.is-scrolled{background:rgba(252,249,244,.985)}.main-navigation{background:radial-gradient(circle at 50% 0%,rgba(196,148,81,.09),transparent 38%),linear-gradient(145deg,#fbf7f0,#f4ecdf);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.primary-menu a,.main-navigation .menu a{color:#342c25;font-family:var(--font-heading);font-size:clamp(23px,4.8vw,31px);font-weight:500;line-height:1.14;letter-spacing:-.01em}}\n@media(max-width:767px){.primary-menu a,.main-navigation .menu a{padding:10px 22px;font-size:clamp(22px,7vw,28px)}}\n
/*=========================================================
  NTB LUXURY V5 — UNIFIED LIGHT GALLERY HEADER
=========================================================*/
.site-header,
.header-transparent,
.header-solid,
body.home .site-header,
body:not(.home) .site-header,
.site-header.is-scrolled {
    position: sticky;
    top: 0;
    background: rgba(250, 247, 240, 0.96);
    border-bottom: 1px solid rgba(142, 103, 52, 0.16);
    box-shadow: 0 8px 30px rgba(54, 40, 25, 0.055);
    backdrop-filter: blur(18px) saturate(120%);
    -webkit-backdrop-filter: blur(18px) saturate(120%);
}
.admin-bar .site-header { top: 32px; }
.site-header::after {
    background: linear-gradient(90deg, transparent, rgba(181,132,63,.22), transparent);
}
.header-inner { min-height: 88px; }
.artist-logo { color: #2b241e; }
.artist-logo__signature { color: #b27b31; text-shadow: none; }
.artist-logo__name,
.site-title { color: #2b241e; text-shadow: none; }
.artist-logo__dot { background: #c18a3b; box-shadow: none; }
.primary-menu a,
.main-navigation .menu a {
    color: #51483f;
    padding-top: 33px;
    padding-bottom: 32px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .18em;
}
.primary-menu a:hover,
.primary-menu a:focus-visible,
.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a,
.main-navigation .menu a:hover,
.main-navigation .menu a:focus-visible,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a { color: #a86f27; }
.header-contact-button,
.header-inquire-button,
.header-actions .btn {
    min-width: 164px;
    min-height: 48px;
    border-color: rgba(178,123,49,.45);
    background: linear-gradient(135deg,#b77b2d,#d6a14c 55%,#b77b2d);
    box-shadow: 0 8px 22px rgba(133,91,35,.15), inset 0 1px rgba(255,255,255,.35);
}
.menu-toggle span { background: #332b24; }

@media (max-width: 782px) {
    .admin-bar .site-header { top: 46px; }
}

@media (max-width: 960px) {
    .site-header .container { width: min(calc(100% - 34px), var(--container)); }
    .header-inner { min-height: 76px; }
    .artist-logo { min-width: 0; }
    .artist-logo__signature { font-size: 34px; margin-bottom: -8px; }
    .artist-logo__name { font-size: 23px; }
    .artist-logo__dot { right: -10px; bottom: 2px; width: 5px; height: 5px; }
    .main-navigation {
        background: #faf7f0;
        color: #2b241e;
    }
    .main-navigation .menu a,
    .primary-menu a {
        color: #332b24;
        font-size: 15px;
        letter-spacing: .12em;
    }
}


/* ==========================================================
   NTB LUXURY V6 — ARTIST'S PAPER HEADER
   Light, refined, and intentionally more artistic.
========================================================== */

.site-header,
.header-transparent,
.header-solid,
body.home .site-header,
body:not(.home) .site-header,
.site-header.is-scrolled {
	position: sticky;
	top: 0;
	z-index: 9990;

	/*
	 * Layered washes create a very subtle handmade-paper feel
	 * without using an image asset.
	 */
	background:
		radial-gradient(circle at 10% 35%, rgba(201, 154, 84, 0.09), transparent 22%),
		radial-gradient(circle at 88% 70%, rgba(112, 139, 126, 0.045), transparent 19%),
		linear-gradient(115deg, rgba(255,255,255,.76), rgba(249,245,237,.94) 46%, rgba(253,250,244,.98));
	border-bottom: 0;
	box-shadow:
		0 12px 34px rgba(56, 42, 27, 0.055),
		0 1px 0 rgba(121, 82, 40, 0.08);

	backdrop-filter: blur(18px) saturate(115%);
	-webkit-backdrop-filter: blur(18px) saturate(115%);

	isolation: isolate;
	overflow: visible;
}

/*
 * Fine "painted" rule along the bottom edge.
 * Slightly uneven opacity makes it feel less corporate.
 */
.site-header::after {
	content: "";
	position: absolute;
	left: 3%;
	right: 3%;
	bottom: -1px;
	height: 2px;

	background:
		linear-gradient(
			90deg,
			transparent 0%,
			rgba(177, 121, 48, .08) 8%,
			rgba(177, 121, 48, .32) 24%,
			rgba(192, 142, 73, .56) 50%,
			rgba(177, 121, 48, .28) 76%,
			rgba(177, 121, 48, .07) 92%,
			transparent 100%
		);

	filter: blur(.15px);
	transform: rotate(-.06deg);
	opacity: .95;
	pointer-events: none;
}

/* Soft painterly wash behind the artist mark. */
.site-branding {
	position: relative;
	isolation: isolate;
}

.site-branding::before {
	content: "";
	position: absolute;
	z-index: -1;

	width: 124px;
	height: 52px;
	left: -22px;
	top: 50%;

	background:
		radial-gradient(ellipse at center,
			rgba(198, 145, 70, .115) 0%,
			rgba(198, 145, 70, .055) 46%,
			transparent 72%
		);

	transform:
		translateY(-48%)
		rotate(-4deg)
		scaleX(1.22);

	filter: blur(3px);
	pointer-events: none;
}

.header-inner {
	min-height: 90px;
}

/* Logo feels like an artist's signature, not a corporate wordmark. */
.artist-logo {
	position: relative;
	color: #30271f;
}

.artist-logo__signature {
	color: #a86d28;
	text-shadow: none;
	filter: saturate(.96);
}

.artist-logo__name,
.site-title {
	color: #30271f;
	text-shadow: none;
	letter-spacing: .005em;
}

.artist-logo__dot {
	background: #bd8540;
	box-shadow:
		0 0 0 3px rgba(189,133,64,.07),
		0 0 14px rgba(189,133,64,.15);
}

/* Desktop navigation */
.primary-menu,
.main-navigation .menu {
	align-items: stretch;
}

.primary-menu > li,
.main-navigation .menu > li {
	position: relative;
}

.primary-menu a,
.main-navigation .menu a {
	position: relative;

	color: #4b433c;
	padding-top: 34px;
	padding-bottom: 32px;

	font-size: 11px;
	font-weight: 600;
	letter-spacing: .17em;

	transition:
		color .25s ease,
		transform .25s ease;
}

.primary-menu a::after,
.main-navigation .menu a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 23px;

	width: 0;
	height: 5px;

	background:
		linear-gradient(
			90deg,
			rgba(174,112,41,.15),
			rgba(174,112,41,.82) 42%,
			rgba(201,153,83,.62) 72%,
			rgba(174,112,41,.08)
		);

	border-radius: 60% 38% 52% 45%;
	opacity: 0;

	transform:
		translateX(-50%)
		rotate(-1.2deg);

	transition:
		width .28s cubic-bezier(.22,.8,.25,1),
		opacity .22s ease;
}

.primary-menu a:hover,
.primary-menu a:focus-visible,
.main-navigation .menu a:hover,
.main-navigation .menu a:focus-visible {
	color: #985f22;
	transform: translateY(-1px);
}

.primary-menu a:hover::after,
.primary-menu a:focus-visible::after,
.primary-menu .current-menu-item > a::after,
.primary-menu .current_page_item > a::after,
.main-navigation .menu a:hover::after,
.main-navigation .menu a:focus-visible::after,
.main-navigation .current-menu-item > a::after,
.main-navigation .current_page_item > a::after {
	width: 34px;
	opacity: .9;
}

.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
	color: #8d5a22;
}

/* Gold CTA with a restrained brushed-metal / paint effect. */
.header-contact-button,
.header-inquire-button,
.header-actions .btn {
	position: relative;
	overflow: hidden;

	min-width: 164px;
	min-height: 48px;

	border: 1px solid rgba(159, 99, 31, .45);
	border-radius: 1px;

	background:
		linear-gradient(
			112deg,
			#a76a25 0%,
			#c88e3d 25%,
			#dfb064 50%,
			#c18736 72%,
			#a56824 100%
		);

	color: #fffaf1;

	box-shadow:
		0 9px 24px rgba(117, 76, 29, .14),
		inset 0 1px 0 rgba(255,255,255,.28),
		inset 0 -1px 0 rgba(96,55,17,.16);

	letter-spacing: .14em;

	transition:
		transform .25s ease,
		box-shadow .25s ease,
		filter .25s ease;
}

.header-contact-button::before,
.header-inquire-button::before,
.header-actions .btn::before {
	content: "";
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			100deg,
			transparent 0%,
			rgba(255,255,255,.12) 36%,
			rgba(255,255,255,.28) 49%,
			rgba(255,255,255,.04) 61%,
			transparent 100%
		);

	transform: translateX(-120%);
	transition: transform .55s ease;
}

.header-contact-button:hover,
.header-inquire-button:hover,
.header-actions .btn:hover {
	filter: saturate(1.04);
	transform: translateY(-2px);

	box-shadow:
		0 14px 30px rgba(117, 76, 29, .19),
		inset 0 1px 0 rgba(255,255,255,.3);
}

.header-contact-button:hover::before,
.header-inquire-button:hover::before,
.header-actions .btn:hover::before {
	transform: translateX(120%);
}

/* Menu toggle echoes a framed miniature artwork. */
.menu-toggle {
	border: 1px solid rgba(102, 77, 51, .15);
	border-radius: 2px;

	background:
		linear-gradient(145deg, rgba(255,255,255,.92), rgba(244,237,226,.82));

	box-shadow:
		0 7px 20px rgba(58,42,29,.07),
		inset 0 0 0 3px rgba(255,255,255,.35);
}

.menu-toggle span {
	background: #41372f;
}

/* ==========================================================
   MOBILE — ART-GALLERY MENU PANEL
========================================================== */

@media (max-width: 960px) {
	.header-inner {
		min-height: 76px;
	}

	.site-header,
	.header-transparent,
	.header-solid,
	body.home .site-header,
	body:not(.home) .site-header,
	.site-header.is-scrolled {
		background:
			radial-gradient(circle at 7% 30%, rgba(201,154,84,.08), transparent 24%),
			linear-gradient(120deg, rgba(253,250,245,.99), rgba(247,241,232,.985));
	}

	.main-navigation {
		background:
			radial-gradient(circle at 16% 12%, rgba(194,142,72,.10), transparent 25%),
			radial-gradient(circle at 86% 88%, rgba(99,128,116,.045), transparent 22%),
			linear-gradient(145deg, #fbf8f2 0%, #f4ecdf 100%);

		border-top: 1px solid rgba(151,105,48,.10);

		box-shadow:
			inset 0 1px 0 rgba(255,255,255,.65),
			0 22px 45px rgba(57,42,25,.08);
	}

	.main-navigation::before {
		content: "";
		display: block;

		width: 44px;
		height: 4px;
		margin: 20px auto 10px;

		background:
			linear-gradient(
				90deg,
				transparent,
				rgba(176,118,46,.74),
				transparent
			);

		border-radius: 50%;
		transform: rotate(-1.5deg);
	}

	.main-navigation .menu a,
	.primary-menu a {
		color: #342c25;

		font-family: "Cormorant Garamond", Georgia, serif;
		font-size: clamp(24px, 5.4vw, 31px);
		font-weight: 500;
		line-height: 1.06;
		letter-spacing: .015em;

		padding: 10px 22px;
	}

	.main-navigation .menu a::after,
	.primary-menu a::after {
		bottom: 4px;
		height: 4px;
	}

	.main-navigation .menu a:hover::after,
	.primary-menu a:hover::after,
	.main-navigation .current-menu-item > a::after,
	.primary-menu .current-menu-item > a::after {
		width: 42px;
	}

	.site-branding::before {
		width: 104px;
		height: 44px;
		left: -16px;
	}
}

@media (max-width: 600px) {
	.header-inner {
		min-height: 72px;
	}

	.artist-logo__signature {
		font-size: 33px;
	}

	.artist-logo__name {
		font-size: 21px;
	}

	.main-navigation .menu a,
	.primary-menu a {
		font-size: clamp(23px, 7vw, 28px);
	}
}

/* Respect reduced motion. */
@media (prefers-reduced-motion: reduce) {
	.primary-menu a,
	.main-navigation .menu a,
	.primary-menu a::after,
	.main-navigation .menu a::after,
	.header-contact-button,
	.header-contact-button::before,
	.header-inquire-button,
	.header-inquire-button::before {
		transition: none !important;
	}
}
