/* Home redesign matched to the uploaded RPPLawata reference. */
:root {
	--lawata-red-950: #690704;
	--lawata-red-900: #820905;
	--lawata-red-800: #a20f0b;
	--lawata-red-700: #c91a16;
	--lawata-gold: #ffc928;
	--lawata-gold-deep: #f0a80d;
	--lawata-cream: #fff8ee;
	--lawata-surface: #fffdf9;
	--lawata-text: #161616;
	--lawata-muted: #62524c;
	--lawata-border: rgba(117, 23, 12, 0.08);
	--lawata-shadow: 0 20px 45px rgba(86, 24, 12, 0.12);
	--lawata-shadow-strong: 0 30px 80px rgba(89, 20, 8, 0.22);
	--lawata-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

body {
	background: #4b0304;
	color: var(--lawata-text);
}

body>nav,
.lawata-page {
	width: 100%;
	margin-inline: auto;
}

.site-loader {
	position: fixed;
	inset: 0;
	z-index: 20000;
	display: grid;
	place-items: center;
	align-content: center;
	gap: 22px;
	background:
		radial-gradient(circle at 50% 34%, rgba(255, 209, 61, 0.34), transparent 22%),
		radial-gradient(circle at 22% 82%, rgba(255, 255, 255, 0.14), transparent 24%),
		linear-gradient(135deg, #4c0302 0%, #8d0805 54%, #c51a14 100%);
	color: #ffffff;
	overflow: hidden;
	transition: opacity 0.48s ease, visibility 0.48s ease, transform 0.48s ease;
	animation: lawataLoaderAutoHide 0.5s ease 3.2s forwards;
}

.site-loader::before {
	content: '';
	position: absolute;
	inset: -20%;
	background:
		linear-gradient(115deg, transparent 0 39%, rgba(255, 255, 255, 0.2) 45%, transparent 52%),
		repeating-linear-gradient(135deg, rgba(255, 210, 47, 0.12) 0 2px, transparent 2px 92px);
	animation: lawataLoaderSweep 2.8s ease-in-out infinite;
}

.site-loader::after {
	content: 'Memuat Rumah Pintar Pemilu';
	position: relative;
	z-index: 1;
	margin-top: -4px;
	color: rgba(255, 247, 219, 0.82);
	font-size: 13px;
	font-weight: 700;
}

.site-loader.is-hidden {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: scale(1.025);
}

.loader-stage {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 170px;
	height: 170px;
	perspective: 1000px;
}

.loader-stage::before {
	content: '';
	position: absolute;
	inset: 18px;
	border-radius: 50%;
	border: 3px solid rgba(255, 255, 255, 0.18);
	border-top-color: #ffd43b;
	border-right-color: #ffffff;
	filter: drop-shadow(0 0 18px rgba(255, 212, 59, 0.34));
	animation: lawataLoaderRing 1.15s linear infinite;
}

.loader-orbit {
	position: absolute;
	border-radius: 50%;
	border: 1.5px solid rgba(255, 218, 96, 0.72);
	box-shadow: 0 0 25px rgba(255, 210, 47, 0.16);
}

.loader-orbit--one {
	width: 150px;
	height: 84px;
	transform: rotate(-20deg);
	animation: lawataLoaderOrbitOne 2.2s ease-in-out infinite;
}

.loader-orbit--two {
	width: 84px;
	height: 150px;
	transform: rotate(22deg);
	animation: lawataLoaderOrbitTwo 2.2s ease-in-out infinite;
}

.loader-cube {
	position: relative;
	width: 70px;
	height: 70px;
	transform-style: preserve-3d;
	animation: lawataLoaderCube 2.4s var(--lawata-ease) infinite;
}

.loader-face {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.34);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.03)),
		linear-gradient(135deg, #ffd43b 0%, #d71d17 70%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.32), 0 18px 38px rgba(45, 3, 2, 0.3);
	color: #ffffff;
	font-size: 15px;
	font-weight: 950;
	text-shadow: 0 2px 10px rgba(55, 6, 3, 0.42);
}

.loader-face--front {
	transform: translateZ(35px);
}

.loader-face--back {
	transform: rotateY(180deg) translateZ(35px);
}

.loader-face--right {
	transform: rotateY(90deg) translateZ(35px);
}

.loader-face--left {
	transform: rotateY(-90deg) translateZ(35px);
}

.loader-face--top {
	transform: rotateX(90deg) translateZ(35px);
}

.loader-face--bottom {
	transform: rotateX(-90deg) translateZ(35px);
}

.loader-shadow {
	position: absolute;
	bottom: 12px;
	width: 96px;
	height: 22px;
	border-radius: 50%;
	background: rgba(27, 3, 2, 0.36);
	filter: blur(10px);
	animation: lawataLoaderShadow 2.4s var(--lawata-ease) infinite;
}

.loader-text {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 10px;
	min-width: 220px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 950;
	text-align: center;
}

.loader-text::after {
	content: '';
	display: block;
	width: 100%;
	height: 8px;
	border-radius: 999px;
	background:
		linear-gradient(90deg, #ffd43b, #ffffff, #ffd43b) 0 0 / 45% 100% no-repeat,
		rgba(255, 255, 255, 0.16);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16);
	animation: lawataLoaderProgress 1.35s ease-in-out infinite;
}

.whatsapp-float {
	display: inline-flex !important;
}

body>nav {
	position: sticky;
	top: 0;
	padding: 18px clamp(34px, 3.4vw, 74px);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	background: linear-gradient(90deg, #780702 0%, #8d0b06 52%, #620602 100%);
	box-shadow: 0 10px 28px rgba(65, 4, 3, 0.18);
	backdrop-filter: none;
}

body>nav.scrolled {
	background: linear-gradient(90deg, #780702 0%, #8d0b06 52%, #620602 100%);
}

.nav-container {
	max-width: 100%;
}

.logo {
	gap: 14px;
	flex: 0 0 auto;
}

.logo-icon {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.15);
}

.logo-text {
	color: #ffffff;
	background: none;
	-webkit-text-fill-color: currentColor;
	font-size: clamp(17px, 1.38vw, 22px);
	font-weight: 850;
	letter-spacing: 0;
	white-space: nowrap;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
}

body>nav .top-info-panel {
	flex: 1 1 340px;
	max-width: 630px;
	margin-inline: clamp(14px, 2.2vw, 34px);
	padding: 11px 28px;
	border-color: rgba(255, 215, 92, 0.28);
	background:
		radial-gradient(circle at 20% 20%, rgba(255, 214, 73, 0.22), transparent 30%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.035));
	box-shadow:
		0 18px 38px rgba(35, 3, 2, 0.2),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -1px 0 rgba(255, 215, 92, 0.08);
}

body>nav .top-info-panel__greeting {
	color: #ffdc63;
}

body>nav .top-info-panel__subtitle {
	color: #ffffff;
	text-shadow: 0 2px 10px rgba(35, 3, 2, 0.24);
}

body>nav .top-info-panel__meta {
	color: rgba(255, 247, 232, 0.86);
}

@media (min-width: 901px) {
	body>nav .nav-container {
		position: relative;
	}

	body>nav .top-info-panel {
		--top-panel-x: -50%;
		--top-panel-y: -50%;
		position: absolute;
		left: 50%;
		top: 50%;
		width: clamp(440px, 36vw, 630px);
		margin: 0;
	}
}

.nav-links {
	align-items: center;
	gap: clamp(8px, 1.2vw, 14px);
	margin: 0;
}

.nav-links a {
	--nav-expanded-width: 138px;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	width: 54px;
	min-width: 54px;
	height: 54px;
	padding: 0 14px;
	border-radius: 999px;
	overflow: hidden;
	color: #fff7ef;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: 0;
	white-space: nowrap;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
	text-shadow: none;
	transition:
		width 0.28s var(--lawata-ease),
		background 0.22s ease,
		color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s var(--lawata-ease);
}

.nav-links a::before,
.nav-links a::after {
	display: none !important;
}

.nav-links a:hover {
	color: #ffdf66;
	background: rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 0 0 1px rgba(255, 223, 102, 0.34), 0 10px 22px rgba(41, 3, 2, 0.18);
	text-shadow: none;
	transform: translateY(-2px);
}

.nav-links a:focus-visible {
	color: #ffdf66;
	background: rgba(255, 255, 255, 0.12);
	box-shadow: inset 0 0 0 2px rgba(255, 223, 102, 0.58), 0 10px 22px rgba(41, 3, 2, 0.18);
	outline: none;
	transform: translateY(-2px);
}

.nav-links a:hover,
.nav-links a:focus-visible {
	width: var(--nav-expanded-width);
}

.nav-links a i {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: normal;
	font-size: 24px;
	width: 24px;
	height: 24px;
}

.nav-links a:hover i,
.nav-links a:focus-visible i {
	transform: scale(1.08) rotate(-4deg);
}

.nav-links .nav-label {
	display: inline-block;
	max-width: 0;
	opacity: 0;
	overflow: hidden;
	transform: translateX(-8px);
	transition:
		max-width 0.28s var(--lawata-ease),
		opacity 0.18s ease,
		transform 0.24s var(--lawata-ease);
}

.nav-links a:hover .nav-label,
.nav-links a:focus-visible .nav-label {
	max-width: 96px;
	opacity: 1;
	transform: translateX(0);
}

body>nav .nav-links a.active {
	width: 54px;
	min-width: 54px;
	padding: 0 14px;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffd13d 0%, #ffb20a 100%);
	box-shadow: 0 10px 22px rgba(41, 3, 2, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.36);
	color: #231506;
	font-weight: 850;
}

body>nav .nav-links a.active:hover,
body>nav .nav-links a.active:focus-visible {
	width: var(--nav-expanded-width);
	color: #231506;
}


.lawata-page {
	min-height: auto;
	background:
		radial-gradient(circle at 10% 32%, rgba(255, 207, 63, 0.24), transparent 21%),
		linear-gradient(180deg, #fffaf2 0%, #fff9ef 54%, #fff3e8 100%);
	overflow: hidden;
	border-radius: 0;
	--tilt-rx: 0deg;
	--tilt-ry: 0deg;
	--tilt-mx: 50%;
	--tilt-my: 50%;
}

.lawata-hero {
	position: relative;
	isolation: isolate;
	min-height: calc(100svh - 100px);
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 252, 246, 0.9) 35%, rgba(255, 250, 242, 0.18) 57%, rgba(255, 249, 240, 0) 100%),
		linear-gradient(120deg, #ffffff 0%, #fff8ed 48%, #f1d8c7 100%);
	perspective: 1200px;
}

.lawata-hero::before {
	content: '';
	position: absolute;
	inset: 0 auto 0 -8%;
	z-index: 2;
	width: min(58%, 940px);
	height: 100%;
	background:
		radial-gradient(circle at 7% 12%, rgba(255, 210, 48, 0.12) 0 1px, transparent 1.4px) 0 0 / 20px 20px,
		radial-gradient(circle at 12% 84%, rgba(226, 140, 62, 0.2) 0 1.3px, transparent 1.8px) 0 0 / 20px 20px,
		linear-gradient(90deg, #fffdf9 0%, rgba(255, 252, 248, 0.98) 73%, rgba(255, 250, 245, 0.72) 100%);
	border-radius: 0 30% 30% 0 / 0 50% 50% 0;
	box-shadow: 4px 0 0 0 #c5221d, 18px 0 34px rgba(0, 0, 0, 0.12);
	pointer-events: none;
}

.lawata-hero::after {
	content: '';
	position: absolute;
	inset: 0 auto 0 -7.5%;
	z-index: 3;
	width: min(58%, 940px);
	height: 100%;
	background: transparent;
	border-right: 2px solid rgba(255, 255, 255, 0.92);
	border-radius: 0 30% 30% 0 / 0 50% 50% 0;
	box-shadow: 8px 0 0 -5px rgba(255, 196, 20, 0.98);
	pointer-events: none;
}

.lawata-hero__ornament {
	position: absolute;
	pointer-events: none;
	z-index: -1;
}

.lawata-hero__ornament--left {
	left: -86px;
	bottom: 0;
	width: 240px;
	height: 460px;
	border-radius: 50%;
	border: 22px solid rgba(255, 198, 55, 0.32);
	border-right-color: transparent;
	transform: rotate(-18deg);
}

.lawata-hero__ornament--right {
	right: 15%;
	top: 42px;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.46), transparent 62%);
	animation: lawataFloat 5.6s ease-in-out infinite;
}

.lawata-hero__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(620px, 0.82fr) minmax(780px, 1.18fr);
	align-items: center;
	gap: clamp(8px, 2.5vw, 38px);
	width: 100%;
	min-height: inherit;
	margin: 0 auto;
	padding: clamp(54px, 6vw, 120px) clamp(58px, 5.4vw, 800px) clamp(78px, 6.6vw, 126px);
}

.lawata-hero__copy {
	position: relative;
	z-index: 5;
	max-width: 710px;
	padding-top: 10px;
	animation: lawataIntroUp 0.78s var(--lawata-ease) both;
}

.lawata-hero__welcome {
	margin: 0 0 28px;
	color: #121212;
	font-size: clamp(30px, 2.15vw, 48px);
	font-weight: 850;
	line-height: 1.05;
}

.lawata-hero h1 {
	margin: 0;
	color: #c5221d;
	font-size: clamp(58px, 4.25vw, 96px);
	font-weight: 950;
	line-height: 0.98;
	letter-spacing: 0;
	white-space: nowrap;
}

.lawata-hero h1 span {
	color: #121212;
	white-space: nowrap;
}

.lawata-hero__meaning {
	position: relative;
	max-width: 650px;
	margin: 40px 0 30px;
	padding-left: 22px;
	color: #211917;
	font-size: clamp(18px, 1.13vw, 25px);
	line-height: 1.52;
}

.lawata-hero__meaning::before {
	content: '“';
	position: absolute;
	left: 0;
	top: -12px;
	color: #d71916;
	font-size: 34px;
	font-weight: 950;
}

.lawata-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 44px;
	border: 0;
	text-decoration: none;
	font-weight: 850;
	letter-spacing: 0;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	transition: transform 0.22s ease, box-shadow 0.22s ease, filter 0.22s ease;
	touch-action: manipulation;
}

.lawata-btn::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(115deg, transparent 0 34%, rgba(255, 255, 255, 0.42) 48%, transparent 62%);
	transform: translateX(-120%);
	transition: transform 0.58s var(--lawata-ease);
}

.lawata-btn:hover {
	transform: translateY(-2px);
	filter: saturate(1.05);
}

.lawata-btn:hover::before {
	transform: translateX(120%);
}

.lawata-btn:active {
	transform: translateY(0) scale(0.98);
}

.lawata-btn--primary {
	min-height: 62px;
	padding: 14px 24px 14px 34px;
	border-radius: 999px;
	background: linear-gradient(180deg, #e6322c 0%, #ad0f0a 100%);
	box-shadow: 0 16px 34px rgba(181, 18, 13, 0.3);
	color: #ffffff;
	font-size: clamp(17px, 1vw, 22px);
}

.lawata-btn--primary i,
.lawata-btn--block i {
	display: inline-grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff6ef;
	color: #bd1611;
	font-size: 13px;
}

.lawata-hero__visual {
	position: relative;
	z-index: 1;
	align-self: stretch;
	min-height: 100%;
	display: grid;
	place-items: center;
	overflow: visible;
	isolation: isolate;
	margin: calc(clamp(54px, 6vw, 120px) * -1) calc(clamp(58px, 5.4vw, 110px) * -1) calc(clamp(78px, 6.6vw, 126px) * -1) -120px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
}




.lawata-hero__logo {
	--logo-base-x: 0;
	--logo-base-y: 0;
	--logo-depth-z: 92px;
	--logo-float-y: -8px;
	position: absolute;
	left: clamp(-14px, 0vw, 240px);
	top: clamp(280px, 62%, 500px);
	z-index: 3;
	width: min(110%, 800px);
	height: auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	filter: drop-shadow(rgb(255, 255, 255) 2px 0px 0px) drop-shadow(rgb(255, 255, 255) -2px 0px 0px) drop-shadow(rgb(255, 255, 255) 0px 2px 0px) drop-shadow(rgb(255, 255, 255) 0px -2px 0px) drop-shadow(rgb(255, 255, 255) 2px 2px 0px) drop-shadow(rgb(255, 255, 255) -2px -2px 0px) drop-shadow(rgb(255, 255, 255) 2px -2px 0px) drop-shadow(rgb(255, 255, 255) -2px 2px 0px) drop-shadow(rgb(255, 255, 255) 0px 0px 15px) drop-shadow(rgb(255, 48, 1) 0px 5px 10px);
	backdrop-filter: none;
	transform: translate3d(var(--logo-base-x), var(--logo-base-y), var(--logo-depth-z));
	animation: lawataHeroLogoFloat 4.8s ease-in-out infinite;
	will-change: transform;
}

.lawata-building {
	display: block;
	position: absolute;
	right: clamp(-34px, -2.2vw, -14px);
	top: 0;
	z-index: 2;
	width: min(46vw, 550px);
	height: min(81%, 356px);
	border-radius: 24px 0 0 24px;
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.72) 11%, rgba(255, 255, 255, 0.04) 12%),
		linear-gradient(100deg, #eadccf 0%, #f7efe7 42%, #d5bfae 100%);
	box-shadow: 0 24px 50px rgba(72, 34, 12, 0.15);
	overflow: hidden;
	opacity: 0.96;
	transform: perspective(780px) rotateY(-5deg) translateZ(0);
	transition: transform 0.32s var(--lawata-ease);
}

.lawata-building::before {
	content: '';
	position: absolute;
	inset: 34px 34px auto auto;
	width: 108px;
	height: 176px;
	background: repeating-linear-gradient(180deg, #d92b22 0 26px, #ef5a38 26px 28px);
	box-shadow: -120px 54px 0 -28px rgba(24, 24, 24, 0.14);
}

.lawata-building::after {
	content: '';
	position: absolute;
	left: 42px;
	bottom: 42px;
	width: 170px;
	height: 128px;
	border-radius: 4px;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, 0.28), rgba(255, 255, 255, 0.1)),
		repeating-linear-gradient(90deg, rgba(49, 43, 39, 0.82) 0 32px, rgba(255, 255, 255, 0.5) 32px 34px);
}

.lawata-building__label {
	position: absolute;
	right: clamp(104px, 8vw, 128px);
	top: 178px;
	color: #1b1716;
	font-size: clamp(13px, 1.18vw, 19px);
	font-weight: 950;
	line-height: 1.08;
	text-align: center;
	transform: rotate(-6deg);
}

.lawata-mascot-card {
	--mascot-x: 4%;
	--mascot-z: 97px;
	--mascot-float-y: -17px;
	--mascot-tilt: 2deg;
	position: absolute;
	right: 14%;
	bottom: -4.5%;
	z-index: 4;
	display: block;
	width: clamp(190px, 17.5vw, 275px);
	aspect-ratio: 900 / 861;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	isolation: isolate;
	pointer-events: none;
	transform: translate3d(var(--mascot-x), 0, var(--mascot-z));
	animation: lawataMascotFloat 4.9s ease-in-out infinite;
	will-change: transform;
}

.lawata-mascot-card::before,
.lawata-mascot-card::after {
	content: '';
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}

.lawata-mascot-card::before {
	left: 26%;
	right: 4%;
	bottom: 1%;
	z-index: 0;
	height: 15%;
	background: radial-gradient(ellipse at center, rgba(76, 36, 13, 0.32), rgba(76, 36, 13, 0) 70%);
	filter: blur(7px);
	transform: translateY(28%);
	animation: lawataMascotShadow 4.9s ease-in-out infinite;
}

.lawata-mascot-card::after {
	right: 4%;
	top: 20%;
	z-index: 0;
	width: 40%;
	height: 40%;
	background: radial-gradient(circle, rgba(255, 211, 82, 0.34), rgba(255, 211, 82, 0) 68%);
	opacity: 0.85;
}

.lawata-mascot-card img {
	position: relative;
	z-index: 1;
	display: block;
	width: 78%;
	height: auto;
	filter:
		drop-shadow(0 20px 16px rgba(68, 18, 8, 0.24)) drop-shadow(0 2px 0 rgba(255, 255, 255, 0.5));
}

.lawata-quick {
	position: relative;
	z-index: 7;
	width: min(100% - 64px, 1840px);
	margin: 34px auto 0;
	animation: lawataIntroUp 0.78s 0.22s var(--lawata-ease) both;
}

.lawata-quick__grid {
	display: grid;
	grid-template-columns: 170px repeat(5, minmax(100px, 1fr)) minmax(320px, 0.9fr);
	align-items: center;
	gap: clamp(14px, 2vw, 28px);
	padding: 18px 22px;
	border-radius: 24px;
	background: rgb(121 7 2);
	box-shadow: 0 18px 48px rgba(103, 40, 18, 0.13);
	backdrop-filter: blur(12px);
	transform-style: preserve-3d;
}

.lawata-quick__main,
.lawata-quick__item {
	text-decoration: none;
}

.lawata-quick__main {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-height: 112px;
	padding: 16px 14px 25px;
	border: 1px solid rgba(255, 212, 63, 0.72);
	border-radius: 24px;
	background:
		radial-gradient(circle at 88% 12%, rgba(255, 214, 80, 0.4), transparent 32%),
		linear-gradient(145deg, #e02620 0%, #b30f0b 56%, #850805 100%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.28),
		inset 0 -18px 32px rgba(89, 3, 2, 0.16),
		0 16px 28px rgba(155, 15, 10, 0.27);
	color: #ffffff;
	font-size: 21px;
	font-weight: 900;
	line-height: 1.08;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	touch-action: manipulation;
	transition: transform 0.22s var(--lawata-ease), box-shadow 0.22s var(--lawata-ease);
}

.lawata-quick__main::before {
	content: '';
	position: absolute;
	right: -26px;
	top: -32px;
	width: 92px;
	height: 92px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	box-shadow: 0 0 0 14px rgba(255, 201, 40, 0.08);
	pointer-events: none;
}

.lawata-quick__main::after {
	content: '';
	position: absolute;
	inset: -35%;
	background: conic-gradient(from 180deg, transparent, rgba(255, 255, 255, 0.34), transparent 24%);
	transform: translateX(-32%) rotate(12deg);
	animation: lawataShine 2.8s ease-in-out infinite;
}

.lawata-quick__main:hover {
	transform: translateY(-3px) scale(1.015);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.3),
		inset 0 -18px 32px rgba(89, 3, 2, 0.12),
		0 22px 36px rgba(150, 13, 9, 0.31);
}

.lawata-quick__main:focus-visible {
	outline: 4px solid #ffcf2d;
	outline-offset: 4px;
}

.lawata-quick__main>i {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.14);
	color: #ffd22f;
	font-size: 31px;
	filter: drop-shadow(0 6px 8px rgba(65, 5, 4, 0.22));
	animation: lawataPulseBolt 1.8s ease-in-out infinite;
}

.lawata-quick__main span {
	position: relative;
	z-index: 1;
}

.lawata-quick__sub {
	position: absolute !important;
	bottom: 8px;
	left: 0;
	right: 0;
	z-index: 1;
	text-align: center;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: rgba(255, 255, 255, 0.92);
	text-transform: uppercase;
}

.lawata-quick__item {
	display: grid;
	justify-items: center;
	gap: 8px;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	min-height: 102px;
	padding: 9px 8px;
	border-radius: 16px;
	cursor: pointer;
	transition: transform 0.22s var(--lawata-ease), color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
	touch-action: manipulation;
}

.lawata-quick__item:hover {
	transform: translateY(-5px);
	color: #a70f0b;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 16px 28px rgba(96, 36, 14, 0.08);
}

.lawata-quick__item:active {
	transform: translateY(-1px) scale(0.98);
}

.lawata-icon {
	display: grid;
	place-items: center;
	width: 72px;
	height: 54px;
	border-radius: 13px;
	background: #f9f3ea;
	font-size: 29px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
	transition: transform 0.22s var(--lawata-ease), box-shadow 0.22s var(--lawata-ease);
}

.lawata-quick__item:hover .lawata-icon {
	transform: translateY(-2px) rotateX(10deg);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 12px 24px rgba(107, 41, 10, 0.11);
}

.lawata-icon--red {
	color: #c9231e;
}

.lawata-icon--blue {
	color: #248fc6;
}

.lawata-icon--green {
	color: #22a96b;
}

.lawata-icon--purple {
	color: #7055a7;
}

.lawata-icon--cyan {
	color: #2089b6;
}

.lawata-agenda {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr) 34px;
	align-items: center;
	gap: 14px;
	min-height: 112px;
	padding: 15px 20px;
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 12px 28px rgba(97, 35, 12, 0.1);
	transition: transform 0.24s var(--lawata-ease), box-shadow 0.24s var(--lawata-ease);
}

.lawata-agenda:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 38px rgba(97, 35, 12, 0.14);
}

.lawata-agenda__icon {
	display: grid;
	place-items: center;
	width: 68px;
	height: 68px;
	border-radius: 18px;
	background: #fff7ed;
	color: #d7362d;
	font-size: 34px;
	animation: lawataCalendarPop 3.2s ease-in-out infinite;
}

.lawata-agenda p,
.lawata-agenda h2 {
	margin: 0;
}

.lawata-agenda p {
	color: #251c18;
	font-size: 14px;
}

.lawata-agenda h2 {
	margin-top: 3px;
	color: #141414;
	font-size: 20px;
	font-weight: 900;
	line-height: 1.12;
}

.lawata-agenda div>span {
	color: #5f514a;
	font-size: 14px;
}

.lawata-agenda__icon {
	color: #d7362d;
	font-size: 34px;
}

.lawata-agenda a {
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border: 1.5px solid #e2bd28;
	border-radius: 50%;
	color: #d0a319;
	text-decoration: none;
}

.lawata-dashboard {
	width: min(100% - 64px, 1840px);
	margin: 22px auto 18px;
}

.lawata-dashboard__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.04fr) minmax(0, 1.2fr) minmax(0, 1.08fr) minmax(0, 0.9fr);
	align-items: stretch;
	gap: 14px;
	perspective: 1100px;
}

.lawata-dashboard__grid>* {
	min-width: 0;
}

.lawata-about-stack {
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	gap: 14px;
	min-width: 0;
}

.lawata-about-card,
.lawata-stat-card,
.lawata-latest-card,
.lawata-quote-card,
.lawata-help-card {
	position: relative;
	overflow: hidden;
	border-radius: 15px;
	box-shadow: var(--lawata-shadow);
	transform-style: preserve-3d;
	transition: transform 0.26s var(--lawata-ease), box-shadow 0.26s var(--lawata-ease), border-color 0.26s ease;
	will-change: transform;
}

.lawata-about-card::before,
.lawata-stat-card::before,
.lawata-latest-card::before,
.lawata-quote-card::before,
.lawata-help-card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at var(--tilt-mx, 50%) var(--tilt-my, 50%), rgba(255, 255, 255, 0.3), transparent 35%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.lawata-about-card:hover,
.lawata-stat-card:hover,
.lawata-latest-card:hover,
.lawata-quote-card:hover,
.lawata-help-card:hover {
	transform: translateY(-6px) rotateX(var(--card-rx, 0deg)) rotateY(var(--card-ry, 0deg));
	box-shadow: var(--lawata-shadow-strong);
}

.lawata-about-card.is-tilting::before,
.lawata-stat-card.is-tilting::before,
.lawata-latest-card.is-tilting::before,
.lawata-quote-card.is-tilting::before,
.lawata-help-card.is-tilting::before {
	opacity: 1;
}

.lawata-about-card {
	min-height: clamp(400px, 26vw, 530px);
	padding: clamp(24px, 1.85vw, 34px);
	background:
		linear-gradient(135deg, rgba(193, 21, 17, 0.98), rgba(154, 8, 6, 0.96)),
		radial-gradient(circle at 76% 42%, rgba(255, 196, 36, 0.25), transparent 34%);
	color: #ffffff;
}

.lawata-about-card h2,
.lawata-stat-card h2,
.lawata-latest-card h2,
.lawata-quote-card h2,
.lawata-help-card h2 {
	margin: 0;
	font-size: clamp(18px, 1.35vw, 22px);
	font-weight: 900;
	line-height: 1.15;
}

.lawata-about-card p {
	position: relative;
	z-index: 1;
	max-width: 370px;
	margin: 24px 0 28px;
	color: rgba(255, 255, 255, 0.95);
	font-size: 16px;
	line-height: 1.55;
}

.lawata-btn--gold {
	position: relative;
	z-index: 2;
	padding: 12px 17px;
	border-radius: 10px;
	background: linear-gradient(180deg, #ffd23c, #ffb20d);
	color: #261706;
	box-shadow: 0 12px 24px rgba(77, 8, 5, 0.2);
}

.lawata-about-card__gate {
	position: absolute;
	right: 28px;
	bottom: -13px;
	width: 130px;
	height: 180px;
	border: 22px solid rgba(255, 244, 215, 0.8);
	border-bottom: 0;
	border-radius: 90px 90px 0 0;
	box-shadow: inset 0 0 0 8px rgba(165, 13, 9, 0.35);
}

.lawata-about-card__gate::before {
	content: '';
	position: absolute;
	left: -60px;
	right: -60px;
	bottom: -1px;
	height: 28px;
	background: rgba(255, 244, 215, 0.7);
}

.lawata-stat-card,
.lawata-latest-card,
.lawata-quote-card {
	padding: clamp(22px, 1.6vw, 30px);
	border: 1px solid var(--lawata-border);
	background: rgba(255, 255, 255, 0.86);
	color: #211918;
	backdrop-filter: blur(14px);
}

.lawata-card-title {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 16px;
	color: #a80f0b;
}

.lawata-card-title>i,
.lawata-card-title--split>span>i {
	color: #d7211b;
	font-size: 24px;
}

.lawata-card-title--split {
	justify-content: space-between;
	gap: 16px;
}

.lawata-card-title--split>span {
	display: flex;
	align-items: center;
	gap: 12px;
}

.lawata-card-title--split a {
	color: #6a5d55;
	font-size: 12px;
	text-decoration: none;
	white-space: nowrap;
}

.lawata-stat-list {
	display: grid;
	gap: 11px;
}

.lawata-stat-row {
	display: grid;
	grid-template-columns: 50px minmax(0, 1fr) 26px;
	align-items: center;
	gap: 14px;
	padding-bottom: 11px;
	border-bottom: 1px solid rgba(78, 42, 30, 0.1);
	transition: transform 0.2s var(--lawata-ease), background 0.2s ease;
}

.lawata-stat-row:hover {
	transform: translateX(4px);
	background: rgba(255, 247, 236, 0.62);
}

.lawata-stat-row:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.lawata-stat-icon {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	border-radius: 11px;
	background: #f8f1e8;
	font-size: 24px;
}

.lawata-stat-icon--red {
	color: #c91a16;
}

.lawata-stat-icon--gold {
	color: #ffbb18;
}

.lawata-stat-icon--blue {
	color: #238bc1;
}

.lawata-stat-row span {
	display: block;
	color: #5b5049;
	font-size: 13px;
}

.lawata-stat-row strong {
	display: block;
	margin-top: 2px;
	color: #131313;
	font-size: 23px;
	font-weight: 950;
	line-height: 1.05;
	font-variant-numeric: tabular-nums;
}

.lawata-stat-row>i {
	color: #c5120e;
	font-size: 23px;
}

.lawata-btn--block {
	justify-content: space-between;
	width: 100%;
	margin-top: 18px;
	padding: 13px 12px 13px 17px;
	border-radius: 10px;
	background: linear-gradient(180deg, #df2f2a 0%, #a80f0b 100%);
	box-shadow: 0 12px 24px rgba(181, 18, 13, 0.19);
	color: #ffffff;
}

.lawata-latest-list {
	display: grid;
	gap: 9px;
}

.lawata-content-card .lawata-card-title--split>span>i {
	color: #238bc1;
}

.lawata-latest-item {
	display: grid;
	grid-template-columns: 94px minmax(0, 1fr) 20px;
	align-items: center;
	gap: 12px;
	padding-bottom: 9px;
	border-bottom: 1px solid rgba(74, 45, 34, 0.1);
	color: #171313;
	text-decoration: none;
	border-radius: 10px;
	transition: transform 0.2s var(--lawata-ease), background 0.2s ease, padding-left 0.2s ease;
}

.lawata-latest-item:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.lawata-latest-item:hover {
	transform: translateX(4px);
	background: rgba(255, 247, 236, 0.74);
	padding-left: 8px;
}

.lawata-latest-item img {
	width: 94px;
	height: 58px;
	border-radius: 8px;
	object-fit: cover;
	box-shadow: 0 5px 12px rgba(57, 18, 8, 0.12);
	transition: transform 0.22s var(--lawata-ease), filter 0.22s ease;
}

.lawata-latest-item:hover img {
	transform: scale(1.05);
	filter: saturate(1.06) contrast(1.04);
}

.lawata-latest-item strong {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 15px;
	font-weight: 850;
	line-height: 1.25;
}

.lawata-latest-item small {
	display: block;
	margin-top: 4px;
	color: #73655e;
	font-size: 12px;
}

.lawata-latest-item>i {
	color: #988b83;
	font-size: 15px;
}

.lawata-side-stack {
	display: grid;
	grid-template-rows: 1fr auto;
	gap: 14px;
	min-height: 100%;
}

.lawata-quote-card.lawata-quote-card--compact {
	min-height: 0;
	padding: 20px;
}

.lawata-quote-card.lawata-quote-card--compact blockquote {
	font-size: 14px;
	line-height: 1.45;
}

.lawata-visitor-card,
.lawata-map-card {
	position: relative;
	overflow: hidden;
	padding: clamp(20px, 1.5vw, 26px);
	border: 1px solid var(--lawata-border);
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: var(--lawata-shadow);
	color: #211918;
	backdrop-filter: blur(14px);
}

.lawata-visitor-card .lawata-card-title,
.lawata-map-card .lawata-card-title {
	margin-bottom: 14px;
}

.lawata-visitor-card h2,
.lawata-map-card h2 {
	margin: 0;
	font-size: clamp(18px, 1.35vw, 22px);
	font-weight: 900;
	line-height: 1.15;
}

.lawata-visitor-list {
	display: grid;
	gap: 10px;
}

.lawata-visitor-stat {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 62px;
	padding: 9px 12px;
	border: 1px solid rgba(168, 15, 11, 0.13);
	border-radius: 13px;
	background: #fff8f2;
}

.lawata-visitor-stat>span {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: rgba(201, 28, 22, 0.1);
	color: #b41611;
}

.lawata-visitor-stat small {
	color: #665650;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.lawata-visitor-stat strong {
	color: #86100d;
	font-size: 21px;
	font-variant-numeric: tabular-nums;
}

.lawata-map-card {
	padding: 18px;
}

.lawata-map-card__frame {
	overflow: hidden;
	height: 150px;
	border: 1px solid rgba(168, 15, 11, 0.15);
	border-radius: 12px;
	background: #eee7df;
}

.lawata-map-card__frame iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.lawata-map-card>a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-height: 44px;
	margin-top: 10px;
	padding: 10px 14px;
	border-radius: 10px;
	background: #a80f0b;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease;
}

.lawata-map-card>a:hover {
	background: #86100d;
	transform: translateY(-2px);
}

.lawata-map-card>a:focus-visible {
	outline: 3px solid #ffd23c;
	outline-offset: 3px;
}

.whatsapp-float {
	display: inline-flex !important;
	right: max(20px, env(safe-area-inset-right)) !important;
	bottom: max(20px, env(safe-area-inset-bottom)) !important;
	width: 60px !important;
	height: 60px !important;
	padding: 0 !important;
	border: 3px solid #fff !important;
	border-radius: 50% !important;
	background: #25d366 !important;
	color: #fff !important;
	z-index: 9999;
}

.whatsapp-float .whatsapp-ico {
	width: 34px;
	height: 34px;
	fill: #fff !important;
}

.whatsapp-float .whatsapp-label {
	display: none !important;
}

.whatsapp-float:focus-visible {
	outline: 4px solid #ffd23c;
	outline-offset: 4px;
}

.lawata-quote-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: clamp(240px, 16vw, 315px);
	text-align: center;
}

.lawata-quote-card .lawata-card-title {
	justify-content: center;
	margin-bottom: 12px;
}

.lawata-quote-card blockquote {
	position: relative;
	margin: 0 auto 14px;
	max-width: 320px;
	color: #2b211d;
	font-size: 16px;
	line-height: 1.5;
}

.lawata-quote-card::after {
	content: '”';
	position: absolute;
	right: 26px;
	top: 25px;
	color: rgba(197, 161, 111, 0.3);
	font-size: 68px;
	font-weight: 950;
}

.lawata-quote-card strong {
	color: #9d1712;
	font-size: 13px;
}

.lawata-help-card {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	align-items: center;
	gap: 15px;
	min-height: clamp(150px, 9vw, 180px);
	padding: 20px 24px;
	background: linear-gradient(135deg, #e1332f 0%, #9b0c08 100%);
	color: #ffffff;
}

.lawata-help-card::after {
	content: '';
	position: absolute;
	inset: auto -12% -46% 24%;
	height: 90px;
	border-radius: 50%;
	background: rgba(255, 210, 47, 0.2);
	filter: blur(22px);
	pointer-events: none;
}

.lawata-help-card>span {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 4px solid rgba(255, 255, 255, 0.7);
	border-radius: 16px;
	background: #25d366;
	font-size: 34px;
	animation: lawataWhatsappBeat 2.4s ease-in-out infinite;
}

.lawata-help-card a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	margin-top: 10px;
	padding: 12px 13px 12px 16px;
	border: 1px solid rgba(255, 255, 255, 0.34);
	border-radius: 12px;
	color: #ffffff;
	text-decoration: none;
	font-size: 18px;
}

.lawata-help-card a i {
	display: grid;
	place-items: center;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	background: #fff6ef;
	color: #b0130e;
	font-size: 12px;
}

.lawata-brand-strip {
	display: grid;
	grid-template-columns: auto 1fr auto auto;
	align-items: center;
	gap: clamp(20px, 3vw, 34px);
	min-height: 98px;
	padding: 16px clamp(28px, 3.2vw, 64px);
	background: linear-gradient(90deg, #8b0b06 0%, #c41410 48%, #900b06 100%);
	color: #ffffff;
	position: relative;
	overflow: hidden;
}

.lawata-brand-strip::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(110deg, transparent 0 38%, rgba(255, 255, 255, 0.16) 46%, transparent 54%);
	transform: translateX(-100%);
	animation: lawataFooterSweep 5s ease-in-out infinite;
}

.lawata-brand-strip__identity,
.lawata-brand-strip__values,
.lawata-brand-strip__social,
.lawata-brand-strip__site {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
}

.lawata-brand-strip__identity {
	gap: 10px;
	font-size: 17px;
}

.lawata-brand-strip__identity img {
	width: 38px;
	height: auto;
}

.lawata-brand-strip__values {
	gap: clamp(18px, 3vw, 34px);
	font-size: clamp(13px, 1.5vw, 25px);
	line-height: 0.9;
}

.lawata-brand-strip__values strong:nth-child(2) {
	font-size: clamp(12px, 1.2vw, 17px);
	line-height: 0.95;
}

.lawata-brand-strip__matupa {
	display: block;
	width: clamp(76px, 7vw, 108px);
	height: auto;
	max-height: 52px;
	padding: 5px 8px;
	border-radius: 11px;
	object-fit: contain;
}

.lawata-brand-strip__social {
	gap: 13px;
	position: static;
	width: auto;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
	z-index: auto;
}

.lawata-brand-strip__social a {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	width: 28px;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	overflow: hidden;
	border-radius: 999px;
	background: #ffffff;
	color: #b5120d;
	text-decoration: none;
	font-size: 14px;
	white-space: nowrap;
	transition:
		width 0.24s var(--lawata-ease),
		transform 0.18s var(--lawata-ease),
		background 0.18s ease,
		box-shadow 0.18s ease;
}

.lawata-brand-strip__social a::after {
	content: attr(aria-label);
	max-width: 0;
	overflow: hidden;
	opacity: 0;
	font-size: 12px;
	font-weight: 850;
	transform: translateX(-5px);
	transition:
		max-width 0.24s var(--lawata-ease),
		opacity 0.18s ease,
		transform 0.2s var(--lawata-ease);
}

.lawata-brand-strip__social a:hover,
.lawata-brand-strip__social a:focus-visible {
	width: 112px;
	transform: translateY(-3px) scale(1.08);
	background: #ffcb23;
	box-shadow: 0 10px 18px rgba(75, 9, 5, 0.18);
	outline: none;
}

.lawata-brand-strip__social a:hover::after,
.lawata-brand-strip__social a:focus-visible::after {
	max-width: 82px;
	opacity: 1;
	transform: translateX(0);
}

.lawata-brand-strip__social span {
	font-weight: 700;
}

.lawata-brand-strip__site {
	gap: 10px;
	padding: 9px 18px;
	border-radius: 999px;
	background: #ffcb23;
	color: #211408;
	font-weight: 850;
	text-decoration: none;
	white-space: nowrap;
	transition: transform 0.2s var(--lawata-ease), box-shadow 0.2s ease;
}

.lawata-brand-strip__site:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 24px rgba(42, 8, 2, 0.18);
}

.lawata-welcome-popup[hidden] {
	display: none;
}

.lawata-welcome-popup {
	position: fixed;
	inset: 0;
	z-index: 6000;
	display: grid;
	place-items: center;
	padding: clamp(18px, 3vw, 42px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.26s ease;
}

.lawata-welcome-popup.is-visible {
	opacity: 1;
	pointer-events: auto;
}

.lawata-welcome-popup-open {
	overflow: hidden;
}

.lawata-welcome-popup__backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 24% 18%, rgba(255, 191, 36, 0.24), transparent 34%),
		radial-gradient(circle at 80% 72%, rgba(205, 18, 18, 0.22), transparent 36%),
		rgba(36, 5, 5, 0.72);
	backdrop-filter: blur(12px);
}

.lawata-welcome-popup__dialog {
	position: relative;
	width: min(940px, 100%);
	border: 1px solid rgba(255, 255, 255, 0.68);
	border-radius: 26px;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(255, 247, 230, 0.9)),
		#fff;
	box-shadow: 0 34px 90px rgba(42, 6, 6, 0.36);
	overflow: hidden;
	transform: translateY(24px) scale(0.96);
	transition: transform 0.34s cubic-bezier(0.2, 0.9, 0.2, 1), opacity 0.26s ease;
}

.lawata-welcome-popup.is-visible .lawata-welcome-popup__dialog {
	transform: translateY(0) scale(1);
}

.lawata-welcome-popup__dialog::before {
	content: "";
	position: absolute;
	inset: -40% -12% auto auto;
	width: 260px;
	height: 260px;
	border-radius: 999px;
	background: rgba(255, 190, 24, 0.3);
	filter: blur(12px);
	pointer-events: none;
}

.lawata-welcome-popup__close {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 0;
	border-radius: 999px;
	background: rgba(118, 9, 9, 0.9);
	color: #fff;
	box-shadow: 0 16px 28px rgba(118, 9, 9, 0.24);
	cursor: pointer;
	transition: transform 0.22s ease, background 0.22s ease;
}

.lawata-welcome-popup__close:hover,
.lawata-welcome-popup__close:focus-visible {
	background: #ce1717;
	transform: rotate(8deg) scale(1.05);
	outline: none;
}

.lawata-welcome-popup__media {
	display: block;
	position: relative;
	background: #fff7ee;
}

.lawata-welcome-popup__media img {
	display: block;
	width: 100%;
	max-height: min(72vh, 620px);
	object-fit: contain;
	background: #fff;
}

.lawata-welcome-popup__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	padding: 16px;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.92), rgba(255, 241, 208, 0.92));
}

.lawata-welcome-popup__cta,
.lawata-welcome-popup__skip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	border-radius: 999px;
	font-size: 0.94rem;
	font-weight: 800;
	text-decoration: none;
	transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.lawata-welcome-popup__cta {
	padding: 0 18px;
	background: linear-gradient(135deg, #cf1717, #8f0d0d);
	color: #fff;
	box-shadow: 0 14px 26px rgba(207, 23, 23, 0.28);
}

.lawata-welcome-popup__cta:hover,
.lawata-welcome-popup__cta:focus-visible {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 18px 34px rgba(207, 23, 23, 0.34);
	outline: none;
}

.lawata-welcome-popup__skip {
	padding: 0 16px;
	border: 1px solid rgba(135, 18, 18, 0.16);
	background: #fff;
	color: #8f0d0d;
	cursor: pointer;
}

.lawata-welcome-popup__skip:hover,
.lawata-welcome-popup__skip:focus-visible {
	background: #fff5e3;
	transform: translateY(-2px);
	outline: none;
}

.lawata-welcome-popup .sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.lawata-reveal {
	opacity: 0;
	transform: translateY(22px);
}

.lawata-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.55s var(--lawata-ease), transform 0.55s var(--lawata-ease);
}

.lawata-about-card.lawata-reveal.is-visible.is-tilting,
.lawata-stat-card.lawata-reveal.is-visible.is-tilting,
.lawata-latest-card.lawata-reveal.is-visible.is-tilting,
.lawata-quote-card.lawata-reveal.is-visible.is-tilting,
.lawata-help-card.lawata-reveal.is-visible.is-tilting {
	transform: translateY(-6px) rotateX(var(--card-rx, 0deg)) rotateY(var(--card-ry, 0deg));
}

@keyframes lawataLoaderRing {
	to {
		transform: rotate(360deg);
	}
}

@keyframes lawataLoaderCube {

	0%,
	100% {
		transform: rotateX(-16deg) rotateY(0deg) translateY(0);
	}

	50% {
		transform: rotateX(18deg) rotateY(180deg) translateY(-8px);
	}
}

@keyframes lawataLoaderShadow {

	0%,
	100% {
		opacity: 0.34;
		transform: scale(1);
	}

	50% {
		opacity: 0.18;
		transform: scale(0.78);
	}
}

@keyframes lawataLoaderOrbitOne {

	0%,
	100% {
		transform: rotate(-20deg) scale(1);
	}

	50% {
		transform: rotate(18deg) scale(1.06);
	}
}

@keyframes lawataLoaderOrbitTwo {

	0%,
	100% {
		transform: rotate(22deg) scale(1);
	}

	50% {
		transform: rotate(-18deg) scale(1.06);
	}
}

@keyframes lawataLoaderSweep {

	0%,
	100% {
		transform: translateX(-10%) rotate(0deg);
		opacity: 0.72;
	}

	50% {
		transform: translateX(10%) rotate(4deg);
		opacity: 1;
	}
}

@keyframes lawataLoaderProgress {
	0% {
		background-position: -60% 0, 0 0;
	}

	100% {
		background-position: 160% 0, 0 0;
	}
}

@keyframes lawataLoaderAutoHide {
	to {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
}

@keyframes lawataIntroUp {
	from {
		opacity: 0;
		transform: translateY(22px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes lawataFloat {

	0%,
	100% {
		transform: translate3d(0, 0, 0);
	}

	50% {
		transform: translate3d(0, -12px, 0);
	}
}

@keyframes lawataHeroLogoFloat {

	0%,
	100% {
		transform: translate3d(var(--logo-base-x), var(--logo-base-y), var(--logo-depth-z));
	}

	50% {
		transform: translate3d(var(--logo-base-x), calc(var(--logo-base-y) + var(--logo-float-y)), var(--logo-depth-z));
	}
}

@keyframes lawataMascotFloat {

	0%,
	100% {
		transform: translate3d(var(--mascot-x), 0, var(--mascot-z)) rotate(-0.8deg);
	}

	45% {
		transform: translate3d(var(--mascot-x), var(--mascot-float-y), var(--mascot-z)) rotate(var(--mascot-tilt));
	}

	68% {
		transform: translate3d(var(--mascot-x), calc(var(--mascot-float-y) * 0.45), var(--mascot-z)) rotate(calc(var(--mascot-tilt) * -0.45));
	}
}

@keyframes lawataMascotShadow {

	0%,
	100% {
		opacity: 1;
		transform: translateY(28%) scaleX(1);
	}

	45% {
		opacity: 0.68;
		transform: translateY(42%) scaleX(0.82);
	}

	68% {
		opacity: 0.86;
		transform: translateY(34%) scaleX(0.92);
	}
}

@keyframes lawataShine {

	0%,
	40% {
		transform: translateX(-72%) rotate(12deg);
		opacity: 0;
	}

	55% {
		opacity: 0.85;
	}

	78%,
	100% {
		transform: translateX(72%) rotate(12deg);
		opacity: 0;
	}
}

@keyframes lawataPulseBolt {

	0%,
	100% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.12) rotate(-4deg);
	}
}

@keyframes lawataCalendarPop {

	0%,
	100% {
		transform: scale(1);
	}

	48% {
		transform: scale(1);
	}

	56% {
		transform: scale(1.08);
	}

	64% {
		transform: scale(1);
	}
}

@keyframes lawataWhatsappBeat {

	0%,
	100% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.42);
	}

	50% {
		transform: scale(1.05);
		box-shadow: 0 0 0 9px rgba(37, 211, 102, 0);
	}
}

@keyframes lawataFooterSweep {

	0%,
	58% {
		transform: translateX(-110%);
	}

	78%,
	100% {
		transform: translateX(110%);
	}
}

@media (max-width: 1180px) {
	body>nav {
		padding-inline: 18px;
	}

	.nav-links {
		gap: 8px;
	}

	.logo-text {
		max-width: 260px;
	}

	body>nav .top-info-panel {
		max-width: 390px;
		margin-inline: 10px;
		padding-inline: 14px;
	}

	.lawata-hero__inner {
		grid-template-columns: minmax(410px, 0.82fr) minmax(470px, 1.18fr);
		gap: 10px;
		padding-inline: 34px;
	}

	.lawata-hero__visual {
		min-height: 345px;
		margin: -32px -34px -58px -36px;
	}

	.lawata-hero__logo {
		--logo-base-x: 0;
		--logo-base-y: 0;
		--logo-depth-z: 90px;
		left: clamp(-16px, -1.4vw, -6px);
		top: clamp(118px, 25%, 136px);
		width: clamp(310px, 38vw, 440px);
	}

	.lawata-mascot-card {
		right: 2.5%;
		bottom: 28px;
		width: clamp(180px, 17vw, 232px);
	}

	.lawata-quick__grid {
		grid-template-columns: 150px repeat(5, minmax(92px, 1fr));
	}

	.lawata-agenda {
		grid-column: 1 / -1;
	}

	.lawata-dashboard__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lawata-side-stack {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-column: 1 / -1;
	}

	.lawata-brand-strip {
		grid-template-columns: auto 1fr;
	}

	.lawata-brand-strip__social,
	.lawata-brand-strip__site {
		justify-self: start;
	}
}

@media (max-width: 900px) {

	body>nav,
	.lawata-page {
		width: 100%;
	}

	body>nav {
		top: 0;
		border-radius: 0;
	}

	body>nav .nav-container {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		justify-items: start;
		position: relative;
		padding-right: 0;
		row-gap: 10px;
	}

	body>nav .logo {
		max-width: calc(100vw - 86px);
	}

	.hamburger {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		position: fixed;
		top: 12px;
		right: 14px;
		z-index: 7000;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.1);
		box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16);
		margin-left: auto;
	}

	.hamburger span {
		background: #ffffff;
		box-shadow: 0 1px 5px rgba(32, 3, 3, 0.24);
	}

	.nav-links {
		display: none;
	}

	.nav-links-mobile {
		top: 148px;
		background: rgba(124, 8, 4, 0.98);
	}

	body>nav .top-info-panel {
		--top-panel-x: 0;
		--top-panel-y: 0;
		order: 3;
		justify-self: center;
		width: min(calc(100vw - 92px), 290px);
		min-width: min(230px, calc(100vw - 44px));
		max-width: calc(100vw - 44px);
		margin: 0 auto;
		padding: 8px 16px;
		border-radius: 18px;
	}

	body>nav .top-info-panel__subtitle {
		white-space: normal;
	}

	.nav-links-mobile a.active {
		border-left-color: var(--lawata-gold);
		background: rgba(255, 201, 40, 0.13);
		color: #ffdf66;
	}

	.lawata-hero__inner {
		grid-template-columns: 1fr;
		gap: 22px;
		padding: 30px 22px 84px;
		text-align: center;
	}

	.lawata-hero__copy {
		max-width: 650px;
		margin: 0 auto;
	}

	.lawata-hero__meaning {
		margin-inline: auto;
		text-align: left;
	}

	.lawata-hero__visual {
		order: -1;
		width: min(100%, 720px);
		min-height: 0;
		aspect-ratio: 16 / 9;
		margin: 0 auto;
		overflow: hidden;
		border: 1px solid rgba(255, 255, 255, 0.58);
		border-radius: 28px;
		box-shadow: 0 18px 42px rgba(111, 37, 12, 0.12);
		transform: none;
	}



	.lawata-hero__visual::after {
		inset: auto -4% 0 -31%;
		height: 35%;
		border-radius: 42px 0 0 0;
		clip-path: polygon(24% 42%, 100% 0, 100% 100%, 0 100%);
	}

	.lawata-building {
		display: none;
	}

	.lawata-hero__logo {
		--logo-base-x: 0;
		--logo-base-y: 0;
		--logo-depth-z: 80px;
		left: clamp(22px, 6vw, 42px);
		top: auto;
		bottom: clamp(20px, 5vw, 32px);
		width: clamp(220px, 45vw, 320px);
	}

	.lawata-mascot-card {
		--mascot-x: 0%;
		--mascot-float-y: -7px;
		--mascot-tilt: 1.6deg;
		right: clamp(14px, 5vw, 34px);
		bottom: clamp(20px, 5vw, 32px);
		width: clamp(112px, 19vw, 154px);
		animation-duration: 5.2s;
	}

	.lawata-quick,
	.lawata-dashboard {
		width: min(100% - 28px, 720px);
	}

	.lawata-quick {
		margin-top: 18px;
	}

	.lawata-quick__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.lawata-quick__main {
		grid-column: 1 / -1;
		min-height: 70px;
	}

	.lawata-agenda {
		grid-column: 1 / -1;
	}

	.lawata-dashboard__grid,
	.lawata-side-stack,
	.lawata-about-stack {
		grid-template-columns: 1fr;
	}

	.lawata-side-stack {
		grid-column: auto;
	}

	.lawata-map-card__frame {
		height: 220px;
	}

	.lawata-brand-strip {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	.lawata-brand-strip__values,
	.lawata-brand-strip__social {
		justify-content: center;
		flex-wrap: wrap;
	}
}

@media (max-width: 560px) {
	body>nav {
		padding: 10px 14px;
	}

	.logo-icon {
		width: 44px;
		height: 44px;
	}

	.logo-text {
		max-width: calc(100vw - 130px);
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 13.5px;
		line-height: 1.15;
	}

	.nav-links-mobile {
		top: 158px;
	}

	.lawata-hero {
		min-height: auto;
	}

	.lawata-hero::before {
		inset: 0 0 auto auto;
		width: 100%;
		height: 100%;
		opacity: 0.92;
		background:
			linear-gradient(145deg, transparent 0 78%, rgba(255, 196, 20, 0.9) 78.3% 82%, #b91510 82.4% 100%),
			radial-gradient(circle at 76% 76%, rgba(255, 196, 20, 0.22), transparent 32%);
		clip-path: none;
	}

	.lawata-hero__inner {
		gap: 18px;
		padding: 20px 16px 74px;
	}

	.lawata-hero__copy {
		max-width: 100%;
	}

	.lawata-hero__visual {
		width: 100%;
		min-height: 0;
		aspect-ratio: 16 / 9.3;
		border-radius: 20px;
		box-shadow: 0 16px 34px rgba(111, 37, 12, 0.11);
	}



	.lawata-hero__visual::after {
		left: -9%;
		height: 40%;
		clip-path: polygon(18% 44%, 100% 0, 100% 100%, 0 100%);
	}

	.lawata-building {
		height: 205px;
		border-radius: 20px;
	}

	.lawata-building::before {
		right: 24px;
		top: 24px;
		width: 80px;
		height: 128px;
	}

	.lawata-building::after {
		left: 28px;
		bottom: 30px;
		width: 116px;
		height: 88px;
	}

	.lawata-building__label {
		top: 126px;
		right: 50px;
		font-size: 11px;
	}

	.lawata-hero__logo {
		--logo-base-x: 0px;
		--logo-base-y: 0px;
		--logo-depth-z: 60px;
		--logo-float-y: -4px;
		top: auto;
		right: auto;
		bottom: 16px;
		left: 14px;
		width: min(58vw, 210px);
		margin: 0;
	}

	.lawata-mascot-card {
		--mascot-x: 0%;
		--mascot-float-y: -4px;
		--mascot-tilt: 1.2deg;
		right: 10px;
		bottom: 15px;
		width: clamp(76px, 21vw, 94px);
		animation-duration: 5.6s;
	}

	.lawata-hero__welcome {
		margin-bottom: 8px;
		font-size: clamp(18px, 5vw, 20px);
	}

	.lawata-hero h1 {
		max-width: 100%;
		font-size: clamp(30px, 8.1vw, 34px);
		line-height: 1.04;
		white-space: normal;
	}

	.lawata-hero h1 span {
		white-space: normal;
	}

	.lawata-hero__meaning {
		width: min(100%, 346px);
		max-width: 100%;
		margin: 16px auto 20px;
		padding-left: 18px;
		font-size: 14px;
		line-height: 1.58;
		overflow-wrap: break-word;
	}

	.lawata-hero__meaning::before {
		left: 0;
		top: -10px;
		font-size: 30px;
	}

	.lawata-btn--primary {
		min-height: 48px;
		padding: 12px 18px 12px 20px;
		font-size: 15px;
	}

	.lawata-quick {
		margin-top: 16px;
	}

	.lawata-quick__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 10px;
		border-radius: 20px;
		gap: 10px;
	}

	.lawata-quick__main,
	.lawata-agenda {
		grid-column: 1 / -1;
	}

	.lawata-quick__item {
		min-height: 84px;
		padding: 10px 6px;
		border-radius: 15px;
		background: #fffaf3;
		box-shadow: inset 0 0 0 1px rgba(117, 23, 12, 0.06);
	}

	.lawata-icon {
		width: 56px;
		height: 46px;
	}

	.lawata-agenda {
		grid-template-columns: 58px minmax(0, 1fr) 28px;
		padding: 12px;
	}

	.lawata-agenda__icon {
		width: 54px;
		height: 54px;
		font-size: 27px;
	}

	.lawata-agenda h2 {
		font-size: 17px;
	}

	.lawata-about-card,
	.lawata-stat-card,
	.lawata-latest-card,
	.lawata-quote-card,
	.lawata-help-card {
		border-radius: 14px;
	}

	.lawata-about-card,
	.lawata-stat-card,
	.lawata-latest-card,
	.lawata-quote-card {
		padding: 18px;
	}

	.lawata-about-card p {
		max-width: 100%;
	}

	.lawata-about-card__gate {
		opacity: 0.34;
	}

	.lawata-latest-item {
		grid-template-columns: 78px minmax(0, 1fr) 16px;
	}

	.lawata-latest-item img {
		width: 78px;
		height: 52px;
	}

	.lawata-help-card {
		grid-template-columns: 1fr;
		justify-items: start;
	}

	.lawata-brand-strip__site {
		width: 100%;
		justify-content: center;
		white-space: normal;
	}

	.lawata-welcome-popup {
		padding: 14px;
	}

	.lawata-welcome-popup__dialog {
		border-radius: 20px;
	}

	.lawata-welcome-popup__close {
		top: 10px;
		right: 10px;
		width: 38px;
		height: 38px;
	}

	.lawata-welcome-popup__actions {
		flex-direction: column;
		align-items: stretch;
		padding: 12px;
	}

	.lawata-welcome-popup__cta,
	.lawata-welcome-popup__skip {
		width: 100%;
	}
}

/* Responsive hero refresh: keeps the Lawata brand bold while avoiding the old negative-margin layout. */
.lawata-hero {
	--hero-red: #c8120d;
	--hero-red-dark: #8e0905;
	--hero-gold: #ffc928;
	--hero-ink: #141414;
	--hero-copy: #3f332e;
	position: relative;
	min-height: clamp(590px, calc(100svh - 92px), 760px);
	padding: 0;
	overflow: hidden;
	overflow: clip;
	background:
		radial-gradient(circle at 88% 12%, rgba(255, 201, 40, 0.18) 0 1px, transparent 1.7px) 0 0 / 22px 22px,
		radial-gradient(circle at 20% 18%, rgba(200, 18, 13, 0.11) 0 1px, transparent 1.7px) 0 0 / 18px 18px,
		radial-gradient(ellipse at 66% 27%, rgba(255, 255, 255, 0.98) 0 28%, rgba(255, 255, 255, 0.54) 47%, transparent 67%),
		linear-gradient(135deg, #ffffff 0%, #fffaf2 50%, #fff3e4 100%);
	perspective: none;
}

.lawata-hero::before {
	content: '';
	position: absolute;
	inset: auto auto -190px -360px;
	z-index: 0;
	width: min(34vw, 500px);
	height: min(34vw, 500px);
	border-radius: 50%;
	border: 34px solid rgba(255, 201, 40, 0.24);
	border-right-color: rgba(200, 18, 13, 0.58);
	background: transparent;
	box-shadow: none;
	opacity: 0.78;
	pointer-events: none;
	transform: rotate(-18deg);
}

.lawata-hero::after {
	content: '';
	position: absolute;
	inset: auto 0 0 0;
	z-index: 1;
	width: auto;
	height: clamp(112px, 11vw, 152px);
	border: 0;
	border-top: 4px solid rgba(255, 201, 40, 0.72);
	border-radius: 48% 0 0 0 / 100% 0 0 0;
	background:
		radial-gradient(ellipse at 84% 18%, rgba(255, 201, 40, 0.22), transparent 26%),
		linear-gradient(180deg, #d91a14 0%, #ab0e09 100%);
	box-shadow: 0 -18px 44px rgba(116, 10, 6, 0.12);
	pointer-events: none;
}

.lawata-hero__ornament {
	z-index: 1;
	opacity: 0.74;
}

.lawata-hero__ornament--left {
	left: auto;
	right: -88px;
	bottom: 92px;
	width: 230px;
	height: 230px;
	border-width: 0;
	background: radial-gradient(circle, rgba(255, 201, 40, 0.18), transparent 64%);
	transform: none;
}

.lawata-hero__ornament--right {
	right: 8%;
	top: 26px;
	width: 160px;
	height: 160px;
	background:
		radial-gradient(circle at 14% 14%, rgba(200, 18, 13, 0.22) 0 1.4px, transparent 1.8px) 0 0 / 18px 18px;
	animation: lawataFloat 6s ease-in-out infinite;
}

.lawata-hero__inner {
	position: relative;
	z-index: 3;
	display: grid;
	grid-template-columns: minmax(320px, 0.84fr) minmax(0, 1.16fr);
	align-items: center;
	gap: clamp(24px, 4vw, 72px);
	width: min(100%, 1480px);
	min-height: auto;
	margin: 0 auto;
	padding: clamp(42px, 5vw, 78px) clamp(22px, 5.4vw, 76px) clamp(144px, 13vw, 184px);
}

.lawata-hero__copy {
	z-index: 5;
	max-width: 590px;
	padding-top: 0;
	animation: lawataIntroUp 0.64s var(--lawata-ease) both;
}

.lawata-hero__welcome {
	margin: 0 0 12px;
	color: var(--hero-ink);
	font-size: clamp(23px, 2vw, 34px);
	font-weight: 900;
	line-height: 1.08;
}

.lawata-hero h1 {
	max-width: 100%;
	margin: 0;
	color: var(--hero-red);
	font-size: clamp(46px, 5.15vw, 82px);
	font-weight: 950;
	line-height: 0.96;
	letter-spacing: -0.035em;
	text-wrap: balance;
	white-space: normal;
}

.lawata-hero h1 span {
	color: var(--hero-ink);
	white-space: nowrap;
}

.lawata-hero__meaning {
	position: relative;
	max-width: 540px;
	margin: clamp(22px, 2.5vw, 32px) 0 clamp(22px, 2.4vw, 30px);
	padding-left: 24px;
	color: var(--hero-copy);
	font-size: clamp(15px, 1.05vw, 20px);
	line-height: 1.68;
	text-wrap: pretty;
}

.lawata-hero__meaning::before {
	left: 0;
	top: -14px;
	color: var(--hero-red);
	font-size: 44px;
	line-height: 1;
}

.lawata-btn--primary {
	min-height: 54px;
	padding: 13px 18px 13px 26px;
	border-radius: 999px;
	background: linear-gradient(180deg, #e31d17 0%, #ad0f0a 100%);
	box-shadow: 0 18px 34px rgba(173, 15, 10, 0.3);
	color: #ffffff;
	font-size: clamp(15px, 0.98vw, 18px);
}

.lawata-btn--primary i {
	width: 30px;
	height: 30px;
	background: #fff8ef;
	color: var(--hero-red);
}

.lawata-hero__visual {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: clamp(360px, 37vw, 520px);
	margin: 0;
	padding: clamp(22px, 3vw, 48px);
	overflow: visible;
	isolation: isolate;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
}




.lawata-hero__logo {
	--logo-base-x: 0px;
	--logo-base-y: 0px;
	--logo-depth-z: 0px;
	--logo-float-y: -7px;
	position: relative;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	z-index: 3;
	width: min(110%, clamp(390px, 41vw, 650px));
	max-width: 100%;
	height: auto;
	filter:
		drop-shadow(rgb(255, 255, 255) 2px 0px 0px) drop-shadow(rgb(255, 255, 255) -2px 0px 0px) drop-shadow(rgb(255, 255, 255) 0px 2px 0px) drop-shadow(rgb(255, 255, 255) 0px -2px 0px) drop-shadow(rgb(255, 255, 255) 2px 2px 0px) drop-shadow(rgb(255, 255, 255) -2px -2px 0px) drop-shadow(rgb(255, 255, 255) 2px -2px 0px) drop-shadow(rgb(255, 255, 255) -2px 2px 0px) drop-shadow(rgb(255, 255, 255) 0px 0px 15px) drop-shadow(rgb(255, 48, 1) 0px 5px 10px);
	transform: translate3d(0, 0, 0);
	animation: lawataHeroLogoFloat 5.2s ease-in-out infinite;
}

.lawata-mascot-card {
	--mascot-x: 0px;
	--mascot-z: 0px;
	--mascot-float-y: -10px;
	--mascot-tilt: 1.2deg;
	right: clamp(-100px, 2.8vw, -110px);
	bottom: clamp(13px, -6vw, 5px);
	z-index: 4;
	width: clamp(118px, 13vw, 190px);
	transform: translate3d(0, 0, 0);
	animation-duration: 5.4s;
}

.lawata-mascot-card img {
	width: 100%;
	height: auto;
}

.lawata-hero__ribbon {
	position: absolute;
	left: 50%;
	bottom: clamp(16px, 2.2vw, 26px);
	z-index: 6;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	width: min(1120px, calc(100% - 88px));
	padding: 16px clamp(16px, 2vw, 26px);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px 999px 34px 34px;
	background:
		linear-gradient(120deg, rgba(255, 201, 40, 0.16), transparent 22%),
		linear-gradient(180deg, #d71914 0%, #a80e09 100%);
	box-shadow: 0 22px 44px rgba(95, 9, 5, 0.24);
	color: #ffffff;
	transform: translateX(-50%);
}

.lawata-hero__ribbon-item {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	min-height: 70px;
	padding: 0 clamp(12px, 1.6vw, 24px);
}

.lawata-hero__ribbon-item+.lawata-hero__ribbon-item {
	border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.lawata-hero__ribbon-icon {
	display: inline-grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #ffffff;
	color: var(--hero-red);
	font-size: 22px;
	box-shadow: 0 10px 22px rgba(64, 8, 5, 0.18);
}

.lawata-hero__ribbon strong,
.lawata-hero__ribbon small {
	display: block;
	line-height: 1.2;
}

.lawata-hero__ribbon strong {
	font-size: clamp(15px, 1.1vw, 18px);
	font-weight: 900;
}

.lawata-hero__ribbon small {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.86);
	font-size: clamp(12px, 0.85vw, 14px);
	font-weight: 650;
}

.lawata-quick {
	margin-top: clamp(0px, 0vw, 46px);
}

@media (max-width: 1180px) {
	.lawata-hero {
		min-height: auto;
	}

	.lawata-hero__inner {
		grid-template-columns: minmax(300px, 0.88fr) minmax(0, 1.12fr);
		gap: clamp(20px, 3vw, 42px);
		padding: 38px 28px 138px;
	}

	.lawata-hero h1 {
		font-size: clamp(42px, 5.4vw, 64px);
	}

	.lawata-hero__visual {
		min-height: clamp(320px, 40vw, 460px);
		padding-inline: 16px;
	}

	.lawata-hero__logo {
		width: min(86%, clamp(330px, 45vw, 530px));
	}

	.lawata-mascot-card {
		width: clamp(104px, 14vw, 160px);
	}

	.lawata-hero__ribbon {
		width: min(1000px, calc(100% - 44px));
	}

	.lawata-hero__ribbon-item {
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 10px;
		padding-inline: 14px;
	}

	.lawata-hero__ribbon-icon {
		width: 42px;
		height: 42px;
		font-size: 19px;
	}
}

@media (max-width: 900px) {
	.lawata-hero {
		padding-bottom: 18px;
		background:
			radial-gradient(circle at 88% 8%, rgba(255, 201, 40, 0.18) 0 1px, transparent 1.6px) 0 0 / 20px 20px,
			radial-gradient(circle at 8% 24%, rgba(200, 18, 13, 0.1) 0 1px, transparent 1.6px) 0 0 / 18px 18px,
			linear-gradient(180deg, #ffffff 0%, #fff8ed 100%);
	}

	.lawata-hero::before {
		inset: auto -32% -22% auto;
		width: 92vw;
		height: 92vw;
		border-width: 32px;
		opacity: 0.82;
	}

	.lawata-hero::after {
		height: 30%;
		border-top-width: 3px;
		border-radius: 72% 0 0 0 / 35% 0 0 0;
	}

	.lawata-hero__inner {
		grid-template-columns: 1fr;
		gap: 20px;
		width: min(100%, 760px);
		padding: 24px 18px 16px;
		text-align: center;
	}

	.lawata-hero__copy {
		max-width: 620px;
		margin: 0 auto;
	}

	.lawata-hero__welcome {
		margin-bottom: 8px;
		font-size: clamp(20px, 4.6vw, 28px);
	}

	.lawata-hero h1 {
		font-size: clamp(36px, 9vw, 54px);
		line-height: 1;
	}

	.lawata-hero h1 span {
		white-space: normal;
	}

	.lawata-hero__meaning {
		width: min(100%, 520px);
		margin: 18px auto 22px;
		text-align: left;
		font-size: 15px;
		line-height: 1.62;
	}

	.lawata-hero__visual {
		order: -1;
		width: min(100%, 650px);
		min-height: 0;
		aspect-ratio: 16 / 9.4;
		margin: 0 auto;
		padding: clamp(18px, 5vw, 30px);
		overflow: hidden;
		border-radius: 28px;
		box-shadow: 0 18px 42px rgba(111, 37, 12, 0.13);
	}


	.lawata-hero__visual::after {
		inset: auto -8% -4% 20%;
		height: 38%;
		background: linear-gradient(90deg, rgba(255, 201, 40, 0.28), rgba(200, 18, 13, 0.18));
	}

	.lawata-hero__logo {
		width: min(78%, 430px);
	}

	.lawata-mascot-card {
		right: clamp(12px, 5vw, 28px);
		bottom: clamp(12px, 4vw, 24px);
		width: clamp(84px, 19vw, 128px);
	}

	.lawata-hero__ribbon {
		position: relative;
		left: auto;
		bottom: auto;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: min(100% - 32px, 680px);
		margin: 0 auto;
		padding: 12px;
		border-radius: 26px;
		transform: none;
	}

	.lawata-hero__ribbon-item {
		min-height: 74px;
		padding: 10px;
		border-left: 0;
		border-radius: 18px;
		background: rgba(255, 255, 255, 0.07);
	}

	.lawata-hero__ribbon-item+.lawata-hero__ribbon-item {
		border-left: 0;
	}

	.lawata-quick {
		margin-top: 22px;
	}
}

@media (max-width: 560px) {
	.lawata-hero {
		padding-bottom: 14px;
	}

	.lawata-hero::before {
		right: -48%;
		bottom: -20%;
		width: 118vw;
		height: 118vw;
		border-width: 26px;
	}

	.lawata-hero::after {
		height: 36%;
	}

	.lawata-hero__inner {
		gap: 18px;
		padding: 18px 14px 14px;
	}

	.lawata-hero__visual {
		aspect-ratio: 16 / 10.4;
		border-radius: 22px;
		padding: 16px;
	}

	.lawata-hero__logo {
		width: min(78%, 292px);
	}

	.lawata-mascot-card {
		right: 10px;
		bottom: 10px;
		width: clamp(72px, 22vw, 96px);
	}

	.lawata-hero__welcome {
		font-size: clamp(18px, 5.4vw, 22px);
	}

	.lawata-hero h1 {
		font-size: clamp(32px, 10.4vw, 41px);
		letter-spacing: -0.045em;
	}

	.lawata-hero__meaning {
		width: min(100%, 350px);
		margin: 16px auto 20px;
		padding-left: 18px;
		font-size: 14px;
		line-height: 1.56;
	}

	.lawata-hero__meaning::before {
		top: -10px;
		font-size: 32px;
	}

	.lawata-btn--primary {
		min-height: 50px;
		padding: 11px 16px 11px 20px;
		font-size: 15px;
	}

	.lawata-hero__ribbon {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: calc(100% - 24px);
		gap: 8px;
		padding: 10px;
		border-radius: 22px;
	}

	.lawata-hero__ribbon-item {
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 8px;
		min-height: 68px;
		padding: 8px;
	}

	.lawata-hero__ribbon-icon {
		width: 36px;
		height: 36px;
		font-size: 16px;
	}

	.lawata-hero__ribbon strong {
		font-size: 13px;
	}

	.lawata-hero__ribbon small {
		font-size: 11px;
		line-height: 1.18;
	}
}

/* Mobile polish for the quick-access and help cards marked during browser review. */
@media (max-width: 560px) {
	.lawata-quick {
		width: min(100% - 28px, 440px);
		margin-top: 28px;
	}

	.lawata-quick__grid {
		gap: 12px;
		padding: 12px;
		border-radius: 26px;
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 250, 244, 0.94)),
			radial-gradient(circle at 18% 0%, rgba(255, 201, 40, 0.18), transparent 32%);
		box-shadow: 0 18px 42px rgba(104, 38, 16, 0.11);
	}

	.lawata-quick__main {
		display: grid;
		grid-template-columns: 56px minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-items: center;
		justify-content: start;
		gap: 2px 14px;
		min-height: 84px;
		padding: 15px 18px;
		border-radius: 22px;
		background:
			radial-gradient(circle at 88% 18%, rgba(255, 201, 40, 0.3), transparent 32%),
			linear-gradient(135deg, #ffffff 0%, #9d0d08 100%);
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.22),
			0 16px 30px rgba(171, 16, 11, 0.22);
		text-align: left;
	}

	.lawata-quick__main::after {
		display: none;
	}

	.lawata-quick__main i {
		grid-row: 1 / 3;
		display: grid;
		place-items: center;
		width: 52px;
		height: 52px;
		border-radius: 18px;
		background: rgba(255, 255, 255, 0.16);
		color: #ffd650;
		font-size: 31px;
		filter: drop-shadow(0 7px 10px rgba(58, 4, 3, 0.2));
	}

	.lawata-quick__main>span:first-of-type {
		font-size: 25px;
		line-height: 1;
		letter-spacing: -0.03em;
	}

	.lawata-quick__main>span:first-of-type br {
		display: none;
	}

	.lawata-quick__sub {
		position: static !important;
		grid-column: 2;
		text-align: left;
		font-size: 12px;
		font-weight: 800;
		line-height: 1.1;
		letter-spacing: 0.08em;
		color: rgba(255, 255, 255, 0.92);
	}

	.lawata-quick__item {
		min-height: 106px;
		padding: 14px 10px 12px;
		border-radius: 19px;
		background: rgba(255, 252, 248, 0.92);
		box-shadow:
			inset 0 0 0 1px rgba(117, 23, 12, 0.055),
			0 10px 22px rgba(93, 35, 15, 0.055);
		font-size: 15px;
		font-weight: 850;
	}

	.lawata-icon {
		width: 60px;
		height: 52px;
		border-radius: 17px;
		font-size: 28px;
	}

	.lawata-help-card {
		grid-template-columns: 62px minmax(0, 1fr);
		justify-items: stretch;
		align-items: center;
		gap: 14px;
		min-height: 0;
		padding: 18px;
		border-radius: 24px;
		background:
			radial-gradient(circle at 88% 10%, rgba(255, 201, 40, 0.2), transparent 30%),
			linear-gradient(135deg, #d71914 0%, #8f0b07 100%);
		box-shadow: 0 18px 38px rgba(91, 13, 8, 0.18);
	}

	.lawata-help-card::after {
		inset: auto -22% -40% 36%;
		height: 84px;
		opacity: 0.82;
	}

	.lawata-help-card>span {
		width: 60px;
		height: 60px;
		border-width: 4px;
		border-radius: 18px;
		font-size: 34px;
	}

	.lawata-help-card h2 {
		font-size: 21px;
		line-height: 1.12;
		letter-spacing: -0.02em;
	}

	.lawata-help-card a {
		width: min(100%, 230px);
		min-height: 48px;
		margin-top: 10px;
		padding: 10px 11px 10px 16px;
		border-radius: 14px;
		background: rgba(255, 255, 255, 0.09);
		font-size: 16px;
		font-weight: 850;
	}

	.lawata-help-card a i {
		width: 28px;
		height: 28px;
		font-size: 12px;
	}
}

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

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

	.site-loader {
		animation: none;
	}

	.lawata-reveal {
		opacity: 1;
		transform: none;
	}

	.lawata-hero__visual,
	.lawata-about-card,
	.lawata-stat-card,
	.lawata-latest-card,
	.lawata-quote-card,
	.lawata-help-card {
		transform: none !important;
	}

	.lawata-mascot-card {
		animation: none !important;
		transform: translate3d(var(--mascot-x), 0, var(--mascot-z)) !important;
	}

	.lawata-mascot-card::before {
		animation: none !important;
		transform: translateY(28%) !important;
	}
}

/* Reference-led brand hero: large Lawata identity with the mascot anchored at the lower right. */
.lawata-hero {
	min-height: auto;
	background: #fffaf4;
}

.lawata-hero__inner {
	display: block;
	width: 100%;
	max-width: none;
	min-height: clamp(390px, 44vw, 650px);
	padding: 0 0 clamp(118px, 10vw, 150px);
}

.lawata-hero__copy {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.lawata-hero__visual {
	position: relative;
	display: block;
	width: 100%;
	min-height: clamp(390px, 44vw, 650px);
	padding: 0;
	overflow: hidden;
	background:
		radial-gradient(circle at 91% 17%, rgba(255, 255, 255, .09) 0 1px, transparent 1.7px) 0 0 / 22px 22px,
		linear-gradient(118deg, transparent 0 64%, #c80008 64.2% 100%),
		linear-gradient(180deg, #fffdf9 0%, #fff8f0 100%);
}

.lawata-hero__visual::before {
	content: '';
	position: absolute;
	right: -5%;
	top: -36%;
	width: 43%;
	height: 132%;
	border-radius: 50% 0 0 48%;
	background: linear-gradient(145deg, #9e0005 0%, #d30a10 70%, #b00007 100%);
	transform: rotate(8deg);
}

.lawata-hero__visual::after {
	content: '';
	position: absolute;
	right: -4%;
	bottom: -22%;
	width: 79%;
	height: 37%;
	border-top: clamp(6px, .75vw, 12px) solid #ffd11a;
	border-radius: 68% 0 0 0 / 100% 0 0 0;
	background: #c80008;
	transform: rotate(-2deg);
}

.lawata-hero__logo {
	position: absolute;
	left: clamp(28px, 7vw, 112px);
	top: 46%;
	z-index: 3;
	width: clamp(310px, 48vw, 720px);
	max-width: 55%;
	filter: none;
	transform: translateY(-56%);
	animation: lawataHeroLogoFloat 5.2s ease-in-out infinite;
}

.lawata-mascot-card {
	position: absolute;
	right: clamp(26px, 8vw, 140px);
	bottom: clamp(4px, 1.2vw, 18px);
	z-index: 4;
	width: clamp(180px, 24vw, 360px);
	max-width: 29%;
	transform: none;
}

.lawata-hero__ornament {
	display: none;
}

@media (max-width: 900px) {
	.lawata-hero {
		padding-bottom: 14px;
	}

	.lawata-hero__inner,
	.lawata-hero__visual {
		min-height: clamp(300px, 62vw, 470px);
	}

	.lawata-hero__inner {
		padding: 0 0 16px;
	}

	.lawata-hero__visual {
		width: 100%;
		aspect-ratio: auto;
		margin: 0;
		border-radius: 0;
		box-shadow: none;
		background:
			radial-gradient(circle at 91% 16%, rgba(255, 255, 255, .09) 0 1px, transparent 1.6px) 0 0 / 18px 18px,
			linear-gradient(116deg, transparent 0 62%, #c80008 62.2% 100%),
			linear-gradient(180deg, #fffdf9 0%, #fff8f0 100%);
	}

	.lawata-hero__visual::after {
		inset: auto -7% -22% 22%;
		height: 39%;
		background: #c80008;
	}

	.lawata-hero__logo {
		left: clamp(18px, 5vw, 42px);
		width: min(58vw, 470px);
		max-width: 60%;
	}

	.lawata-mascot-card {
		right: clamp(14px, 5vw, 40px);
		bottom: 3px;
		width: min(28vw, 210px);
		max-width: 30%;
	}
}

@media (max-width: 560px) {

	.lawata-hero__inner,
	.lawata-hero__visual {
		min-height: clamp(250px, 68vw, 330px);
	}

	.lawata-hero__visual {
		padding: 0;
		border-radius: 0;
		background:
			radial-gradient(circle at 92% 15%, rgba(255, 255, 255, .1) 0 1px, transparent 1.5px) 0 0 / 16px 16px,
			linear-gradient(112deg, transparent 0 59%, #c80008 59.2% 100%),
			linear-gradient(180deg, #fffdf9 0%, #fff8f0 100%);
	}

	.lawata-hero__logo {
		left: 14px;
		width: 61vw;
		max-width: 61%;
		transform: translateY(-56%);
	}

	.lawata-mascot-card {
		right: 8px;
		bottom: 2px;
		width: 31vw;
		max-width: 31%;
	}
}

/* Final reference composition: editorial copy left, brand artwork right. */
.lawata-hero__inner {
	display: grid;
	grid-template-columns: minmax(310px, .78fr) minmax(440px, 1.22fr);
	align-items: center;
	gap: clamp(20px, 3vw, 52px);
	min-height: clamp(430px, 37vw, 570px);
	padding: clamp(38px, 4.5vw, 68px) clamp(28px, 5.8vw, 92px) clamp(42px, 4.8vw, 72px);
}

.lawata-hero::after {
	display: none;
}

.lawata-hero__copy {
	position: relative;
	z-index: 7;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
	white-space: normal;
}

.lawata-hero__welcome {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(19px, 1.45vw, 25px);
	font-style: italic;
	font-weight: 700;
}

.lawata-hero h1 {
	font-size: clamp(42px, 4.35vw, 68px);
	line-height: .98;
}

.lawata-hero__badge {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	margin-top: 14px;
	padding: 7px 20px;
	border-radius: 999px;
	background: linear-gradient(180deg, #d71914, #a70b08);
	color: #fff;
	font-size: clamp(14px, 1vw, 16px);
	font-weight: 800;
}

.lawata-hero__meaning {
	margin: 14px 0 18px;
	padding: 0;
	font-size: clamp(13px, .9vw, 20px);
	line-height: 1.55;
}

.lawata-hero__meaning::before {
	display: none;
}

.lawata-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.lawata-hero__actions .lawata-btn {
	min-height: 48px;
	padding: 10px 16px;
	font-size: 14px;
}

.lawata-btn--outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 48px;
	padding: 10px 18px;
	border: 2px solid #c8120d;
	border-radius: 999px;
	background: rgba(255, 255, 255, .78);
	color: #a70b08;
	font-weight: 850;
	text-decoration: none;
}

.lawata-btn--outline:hover,
.lawata-btn--outline:focus-visible {
	background: #fff;
	box-shadow: 0 12px 26px rgba(167, 11, 8, .14);
}

.lawata-hero__visual {
	min-height: clamp(330px, 31vw, 465px);
	overflow: visible;
	background: transparent;
}

.lawata-hero__visual::before,
.lawata-hero__visual::after {
	display: none;
}

.lawata-hero__logo {
	left: 0;
	top: 0%;
	width: min(80%, 738px);
	max-width: 78%;
	transform: translateY(-54%);
}

.lawata-mascot-card {
	right: 0;
	bottom: 0;
	width: min(34%, 300px);
	max-width: 34%;
}

@media (max-width: 900px) {
	.lawata-hero__inner {
		grid-template-columns: 1fr;
		gap: 12px;
		min-height: 0;
		padding: 28px 18px 18px;
	}

	.lawata-hero__copy {
		max-width: 650px;
		text-align: left;
	}

	.lawata-hero__meaning {
		margin-inline: 0;
		text-align: left;
	}

	.lawata-hero__visual {
		order: 0;
		min-height: clamp(250px, 52vw, 390px);
		overflow: hidden;
		background:
			linear-gradient(112deg, transparent 0 62%, #c80008 62.3% 100%),
			linear-gradient(180deg, #fffdf9, #fff8f0);
	}

	.lawata-hero__visual::after {
		display: block;
		inset: auto -8% -24% 20%;
	}

	.lawata-hero__logo {
		left: 3%;
		width: min(66%, 450px);
		max-width: 66%;
	}

	.lawata-mascot-card {
		right: 2%;
		width: min(31%, 205px);
		max-width: 31%;
	}
}

@media (max-width: 560px) {
	.lawata-hero h1 {
		font-size: clamp(33px, 10vw, 42px);
	}

	.lawata-hero__actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.lawata-hero__actions .lawata-btn {
		width: 100%;
		padding-inline: 12px;
	}

	.lawata-hero__visual {
		min-height: clamp(220px, 61vw, 290px);
	}
}

/* Small webview refinement: centered actions, integrated quick access, and balanced footer. */
@media (max-width: 560px) {
	.lawata-hero {
		padding-bottom: 0;
		background: #fffaf4;
	}

	.lawata-hero__inner {
		gap: 22px;
		padding: 26px 16px 20px;
	}

	.lawata-hero__copy {
		width: 100%;
		max-width: 400px;
		margin-inline: auto;
		text-align: center;
	}

	.lawata-hero__welcome {
		margin-bottom: 9px;
		font-size: 19px;
	}

	.lawata-hero h1 {
		font-size: clamp(30px, 9.5vw, 38px);
		line-height: 1.02;
	}

	.lawata-hero__badge {
		justify-content: center;
		min-height: 34px;
		margin-top: 12px;
		padding: 7px 16px;
	}

	.lawata-hero__meaning {
		margin: 16px auto 20px;
		padding: 16px;
		border: 1px solid rgba(174, 25, 16, 0.09);
		border-radius: 18px;
		background: rgba(255, 255, 255, 0.68);
		box-shadow: 0 12px 28px rgba(102, 32, 13, 0.06);
		font-size: 15px;
		line-height: 1.62;
		text-align: left;
	}

	.lawata-hero__actions {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
	}

	.lawata-hero__actions .lawata-btn {
		width: auto;
		min-width: min(210px, 100%);
		max-width: 100%;
		padding-inline: 20px;
		white-space: nowrap;
	}

	.lawata-hero__visual {
		width: 100%;
		min-height: clamp(210px, 62vw, 280px);
		border-radius: 24px;
		background:
			linear-gradient(112deg, transparent 0 64%, #c80008 64.3% 100%),
			linear-gradient(180deg, #fffdf9, #fff7ed);
		box-shadow: inset 0 0 0 1px rgba(174, 25, 16, 0.08);
	}

	.lawata-quick {
		width: min(100% - 28px, 440px);
		margin-top: 22px;
	}

	.lawata-quick__grid {
		gap: 12px;
		padding: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		backdrop-filter: none;
	}

	.lawata-quick__main {
		border-color: rgba(255, 207, 45, 0.64);
		background:
			radial-gradient(circle at 88% 18%, rgba(255, 201, 40, 0.28), transparent 31%),
			linear-gradient(135deg, #d91c16 0%, #970a07 100%);
	}

	.lawata-quick__item {
		color: #251812;
	}

	.lawata-quick__item:focus-visible {
		outline: 3px solid #c8120d;
		outline-offset: 3px;
	}

	.lawata-brand-strip {
		grid-template-columns: minmax(0, 1fr);
		justify-items: center;
		gap: 18px;
		width: 100%;
		padding: 28px 20px;
		text-align: center;
	}

	.lawata-brand-strip__identity,
	.lawata-brand-strip__values {
		justify-content: center;
		width: 100%;
	}

	.lawata-brand-strip__values {
		display: grid;
		gap: 14px;
		justify-items: center;
	}

	.lawata-brand-strip__social {
		justify-self: stretch;
		justify-content: center;
		gap: 12px;
		width: 100%;
		flex-wrap: nowrap;
	}

	.lawata-brand-strip__social a,
	.lawata-brand-strip__social a:hover,
	.lawata-brand-strip__social a:focus-visible {
		justify-content: center;
		width: 44px;
		min-width: 44px;
		height: 44px;
		padding: 0;
		font-size: 18px;
		transform: none;
	}

	.lawata-brand-strip__social a::after {
		display: none;
	}

	.lawata-brand-strip__site {
		justify-self: center;
		justify-content: center;
		width: min(100%, 290px);
		min-height: 52px;
		padding: 11px 18px;
		white-space: normal;
		line-height: 1.25;
		text-align: center;
	}
}

/* Final mobile polish for quick access and directions cards. */
@media (max-width: 560px) {
	.lawata-quick__main { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 92px; padding: 14px 18px; text-align: center; }
	.lawata-quick__main > i { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 16px; font-size: 27px; }
	.lawata-quick__main > span:first-of-type { font-size: clamp(21px, 6vw, 25px); line-height: 1.05; letter-spacing: -0.02em; }
	.lawata-map-card { padding: 16px; }
	.lawata-map-card__frame { height: auto; aspect-ratio: 16 / 10; min-height: 190px; }
	.lawata-map-card > a { display: flex; justify-content: center; width: 100%; min-height: 48px; margin-top: 12px; padding: 11px 16px; font-size: 14px; line-height: 1.2; text-align: center; }
}
