:root {
	--ow-bg: #fff8ee;
	--ow-bg-soft: #fff2df;
	--ow-text: #211a2e;
	--ow-muted: #6c6278;
	--ow-primary: #6b3df4;
	--ow-primary-dark: #39206f;
	--ow-accent: #ffc857;
	--ow-dark: #130d25;
	--ow-card: rgba(255,255,255,.82);
	--ow-border: rgba(58,32,111,.14);
	--ow-radius: 28px;
	--ow-shadow: 0 24px 70px rgba(48, 28, 86, .16);
}
* { box-sizing: border-box; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ow-text); background: var(--ow-bg); line-height: 1.6; }
a { color: inherit; }
img { max-width: 100%; height: auto; }
.ow-container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.ow-header { position: sticky; top: 0; z-index: 50; background: rgba(255,248,238,.86); backdrop-filter: blur(18px); border-bottom: 1px solid var(--ow-border); }
.ow-header__inner { display: flex; align-items: center; min-height: 78px; gap: 24px; }
.ow-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; font-weight: 800; line-height: 1.05; }
.ow-logo__mark { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 16px; background: linear-gradient(135deg, var(--ow-primary), #a678ff); color: #fff; box-shadow: 0 14px 30px rgba(107,61,244,.28); }
.ow-logo__text { font-size: 15px; }
.ow-nav { margin-left: auto; }
.ow-nav__list { list-style: none; display: flex; gap: 22px; padding: 0; margin: 0; }
.ow-nav a { text-decoration: none; color: var(--ow-muted); font-weight: 650; }
.ow-nav a:hover { color: var(--ow-primary); }
.ow-menu-toggle { display: none; margin-left: auto; border: 1px solid var(--ow-border); background: #fff; border-radius: 999px; padding: 10px 15px; font-weight: 700; }
.ow-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px; border-radius: 999px; border: 0; background: linear-gradient(135deg, var(--ow-primary), #8b62ff); color: #fff; font-weight: 800; text-decoration: none; box-shadow: 0 16px 34px rgba(107,61,244,.24); cursor: pointer; }
.ow-button:hover { transform: translateY(-1px); }
.ow-button--ghost { background: #fff; color: var(--ow-primary-dark); box-shadow: inset 0 0 0 1px var(--ow-border); }
.ow-button--small { min-height: 42px; padding: 8px 17px; }
.ow-button--full { width: 100%; }
.ow-hero { position: relative; padding: 82px 0 64px; overflow: hidden; }
.ow-hero:before { content: ""; position: absolute; inset: -35% -20% auto auto; width: 640px; height: 640px; border-radius: 50%; background: radial-gradient(circle, rgba(255,200,87,.38), transparent 62%); pointer-events: none; }
.ow-hero__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); gap: 58px; align-items: center; }
.ow-kicker { color: var(--ow-primary); text-transform: uppercase; letter-spacing: .12em; font-size: 13px; font-weight: 900; margin: 0 0 14px; }
h1, h2, h3 { line-height: 1.05; margin-top: 0; letter-spacing: -.04em; }
h1 { font-size: clamp(42px, 7vw, 78px); margin-bottom: 22px; }
h2 { font-size: clamp(31px, 4.4vw, 54px); margin-bottom: 18px; }
h3 { font-size: 23px; }
.ow-lead { font-size: clamp(18px, 2vw, 22px); color: var(--ow-muted); max-width: 680px; }
.ow-hero__actions { display: flex; gap: 14px; flex-wrap: wrap; margin: 30px 0 28px; }
.ow-trustbar { display: flex; flex-wrap: wrap; gap: 10px; }
.ow-trustbar span { background: rgba(255,255,255,.75); border: 1px solid var(--ow-border); border-radius: 999px; padding: 9px 13px; color: var(--ow-muted); font-weight: 700; font-size: 13px; }
.ow-hero__visual { position: relative; min-height: 470px; }
.ow-memory-card { position: absolute; inset: 0; margin: auto; width: min(390px, 82vw); height: 480px; border-radius: 38px; background: #fff; box-shadow: var(--ow-shadow); border: 1px solid rgba(255,255,255,.8); }
.ow-memory-card--back { transform: rotate(-9deg) translate(-34px, 18px); background: linear-gradient(160deg, #fff, #ffe3af); opacity: .75; }
.ow-memory-card--front { display: flex; flex-direction: column; justify-content: flex-end; padding: 25px; transform: rotate(4deg); background: linear-gradient(160deg, #fff, #fff0d0); }
.ow-memory-card--front p { margin: 18px 0 0; font-weight: 900; color: var(--ow-primary-dark); }
.ow-photo-placeholder { height: 342px; border-radius: 28px; background: linear-gradient(160deg, rgba(107,61,244,.92), rgba(255,200,87,.96)); position: relative; overflow: hidden; }
.ow-photo-placeholder:before, .ow-photo-placeholder:after { content: ""; position: absolute; border-radius: 50%; background: rgba(255,255,255,.28); }
.ow-photo-placeholder:before { width: 128px; height: 128px; left: 50%; top: 72px; transform: translateX(-50%); }
.ow-photo-placeholder:after { width: 220px; height: 160px; left: 50%; bottom: -42px; transform: translateX(-50%); }
.ow-photo-placeholder span { position: absolute; inset: 25px; border: 1px solid rgba(255,255,255,.48); border-radius: 22px; }
.ow-spark { position: absolute; border-radius: 999px; background: var(--ow-accent); box-shadow: 0 0 50px rgba(255,200,87,.6); }
.ow-spark--1 { width: 72px; height: 72px; right: 36px; top: 28px; }
.ow-spark--2 { width: 42px; height: 42px; left: 34px; bottom: 62px; background: #8b62ff; }
.ow-section { padding: 88px 0; }
.ow-section--dark { background: radial-gradient(circle at top left, rgba(107,61,244,.42), transparent 28%), var(--ow-dark); color: #fff; }
.ow-section--dark p, .ow-section--dark .ow-kicker { color: rgba(255,255,255,.78); }
.ow-section--soft { background: var(--ow-bg-soft); }
.ow-steps, .ow-pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin-top: 34px; }
.ow-steps article, .ow-price-card, .ow-content { background: var(--ow-card); border: 1px solid var(--ow-border); border-radius: var(--ow-radius); padding: 28px; box-shadow: 0 16px 44px rgba(48,28,86,.08); }
.ow-steps span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 16px; background: var(--ow-primary); color: #fff; font-weight: 900; margin-bottom: 20px; }
.ow-steps p, .ow-price-card p { color: var(--ow-muted); }
.ow-split, .ow-safety { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; align-items: center; }
.ow-tags { display: flex; gap: 12px; flex-wrap: wrap; }
.ow-tags span { padding: 12px 15px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); font-weight: 800; }
.ow-pricing-grid { grid-template-columns: repeat(4,1fr); }
.ow-price-card { display: flex; flex-direction: column; gap: 12px; }
.ow-price-card.is-featured { transform: translateY(-12px); background: #fff; border-color: rgba(107,61,244,.38); box-shadow: var(--ow-shadow); }
.ow-price-card__badge { align-self: flex-start; padding: 7px 11px; border-radius: 999px; background: rgba(107,61,244,.1); color: var(--ow-primary); font-size: 12px; font-weight: 900; }
.ow-price { font-size: 34px; line-height: 1; font-weight: 950; color: var(--ow-primary-dark) !important; margin: 0; }
.ow-faq { display: grid; gap: 14px; margin-top: 28px; }
.ow-faq details { background: #fff; border: 1px solid var(--ow-border); border-radius: 18px; padding: 18px 22px; }
.ow-faq summary { cursor: pointer; font-weight: 900; }
.ow-page-hero { padding: 74px 0 34px; background: linear-gradient(160deg, var(--ow-bg), #f0e8ff); }
.ow-content { max-width: 920px; }
.ow-content h2 { font-size: 34px; margin-top: 34px; }
.ow-footer { background: var(--ow-dark); color: rgba(255,255,255,.86); padding: 48px 0; }
.ow-footer__grid { display: grid; grid-template-columns: 1.4fr .8fr .8fr; gap: 32px; }
.ow-footer a, .ow-footer span { display: block; color: rgba(255,255,255,.76); margin-top: 8px; text-decoration: none; }
.woocommerce div.product form.cart .ow-product-fields { margin: 24px 0; padding: 22px; background: #fff8ee; border: 1px solid var(--ow-border); border-radius: 20px; }
.ow-product-fields label { display: block; font-weight: 800; margin-bottom: 8px; }
.ow-product-fields input[type="text"], .ow-product-fields select, .ow-product-fields textarea { width: 100%; border: 1px solid var(--ow-border); border-radius: 12px; padding: 11px 13px; font: inherit; }
.ow-product-fields textarea { min-height: 120px; }
.ow-product-fields .ow-field { margin-bottom: 16px; }
.ow-product-fields .ow-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--ow-muted); }
@media (max-width: 980px) {
	.ow-header__inner { gap: 12px; }
	.ow-menu-toggle { display: inline-flex; }
	.ow-nav { display: none; position: absolute; left: 20px; right: 20px; top: 78px; background: #fff; border: 1px solid var(--ow-border); border-radius: 22px; padding: 18px; box-shadow: var(--ow-shadow); }
	.ow-nav.is-open { display: block; }
	.ow-nav__list { flex-direction: column; gap: 12px; }
	.ow-header .ow-button--small { display: none; }
	.ow-hero__grid, .ow-split, .ow-safety { grid-template-columns: 1fr; }
	.ow-pricing-grid { grid-template-columns: repeat(2,1fr); }
	.ow-steps { grid-template-columns: 1fr; }
	.ow-hero__visual { min-height: 420px; }
}
@media (max-width: 640px) {
	.ow-container { width: min(100% - 28px, 1160px); }
	.ow-hero, .ow-section { padding: 58px 0; }
	.ow-hero__actions { flex-direction: column; }
	.ow-button { width: 100%; }
	.ow-pricing-grid { grid-template-columns: 1fr; }
	.ow-price-card.is-featured { transform: none; }
	.ow-footer__grid { grid-template-columns: 1fr; }
}
