/* CanSpeech — public-facing pages · 2026
   Presentation layer only: ViewModels, tag helpers, form names, payment logic and URLs remain unchanged.
   Load after canspeech-brand.css and canspeech-pages.css. Scoped by .cs-public-*.
*/

/* Shared: visual rhythm, meaningful focus and comfortable mobile reading */
.cs-site .cs-public-home,
.cs-site .cs-public-about,
.cs-site .cs-public-contact {
  --cp-ink: #162e65;
  --cp-blue: #1747ab;
  --cp-lilac: #7854d0;
  --cp-sky: #e9f2ff;
  --cp-muted: #526885;
  --cp-stroke: #dbe6f5;
  --cp-shadow: 0 20px 56px rgba(20, 54, 115, .09);
  color: var(--cp-ink);
  overflow-x: clip;
}
.cs-site :is(.cs-public-home,.cs-public-about,.cs-public-contact) h1,
.cs-site :is(.cs-public-home,.cs-public-about,.cs-public-contact) h2,
.cs-site :is(.cs-public-home,.cs-public-about,.cs-public-contact) h3 {letter-spacing: -.025em;}
.cs-site :is(.cs-public-home,.cs-public-about,.cs-public-contact) :is(a,button,summary,input,textarea):focus-visible {
  outline: 3px solid #8a70ea !important;
  outline-offset: 4px;
}
.cs-site :is(.cs-public-home,.cs-public-about) section[id] {scroll-margin-top: 100px;}
.cs-site .cs-header-nav .nav-link {transition: background-color .18s ease, color .18s ease;}
.cs-site .cs-header-nav .nav-link:focus-visible {border-radius: 12px;}

/* Home hero: one strong message and a genuine screenshot of the product */
.cs-site .cs-public-home .cs-home-hero {
  background:
    radial-gradient(ellipse 40% 66% at 8% 100%, rgba(186, 172, 254, .32) 0, transparent 88%),
    radial-gradient(ellipse 52% 78% at 94% 5%, rgba(161, 204, 255, .38) 0, transparent 85%),
    linear-gradient(115deg, #fbfdff 0%, #f3f7ff 46%, #e8eeff 100%);
  padding: clamp(30px, 3.5vw, 54px) 0 clamp(40px, 4.4vw, 62px);
}
.cs-site .cs-public-home .cs-hero-layout {grid-template-columns:minmax(0, 1.04fr) minmax(0, .96fr);gap:clamp(20px, 3.2vw, 50px);align-items:center;}
.cs-site .cs-public-home .cs-eyebrow {
  color:#274c9d;border: 1px solid #cbdafa;
  background: rgba(255,255,255,.86);box-shadow:0 6px 24px rgba(32,61,124,.07);
  border-radius:999px;padding:8px 16px;font-weight:800;font-size:.84rem;
}
.cs-site .cs-public-home .cs-hero-title {font-size:clamp(2.15rem,3.85vw,3.85rem);line-height:1.28;margin:16px 0;letter-spacing:-.025em;max-width:690px;}
.cs-site .cs-public-home .cs-hero-title span {
  color:#1747ab;
  background:linear-gradient(102deg,#1747ab 5%,#6859d6 94%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.cs-site .cs-public-home .cs-hero-lead {font-size:clamp(1rem,1.24vw,1.13rem);line-height:1.82;max-width:620px;}
.cs-site .cs-public-home .cs-hero-actions {margin-top:23px;gap:12px;}
.cs-site .cs-public-home .cs-hero-actions .btn {min-height:55px;border-radius:15px;font-size:1rem;font-weight:850;padding:12px 24px;}
.cs-site .cs-public-home .cs-home-primary-action {box-shadow:0 12px 24px rgba(24,71,171,.2);}
.cs-site .cs-public-home .cs-hero-points {margin-top:23px;gap:10px;}
.cs-site .cs-public-home .cs-hero-points span {background:rgba(255,255,255,.87);border:1px solid #d5e1f2;border-radius:13px;padding:10px 12px;font-size:.85rem;}
.cs-site .cs-public-home .cs-hero-visual-wrap {padding:10px 6px 14px;min-height:0;}
.cs-site .cs-public-home .cs-hero-art {
  width:min(100%,300px);border: 1px solid rgba(210,223,248,.52);
  background:rgba(255,255,255,.74);
  border-radius:25px;padding:5px;
  box-shadow: 0 20px 52px rgba(36,58,121,.15), 0 4px 12px rgba(26,62,114,.04);
  transform:none;
}
.cs-site .cs-public-home .cs-hero-product-image {display:block;width:100%;max-height:530px;height:auto;object-fit:contain;object-position:center;border-radius:20px;}
.cs-site .cs-public-home .cs-hero-visual-note {z-index:2;box-shadow:0 10px 25px #192e621b;border:1px solid #dbe6f8;font-size:.82rem;}

/* The two product pillars read as outcomes, not a noisy catalog */
.cs-site .cs-public-home .cs-home-offerings {padding-top:clamp(60px,7vw,100px);padding-bottom:clamp(48px,6vw,80px);background:#fff;}
.cs-site .cs-public-home .cs-section-heading {max-width:745px;margin-bottom:34px;}
.cs-site .cs-public-home .cs-section-heading h2 {font-size:clamp(1.75rem,3.3vw,2.65rem);line-height:1.43;}
.cs-site .cs-public-home .cs-section-heading p {max-width:630px;margin-inline:auto;color:var(--cp-muted);font-size:1rem;}
.cs-site .cs-public-home .cs-offering-card {border:1px solid var(--cp-stroke);border-radius:25px;padding:clamp(24px,3.4vw,37px);box-shadow:var(--cp-shadow);}
.cs-site .cs-public-home .cs-offering-card-daily {background:linear-gradient(155deg,#fff,#f4f9ff);}
.cs-site .cs-public-home .cs-offering-card-tcf {background:linear-gradient(155deg,#fff,#f8f5ff);}
.cs-site .cs-public-home .cs-offering-icon {box-shadow:0 7px 15px rgba(38,78,150,.07);}
.cs-site .cs-public-home .cs-offering-card h3 {line-height:1.5;}
.cs-site .cs-public-home .cs-home-extra {margin-top:23px;}
.cs-site .cs-public-home .cs-home-bridge {
  display:flex;align-items:center;justify-content:center;gap:13px;max-width:740px;
  margin:28px auto 0;padding:16px 20px;
  border:1px solid #dbe7f6;border-radius:19px;background:#f5f9ff;
}
.cs-site .cs-public-home .cs-home-bridge-icon {font-size:1.4rem;color:#8059d7;}
.cs-site .cs-public-home .cs-home-bridge p {margin:0;line-height:1.75;font-size:.91rem;color:#4a6286;}
.cs-site .cs-public-home .cs-home-bridge strong {color:#193b82;font-weight:850;}

/* Journey: three clearly-scannable stages */
.cs-site .cs-public-home .cs-public-journey {background:linear-gradient(180deg,#eff5ff,#f9fbff);padding:clamp(62px,7vw,96px) 0;}
.cs-site .cs-public-home .cs-public-journey-steps {list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.cs-site .cs-public-home .cs-public-journey-steps li {
  position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;
  padding:29px 27px 28px;border:1px solid #dce7f8;border-radius:23px;
  background:#fff;box-shadow:0 12px 33px rgba(23,60,122,.065);
}
.cs-site .cs-public-home .cs-public-step-number {position:absolute;inset-inline-start:23px;top:21px;font-weight:900;font-size:1.75rem;color:#d8e3f7;direction:ltr;}
.cs-site .cs-public-home .cs-public-step-icon {display:grid;place-items:center;width:63px;height:63px;border-radius:20px;background:#eaf2ff;color:#1c51b1;margin:3px 0 22px;}
.cs-site .cs-public-home .cs-public-journey-steps li:nth-child(2) .cs-public-step-icon {background:#f1edff;color:#7355bd;}
.cs-site .cs-public-home .cs-public-journey-steps li:nth-child(3) .cs-public-step-icon {background:#e6f8f1;color:#0c886a;}
.cs-site .cs-public-home .cs-public-step-icon svg {width:31px;height:31px;}
.cs-site .cs-public-home .cs-public-journey-steps h3 {font-size:1.18rem;margin:0 0 10px;line-height:1.5;}
.cs-site .cs-public-home .cs-public-journey-steps p {font-size:.93rem;line-height:1.9;margin:0;color:var(--cp-muted);}

/* Pricing: transparent hierarchy without false urgency or unsupported social proof */
.cs-site .cs-public-home .cs-home-pricing {padding:clamp(66px,7vw,104px) 0; background:#fff;}
.cs-site .cs-public-home .cs-home-plan-grid {gap:22px;}
.cs-site .cs-public-home .cs-home-plan {border-radius:26px;border:1px solid #d9e5f7;box-shadow:0 21px 50px rgba(27,66,138,.07);padding:clamp(24px,3vw,39px);}
.cs-site .cs-public-home .cs-home-plan-vip {border:2px solid #a99be7;background:linear-gradient(162deg,#fff,#fbfaff);box-shadow:0 24px 58px rgba(85,64,174,.1);}
.cs-site .cs-public-home .cs-home-plan-standard {background:linear-gradient(165deg,#fff,#fcfdff);}
.cs-site .cs-public-home .cs-home-plan h3 {font-size:1.43rem;}
.cs-site .cs-public-home .cs-home-price-row {padding:14px 0 12px;}
.cs-site .cs-public-home .cs-home-feature-list {margin-bottom:27px;}
.cs-site .cs-public-home .cs-home-feature {line-height:1.75;}
.cs-site .cs-public-home .cs-home-vip-ribbon {box-shadow:0 9px 25px #7561c12c;}
.cs-site .cs-public-home .cs-home-pick {border-radius:14px;}
.cs-site .cs-public-home .cs-home-pricing-legal {max-width:910px;}

/* FAQ & final CTA */
.cs-site .cs-public-home .cs-public-faq {padding:clamp(60px,7vw,98px) 0;background:#f3f7ff;}
.cs-site .cs-public-home .cs-public-faq-layout {display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:clamp(27px,6vw,92px);align-items:start;}
.cs-site .cs-public-home .cs-public-faq-intro {padding-top:12px;}
.cs-site .cs-public-home .cs-public-faq-intro h2 {font-size:clamp(1.7rem,3vw,2.55rem);margin:14px 0;}
.cs-site .cs-public-home .cs-public-faq-intro p {max-width:390px;color:var(--cp-muted);font-size:1rem;}
.cs-site .cs-public-home .cs-public-text-link {display:inline-flex;gap:8px;align-items:center;color:#1851b5;font-weight:900;margin-top:14px;text-decoration:none;}
.cs-site .cs-public-home .cs-public-text-link:hover {text-decoration:underline;}
.cs-site .cs-public-home .cs-public-faq-list {display:grid;gap:12px;}
.cs-site .cs-public-home .cs-public-faq-list details {background:#fff;border:1px solid #dbe6f7;border-radius:16px;box-shadow:0 7px 18px #1f41770b;padding:0 20px;}
.cs-site .cs-public-home .cs-public-faq-list details[open] {border-color:#b9ccec;box-shadow:0 10px 27px #274f9710;}
.cs-site .cs-public-home .cs-public-faq-list summary {position:relative;list-style:none;cursor:pointer;font-size:.98rem;font-weight:850;color:#1e3c76;padding:20px 0 20px 36px;line-height:1.65;}
.cs-site .cs-public-home .cs-public-faq-list summary::-webkit-details-marker {display:none;}
.cs-site .cs-public-home .cs-public-faq-list summary::after {content:'+';position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#edf3fe;color:#2c58a1;font-weight:800;font-size:1.18rem;}
.cs-site .cs-public-home .cs-public-faq-list details[open] summary::after {content:'−';background:#e7e0ff;color:#634cba;}
.cs-site .cs-public-home .cs-public-faq-list p {border-top:1px solid #edf1fa;margin:0;padding:13px 0 18px;color:#526781;font-size:.92rem;line-height:1.92;}
.cs-site .cs-public-home .cs-public-closing {background:#f3f7ff;padding:0 0 clamp(55px,7vw,96px);}
.cs-site .cs-public-home .cs-public-closing-inner {position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(27px,4vw,45px);border-radius:28px;color:#fff;background:linear-gradient(117deg,#0d2c70,#2051ae 64%,#6147a3);box-shadow:0 20px 44px #0b347b25;}
.cs-site .cs-public-home .cs-public-closing-inner::after {content:"";pointer-events:none;position:absolute;inset-inline-end:-80px;top:-95px;width:310px;height:310px;border-radius:50%;border:42px solid #ffffff13;}
.cs-site .cs-public-home .cs-public-closing-inner> * {position:relative;z-index:1;}
.cs-site .cs-public-home .cs-public-closing-label {font-size:.83rem;color:#d5dcff;font-weight:800;}
.cs-site .cs-public-home .cs-public-closing h2 {color:#fff;font-size:clamp(1.45rem,2.5vw,2.15rem);margin:10px 0;}
.cs-site .cs-public-home .cs-public-closing p {color:#e2eafe;margin:0;font-size:.94rem;}
.cs-site .cs-public-home .cs-public-closing-button {flex-shrink:0;min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:13px;padding:12px 24px;background:#fff;color:#163d8b;font-weight:900;text-decoration:none;}
.cs-site .cs-public-home .cs-public-closing-button:hover {background:#eef2ff;color:#092a70;}

/* About: editorial first impression and clearer information architecture */
.cs-site .cs-public-about .cs-public-about-hero {text-align:right;isolation:isolate;padding:clamp(58px,7vw,102px) 0;background:linear-gradient(115deg,#f7fbff,#edf4ff 63%,#e9e5ff);}
.cs-site .cs-public-about .cs-public-about-grid {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,6vw,82px);align-items:center;}
.cs-site .cs-public-about .cs-public-about-copy {z-index:1;position:relative;}
.cs-site .cs-public-about .cs-public-about-copy h1 {font-size:clamp(2.1rem,4vw,3.5rem);max-width:660px;margin:18px 0;line-height:1.43;}
.cs-site .cs-public-about .cs-public-about-copy h1 span {color:#2555b3;}
.cs-site .cs-public-about .cs-public-about-copy p {color:var(--cp-muted);max-width:630px;font-size:1.05rem;line-height:2;}
.cs-site .cs-public-about .cs-public-about-actions {display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.cs-site .cs-public-about .cs-public-about-actions .btn {border-radius:13px;padding:11px 23px;font-weight:850;min-height:49px;}
.cs-site .cs-public-about .cs-public-about-visual {
  position:relative;min-height:342px;padding:55px 25px 49px;display:grid;
  grid-template-columns:1fr 1fr;gap:14px;
  background:linear-gradient(138deg,#fff,#f8faff);border:1px solid #d6e4f6;
  border-radius:31px;box-shadow:0 26px 60px #1f4b9421;
}
.cs-site .cs-public-about .cs-public-about-stat {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;background:#f0f5ff;border:1px solid #dfebf9;border-radius:19px;min-height:109px;text-align:center;}
.cs-site .cs-public-about .cs-public-about-stat strong {font-size:2.1rem;line-height:1.1;color:#1549ad;font-weight:900;}
.cs-site .cs-public-about .cs-public-about-stat span {font-size:.87rem;color:#4a6390;font-weight:800;}
.cs-site .cs-public-about .cs-public-about-stat-main {grid-column:1/-1;background:linear-gradient(118deg,#0b3b9c,#6d53ca);}
.cs-site .cs-public-about .cs-public-about-stat-main strong {color:#fff;font-size:3.15rem;}
.cs-site .cs-public-about .cs-public-about-stat-main span {color:#eef3ff;}
.cs-site .cs-public-about .cs-public-about-visual-note {position:absolute;bottom:17px;left:0;right:0;text-align:center;color:#687b98;font-size:.78rem;font-weight:750;}
.cs-site .cs-public-about .cs-public-about-sections {max-width:1200px;padding-top:65px;padding-bottom:75px;}
.cs-site .cs-public-about .cs-public-mission {background:#fff;border:1px solid #dce7f8;border-right:5px solid #1747ab;padding:clamp(25px,4vw,44px);border-radius:21px;box-shadow:0 12px 30px #1039780d;margin-bottom:72px;}
.cs-site .cs-public-about .cs-public-mission h2 {font-size:clamp(1.65rem,2.6vw,2.15rem);margin:9px 0 17px;}
.cs-site .cs-public-about .cs-public-mission p {line-height:2;color:#4d6284;max-width:980px;}
.cs-site .cs-public-about .cs-public-mission p:last-child {margin-bottom:0;}
.cs-site .cs-public-about .cs-about-method {margin-bottom:75px;scroll-margin-top:100px;}
.cs-site .cs-public-about .cs-public-about-method-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;}
.cs-site .cs-public-about .cs-public-method-card {position:relative;min-width:0;background:#fff;border:1px solid #dce6f6;padding:25px 21px;min-height:235px;border-radius:21px;box-shadow:0 11px 29px #1039780d;}
.cs-site .cs-public-about .cs-public-method-card .cs-step {margin:0 0 20px;}
.cs-site .cs-public-about .cs-public-method-card h3 {font-size:1.1rem;margin:0 0 9px;}
.cs-site .cs-public-about .cs-public-method-card p {font-size:.88rem;color:var(--cp-muted);line-height:1.85;margin:0;}
.cs-site .cs-public-about .cs-public-about-tcf {padding:clamp(26px,4vw,43px);border:1px solid #d9e6f9;border-radius:26px;background:linear-gradient(120deg,#eaf3ff,#f3edff);margin-bottom:75px;}
.cs-site .cs-public-about .cs-public-about-tcf-head {margin-bottom:26px;}
.cs-site .cs-public-about .cs-public-about-tcf-head h2 {font-size:clamp(1.65rem,2.6vw,2.13rem);margin:12px 0;}
.cs-site .cs-public-about .cs-public-about-tcf-head p {color:var(--cp-muted);}
.cs-site .cs-public-about .cs-public-about-tcf-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.cs-site .cs-public-about .cs-public-about-tcf-grid article {background:rgba(255,255,255,.95);padding:24px;border:1px solid #e0e8f5;border-radius:17px;}
.cs-site .cs-public-about .cs-public-about-tcf-grid article>span {font-size:1.45rem;color:#805ed0;}
.cs-site .cs-public-about .cs-public-about-tcf-grid h3 {font-size:1.0rem;margin:12px 0;text-align:left;overflow-wrap:anywhere;color:#1b489b;}
.cs-site .cs-public-about .cs-public-about-tcf-grid p {font-size:.89rem;color:var(--cp-muted);margin:0;line-height:1.9;}
.cs-site .cs-public-about .cs-public-values {margin-bottom:75px;}
.cs-site .cs-public-about .cs-public-value-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;}
.cs-site .cs-public-about .cs-public-value-grid article {padding:24px 25px 22px;border-radius:19px;background:#fff;border:1px solid #dce6f7;box-shadow:0 12px 26px #183d7810;}
.cs-site .cs-public-about .cs-public-value-grid h3 {position:relative;padding-right:15px;font-size:1.14rem;}
.cs-site .cs-public-about .cs-public-value-grid h3::before {content:'';position:absolute;right:0;top:8px;height:20px;width:4px;border-radius:5px;background:#7457d1;}
.cs-site .cs-public-about .cs-public-value-grid p {color:var(--cp-muted);font-size:.92rem;margin:0;}
.cs-site .cs-public-about .cs-about-cta {background:linear-gradient(125deg,#e8f2ff,#e9e6ff);border:1px solid #d8e3f9;border-radius:26px;padding:clamp(29px,4.5vw,50px) 20px;margin:0;}
.cs-site .cs-public-about .cs-about-cta h2 {margin:10px 0 12px;}
.cs-site .cs-public-about .cs-about-cta .btn {min-height:49px;min-width:168px;padding:11px 19px;border-radius:13px;}

/* Contact: focused form with trustworthy supporting information */
.cs-site .cs-public-contact {background:linear-gradient(180deg,#eff5ff,#f7faff);padding-bottom:clamp(64px,8vw,100px);}
.cs-site .cs-public-contact .container {max-width:1160px;background:none;border:0;border-radius:0;box-shadow:none;padding:0 18px;}
.cs-site .cs-public-contact .cs-public-contact-header {padding:clamp(48px,6vw,78px) 0 50px;background:linear-gradient(115deg,#edf6ff,#ede8ff);text-align:center;}
.cs-site .cs-public-contact .cs-public-contact-header h1 {font-size:clamp(2.05rem,4vw,3.25rem);color:#143e92!important;margin:13px 0;}
.cs-site .cs-public-contact .cs-public-contact-header p {margin:0 auto;max-width:660px;color:#506786;font-size:1.03rem;line-height:2;}
.cs-site .cs-public-contact .cs-public-contact-layout {display:grid;grid-template-columns:minmax(0,.79fr) minmax(0,1.21fr);gap:24px;align-items:start;margin-top:-20px;position:relative;z-index:1;}
.cs-site .cs-public-contact :is(.cs-public-contact-info,.cs-public-contact-form-panel) {padding:clamp(25px,3.6vw,40px);border:1px solid #dce6f8;border-radius:25px;box-shadow:0 18px 48px rgba(19,53,117,.085);}
.cs-site .cs-public-contact .cs-public-contact-info {background:linear-gradient(155deg,#153d91,#2a4fa8 65%,#6553b7);color:#fff;}
.cs-site .cs-public-contact .cs-public-contact-info-icon {display:grid;place-items:center;width:58px;height:58px;background:#ffffff29;border:1px solid #ffffff37;border-radius:18px;margin-bottom:25px;}
.cs-site .cs-public-contact .cs-public-contact-info-icon svg {width:30px;height:30px;}
.cs-site .cs-public-contact .cs-public-contact-info h2 {font-size:1.42rem;color:#fff!important;margin:0 0 16px;}
.cs-site .cs-public-contact .cs-public-contact-info p {color:#e5edff;line-height:1.92;font-size:.95rem;}
.cs-site .cs-public-contact .cs-public-contact-tip {display:grid;gap:5px;margin:22px 0;padding-top:18px;border-top:1px solid #ffffff29;}
.cs-site .cs-public-contact .cs-public-contact-tip strong {font-size:.89rem;color:#fff;}
.cs-site .cs-public-contact .cs-public-contact-tip span {color:#e1eaff;font-size:.85rem;line-height:1.85;}
.cs-site .cs-public-contact .cs-public-contact-email {display:block;margin-top:24px;background:#ffffff1b;border:1px solid #ffffff36;border-radius:12px;color:#fff;letter-spacing:.015em;text-align:center;text-decoration:none;padding:13px 9px;font-size:.96rem;font-weight:800;overflow-wrap:anywhere;}
.cs-site .cs-public-contact .cs-public-contact-email:hover {background:#ffffff32;color:#fff;}
.cs-site .cs-public-contact .cs-public-contact-form-panel {background:#fff;}
.cs-site .cs-public-contact .cs-public-form-overline {display:block;color:#745ad0;font-weight:850;font-size:.86rem;margin-bottom:8px;}
.cs-site .cs-public-contact .cs-public-contact-form-panel h2 {font-size:clamp(1.55rem,2.5vw,2.05rem);margin:0 0 7px;}
.cs-site .cs-public-contact .cs-public-form-lead {color:var(--cp-muted);font-size:.9rem;max-width:540px;margin-bottom:26px;}
.cs-site .cs-public-contact .cs-public-contact-alert {border-radius:12px;}
.cs-site .cs-public-contact .cs-public-contact-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 15px;}
.cs-site .cs-public-contact .cs-public-field {min-width:0;}
.cs-site .cs-public-contact .cs-public-field-full {grid-column:1/-1;}
.cs-site .cs-public-contact .cs-public-field .form-label {display:block;color:#2e4978;font-weight:850;font-size:.87rem;margin-bottom:8px;}
.cs-site .cs-public-contact .cs-public-field :is(input,textarea) {width:100%;background:#f7faff;border:1px solid #d8e3f2;border-radius:13px;padding:13px 14px;color:#163765;box-shadow:none;min-height:51px;transition:border-color .15s ease,background-color .15s ease;}
.cs-site .cs-public-contact .cs-public-field :is(input,textarea):hover {border-color:#bccde9;}
.cs-site .cs-public-contact .cs-public-field :is(input,textarea):focus {background:#fff;border-color:#6586db;box-shadow:0 0 0 3px #a3bcf63f;}
.cs-site .cs-public-contact .cs-public-field textarea {min-height:148px;resize:vertical;}
.cs-site .cs-public-contact .cs-public-field input[dir=ltr] {text-align:left;}
.cs-site .cs-public-contact .cs-public-field .text-danger {display:block;font-size:.82rem;margin-top:5px;}
.cs-site .cs-public-contact .cs-public-field-meta {display:flex;justify-content:space-between;align-items:flex-start;gap:12px;color:#71819b;font-size:.8rem;}
.cs-site .cs-public-contact .cs-public-contact-submit {display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#1646a5;border:0;color:#fff;border-radius:14px;padding:12px 26px;min-height:53px;font-weight:900;margin-top:24px;box-shadow:0 11px 22px #18418d22;}
.cs-site .cs-public-contact .cs-public-contact-submit:hover {background:#103580;color:#fff;}
.cs-site .cs-public-contact .cs-public-contact-login {text-align:center;background:#f5f8ff;border:1px dashed #c5d4ed;padding:29px 22px;border-radius:18px;}
.cs-site .cs-public-contact .cs-public-contact-lock {display:block;font-size:1.55rem;color:#7557c9;margin-bottom:12px;}
.cs-site .cs-public-contact .cs-public-contact-login h3 {font-size:1.18rem;margin-bottom:10px;}
.cs-site .cs-public-contact .cs-public-contact-login p {font-size:.91rem;color:var(--cp-muted);}
.cs-site .cs-public-contact .cs-public-contact-login .btn {border-radius:13px;padding:10px 20px;margin-top:10px;}

/* Reduce distraction in the public navigation only */
.cs-site .cs-header-nav .navbar-toggler {min-width:44px;min-height:44px;}
.cs-site .cs-header-shell {z-index:1030;}

@media (max-width: 991.98px) {
  .cs-site .cs-public-home .cs-hero-layout {grid-template-columns:minmax(0,1fr);}
  .cs-site .cs-public-home .cs-hero-copy {text-align:center;}
  .cs-site .cs-public-home .cs-hero-title,.cs-site .cs-public-home .cs-hero-lead {margin-inline:auto;}
  .cs-site .cs-public-home .cs-hero-actions,.cs-site .cs-public-home .cs-hero-points {justify-content:center;}
  .cs-site .cs-public-home .cs-hero-visual-wrap {min-height:0;padding:16px 20px 4px;}
  .cs-site .cs-public-home .cs-hero-art {width:min(100%,300px);}
  .cs-site .cs-public-about .cs-public-about-grid {grid-template-columns:minmax(0,1fr);}
  .cs-site .cs-public-about .cs-public-about-copy {text-align:center;}
  .cs-site .cs-public-about .cs-public-about-copy p {margin-inline:auto;}
  .cs-site .cs-public-about .cs-public-about-actions {justify-content:center;}
  .cs-site .cs-public-about .cs-public-about-visual {width:min(100%,480px);margin-inline:auto;}
  .cs-site .cs-public-about .cs-public-about-method-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .cs-site .cs-public-contact .cs-public-contact-layout {grid-template-columns:minmax(0,1fr);max-width:720px;}
  .cs-site .cs-public-contact .cs-public-contact-info {order:2;}
  .cs-site .cs-public-contact .cs-public-contact-form-panel {order:1;}
  .cs-site .cs-header-nav .navbar-collapse {max-height:calc(100dvh - 86px);overflow-y:auto;padding:12px 0;}
  .cs-site .cs-header-nav .navbar-nav {align-items:stretch;}
  .cs-site .cs-header-nav .nav-link {text-align:right;}
}
@media (max-width: 767.98px) {
  .cs-site .cs-public-home .cs-public-journey-steps {grid-template-columns:minmax(0,1fr);gap:13px;}
  .cs-site .cs-public-home .cs-public-journey-steps li {padding:21px 22px;}
  .cs-site .cs-public-home .cs-public-step-icon {margin-bottom:14px;width:53px;height:53px;border-radius:16px;}
  .cs-site .cs-public-home .cs-public-faq-layout {grid-template-columns:minmax(0,1fr);gap:19px;}
  .cs-site .cs-public-home .cs-public-faq-intro {text-align:center;}
  .cs-site .cs-public-home .cs-public-faq-intro p {margin-inline:auto;}
  .cs-site .cs-public-home .cs-public-closing-inner {flex-direction:column;text-align:center;align-items:stretch;}
  .cs-site .cs-public-about .cs-public-about-tcf-grid,.cs-site .cs-public-about .cs-public-value-grid {grid-template-columns:minmax(0,1fr);}
  .cs-site .cs-public-about .cs-public-about-method-grid {grid-template-columns:minmax(0,1fr);}
  .cs-site .cs-public-about .cs-public-method-card {min-height:0;}
  .cs-site .cs-public-about .cs-public-about-sections {padding-top:40px;}
  .cs-site .cs-public-about .cs-public-mission {margin-bottom:49px;}
  .cs-site .cs-public-about .cs-about-method,.cs-site .cs-public-about .cs-public-about-tcf,.cs-site .cs-public-about .cs-public-values {margin-bottom:50px;}
  .cs-site .cs-public-contact .cs-public-contact-fields {grid-template-columns:minmax(0,1fr);}
  .cs-site .cs-public-contact .cs-public-field-full {grid-column:auto;}
  .cs-site .cs-public-contact .cs-public-contact-submit {width:100%;}
}
@media(max-width: 480px) {
  .cs-site .cs-public-home .cs-home-hero {padding-top:45px;}
  .cs-site .cs-public-home .cs-hero-title {font-size:clamp(2rem,8.6vw,2.52rem);}
  .cs-site .cs-public-home .cs-hero-visual-wrap {padding:10px 10px 0;}
  .cs-site .cs-public-home .cs-hero-art {width:min(100%,278px);transform:none;}
  .cs-site .cs-public-home .cs-hero-product-image {max-height:none;}
  .cs-site .cs-public-home .cs-hero-visual-note {display:none;}
  .cs-site .cs-public-home .cs-home-bridge {flex-direction:column;text-align:center;gap:5px;}
  .cs-site .cs-public-home .cs-public-faq-list details {padding-inline:15px;}
  .cs-site .cs-public-about .cs-public-about-visual {min-height:0;padding:26px 15px 45px;gap:10px;border-radius:22px;}
  .cs-site .cs-public-about .cs-public-about-stat {min-height:92px;}
  .cs-site .cs-public-contact .cs-public-contact-layout {margin-top:-10px;}
  .cs-site .cs-public-contact :is(.cs-public-contact-info,.cs-public-contact-form-panel) {padding:24px 19px;border-radius:20px;}
}
@media (prefers-reduced-motion: reduce) {
  .cs-site .cs-public-home *, .cs-site .cs-public-about *, .cs-site .cs-public-contact * {scroll-behavior:auto!important;animation:none!important;transition:none!important;}
  .cs-site .cs-public-home .cs-hero-art {transform:none;}
}


/* Narrow desktop / browser zoom: tighter navbar, with preserved 44px targets. */
@media (min-width: 992px) and (max-width: 1399.98px) {
  .cs-site .cs-header-nav .navbar-nav .nav-link {padding-inline:9px!important;margin-inline:0!important;font-size:.96rem;}
  .cs-site .cs-header-nav .logout-btn {margin-inline:4px;padding:9px 12px;}
}
