
.ri-cp,
.ri-cp-widget {
  --ri-cp-accent:#1f66b3;
  --ri-cp-heading:#24336d;
  --ri-cp-body:#62739b;
  --ri-cp-surface:#ffffff;
  --ri-cp-border:rgba(36,51,109,.08);
  --ri-cp-shadow:0 18px 50px rgba(28,40,86,.10);
  display:flex;
  flex-direction:column;
  gap:36px;
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  color:var(--ri-cp-heading);
  overflow:hidden;
}
.ri-cp--minimal { --ri-cp-shadow:none; background:#ffffff; }
.ri-cp--modern { background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%); }
.ri-cp--premium { background:radial-gradient(circle at 12% 12%, rgba(31,102,179,.08), transparent 26%), radial-gradient(circle at 88% 14%, rgba(36,51,109,.08), transparent 24%), linear-gradient(180deg,#ffffff 0%,#f8fafc 100%); }
.ri-cp--glass { background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(247,250,252,.88) 100%); backdrop-filter:blur(12px); }
.ri-cp__hero, .ri-cp__form-section { display:grid; grid-template-columns:minmax(280px,1.1fr) minmax(280px,.9fr); gap:28px; align-items:center; }
.ri-cp__eyebrow { display:inline-flex; align-items:center; gap:8px; padding:7px 14px; width:fit-content; background:rgba(31,102,179,.08); color:var(--ri-cp-accent); border:1px solid rgba(31,102,179,.12); font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.ri-cp__hero-title { margin:12px 0 0; color:var(--ri-cp-heading); font-size:clamp(2rem,4vw,4.2rem); line-height:1.02; letter-spacing:-.04em; font-weight:800; }
.ri-cp__hero-text, .ri-cp__form-text, .ri-cp__path-text, .ri-cp__info-text, .ri-cp__trust-intro, .ri-cp__cta-text, .ri-cp__note, .ri-cp__hero-floating-text { color:var(--ri-cp-body); line-height:1.7; }
.ri-cp__hero-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; justify-content:flex-start; }
.ri-cp__button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:14px 22px; text-decoration:none; font-weight:700; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease; }
.ri-cp__button:hover { transform:translateY(-2px); }
.ri-cp__button--primary { color:#fff; background:var(--ri-cp-accent); box-shadow:0 14px 34px rgba(31,102,179,.22); }
.ri-cp__button--secondary, .ri-cp__button--ghost { color:var(--ri-cp-heading); background:rgba(255,255,255,.88); border:1px solid var(--ri-cp-border); }
.ri-cp__hero-media-card, .ri-cp__form-media-card, .ri-cp__path, .ri-cp__form-card, .ri-cp__info-card, .ri-cp__trust-card, .ri-cp__cta { background:var(--ri-cp-surface); border:1px solid var(--ri-cp-border); box-shadow:var(--ri-cp-shadow); position:relative; }
.ri-cp__hero-media-card, .ri-cp__form-media-card { overflow:hidden; }
.ri-cp__hero-media-card img, .ri-cp__form-media-card img { display:block; width:100%; height:auto; }
.ri-cp__hero-floating-card { position:absolute; left:18px; bottom:18px; max-width:300px; padding:16px 18px; background:rgba(255,255,255,.92); border:1px solid rgba(255,255,255,.65); box-shadow:0 16px 30px rgba(29,42,88,.12); backdrop-filter:blur(8px); }
.ri-cp__hero-floating-title, .ri-cp__form-title, .ri-cp__path-title, .ri-cp__info-title, .ri-cp__section-title, .ri-cp__cta-title { color:var(--ri-cp-heading); font-weight:800; letter-spacing:-.02em; }
.ri-cp__hero-floating-title { font-size:1rem; }
.ri-cp__paths, .ri-cp__info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.ri-cp__path, .ri-cp__info-card { padding:22px; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ri-cp__path:hover, .ri-cp__info-card:hover { transform:translateY(-4px); border-color:rgba(31,102,179,.16); }
.ri-cp__path-icon, .ri-cp__info-icon, .ri-cp__trust-icon { display:inline-flex; align-items:center; justify-content:center; color:var(--ri-cp-accent); font-size:22px; line-height:1; }
.ri-cp__path-icon svg, .ri-cp__info-icon svg, .ri-cp__trust-icon svg { width:1em; height:1em; display:block; }
.ri-cp__path-title { margin-top:14px; font-size:1.2rem; }
.ri-cp__path-text { margin-top:10px; margin-bottom:16px; }
.ri-cp__form-card { padding:28px; }
.ri-cp__form-title { font-size:1.5rem; }
.ri-cp__form-text { margin-top:10px; }
.ri-cp__form-shortcode { margin-top:20px; }
.ri-cp__form-shortcode form, .ri-cp__form-shortcode .wpcf7, .ri-cp__form-shortcode .wpforms-container { width:100%; }
.ri-cp__form-shortcode input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .ri-cp__form-shortcode select, .ri-cp__form-shortcode textarea { width:100%; min-height:48px; padding:12px 14px; border:1px solid var(--ri-cp-border); background:#fff; color:var(--ri-cp-heading); box-shadow:none; }
.ri-cp__form-shortcode textarea { min-height:140px; resize:vertical; }
.ri-cp__form-shortcode input[type="submit"], .ri-cp__form-shortcode button, .ri-cp__form-shortcode .wpforms-submit, .ri-cp__form-shortcode .wpcf7-submit { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:14px 22px; background:var(--ri-cp-accent); color:#fff; border:0; font-weight:700; cursor:pointer; box-shadow:0 14px 34px rgba(31,102,179,.22); }
.ri-cp__form-placeholder { padding:18px; border:1px dashed rgba(31,102,179,.28); background:rgba(31,102,179,.04); color:var(--ri-cp-body); }
.ri-cp__note { margin-top:14px; font-size:.95rem; }
.ri-cp__info-link { display:block; text-decoration:none; color:inherit; }
.ri-cp__info-title { margin-top:12px; font-size:1.05rem; }
.ri-cp__info-text { margin-top:8px; white-space:pre-line; }
.ri-cp__map-embed iframe { display:block; width:100%; min-height:380px; border:0; box-shadow:var(--ri-cp-shadow); }
.ri-cp__trust-card { padding:28px; }
.ri-cp__section-title { font-size:1.55rem; }
.ri-cp__trust-intro { margin-top:10px; }
.ri-cp__trust-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 18px; margin-top:22px; }
.ri-cp__trust-item { display:flex; align-items:flex-start; gap:12px; }
.ri-cp__trust-text { color:var(--ri-cp-heading); line-height:1.55; font-weight:600; }
.ri-cp__cta { padding:30px; text-align:center; }
.ri-cp__cta-title { font-size:clamp(1.7rem,3vw,2.6rem); }
.ri-cp__cta-text { margin-top:10px; max-width:720px; margin-left:auto; margin-right:auto; }
.ri-cp__cta .ri-cp__button { margin-top:18px; }
.ri-cp[data-reveal].ri-cp--reveal-ready:not(.is-inview), .ri-cp-widget[data-reveal].ri-cp--reveal-ready:not(.is-inview) { opacity:0; transform:translate3d(0,34px,0); transition:opacity var(--ri-reveal-duration,700ms) ease, transform var(--ri-reveal-duration,700ms) ease; }
.ri-cp[data-reveal="fade-left"].ri-cp--reveal-ready:not(.is-inview), .ri-cp-widget[data-reveal="fade-left"].ri-cp--reveal-ready:not(.is-inview) { transform:translate3d(-34px,0,0); }
.ri-cp[data-reveal="fade-right"].ri-cp--reveal-ready:not(.is-inview), .ri-cp-widget[data-reveal="fade-right"].ri-cp--reveal-ready:not(.is-inview) { transform:translate3d(34px,0,0); }
.ri-cp[data-reveal="zoom-in"].ri-cp--reveal-ready:not(.is-inview), .ri-cp-widget[data-reveal="zoom-in"].ri-cp--reveal-ready:not(.is-inview) { transform:scale(.97); }
.ri-cp[data-reveal="none"], .ri-cp.is-inview, .ri-cp-widget[data-reveal="none"], .ri-cp-widget.is-inview { opacity:1; transform:none; }
.elementor-editor-active .ri-cp, .elementor-editor-preview .ri-cp, .ri-cp-widget { opacity:1 !important; transform:none !important; }
.ri-cp[data-float="yes"] .ri-cp__hero-media-card, .ri-cp-widget[data-float="yes"] .ri-cp__hero-media-card { animation:riCpFloat var(--ri-float-duration,7s) ease-in-out infinite; }
@keyframes riCpFloat { 0%{transform:translate3d(0,0,0);} 50%{transform:translate3d(0,calc(var(--ri-float-amplitude,8px)*-1),0);} 100%{transform:translate3d(0,0,0);} }
@media (prefers-reduced-motion: reduce) { .ri-cp, .ri-cp__hero-media-card, .ri-cp__path, .ri-cp__info-card, .ri-cp__button { animation:none !important; transition:none !important; transform:none !important; } }
@media (max-width:1024px) { .ri-cp__hero, .ri-cp__form-section, .ri-cp__paths, .ri-cp__info-grid, .ri-cp__trust-items { grid-template-columns:1fr; } }
@media (max-width:767px) { .ri-cp, .ri-cp-widget { gap:24px; padding:16px; } .ri-cp__hero-title { font-size:clamp(1.9rem,10vw,3rem); } .ri-cp__hero-buttons { flex-direction:column; align-items:stretch; } .ri-cp__button { width:100%; } .ri-cp__hero-floating-card { position:static; max-width:none; margin:12px; } .ri-cp__form-card, .ri-cp__trust-card, .ri-cp__cta, .ri-cp__path, .ri-cp__info-card { padding:20px; } }
.ri-cp-widget{padding:20px;}
.ri-cp-widget--map .ri-cp__section-title{margin-bottom:16px;}
.ri-cp-widget--cta .ri-cp__cta{margin:0;}
.ri-cp-widget--map{padding-bottom:0;}
.ri-cp__info-card-inner{display:flex;flex-direction:column;gap:0;}
.ri-cp__info-content{min-width:0;}
.ri-cp__info-grid--list{grid-template-columns:1fr;}
.ri-cp__info-grid--list .ri-cp__info-card{padding:0;}
.ri-cp__info-grid--list .ri-cp__info-link,.ri-cp__info-grid--list .ri-cp__info-card-inner{display:flex;align-items:flex-start;gap:16px;padding:22px;}
.ri-cp__info-grid--list .ri-cp__info-icon{flex:0 0 22px;margin-top:2px;}
.ri-cp__info-grid--list .ri-cp__info-title{margin-top:0;}
.ri-cp__form-single{width:100%;max-width:860px;margin:0 auto;}
.ri-cp-widget--form-shortcode .ri-cp__form-card{width:100%;}

.ri-cp__info-grid--inline{display:flex;flex-wrap:wrap;align-items:flex-start;grid-template-columns:none;}
.ri-cp__info-grid--inline .ri-cp__info-card{padding:0;flex:0 1 auto;}
.ri-cp__info-grid--inline .ri-cp__info-link,.ri-cp__info-grid--inline .ri-cp__info-card-inner{display:flex;align-items:center;gap:14px;padding:18px 22px;}
.ri-cp__info-grid--inline .ri-cp__info-card-inner{flex-direction:row;}
.ri-cp__info-grid--inline .ri-cp__info-icon{flex:0 0 auto;margin-top:0;}
.ri-cp__info-grid--inline .ri-cp__info-content{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ri-cp__info-grid--inline .ri-cp__info-title{margin-top:0;white-space:nowrap;}
.ri-cp__info-grid--inline .ri-cp__info-text{margin-top:0;}
@media (max-width:767px){.ri-cp__info-grid--inline{flex-direction:column;}.ri-cp__info-grid--inline .ri-cp__info-card{width:100%;}.ri-cp__info-grid--inline .ri-cp__info-link,.ri-cp__info-grid--inline .ri-cp__info-card-inner{align-items:flex-start;}}


/* Contact Info Cards: content layout */
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-link,
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-card-inner{
  display:flex;
  align-items:center;
  gap:16px;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-card-inner{
  flex-direction:row;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-icon{
  flex:0 0 auto;
  margin-top:0;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-content{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  min-width:0;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-title,
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-text{
  margin-top:0;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-title{
  white-space:nowrap;
}
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-grid--list .ri-cp__info-content,
.ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-grid--inline .ri-cp__info-content{
  align-items:center;
}

.ri-cp-widget--info.ri-cp-widget--content-vertical .ri-cp__info-link,
.ri-cp-widget--info.ri-cp-widget--content-vertical .ri-cp__info-card-inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.ri-cp-widget--info.ri-cp-widget--content-vertical .ri-cp__info-content{
  display:block;
}

@media (max-width:767px){
  .ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-link,
  .ri-cp-widget--info.ri-cp-widget--content-inline .ri-cp__info-card-inner{
    align-items:flex-start;
  }
}
