/* Static info pages (benefits, smart learning, contact, who we are, fees, entry, accreditation)
   Built on the course-detail primitives in lsib-courses-page.css. */

.i-hero .wrap{grid-template-columns:1fr 360px}
.i-hero.i-hero--solo .wrap{grid-template-columns:1fr}
.i-aside .from b{font-size:30px;line-height:1.1;word-break:break-word}
.i-aside li strong{text-align:right}
.i-aside li strong a{color:var(--ink)}
.i-aside li strong a:hover{color:var(--blue)}

/* Section body variants */
.dsec .body .tiny{font-size:13px;color:var(--muted)}
.dsec .body .acts{display:flex;gap:12px;flex-wrap:wrap}
.dsec .body.body--wide{max-width:none}
.dsec .body > h3{font-size:22px;margin-top:6px}
.dsec .body ul.plain{margin:0;padding-left:1.2em;display:grid;gap:8px;color:var(--text)}
.dsec .body ul.plain li{font-size:16px}

/* Feature cards (benefits / why smart learning) */
.icards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.icard{position:relative;background:#fff;border:1px solid var(--line);padding:22px 22px 20px;display:grid;gap:8px;align-content:start;transition:box-shadow .25s,transform .25s}
.icard::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--blue);transition:background .25s}
.icard:hover{box-shadow:0 24px 48px -28px rgba(11,37,69,.35);transform:translateY(-2px)}
.icard:hover::before{background:var(--crimson)}
.icard .kick{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--crimson)}
.icard h3{font-size:22px;line-height:1.15}
.icard p{font-size:15px;color:var(--muted)}

/* Numbered steps (how it works) */
.isteps{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.istep{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.istep .num{width:44px;height:44px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font:500 13px var(--mono)}
.istep h3{font-size:20px;margin-bottom:4px}
.istep p{font-size:15px;color:var(--muted)}

/* Payment: bank details table + card buttons */
.banktable th{width:38%;font:600 14px var(--sans);text-transform:none;letter-spacing:0;color:var(--ink);background:var(--blue-softer)}
.banktable td{text-align:left!important;font-variant-numeric:tabular-nums;word-break:break-word}
.icard .btn{justify-self:start;margin-top:6px}
.icard p strong{color:var(--ink)}

/* Awarding-body partner cards */
.partners{display:grid;grid-template-columns:1fr;gap:16px}
.partner{display:grid;grid-template-columns:260px 1fr;background:#fff;border:1px solid var(--line);transition:box-shadow .25s,transform .25s}
.partner:hover{box-shadow:0 24px 48px -28px rgba(11,37,69,.35);transform:translateY(-2px)}
.partner-logo{display:grid;place-items:center;padding:28px 22px;background:var(--ink);border-right:1px solid var(--line)}
.partner-logo.light{background:#fff}
.partner-logo img{display:block;max-width:170px;max-height:70px;width:auto;height:auto;object-fit:contain}
.partner-body{padding:24px 28px;display:grid;gap:8px;align-content:center}
.partner-body p{max-width:70ch}
.partner-body .kick{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--crimson)}
.partner-body h3{font-size:22px;line-height:1.15}
.partner-body p{font-size:15px;color:var(--muted)}
.partner-body .link-arrow{margin-top:4px}
@media (max-width:560px){.partner{grid-template-columns:1fr}.partner-logo{border-right:0;border-bottom:1px solid var(--line);padding:22px}}

/* Testimonials spotlight */
.ispot{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}
.ispot > div{display:grid;gap:18px}
.iquote{margin:0;padding:0 0 0 20px;border-left:3px solid var(--crimson)}
.iquote p{font:400 clamp(20px,2vw,26px)/1.35 var(--serif);color:var(--ink)}
.ifig{margin:0;position:relative}
.ifig img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.ifig figcaption{position:absolute;left:14px;bottom:14px;background:var(--ink);color:#fff;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px}
.acts .btn i.fa{font-size:18px}
body.lsib-site-chrome main .dsec .body .lsib-content-page .video-t{margin:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page .video-t li{border-radius:0}
@media (max-width:860px){.ispot{grid-template-columns:1fr}}

/* Contact link list */
.ilinks{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ilinks li{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.ilinks li:last-child{border-bottom:0}
.ilinks a,.ilinks .lbl{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--ink)}
.ilinks a:hover{color:var(--blue)}
.ilinks i.fa{width:18px;text-align:center;color:var(--blue);font-size:16px}
.ilinks .mono{font:500 14px var(--mono);color:var(--text)}
.ilinks .at{color:var(--muted);padding:0 2px}
.ilinks button.mini{margin-left:auto;background:#fff;border:1px solid var(--blue);color:var(--blue);font:600 13px var(--sans);padding:6px 12px;cursor:pointer}
.ilinks button.mini:hover{background:var(--blue);color:#fff}

/* Office cards */
.ioffices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ioffice{background:#fff;border:1px solid var(--line);border-left:3px solid var(--blue);padding:20px;display:grid;gap:6px}
.ioffice small{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--crimson)}
.ioffice b{font:500 20px var(--serif);color:var(--ink)}
.ioffice p{font-size:14px;color:var(--muted)}

/* Contact form (reuses .frow / .fgrid from the course brochure modal) */
.iform{display:grid;gap:12px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--crimson);padding:26px;box-shadow:0 30px 60px -34px rgba(11,37,69,.25)}
.iform .frow textarea{min-height:140px;border:1px solid #C9D6E3;padding:10px 12px;font:inherit;font-size:15px;color:var(--text);outline:none;width:100%;resize:vertical}
.iform .frow textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,108,184,.15)}
.iform .frow .field-validation-error{color:var(--crimson);font-size:13px;font-weight:600}
.iform .frow input.input-validation-error,.iform .frow textarea.input-validation-error{border-color:var(--crimson)}
.iform .btn{justify-self:start}
.iform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ialert{background:#FFF7F8;border:1px solid var(--crimson);color:var(--crimson);padding:12px 14px;font-size:14px;font-weight:600}
.ialert:empty,.ialert.validation-summary-valid{display:none}

/* Legacy content pages (who we are, fees, entry, accreditation) inside a .dsec */
body.lsib-site-chrome main .dsec .body .lsib-content-page{max-width:none;margin:0;padding:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page .about__content{padding:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page p,
body.lsib-site-chrome main .dsec .body .lsib-content-page li{font-size:16px;line-height:1.65;color:var(--text)}
body.lsib-site-chrome main .dsec .body .lsib-content-page h2{font-size:clamp(24px,2.4vw,30px);margin:1.5rem 0 .6rem}
body.lsib-site-chrome main .dsec .body .lsib-content-page h2:first-child{margin-top:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page h3{font-size:22px}
body.lsib-site-chrome main .dsec .body .lsib-content-page .display-2{font-size:clamp(20px,2vw,24px);font-weight:400;color:var(--ink);margin:0 0 1.5rem}
body.lsib-site-chrome main .dsec .body .lsib-content-page .lsib__pro .col{border-radius:0;box-shadow:none;border-top:3px solid var(--blue)}
body.lsib-site-chrome main .dsec .body .lsib-content-page .lsib__pro img{border-radius:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page .ct-b img{max-height:64px}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor{max-width:none;margin:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor details{border-radius:0;box-shadow:none;margin-bottom:0;border-top:0}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor details:first-of-type{border-top:1px solid var(--line)}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor details[open]{border-color:var(--line)}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor summary{background:#fff;font-size:16px}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor summary::after{border-radius:0;border-color:var(--line);background:#fff;color:var(--crimson)}
body.lsib-site-chrome main .dsec .body .lsib-content-page .accor details[open] > summary::after{background:var(--crimson);border-color:var(--crimson);color:#fff}
body.lsib-site-chrome main .dsec .body .lsib-content-page a.button,
body.lsib-site-chrome main .dsec .body .lsib-content-page a.button--cta{border-radius:2px;height:50px;padding:0 24px;display:inline-flex;align-items:center}
body.lsib-site-chrome main .dsec .body .lsib-content-page img:not(.lsib__pro img){border-radius:0}

@media (max-width:1100px){
  .i-hero .wrap{grid-template-columns:1fr}
}
@media (max-width:860px){
  .icards,.ioffices{grid-template-columns:1fr}
  .ilinks button.mini{margin-left:0}
}
