			*,
			*::before,
			*::after {
				box-sizing: border-box;
				margin: 0;
				padding: 0;
			}
			html {
				font-size: clamp(13px, calc(11px + 0.56vw), 16px);
				scroll-behavior: smooth;
				overflow-x: hidden;
			}
			body {
				font-family:
					'Inter',
					-apple-system,
					BlinkMacSystemFont,
					'Segoe UI',
					system-ui,
					sans-serif;
				color: #16192e;
				background: #fff;
				line-height: 1.65;
				overflow-x: hidden;
				width: 100%;
				-webkit-font-smoothing: antialiased;
				-moz-osx-font-smoothing: grayscale;
				text-rendering: optimizeLegibility;
			}
			img {
				max-width: 100%;
				height: auto;
			}
			h1,
			h2,
			h3,
			h4 {
				line-height: 1.2;
				font-weight: 700;
				letter-spacing: -0.01em;
			}
			a {
				color: inherit;
				text-decoration: none;
			}
			:focus-visible {
				outline: 2px solid var(--blue);
				outline-offset: 3px;
				border-radius: 4px;
			}
			:root {
				--navy: #0a1f3d;
				--navy2: #0f2d55;
				--navy3: #1a46b8;
				--blue: #1a46b8;
				--blue-soft: #e8f0fc;
				--green: #1d9259;
				--green-soft: #e8f5ee;
				--off: #f4f7fb;
				--muted: #4e5e78;
				--border: #d8e2f0;
				--r: 12px;
				--rl: 20px;
				--sh: 0 2px 16px rgba(10, 31, 61, 0.08);
				--shl: 0 8px 40px rgba(10, 31, 61, 0.14);
			}
			.wrap {
				width: 100%;
				max-width: 1080px;
				margin: 0 auto;
				padding: 0 24px;
			}
			section {
				padding: 88px 0;
			}
			@media (max-width: 640px) {
				section {
					padding: 60px 0;
				}
			}
			.lbl {
				display: inline-flex;
				align-items: center;
				gap: 7px;
				font-size: 0.68rem;
				font-weight: 700;
				letter-spacing: 0.1em;
				text-transform: uppercase;
				color: var(--green);
				margin-bottom: 12px;
			}
			.lbl::before {
				content: '';
				display: block;
				width: 6px;
				height: 6px;
				border-radius: 50%;
				background: var(--green);
				flex-shrink: 0;
			}
			.htitle {
				font-size: clamp(1.65rem, 3.5vw, 2.5rem);
				color: var(--navy);
				margin-bottom: 16px;
				letter-spacing: -0.02em;
			}
			.hsub {
				font-size: 1rem;
				color: var(--muted);
				max-width: 600px;
				font-weight: 400;
				line-height: 1.7;
			}
			.hd {
				margin-bottom: 48px;
			}
			.hd.c {
				text-align: center;
			}
			.hd.c .hsub {
				margin: 0 auto;
			}
			.rule {
				width: 48px;
				height: 3px;
				background: var(--green);
				border-radius: 2px;
				margin-top: 16px;
			}
			.rule.c {
				margin: 14px auto 0;
			}
			.ib {
				width: 44px;
				height: 44px;
				min-width: 44px;
				border-radius: 10px;
				background: var(--blue-soft);
				display: flex;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
				transition: background 0.2s;
			}
			.ib svg {
				width: 20px;
				height: 20px;
				stroke: var(--navy);
				fill: none;
				stroke-width: 1.8;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.ib.dk {
				background: rgba(255, 255, 255, 0.1);
			}
			.ib.dk svg {
				stroke: rgba(255, 255, 255, 0.85);
			}
			.btn {
				display: inline-flex;
				align-items: center;
				gap: 8px;
				padding: 13px 26px;
				border-radius: 8px;
				font-size: 0.95rem;
				font-weight: 600;
				font-family: inherit;
				border: none;
				cursor: pointer;
				transition: all 0.2s;
			}
			.btn svg {
				width: 17px;
				height: 17px;
				stroke: currentColor;
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.btn-p {
				background: var(--navy);
				color: #fff;
				box-shadow: 0 4px 18px rgba(10, 31, 61, 0.28);
				letter-spacing: 0.01em;
			}
			.btn-p:hover {
				background: var(--navy2);
				transform: translateY(-1px);
			}
			.btn-w {
				background: #fff;
				color: var(--navy);
				box-shadow: 0 4px 18px rgba(0, 0, 0, 0.18);
				font-family: inherit;
				font-size: 0.95rem;
				font-weight: 700;
				border: none;
				cursor: pointer;
				padding: 14px 32px;
				border-radius: 8px;
				transition:
					transform 0.2s,
					box-shadow 0.2s;
				animation: btn-flash 4s ease-in-out infinite;
				text-align: center;
				display: inline-flex;
				align-items: center;
				justify-content: center;
			}
			.btn-w:hover {
				transform: translateY(-1px);
				box-shadow: 0 7px 24px rgba(0, 0, 0, 0.22);
				animation: none;
				background: var(--green);
				color: #fff;
			}
			@keyframes btn-flash {
				0%,
				10% {
					background: #fff;
					color: var(--navy);
				}
				30%,
				80% {
					background: var(--green);
					color: #fff;
				}
				100% {
					background: #fff;
					color: var(--navy);
				}
			}
			nav {
				position: relative;
				z-index: 100;
				background: rgba(255, 255, 255, 0.97);
				border-bottom: 1px solid var(--border);
			}
			nav.sc {
				box-shadow: var(--sh);
			}
			.ni {
				display: flex;
				align-items: center;
				justify-content: space-between;
				padding: 0 24px;
				height: 80px;
				max-width: 1080px;
				margin: 0 auto;
			}
			.nl {
				display: none;
				gap: 28px;
				list-style: none;
				font-size: 0.875rem;
				font-weight: 500;
				color: var(--muted);
				align-items: center;
			}
			.nl a:hover {
				color: var(--navy);
			}
			.nc {
				background: var(--navy);
				color: #fff;
				padding: 9px 20px;
				border-radius: 8px;
				font-size: 0.875rem;
				font-weight: 600;
				white-space: nowrap;
				transition:
					background 0.2s,
					box-shadow 0.2s;
				animation: nc-float 2.5s ease-in-out infinite;
			}
			.nc:hover {
				background: var(--navy2);
				animation: none;
				transform: translateY(-2px);
				box-shadow: 0 6px 18px rgba(15, 23, 42, 0.28);
			}
			@keyframes nc-float {
				0%,
				100% {
					transform: translateY(0);
				}
				50% {
					transform: translateY(-4px);
				}
			}
			@media (min-width: 1000px) {
				.nl {
					display: flex;
				}
			}
			.hero {
				min-height: 100vh;
				display: flex;
				align-items: center;
				padding: 100px 0 64px;
				position: relative;
				overflow: hidden;
				background: var(--off);
			}
			.hero-bg {
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center 22%;
				z-index: 0;
				pointer-events: none;
			}
			@media (min-width: 900px) {
				.hero-bg {
					object-position: center 30%;
				}
			}
			.hg {
				display: grid;
				grid-template-columns: 1fr;
				gap: 48px;
				align-items: center;
				position: relative;
				z-index: 2;
				text-align: center;
			}
			@media (min-width: 900px) {
				.hg {
					grid-template-columns: 1.15fr 1fr;
					text-align: left;
				}
			}
			.hero h1 {
				font-size: clamp(2rem, 4.6vw, 3.4rem);
				color: var(--green);
				margin-bottom: 20px;
				letter-spacing: -0.03em;
				line-height: 1.12;
			}
			.hero h1 strong {
				color: inherit;
				display: inline;
				margin: 0;
				font-weight: inherit;
			}
			.hero-line1 {
				display: inline-block;
				position: relative;
				padding-bottom: 8px;
			}
			.hero-line1::after {
				content: '';
				position: absolute;
				left: 50%;
				bottom: 0;
				transform: translateX(-50%);
				height: 4px;
				width: 0;
				background: #1d9259;
				border-radius: 2px;
				animation: underlineGrow 2s 0.5s ease-out forwards;
			}
			@media (min-width: 900px) {
				.hero-line1::after {
					left: 0;
					transform: none;
				}
			}
			@keyframes underlineGrow {
				from {
					width: 0;
				}
				to {
					width: 100%;
				}
			}
			.hero p.sub {
				font-size: clamp(0.9rem, 1.8vw, 1.05rem);
				color: var(--muted);
				max-width: 500px;
				margin: 0 auto 32px;
				font-weight: 400;
				line-height: 1.75;
			}
			@media (min-width: 900px) {
				.hero p.sub {
					margin: 0 0 32px;
				}
			}
			.hpanel {
				background: rgba(255, 255, 255, 0.95);
				border: 1px solid var(--border);
				border-radius: var(--rl);
				box-shadow: var(--shl);
				padding: 32px;
				display: none;
			}
			@media (min-width: 900px) {
				.hpanel {
					display: block;
				}
			}
			.hpt {
				font-size: 0.7rem;
				font-weight: 700;
				letter-spacing: 0.1em;
				text-transform: uppercase;
				color: var(--muted);
				margin-bottom: 20px;
			}
			.hcl {
				display: flex;
				flex-direction: column;
				gap: 14px;
			}
			.hck {
				display: flex;
				align-items: center;
				gap: 12px;
				font-size: 0.88rem;
				color: var(--navy);
			}
			.cki {
				width: 30px;
				height: 30px;
				border-radius: 7px;
				background: var(--blue-soft);
				display: flex;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
			}
			.cki svg {
				width: 14px;
				height: 14px;
				stroke: var(--navy);
				fill: none;
				stroke-width: 2.5;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.hhr {
				height: 1px;
				background: var(--border);
				margin: 20px 0;
			}
			.hpc {
				display: block;
				width: 100%;
				text-align: center;
				background: var(--navy);
				color: #fff;
				padding: 15px;
				border-radius: 10px;
				font-size: 0.95rem;
				font-weight: 700;
				transition: all 0.3s;
				letter-spacing: 0.01em;
			}
			.hpc:hover {
				background: #1d9259;
				transform: translateY(-1px);
				box-shadow: 0 6px 20px rgba(29, 146, 89, 0.35);
			}
			.hpanel:has(.hpc:hover) .hpt {
				color: #1d9259;
				transition: color 0.3s;
			}
			.hpanel:has(.hpc:hover) .cki {
				background: rgba(29, 146, 89, 0.12);
				transition: background 0.3s;
			}
			.hpanel:has(.hpc:hover) .cki svg {
				stroke: #1d9259;
				transition: stroke 0.3s;
			}
			.hpn {
				text-align: center;
				font-size: 0.75rem;
				color: var(--muted);
				margin-top: 10px;
			}
			.problem {
				background: #f0f4f9;
			}
			.pg {
				display: grid;
				grid-template-columns: 1fr;
				gap: 14px;
			}
			@media (min-width: 600px) {
				.pg {
					grid-template-columns: repeat(2, 1fr);
				}
			}
			@media (min-width: 960px) {
				.pg {
					grid-template-columns: repeat(3, 1fr);
				}
			}
			.pc {
				background: #fff;
				border: 1px solid var(--border);
				border-radius: var(--r);
				padding: 22px;
				display: flex;
				align-items: flex-start;
				gap: 14px;
				box-shadow: var(--sh);
				transition:
					transform 0.2s,
					box-shadow 0.2s,
					border-color 0.2s;
			}
			.pc:hover {
				transform: translateY(-2px);
				box-shadow: var(--shl);
				border-color: var(--green);
			}
			.pc h4 {
				font-size: 0.9rem;
				font-weight: 700;
				color: var(--navy);
				letter-spacing: -0.01em;
			}
			.pc-desc {
				font-size: 0.8rem;
				color: var(--muted);
				margin-top: 5px;
				line-height: 1.55;
			}
			.pr {
				margin-top: 40px;
				background: linear-gradient(130deg, var(--navy), var(--navy2));
				border-radius: var(--rl);
				padding: 28px 32px;
				color: #fff;
				display: flex;
				align-items: center;
				gap: 20px;
				flex-wrap: wrap;
				box-shadow: 0 8px 32px rgba(10, 31, 61, 0.25);
			}
			.pri {
				width: 48px;
				height: 48px;
				border-radius: 12px;
				background: rgba(255, 255, 255, 0.12);
				display: flex;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
			}
			.pri svg {
				width: 24px;
				height: 24px;
				stroke: #fff;
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.pr h3 {
				font-size: 1.15rem;
				margin-bottom: 4px;
			}
			.pr p {
				font-size: 0.875rem;
				opacity: 0.8;
				font-weight: 400;
			}
			.steps {
				background: var(--navy);
				position: relative;
				overflow: hidden;
			}
			.steps-bg {
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center 40%;
				z-index: 0;
				pointer-events: none;
			}
			.steps-ov {
				position: absolute;
				inset: 0;
				z-index: 1;
				background: linear-gradient(
					160deg,
					rgba(10, 31, 61, 0.8) 0%,
					rgba(15, 45, 85, 0.75) 100%
				);
			}
			.steps .wrap {
				position: relative;
				z-index: 2;
			}
			.steps .htitle {
				color: #fff;
			}
			.steps .hsub {
				color: rgba(255, 255, 255, 0.75);
			}
			.steps .lbl {
				color: rgba(255, 255, 255, 0.75);
			}
			.steps .lbl::before {
				background: rgba(255, 255, 255, 0.6);
			}
			.steps .rule {
				background: rgba(255, 255, 255, 0.45);
			}
			.sg {
				display: grid;
				grid-template-columns: 1fr;
				gap: 0;
			}
			.sc2 {
				display: flex;
				align-items: flex-start;
				gap: 18px;
				padding: 24px 0;
				border-bottom: 1px solid rgba(255, 255, 255, 0.1);
			}
			.sc2:last-child {
				border-bottom: none;
			}
			.sn {
				width: 48px;
				height: 48px;
				min-width: 48px;
				border-radius: 50%;
				background: var(--navy);
				color: #fff;
				display: flex;
				align-items: center;
				justify-content: center;
				font-size: 1.1rem;
				font-weight: 800;
				border: 2px solid rgba(255, 255, 255, 0.2);
				letter-spacing: -0.01em;
			}
			.sb {
				flex: 1;
				padding-top: 6px;
			}
			.stag {
				font-size: 0.65rem;
				font-weight: 700;
				letter-spacing: 0.12em;
				text-transform: uppercase;
				color: rgba(255, 255, 255, 0.6);
				margin-bottom: 4px;
			}
			.sb h3 {
				font-size: 1.08rem;
				color: #fff;
				margin-bottom: 6px;
				text-shadow: 0 1px 6px rgba(0, 0, 0, 0.35);
				letter-spacing: -0.01em;
			}
			.sb p {
				font-size: 0.875rem;
				color: rgba(255, 255, 255, 0.88);
				line-height: 1.6;
			}
			@media (min-width: 768px) {
				.sg {
					grid-template-columns: repeat(2, 1fr);
					gap: 24px;
				}
				.sc2 {
					border-bottom: none;
					background: rgba(5, 15, 35, 0.55);
					border-radius: var(--r);
					padding: 24px;
					flex-direction: column;
					border: 1px solid rgba(255, 255, 255, 0.15);
					backdrop-filter: blur(6px);
				}
				.sc2:hover {
					box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
					transform: translateY(-2px);
					transition: all 0.2s;
				}
			}
			@media (min-width: 1024px) {
				.sg {
					grid-template-columns: repeat(4, 1fr);
				}
			}
			.services {
				background: var(--off);
			}
			.svgrid {
				display: grid;
				grid-template-columns: 1fr;
				gap: 14px;
			}
			@media (min-width: 600px) {
				.svgrid {
					grid-template-columns: repeat(2, 1fr);
				}
			}
			@media (min-width: 960px) {
				.svgrid {
					grid-template-columns: repeat(3, 1fr);
				}
			}
			.svc {
				background: #fff;
				border: 1px solid var(--border);
				border-radius: var(--r);
				padding: 24px;
				box-shadow: var(--sh);
				transition:
					transform 0.2s,
					box-shadow 0.2s,
					border-color 0.2s;
			}
			.svc:hover {
				transform: translateY(-2px);
				box-shadow: var(--shl);
				border-color: rgba(26, 70, 184, 0.3);
			}
			.svc .ib {
				margin-bottom: 16px;
			}
			.svc h3 {
				font-size: 0.95rem;
				font-weight: 700;
				color: var(--navy);
				margin-bottom: 8px;
				letter-spacing: -0.01em;
			}
			.svc p {
				font-size: 0.82rem;
				color: var(--muted);
				line-height: 1.6;
			}
			.legal {
				background: linear-gradient(
					145deg,
					#071428 0%,
					var(--navy) 40%,
					var(--navy2) 100%
				);
				color: #fff;
			}
			.legal .htitle {
				color: #fff;
			}
			.legal .lbl {
				color: rgba(255, 255, 255, 0.6);
			}
			.legal .lbl::before {
				background: rgba(255, 255, 255, 0.4);
			}
			.legal .hsub {
				color: rgba(255, 255, 255, 0.65);
			}
			.lgrid {
				display: grid;
				grid-template-columns: 1fr;
				gap: 16px;
			}
			@media (min-width: 768px) {
				.lgrid {
					grid-template-columns: repeat(3, 1fr);
				}
			}
			.li {
				background: rgba(255, 255, 255, 0.07);
				border: 1px solid rgba(255, 255, 255, 0.12);
				border-radius: var(--r);
				padding: 26px;
				display: flex;
				flex-direction: column;
				gap: 12px;
				transition:
					background 0.2s,
					border-color 0.2s;
			}
			.li:hover {
				background: rgba(255, 255, 255, 0.11);
				border-color: rgba(255, 255, 255, 0.2);
			}
			.li h4 {
				font-size: 0.9rem;
				font-weight: 600;
				color: #fff;
			}
			.li p {
				font-size: 0.82rem;
				color: rgba(255, 255, 255, 0.6);
				line-height: 1.6;
			}
			.lr {
				margin-top: 32px;
				border: 1px solid rgba(255, 255, 255, 0.12);
				border-radius: var(--rl);
				padding: 28px;
				background: rgba(255, 255, 255, 0.04);
			}
			.lr h4 {
				font-size: 1rem;
				font-weight: 600;
				color: #fff;
				margin-bottom: 16px;
			}
			.lrl {
				display: flex;
				flex-direction: column;
				gap: 10px;
			}
			.lri {
				display: flex;
				align-items: flex-start;
				gap: 10px;
				font-size: 0.875rem;
				color: rgba(255, 255, 255, 0.8);
			}
			.lri::before {
				content: '✓';
				color: var(--green);
				flex-shrink: 0;
				font-size: 0.75rem;
				font-weight: 700;
				line-height: 1.2;
			}
			.trust {
				background: #f8faff;
			}
			.feat-grid {
				display: grid;
				grid-template-columns: 1fr;
				gap: 16px;
			}
			@media (min-width: 640px) {
				.feat-grid {
					grid-template-columns: repeat(2, 1fr);
				}
			}
			@media (min-width: 960px) {
				.feat-grid {
					grid-template-columns: repeat(3, 1fr);
					gap: 20px;
				}
			}
			.feat-card {
				display: flex;
				align-items: flex-start;
				gap: 18px;
				padding: 26px;
				background: #fff;
				border: 1px solid var(--border);
				border-radius: var(--r);
				box-shadow: var(--sh);
				transition:
					transform 0.2s,
					box-shadow 0.2s,
					border-color 0.2s;
			}
			.feat-card:hover {
				transform: translateY(-2px);
				box-shadow: var(--shl);
				border-color: rgba(26, 70, 184, 0.25);
				background: #fff;
			}
			.feat-icon {
				width: 48px;
				height: 48px;
				min-width: 48px;
				border-radius: 12px;
				background: linear-gradient(135deg, var(--navy) 0%, var(--navy2) 100%);
				display: flex;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
				transition: transform 0.2s;
			}
			.feat-card:hover .feat-icon {
				transform: scale(1.08);
			}
			.feat-icon svg {
				width: 22px;
				height: 22px;
				stroke: #fff;
				fill: none;
				stroke-width: 1.8;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.feat-body h3 {
				font-size: 1rem;
				font-weight: 700;
				color: var(--navy);
				margin-bottom: 6px;
				letter-spacing: -0.01em;
			}
			.feat-body p {
				font-size: 0.85rem;
				color: var(--muted);
				line-height: 1.65;
			}
			.feat-bar {
				display: flex;
				align-items: center;
				justify-content: center;
				flex-wrap: wrap;
				gap: 0;
				margin-top: 48px;
				background: var(--navy);
				border-radius: var(--rl);
				overflow: hidden;
			}
			.feat-bar-item {
				flex: 1;
				min-width: 140px;
				text-align: center;
				padding: 28px 20px;
			}
			.feat-bar-val {
				font-size: 2rem;
				font-weight: 800;
				color: #1d9259;
				line-height: 1;
				margin-bottom: 6px;
				letter-spacing: -0.02em;
			}
			.feat-bar-lbl {
				font-size: 0.75rem;
				color: rgba(255, 255, 255, 0.6);
				font-weight: 500;
				text-transform: uppercase;
				letter-spacing: 0.05em;
			}
			.feat-bar-sep {
				width: 1px;
				height: 60px;
				background: rgba(255, 255, 255, 0.12);
				flex-shrink: 0;
			}
			@media (max-width: 640px) {
				.feat-bar-sep {
					display: none;
				}
				.feat-bar-item {
					border-bottom: 1px solid rgba(255, 255, 255, 0.08);
				}
			}
			.faq {
				background: var(--off);
			}
			.fl {
				display: flex;
				flex-direction: column;
				gap: 8px;
				max-width: 760px;
				margin: 0 auto;
			}
			.fi {
				background: #fff;
				border: 1px solid var(--border);
				border-radius: var(--r);
				overflow: hidden;
				box-shadow: var(--sh);
				transition: border-color 0.2s;
			}
			.fi.op {
				border-color: var(--blue);
				box-shadow: 0 4px 20px rgba(26, 70, 184, 0.1);
			}
			.fq {
				width: 100%;
				background: none;
				border: none;
				padding: 18px 22px;
				text-align: left;
				font-family: inherit;
				font-size: 0.9rem;
				font-weight: 600;
				color: var(--navy);
				cursor: pointer;
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 12px;
				transition: background 0.15s;
				line-height: 1.45;
			}
			.fq:hover {
				background: var(--blue-soft);
			}
			.fi.op .fq {
				background: var(--blue-soft);
				color: var(--navy);
			}
			.fqi {
				flex-shrink: 0;
				transition: transform 0.3s;
			}
			.fqi svg {
				width: 18px;
				height: 18px;
				stroke: var(--muted);
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
			}
			.fi.op .fqi {
				transform: rotate(45deg);
			}
			.fa {
				max-height: 0;
				overflow: hidden;
				transition:
					max-height 0.4s ease,
					padding 0.3s;
				padding: 0 22px;
				font-size: 0.875rem;
				color: var(--muted);
				line-height: 1.7;
			}
			.fi.op .fa {
				max-height: 600px;
				padding: 0 22px 20px;
			}
			.ctasec {
				background: #fff;
			}
			.ctaw {
				background: linear-gradient(135deg, var(--navy) 0%, var(--navy2) 100%);
				border-radius: var(--rl);
				padding: 56px 40px;
				color: #fff;
				text-align: center;
				position: relative;
				overflow: hidden;
			}
			.ctaw::before {
				content: '';
				position: absolute;
				top: -40%;
				right: -8%;
				width: 380px;
				height: 380px;
				border-radius: 50%;
				background: rgba(255, 255, 255, 0.04);
			}
			.ctaw::after {
				content: '';
				position: absolute;
				bottom: -30%;
				left: -5%;
				width: 280px;
				height: 280px;
				border-radius: 50%;
				background: rgba(255, 255, 255, 0.03);
			}
			.ctaw h2 {
				font-size: clamp(1.5rem, 3.5vw, 2.2rem);
				color: #fff;
				margin-bottom: 14px;
				position: relative;
				z-index: 2;
				letter-spacing: -0.02em;
			}
			.ctaw > p {
				font-size: 0.975rem;
				opacity: 0.75;
				margin-bottom: 36px;
				position: relative;
				z-index: 2;
			}
			.cf {
				display: flex;
				flex-direction: column;
				gap: 12px;
				max-width: 460px;
				margin: 0 auto 20px;
				position: relative;
				z-index: 2;
			}
			.cf input,
			.cf textarea {
				width: 100%;
				padding: 13px 16px;
				border-radius: 9px;
				border: 1.5px solid rgba(255, 255, 255, 0.22);
				background: rgba(255, 255, 255, 0.1);
				color: #fff;
				font-family: inherit;
				font-size: 0.9rem;
				outline: none;
				transition: all 0.2s;
			}
			.cf input::placeholder,
			.cf textarea::placeholder {
				color: rgba(255, 255, 255, 0.45);
			}
			.cf input:focus,
			.cf textarea:focus {
				border-color: rgba(255, 255, 255, 0.55);
				background: rgba(255, 255, 255, 0.15);
			}
			.cf textarea {
				min-height: 84px;
				resize: vertical;
			}
			.ctan {
				font-size: 0.78rem;
				opacity: 0.6;
				position: relative;
				z-index: 2;
			}
			.ccon {
				display: flex;
				justify-content: center;
				gap: 24px;
				flex-wrap: wrap;
				margin-top: 20px;
				position: relative;
				z-index: 2;
			}
			.ccl {
				display: flex;
				align-items: center;
				gap: 8px;
				color: rgba(255, 255, 255, 0.8);
				font-size: 0.875rem;
				font-weight: 500;
				transition: color 0.2s;
			}
			.ccl:hover {
				color: #fff;
			}
			.ccl svg {
				width: 16px;
				height: 16px;
				stroke: currentColor;
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
				stroke-linejoin: round;
				opacity: 0.7;
			}
			footer {
				background: #071428;
				color: rgba(255, 255, 255, 0.55);
				padding: 56px 0 32px;
				font-size: 0.85rem;
			}
			.fi2 {
				display: flex;
				flex-wrap: wrap;
				gap: 36px;
				justify-content: center;
			}
			.fi2 .fc {
				min-width: 160px;
			}
			.fb p {
				font-size: 0.82rem;
				line-height: 1.7;
				color: rgba(255, 255, 255, 0.5);
				margin-top: 12px;
			}
			.fc h5 {
				font-size: 0.72rem;
				font-weight: 700;
				letter-spacing: 0.09em;
				text-transform: uppercase;
				color: rgba(255, 255, 255, 0.35);
				margin-bottom: 14px;
			}
			.fc ul {
				list-style: none;
				display: flex;
				flex-direction: column;
				gap: 9px;
			}
			.fc ul li a {
				color: rgba(255, 255, 255, 0.55);
				font-size: 0.85rem;
				transition: color 0.2s;
			}
			.fc ul li a:hover {
				color: #fff;
			}
			.fc address {
				font-style: normal;
				font-size: 0.82rem;
				color: rgba(255, 255, 255, 0.38);
				line-height: 1.7;
				margin-top: 10px;
			}
			.fbot {
				border-top: 1px solid rgba(255, 255, 255, 0.07);
				margin-top: 40px;
				padding-top: 24px;
				display: flex;
				flex-wrap: wrap;
				gap: 12px;
				justify-content: center;
				font-size: 0.78rem;
				color: rgba(255, 255, 255, 0.3);
			}
			.fbot a {
				color: rgba(255, 255, 255, 0.38);
				transition: color 0.2s;
			}
			.fbot a:hover {
				color: #fff;
			}
			@media (max-width: 999px) {
				.fc {
					text-align: center;
					width: 100%;
				}
				.fc ul {
					align-items: center;
				}
				.fbl {
					justify-content: center;
				}
			}
			section[id] {
				scroll-margin-top: 0;
			}
			::selection {
				background: rgba(26, 70, 184, 0.15);
				color: var(--navy);
			}
			.fbl {
				display: flex;
				gap: 18px;
				flex-wrap: wrap;
			}
			.stk {
				position: fixed;
				bottom: 0;
				left: 0;
				right: 0;
				z-index: 99;
				background: #fff;
				border-top: 1px solid var(--border);
				padding: 10px 16px;
				display: flex;
				gap: 10px;
				box-shadow: 0 -3px 20px rgba(10, 31, 61, 0.09);
				transition: transform 0.3s;
			}
			.stk.h {
				transform: translateY(100%);
			}
			.stk .btn-p {
				flex: 1;
				justify-content: center;
				padding: 13px 16px;
				font-size: 0.875rem;
			}
			.stkc {
				background: var(--blue-soft);
				color: var(--navy);
				border: none;
				border-radius: 8px;
				padding: 13px 16px;
				display: flex;
				align-items: center;
				justify-content: center;
				cursor: pointer;
				transition: background 0.2s;
				text-decoration: none;
			}
			.stkc:hover {
				background: #d1dcf3;
			}
			.stkc svg {
				width: 20px;
				height: 20px;
				stroke: var(--navy);
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			@media (min-width: 768px) {
				.stk {
					display: none;
				}
			}
			.rv {
				opacity: 0;
				transform: translateY(20px);
				transition:
					opacity 0.55s ease,
					transform 0.55s ease;
			}
			.rv.on {
				opacity: 1;
				transform: translateY(0);
			}
			.ham {
				display: flex;
				flex-direction: column;
				justify-content: center;
				gap: 5px;
				width: 40px;
				height: 40px;
				background: none;
				border: none;
				cursor: pointer;
				padding: 8px;
				border-radius: 8px;
				transition: background 0.2s;
				flex-shrink: 0;
			}
			.ham:hover {
				background: var(--off);
			}
			.ham span {
				display: block;
				height: 2px;
				background: var(--navy);
				border-radius: 2px;
				transition:
					transform 0.3s,
					opacity 0.3s,
					width 0.3s;
			}
			.ham span:nth-child(3) {
				width: 70%;
			}
			.ham.op span:nth-child(1) {
				transform: translateY(7px) rotate(45deg);
			}
			.ham.op span:nth-child(2) {
				opacity: 0;
			}
			.ham.op span:nth-child(3) {
				transform: translateY(-7px) rotate(-45deg);
				width: 100%;
			}
			@media (min-width: 1000px) {
				.ham {
					display: none;
				}
			}
			@media (max-width: 639px) {
				.ni > a:first-child {
					display: none !important;
				}
				.na {
					width: 100%;
					justify-content: space-between;
				}
			}
			@media (min-width: 640px) and (max-width: 999px) {
				.ni > a:first-child img {
					height: 30px;
				}
			}
			.mob-nav {
				position: fixed;
				inset: 0;
				z-index: 99;
				background: rgba(7, 20, 40, 0.55);
				opacity: 0;
				pointer-events: none;
				transition: opacity 0.3s;
				-webkit-backdrop-filter: blur(2px);
				backdrop-filter: blur(2px);
			}
			.mob-nav.op {
				opacity: 1;
				pointer-events: all;
			}
			.mob-nav-inner {
				position: absolute;
				top: 0;
				right: 0;
				width: min(320px, 88vw);
				height: 100%;
				background: #fff;
				padding: 90px 28px 32px;
				transform: translateX(100%);
				transition: transform 0.35s cubic-bezier(0.32, 0.72, 0, 1);
				display: flex;
				flex-direction: column;
				gap: 28px;
				box-shadow: -8px 0 48px rgba(10, 31, 61, 0.18);
			}
			.mob-nav.op .mob-nav-inner {
				transform: translateX(0);
			}
			.mob-nav-inner ul {
				list-style: none;
				display: flex;
				flex-direction: column;
				gap: 2px;
			}
			.mob-nav-inner ul li a {
				display: block;
				padding: 13px 16px;
				font-size: 1.05rem;
				font-weight: 600;
				color: var(--navy);
				border-radius: 10px;
				transition: background 0.2s;
			}
			.mob-nav-inner ul li a:hover {
				background: var(--off);
			}
			.mob-nav-cta {
				display: block;
				background: var(--navy);
				color: #fff;
				text-align: center;
				padding: 16px;
				border-radius: 12px;
				font-size: 1rem;
				font-weight: 700;
				transition: background 0.2s;
				margin-top: auto;
			}
			.mob-nav-cta:hover {
				background: var(--navy2);
			}
			.mob-nav-close {
				position: absolute;
				top: 24px;
				right: 24px;
				width: 36px;
				height: 36px;
				display: flex;
				align-items: center;
				justify-content: center;
				background: var(--off);
				border: none;
				border-radius: 8px;
				cursor: pointer;
				color: var(--navy);
			}
			.mob-nav-close svg {
				width: 18px;
				height: 18px;
				stroke: currentColor;
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
			}

			.hero-mob-strip {
				display: flex;
				flex-wrap: wrap;
				gap: 8px;
				margin-top: 28px;
				justify-content: center;
			}
			@media (min-width: 900px) {
				.hero-mob-strip {
					display: none;
				}
			}
			.hero-mob-tag {
				display: inline-flex;
				align-items: center;
				gap: 6px;
				background: rgba(255, 255, 255, 0.85);
				border: 1px solid var(--border);
				border-radius: 99px;
				padding: 6px 14px;
				font-size: 0.78rem;
				font-weight: 500;
				color: var(--navy);
				backdrop-filter: blur(4px);
			}
			.hero-mob-tag svg {
				width: 13px;
				height: 13px;
				stroke: var(--green);
				fill: none;
				stroke-width: 2.5;
				stroke-linecap: round;
				stroke-linejoin: round;
				flex-shrink: 0;
			}

			.hero-q {
				display: flex;
				align-items: flex-start;
				gap: 10px;
				margin-bottom: 20px;
				justify-content: center;
				text-align: center;
			}
			@media (min-width: 900px) {
				.hero-q {
					justify-content: flex-start;
					text-align: left;
				}
			}
			.hero-q-mark {
				flex-shrink: 0;
				width: 26px;
				height: 26px;
				min-width: 26px;
				background: var(--green-soft);
				border: 1.5px solid rgba(29, 146, 89, 0.25);
				border-radius: 50%;
				display: flex;
				align-items: center;
				justify-content: center;
				margin-top: 1px;
			}
			.hero-q-mark svg {
				width: 13px;
				height: 13px;
				stroke: var(--green);
				fill: none;
				stroke-width: 2.2;
				stroke-linecap: round;
				stroke-linejoin: round;
			}
			.hero-q-text {
				font-size: clamp(0.85rem, 1.5vw, 0.97rem);
				color: var(--muted);
				font-weight: 500;
				line-height: 1.55;
				max-width: 430px;
			}
			.hero-lead {
				font-size: clamp(0.88rem, 1.6vw, 1rem);
				color: var(--muted);
				line-height: 1.75;
				max-width: 490px;
				margin: 0 auto 14px;
				font-weight: 400;
			}
			@media (min-width: 900px) {
				.hero-lead {
					margin: 0 0 14px;
				}
			}
			.hero-note {
				max-width: 490px;
				margin: 0 auto 30px;
				padding: 11px 15px;
				background: var(--green-soft);
				border-radius: 10px;
				border-left: 3px solid var(--green);
				display: flex;
				align-items: flex-start;
				gap: 10px;
				font-size: 0.83rem;
				color: #2a5540;
				line-height: 1.65;
			}
			@media (min-width: 900px) {
				.hero-note {
					margin: 0 0 30px;
				}
			}
			@media (max-width: 899px) {
				.hero-note {
					border-left: none;
					border-top: 3px solid var(--green);
					border-radius: 10px;
				}
			}
			.hero-note svg {
				width: 15px;
				height: 15px;
				min-width: 15px;
				stroke: var(--green);
				fill: none;
				stroke-width: 2;
				stroke-linecap: round;
				stroke-linejoin: round;
				flex-shrink: 0;
				margin-top: 1px;
			}
			.hero-btns {
				display: flex;
				align-items: center;
				gap: 16px;
				flex-wrap: wrap;
				justify-content: center;
				margin-bottom: 6px;
			}
			@media (min-width: 900px) {
				.hero-btns {
					justify-content: flex-start;
				}
			}
			.hero-btns .btn-p {
				padding: 15px 28px;
				font-size: 0.97rem;
			}
			.hero-trust {
				font-size: 0.78rem;
				color: var(--muted);
				font-weight: 500;
				display: flex;
				align-items: center;
				gap: 6px;
			}
			.hero-trust::before {
				content: '';
				width: 5px;
				height: 5px;
				background: var(--green);
				border-radius: 50%;
				flex-shrink: 0;
			}