/* Dormina Child v0.1 */

:root{
	--dormina-bg:#FAF8F4;
	--dormina-bg-soft:#F1ECE5;
	--dormina-footer:#4A382D;
	--dormina-footer-soft:#5A4537;
	--dormina-footer-text:#F3ECE4;
	--dormina-footer-muted:#CDBFB2;
	--dormina-footer-line:rgba(243,236,228,.16);
	--dormina-ink:#28251F;
	--dormina-muted:#756D64;
	--dormina-line:#E1DAD1;
	--dormina-accent:#89715C;
	--dormina-serif:"Cormorant Garamond", Georgia, serif;
	--dormina-sans:"Manrope", Arial, sans-serif;
	--dormina-header-h:82px;
}

.dormina-site-header *,
.dormina-site-footer *{
	box-sizing:border-box;
}

.dormina-skip-link{
	position:fixed;
	top:10px;
	left:10px;
	transform:translateY(-150%);
	z-index:999999;
	background:var(--dormina-ink);
	color:#fff!important;
	padding:12px 16px;
	font:600 13px/1 var(--dormina-sans);
	text-decoration:none!important;
}
.dormina-skip-link:focus{transform:none;}

.dormina-site-header{
	position:sticky;
	top:0;
	z-index:9990;
	width:100%;
	background:rgba(250,248,244,.985);
	border-bottom:1px solid rgba(137,113,92,.22);
	box-shadow:0 6px 18px rgba(73,55,43,.04);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
}

.dormina-header-inner{
	width:min(calc(100% - 48px),1640px);
	height:var(--dormina-header-h);
	margin:0 auto;
	display:grid;
	grid-template-columns:minmax(210px,1fr) auto minmax(210px,1fr);
	align-items:center;
	gap:30px;
}

.dormina-header-logo{
	justify-self:start;
	line-height:0;
}
.dormina-header-logo .custom-logo-link,
.dormina-footer-logo .custom-logo-link{
	display:inline-flex;
	align-items:center;
}
.dormina-header-logo .custom-logo{
	width:auto;
	max-height:36px;
}
.dormina-wordmark{
	color:var(--dormina-ink)!important;
	font:500 28px/1 var(--dormina-serif);
	letter-spacing:.24em;
	text-decoration:none!important;
	text-transform:uppercase;
}

.dormina-desktop-nav{justify-self:center;}
.dormina-nav-list,
.dormina-mobile-nav-list,
.dormina-footer-menu{
	list-style:none;
	padding:0;
	margin:0;
}
.dormina-nav-list{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:clamp(18px,1.8vw,34px);
}
.dormina-nav-list li{position:relative;margin:0;}
.dormina-nav-list a{
	display:block;
	padding:31px 0 29px;
	color:var(--dormina-ink)!important;
	font:600 12px/1 var(--dormina-sans);
	letter-spacing:.06em;
	text-transform:uppercase;
	text-decoration:none!important;
	white-space:nowrap;
}
.dormina-nav-list > li > a:after{
	content:"";
	position:absolute;
	left:0;
	right:100%;
	bottom:22px;
	height:1px;
	background:var(--dormina-accent);
	transition:right .22s ease;
}
.dormina-nav-list > li:hover > a:after,
.dormina-nav-list > li.current-menu-item > a:after,
.dormina-nav-list > li.current-menu-ancestor > a:after{right:0;}

.dormina-nav-list .sub-menu{
	position:absolute;
	left:-22px;
	top:100%;
	min-width:210px;
	list-style:none;
	padding:14px 22px;
	margin:0;
	background:var(--dormina-bg);
	border:1px solid var(--dormina-line);
	opacity:0;
	visibility:hidden;
	transform:translateY(6px);
	transition:.18s ease;
}
.dormina-nav-list li:hover > .sub-menu,
.dormina-nav-list li:focus-within > .sub-menu{
	opacity:1;
	visibility:visible;
	transform:none;
}
.dormina-nav-list .sub-menu a{
	padding:10px 0;
	font-size:12px;
	text-transform:none;
	letter-spacing:0;
}

.dormina-header-actions{
	justify-self:end;
	display:flex;
	align-items:center;
	gap:14px;
}
.dormina-header-action,
.dormina-mobile-menu-toggle{
	position:relative;
	width:40px;
	height:40px;
	display:grid;
	place-items:center;
	border:0;
	background:transparent;
	color:var(--dormina-ink)!important;
	padding:0;
	text-decoration:none!important;
	cursor:pointer;
}
.dormina-icon{
	display:inline-flex;
	width:21px;
	height:21px;
}
.dormina-icon svg{
	width:100%;
	height:100%;
	fill:none;
	stroke:currentColor;
	stroke-width:1.45;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.dormina-cart-count{
	position:absolute;
	top:1px;
	right:0;
	min-width:17px;
	height:17px;
	padding:0 4px;
	display:grid;
	place-items:center;
	border-radius:99px;
	background:var(--dormina-ink);
	color:#fff;
	font:600 9px/1 var(--dormina-sans);
}
.dormina-mobile-menu-toggle{display:none;}

.dormina-mobile-panel{display:none;}

/* FOOTER */
.dormina-site-footer{
	background:var(--dormina-footer);
	color:var(--dormina-footer-text);
	border-top:1px solid rgba(40,37,31,.12);
}

.dormina-footer-main{
	width:min(calc(100% - 56px),1500px);
	margin:0 auto;
	padding:84px 0 78px;
	display:grid;
	grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(150px,.72fr));
	gap:clamp(36px,5vw,90px);
}
.dormina-footer-brand{
	max-width:390px;
}
.dormina-footer-logo{
	margin-bottom:25px;
}
.dormina-footer-logo .custom-logo{
	width:auto;
	max-height:34px;
}
.dormina-footer-brand p{
	margin:0 0 26px;
	color:var(--dormina-footer-muted);
	font:400 14px/1.75 var(--dormina-sans);
}
.dormina-footer-values-link{
	display:inline-flex;
	align-items:center;
	gap:9px;
	color:var(--dormina-footer-text)!important;
	font:600 11px/1.4 var(--dormina-sans);
	letter-spacing:.04em;
	text-transform:uppercase;
	text-decoration:none!important;
	border-bottom:1px solid rgba(243,236,228,.48);
	padding-bottom:4px;
}
.dormina-footer-values-link .dormina-icon{width:16px;height:16px;}

.dormina-footer-column h2{
	margin:0 0 20px;
	color:var(--dormina-footer-text);
	font:500 21px/1 var(--dormina-serif);
}
.dormina-footer-menu li{margin:0 0 11px;}
.dormina-footer-menu a{
	color:var(--dormina-footer-muted)!important;
	font:400 12px/1.5 var(--dormina-sans);
	text-decoration:none!important;
	transition:color .18s ease;
}
.dormina-footer-menu a:hover,
.dormina-footer-menu a:focus{color:var(--dormina-footer-text)!important;}

.dormina-footer-bottom{
	border-top:1px solid var(--dormina-footer-line);
	padding:18px max(28px,calc((100% - 1500px)/2));
	display:flex;
	justify-content:space-between;
	gap:24px;
	color:var(--dormina-footer-muted);
	font:400 10px/1.5 var(--dormina-sans);
}
.dormina-footer-bottom p{margin:0;}

/* focus */
.dormina-site-header a:focus-visible,
.dormina-site-header button:focus-visible,
.dormina-site-footer a:focus-visible{
	outline:1px solid var(--dormina-accent);
	outline-offset:4px;
}

/* medium */
@media(max-width:1180px){
	.dormina-header-inner{
		grid-template-columns:auto 1fr auto;
	}
	.dormina-nav-list{gap:17px;}
	.dormina-nav-list a{font-size:11px;}
	.dormina-footer-main{
		grid-template-columns:1.25fr repeat(3,.75fr);
		gap:32px;
	}
}

/* mobile/tablet */
@media(max-width:920px){
	:root{--dormina-header-h:64px;}

	body.dormina-menu-open{overflow:hidden;}

	.dormina-header-inner{
		width:calc(100% - 28px);
		grid-template-columns:44px 1fr auto;
		gap:8px;
	}
	.dormina-mobile-menu-toggle{
		display:grid;
		justify-self:start;
	}
	.dormina-icon-close{display:none;}
	.dormina-site-header.is-menu-open .dormina-icon-menu{display:none;}
	.dormina-site-header.is-menu-open .dormina-icon-close{display:inline-flex;}

	.dormina-header-logo{
		justify-self:center;
	}
	.dormina-header-logo .custom-logo{max-height:24px;}
	.dormina-wordmark{font-size:21px;}

	.dormina-desktop-nav{display:none;}
	.dormina-account-link{display:none;}
	.dormina-header-actions{gap:4px;}

	.dormina-site-header{
		backdrop-filter:none;
		-webkit-backdrop-filter:none;
	}

	.dormina-mobile-panel{
		position:absolute;
		top:100%;
		left:0;
		right:0;
		width:100%;
		height:calc(100dvh - var(--dormina-header-h));
		min-height:calc(100vh - var(--dormina-header-h));
		z-index:9995;
		overflow-y:auto;
		overflow-x:hidden;
		overscroll-behavior:contain;
		background:var(--dormina-bg);
		padding:30px 24px 32px;
		box-shadow:0 18px 32px rgba(73,55,43,.08);
	}
	.dormina-mobile-panel:not([hidden]){
		display:flex;
		flex-direction:column;
	}

	.dormina-mobile-nav-list > li{
		margin:0;
		border-bottom:1px solid var(--dormina-line);
	}
	.dormina-mobile-nav-list > li > a{
		display:block;
		padding:17px 0 15px;
		color:var(--dormina-ink)!important;
		font:500 29px/1 var(--dormina-serif);
		text-decoration:none!important;
	}
	.dormina-mobile-nav-list .sub-menu{
		list-style:none;
		padding:0 0 12px 16px;
		margin:0;
	}
	.dormina-mobile-nav-list .sub-menu a{
		display:block;
		padding:7px 0;
		color:var(--dormina-muted)!important;
		font:500 12px/1.4 var(--dormina-sans);
		text-decoration:none!important;
	}

	.dormina-mobile-panel-footer{
		margin-top:auto;
		padding-top:28px;
		display:flex;
		flex-direction:column;
		gap:11px;
	}
	.dormina-mobile-panel-footer a{
		color:var(--dormina-muted)!important;
		font:500 11px/1.4 var(--dormina-sans);
		text-transform:uppercase;
		letter-spacing:.05em;
		text-decoration:none!important;
	}


	.dormina-footer-main{
		width:calc(100% - 40px);
		padding:54px 0;
		grid-template-columns:1.35fr 1fr 1fr;
		gap:36px 24px;
	}
	.dormina-footer-brand{
		grid-column:1/-1;
		max-width:500px;
	}
}

/* small mobile */
@media(max-width:600px){

	.dormina-footer-main{
		width:calc(100% - 36px);
		padding:46px 0;
		grid-template-columns:1fr 1fr;
		gap:36px 20px;
	}
	.dormina-footer-brand{grid-column:1/-1;}
	.dormina-footer-column:last-child{grid-column:1/-1;}

	.dormina-footer-bottom{
		padding:17px 18px;
		flex-direction:column;
		gap:5px;
	}
}


/* v0.3 mobile menu hardening */
@media(max-width:920px){
	.dormina-mobile-panel .dormina-nav-list,
	.dormina-mobile-panel .dormina-mobile-nav-list{
		display:block!important;
		width:100%!important;
	}
	.dormina-mobile-panel .dormina-nav-list > li,
	.dormina-mobile-panel .dormina-mobile-nav-list > li{
		display:block!important;
		width:100%!important;
	}
	.dormina-mobile-panel .dormina-nav-list > li > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a{
		display:block!important;
		width:100%!important;
		padding:17px 0 15px!important;
		color:var(--dormina-ink)!important;
		font:500 29px/1 var(--dormina-serif)!important;
		letter-spacing:0!important;
		text-transform:none!important;
		text-decoration:none!important;
	}
	.dormina-mobile-panel .dormina-nav-list > li > a:after{
		display:none!important;
	}
}


/* v0.4 — dark Dormina header */
.dormina-site-header{
	color:var(--dormina-footer-text);
}
.dormina-site-header .dormina-wordmark,
.dormina-site-header .dormina-nav-list a,
.dormina-site-header .dormina-header-action,
.dormina-site-header .dormina-mobile-menu-toggle{
	color:var(--dormina-footer-text)!important;
}
.dormina-site-header .custom-logo{
	filter:brightness(0) invert(1);
}
.dormina-site-header .dormina-nav-list > li > a:after{
	background:var(--dormina-footer-text);
	opacity:.65;
}
.dormina-site-header .dormina-nav-list .sub-menu{
	background:var(--dormina-footer-soft);
	border-color:var(--dormina-footer-line);
	box-shadow:0 18px 40px rgba(22,15,11,.16);
}
.dormina-site-header .dormina-nav-list .sub-menu a{
	color:var(--dormina-footer-text)!important;
}
.dormina-site-header .dormina-cart-count{
	background:var(--dormina-footer-text);
	color:var(--dormina-footer)!important;
}


/* v0.4 — mobile navigation, explicitly styled so Astra/WordPress cannot wash it out */
@media(max-width:920px){
	.dormina-site-header{
		background:var(--dormina-footer)!important;
		border-bottom-color:var(--dormina-footer-line)!important;
	}

	.dormina-mobile-panel{
		background:var(--dormina-footer)!important;
		color:var(--dormina-footer-text)!important;
		box-shadow:0 22px 40px rgba(20,14,10,.18);
	}

	.dormina-mobile-panel nav,
	.dormina-mobile-panel ul,
	.dormina-mobile-panel li{
		background:transparent!important;
		color:var(--dormina-footer-text)!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list,
	.dormina-mobile-panel .dormina-nav-list{
		display:block!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
		list-style:none!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li,
	.dormina-mobile-panel .dormina-nav-list > li{
		display:block!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
		border:0!important;
		border-bottom:1px solid var(--dormina-footer-line)!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a,
	.dormina-mobile-panel .dormina-nav-list > li > a,
	.dormina-mobile-panel nav ul li a{
		display:flex!important;
		align-items:center!important;
		width:100%!important;
		min-height:60px!important;
		margin:0!important;
		padding:17px 2px 16px!important;
		background:transparent!important;
		color:var(--dormina-footer-text)!important;
		font-family:var(--dormina-serif)!important;
		font-size:30px!important;
		font-weight:500!important;
		line-height:1.05!important;
		letter-spacing:0!important;
		text-transform:none!important;
		text-decoration:none!important;
		opacity:1!important;
		visibility:visible!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:focus,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a,
	.dormina-mobile-panel .dormina-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-nav-list > li > a:focus{
		color:#FFF8F0!important;
		padding-left:8px!important;
	}

	.dormina-mobile-panel .sub-menu{
		position:static!important;
		display:block!important;
		visibility:visible!important;
		opacity:1!important;
		transform:none!important;
		width:100%!important;
		min-width:0!important;
		margin:0!important;
		padding:0 0 12px 14px!important;
		background:transparent!important;
		border:0!important;
		box-shadow:none!important;
	}

	.dormina-mobile-panel .sub-menu li{
		border:0!important;
	}

	.dormina-mobile-panel .sub-menu a{
		display:block!important;
		min-height:0!important;
		padding:8px 0!important;
		color:var(--dormina-footer-muted)!important;
		font-family:var(--dormina-sans)!important;
		font-size:12px!important;
		font-weight:500!important;
		line-height:1.4!important;
		text-transform:none!important;
		letter-spacing:.02em!important;
	}

	.dormina-mobile-panel-footer{
		border-top:1px solid var(--dormina-footer-line);
		padding-top:24px!important;
	}
	.dormina-mobile-panel-footer a{
		color:var(--dormina-footer-muted)!important;
	}
}


/* v0.5 — compact light header overrides */
.dormina-site-header{
	background:rgba(250,248,244,.985)!important;
	color:var(--dormina-ink)!important;
	border-bottom:1px solid rgba(137,113,92,.22)!important;
	box-shadow:0 6px 18px rgba(73,55,43,.04)!important;
}
.dormina-site-header .dormina-wordmark,
.dormina-site-header .dormina-nav-list a,
.dormina-site-header .dormina-header-action,
.dormina-site-header .dormina-mobile-menu-toggle{
	color:var(--dormina-ink)!important;
}
.dormina-site-header .custom-logo{
	filter:none!important;
}
.dormina-site-header .dormina-nav-list > li > a:after{
	background:var(--dormina-accent)!important;
	opacity:.85;
}
.dormina-site-header .dormina-nav-list .sub-menu{
	background:var(--dormina-bg)!important;
	border-color:var(--dormina-line)!important;
	box-shadow:0 16px 34px rgba(73,55,43,.08)!important;
}
.dormina-site-header .dormina-nav-list .sub-menu a{
	color:var(--dormina-ink)!important;
}
.dormina-site-header .dormina-cart-count{
	background:var(--dormina-ink)!important;
	color:#fff!important;
}

/* Wide screens: keep the header restrained */
@media(min-width:1500px){
	.dormina-header-inner{
		height:70px;
	}
	.dormina-header-logo .custom-logo{
		max-height:28px;
	}
	.dormina-wordmark{
		font-size:23px;
	}
	.dormina-nav-list{
		gap:clamp(22px,1.55vw,30px);
	}
	.dormina-nav-list a{
		font-size:10px;
		padding-top:25px;
		padding-bottom:23px;
	}
}

/* Mobile: retain v0.4 menu mechanics, return the palette to light beige */
@media(max-width:920px){
	.dormina-site-header{
		background:var(--dormina-bg)!important;
	}
	.dormina-mobile-panel{
		background:var(--dormina-bg)!important;
		color:var(--dormina-ink)!important;
		box-shadow:0 18px 34px rgba(73,55,43,.08)!important;
	}
	.dormina-mobile-panel nav,
	.dormina-mobile-panel ul,
	.dormina-mobile-panel li{
		background:transparent!important;
		color:var(--dormina-ink)!important;
	}
	.dormina-mobile-panel .dormina-mobile-nav-list > li,
	.dormina-mobile-panel .dormina-nav-list > li{
		border-bottom:1px solid var(--dormina-line)!important;
	}
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a,
	.dormina-mobile-panel .dormina-nav-list > li > a,
	.dormina-mobile-panel nav ul li a{
		color:var(--dormina-ink)!important;
		font-size:28px!important;
	}
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:focus,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a,
	.dormina-mobile-panel .dormina-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-nav-list > li > a:focus{
		color:var(--dormina-accent)!important;
	}
	.dormina-mobile-panel .sub-menu a,
	.dormina-mobile-panel-footer a{
		color:var(--dormina-muted)!important;
	}
	.dormina-mobile-panel-footer{
		border-top:1px solid var(--dormina-line)!important;
	}
}




/* ==========================================================
   Dormina Child v0.9 — refined mobile menu typography
   ========================================================== */

@media(max-width:920px){

	/* Slightly calmer menu canvas */
	.dormina-mobile-panel{
		padding:22px 22px 28px!important;
	}

	/* Primary navigation: Manrope instead of the oversized serif */
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a,
	.dormina-mobile-panel .dormina-nav-list > li > a,
	.dormina-mobile-panel nav > ul > li > a{
		display:flex!important;
		align-items:center!important;
		width:100%!important;
		min-height:52px!important;
		padding:15px 0 14px!important;
		color:var(--dormina-ink)!important;
		font-family:var(--dormina-sans)!important;
		font-size:16px!important;
		font-weight:550!important;
		line-height:1.35!important;
		letter-spacing:.015em!important;
		text-transform:none!important;
		text-decoration:none!important;
	}

	/* Current/hover state without the old "jump to the right" effect */
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:focus,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a,
	.dormina-mobile-panel .dormina-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-nav-list > li > a:focus{
		padding-left:0!important;
		color:var(--dormina-accent)!important;
	}

	/* Active item gets a subtle editorial marker instead of oversized typography */
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a{
		position:relative;
		font-weight:650!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a::after,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a::after{
		content:"";
		width:20px;
		height:1px;
		margin-left:auto;
		background:var(--dormina-accent);
		opacity:.75;
	}

	/* Submenu items: clearly secondary, but still comfortably readable */
	.dormina-mobile-panel .sub-menu{
		padding:2px 0 12px 14px!important;
	}

	.dormina-mobile-panel .sub-menu a{
		min-height:0!important;
		padding:8px 0!important;
		color:var(--dormina-muted)!important;
		font-family:var(--dormina-sans)!important;
		font-size:12.5px!important;
		font-weight:450!important;
		line-height:1.45!important;
		letter-spacing:.01em!important;
		text-transform:none!important;
	}

	/* Utility links at the bottom should not compete with main navigation */
	.dormina-mobile-panel-footer{
		gap:9px!important;
		padding-top:20px!important;
	}

	.dormina-mobile-panel-footer a{
		font-family:var(--dormina-sans)!important;
		font-size:10px!important;
		font-weight:550!important;
		line-height:1.4!important;
		letter-spacing:.08em!important;
		text-transform:uppercase!important;
	}
}

/* Very small phones: keep line lengths and touch targets comfortable */
@media(max-width:390px){
	.dormina-mobile-panel{
		padding-left:18px!important;
		padding-right:18px!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a,
	.dormina-mobile-panel .dormina-nav-list > li > a,
	.dormina-mobile-panel nav > ul > li > a{
		font-size:15px!important;
		min-height:50px!important;
	}
}


/* ==========================================================
   Dormina Child v1.1 — compact mobile menu, safe mechanics
   ========================================================== */

@media(max-width:920px){

	/* CRITICAL: hidden must always win. This keeps hamburger/X functional. */
	.dormina-mobile-panel[hidden]{
		display:none!important;
	}

	.dormina-mobile-panel:not([hidden]){
		display:flex!important;
		flex-direction:column!important;
	}

	body.dormina-menu-open{
		overflow:hidden!important;
	}

	/* Panel starts BELOW the existing 64px header. */
	.dormina-mobile-panel{
		position:absolute!important;
		top:100%!important;
		left:0!important;
		right:0!important;
		width:100%!important;
		height:calc(100dvh - var(--dormina-header-h))!important;
		min-height:0!important;
		max-height:calc(100dvh - var(--dormina-header-h))!important;
		padding:12px 18px 14px!important;
		overflow-x:hidden!important;
		overflow-y:auto!important;
		overscroll-behavior:contain!important;
		background:var(--dormina-bg)!important;
	}

	.dormina-mobile-nav{
		flex:0 0 auto!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list{
		display:block!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
		list-style:none!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li{
		display:block!important;
		width:100%!important;
		margin:0!important;
		padding:0!important;
		border-bottom:1px solid rgba(40,37,31,.12)!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a{
		display:flex!important;
		align-items:center!important;
		width:100%!important;
		min-height:44px!important;
		margin:0!important;
		padding:10px 0 9px!important;
		color:var(--dormina-ink)!important;
		font-family:var(--dormina-sans)!important;
		font-size:14px!important;
		font-weight:550!important;
		line-height:1.25!important;
		letter-spacing:.005em!important;
		text-transform:none!important;
		text-decoration:none!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:hover,
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a:focus,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-item > a,
	.dormina-mobile-panel .dormina-mobile-nav-list > li.current-menu-ancestor > a{
		padding-left:0!important;
		color:var(--dormina-accent)!important;
	}

	/* Compact submenu if one is used later. */
	.dormina-mobile-panel .sub-menu{
		position:static!important;
		display:block!important;
		visibility:visible!important;
		opacity:1!important;
		transform:none!important;
		width:100%!important;
		min-width:0!important;
		margin:0!important;
		padding:0 0 6px 12px!important;
		background:transparent!important;
		border:0!important;
		box-shadow:none!important;
	}

	.dormina-mobile-panel .sub-menu a{
		display:block!important;
		min-height:0!important;
		padding:5px 0!important;
		color:var(--dormina-muted)!important;
		font-family:var(--dormina-sans)!important;
		font-size:11px!important;
		font-weight:450!important;
		line-height:1.35!important;
		text-transform:none!important;
		letter-spacing:0!important;
	}

	/* Utility links sit at the bottom, but stay compact. */
	.dormina-mobile-panel-footer{
		flex:0 0 auto!important;
		margin-top:auto!important;
		padding-top:12px!important;
		border-top:1px solid rgba(40,37,31,.12)!important;
		display:grid!important;
		grid-template-columns:1fr 1fr!important;
		gap:6px 14px!important;
	}

	.dormina-mobile-panel-footer a{
		display:block!important;
		margin:0!important;
		padding:4px 0!important;
		color:var(--dormina-muted)!important;
		font-family:var(--dormina-sans)!important;
		font-size:9px!important;
		font-weight:550!important;
		line-height:1.25!important;
		letter-spacing:.07em!important;
		text-transform:uppercase!important;
		text-decoration:none!important;
	}

	/* Keep the header itself unchanged and clickable. */
	.dormina-mobile-menu-toggle{
		position:relative!important;
		z-index:10001!important;
	}
}

/* Shorter phones: still fit without making text microscopic. */
@media(max-width:920px) and (max-height:720px){
	.dormina-mobile-panel{
		padding-top:7px!important;
		padding-bottom:8px!important;
	}

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a{
		min-height:39px!important;
		padding:8px 0 7px!important;
		font-size:13px!important;
	}

	.dormina-mobile-panel-footer{
		padding-top:8px!important;
	}

	.dormina-mobile-panel-footer a{
		font-size:8.5px!important;
		padding:3px 0!important;
	}
}


/* ==========================================================
   Dormina Child v1.2 — większe menu + wyróżnione linki pomocnicze
   ========================================================== */

@media(max-width:920px){

	/* Główne menu: trochę większe i bardziej oddechowe niż v1.1 */
	.dormina-mobile-panel .dormina-mobile-nav-list > li > a{
		min-height:49px!important;
		padding:12px 0 11px!important;
		font-size:15.5px!important;
		line-height:1.28!important;
		font-weight:550!important;
		letter-spacing:.006em!important;
	}

	/* Delikatnie większy odstęp całego bloku menu */
	.dormina-mobile-nav{
		margin-top:4px!important;
	}

	/* Dolna sekcja jest wyraźnie oddzielona od głównej nawigacji */
	.dormina-mobile-panel-footer{
		margin-top:auto!important;
		padding-top:14px!important;
		border-top:1px solid rgba(137,113,92,.34)!important;
		grid-template-columns:1fr!important;
		gap:2px!important;
	}

	/* Linki dodatkowe: większe, czytelniejsze i w kolorze akcentowym */
	.dormina-mobile-panel-footer a{
		position:relative;
		display:flex!important;
		align-items:center!important;
		min-height:36px!important;
		padding:7px 0!important;
		color:var(--dormina-accent)!important;
		font-family:var(--dormina-sans)!important;
		font-size:11.5px!important;
		font-weight:600!important;
		line-height:1.3!important;
		letter-spacing:.055em!important;
		text-transform:uppercase!important;
		text-decoration:none!important;
	}

	.dormina-mobile-panel-footer a::before{
		content:"";
		width:7px;
		height:7px;
		margin-right:9px;
		border-radius:50%;
		background:var(--dormina-accent);
		opacity:.72;
		flex:0 0 auto;
	}

	.dormina-mobile-panel-footer a:hover,
	.dormina-mobile-panel-footer a:focus{
		color:var(--dormina-ink)!important;
	}

	.dormina-mobile-panel-footer a:hover::before,
	.dormina-mobile-panel-footer a:focus::before{
		opacity:1;
	}

}

/* Na niższych ekranach nadal zachowujemy jeden ekran, ale nie robimy ich mikroskopijnych. */
@media(max-width:920px) and (max-height:720px){

	.dormina-mobile-panel .dormina-mobile-nav-list > li > a{
		min-height:43px!important;
		padding:9px 0 8px!important;
		font-size:14.5px!important;
	}

	.dormina-mobile-panel-footer{
		padding-top:9px!important;
	}

	.dormina-mobile-panel-footer a{
		min-height:31px!important;
		padding:5px 0!important;
		font-size:10.5px!important;
	}
}


/* ==========================================================
   Dormina Child v1.3 — logo x1.5 desktop + mobile
   ========================================================== */

/* Desktop header logo */
@media(min-width:921px){
	.dormina-header .custom-logo-link img,
	.dormina-header .dormina-logo img,
	.dormina-desktop-header .custom-logo-link img,
	.dormina-desktop-header .dormina-logo img{
		max-height:54px!important;
		height:auto!important;
		width:auto!important;
	}
}

/* Mobile header logo */
@media(max-width:920px){
	.dormina-header .custom-logo-link img,
	.dormina-header .dormina-logo img,
	.dormina-mobile-header .custom-logo-link img,
	.dormina-mobile-header .dormina-logo img,
	.dormina-mobile-panel .dormina-mobile-logo img,
	.dormina-mobile-panel .custom-logo-link img{
		max-height:37.5px!important;
		height:auto!important;
		width:auto!important;
	}
}


/* ==========================================================
   Dormina Child v1.5 — footer socials + newsletter
   ========================================================== */

.dormina-footer-main{
	grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(130px,.62fr)) minmax(270px,1.15fr)!important;
	gap:clamp(28px,3.6vw,64px)!important;
}

.dormina-footer-socials{
	display:flex;
	align-items:center;
	gap:10px;
	margin-top:28px;
}

.dormina-footer-social{
	display:grid;
	place-items:center;
	width:34px;
	height:34px;
	border:1px solid rgba(243,236,228,.22);
	border-radius:50%;
	color:var(--dormina-footer-text)!important;
	text-decoration:none!important;
	transition:background .18s ease,border-color .18s ease,opacity .18s ease;
}

.dormina-footer-social svg{
	width:15px;
	height:15px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.45;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.dormina-footer-social svg path:not([fill="none"]){
	fill:currentColor;
	stroke:none;
}

.dormina-footer-social:hover,
.dormina-footer-social:focus-visible{
	background:rgba(243,236,228,.09);
	border-color:rgba(243,236,228,.5);
}

.dormina-footer-social.is-placeholder{
	opacity:.38;
	cursor:default;
}

.dormina-footer-newsletter{
	min-width:0;
}

.dormina-footer-newsletter h2{
	margin:0 0 12px;
	color:var(--dormina-footer-text);
	font:500 21px/1 var(--dormina-serif);
}

.dormina-footer-newsletter > p{
	max-width:330px;
	margin:0 0 18px;
	color:var(--dormina-footer-muted);
	font:400 11px/1.55 var(--dormina-sans);
}

.dormina-newsletter-field{
	display:grid;
	grid-template-columns:minmax(0,1fr) 46px;
	border:1px solid rgba(243,236,228,.34);
	background:rgba(255,255,255,.025);
}

.dormina-newsletter-field input{
	width:100%!important;
	min-width:0!important;
	height:46px!important;
	margin:0!important;
	padding:0 14px!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	box-shadow:none!important;
	color:var(--dormina-footer-text)!important;
	font:400 11px/1 var(--dormina-sans)!important;
}

.dormina-newsletter-field input::placeholder{
	color:rgba(243,236,228,.58)!important;
}

.dormina-newsletter-field button{
	display:grid!important;
	place-items:center!important;
	width:46px!important;
	height:46px!important;
	min-height:0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-left:1px solid rgba(243,236,228,.24)!important;
	border-radius:0!important;
	background:rgba(243,236,228,.08)!important;
	color:var(--dormina-footer-text)!important;
	box-shadow:none!important;
	cursor:pointer!important;
}

.dormina-newsletter-field button:hover{
	background:var(--dormina-footer-text)!important;
	color:var(--dormina-footer)!important;
}

.dormina-newsletter-field button svg{
	width:17px;
	height:17px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.5;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.dormina-newsletter-field button:disabled{
	opacity:.55!important;
	cursor:wait!important;
}

.dormina-newsletter-consent{
	display:flex;
	align-items:flex-start;
	gap:8px;
	margin-top:11px;
	color:rgba(243,236,228,.62);
	font:400 8.5px/1.45 var(--dormina-sans);
	cursor:pointer;
}

.dormina-newsletter-consent input{
	flex:0 0 auto;
	width:13px!important;
	height:13px!important;
	margin:1px 0 0!important;
	accent-color:#E8DED4;
}

.dormina-newsletter-consent a{
	color:rgba(243,236,228,.8)!important;
	text-decoration:underline!important;
	text-underline-offset:2px;
}

.dormina-newsletter-hp{
	position:absolute!important;
	left:-9999px!important;
	width:1px!important;
	height:1px!important;
	opacity:0!important;
	pointer-events:none!important;
}

.dormina-newsletter-status{
	min-height:18px;
	margin-top:9px;
	color:var(--dormina-footer-muted);
	font:500 9px/1.4 var(--dormina-sans);
}

.dormina-newsletter-status.is-success{
	color:#DDD9CB;
}

.dormina-newsletter-status.is-error{
	color:#E3BDB4;
}

@media(max-width:1180px){
	.dormina-footer-main{
		grid-template-columns:1.15fr repeat(2,.72fr) 1.1fr!important;
		gap:40px 28px!important;
	}

	.dormina-footer-brand{
		grid-column:1/-1;
		max-width:620px;
	}

	.dormina-footer-column:nth-of-type(4){
		grid-column:auto;
	}

	.dormina-footer-newsletter{
		grid-column:4;
	}
}

@media(max-width:920px){
	.dormina-footer-main{
		grid-template-columns:1fr 1fr!important;
		gap:34px 24px!important;
	}

	.dormina-footer-brand{
		grid-column:1/-1!important;
	}

	.dormina-footer-newsletter{
		grid-column:1/-1!important;
		max-width:520px;
	}

	.dormina-footer-socials{
		margin-top:23px;
	}
}

@media(max-width:600px){
	.dormina-footer-main{
		grid-template-columns:1fr 1fr!important;
		gap:34px 18px!important;
	}

	.dormina-footer-brand,
	.dormina-footer-newsletter{
		grid-column:1/-1!important;
	}

	.dormina-footer-newsletter{
		padding-top:2px;
	}

	.dormina-footer-social{
		width:32px;
		height:32px;
	}

	.dormina-newsletter-field{
		grid-template-columns:minmax(0,1fr) 44px;
	}

	.dormina-newsletter-field input,
	.dormina-newsletter-field button{
		height:44px!important;
	}

	.dormina-newsletter-field button{
		width:44px!important;
	}
}

/* ==========================================================
   Dormina Child v1.7 — czytelniejszy desktop header
   ========================================================== */
@media(min-width:921px){
	:root{--dormina-header-h:82px;}

	.dormina-header-inner{
		height:82px!important;
		grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr)!important;
		gap:30px!important;
	}

	.dormina-header-logo .custom-logo{
		max-height:38px!important;
		width:auto!important;
	}

	.dormina-wordmark{
		font-size:29px!important;
		letter-spacing:.23em!important;
	}

	.dormina-nav-list{
		gap:clamp(22px,1.8vw,36px)!important;
	}

	.dormina-nav-list > li > a{
		font-size:12.5px!important;
		font-weight:600!important;
		letter-spacing:.055em!important;
		padding:30px 0 28px!important;
	}

	.dormina-nav-list > li > a:after{
		bottom:22px!important;
	}

	.dormina-nav-list .sub-menu{
		min-width:220px!important;
		padding:15px 22px!important;
	}

	.dormina-nav-list .sub-menu a{
		font-size:12px!important;
		padding:11px 0!important;
	}

	.dormina-header-action{
		width:42px!important;
		height:42px!important;
	}

	.dormina-header-action .dormina-icon{
		width:22px!important;
		height:22px!important;
	}
}

/* Mniejsze laptopy: nadal czytelniej niż wcześniej, ale bez ścisku. */
@media(min-width:921px) and (max-width:1240px){
	:root{--dormina-header-h:78px;}

	.dormina-header-inner{
		height:78px!important;
		grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr)!important;
		gap:20px!important;
	}

	.dormina-header-logo .custom-logo{max-height:34px!important;}
	.dormina-wordmark{font-size:26px!important;}
	.dormina-nav-list{gap:16px!important;}
	.dormina-nav-list > li > a{
		font-size:11.5px!important;
		padding:28px 0 26px!important;
	}
	.dormina-nav-list > li > a:after{bottom:20px!important;}
}
