.kfm-gt {
		--bg: #080706;
		--gold-light: #d8b45f;
		--text: #eee8df;
		--burgundy: #941c2d;
		--burgundy-border: #b13a49; 
		width: 100%; 
		background: var(--bg);
		color: var(--text);
		font-family: "Inter", sans-serif;
		font-size: 10px;
		font-weight: 300;
		line-height: 1.7;
	}
	.kfm-gt, .kfm-gt * { box-sizing: border-box; }
	.kfm-gt-container { width: 100%; margin: 0 auto; }

	.kfm-gt h2, .kfm-gt h3 {
		margin: 0;
		padding: 0; 
		font-weight: 600;
		color: var(--text);
	}
	.kfm-gt p { margin: 0; }

	.kfm-gt-card {
	    position: relative;
	    overflow: hidden;
	    background: linear-gradient(180deg, #120e0d 0%, #100c0b 100%);
	    border: 1px solid #30251d;
	    border-radius: 5px;
	    min-height: 268px;
	    margin-bottom: 30px;
	}
	p.kfm-gt-login {
	    font-size: 16px;
	    margin: 20px 0;
	}
	p.kfm-gt-login a {
	    font-size: 16px;
	}

	.kfm-gt-eyebrow {
	    color: var(--gold-light);
	    font-size: 12px;
	    letter-spacing: 3px;
	    line-height: 1.7;
	    text-transform: uppercase;
	    margin-bottom: 5px;
	    font-weight: 700;
	}

	.kfm-gt-gold-border {
		height: 3px;
		width: 100%;
		background: linear-gradient(90deg, #9b7837 0%, #c59b4c 65%, #edc36b 100%);
	}

	.kfm-gt-tx-header { position: relative; padding: 18px 19px 0; }

	.kfm-gt-tx-date {
		position: absolute;
		top: 17px;
		right: 19px;
		color: #b8a99b; 
		font-size: 8px;
		font-style: italic;
	}

	.kfm-gt-tx-header h2 {
	    max-width: 350px;
	    font-size: 26px;
	    line-height: 1.65;
	    letter-spacing: -0.25px;
	    font-family: "Source Sans 3", sans-serif;
	}

	.kfm-gt-locked {
	    position: relative;
	    text-align: center;
	    isolation: isolate;
	    padding-bottom: 20px;
	}
	.kfm-gt-locked::before {
		position: absolute;
		z-index: -1;
		content: "";
		top: 15px;
		left: 27px;
		right: 27px;
		height: 32px;
		background:
			radial-gradient(circle at 5% 50%, rgba(168,125,40,0.35) 0, rgba(168,125,40,0.13) 12px, transparent 17px),
			linear-gradient(90deg, transparent 15%, rgba(104,87,60,0.07) 50%, transparent 100%);
		filter: blur(5px);
	}

	.kfm-gt-lock-icon {
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    width: 40px;
	    height: 40px;
	    margin: 6px auto 8px;
	    border: 1px solid #8b6a2c;
	    border-radius: 50%;
	    color: #d8b45f;
	}
	.kfm-gt-lock-icon svg {
		display: block;
		width: 25px;
		height: 25px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.5;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.kfm-gt-locked h3 {
	    margin-bottom: 4px;
	    font-size: 32px;
	    line-height: 1.7;
	    letter-spacing: -0.2px;
	}
	.kfm-gt-locked p {
	    max-width: 550px;
	    margin: 0 auto;
	    color: #c8bfb5;
	    font-size: 16px;
	    line-height: 1.8;
	}

	.kfm-gt-footer { text-align: center; }

	.kfm-gt-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 213px;
		min-height: 34px;
		padding: 0 22px;
		border: 1px solid var(--burgundy-border);
		border-radius: 2px;
		background: var(--burgundy);
		color: #fff5ef;
		font-family: "Inter", sans-serif;
		font-size: 7px;
		font-weight: 600;
		letter-spacing: 1.35px;
		line-height: 1.4;
		text-decoration: none;
		text-align: center;
		text-transform: uppercase;
		cursor: pointer;
		transition: background 0.2s ease, border-color 0.2s ease;
	}
	.kfm-gt-btn:hover { background: #aa2639; border-color: #d09a72; color: #fff5ef; }

	.kfm-gt-login {
		margin-top: 8px;
		color: #aaa198;
		font-size: 8px;
		line-height: 1.7;
	}
	.kfm-gt-login a { color: var(--gold-light); text-decoration: none; }
	.kfm-gt-login a:hover { color: #f0d08b; text-decoration: underline; }

	@media (max-width: 520px) {
		.kfm-gt { padding: 20px 14px 28px; }
		.kfm-gt-tx-header { padding: 17px 16px 0; }
		.kfm-gt-tx-header h2 { max-width: 100%; font-size: 13px; }
		.kfm-gt-tx-date {
		   position: relative;
        top: -3px;
        right: auto;
        color: #b8a99b;
        font-family: Georgia, serif;
        font-size: 13px;
        font-style: italic;
		}
		.kfm-gt-locked { padding: 25px 15px; }
		.kfm-gt-locked h3 { font-size: 12px; }
		.kfm-gt-locked p { max-width: 300px; }
	}
	@media (prefers-reduced-motion: reduce) {
		.kfm-gt-btn { transition: none; }
	}