.cp{--accent:var(--turquoise-deep);--cp-ink:#141a18;--cp-muted:#5c6864;--cp-line:#e2e8e6;--cp-paper:#fff;--cp-max:1100px;color:var(--cp-ink);background:var(--cp-paper);overflow-x:hidden}.cp-wrap{max-width:var(--cp-max);margin:0 auto;padding:0 20px}.cp-head{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--cp-line)}.cp-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px}.cp-head nav{display:none;gap:22px;font-size:15px}.cp-head nav a{text-decoration:none;color:var(--cp-ink);opacity:.8}.cp-head nav a:hover{opacity:1}@media (min-width:760px){.cp-head nav{display:flex}}.cp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;background:var(--accent);color:#fff;box-shadow:0 10px 24px -10px var(--accent);transition:transform .15s ease,box-shadow .15s ease}.cp-btn:hover{transform:translateY(-1px)}.cp-btn:active{transform:translateY(1px)}.cp-btn.big{padding:15px 28px;font-size:16px}.cp-btn.ghost{background:transparent;color:inherit;border:1.5px solid;box-shadow:none}.cp-foot{border-top:1px solid var(--cp-line);padding:30px 0;color:var(--cp-muted);font-size:14px;background:#fff}.cp-foot .cp-bar{flex-wrap:wrap;padding:0 20px}.cp-foot a{color:var(--accent);font-weight:600;text-decoration:none}.cp-eyebrow{font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}.cp h2{font-size:clamp(26px,3.4vw,38px);line-height:1.12;letter-spacing:-.02em;margin:0 0 12px}.cp h3,.cp p{margin:0}.cp .cp-lead{font-size:18px;color:var(--cp-muted);max-width:54ch}.cp-reveal{opacity:0;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}.cp-reveal.cp-from-up{transform:translateY(28px)}.cp-reveal.cp-from-left{transform:translateX(-36px)}.cp-reveal.cp-from-right{transform:translateX(36px)}.cp-reveal.cp-from-scale{transform:scale(.92)}.cp-reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.cp-reveal{opacity:1;transform:none;transition:none}}.cp-enquiry{padding:70px 0 80px;background:#f4f9f8}.cp-enquiry-head{text-align:center;max-width:560px;margin:0 auto 30px}.cp-enquiry-head p:last-child{color:var(--cp-muted)}.cp-enquiry .form-card{box-shadow:0 30px 60px -36px var(--accent)}.cp-enquiry .btn.primary{background:var(--accent);box-shadow:0 8px 20px -8px var(--accent)}.cp-enquiry .field input:focus,.cp-enquiry .field select:focus,.cp-enquiry .field textarea:focus{border-color:var(--accent)}.cp-faq{padding:70px 0}.cp-faq h2{text-align:center;margin-bottom:28px}.cp-faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.cp-faq-item{border:1px solid var(--cp-line);border-radius:14px;background:#fff;overflow:hidden}.cp-faq-item button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;background:none;border:none;padding:16px 18px;font:inherit;font-weight:700;font-size:16px;text-align:left;cursor:pointer;color:inherit}.cp-faq-plus{font-size:22px;line-height:1;color:var(--accent);transition:transform .25s ease}.cp-faq-item.open .cp-faq-plus{transform:rotate(45deg)}.cp-faq-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.cp-faq-item.open .cp-faq-body{grid-template-rows:1fr}.cp-faq-body>p{overflow:hidden;padding:0 18px;color:var(--cp-muted);font-size:15.5px;line-height:1.65}.cp-faq-item.open .cp-faq-body>p{padding-bottom:18px}.cp-grid2{display:grid;grid-gap:24px;gap:24px}.cp-grid3{display:grid;grid-gap:18px;gap:18px}@media (min-width:820px){.cp-grid2{grid-template-columns:1fr 1fr}.cp-grid3{grid-template-columns:1fr 1fr 1fr}}.cp-sticky-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:25;display:flex;justify-content:center}@media (min-width:760px){.cp-sticky-cta{display:none}}.cp-sticky-cta .cp-btn{width:100%;max-width:420px;padding:14px;font-size:15px}@keyframes cp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes cp-spin{to{transform:rotate(1turn)}}@keyframes cp-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes cp-dash{to{stroke-dashoffset:0}}@keyframes cp-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}@keyframes cp-marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}