:root{
	--pf-bg:#ffffff;
	--pf-bg-alt:#f8fafc;
	--pf-bg-dark:#0f172a;
	--pf-dark-2:#111c33;
	--pf-text:#0f172a;
	--pf-muted:#475569;
	--pf-border:#e2e8f0;
	--pf-primary:#2563eb;
	--pf-primary-600:#1d4ed8;
	--pf-shadow:0 10px 30px rgba(15,23,42,.08);
	--pf-shadow-lg:0 20px 60px rgba(15,23,42,.12);
	--pf-shadow-soft:0 8px 26px rgba(2,6,23,.06);
	--pf-radius:12px;
	--pf-radius-sm:12px;
	--pf-ease:cubic-bezier(.2,.8,.2,1);
	--pf-dur-1:160ms;
	--pf-dur-2:240ms;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
	margin:0;
	color:var(--pf-text);
	background:var(--pf-bg);
	font-family:Manrope,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans","Liberation Sans",sans-serif;
	line-height:1.5;
	text-rendering:optimizeLegibility;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}

.pf-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}

.pf-container{width:min(1120px,calc(100% - 40px));margin:0 auto}

.pf-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid rgba(226,232,240,.7)}
.pf-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}

.pf-brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.pf-brand__mark{width:12px;height:12px;border-radius:6px;background:linear-gradient(135deg,var(--pf-primary),var(--pf-accent,#22c55e))}
.pf-brand__name{font-weight:700;letter-spacing:-.02em}
.pf-brand__logo img{height:var(--pf-logo-h, 28px);width:auto;max-height:var(--pf-logo-h, 28px)}

.pf-nav{display:none}
.pf-nav__list{display:flex;gap:18px;list-style:none;margin:0;padding:0;align-items:center}
.pf-nav__list a{text-decoration:none;color:var(--pf-muted);font-size:14px;font-weight:600}
.pf-nav__list a:hover{color:var(--pf-text)}

.pf-nav-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--pf-border);background:#fff;border-radius:12px;padding:10px;cursor:pointer}
.pf-nav-toggle__bars{width:18px;height:12px;display:block;position:relative}
.pf-nav-toggle__bars:before,.pf-nav-toggle__bars:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--pf-text);border-radius:2px}
.pf-nav-toggle__bars:before{top:0}
.pf-nav-toggle__bars:after{bottom:0}

.pf-section{padding:92px 0}
.pf-section--alt{background:var(--pf-bg-alt);border-top:1px solid rgba(226,232,240,.75);border-bottom:1px solid rgba(226,232,240,.75)}

.pf-section--dark{
	background:radial-gradient(1200px 600px at 20% 10%, rgba(37,99,235,.25), transparent 60%),
		linear-gradient(180deg, var(--pf-bg-dark), #0b1226);
	color:#fff;
}
.pf-section--dark .pf-section-subtitle,
.pf-section--dark .pf-lead,
.pf-section--dark .pf-eyebrow{color:rgba(226,232,240,.82)}
.pf-section--dark .pf-card{background:rgba(255,255,255,.06);border-color:rgba(148,163,184,.18);box-shadow:none}
.pf-section--dark .pf-card--soft{background:rgba(255,255,255,.04)}
.pf-section--dark .pf-badge{background:rgba(255,255,255,.06);border-color:rgba(148,163,184,.18);color:rgba(226,232,240,.9)}

.pf-grid{display:grid;gap:24px}
.pf-grid--2{grid-template-columns:1fr}
.pf-grid--3{grid-template-columns:1fr}

.pf-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-weight:700}
.pf-h1{font-size:40px;line-height:1.03;letter-spacing:-.04em;margin:10px 0 0}
.pf-lead{font-size:17px;color:var(--pf-muted);margin:16px 0 0;max-width:62ch}

.pf-card{background:#fff;border:1px solid var(--pf-border);border-radius:var(--pf-radius);box-shadow:var(--pf-shadow-soft);padding:22px;transition:transform var(--pf-dur-2) var(--pf-ease), box-shadow var(--pf-dur-2) var(--pf-ease), border-color var(--pf-dur-2) var(--pf-ease)}
.pf-card:hover{transform:translateY(-3px);box-shadow:0 16px 46px rgba(2,6,23,.10);border-color:rgba(148,163,184,.5)}
.pf-card--soft{box-shadow:none;background:rgba(255,255,255,.7)}

.pf-glass{background:rgba(255,255,255,.06);border:1px solid rgba(148,163,184,.18);backdrop-filter:saturate(160%) blur(12px)}

.pf-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:999px;text-decoration:none;font-weight:800;font-size:14px;line-height:1;border:1px solid transparent;transition:transform var(--pf-dur-1) var(--pf-ease),background var(--pf-dur-2) var(--pf-ease),border-color var(--pf-dur-2) var(--pf-ease),color var(--pf-dur-2) var(--pf-ease), box-shadow var(--pf-dur-2) var(--pf-ease), filter var(--pf-dur-2) var(--pf-ease)}
.pf-button:active{transform:translateY(1px)}
.pf-button--primary{background:var(--pf-primary);color:#fff;box-shadow:0 10px 26px rgba(37,99,235,.25)}
.pf-button--primary:hover{background:var(--pf-primary-600);box-shadow:0 16px 46px rgba(37,99,235,.30);transform:translateY(-1px);filter:brightness(1.02)}
.pf-button--ghost{background:#fff;border-color:var(--pf-border);color:var(--pf-text)}
.pf-button--ghost:hover{background:var(--pf-bg-alt);transform:translateY(-1px)}
.pf-section--dark .pf-button--ghost{background:rgba(255,255,255,.06);border-color:rgba(148,163,184,.18);color:#fff}
.pf-section--dark .pf-button--ghost:hover{background:rgba(255,255,255,.1)}

.pf-hero__wrap{padding:110px 0 86px}
.pf-hero__layout{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
.pf-hero__badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.pf-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--pf-border);color:var(--pf-muted);font-size:12px;font-weight:700}
.pf-mockup{border-radius:var(--pf-radius);border:1px solid rgba(148,163,184,.22);box-shadow:0 26px 90px rgba(2,6,23,.55);overflow:hidden;background:linear-gradient(180deg,#0b1226,#0f172a)}
.pf-mockup{position:relative}
.pf-mockup:before{content:"";position:absolute;inset:-2px;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 1px rgba(37,99,235,.25), 0 0 90px rgba(37,99,235,.18)}

.pf-checklist{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.pf-checklist li{display:flex;gap:10px;align-items:flex-start;color:rgba(226,232,240,.9);font-weight:700}
.pf-checklist li span{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:8px;background:rgba(37,99,235,.18);color:#93c5fd;flex:0 0 20px;margin-top:1px}

.pf-section-title{font-size:30px;line-height:1.12;letter-spacing:-.03em;margin:0}
.pf-section-subtitle{margin:10px 0 0;color:var(--pf-muted);max-width:65ch}

.pf-icon{width:44px;height:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--pf-primary-rgb, 37 99 235), .10);color:var(--pf-primary)}
.pf-icon i{font-size:22px;line-height:1;transition:transform var(--pf-dur-2) var(--pf-ease)}
.pf-card:hover .pf-icon i{transform:scale(1.03)}

.pf-step{display:flex;gap:14px;align-items:flex-start}
.pf-step__num{width:40px;height:40px;border-radius:12px;background:rgba(15,23,42,.06);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--pf-text);font-size:14px;letter-spacing:-.02em}
.pf-step__num--xl{width:52px;height:52px;font-size:18px}
.pf-section--dark .pf-step__num{background:rgba(255,255,255,.08);color:#fff}

.pf-gallery{display:grid;grid-template-columns:1fr;gap:16px}
.pf-gallery img{border-radius:var(--pf-radius-sm);border:1px solid var(--pf-border);box-shadow:var(--pf-shadow)}

.pf-pricing{display:grid;grid-template-columns:1fr;gap:18px;align-items:stretch}
.pf-pricing--single{justify-items:center}
.pf-plan{width:100%}
.pf-pricing--single .pf-plan{max-width:520px}
.pf-plan{display:flex;flex-direction:column;gap:16px}
.pf-plan__name{font-weight:800;font-size:16px}
.pf-plan__price{font-size:34px;letter-spacing:-.03em;font-weight:900}
.pf-plan__desc{color:var(--pf-muted)}
.pf-plan__list{margin:0;padding-left:18px;color:var(--pf-muted)}
.pf-plan--highlight{border-color:rgba(37,99,235,.45);box-shadow:0 18px 70px rgba(37,99,235,.18)}
.pf-section--dark .pf-plan--highlight{box-shadow:0 22px 90px rgba(37,99,235,.22)}

.plan-highlight{
	transform:scale(1.05);
	border:2px solid var(--pf-primary);
	box-shadow:0 20px 40px rgba(37, 99, 235, 0.25);
	position:relative;
	z-index:2;
}

.plan-highlight .plan-button{
	background:var(--pf-primary);
	color:#fff;
}

.plan-badge{
	position:absolute;
	top:-12px;
	right:20px;
	background:var(--pf-primary);
	color:#fff;
	padding:6px 12px;
	font-size:12px;
	border-radius:999px;
	font-weight:600;
}

.pf-faq{display:grid;gap:12px}
.pf-faq__item{border:1px solid var(--pf-border);border-radius:var(--pf-radius);background:#fff;overflow:hidden}
.pf-faq__q{width:100%;text-align:left;background:transparent;border:0;padding:16px 18px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;gap:10px}
.pf-faq__a{padding:0 18px 16px;color:var(--pf-muted)}
.pf-faq__a[hidden]{display:none}
.pf-faq__chev{width:18px;height:18px;flex:0 0 18px;opacity:.65;transition:transform .2s ease}
.pf-faq__item[data-open="true"] .pf-faq__chev{transform:rotate(180deg)}

.pf-footer{border-top:1px solid var(--pf-border);background:#fff}
.pf-footer__inner{padding:34px 0;display:flex;flex-direction:column;gap:14px;justify-content:space-between}
.pf-footer__brand{font-weight:800}
.pf-footer__meta{color:var(--pf-muted);font-size:14px}

.pf-prose{max-width:72ch}
.pf-prose h1,.pf-prose h2{letter-spacing:-.02em}

@media (min-width: 860px){
	.pf-nav{display:block}
	.pf-nav-toggle{display:none}
	.pf-mobile-nav{display:none !important}
	.pf-grid--2{grid-template-columns:1.2fr .8fr}
	.pf-grid--3{grid-template-columns:repeat(3,1fr)}
	.pf-hero__layout{grid-template-columns:1.1fr .9fr}
	.pf-gallery{grid-template-columns:repeat(3,1fr)}
	.pf-pricing{grid-template-columns:repeat(3,1fr)}
	.pf-footer__inner{flex-direction:row;align-items:center}
	.pf-h1{font-size:58px}
	.pf-lead{font-size:19px}
	.pf-hero__wrap{padding:128px 0 96px}
}

@media (max-width: 859px){
	.plan-highlight{transform:none}
}

.pf-reveal{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .6s ease}
.pf-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
	.pf-reveal{opacity:1;transform:none;transition:none}
}

@media (prefers-reduced-motion: reduce){
	.pf-card,.pf-button,.pf-icon i{transition:none !important}
	.pf-card:hover{transform:none;box-shadow:var(--pf-shadow-soft)}
}

@media (max-width: 859px){
	.plan-highlight{transform:none}
}

.pf-reveal{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .6s ease}
.pf-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
	.pf-reveal{opacity:1;transform:none;transition:none}
}
