/* CTS NPORS Courses */
.ctsnc{--ctsnc-brand:#1C1B4D;--ctsnc-brand-2:#2C2B6E;--ctsnc-soft:#ECEBF6;--ctsnc-hivis:#F2B705;--ctsnc-hsoft:#FFF4CC;--ctsnc-bg:#F3F3F8;--ctsnc-s:#fff;--ctsnc-s2:#F7F7FB;--ctsnc-line:#DFDFEA;--ctsnc-line2:#C8C8DA;--ctsnc-t:#171731;--ctsnc-t2:#575773;--ctsnc-t3:#85859C;--ctsnc-ok:#1F7A3A;--ctsnc-oksoft:#E3F3E7;--ctsnc-err:#A32D2D;
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ctsnc-t);line-height:1.55;font-size:16px;background:var(--ctsnc-bg);
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-bottom:60px;-webkit-font-smoothing:antialiased}
.ctsnc *,.ctsnc *::before,.ctsnc *::after{box-sizing:border-box}
.ctsnc a{color:var(--ctsnc-brand)}
.ctsnc button,.ctsnc input,.ctsnc select,.ctsnc textarea{font-family:inherit;color:inherit;letter-spacing:normal;text-transform:none}
.ctsnc :focus-visible{outline:3px solid var(--ctsnc-hivis);outline-offset:2px;border-radius:4px}
.ctsnc-i{width:18px;height:18px;flex:none}
.ctsnc-sr{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ctsnc-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
body:has(.ctsnc){overflow-x:hidden}

/* Hide the theme's page title on course pages */
body.ctsnc-hide-title .entry-title,body.ctsnc-hide-title .page-title,body.ctsnc-hide-title .page-header,
body.ctsnc-hide-title .wp-block-post-title,body.ctsnc-hide-title .elementor-page-title{display:none!important}

/* Hero */
.ctsnc-hero{background:var(--ctsnc-brand);color:#fff;padding:48px 0 96px;position:relative}
.ctsnc-hero-course{padding:32px 0 48px}
.ctsnc-hazard{position:absolute;left:0;right:0;bottom:0;height:6px;background:repeating-linear-gradient(-45deg,var(--ctsnc-hivis) 0 14px,var(--ctsnc-brand) 14px 28px)}
.ctsnc-eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ctsnc-hivis);margin-bottom:12px}
.ctsnc .ctsnc-h1{font-family:inherit;font-size:clamp(34px,5.6vw,62px);line-height:1;font-weight:800;font-stretch:76%;margin:0 0 14px;max-width:18ch;color:#fff;letter-spacing:-.01em;text-transform:none}
.ctsnc .ctsnc-h1-course{font-size:clamp(30px,4.6vw,50px);max-width:24ch;margin-top:8px}
.ctsnc-lead{margin:0 0 24px;color:rgba(255,255,255,.82);max-width:62ch;font-size:17px}
.ctsnc-hero-course .ctsnc-lead{margin:0}
.ctsnc-search{position:relative;max-width:720px}
.ctsnc-search input{width:100%;height:58px;border-radius:10px;border:2px solid transparent;background:#fff;color:#171731;padding:0 16px 0 50px;font-size:17px;box-shadow:none;margin:0}
.ctsnc-search input:focus{outline:none;border-color:var(--ctsnc-hivis)}
.ctsnc-search .ctsnc-i{position:absolute;left:17px;top:18px;width:22px;height:22px;color:#66667E}
.ctsnc-hero-actions{margin-top:16px}
.ctsnc-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:10px 18px;font-weight:700;font-size:15px;cursor:pointer}
.ctsnc-btn-hivis{background:var(--ctsnc-hivis);color:var(--ctsnc-brand)}
.ctsnc-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px;font-size:14px;color:rgba(255,255,255,.86)}
.ctsnc-trust span{display:inline-flex;gap:7px;align-items:center}.ctsnc-trust .ctsnc-i{color:var(--ctsnc-hivis);width:17px;height:17px}
.ctsnc-crumb{display:flex;gap:8px;align-items:center;font-size:14px;color:rgba(255,255,255,.75);margin-bottom:16px;flex-wrap:wrap}
.ctsnc-crumb a{color:#fff!important;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.ctsnc-crumb .ctsnc-i{width:16px;height:16px}

/* Filters and cards */
.ctsnc-bar{margin-top:-52px;position:relative;z-index:2;background:var(--ctsnc-s);border:1px solid var(--ctsnc-line);border-radius:16px;padding:16px;margin-bottom:22px}
.ctsnc-cats{display:flex;flex-wrap:wrap;gap:8px}
.ctsnc-cat{flex:none;border:1px solid var(--ctsnc-line2);background:var(--ctsnc-s);color:var(--ctsnc-t);border-radius:999px;padding:8px 14px;font-size:14px;cursor:pointer;white-space:nowrap;line-height:1.3}
.ctsnc-cat[aria-pressed="true"]{background:var(--ctsnc-brand);border-color:var(--ctsnc-brand);color:#fff}
.ctsnc-cat b{font-weight:600;color:var(--ctsnc-t3);margin-left:5px}.ctsnc-cat[aria-pressed="true"] b{color:rgba(255,255,255,.7)}
.ctsnc-subbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap;font-size:14px;color:var(--ctsnc-t2)}
.ctsnc-tog{display:inline-flex;gap:8px;align-items:center;cursor:pointer;margin:0}
.ctsnc-tog input{width:18px;height:18px;accent-color:var(--ctsnc-brand);margin:0}
.ctsnc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.ctsnc-card{background:var(--ctsnc-s);border:1px solid var(--ctsnc-line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px;text-decoration:none!important;color:var(--ctsnc-t)!important;transition:border-color .15s,transform .15s}
.ctsnc-card:hover{border-color:var(--ctsnc-line2);transform:translateY(-2px)}
.ctsnc-card[hidden]{display:none}
.ctsnc-code{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.04em;background:var(--ctsnc-soft);color:var(--ctsnc-brand);padding:3px 8px;border-radius:6px;align-self:flex-start}
.ctsnc-code-dark{background:rgba(255,255,255,.14);color:#fff}
.ctsnc-card-t{font-size:19px;line-height:1.2;font-weight:700;font-stretch:85%}
.ctsnc-card-c{font-size:13px;color:var(--ctsnc-t2)}
.ctsnc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:6px}
.ctsnc-chip{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--ctsnc-s2);border:1px solid var(--ctsnc-line);color:var(--ctsnc-t2)}
.ctsnc-chip-y{background:var(--ctsnc-oksoft);border-color:transparent;color:var(--ctsnc-ok)}
.ctsnc-empty{background:var(--ctsnc-s);border:1px dashed var(--ctsnc-line2);border-radius:14px;padding:26px;text-align:center;color:var(--ctsnc-t2)}
.ctsnc-linkbtn{background:none;border:0;padding:0;color:var(--ctsnc-brand);text-decoration:underline;cursor:pointer;font-size:inherit}

/* Course page */
.ctsnc-layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start;margin-top:28px}
.ctsnc-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--ctsnc-line);border:1px solid var(--ctsnc-line);border-radius:12px;overflow:hidden;margin-bottom:18px}
.ctsnc-fact{background:var(--ctsnc-s);padding:14px 16px}
.ctsnc-fact-l{font-size:12px;color:var(--ctsnc-t2);font-weight:600}.ctsnc-fact-v{font-size:16px;font-weight:600;margin-top:2px}
.ctsnc-block{background:var(--ctsnc-s);border:1px solid var(--ctsnc-line);border-radius:16px;padding:22px 24px;margin-bottom:16px}
.ctsnc .ctsnc-h2{font-family:inherit;margin:0 0 12px;font-size:20px;line-height:1.25;font-weight:700;font-stretch:88%;color:var(--ctsnc-t);text-transform:none;letter-spacing:normal}
.ctsnc-table{width:100%;border-collapse:collapse;font-size:15px;margin:0;border:0}
.ctsnc-table th{text-align:left;font-size:12px;color:var(--ctsnc-t2);font-weight:600;padding:0 10px 8px 0;border:0;border-bottom:1px solid var(--ctsnc-line);background:none}
.ctsnc-table td{padding:12px 10px 12px 0;border:0;border-bottom:1px solid var(--ctsnc-line);vertical-align:top;background:none}
.ctsnc-table tr:last-child td{border-bottom:0}
.ctsnc-table small{display:block;color:var(--ctsnc-t2);font-size:13px}
.ctsnc-note{background:var(--ctsnc-hsoft);border-radius:10px;padding:13px 15px;font-size:15px;margin-top:14px}
.ctsnc-ticks{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ctsnc-ticks li{display:flex;gap:10px;margin:0}.ctsnc-ticks .ctsnc-i{width:19px;height:19px;color:var(--ctsnc-ok);margin-top:3px}
.ctsnc-faq details{border-top:1px solid var(--ctsnc-line);padding:13px 0}.ctsnc-faq details:first-of-type{border-top:0;padding-top:0}
.ctsnc-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
.ctsnc-faq summary::-webkit-details-marker{display:none}
.ctsnc-faq summary::after{content:"+";font-size:20px;line-height:1;color:var(--ctsnc-t3)}
.ctsnc-faq details[open] summary::after{content:"\2013"}
.ctsnc-faq p{margin:8px 0 0;color:var(--ctsnc-t2)}

/* Booking form */
.ctsnc-book{background:var(--ctsnc-s);border:1px solid var(--ctsnc-line);border-radius:16px;padding:22px;position:sticky;top:100px}
.ctsnc .ctsnc-book-t{font-size:22px;font-weight:800;font-stretch:82%;margin-bottom:4px}
.ctsnc-sub{margin:0 0 14px;color:var(--ctsnc-t2);font-size:14px}
.ctsnc-alert{background:#FDECEC;color:var(--ctsnc-err);border-radius:8px;padding:10px 12px;font-size:14px;margin-bottom:10px}
.ctsnc-fl{display:block;font-size:14px;font-weight:600;margin:14px 0 6px}
.ctsnc-opts{display:grid;gap:8px}
.ctsnc-radio{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--ctsnc-line2);border-radius:10px;padding:11px 12px;cursor:pointer;background:var(--ctsnc-s);margin:0;font-weight:400}
.ctsnc-radio input{margin:4px 0 0;accent-color:var(--ctsnc-brand);width:17px;height:17px;flex:none}
.ctsnc-radio b{display:block;font-size:15px}.ctsnc-radio span span{font-size:13px;color:var(--ctsnc-t2)}
.ctsnc-radio:has(input:checked){border:2px solid var(--ctsnc-brand);padding:10px 11px;background:var(--ctsnc-soft)}
.ctsnc-seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ctsnc-seg .ctsnc-radio{align-items:center}.ctsnc-seg .ctsnc-radio input{margin-top:0}
.ctsnc-in{width:100%;height:46px;border:1px solid var(--ctsnc-line2)!important;border-radius:9px!important;background:var(--ctsnc-s)!important;padding:0 12px!important;font-size:16px!important;margin:0!important;box-shadow:none!important;color:var(--ctsnc-t)!important}
textarea.ctsnc-in{height:auto;padding:10px 12px!important;resize:vertical}
.ctsnc-in:focus{outline:none;border-color:var(--ctsnc-brand)!important;box-shadow:0 0 0 3px rgba(242,183,5,.45)!important}
.ctsnc-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ctsnc-qty{display:flex;align-items:center;border:1px solid var(--ctsnc-line2);border-radius:9px;overflow:hidden;width:max-content}
.ctsnc-qty button{width:44px;height:44px;border:0;background:var(--ctsnc-s2);color:var(--ctsnc-t);font-size:20px;cursor:pointer;padding:0;border-radius:0}
.ctsnc-qty input{width:58px;height:44px;border:0;text-align:center;font-size:16px;background:var(--ctsnc-s);margin:0;padding:0;box-shadow:none;-moz-appearance:textfield}
.ctsnc-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.ctsnc-hint{font-size:13px;color:var(--ctsnc-t2);margin:6px 0 0}
.ctsnc-err{color:var(--ctsnc-err);font-size:13px;margin-top:5px;display:none}
.ctsnc-bad .ctsnc-err{display:block}.ctsnc-bad .ctsnc-in{border-color:var(--ctsnc-err)!important}
.ctsnc-chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ctsnc-t2);margin:14px 0 0;font-weight:400}
.ctsnc-chk input{margin:3px 0 0;accent-color:var(--ctsnc-brand);width:17px;height:17px;flex:none}
.ctsnc-go{width:100%;height:54px;border:0;border-radius:10px;background:var(--ctsnc-brand);color:#fff;font-weight:700;font-size:16px;cursor:pointer;margin-top:16px;padding:0}
.ctsnc-go:hover{background:var(--ctsnc-brand-2)}
.ctsnc-go[disabled]{opacity:.7;cursor:wait}
.ctsnc-next{font-size:13px;color:var(--ctsnc-t2);margin:12px 0 0;text-align:center}
.ctsnc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ctsnc-done{text-align:center;padding:10px 0}
.ctsnc-done-ic{width:56px;height:56px;border-radius:50%;background:var(--ctsnc-oksoft);color:var(--ctsnc-ok);display:grid;place-items:center;margin:0 auto 12px}
.ctsnc-done-ic .ctsnc-i{width:28px;height:28px}
.ctsnc-done p{color:var(--ctsnc-t2);margin:6px 0 0}
.ctsnc-mbar{display:none}

@media (max-width:960px){
  .ctsnc-layout{grid-template-columns:1fr}
  .ctsnc-book{position:static}
}
@media (max-width:640px){
  .ctsnc-wrap{padding:0 16px}
  .ctsnc-hero{padding:30px 0 82px}.ctsnc-hero-course{padding:24px 0 36px}
  .ctsnc-lead{font-size:15px}
  .ctsnc-search input{height:54px;font-size:16px}
  .ctsnc-bar{padding:12px;margin-top:-50px}
  .ctsnc-cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-12px;padding-right:12px}
  .ctsnc-cats::-webkit-scrollbar{display:none}
  .ctsnc-grid{grid-template-columns:1fr}
  .ctsnc-facts{grid-template-columns:1fr 1fr}
  .ctsnc-block,.ctsnc-book{padding:18px 16px}
  .ctsnc-two,.ctsnc-seg{grid-template-columns:1fr}
  .ctsnc-table thead{display:none}
  .ctsnc-table,.ctsnc-table tbody,.ctsnc-table tr,.ctsnc-table td{display:block;width:100%}
  .ctsnc-table tr{padding:10px 0;border-bottom:1px solid var(--ctsnc-line)}
  .ctsnc-table td{border:0;padding:2px 0}
  .ctsnc-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:var(--ctsnc-s);border-top:1px solid var(--ctsnc-line);z-index:50}
  .ctsnc-mbar button{flex:1;height:50px;border:0;border-radius:10px;background:var(--ctsnc-brand);color:#fff;font-weight:700;font-size:16px;font-family:inherit}
  .ctsnc{padding-bottom:90px}
}
@media (prefers-reduced-motion:reduce){.ctsnc *{transition:none!important}}

/* ---------- v1.0.2: hero with course finder card ---------- */
.ctsnc-hero-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.ctsnc-hero-copy{flex:1 1 560px;min-width:0}
.ctsnc-hero-side{flex:1 1 380px;min-width:0;max-width:460px}
.ctsnc .ctsnc-ask{display:flex!important;align-items:center;gap:12px;width:100%;text-align:left;background:#FFF4CC!important;color:var(--ctsnc-t)!important;border:1px solid #F2D27A!important;border-radius:12px!important;padding:12px 14px!important;margin:0 0 6px!important;cursor:pointer;font-size:14px!important;font-weight:400!important;line-height:1.35!important}
.ctsnc .ctsnc-ask:hover{background:#FFEDB0!important}
.ctsnc-ask .ctsnc-i{width:22px;height:22px;color:var(--ctsnc-brand)}
.ctsnc-ask b{display:block;font-size:15px;color:var(--ctsnc-brand)}

/* ---------- Keep the theme's button and form styles out ---------- */
.ctsnc button,.ctsnc input,.ctsnc textarea{text-transform:none!important;letter-spacing:normal!important;text-shadow:none!important;font-family:inherit!important;min-height:0;width:auto}
.ctsnc button{box-shadow:none!important;line-height:1.3!important}
.ctsnc button svg{display:block}
.ctsnc .ctsnc-search input{padding:0 16px 0 50px!important;height:58px!important;border:2px solid transparent!important;border-radius:10px!important;background:#fff!important;color:#171731!important;font-size:17px!important;box-shadow:none!important;width:100%!important;margin:0!important}
.ctsnc .ctsnc-search input:focus{border-color:var(--ctsnc-hivis)!important}
.ctsnc .ctsnc-search .ctsnc-i{z-index:1;pointer-events:none}
.ctsnc button.ctsnc-cat{display:inline-flex!important;align-items:center;background:var(--ctsnc-s)!important;color:var(--ctsnc-t)!important;border:1px solid var(--ctsnc-line2)!important;border-radius:999px!important;padding:8px 14px!important;font-size:14px!important;font-weight:500!important}
.ctsnc button.ctsnc-cat:hover{background:var(--ctsnc-s2)!important;color:var(--ctsnc-t)!important}
.ctsnc button.ctsnc-cat[aria-pressed="true"],.ctsnc button.ctsnc-cat[aria-pressed="true"]:hover{background:var(--ctsnc-brand)!important;border-color:var(--ctsnc-brand)!important;color:#fff!important}
.ctsnc button.ctsnc-linkbtn{background:none!important;border:0!important;padding:0!important;color:var(--ctsnc-brand)!important;font-size:inherit!important;text-decoration:underline!important}
.ctsnc .ctsnc-qty button{display:flex!important;align-items:center;justify-content:center;width:44px!important;height:44px!important;padding:0!important;border:0!important;border-radius:0!important;background:var(--ctsnc-s2)!important;color:var(--ctsnc-t)!important;font-size:20px!important;font-weight:400!important}
.ctsnc .ctsnc-qty input{width:58px!important;height:44px!important;border:0!important;padding:0!important;text-align:center;background:#fff!important;font-size:16px!important}
.ctsnc button.ctsnc-go{display:block!important;width:100%!important;height:54px!important;padding:0!important;border:0!important;border-radius:10px!important;background:var(--ctsnc-brand)!important;color:#fff!important;font-size:16px!important;font-weight:700!important}
.ctsnc button.ctsnc-go:hover,.ctsnc button.ctsnc-go:focus{background:var(--ctsnc-brand-2)!important;color:#fff!important}
.ctsnc .ctsnc-mbar button{background:var(--ctsnc-brand)!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:0!important;font-size:16px!important;font-weight:700!important}
.ctsnc .ctsnc-radio,.ctsnc .ctsnc-chk,.ctsnc .ctsnc-tog{text-transform:none!important;letter-spacing:normal!important}
.ctsnc input[type="radio"],.ctsnc input[type="checkbox"]{width:17px!important;height:17px!important;padding:0!important;margin:4px 0 0!important;box-shadow:none!important}

/* ---------- v1.0.3: own page layout ---------- */
body.ctsnc-own{margin:0;background:#F3F3F8}
.ctsnc-main{display:block;margin:0;padding:0}
body.ctsnc-own .ctsnc{width:auto;margin:0}
.ctsnc h1,.ctsnc h2,.ctsnc h3{text-transform:none!important;letter-spacing:normal}
.ctsnc-card,.ctsnc-card:visited{color:var(--ctsnc-t)!important}
.ctsnc-crumb a,.ctsnc-crumb a:visited{color:#fff!important}

/* ---------- v1.1: booking form layout (theme-proof) and prices ---------- */
.ctsnc-book{min-width:0}
.ctsnc .ctsnc-form{display:block;width:100%}
.ctsnc .ctsnc-fl,.ctsnc label.ctsnc-fl{display:block!important;font-size:14px!important;font-weight:700!important;line-height:1.3!important;color:var(--ctsnc-t)!important;margin:16px 0 6px!important;padding:0!important;text-transform:none!important;letter-spacing:normal!important;font-family:inherit!important}
.ctsnc .ctsnc-two{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;width:100%}
.ctsnc .ctsnc-two > .ctsnc-field{min-width:0}
.ctsnc .ctsnc-field{margin:0;padding:0;min-width:0}
.ctsnc .ctsnc-in,.ctsnc input.ctsnc-in,.ctsnc textarea.ctsnc-in{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;font-family:inherit!important;line-height:1.3!important;letter-spacing:normal!important;text-transform:none!important}
.ctsnc input.ctsnc-in{height:46px!important}
.ctsnc textarea.ctsnc-in{height:auto!important;min-height:92px}
.ctsnc .ctsnc-in::placeholder{color:#85859C!important;opacity:1}
.ctsnc .ctsnc-hint,.ctsnc .ctsnc-err{font-size:13px!important;line-height:1.4!important}
.ctsnc .ctsnc-seg{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.ctsnc .ctsnc-radio{font-size:15px!important;min-width:0}
.ctsnc .ctsnc-radio-t{flex:1;min-width:0}
.ctsnc .ctsnc-radio-p{flex:none;font-weight:800;color:var(--ctsnc-brand);font-size:15px;padding-left:8px;align-self:center}
.ctsnc .ctsnc-chk span{font-size:14px!important;line-height:1.45!important}
.ctsnc-card-p{font-size:14px;color:var(--ctsnc-t2)}
.ctsnc-card-p b{color:var(--ctsnc-brand);font-size:17px;font-weight:800}
.ctsnc .ctsnc-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.ctsnc-fact-price .ctsnc-fact-v{color:var(--ctsnc-brand)}
.ctsnc-fact-price small{display:block;font-size:12px;font-weight:500;color:var(--ctsnc-t2)}
.ctsnc-td-price b{display:block;color:var(--ctsnc-brand);white-space:nowrap}
.ctsnc-td-price small{display:block;font-size:12px;color:var(--ctsnc-t2)}
@media (max-width:640px){
  .ctsnc .ctsnc-two,.ctsnc .ctsnc-seg{grid-template-columns:1fr!important}
  .ctsnc .ctsnc-facts{grid-template-columns:1fr 1fr}
}
.ctsnc label.ctsnc-radio{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:15px!important;font-weight:400!important;line-height:1.35!important;margin:0!important;width:auto!important;text-transform:none!important;letter-spacing:normal!important}
.ctsnc .ctsnc-seg label.ctsnc-radio{align-items:center!important}
.ctsnc label.ctsnc-chk{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:14px!important;font-weight:400!important;margin:14px 0 0!important;text-transform:none!important}
.ctsnc label.ctsnc-tog{display:inline-flex!important;align-items:center!important;gap:8px!important;font-size:14px!important;font-weight:400!important;margin:0!important}

/* ---------- v1.1.1: no sideways scrolling ---------- */
html{overflow-x:hidden}
body{overflow-x:clip}
/* Content stays centred at 1180px on desktop, and never wider than the screen. */
.ctsnc .ctsnc-wrap{max-width:min(1180px,100%);width:100%;margin-left:auto;margin-right:auto}
@media (max-width:640px){.ctsnc-cats{margin-right:0;padding-right:0}}

/* ---------- v1.2: units list and scheme chip ---------- */
.ctsnc-units{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}
.ctsnc-units li{display:flex;gap:12px;align-items:baseline;background:var(--ctsnc-s2);border:1px solid var(--ctsnc-line);border-radius:10px;padding:10px 12px;margin:0;font-size:15px}
.ctsnc-units b{flex:none;min-width:30px;color:var(--ctsnc-brand);font-weight:800}
.ctsnc-assess{margin:14px 0 0;color:var(--ctsnc-t2);font-size:15px}
.ctsnc-chip-s{background:#FFF4CC;border-color:transparent;color:#6B4E00}
.ctsnc .ctsnc-seg.ctsnc-seg3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media (max-width:640px){.ctsnc .ctsnc-seg.ctsnc-seg3{grid-template-columns:1fr!important}}

/* v1.5.2: the place name sits small under CTS so it fits the box */
.ctsnc .ctsnc-radio-sub{display:block;font-size:12.5px!important;line-height:1.2;font-weight:700!important;color:inherit!important;white-space:nowrap}

/* ---------- v1.5.4: nothing runs off the right-hand side on phones ---------- */
.ctsnc{-webkit-text-size-adjust:100%;text-size-adjust:100%;max-width:100vw;overflow-x:hidden;overflow-x:clip}
body.ctsnc-own .ctsnc{max-width:100%}
.ctsnc .ctsnc-wrap,.ctsnc .ctsnc-layout > *,.ctsnc .ctsnc-grid > *,.ctsnc .ctsnc-block,.ctsnc .ctsnc-bar{min-width:0;max-width:100%}
.ctsnc .ctsnc-grid{grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr))}
.ctsnc .ctsnc-units{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.ctsnc .ctsnc-units li{min-width:0}
.ctsnc .ctsnc-units li span,.ctsnc .ctsnc-units li > :last-child{min-width:0;overflow-wrap:anywhere}
.ctsnc .ctsnc-facts{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}
.ctsnc .ctsnc-card-t,.ctsnc .ctsnc-h1,.ctsnc .ctsnc-h2,.ctsnc .ctsnc-fact-v,.ctsnc .ctsnc-table td,.ctsnc .ctsnc-radio-t,.ctsnc .ctsnc-ticks li,.ctsnc .ctsnc-faq summary{overflow-wrap:anywhere}
.ctsnc img,.ctsnc svg,.ctsnc video,.ctsnc iframe{max-width:100%}
@media (max-width:640px){
  .ctsnc .ctsnc-facts{grid-template-columns:1fr 1fr}
  .ctsnc .ctsnc-crumb{min-width:0}
}
@media (max-width:360px){
  .ctsnc .ctsnc-wrap{padding:0 12px}
  .ctsnc .ctsnc-facts{grid-template-columns:1fr}
  .ctsnc .ctsnc-block,.ctsnc .ctsnc-book{padding:16px 14px}
  .ctsnc .ctsnc-radio-sub{white-space:normal}
}
/* v1.5.8 CSCS card panel */
.ctsnc-cscs-row{display:flex;gap:16px;align-items:flex-start}
.ctsnc-cscs-row p{margin:4px 0 0;line-height:1.55}
.ctsnc-cscs-t{font-size:17px}
.ctsnc-cscs-card{flex:none;width:64px;height:42px;border-radius:7px;display:flex;align-items:flex-end;justify-content:flex-end;padding:4px 6px;box-sizing:border-box;background:#E2E2EE;color:#575773;font-size:11px;letter-spacing:.06em;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.ctsnc-cscs-green .ctsnc-cscs-card{background:#1E7B34;color:#fff}
.ctsnc-cscs-blue .ctsnc-cscs-card{background:#1557B0;color:#fff}
.ctsnc-cscs-partner .ctsnc-cscs-card{background:#1C1B4D;color:#F2B705}
.ctsnc-cscs-test .ctsnc-cscs-card{background:#fff;color:#1C1B4D;box-shadow:inset 0 0 0 2px #1C1B4D}
.ctsnc-cscs-link a{font-weight:700}
@media (max-width:520px){.ctsnc-cscs-card{width:52px;height:34px}}
.ctsnc-cards{display:grid;gap:8px}.ctsnc-cards .ctsnc-radio{align-items:flex-start}
.ctsnc-code-alt{background:rgba(242,183,5,.22);color:#FFE38A}
