/* Product discovery and contact interest; no public lead data is rendered. */
.product-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.product-card{min-width:0;display:flex;flex-direction:column;padding:32px;border:1px solid var(--color-base-300);border-radius:14px;background:var(--color-base-200)}
.product-card-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:28px}
.product-card-top .eyebrow{font-size:10px;color:var(--color-primary)}
.product-state{font-size:11px;padding:4px 9px;border:1px solid var(--color-base-300);border-radius:5px;color:var(--caoti-muted)}
.product-card h3{font-size:clamp(25px,2.8vw,34px);font-weight:550;letter-spacing:-.035em;line-height:1.15;max-width:400px;margin-bottom:18px;overflow-wrap:break-word}
.product-card>p{color:var(--caoti-muted);font-size:15px}
.product-card ul{font-size:14px;line-height:1.5;margin:22px 0 26px}
.product-card li{position:relative;padding:9px 0 9px 20px;border-bottom:1px solid var(--color-base-300)}
.product-card li::before{content:'✓';position:absolute;left:0;color:var(--color-primary)}
.product-card .product-format{font-size:12px;margin-top:auto;margin-bottom:18px}
.product-interest-link{align-self:flex-start;display:inline-flex;gap:20px;align-items:center}
.product-interest-box{display:grid;grid-template-columns:.85fr minmax(0,1fr);gap:56px;margin-top:40px;padding:40px;border:1px solid var(--color-base-300);border-radius:14px;background:var(--color-base-200);scroll-margin-top:120px}
.product-interest-box>*{min-width:0}
.product-interest-intro .eyebrow{color:var(--color-primary);font-size:11px;margin-bottom:18px}
.product-interest-intro h3{font-size:32px;font-weight:500;letter-spacing:-.04em;line-height:1.15;margin-bottom:18px}
.product-interest-intro>p:not(.eyebrow){font-size:15px;color:var(--caoti-muted)}
.product-interest-intro .interest-reassurance{margin-top:20px;color:var(--color-base-content);font-size:14px}
.product-interest-intro .interest-service-link{margin-top:36px;font-size:13px}
.interest-service-link a,.interest-form a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.interest-form{position:relative;min-width:0}
.interest-form fieldset{min-width:0;margin:0 0 22px;padding:0;border:0}
.product-choices legend{font-size:14px;font-weight:600;margin-bottom:12px}
.interest-form .product-choice{display:flex;align-items:center;gap:12px;padding:13px 14px;margin:0 0 9px;border:1px solid var(--caoti-muted);border-radius:8px;cursor:pointer;font-size:14px;line-height:1.45}
.product-choice:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 9%,var(--color-base-100));box-shadow:inset 0 0 0 1px var(--color-primary)}
.product-choice input,.interest-consent input{appearance:auto;accent-color:var(--color-primary);width:19px;height:19px;flex-shrink:0;margin:0;cursor:pointer}
.interest-form>label:not(.interest-consent){display:block;font-size:14px;margin:18px 0 7px}
.interest-form>label>span{font-size:12px;color:var(--caoti-muted)}
.interest-form>.input{width:100%;max-width:100%;min-width:0;min-height:48px;padding:11px 13px;border:1px solid var(--caoti-muted);border-radius:7px;font-size:16px;background:var(--color-base-100);color:var(--color-base-content)}
.interest-form>.input::placeholder{color:var(--caoti-muted)}
.interest-hint{font-size:12px;color:var(--caoti-muted);margin-top:6px}
.interest-form .interest-consent{display:flex;align-items:flex-start;gap:11px;margin-top:22px;cursor:pointer;line-height:1.55;padding-block:5px}
.interest-consent input{margin-top:2px}
.interest-form .interest-consent>span{font-size:13px;color:var(--color-base-content)}
.interest-privacy{font-size:12px;color:var(--caoti-muted);margin-top:10px}
.interest-privacy summary{cursor:pointer;padding:8px 0;text-decoration:underline;text-underline-offset:3px}
.interest-privacy p{padding:5px 0 10px;line-height:1.7}
.interest-submit{width:100%;margin-top:22px}
.interest-submit:disabled{opacity:.6;cursor:not-allowed}
.interest-status{font-size:13px;line-height:1.6;margin-top:14px}
.interest-status[data-state=success]{font-weight:600;padding:12px;border-left:3px solid var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-base-100))}
.interest-fallback{font-size:12px;color:var(--caoti-muted);margin-top:10px}
/* A clean source in every placement; a short CSS entrance replaces the raster loop. */
.stage-logo img{animation:brand-arrive .65s ease-out both;image-rendering:auto}
.brand-logo,.footer-logo{image-rendering:auto}
@keyframes brand-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.product-interest-box{gap:32px;padding:28px}.product-card{padding:26px}}
@media(max-width:700px){.product-cards{grid-template-columns:minmax(0,1fr);gap:18px}.product-interest-box{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:26px;padding:24px}.product-interest-intro .interest-service-link{margin-top:20px}.product-card h3{max-width:100%}.product-interest-link{width:100%;justify-content:space-between}}
@media(max-width:380px){.product-interest-box,.product-card{padding:20px}.product-choice span{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.stage-logo img{animation:none}}

/* Let the product form use the same usable mobile width as the contact form. */
@media(max-width:900px){.product-interest-box{grid-template-columns:minmax(0,1fr)}}
@media(max-width:530px){.product-interest-box{padding:26px 0;border-inline:0;border-radius:0;background:transparent}}
@media(max-width:340px){.products-section>.container{width:calc(100% - 20px)}}
/* The SDK controls visibility via interaction-only; never scale or obscure it. */
.turnstile-container{width:100%;max-width:100%;min-width:0;min-height:0;margin-top:0}
.turnstile-container[data-interactive="true"]{margin-top:12px}
.turnstile-container[data-size="compact"]>div{margin-inline:auto}
.interest-status{font-size:12px;color:var(--caoti-muted)}
.interest-status[data-state="success"]{color:var(--color-base-content)}
.interest-status[data-state="error"]{color:#9C2929}
[data-theme="caoti-eter-dark"] .interest-status[data-state="error"]{color:#FFC5BB}
.motion-toggle{min-height:44px;padding:8px 0;background:transparent;border:0;font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--caoti-muted);text-align:left}
.mobile-nav .motion-toggle{font-size:13px}
.footer-preferences .copyright{margin:0}
