:root {
  --cp-primary: #5b5cf0;
  --cp-primary-dark: #4546d6;
  --cp-accent: #25c7a3;
  --cp-ink: #17192b;
  --cp-muted: #666b7f;
  --cp-border: #e3e6ee;
  --cp-surface: #f5f7fb;
  --cp-white: #fff;
  --cp-radius-sm: 10px;
  --cp-radius: 18px;
  --cp-radius-lg: 28px;
  --cp-shadow-sm: 0 8px 24px rgba(27, 30, 58, .07);
  --cp-shadow: 0 24px 70px rgba(31, 34, 70, .13);
  --cp-container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--cp-ink); background: #fff; font-family: "DM Sans", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body.cp-menu-open { overflow: hidden; }
img { max-width: 100%; height: auto; }
a { color: var(--cp-primary); text-decoration: none; transition: color .2s ease, opacity .2s ease, transform .2s ease; }
a:hover { color: var(--cp-primary-dark); }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, h4, h5, h6 { margin: 0 0 .55em; color: var(--cp-ink); font-family: "Manrope", sans-serif; line-height: 1.12; letter-spacing: -.035em; }
h1 { font-size: clamp(2.7rem, 6vw, 5.25rem); }
h2 { font-size: clamp(2.15rem, 4vw, 3.65rem); }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1.25em; }
ul, ol { margin: 0 0 1.5em; padding-left: 1.4em; }
::selection { color: #fff; background: var(--cp-primary); }
[hidden] { display: none !important; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.cp-container { width: min(calc(100% - 40px), var(--cp-container)); margin-inline: auto; }
.cp-main { min-height: 55vh; }
.cp-icon { width: 1.25em; height: 1.25em; flex: 0 0 auto; vertical-align: -.22em; }
.cp-skip-link { position: fixed; z-index: 9999; top: 12px; left: 12px; transform: translateY(-160%); padding: 10px 16px; border-radius: 8px; color: #fff; background: var(--cp-ink); }
.cp-skip-link:focus { transform: none; }

/* Buttons */
.cp-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 12px 22px; border: 1px solid var(--cp-primary); border-radius: 11px; color: #fff !important; background: var(--cp-primary); box-shadow: 0 9px 20px rgba(91, 92, 240, .19); font-family: "DM Sans", sans-serif; font-size: .94rem; font-weight: 700; line-height: 1.2; text-align: center; transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cp-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover { color: #fff !important; background: var(--cp-primary-dark); border-color: var(--cp-primary-dark); box-shadow: 0 12px 28px rgba(91, 92, 240, .28); transform: translateY(-1px); }
.cp-button--quiet { color: var(--cp-ink) !important; background: #fff; border-color: var(--cp-border); box-shadow: none; }
.cp-button--quiet:hover { color: var(--cp-ink) !important; background: var(--cp-surface); border-color: #cfd3df; box-shadow: none; }
.cp-button--small { min-height: 40px; padding: 9px 17px; border-radius: 9px; }
.cp-button--large { min-height: 56px; padding: 15px 26px; border-radius: 13px; }
.cp-button--full { width: 100%; }
.cp-button--white { color: var(--cp-primary) !important; background: #fff; border-color: #fff; box-shadow: 0 12px 28px rgba(24, 24, 66, .2); }
.cp-button--white:hover { color: var(--cp-primary-dark) !important; background: #fff; border-color: #fff; }
.cp-button--accent { color: #092e26 !important; background: var(--cp-accent); border-color: var(--cp-accent); box-shadow: 0 9px 20px rgba(37, 199, 163, .2); }
.cp-button--accent:hover { color: #092e26 !important; background: #38d2b0; border-color: #38d2b0; box-shadow: 0 12px 28px rgba(37, 199, 163, .28); }

/* Header */
.cp-announcement { position: relative; z-index: 50; color: #fff; background: var(--cp-ink); font-size: .82rem; }
.cp-announcement .cp-container { min-height: 37px; display: flex; align-items: center; justify-content: center; gap: 28px; }
.cp-announcement span, .cp-announcement a { display: inline-flex; align-items: center; gap: 7px; }
.cp-announcement .cp-icon { color: var(--cp-accent); }
.cp-announcement a { color: #fff; font-weight: 700; }
.cp-announcement a .cp-icon { width: 1em; }
.cp-site-header { position: sticky; z-index: 45; top: 0; background: rgba(255, 255, 255, .92); border-bottom: 1px solid rgba(227, 230, 238, .9); backdrop-filter: blur(16px); }
.admin-bar .cp-site-header { top: 32px; }
.cp-header-inner { height: 74px; display: flex; align-items: center; }
.cp-logo { margin-right: 56px; line-height: 1; }
.cp-logo .custom-logo { display: block; max-height: 42px; width: auto; }
.cp-wordmark { display: inline-flex; align-items: center; gap: 10px; color: var(--cp-ink); font-family: "Manrope", sans-serif; font-size: 1.35rem; font-weight: 800; letter-spacing: -.05em; }
.cp-wordmark:hover { color: var(--cp-ink); }
.cp-wordmark__mark { position: relative; width: 30px; height: 30px; display: inline-block; border-radius: 9px; background: var(--cp-primary); box-shadow: inset 0 0 0 1px rgba(255,255,255,.2); transform: rotate(-5deg); }
.cp-wordmark__mark::before, .cp-wordmark__mark::after { content: ""; position: absolute; width: 8px; height: 8px; border: 3px solid #fff; border-radius: 50%; top: 7px; }
.cp-wordmark__mark::before { left: 5px; }
.cp-wordmark__mark::after { right: 5px; }
.cp-wordmark__mark i { position: absolute; width: 3px; height: 15px; left: 14px; top: 11px; background: #fff; transform: rotate(32deg); transform-origin: top; }
.cp-main-nav { margin-right: auto; }
.cp-mobile-account-actions { display: none; }
.cp-nav-list { display: flex; align-items: center; gap: 34px; margin: 0; padding: 0; list-style: none; }
.cp-nav-list a { color: #3c4055; font-size: .93rem; font-weight: 600; }
.cp-nav-list a:hover, .cp-nav-list .current-menu-item > a { color: var(--cp-primary); }
.cp-header-actions { display: flex; align-items: center; gap: 20px; }
.cp-signin { display: inline-flex; align-items: center; gap: 7px; color: var(--cp-ink); font-size: .9rem; font-weight: 700; }
.cp-signin .cp-icon { width: 1.15rem; }
.cp-nav-toggle { display: none; width: 42px; height: 42px; padding: 9px; color: var(--cp-ink); background: transparent; border: 0; }
.cp-nav-toggle .cp-icon { width: 24px; height: 24px; }
.cp-nav-toggle__close { display: none; }
.cp-nav-toggle[aria-expanded="true"] .cp-nav-toggle__open { display: none; }
.cp-nav-toggle[aria-expanded="true"] .cp-nav-toggle__close { display: block; }

/* Shared sections */
.cp-section { padding: 112px 0; }
.cp-section-heading { max-width: 740px; margin-bottom: 52px; }
.cp-section-heading--center { margin-inline: auto; text-align: center; }
.cp-section-heading p { max-width: 620px; margin: 0 auto; color: var(--cp-muted); font-size: 1.08rem; }
.cp-eyebrow { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 18px; color: var(--cp-primary); font-size: .75rem; font-weight: 800; letter-spacing: .12em; line-height: 1.3; text-transform: uppercase; }
.cp-eyebrow .cp-icon { color: var(--cp-accent); }
.cp-page-hero { padding: 100px 0 70px; text-align: center; background: radial-gradient(circle at 50% -20%, rgba(91,92,240,.14), transparent 44%), linear-gradient(#fafaff, #fff); }
.cp-page-hero h1 { max-width: 850px; margin-inline: auto; }
.cp-page-hero > .cp-container > p { max-width: 680px; margin: 0 auto; color: var(--cp-muted); font-size: 1.15rem; }
.cp-content-area { padding-top: 90px; padding-bottom: 110px; }
.cp-content-area--narrow { width: min(calc(100% - 40px), 820px); margin-inline: auto; }
.cp-page-header { margin-bottom: 45px; }
.cp-page-header h1 { font-size: clamp(2.5rem, 5vw, 4.4rem); }
.cp-richtext { color: #41465b; font-size: 1.04rem; }
.cp-richtext h2, .cp-richtext h3 { margin-top: 1.6em; }
.cp-richtext a { text-decoration: underline; text-underline-offset: 3px; }
.cp-featured-image { margin-bottom: 45px; border-radius: var(--cp-radius); }

/* Hero */
.cp-hero { position: relative; overflow: hidden; padding: 96px 0 105px; background: linear-gradient(145deg, #fbfbff 0%, #fff 58%, #f0fbf8 100%); }
.cp-hero::before { content: ""; position: absolute; inset: 0; opacity: .28; background-image: radial-gradient(#b9bdd1 .8px, transparent .8px); background-size: 22px 22px; mask-image: linear-gradient(to right, #000, transparent 42%); }
.cp-hero__glow { position: absolute; border-radius: 50%; filter: blur(4px); pointer-events: none; }
.cp-hero__glow--one { width: 520px; height: 520px; right: -180px; top: -180px; background: rgba(91,92,240,.11); }
.cp-hero__glow--two { width: 300px; height: 300px; left: 35%; bottom: -220px; background: rgba(37,199,163,.13); }
.cp-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: .95fr 1.05fr; gap: 70px; align-items: center; }
.cp-hero__copy h1 { margin-bottom: 22px; font-size: clamp(3.1rem, 6vw, 5.4rem); }
.cp-hero__copy > p { max-width: 610px; color: var(--cp-muted); font-size: 1.14rem; }
.cp-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 32px 0 24px; }
.cp-hero-plans-link { display: inline-flex; align-items: center; gap: 6px; align-self: center; margin-left: 2px; padding: 10px 5px; color: var(--cp-ink); font-size: .88rem; font-weight: 700; }
.cp-hero-plans-link .cp-icon { width: 1rem; }
.cp-hero__micro { display: flex; flex-wrap: wrap; gap: 18px; color: #555a6d; font-size: .83rem; font-weight: 600; }
.cp-hero__micro span { display: inline-flex; align-items: center; gap: 5px; }
.cp-hero__micro .cp-icon { color: var(--cp-accent); width: 1rem; }
.cp-hero__visual { position: relative; padding: 30px 0 20px; }
.cp-demo-window { overflow: hidden; border: 1px solid #dcdfea; border-radius: 22px; background: #fff; box-shadow: var(--cp-shadow); transform: rotate(1.5deg); }
.cp-demo-window__bar { height: 48px; display: flex; align-items: center; gap: 7px; padding: 0 17px; border-bottom: 1px solid var(--cp-border); color: #8a8fa2; font-size: .71rem; }
.cp-demo-window__bar i { width: 8px; height: 8px; border-radius: 50%; background: #dadde8; }
.cp-demo-window__bar i:first-child { background: #ff8b84; }
.cp-demo-window__bar i:nth-child(2) { background: #ffd069; }
.cp-demo-window__bar i:nth-child(3) { background: #75d7af; }
.cp-demo-window__bar span { margin-left: auto; margin-right: auto; transform: translateX(-18px); }
.cp-demo-canvas { position: relative; height: 420px; overflow: hidden; background: #eae4dc; }
.cp-demo-before, .cp-demo-after { position: absolute; inset: 0; }
.cp-demo-before { background: radial-gradient(circle at 20% 30%, rgba(255,255,255,.45), transparent 25%), linear-gradient(130deg, #d5c7b8, #f3eee8); }
.cp-demo-before::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 39%; background: #b9a794; transform: skewY(-4deg); transform-origin: left; }
.cp-demo-after { left: 50%; background-color: #fff; background-image: linear-gradient(45deg, #edf0f5 25%, transparent 25%), linear-gradient(-45deg, #edf0f5 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #edf0f5 75%), linear-gradient(-45deg, transparent 75%, #edf0f5 75%); background-size: 22px 22px; background-position: 0 0, 0 11px, 11px -11px, -11px 0; }
.cp-demo-before span, .cp-demo-after span { position: absolute; z-index: 2; top: 16px; padding: 5px 10px; border-radius: 30px; color: #fff; background: rgba(23,25,43,.72); font-size: .68rem; font-weight: 700; }
.cp-demo-before span { left: 16px; }
.cp-demo-after span { right: 16px; }
.cp-demo-canvas > img { position: absolute; z-index: 2; width: 91%; max-width: none; left: 4%; bottom: 0; filter: drop-shadow(0 18px 17px rgba(23,25,43,.16)); }
.cp-demo-slider { position: absolute; z-index: 3; top: 0; bottom: 0; left: 50%; width: 2px; background: #fff; box-shadow: 0 0 12px rgba(0,0,0,.24); }
.cp-demo-slider i { position: absolute; top: 47%; left: 50%; width: 35px; height: 35px; border: 5px solid #fff; border-radius: 50%; background: var(--cp-primary); box-shadow: 0 5px 18px rgba(0,0,0,.22); transform: translate(-50%, -50%); }
.cp-demo-slider i::before, .cp-demo-slider i::after { content: ""; position: absolute; top: 8px; border: 5px solid transparent; }
.cp-demo-slider i::before { left: 1px; border-right-color: #fff; }
.cp-demo-slider i::after { right: 1px; border-left-color: #fff; }
.cp-demo-window__bottom { height: 51px; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; color: #555b6d; font-size: .76rem; }
.cp-demo-window__bottom span { display: flex; align-items: center; gap: 7px; }
.cp-demo-window__bottom span i { width: 7px; height: 7px; border-radius: 50%; background: var(--cp-accent); box-shadow: 0 0 0 4px rgba(37,199,163,.13); }
.cp-demo-window__bottom b { padding: 3px 7px; border-radius: 5px; color: var(--cp-primary); background: rgba(91,92,240,.1); font-size: .66rem; }
.cp-floating-chip { position: absolute; z-index: 5; display: flex; align-items: center; gap: 10px; padding: 11px 15px; border: 1px solid rgba(227,230,238,.85); border-radius: 13px; background: rgba(255,255,255,.94); box-shadow: var(--cp-shadow-sm); backdrop-filter: blur(12px); }
.cp-floating-chip > .cp-icon { width: 21px; height: 21px; color: var(--cp-primary); }
.cp-floating-chip span { display: flex; flex-direction: column; }
.cp-floating-chip b { font-size: .73rem; line-height: 1.35; }
.cp-floating-chip small { color: var(--cp-muted); font-size: .62rem; }
.cp-floating-chip--top { top: 4px; right: -30px; }
.cp-floating-chip--bottom { bottom: -1px; left: -35px; }
.cp-floating-chip--bottom > .cp-icon { color: var(--cp-accent); }
.cp-proof-strip { border-top: 1px solid var(--cp-border); border-bottom: 1px solid var(--cp-border); }
.cp-proof-strip .cp-container { min-height: 112px; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.cp-proof-strip p { max-width: 260px; margin: 0; color: #7a7f91; font-size: .8rem; font-weight: 600; line-height: 1.45; }
.cp-proof-strip .cp-container > div { display: flex; align-items: center; gap: clamp(28px, 4vw, 56px); color: #a6aaba; filter: grayscale(1); }
.cp-proof-strip .cp-container > div span { font-family: "Manrope", sans-serif; font-size: 1.15rem; font-weight: 800; letter-spacing: -.06em; }

/* Remover */
.cp-section--tool { background: var(--cp-surface); }
.cp-remover { max-width: 870px; margin-inline: auto; }
.cp-remover__workspace { overflow: hidden; border: 1px solid #dfe2eb; border-radius: 23px; background: #fff; box-shadow: 0 24px 65px rgba(30,34,70,.1); }
.cp-remover__toolbar { min-height: 57px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; border-bottom: 1px solid var(--cp-border); color: #54596d; font-size: .78rem; }
.cp-remover__toolbar > div { display: flex; align-items: center; gap: 9px; }
.cp-status-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--cp-accent); box-shadow: 0 0 0 5px rgba(37,199,163,.12); }
.cp-quota { padding: 5px 10px; border-radius: 30px; color: var(--cp-primary); background: rgba(91,92,240,.08); font-weight: 700; }
.cp-dropzone { min-height: 465px; position: relative; margin: 17px; display: grid; place-items: center; overflow: hidden; border: 2px dashed #d9dce7; border-radius: 17px; outline: none; background: #fbfcfe; transition: border-color .2s, background .2s; }
.cp-dropzone:focus-visible, .cp-dropzone.is-dragging { border-color: var(--cp-primary); background: rgba(91,92,240,.035); }
.cp-dropzone__empty { padding: 55px 25px; text-align: center; }
.cp-upload-icon { width: 66px; height: 66px; display: grid; place-items: center; margin: 0 auto 19px; border-radius: 19px; color: var(--cp-primary); background: rgba(91,92,240,.1); }
.cp-upload-icon .cp-icon { width: 30px; height: 30px; }
.cp-dropzone h3 { margin-bottom: 7px; font-size: 1.38rem; }
.cp-dropzone__empty > p { margin-bottom: 22px; color: var(--cp-muted); font-size: .9rem; }
.cp-dropzone__empty small { display: block; margin-top: 14px; color: #9296a7; font-size: .72rem; }
.cp-remover__preview, .cp-remover__result { width: 100%; padding: 18px; }
.cp-preview-stage { height: 335px; display: grid; place-items: center; overflow: hidden; border-radius: 13px; background: #edf0f5; }
.cp-preview-stage img { max-width: 100%; max-height: 100%; object-fit: contain; }
.cp-preview-stage--result { background-color: #fff; background-image: linear-gradient(45deg, #e9ecf2 25%, transparent 25%), linear-gradient(-45deg, #e9ecf2 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #e9ecf2 75%), linear-gradient(-45deg, transparent 75%, #e9ecf2 75%); background-size: 24px 24px; background-position: 0 0, 0 12px, 12px -12px, -12px 0; }
.cp-preview-actions { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 15px; }
.cp-remover__loading { text-align: center; }
.cp-remover__loading strong { display: block; margin-top: 20px; font-family: "Manrope", sans-serif; }
.cp-remover__loading p { margin: 6px 0 0; color: var(--cp-muted); font-size: .85rem; }
.cp-spinner { width: 52px; height: 52px; display: inline-block; border: 4px solid rgba(91,92,240,.15); border-top-color: var(--cp-primary); border-radius: 50%; animation: cp-spin .8s linear infinite; }
@keyframes cp-spin { to { transform: rotate(360deg); } }
.cp-remover__message { position: absolute; z-index: 5; left: 22px; right: 22px; bottom: 19px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 15px; border: 1px solid #f0c9c7; border-radius: 10px; color: #8b3230; background: #fff2f1; box-shadow: var(--cp-shadow-sm); font-size: .82rem; }
.cp-remover__message a { flex: 0 0 auto; color: #792b29; font-weight: 800; text-decoration: underline; }
.cp-remover__reassurance { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 28px; padding-top: 18px; color: #73788a; font-size: .73rem; }
.cp-remover__reassurance span { display: flex; align-items: center; gap: 6px; }
.cp-remover__reassurance .cp-icon { color: var(--cp-accent); width: 1rem; }

/* Features and commerce */
.cp-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.cp-feature-grid article { position: relative; overflow: hidden; padding: 34px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); background: #fff; transition: transform .25s, box-shadow .25s, border-color .25s; }
.cp-feature-grid article:hover { transform: translateY(-4px); border-color: #cfd3e0; box-shadow: var(--cp-shadow-sm); }
.cp-feature-number { position: absolute; top: 22px; right: 25px; color: #d7dae5; font-family: "Manrope", sans-serif; font-size: .75rem; font-weight: 800; }
.cp-feature-icon { width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: 36px; border-radius: 14px; color: var(--cp-primary); background: rgba(91,92,240,.09); }
.cp-feature-grid article:nth-child(2) .cp-feature-icon { color: #0b9e7e; background: rgba(37,199,163,.11); }
.cp-feature-grid article:nth-child(3) .cp-feature-icon { color: #d66a3b; background: #fff0e9; }
.cp-feature-grid h3 { margin-bottom: 10px; }
.cp-feature-grid p { margin: 0; color: var(--cp-muted); font-size: .9rem; }
.cp-section--commerce { color: #fff; background: var(--cp-ink); }
.cp-commerce-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 95px; align-items: center; }
.cp-commerce-copy h2 { color: #fff; }
.cp-commerce-copy > p { color: #b9bdca; font-size: 1.03rem; }
.cp-commerce-copy ul { padding: 0; list-style: none; }
.cp-commerce-copy li { display: flex; gap: 9px; margin: 11px 0; color: #d5d7df; font-size: .9rem; }
.cp-commerce-copy li .cp-icon { color: var(--cp-accent); margin-top: 3px; }
.cp-commerce-copy > a { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-weight: 700; }
.cp-commerce-copy > a .cp-icon { width: 1rem; }
.cp-commerce-visual { padding: 36px; border: 1px solid rgba(255,255,255,.09); border-radius: 25px; background: rgba(255,255,255,.045); box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.cp-catalog-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; transform: rotate(-2deg); }
.cp-catalog-grid > div { min-height: 190px; padding: 12px; border-radius: 12px; background: #fff; }
.cp-catalog-grid img { width: 100%; height: 125px; object-fit: contain; border-radius: 8px; background-color: #fafafa; background-image: linear-gradient(45deg, #f0f1f4 25%, transparent 25%), linear-gradient(-45deg, #f0f1f4 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #f0f1f4 75%), linear-gradient(-45deg, transparent 75%, #f0f1f4 75%); background-size: 16px 16px; background-position: 0 0, 0 8px, 8px -8px, -8px 0; }
.cp-catalog-grid > div > span { display: block; width: 78%; height: 7px; margin-top: 10px; border-radius: 5px; background: #e8eaf0; }
.cp-catalog-grid > div > span:last-child { width: 48%; margin-top: 6px; background: #f0f1f4; }
.cp-catalog-grid .cp-catalog-grid__plus { display: grid; place-items: center; color: #fff; background: var(--cp-primary); font-family: "Manrope", sans-serif; font-size: 2.4rem; font-weight: 800; }

/* Pricing */
.cp-section--pricing { background: #fff; }
.cp-pricing-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; align-items: stretch; }
.cp-price-card { position: relative; display: flex; flex-direction: column; padding: 25px 21px 21px; border: 1px solid var(--cp-border); border-radius: 17px; background: #fff; transition: transform .25s, box-shadow .25s, border-color .25s; }
.cp-price-card:hover { z-index: 2; transform: translateY(-5px); border-color: #cfd2df; box-shadow: var(--cp-shadow-sm); }
.cp-price-card--featured { border: 2px solid var(--cp-primary); box-shadow: 0 13px 40px rgba(91,92,240,.15); }
.cp-popular { position: absolute; top: -13px; left: 50%; padding: 5px 13px; border-radius: 20px; color: #fff; background: var(--cp-primary); font-size: .63rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; transform: translateX(-50%); white-space: nowrap; }
.cp-price-card__top { display: flex; align-items: flex-start; gap: 10px; min-height: 64px; }
.cp-plan-mark { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; color: #fff; background: var(--cp-primary); font-family: "Manrope", sans-serif; font-size: .78rem; font-weight: 800; }
.cp-plan-mark--free { color: #54596a; background: #edeff4; }
.cp-price-card__top h3 { margin: 0 0 2px; font-size: 1.05rem; }
.cp-price-card__top p { margin: 0; color: var(--cp-muted); font-size: .68rem; line-height: 1.35; }
.cp-price { padding: 17px 0; border-top: 1px solid var(--cp-border); border-bottom: 1px solid var(--cp-border); }
.cp-price strong { display: block; font-family: "Manrope", sans-serif; font-size: 1.7rem; line-height: 1.1; letter-spacing: -.05em; }
.cp-price span { color: var(--cp-muted); font-size: .68rem; }
.cp-allowance { display: flex; align-items: baseline; gap: 6px; margin: 18px 0 15px; }
.cp-allowance b { font-family: "Manrope", sans-serif; font-size: 1.45rem; }
.cp-allowance span { color: var(--cp-muted); font-size: .72rem; }
.cp-price-card ul { flex: 1; min-height: 150px; padding: 0; list-style: none; }
.cp-price-card li { display: flex; gap: 7px; margin: 9px 0; color: #565b6e; font-size: .73rem; }
.cp-price-card li .cp-icon { width: 14px; height: 14px; margin-top: 2px; color: var(--cp-accent); stroke-width: 2.4; }
.cp-price-card .cp-button { min-height: 43px; padding-inline: 10px; font-size: .78rem; }
.cp-payment-trust { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 28px; color: #777c8e; font-size: .71rem; }
.cp-payment-trust > span:first-child { display: inline-flex; align-items: center; gap: 5px; }
.cp-payment-trust .cp-icon { color: var(--cp-accent); }
.cp-payment-badge { display: inline-flex; align-items: center; min-height: 22px; padding: 2px 7px; border: 1px solid #d9dce6; border-radius: 4px; color: #4d5265; background: #fff; font-size: .6rem; font-weight: 800; line-height: 1; }

/* FAQs & CTA */
.cp-section--faq { background: var(--cp-surface); }
.cp-faq-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 105px; }
.cp-faq-grid > div:first-child p { color: var(--cp-muted); }
.cp-accordions details { border-top: 1px solid #d9dce5; }
.cp-accordions details:last-child { border-bottom: 1px solid #d9dce5; }
.cp-accordions summary { position: relative; padding: 22px 42px 22px 0; font-family: "Manrope", sans-serif; font-size: 1rem; font-weight: 700; cursor: pointer; list-style: none; }
.cp-accordions summary::-webkit-details-marker { display: none; }
.cp-accordions summary::after { content: "+"; position: absolute; right: 3px; top: 18px; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; color: var(--cp-primary); background: rgba(91,92,240,.09); font-family: "DM Sans", sans-serif; font-size: 1.25rem; font-weight: 400; }
.cp-accordions details[open] summary::after { content: "−"; }
.cp-accordions details p { padding: 0 45px 21px 0; margin: 0; color: var(--cp-muted); font-size: .9rem; }
.cp-final-cta { padding: 72px 0; color: #fff; background: linear-gradient(115deg, var(--cp-primary-dark), var(--cp-primary) 62%, #6f70f6); }
.cp-final-cta .cp-container { display: flex; align-items: center; justify-content: space-between; gap: 45px; }
.cp-final-cta .cp-eyebrow { color: #d8fff6; }
.cp-final-cta h2 { max-width: 720px; color: #fff; font-size: clamp(2rem, 4vw, 3.4rem); }
.cp-final-cta p { margin: 0; color: rgba(255,255,255,.78); }
.cp-final-cta .cp-button { flex: 0 0 auto; }

/* Tool, pricing, about pages */
.cp-tool-hero { padding: 80px 0 0; text-align: center; background: radial-gradient(circle at 50% 0, rgba(91,92,240,.15), transparent 48%); }
.cp-tool-hero h1 { max-width: 950px; margin-inline: auto; font-size: clamp(2.8rem, 5.4vw, 4.8rem); }
.cp-tool-hero p { max-width: 650px; margin: 0 auto; color: var(--cp-muted); font-size: 1.1rem; }
.cp-section--tool-page { padding-top: 55px; padding-bottom: 80px; background: linear-gradient(#fff, var(--cp-surface)); }
.cp-tool-benefits { padding: 46px 0; border-bottom: 1px solid var(--cp-border); }
.cp-tool-benefits .cp-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 45px; }
.cp-tool-benefits b { display: flex; align-items: center; gap: 8px; font-family: "Manrope", sans-serif; }
.cp-tool-benefits b .cp-icon { color: var(--cp-accent); }
.cp-tool-benefits p { margin: 8px 0 0 29px; color: var(--cp-muted); font-size: .82rem; }
.cp-no-renew { width: max-content; max-width: 100%; display: flex; align-items: center; gap: 11px; margin: 30px auto 0; padding: 10px 16px; border: 1px solid var(--cp-border); border-radius: 12px; background: #fff; box-shadow: var(--cp-shadow-sm); text-align: left; }
.cp-no-renew > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; color: #0c9f7f; background: rgba(37,199,163,.1); }
.cp-no-renew div { display: flex; flex-direction: column; }
.cp-no-renew b { font-size: .8rem; }
.cp-no-renew small { color: var(--cp-muted); font-size: .67rem; }
.cp-section--pricing-page { padding-top: 70px; }
.cp-plan-explainer { padding: 95px 0; color: #fff; background: var(--cp-ink); }
.cp-plan-explainer h2 { margin-bottom: 38px; color: #fff; text-align: center; }
.cp-step-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.cp-step-grid article { padding: 30px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.035); }
.cp-step-grid article > b { width: 34px; height: 34px; display: grid; place-items: center; margin-bottom: 25px; border-radius: 50%; color: var(--cp-ink); background: var(--cp-accent); font-size: .75rem; }
.cp-step-grid h3 { color: #fff; }
.cp-step-grid p { margin: 0; color: #b8bcc9; font-size: .88rem; }
.cp-pricing-faq { padding: 95px 0; background: var(--cp-surface); }
.cp-pricing-faq h2 { margin-bottom: 25px; text-align: center; }
.cp-about-hero { padding: 115px 0 75px; }
.cp-about-hero__grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 110px; align-items: end; }
.cp-about-hero h1 { font-size: clamp(3rem, 6vw, 5.6rem); }
.cp-about-hero__grid > div:last-child p { color: var(--cp-muted); font-size: 1.2rem; }
.cp-about-manifesto { padding-bottom: 30px; }
.cp-manifesto-card { position: relative; overflow: hidden; padding: 80px clamp(30px, 8vw, 110px); border-radius: 30px; color: #fff; background: var(--cp-ink); }
.cp-manifesto-card::after { content: ""; position: absolute; width: 380px; height: 380px; right: -140px; top: -180px; border-radius: 50%; background: var(--cp-primary); opacity: .4; filter: blur(2px); }
.cp-manifesto-card > span { position: relative; z-index: 1; width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: 30px; border-radius: 15px; color: var(--cp-ink); background: var(--cp-accent); }
.cp-manifesto-card blockquote { position: relative; z-index: 1; max-width: 900px; margin: 0; font-family: "Manrope", sans-serif; font-size: clamp(1.8rem, 4vw, 3.25rem); font-weight: 700; line-height: 1.2; letter-spacing: -.04em; }
.cp-story-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 120px; }
.cp-story-grid h2 { font-size: clamp(2rem, 4vw, 3.2rem); }
.cp-values { padding: 35px 0 115px; }
.cp-values .cp-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.cp-values article { padding: 34px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); }
.cp-values article > span { color: var(--cp-primary); font-size: .7rem; font-weight: 800; letter-spacing: .1em; }
.cp-values h3 { margin-top: 32px; }
.cp-values p { margin: 0; color: var(--cp-muted); font-size: .88rem; }

/* Legal and contact */
.cp-legal-page { padding: 90px 0 120px; background: linear-gradient(#fafaff, #fff 380px); }
.cp-legal__intro { padding-bottom: 48px; border-bottom: 1px solid var(--cp-border); }
.cp-legal__intro h1 { font-size: clamp(2.8rem, 6vw, 4.7rem); }
.cp-legal__intro p { max-width: 700px; color: var(--cp-muted); font-size: 1.08rem; }
.cp-legal__body { padding-top: 20px; }
.cp-legal__body section { padding: 35px 0; border-bottom: 1px solid var(--cp-border); }
.cp-legal__body h2 { display: flex; align-items: baseline; gap: 13px; font-size: 1.35rem; letter-spacing: -.025em; }
.cp-legal__body h2 span { color: var(--cp-primary); font-family: "DM Sans", sans-serif; font-size: .67rem; letter-spacing: .1em; }
.cp-legal__body p { margin: 0; color: #555a6c; font-size: .94rem; }
.cp-contact-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 90px; align-items: start; }
.cp-contact-grid aside > p { color: var(--cp-muted); }
.cp-contact-method { display: flex; gap: 14px; margin-top: 26px; }
.cp-contact-method > span { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; color: var(--cp-primary); background: rgba(91,92,240,.09); font-weight: 800; }
.cp-contact-method div { display: flex; flex-direction: column; }
.cp-contact-method b { font-size: .82rem; }
.cp-contact-method a, .cp-contact-method p { margin: 1px 0 0; color: var(--cp-muted); font-size: .8rem; }
.cp-contact-form-wrap { padding: 35px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); background: #fff; box-shadow: var(--cp-shadow-sm); }
.cp-contact-form label { display: block; margin-bottom: 20px; color: #3f4456; font-size: .8rem; font-weight: 700; }
.cp-contact-form input, .cp-contact-form textarea { width: 100%; margin-top: 7px; padding: 13px 14px; border: 1px solid #d8dbe5; border-radius: 9px; color: var(--cp-ink); background: #fff; outline: none; transition: border-color .2s, box-shadow .2s; }
.cp-contact-form input:focus, .cp-contact-form textarea:focus { border-color: var(--cp-primary); box-shadow: 0 0 0 3px rgba(91,92,240,.1); }
.cp-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cp-honeypot { position: absolute; left: -10000px; }

/* Posts and 404 */
.cp-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.cp-post-card { overflow: hidden; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); background: #fff; }
.cp-post-card img { width: 100%; aspect-ratio: 1.45; object-fit: cover; }
.cp-post-card__body { padding: 25px; }
.cp-post-card h2 { font-size: 1.25rem; }
.cp-post-card h2 a { color: var(--cp-ink); }
.cp-post-meta { color: var(--cp-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.cp-empty-state { padding: 150px 20px; text-align: center; }
.cp-empty-state h1 { font-size: clamp(2.6rem, 6vw, 4.5rem); }
.cp-empty-state p { color: var(--cp-muted); }

/* WooCommerce */
.cp-woocommerce-area { padding-top: 75px; padding-bottom: 110px; }
.woocommerce .woocommerce-breadcrumb { margin-bottom: 30px; color: var(--cp-muted); font-size: .76rem; }
.woocommerce .woocommerce-breadcrumb a { color: var(--cp-muted); }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 32px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; float: none !important; margin: 0 !important; padding: 20px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.08rem; }
.woocommerce ul.products li.product .price { color: var(--cp-primary); font-weight: 800; }
.woocommerce form .form-row label { color: #44495c; font-size: .82rem; font-weight: 700; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container--default .select2-selection--single { min-height: 47px; padding: 10px 12px; border: 1px solid #d8dbe5; border-radius: 9px; background: #fff; }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 25px; padding: 0; }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow { height: 45px; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { border-color: var(--cp-primary); outline: none; box-shadow: 0 0 0 3px rgba(91,92,240,.1); }
.woocommerce-info, .woocommerce-message, .woocommerce-error { padding: 16px 18px 16px 50px; border: 1px solid #dfe2ea; border-top: 3px solid var(--cp-primary); border-radius: 10px; color: #484d60; background: #fff; box-shadow: var(--cp-shadow-sm); }
.woocommerce-message { border-top-color: var(--cp-accent); }
.woocommerce-error { border-top-color: #d95b57; }
.woocommerce-info::before { color: var(--cp-primary); }
.woocommerce-message::before { color: var(--cp-accent); }
.woocommerce-error::before { color: #d95b57; }
.woocommerce-checkout h3, .woocommerce-account h2 { font-size: 1.45rem; }
.woocommerce-checkout #customer_details { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.woocommerce-checkout #customer_details::before, .woocommerce-checkout #customer_details::after { display: none; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; padding: 28px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); }
.woocommerce-checkout #order_review_heading { margin-top: 48px; }
.woocommerce-checkout-review-order { padding: 28px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); background: var(--cp-surface); }
.woocommerce table.shop_table { overflow: hidden; border-color: var(--cp-border); border-radius: 12px; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 15px; border-color: var(--cp-border); }
.woocommerce-checkout #payment { background: #fff; border: 1px solid var(--cp-border); border-radius: 12px; }
.woocommerce-checkout #payment div.payment_box { background: var(--cp-surface); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--cp-surface); }
.woocommerce #payment #place_order { min-height: 53px; padding-inline: 28px; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 230px 1fr; gap: 38px; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: auto; float: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 10px; border: 1px solid var(--cp-border); border-radius: 13px; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 10px 12px; border-radius: 8px; color: #565b6e; font-size: .83rem; font-weight: 600; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a, .woocommerce-account .woocommerce-MyAccount-navigation a:hover { color: var(--cp-primary); background: rgba(91,92,240,.08); }
.woocommerce-account .woocommerce-MyAccount-content { width: auto; float: none; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-account .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.woocommerce-account .u-columns .col-1, .woocommerce-account .u-columns .col-2 { width: auto; float: none; padding: 32px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); }
.cp-account-page--guest { padding: 68px 0 92px; background: radial-gradient(circle at 15% 15%, rgba(91,92,240,.12), transparent 32%), radial-gradient(circle at 90% 80%, rgba(37,199,163,.1), transparent 28%), var(--cp-surface); }
.cp-account-page--guest .cp-account-content { width: min(calc(100% - 40px), 1100px); }
.cp-account-page--guest .woocommerce { display: block; }
.cp-account-page--guest .woocommerce-notices-wrapper:not(:empty) { max-width: 720px; margin: 0 auto 22px; }
.cp-auth-shell { display: grid; grid-template-columns: .88fr 1.12fr; min-height: 690px; overflow: hidden; border: 1px solid rgba(220,223,234,.9); border-radius: 28px; background: #fff; box-shadow: 0 28px 85px rgba(27,30,62,.14); }
.cp-auth-story { min-width: 0; position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 48px 46px 38px; color: #fff; background: linear-gradient(145deg, #17192b 0%, #20234a 65%, #343695 100%); }
.cp-auth-story::before { content: ""; position: absolute; width: 420px; height: 420px; right: -240px; top: -150px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; box-shadow: 0 0 0 48px rgba(255,255,255,.025), 0 0 0 96px rgba(255,255,255,.02); }
.cp-auth-story::after { content: ""; position: absolute; width: 210px; height: 210px; left: -130px; bottom: -105px; border-radius: 50%; background: var(--cp-accent); opacity: .13; }
.cp-auth-story__brand { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 9px; width: max-content; color: #fff; font-family: "Manrope", sans-serif; font-size: 1.1rem; font-weight: 800; letter-spacing: -.04em; }
.cp-auth-story__brand:hover { color: #fff; }
.cp-auth-story__brand > .cp-icon { width: 30px; height: 30px; padding: 7px; border-radius: 9px; color: #fff; background: var(--cp-primary); }
.cp-auth-story__copy { position: relative; z-index: 1; margin: auto 0; padding: 45px 0; }
.cp-auth-story .cp-eyebrow { color: #8fe8d2; }
.cp-auth-story h1 { max-width: 430px; overflow-wrap: anywhere; color: #fff; font-size: clamp(2.15rem, 3.3vw, 3.15rem); }
.cp-auth-story__copy > p { color: #c1c5d2; font-size: .96rem; }
.cp-auth-story ul { margin: 33px 0 0; padding: 0; list-style: none; }
.cp-auth-story li { display: flex; gap: 12px; margin: 17px 0; }
.cp-auth-story li > .cp-icon { width: 19px; height: 19px; margin-top: 2px; color: var(--cp-accent); }
.cp-auth-story li span { display: flex; flex-direction: column; }
.cp-auth-story li b { color: #fff; font-size: .82rem; }
.cp-auth-story li small { margin-top: 2px; color: #969caf; font-size: .7rem; }
.cp-auth-story__foot { position: relative; z-index: 1; display: flex; align-items: center; gap: 9px; color: #aeb3c3; font-size: .68rem; }
.cp-auth-panel { min-width: 0; display: flex; flex-direction: column; padding: 48px 58px 34px; background: #fff; }
.cp-auth-panel__header { margin-bottom: 28px; }
.cp-auth-kicker { display: block; margin-bottom: 9px; color: var(--cp-primary); font-size: .67rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.cp-auth-panel__header h2 { margin-bottom: 7px; font-size: clamp(1.8rem, 3vw, 2.35rem); }
.cp-auth-panel__header p { margin: 0; color: var(--cp-muted); font-size: .86rem; }
.cp-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 28px; padding: 4px; border: 1px solid var(--cp-border); border-radius: 12px; background: var(--cp-surface); }
.cp-auth-tabs button { min-height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 9px 14px; border: 0; border-radius: 9px; color: #6a6f81; background: transparent; font-size: .8rem; font-weight: 700; }
.cp-auth-tabs button.is-active { color: var(--cp-ink); background: #fff; box-shadow: 0 4px 13px rgba(31,34,69,.09); }
.cp-auth-tabs button span { padding: 2px 6px; border-radius: 20px; color: #087b63; background: rgba(37,199,163,.13); font-size: .55rem; letter-spacing: .05em; text-transform: uppercase; }
.cp-auth-pane { flex: 1; }
.cp-auth-pane:not(.is-active) { display: none; }
.cp-auth-form { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; }
.cp-auth-form > label { display: block; margin: 0 0 18px; color: #3f4457; font-size: .77rem; font-weight: 700; }
.cp-auth-form input.input-text { width: 100%; min-height: 50px; display: block; margin-top: 7px; padding: 12px 14px; border: 1px solid #d5d9e4; border-radius: 10px; color: var(--cp-ink); background: #fff; outline: none; box-shadow: none; transition: border-color .2s, box-shadow .2s; }
.cp-auth-form input.input-text:focus { border-color: var(--cp-primary); box-shadow: 0 0 0 4px rgba(91,92,240,.09); }
.cp-auth-form .password-input { display: block; }
.cp-auth-form .show-password-input { top: 1.25em; right: 1em; }
.cp-auth-form__options { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 2px 0 22px; font-size: .72rem; }
.cp-auth-form__options a { font-weight: 700; }
.cp-auth-check { display: inline-flex !important; align-items: center; gap: 8px; margin: 0 !important; color: #666b7e !important; font-weight: 600 !important; }
.cp-auth-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--cp-primary); }
.woocommerce .cp-auth-form .cp-auth-submit { width: 100%; min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0; }
.cp-auth-email-note { display: flex; gap: 11px; margin-bottom: 18px; padding: 13px 14px; border: 1px solid #d8ede7; border-radius: 10px; color: #52645f; background: #f3fbf8; font-size: .7rem; }
.cp-auth-email-note > .cp-icon { width: 20px; height: 20px; color: #0b9d7e; }
.cp-auth-email-note span { display: flex; flex-direction: column; }
.cp-auth-email-note b { color: #2e443e; font-size: .73rem; }
.cp-auth-privacy { margin: 0 0 18px; color: var(--cp-muted); font-size: .68rem; line-height: 1.55; }
.cp-auth-privacy p { margin: 0; }
.cp-auth-panel__foot { display: flex; align-items: flex-start; justify-content: center; gap: 7px; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--cp-border); color: #8b90a1; font-size: .64rem; text-align: center; }
.cp-auth-panel__foot .cp-icon { width: 13px; margin-top: 2px; color: var(--cp-accent); }
.cp-auth-panel__foot a { color: #6065d8; font-weight: 700; }
.cp-account-hero { padding: 72px 0 48px; background: radial-gradient(circle at 20% 0, rgba(91,92,240,.12), transparent 36%), linear-gradient(#fafaff, #fff); }
.cp-account-hero h1 { margin-bottom: 8px; font-size: clamp(2.7rem, 5vw, 4.3rem); }
.cp-account-hero p { margin: 0; color: var(--cp-muted); }
.cp-account-page--member .cp-account-content { padding-top: 52px; padding-bottom: 100px; }
.cp-account-card { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 35px; padding: 30px; border: 1px solid var(--cp-border); border-radius: var(--cp-radius); background: linear-gradient(130deg, #fff, rgba(91,92,240,.055)); }
.cp-account-card h2 { margin-bottom: 7px; }
.cp-account-card p { margin: 0; color: var(--cp-muted); }
.cp-account-card__meta { font-size: .75rem; }
.cp-account-card__actions { display: flex; flex-direction: column; gap: 8px; min-width: 190px; }
.cp-thank-you { max-width: 850px; margin: 35px auto; text-align: center; }
.cp-thank-you__icon { width: 68px; height: 68px; display: grid; place-items: center; margin: 0 auto 24px; border-radius: 50%; color: #fff; background: var(--cp-accent); box-shadow: 0 0 0 12px rgba(37,199,163,.1); }
.cp-thank-you__icon .cp-icon { width: 32px; height: 32px; }
.cp-thank-you__icon--failed { background: #d95b57; box-shadow: 0 0 0 12px rgba(217,91,87,.1); font-size: 1.8rem; font-weight: 800; }
.cp-thank-you h1 { font-size: clamp(2.2rem, 5vw, 3.7rem); }
.cp-thank-you > p { max-width: 620px; margin-inline: auto; color: var(--cp-muted); }
.cp-thank-you .woocommerce-order-overview { display: grid; grid-template-columns: repeat(4, 1fr); margin: 38px 0; padding: 20px; border: 1px solid var(--cp-border); border-radius: 13px; background: var(--cp-surface); text-align: left; }
.cp-thank-you .woocommerce-order-overview li { float: none; margin: 0; padding: 0 15px; border-right: 1px dashed #ced2dd; color: var(--cp-muted); font-size: .65rem; }
.cp-thank-you .woocommerce-order-overview li:last-child { border: 0; }
.cp-thank-you .woocommerce-order-overview strong { display: block; color: var(--cp-ink); font-size: .77rem; }
.cp-thank-you__actions { display: flex; justify-content: center; gap: 10px; }
.cp-external-thanks-standalone { min-height: 100vh; background: var(--cp-thanks-background, #f5f7fb); }
.cp-external-thanks { min-height: 100vh; display: grid; place-items: center; background: radial-gradient(circle at 15% 12%, rgba(91,92,240,.12), transparent 32%), radial-gradient(circle at 90% 82%, rgba(37,199,163,.1), transparent 28%), var(--cp-thanks-background, #f5f7fb); }
.cp-external-thanks__hero { width: 100%; padding: 78px 0; }
.cp-external-thanks__card { max-width: 930px; margin: 0 auto; padding: 58px clamp(28px, 6vw, 72px); border: 1px solid rgba(219,222,232,.9); border-radius: 28px; background: var(--cp-thanks-card, #fff); box-shadow: 0 28px 80px rgba(28,31,64,.12); text-align: center; }
.cp-external-thanks__card .cp-thank-you__icon { margin-bottom: 29px; }
.cp-external-thanks__card .cp-thank-you__icon, .cp-external-thanks__steps article > span { background: var(--cp-thanks-accent, #5b5cf0); }
.cp-external-thanks__card .cp-eyebrow { color: var(--cp-thanks-accent, #5b5cf0); }
.cp-external-thanks__card h1 { max-width: 760px; margin-inline: auto; color: var(--cp-thanks-heading, #17192b); font-size: clamp(2.6rem, 5.5vw, 4.6rem); }
.cp-external-thanks__lead { max-width: 680px; margin: 0 auto; color: var(--cp-muted); font-size: 1.02rem; }
.cp-external-thanks__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 42px 0 34px; text-align: left; }
.cp-external-thanks__steps article { padding: 23px 20px; border: 1px solid var(--cp-border); border-radius: 15px; background: #fcfcfe; }
.cp-external-thanks__steps article > span { width: 30px; height: 30px; display: grid; place-items: center; margin-bottom: 18px; border-radius: 50%; color: #fff; font-family: "Manrope", sans-serif; font-size: .68rem; font-weight: 800; }
.cp-external-thanks__steps h2 { margin-bottom: 8px; font-size: .98rem; letter-spacing: -.02em; }
.cp-external-thanks__steps p { margin: 0; color: var(--cp-muted); font-size: .73rem; line-height: 1.55; }
.cp-external-thanks__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }
.cp-external-thanks__support { display: flex; align-items: flex-start; gap: 10px; margin-top: 36px; padding: 15px 17px; border: 1px solid #d9ede8; border-radius: 12px; color: #596b66; background: #f3fbf8; text-align: left; }
.cp-external-thanks__support > .cp-icon { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 2px; color: #0b9e7e; }
.cp-external-thanks__support p { margin: 0; font-size: .72rem; }
.cp-external-thanks__support strong { color: #31443f; }
.cp-external-thanks__support a { font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }

/* Footer */
.cp-site-footer { padding: 72px 0 0; color: #aeb2c0; background: #121421; }
.cp-footer-top { display: grid; grid-template-columns: 1.8fr 1fr 1fr 1.15fr; gap: 70px; padding-bottom: 55px; }
.cp-site-footer .cp-wordmark { color: #fff; }
.cp-footer-brand .custom-logo-link { display: inline-flex; padding: 7px 11px; border-radius: 10px; background: #fff; }
.cp-footer-brand .custom-logo { display: block; width: auto; max-height: 38px; }
.cp-footer-brand > p { max-width: 300px; margin-top: 20px; color: #9095a7; font-size: .84rem; }
.cp-security-note { display: inline-flex; align-items: center; gap: 8px; font-size: .68rem; }
.cp-security-note .cp-icon { color: var(--cp-accent); }
.cp-social-links { display: flex; gap: 7px; margin-top: 17px; }
.cp-social-links:empty { display: none; }
.cp-social-links a { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; color: #b5b9c6; font-size: .62rem; font-weight: 800; text-transform: uppercase; }
.cp-social-links a:hover { color: #fff; border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.06); }
.cp-footer-column h2 { color: #fff; font-family: "DM Sans", sans-serif; font-size: .77rem; letter-spacing: .08em; text-transform: uppercase; }
.cp-footer-column ul { margin: 0; padding: 0; list-style: none; }
.cp-footer-column li { margin: 8px 0; }
.cp-footer-column a { color: #989dad; font-size: .8rem; }
.cp-footer-column a:hover { color: #fff; }
.cp-footer-bottom { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.08); color: #777c8e; font-size: .68rem; }
.cp-footer-bottom p { margin: 0; }

/* Responsive */
@media (max-width: 1120px) {
  .cp-main-nav { margin-right: 30px; }
  .cp-logo { margin-right: 35px; }
  .cp-nav-list { gap: 22px; }
  .cp-pricing-grid { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .cp-price-card ul { min-height: 125px; }
  .cp-footer-top { gap: 35px; }
}

@media (max-width: 900px) {
  .admin-bar .cp-site-header { top: 46px; }
  .cp-site-header { position: relative; top: auto !important; }
  .cp-header-inner { height: 68px; justify-content: space-between; }
  .cp-logo { margin: 0; }
  .cp-nav-toggle { display: block; order: 3; }
  .cp-main-nav { position: absolute; top: 100%; left: 0; right: 0; display: none; margin: 0; padding: 16px 20px 25px; border-top: 1px solid var(--cp-border); background: #fff; box-shadow: var(--cp-shadow-sm); }
  .cp-main-nav.is-open { display: block; }
  .cp-nav-list { flex-direction: column; align-items: stretch; gap: 0; }
  .cp-nav-list a { display: block; padding: 12px 5px; }
  .cp-mobile-account-actions { display: flex; gap: 9px; padding-top: 14px; border-top: 1px solid var(--cp-border); }
  .cp-mobile-account-actions .cp-button { flex: 1; }
  .cp-header-actions { margin-left: auto; margin-right: 15px; }
  .cp-signin { display: none; }
  .cp-hero { padding-top: 65px; }
  .cp-hero__grid { grid-template-columns: 1fr; gap: 55px; }
  .cp-hero__copy { max-width: 690px; text-align: center; margin-inline: auto; }
  .cp-hero__copy > p { margin-inline: auto; }
  .cp-hero__actions, .cp-hero__micro { justify-content: center; }
  .cp-hero__visual { width: min(100%, 640px); margin-inline: auto; }
  .cp-proof-strip .cp-container { flex-direction: column; justify-content: center; padding: 25px 0; text-align: center; }
  .cp-proof-strip .cp-container > div { flex-wrap: wrap; justify-content: center; }
  .cp-feature-grid { grid-template-columns: 1fr; }
  .cp-feature-grid article { min-height: auto; }
  .cp-commerce-grid { grid-template-columns: 1fr; gap: 55px; }
  .cp-commerce-visual { width: min(100%, 590px); margin-inline: auto; }
  .cp-faq-grid { grid-template-columns: 1fr; gap: 35px; }
  .cp-about-hero__grid, .cp-story-grid { grid-template-columns: 1fr; gap: 35px; }
  .cp-values .cp-container { grid-template-columns: 1fr; }
  .cp-tool-benefits .cp-container { grid-template-columns: 1fr; gap: 25px; }
  .cp-step-grid { grid-template-columns: 1fr; }
  .cp-contact-grid { grid-template-columns: 1fr; gap: 45px; }
  .cp-footer-top { grid-template-columns: 2fr 1fr 1fr; }
  .cp-footer-column--legal { grid-column: 2 / -1; }
  .woocommerce-checkout #customer_details { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; }
  .cp-auth-shell { grid-template-columns: minmax(0, 1fr); }
  .cp-auth-story { min-height: auto; padding: 38px 40px; }
  .cp-auth-story__copy { padding: 38px 0 20px; }
  .cp-auth-story h1 { max-width: 650px; }
  .cp-auth-story ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 25px; }
  .cp-auth-story li { margin: 0; }
  .cp-auth-story__foot { display: none; }
}

@media (max-width: 680px) {
  .cp-container { width: min(calc(100% - 28px), var(--cp-container)); }
  .cp-section { padding: 78px 0; }
  .cp-announcement .cp-container { min-height: 42px; justify-content: flex-start; }
  .cp-announcement a { display: none; }
  .cp-announcement span { font-size: .72rem; }
  .cp-header-actions .cp-button { display: none; }
  .cp-header-actions { margin: 0 5px 0 auto; }
  .cp-hero { padding: 55px 0 75px; }
  .cp-hero__copy h1 { font-size: clamp(2.7rem, 14vw, 4rem); }
  .cp-hero__actions { flex-direction: column; }
  .cp-hero__actions .cp-button { width: 100%; }
  .cp-hero-plans-link { justify-content: center; width: 100%; }
  .cp-hero__micro { gap: 10px 16px; }
  .cp-demo-canvas { height: 300px; }
  .cp-floating-chip--top { right: -5px; }
  .cp-floating-chip--bottom { left: -5px; }
  .cp-proof-strip .cp-container > div { gap: 20px 28px; }
  .cp-dropzone { min-height: 390px; margin: 9px; }
  .cp-remover__toolbar { padding-inline: 13px; }
  .cp-preview-stage { height: 275px; }
  .cp-preview-actions { flex-direction: column; }
  .cp-preview-actions .cp-button { width: 100%; }
  .cp-remover__message { position: static; margin: 10px; flex-direction: column; text-align: center; }
  .cp-remover__reassurance { gap: 10px 18px; }
  .cp-commerce-visual { padding: 15px; }
  .cp-catalog-grid > div { min-height: 145px; }
  .cp-catalog-grid img { height: 85px; }
  .cp-pricing-grid { grid-template-columns: 1fr; }
  .cp-price-card { padding: 26px; }
  .cp-price-card ul { min-height: auto; }
  .cp-final-cta .cp-container { flex-direction: column; align-items: flex-start; }
  .cp-final-cta .cp-button { width: 100%; }
  .cp-page-hero { padding-top: 70px; }
  .cp-manifesto-card { padding-block: 55px; }
  .cp-field-row { grid-template-columns: 1fr; gap: 0; }
  .cp-contact-form-wrap { padding: 22px; }
  .cp-post-grid, .woocommerce ul.products { grid-template-columns: 1fr; }
  .woocommerce-account .u-columns { grid-template-columns: 1fr; }
  .cp-account-page--guest { padding: 28px 0 55px; }
  .cp-account-page--guest .cp-account-content { width: min(calc(100% - 24px), 1100px); }
  .cp-auth-shell { border-radius: 20px; }
  .cp-auth-story { padding: 29px 24px; }
  .cp-auth-story__copy { padding: 30px 0 8px; }
  .cp-auth-story h1 { font-size: 2rem; }
  .cp-auth-story__copy > p { font-size: .84rem; }
  .cp-auth-story ul { grid-template-columns: 1fr; gap: 0; }
  .cp-auth-story li { margin: 8px 0; }
  .cp-auth-story li:nth-child(2), .cp-auth-story li:nth-child(3) { display: none; }
  .cp-auth-panel { padding: 32px 23px 25px; }
  .cp-auth-panel__header { margin-bottom: 22px; }
  .cp-auth-tabs { margin-bottom: 22px; }
  .cp-auth-tabs button { min-width: 0; padding-inline: 6px; }
  .cp-auth-form__options { align-items: flex-start; flex-direction: column; gap: 10px; }
  .cp-account-hero { padding: 55px 0 35px; }
  .cp-account-card { flex-direction: column; align-items: stretch; }
  .cp-thank-you .woocommerce-order-overview { grid-template-columns: 1fr 1fr; gap: 18px 0; }
  .cp-thank-you .woocommerce-order-overview li:nth-child(2) { border-right: 0; }
  .cp-thank-you__actions { flex-direction: column; }
  .cp-external-thanks__hero { padding: 32px 0 55px; }
  .cp-external-thanks__card { padding: 40px 22px 28px; border-radius: 20px; }
  .cp-external-thanks__steps { grid-template-columns: 1fr; margin: 32px 0 27px; }
  .cp-external-thanks__steps article { display: grid; grid-template-columns: 30px 1fr; gap: 13px; padding: 18px; }
  .cp-external-thanks__steps article > span { margin: 0; }
  .cp-external-thanks__actions { flex-direction: column; }
  .cp-external-thanks__actions .cp-button { width: 100%; }
  .cp-footer-top { grid-template-columns: 1fr 1fr; }
  .cp-footer-brand { grid-column: 1 / -1; }
  .cp-footer-column--legal { grid-column: auto; }
  .cp-footer-bottom { padding: 20px 0; flex-direction: column; align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
