/* ===== Policy pages (privacy / cookie) ===== */.pol-hero {	background: linear-gradient(135deg, #5fd0ad 0%, #8ee6cb 60%, #c3f3e3 100%);	padding: 40px 0 36px;	color: #fff;}.pol-hero h2 {	color: #fff;	font-size: 32px;	font-weight: 700;	line-height: 1.3;	margin: 0 0 6px;}.pol-hero p {	margin: 0;	font-size: 15px;	color: rgba(255, 255, 255, .95);}.pol-hero .pol-meta {	display: inline-flex;	flex-wrap: wrap;	gap: 8px;	margin-top: 14px;}.pol-hero .pol-meta span {	font-size: 13px;	background: rgba(255, 255, 255, .22);	border-radius: 999px;	padding: 4px 12px;}.pol-section {	background: #f6f8f7;	padding: 36px 0 64px;}.pol-layout {	display: grid;	grid-template-columns: 260px minmax(0, 1fr);	gap: 28px;	align-items: start;}.pol-toc {	position: sticky;	top: 20px;	background: #fff;	border-radius: 16px;	padding: 18px 8px 18px 18px;	box-shadow: 0 1px 2px rgba(20, 60, 50, .06), 0 4px 16px rgba(20, 60, 50, .06);	max-height: calc(100vh - 40px);	overflow-y: auto;}.pol-toc strong {	display: block;	font-size: 14px;	color: #6b7a76;	margin-bottom: 8px;}.pol-toc ol {	list-style: none;	margin: 0;	padding: 0;	counter-reset: toc;}.pol-toc li {	counter-increment: toc;}.pol-toc a {	display: flex;	gap: 8px;	font-size: 14px;	line-height: 1.5;	padding: 6px 10px 6px 0;	color: #1f2d2a;	text-decoration: none;	border-radius: 8px;}.pol-toc a::before {	content: counter(toc) ".";	color: #3fb892;	font-weight: 700;	min-width: 20px;}.pol-toc a:hover {	color: #238a6a;}.pol-article {	background: #fff;	border-radius: 16px;	padding: 36px 40px;	box-shadow: 0 1px 2px rgba(20, 60, 50, .06), 0 4px 16px rgba(20, 60, 50, .06);	color: #33423e;	font-size: 16px;	line-height: 1.85;}.pol-article > section {	scroll-margin-top: 20px;}.pol-article > section + section {	margin-top: 34px;	padding-top: 30px;	border-top: 1px solid #eef2f1;}.pol-article h3 {	font-size: 21px;	font-weight: 700;	line-height: 1.4;	color: #1f2d2a;	margin: 0 0 12px;	letter-spacing: 0;	text-transform: none;}.pol-article h3 .pol-num {	display: inline-flex;	align-items: center;	justify-content: center;	width: 30px;	height: 30px;	margin-right: 10px;	border-radius: 9px;	background: #e9f9f3;	color: #238a6a;	font-size: 15px;	vertical-align: 2px;}.pol-article h4 {	font-size: 17px;	font-weight: 700;	color: #1f2d2a;	margin: 18px 0 6px;	letter-spacing: 0;	text-transform: none;}.pol-article p {	margin: 0 0 12px;}.pol-article ul {	margin: 0 0 12px;	padding-left: 22px;}.pol-article li {	margin-bottom: 6px;}.pol-article a {	color: #238a6a;	text-decoration: underline;	word-break: break-word;}.pol-note {	background: #f3fbf8;	border-left: 4px solid #67d5b3;	border-radius: 0 12px 12px 0;	padding: 14px 18px;	margin: 14px 0;	font-size: 15px;}.pol-table-wrap {	overflow-x: auto;	margin: 12px 0 16px;	border: 1px solid #e6ecea;	border-radius: 12px;}.pol-table {	width: 100%;	min-width: 560px;	border-collapse: collapse;	font-size: 14.5px;	line-height: 1.6;}.pol-table th {	background: #f3fbf8;	color: #1f2d2a;	font-weight: 700;	text-align: left;	padding: 12px 14px;	border-bottom: 1px solid #e6ecea;}.pol-table td {	padding: 12px 14px;	border-bottom: 1px solid #eef2f1;	vertical-align: top;}.pol-table tr:last-child td {	border-bottom: 0;}.pol-table code {	background: #f1f5f4;	color: #1f2d2a;	padding: 2px 6px;	border-radius: 6px;	font-size: 13px;}.pol-tag {	display: inline-block;	font-size: 12px;	line-height: 1;	padding: 5px 9px;	border-radius: 999px;	background: #e9f9f3;	color: #238a6a;	white-space: nowrap;}.pol-tag--opt {	background: #fff4e5;	color: #a35c00;}.pol-contact {	display: grid;	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));	gap: 10px;	margin: 12px 0;}.pol-contact a,.pol-contact div {	display: flex;	align-items: center;	gap: 10px;	padding: 12px 14px;	border: 1px solid #e6ecea;	border-radius: 12px;	text-decoration: none !important;	color: #1f2d2a !important;	font-size: 15px;	line-height: 1.4;}.pol-contact i {	color: #3fb892;	width: 18px;	text-align: center;}.pol-contact a:hover {	border-color: #67d5b3;	background: #f3fbf8;}.pol-btn {	display: inline-flex;	align-items: center;	gap: 8px;	padding: 12px 22px;	border-radius: 999px;	background: #3fb892;	color: #fff !important;	text-decoration: none !important;	font-size: 15px;	border: 0;	cursor: pointer;	transition: background-color .2s, transform .15s;}.pol-btn:hover {	background: #33a07e;}.pol-btn:active {	transform: scale(.97);}@media (max-width: 991px) {	.pol-layout {		grid-template-columns: minmax(0, 1fr);	}	.pol-toc {		position: static;		max-height: none;	}}@media (max-width: 767px) {	.pol-hero {		padding: 28px 0 24px;	}	.pol-hero h2 {		font-size: 26px;	}	.pol-section {		padding: 20px 0 40px;	}	.pol-article {		padding: 22px 18px;		font-size: 15.5px;		line-height: 1.8;	}	.pol-article h3 {		font-size: 19px;	}}.pol-article > p + section {	margin-top: 28px;}