:root {
  --cm-black:#2a2a2a;
  --cm-blue:#0b23ad;
  --cm-mid:#4f66ff;
  --cm-cyan:#00f3ff;
  --cm-light:#f4f5f9;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.cm-site{margin:0;color:var(--cm-black);background:#fff;font-family:Poppins,Arial,sans-serif}
body.cm-menu-open{overflow:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.cm-container{width:min(1208px,calc(100% - 48px));margin:0 auto}
.cm-gradient-line{width:169px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--cm-blue),var(--cm-mid) 50%,var(--cm-cyan))}
.cm-gradient-btn{border:1px solid #fff;border-radius:5px;background:linear-gradient(90deg,var(--cm-blue),var(--cm-mid) 50%,var(--cm-cyan));color:#fff;font-weight:700;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;cursor:pointer}
.cm-white-btn{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#000;border-radius:5px;padding:12px 24px;font-family:Arial,sans-serif;font-weight:700;min-height:48px}

/* NAV */
.cm-header{height:111px;background:#fff;position:relative;z-index:50}
.cm-nav-wrap{height:111px;width:min(1208px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:185px 1fr 122px;align-items:center;gap:40px}
.cm-logo img{width:185px;height:69px;object-fit:contain}
.cm-desktop-nav{display:flex;justify-content:center;gap:40px;font-size:20px;line-height:28px;letter-spacing:-.5px}
.cm-desktop-nav a:hover{opacity:.65}
.cm-contact-top{width:122px}
.cm-menu-toggle,.cm-mobile-nav{display:none}

/* HERO */
.cm-hero{height:737px;position:relative;overflow:hidden;background:#000}
.cm-hero::before{content:"";position:absolute;inset:0;background-image:var(--cm-hero);background-size:cover;background-position:center}
.cm-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.42) 50%,rgba(0,243,255,.35) 100%)}
.cm-hero-inner{height:100%;display:flex;align-items:center;position:relative;z-index:2}
.cm-hero-copy{width:570px;color:#fff}
.cm-hero-copy h1{font-size:50px;line-height:1.4;letter-spacing:-2px;margin:0 0 24px;font-weight:700}
.cm-hero-copy p{font-size:24px;line-height:32px;font-weight:700;margin:0 0 22px;max-width:430px}

/* ABOUT */
.cm-about{min-height:775px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:52px;padding:75px 5.3% 68px 0}
.cm-about-copy{max-width:600px}
.cm-about-copy h2{font-size:50px;line-height:1.2;letter-spacing:-1.26px;margin:27px 0}
.cm-about-copy p{font-size:20px;line-height:28px;letter-spacing:-.5px;opacity:.6;margin:0 0 28px}
.cm-about-image{margin:0;order:-1;height:707px;border-radius:0 57px 0 0;overflow:hidden;box-shadow:0 62px 54px rgba(0,0,0,.3)}
.cm-about-image img{width:100%;height:100%;object-fit:cover}

/* OFFER INTRO */
.cm-offer-intro{background:var(--cm-light);height:422px;position:relative;overflow:hidden}
.cm-offer-intro-inner{height:100%;width:min(1263px,calc(100% - 80px));margin:0 auto;display:flex;align-items:center;position:relative}
.cm-offer-heading{width:min(1070px,85%);position:relative;z-index:2}
.cm-offer-heading h2{font-size:50px;line-height:1.25;letter-spacing:-1.26px;margin:17px 0 0}
.cm-sygnet{position:absolute;right:-30px;top:50%;transform:translateY(-50%);width:482px;height:auto;opacity:.95}

/* OFFER GRID */
.cm-offer-grid{min-height:1104px;position:relative;background-image:var(--cm-offer-bg);background-size:cover;background-position:center}
.cm-offer-shade{position:absolute;inset:0;background:linear-gradient(220deg,rgba(79,102,255,.68),rgba(0,0,0,.82) 78%)}
.cm-offer-items{position:relative;z-index:2;width:min(1226px,calc(100% - 80px));margin:0 auto;padding:74px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:68px 54px;color:#fff}
.cm-offer-card{min-height:420px;color:#fff;transition:color .24s ease,transform .24s ease}
.cm-offer-icon{display:block;width:94px;height:96px;margin-bottom:10px;background:currentColor;-webkit-mask:var(--cm-icon) center/contain no-repeat;mask:var(--cm-icon) center/contain no-repeat;transition:transform .24s ease,background-color .24s ease}
.cm-offer-card-copy{padding-left:70px}
.cm-offer-card h3{margin:0 0 23px;text-transform:uppercase;font-size:34px;line-height:50px;font-weight:700}
.cm-offer-card p{font-size:20px;line-height:1.35;font-weight:500;margin:0}

/* JOURNEY */
.cm-journey{height:664px;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:70px 20px}
.cm-journey-inner{max-width:1204px;margin:auto;display:flex;flex-direction:column;align-items:center}
.cm-journey h2{font-size:50px;line-height:1.2;letter-spacing:-1.26px;margin:14px 0 12px}
.cm-journey p{max-width:634px;font-size:20px;line-height:28px;letter-spacing:-.5px;opacity:.6;margin:0 0 50px}
.cm-journey strong{max-width:676px;font-size:24px;line-height:32px;opacity:.6}

/* CONTACT */
.cm-contact{min-height:1032px;background:#fff;display:flex;align-items:center;padding:80px 24px}
.cm-contact-inner{width:min(1060px,100%);margin:auto}
.cm-contact-title h2{font-size:36px;line-height:50px;color:#3252c7;margin:0;font-weight:700}
.cm-contact-title p{font-size:24px;line-height:32px;font-weight:700;margin:5px 0 20px}
.cm-contact .wpcf7{width:100%;margin:0;padding:0}
.cm-contact .wpcf7 form{margin:0;padding:0}
.cm-contact .wpcf7 form>p{margin:0}
.cm-form{display:flex;flex-direction:column;gap:20px;width:100%;font-family:Arial,sans-serif}
.cm-form .cm-field{display:flex;flex-direction:column;gap:8px;width:100%;margin:0;font-family:Arial,sans-serif;font-size:16px;line-height:18px;font-weight:400;color:#2a2a2a}
.cm-form .cm-field-label{display:block}
.cm-form .wpcf7-form-control-wrap{display:block;width:100%}
.cm-form .cm-input,
.cm-form .cm-textarea,
.cm-form input[type=text],
.cm-form input[type=email],
.cm-form textarea{display:block;width:100%;margin:0;border:1px solid #2a2a2a;border-radius:5px;background:#fff;padding:12px;font:400 16px/1.35 Arial,sans-serif;color:#2a2a2a;box-shadow:none;outline:0;transition:border-color .2s ease,box-shadow .2s ease}
.cm-form .cm-input,
.cm-form input[type=text],
.cm-form input[type=email]{height:48px}
.cm-form .cm-textarea,
.cm-form textarea{height:291px;min-height:291px;resize:vertical}
.cm-form .cm-input::placeholder,
.cm-form .cm-textarea::placeholder,
.cm-form input::placeholder,
.cm-form textarea::placeholder{color:#505050;opacity:1}
.cm-form .cm-input:focus,
.cm-form .cm-textarea:focus,
.cm-form input[type=text]:focus,
.cm-form input[type=email]:focus,
.cm-form textarea:focus{border-color:#3252c7;box-shadow:0 0 0 2px rgba(50,82,199,.10)}
.cm-form .wpcf7-not-valid{border-color:#d63638}
.cm-form .wpcf7-not-valid-tip{display:block;margin-top:6px;font:400 13px/1.35 Arial,sans-serif;color:#d63638}

.cm-checkbox{font:400 14px/1.5 Arial,sans-serif;color:#2a2a2a}
.cm-checkbox .wpcf7-form-control-wrap,
.cm-checkbox .wpcf7-acceptance,
.cm-checkbox .wpcf7-list-item{display:block;margin:0}
.cm-checkbox .wpcf7-list-item label{display:inline-flex;align-items:center;gap:12px;cursor:pointer;user-select:none}
.cm-checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;margin:0;border:1px solid #2a2a2a;border-radius:0;background:#fff;display:grid;place-content:center;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.cm-checkbox input[type=checkbox]::before{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}
.cm-checkbox input[type=checkbox]:checked{border-color:#3252c7;background:linear-gradient(90deg,#0b23ad,#4f66ff 50%,#00f3ff)}
.cm-checkbox input[type=checkbox]:checked::before{transform:rotate(-45deg) scale(1)}
.cm-checkbox input[type=checkbox]:focus-visible{outline:2px solid rgba(50,82,199,.35);outline-offset:2px}
.cm-checkbox .wpcf7-list-item-label{font:400 14px/1.5 Arial,sans-serif;color:#2a2a2a}
.cm-checkbox u{text-underline-offset:2px}

.cm-submit-row{display:flex;align-items:center;min-height:48px}
.cm-form .cm-submit,
.cm-form .cm-gradient-btn{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:94px;height:48px;margin:0;border:1px solid #fff;border-radius:5px;padding:12px 24px;background:linear-gradient(90deg,#0b23ad 0%,#4f66ff 50%,#00f3ff 100%);color:#fff;font:700 16px/24px Arial,sans-serif;cursor:pointer;box-shadow:none;transition:transform .15s ease,filter .15s ease,opacity .15s ease}
.cm-form .cm-submit:hover,
.cm-form .cm-gradient-btn:hover{filter:brightness(.94)}
.cm-form .cm-submit:active,
.cm-form .cm-gradient-btn:active{transform:translateY(1px)}
.cm-form .cm-submit:disabled,
.cm-form .cm-gradient-btn:disabled{cursor:wait;opacity:.7}
.cm-contact .wpcf7-spinner{width:24px;height:24px;margin:0 0 0 12px;vertical-align:middle}
.cm-contact .wpcf7 form.submitting .cm-submit,
.cm-contact .wpcf7 form.submitting .cm-gradient-btn{opacity:.72;pointer-events:none}

.cm-contact .wpcf7 form .wpcf7-response-output{margin:20px 0 0;padding:12px 16px;border:1px solid #3252c7;border-radius:5px;background:#f5f7ff;color:#2a2a2a;font:400 14px/1.5 Arial,sans-serif}
.cm-contact .wpcf7 form.sent .wpcf7-response-output{border-color:#62a875;background:#ecfff1}
.cm-contact .wpcf7 form.invalid .wpcf7-response-output,
.cm-contact .wpcf7 form.unaccepted .wpcf7-response-output,
.cm-contact .wpcf7 form.spam .wpcf7-response-output,
.cm-contact .wpcf7 form.failed .wpcf7-response-output,
.cm-contact .wpcf7 form.aborted .wpcf7-response-output{border-color:#d63638;background:#fff1f0}
.cm-contact .wpcf7 form.resetting .wpcf7-response-output{display:none}
.cm-cf7-missing{padding:16px;border:1px solid #dba617;background:#fff8e5;border-radius:5px;font-family:Arial,sans-serif}
.cm-contact-details{margin-top:48px;display:grid;grid-template-columns:1fr auto auto;gap:60px;align-items:center;font-family:Arial,sans-serif;font-size:16px}
.cm-contact-details>a{display:flex;align-items:center;gap:16px}
.cm-contact-details img{width:24px;height:24px}

/* FOOTER */
.cm-footer{height:440px;background:#000;color:#fff;padding:68px 24px}
.cm-footer-inner{width:min(1070px,100%);margin:auto}
.cm-footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}
.cm-footer-top h2{font-size:42px;line-height:1.25;letter-spacing:-1.05px;width:478px;margin:0}
.cm-footer-cta{width:298px;height:50px;border-radius:0 18px 0 0;background:linear-gradient(90deg,var(--cm-blue),var(--cm-mid) 50%,var(--cm-cyan));display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:17px}
.cm-footer-cta img{width:37px}
.cm-footer-divider{height:1px;background:rgba(255,255,255,.1);margin:19px 0 56px}
.cm-footer-bottom{display:flex;justify-content:space-between;align-items:center}
.cm-footer-logo{width:126px;height:47px;object-fit:contain}
.cm-socials{display:flex;gap:33px;margin-top:34px}
.cm-socials img{width:30px;height:30px}
.cm-footer-links{width:506px;font-size:15px;font-weight:500}
.cm-footer-links nav{display:flex;justify-content:space-between}
.cm-footer-links p{margin:55px 0 0}

/* MOBILE */
@media (max-width: 767px){
  .cm-container{width:calc(100% - 40px)}
  .cm-header{height:56px}
  .cm-nav-wrap{height:56px;width:100%;padding:0 20px;display:flex;justify-content:space-between;gap:20px}
  .cm-logo img{width:91px;height:34px}
  .cm-desktop-nav,.cm-contact-top{display:none}
  .cm-menu-toggle{width:24px;height:24px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:2px}
  .cm-menu-toggle span{height:2px;width:20px;background:#2a2a2a;border-radius:2px}
  .cm-mobile-nav{position:absolute;left:0;top:56px;width:100%;background:#fff;padding:24px 20px;display:flex;flex-direction:column;gap:18px;font-size:16px;box-shadow:0 18px 25px rgba(0,0,0,.12)}
  .cm-mobile-nav[hidden]{display:none}

  .cm-hero{height:560px}
  .cm-hero::before{background-position:center top}
  .cm-hero-overlay{background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.25) 58%,rgba(0,243,255,.28) 100%)}
  .cm-hero-inner{align-items:flex-end;justify-content:center;padding-bottom:27px}
  .cm-hero-copy{width:100%;text-align:center;display:flex;flex-direction:column;align-items:center}
  .cm-hero-copy h1{font-size:24px;line-height:32px;letter-spacing:0;margin-bottom:24px}
  .cm-hero-copy p{font-size:16px;line-height:28px;width:279px;margin-bottom:22px}

  .cm-about{display:flex;flex-direction:column;padding:46px 0 0;gap:46px}
  .cm-about-copy{padding:0 20px;text-align:center;display:flex;flex-direction:column;align-items:center}
  .cm-about-copy h2{font-size:24px;line-height:1.45;margin:27px 0}
  .cm-about-copy p{font-size:16px;line-height:28px;margin-bottom:32px}
  .cm-about-image{order:initial;width:86.4%;align-self:flex-start;height:328px;border-radius:0 57px 0 0}

  .cm-offer-intro{height:325px}
  .cm-offer-intro-inner{width:100%;padding:0 26px}
  .cm-offer-heading{width:272px}
  .cm-offer-heading h2{font-size:24px;line-height:1.5;margin-top:17px}
  .cm-sygnet{width:239px;right:-63px;opacity:.45}

  .cm-offer-grid{min-height:2283px}
  .cm-offer-items{width:100%;padding:76px 20px;display:flex;flex-direction:column;gap:24px}
  .cm-offer-card{min-height:auto}
  .cm-offer-icon{width:60px;height:60px;margin-bottom:7px}
  .cm-offer-card-copy{padding-left:70px;margin-top:-2px}
  .cm-offer-card h3{font-size:24px;line-height:30px;margin-bottom:23px}
  .cm-offer-card p{font-size:16px;line-height:1.5}
  .cm-offer-shade{background:linear-gradient(262deg,rgba(79,102,255,.7),rgba(0,0,0,.82) 79%)}

  .cm-journey{height:720px;padding:105px 20px;align-items:flex-start}
  .cm-journey h2{font-size:24px;line-height:1.45}
  .cm-journey p{font-size:16px;line-height:28px;margin-bottom:50px}
  .cm-journey strong{font-size:16px;line-height:28px}

  .cm-contact{min-height:982px;padding:38px 25px}
  .cm-contact-title h2{font-size:24px;line-height:50px}
  .cm-contact-title p{font-size:16px;line-height:28px;margin-bottom:20px}
  .cm-form textarea{height:291px}
  .cm-contact-details{grid-template-columns:1fr;gap:18px;margin-top:48px}

  .cm-footer{height:482px;padding:53px 20px}
  .cm-footer-top{display:flex;flex-direction:column}
  .cm-footer-top h2{font-size:24px;line-height:1.5;width:340px;max-width:100%;order:-1}
  .cm-footer-cta{width:252px;height:50px;font-size:14px;margin-top:120px}
  .cm-footer-divider{width:257px;margin:-180px 0 120px}
  .cm-footer-bottom{display:flex;flex-direction:column;align-items:flex-start}
  .cm-footer-logo{width:126px;height:47px;position:absolute;transform:translateY(-244px)}
  .cm-socials{margin-top:-98px}
  .cm-footer-links{width:100%;font-size:15px}
  .cm-footer-links nav{gap:53px;justify-content:flex-start;margin-top:34px}
  .cm-footer-links p{margin-top:54px;width:204px;line-height:1.5}
}

@media (min-width:768px) and (max-width:1100px){
  .cm-nav-wrap{grid-template-columns:160px 1fr 110px}
  .cm-desktop-nav{gap:24px;font-size:17px}
  .cm-about{grid-template-columns:1fr 1fr;padding-right:36px}
  .cm-about-copy h2,.cm-offer-heading h2,.cm-journey h2{font-size:42px}
  .cm-offer-items{grid-template-columns:repeat(2,1fr)}
  .cm-offer-grid{min-height:1500px}
  .cm-contact-details{gap:30px}
}


/* Interactive offer cards + restrained motion */
@media (hover:hover) and (pointer:fine){
  .cm-offer-card:hover{color:#ff3b30;transform:translateY(-4px)}
  .cm-offer-card:hover .cm-offer-icon{transform:scale(1.045)}
  .cm-white-btn,.cm-gradient-btn,.cm-contact-top,.cm-footer-cta{transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}
  .cm-white-btn:hover,.cm-gradient-btn:hover,.cm-contact-top:hover,.cm-footer-cta:hover{transform:translateY(-2px)}
}

.cm-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,1,.36,1);transition-delay:var(--cm-reveal-delay,0ms)}
.cm-reveal.cm-in-view{opacity:1;transform:none}
.cm-about-image.cm-reveal{transform:translateX(-14px)}
.cm-about-image.cm-reveal.cm-in-view{transform:none}
.cm-about-copy.cm-reveal{transform:translateX(14px)}
.cm-about-copy.cm-reveal.cm-in-view{transform:none}

@media (prefers-reduced-motion:reduce){
  .cm-reveal,.cm-about-image.cm-reveal,.cm-about-copy.cm-reveal{opacity:1;transform:none;transition:none}
  .cm-offer-card,.cm-offer-icon,.cm-white-btn,.cm-gradient-btn,.cm-contact-top,.cm-footer-cta{transition:none!important}
}
