@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');:root{--navy:#102B43;--gold:#D4AF37;--cream:#F5F7FA;--ink:#213447;--muted:#596775}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:DM Sans,Arial,sans-serif;color:var(--ink);line-height:1.65}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.22;color:var(--navy);margin-top:0}h1{font-size:clamp(2.3rem,5vw,4.6rem);letter-spacing:-.04em}h2{font-size:clamp(1.8rem,3.4vw,2.65rem);letter-spacing:-.03em}h3{font-size:1.26rem}a{color:inherit}.container{max-width:1190px;margin:auto;padding:0 25px}.top{background:#071c30;color:#dce7ee;font-size:.83rem;padding:7px 0}.top .container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.top a{color:inherit;text-decoration:none}.site-header{background:var(--navy);position:sticky;top:0;z-index:10;box-shadow:0 5px 20px #0002}.nav{display:flex;justify-content:space-between;align-items:center;min-height:84px;gap:22px}.brand{display:flex;align-items:center;color:white;text-decoration:none;gap:11px;white-space:nowrap}.brand img{width:52px;height:52px;object-fit:contain}.brand strong{font-family:Manrope,sans-serif;font-size:1.4rem;letter-spacing:.11em}.brand small{display:block;font-size:.55rem;letter-spacing:.18em;color:var(--gold);margin-top:-5px}.links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.links a{font-size:.87rem;text-decoration:none;color:white}.links a:hover,.links .active{color:var(--gold)}.menu-button{display:none;border:1px solid #ffffff70;padding:8px 12px;background:transparent;color:white;border-radius:6px;font-size:1.3rem}.hero{background:linear-gradient(116deg,#0a2038ef,#102b43ef),radial-gradient(ellipse at 80% 50%,#466277,#102b43);color:#fff;padding:112px 0 105px}.hero h1{color:white;max-width:920px}.hero p{font-size:1.13rem;max-width:830px;color:#dfebf2}.hero .eyebrow{color:var(--gold)}.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#94721b;margin-bottom:13px}.buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;border-radius:6px;background:var(--gold);color:var(--navy);font-weight:800;text-decoration:none;padding:13px 21px;line-height:1.35;border:2px solid var(--gold)}.btn.outline{background:transparent;color:white}.btn.dark{background:var(--navy);border-color:var(--navy);color:white}.page-hero{background:linear-gradient(115deg,#0d2841,#1a3b50);color:white;padding:75px 0}.page-hero h1{color:white;font-size:clamp(2.3rem,4.5vw,3.9rem);margin-bottom:14px}.page-hero p{max-width:780px;color:#d9e6ed;font-size:1.08rem}.section{padding:76px 0}.section.light{background:var(--cream)}.section.dark{background:var(--navy);color:white}.section.dark h2,.section.dark h3{color:white}.lead{max-width:850px;color:var(--muted);font-size:1.1rem}.center{text-align:center}.center .lead{margin:0 auto 30px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:31px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:white;padding:28px;border:1px solid #e0e5eb;border-radius:10px;display:flex;flex-direction:column;min-height:290px;box-shadow:0 8px 20px #12253608}.card.service{background:#f5f7fa}.card p{color:#596775;margin-top:0;flex:1}.card a.card-link{font-weight:800;text-decoration:none;color:#102b43;background:#d4af37;border-radius:6px;padding:10px 15px;align-self:flex-start}.card .mini{font-size:2rem;color:var(--gold);margin-bottom:13px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature-panel{background:linear-gradient(145deg,#102b43,#28475e);border-radius:14px;padding:45px;color:white;min-height:340px;display:flex;align-items:end}.feature-panel h3{color:white;font-size:2rem;margin:0}.features{padding-left:20px}.features li{margin-bottom:14px}.tag{border:1px solid #d7dfe4;background:white;border-radius:30px;display:inline-block;padding:8px 14px;margin:6px;font-weight:600}.cta{background:var(--gold);padding:50px 0}.cta h2{margin-bottom:9px}.footer{background:#081c2f;color:#d9e6ed;padding:50px 0 22px}.footer h3{color:#fff}.footer .columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer a{display:block;color:#d9e6ed;text-decoration:none;margin:5px 0}.smallprint{border-top:1px solid #ffffff30;margin-top:30px;padding-top:18px;color:#a9b6c2;font-size:.85rem}.notice{background:#fff8df;border-left:4px solid var(--gold);padding:14px 18px;margin:20px 0;color:#543f0a}.form-link{font-weight:700;color:var(--navy)}.calendar{border-collapse:collapse;width:100%;margin:26px 0}.calendar th,.calendar td{text-align:left;padding:15px;border-bottom:1px solid #ddd}.calendar th{background:var(--navy);color:white}.mobile-scroll{overflow-x:auto}.crisis{background:#102b43;color:#fff;padding:40px;border-radius:12px}.crisis h3{color:white} @media(max-width:1000px){.links{gap:10px}.links a{font-size:.76rem}.grid.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.menu-button{display:block}.nav{flex-wrap:wrap}.links{display:none;width:100%;flex-direction:column;align-items:flex-start;padding:5px 0 22px}.links.open{display:flex}.links a{font-size:1rem;padding:5px 0}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.hero{padding:78px 0}.footer .columns{grid-template-columns:1fr 1fr}}@media(max-width:580px){.container{padding:0 17px}.grid,.grid.two,.grid.four{grid-template-columns:1fr}.section{padding:48px 0}.card{min-height:0;padding:22px}.hero{padding:59px 0}.hero p{font-size:1rem}.buttons{flex-direction:column;align-items:flex-start}.footer .columns{grid-template-columns:1fr}.top .container{font-size:.74rem}.brand strong{font-size:1.1rem}.brand img{width:43px;height:43px}.feature-panel{min-height:220px;padding:27px}}
/* Original Proximo site imagery: loaded directly from proximo.com.pk */
.hero{background-image:linear-gradient(90deg,rgba(7,27,46,.96),rgba(16,43,67,.89)),url("https://proximo.com.pk/wp-content/uploads/2020/05/DDC-1.jpg");background-position:center;background-size:cover}
.photo-section{background:#f5f7fa}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.photo-tile{background:#fff;box-shadow:0 12px 28px #102b4317;border-radius:12px;overflow:hidden;margin:0}.photo-tile img{display:block;width:100%;height:280px;object-fit:cover}.photo-tile figcaption{padding:15px 20px;color:#102b43;font-weight:700}.photo-tile img[src*=DDC-1]{object-position:center center}@media(max-width:700px){.photo-grid{grid-template-columns:1fr}.photo-tile img{height:220px}}

/* Interactive buttons: navy on hover, with accessible keyboard focus. */
.btn, .card a.card-link { transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.btn:not(.dark):not(.outline):hover,
.btn:not(.dark):not(.outline):focus-visible,
.card a.card-link:hover,
.card a.card-link:focus-visible { background:#102B43; border-color:#102B43; color:#FFFFFF; transform:translateY(-2px); }
.btn.outline:hover,.btn.outline:focus-visible {background:#D4AF37;color:#102B43;border-color:#D4AF37;transform:translateY(-2px)}
.btn.dark:hover,.btn.dark:focus-visible {background:#D4AF37;color:#102B43;border-color:#D4AF37;transform:translateY(-2px)}
.btn:focus-visible,.card a.card-link:focus-visible {outline:3px solid #A67C14;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.btn,.card a.card-link{transition:none;transform:none!important}}

/* Proximo in Action: original site photographs carousel */
.proximo-carousel{position:relative;max-width:1040px;margin:32px auto 0;outline-offset:5px}.carousel-window{overflow:hidden;border-radius:14px;box-shadow:0 14px 36px #102b4321;background:#102b43}.carousel-track{display:flex;transition:transform .48s ease;will-change:transform}.carousel-slide{flex:0 0 100%;min-width:0;margin:0;position:relative;background:#102b43}.carousel-slide img{display:block;width:100%;height:430px;object-fit:cover}.carousel-slide figcaption{padding:19px 26px;background:#102b43;color:white;display:flex;flex-direction:column;gap:2px;font-weight:600}.carousel-slide figcaption strong{font-size:1.2rem;color:white}.carousel-slide figcaption span{font-size:.92rem;color:#dce7ee;font-weight:400}.carousel-arrow{position:absolute;top:42%;transform:translateY(-50%);border:1px solid #ffffff80;background:#102b43d9;color:white;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:1.3rem;cursor:pointer;z-index:2;transition:background .2s ease,color .2s ease}.carousel-arrow:hover,.carousel-arrow:focus-visible{background:#d4af37;color:#102b43}.carousel-arrow.previous{left:18px}.carousel-arrow.next{right:18px}.carousel-dots{display:flex;justify-content:center;gap:12px;margin-top:19px}.carousel-dot{height:12px;width:12px;background:#9bacb8;border:0;border-radius:50%;cursor:pointer}.carousel-dot.active,.carousel-dot:hover{background:#d4af37}.carousel-credit{text-align:center;font-size:.78rem;color:#596775;margin:12px 0 0}@media(max-width:700px){.carousel-slide img{height:245px}.carousel-arrow{width:37px;height:37px;font-size:1rem}.carousel-arrow.previous{left:9px}.carousel-arrow.next{right:9px}.carousel-slide figcaption{padding:15px 18px}}@media(prefers-reduced-motion:reduce){.carousel-track{transition:none}}

/* Safeguarding program pages and homepage feature */
.safeguarding-grid{align-items:stretch}.safeguarding-card{min-height:245px}.topic-number{font-family:Manrope,Arial,sans-serif;font-size:1rem;letter-spacing:.15em;font-weight:800;color:#99751a;margin-bottom:12px}.safeguarding-panel{background:#102b43;color:#fff;border-radius:14px;padding:32px 38px}.safeguarding-panel .eyebrow{color:#d4af37}.safeguarding-panel ul{list-style:none;padding:0;margin:0}.safeguarding-panel li{padding:10px 0;border-bottom:1px solid #ffffff2a;font-weight:600}.safeguarding-panel li:last-child{border-bottom:none}

/* Social media links */
.social-links{display:flex;flex-wrap:wrap;gap:11px;margin-top:16px;align-items:center}
.social-icon{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(212,175,55,.6);border-radius:8px;color:#d4af37;text-decoration:none;font-weight:700;font-size:13px;line-height:1.2;transition:background .2s ease,color .2s ease,border-color .2s ease}
a.social-icon:hover,a.social-icon:focus-visible{background:#d4af37;color:#102b43;border-color:#d4af37}
.social-pending{opacity:.66;cursor:not-allowed}
.social-icon svg{flex:0 0 auto}
.social-invite{padding:48px 0;background:#102b43;color:#fff}
.social-invite-inner{display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}
.social-invite h2{color:#fff;margin:8px 0 12px}
.social-invite p{max-width:650px;color:#e0e8f0;margin:0}
.social-invite .eyebrow{color:#d4af37}
.social-invite .social-links{margin:0}
@media(max-width:700px){.social-invite{padding:36px 0}.social-invite-inner{align-items:flex-start;flex-direction:column}.social-invite .social-links{margin-top:0}}

/* Books & Publications: original book-cover artwork supplied by Proximo */
.books-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px;align-items:stretch}.book-card{background:white;border:1px solid #e0e5eb;border-radius:14px;box-shadow:0 9px 26px #102b4312;padding:22px;display:grid;grid-template-columns:320px 1fr;gap:23px;align-items:start}.book-card img{display:block;width:320px;height:460px;object-fit:contain;object-position:center top;background:#f5f7fa;border-radius:7px;padding:10px}.book-details h3{font-size:1.24rem;line-height:1.33;margin:7px 0 10px;color:#102b43}.book-details p{font-size:.94rem;color:#555;margin:9px 0 15px}.book-author{font-weight:750!important;color:#243e51!important}.book-label{display:inline-block;color:#92701b;font-size:.72rem;letter-spacing:.13em;font-weight:850}.book-details .btn{margin-top:8px;font-size:.84rem}.book-footnote{font-size:.83rem;color:#596775;margin-top:25px}@media(max-width:1000px){.books-grid{grid-template-columns:1fr}.book-card{grid-template-columns:260px 1fr}.book-card img{width:260px;height:380px}}@media(max-width:580px){.book-card{grid-template-columns:1fr}.book-card img{width:min(100%,300px);height:420px;max-width:100%;margin:auto}.book-card{padding:19px}}

/* Align publication action buttons across side-by-side cards. */
@media (min-width:1001px) {
  .books-grid { align-items:stretch; }
  .book-card { align-items:stretch; }
  .book-card > img { align-self:start; }
  .book-card .book-details { display:flex; flex-direction:column; min-width:0; height:100%; }
  .book-card .book-details > .btn { margin-top:auto; align-self:flex-start; }
}

/* Training team — editable profile placeholders */
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px;align-items:stretch}
.team-card{background:#fff;border:1px solid #e0e5eb;border-radius:13px;overflow:hidden;box-shadow:0 8px 20px #102b430b;display:flex;flex-direction:column}
.team-portrait{aspect-ratio:4/3;background:linear-gradient(135deg,#102b43,#234962);display:flex;justify-content:center;align-items:center;color:#d4af37}
.team-portrait svg{width:82px;height:82px;opacity:.87}
.team-body{padding:24px;display:flex;flex-direction:column;gap:9px;flex:1}
.team-body h3{margin:0;color:#102b43}.team-body p{margin:0;color:#596775;font-size:.94rem}.team-role{color:#9b761c!important;font-weight:700}.team-note{font-size:.88rem;color:#64717e}.team-intro{max-width:750px;margin:0 auto;color:#596775}.team-cta{margin-top:26px;text-align:center}
@media(max-width:850px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.team-grid{grid-template-columns:1fr}.team-portrait{aspect-ratio:16/10}}

/* Photo for confirmed lead trainer */
.team-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 36%}

/* Keep Mah Zaib portrait focused on the face within the common card shape */
.team-portrait img.mah-photo{object-position:center 30%;}

/* Training team: identical photo frames and equal-height cards. */
.team-grid{align-items:stretch;grid-auto-rows:1fr}
.team-card{height:100%;min-width:0}
.team-portrait{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;flex:none}
.team-portrait img,.team-portrait img.mah-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.team-portrait img{object-position:center 30%}
.team-portrait img.mah-photo{object-position:center 25%}
.team-body{flex:1}
@media(max-width:580px){.team-portrait{aspect-ratio:1/1}}


/* Responsive refinement — November 2026 */
html,body{max-width:100%;overflow-x:clip}
img,svg,video{max-width:100%}
.grid > *, .split > *, .books-grid > *, .book-card > *, .footer .columns > *{min-width:0}
.card h3,.book-details h3,.team-body h3{overflow-wrap:break-word}
.btn,.card a.card-link{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
.calendar th,.calendar td{vertical-align:top}
@media(max-width:1000px){
  .books-grid{grid-template-columns:1fr}
  .book-card{align-items:stretch}
  .book-card .book-details{display:flex;flex-direction:column;min-width:0}
  .book-card .book-details>.btn{margin-top:auto;align-self:flex-start}
}
@media(max-width:800px){
  .nav{gap:12px}
  .links.open{max-height:65vh;overflow-y:auto}
  .links.open a{display:block;width:100%;padding:8px 2px}
  .card{min-height:0}
  .split{gap:28px}
  .footer .columns{gap:25px}
}
@media(max-width:580px){
  h1{font-size:clamp(2rem,9vw,2.8rem)}
  h2{font-size:clamp(1.65rem,7vw,2.1rem)}
  .lead{font-size:1rem}
  .nav{min-height:70px}
  .top .container{gap:2px}
  .btn{padding:12px 16px}
  .card a.card-link{align-self:flex-start}
  .card{gap:6px}
  .safeguarding-panel{padding:23px 20px}
  .photo-grid{grid-template-columns:1fr}
  .photo-tile img{height:230px}
  .carousel-slide img{height:220px}
  .carousel-slide figcaption strong{font-size:1rem}
  .book-card{gap:18px}
  .book-card img{width:min(100%,290px);height:400px}
  .book-card .book-details>.btn{width:auto}
  .calendar{font-size:.9rem}
  .calendar th,.calendar td{padding:10px}
  .social-icon{font-size:12px}
}

/* Existing course catalogue, equal-height responsive cards */
.course-catalog-card{min-height:250px}.course-catalog-card .card-link{margin-top:auto}

/* Final 2026 staging review: consistently sized book frames while retaining readable descriptions. */
@media (min-width:1001px) {
  .book-card { grid-template-columns: minmax(155px, 38%) minmax(0, 1fr); }
  .book-card img { width:100%; height:320px; max-height:none; object-fit:contain; object-position:center center; }
}
@media (min-width:581px) and (max-width:1000px) {
  .book-card { grid-template-columns:minmax(150px,32%) minmax(0,1fr); }
  .book-card img { width:100%; height:340px; max-height:none; object-fit:contain; object-position:center center; }
}
@media(max-width:580px) {
  .book-card img { width:min(100%,290px); height:400px; max-height:none; object-fit:contain; object-position:center center; }
}
/* Keep the book information aligned for equal action button positions on every breakpoint. */
.book-card { align-items:stretch; }
.book-card .book-details { display:flex; flex-direction:column; min-width:0; }
.book-card .book-details > .btn { margin-top:auto; align-self:flex-start; }

/* Feature Proximo's established H.E.A.T. course at the start of Training Programs. */
.heat-feature-section{padding:36px 0 10px;background:#fff}
.heat-feature{background:linear-gradient(125deg,#102B43,#173B52);color:#fff;border-left:5px solid #D4AF37;border-radius:12px;padding:36px 40px;box-shadow:0 10px 28px #102b4324}
.heat-feature .eyebrow{color:#D4AF37}
.heat-feature h2{color:#fff;font-size:clamp(1.75rem,3vw,2.3rem);margin-bottom:12px;letter-spacing:-.02em}
.heat-feature p{color:#e1eaf1;max-width:880px;margin:12px 0}
.heat-feature-lead{font-size:1.11rem;font-weight:600}
.heat-formats{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.heat-formats span{border:1px solid #D4AF37;color:#ffe5a0;border-radius:30px;padding:6px 15px;font-weight:700;font-size:.92rem}
.heat-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.heat-actions .btn{max-width:100%}
.heat-actions .heat-outline{background:transparent;color:#fff;border-color:#D4AF37}
.heat-actions .heat-outline:hover,.heat-actions .heat-outline:focus-visible{background:#D4AF37;color:#102B43}
@media(max-width:580px){.heat-feature-section{padding-top:18px}.heat-feature{padding:25px 20px}.heat-actions{flex-direction:column;align-items:stretch}.heat-actions .btn{width:100%;text-align:center}}

/* Fixed-section anchor navigation below the sticky header */
#driving-courses{scroll-margin-top:110px}
@media(max-width:800px){#driving-courses{scroll-margin-top:85px}}

/* Safeguarding courses are directly accessible from Training Programs, like driving courses. */
#safeguarding-courses {scroll-margin-top:110px;background:#f5f7fa}
#safeguarding-courses .safeguarding-grid {margin-top:30px}
#safeguarding-courses .safeguarding-card {background:#fff}
.safeguarding-detail-action{text-align:center;margin-top:30px}
@media(max-width:580px){#safeguarding-courses{scroll-margin-top:80px}.safeguarding-detail-action .btn{max-width:100%;white-space:normal}}


/* Course detail pages — v1.1.5 (all course buttons remain in the new website) */
.course-hero{padding:82px 0 64px}
.course-crumb{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px;color:#dce6ec;font-size:.9rem}
.course-crumb a{color:#f1ca5b;text-decoration:underline;text-underline-offset:4px}
.course-intro-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,1fr);gap:48px;align-items:start}
.course-facts{background:#102B43;color:white;border-radius:12px;padding:30px;box-shadow:0 10px 25px #102B4322}
.course-facts h3{color:white}
.course-facts .eyebrow{color:#D4AF37}
.course-facts dl{margin:0}
.course-facts dl>div{padding:11px 0;border-bottom:1px solid #ffffff29}
.course-facts dt{font-size:.8rem;letter-spacing:.03em;color:#edc96a;font-weight:700}
.course-facts dd{margin:4px 0 0;font-size:.95rem}
.course-format-grid{align-items:stretch}
.course-format-grid .card{min-height:310px}
.course-format-grid .card p{flex:none}
.course-format-grid .card .card-link{margin-top:auto}
.format-kicker{color:#98721c;font-size:.76rem;font-weight:800;letter-spacing:.13em}
.heat-topics .card{min-height:195px}
.heat-topics .card p{margin:0}
.course-note{color:#596775;font-size:.91rem;margin:24px 0 0}
.course-faq{max-width:900px;margin-top:24px}
.course-faq details{border:1px solid #dfe5ec;border-radius:8px;margin-bottom:12px;padding:16px 20px;background:#fff}
.course-faq summary{cursor:pointer;color:#102B43;font-weight:750}
.course-faq details p{margin:12px 0 0;color:#596775}
.course-cta-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.course-cta-actions .course-contact-link{border-color:#102B43;background:transparent;color:#102B43}
.course-cta-actions .course-contact-link:hover{background:#102B43;color:#fff}
.course-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}
.course-jump a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px;border:1px solid #dfe5eb;border-radius:8px;text-decoration:none;font-weight:700;color:#102B43;background:#f5f7fa}
.course-jump a span{color:#b38f2e}
.course-jump a:hover,.course-jump a:focus-visible{background:#102B43;color:white}
.course-detail{scroll-margin-top:110px}
.course-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr);gap:44px;align-items:start}
.course-duration{color:#98721c;font-weight:700}
.course-outline-panel{border:1px solid #e0e5eb;border-radius:12px;padding:26px;background:#fff}
.course-outline-panel .features{margin-bottom:14px}
.course-outline-panel p{font-size:.91rem;color:#596775}
@media(max-width:900px){.course-jump{grid-template-columns:repeat(2,minmax(0,1fr))}.course-intro-layout,.course-detail-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:580px){.course-jump{grid-template-columns:1fr}.course-hero{padding:56px 0 42px}.course-facts,.course-outline-panel{padding:22px}.heat-topics .card{min-height:0}.course-cta-actions{flex-direction:column;align-items:stretch}.course-cta-actions .btn{width:100%}}

/* v1.1.6 — Give enquiry buttons breathing room before the next course panel.
   On smaller screens the two-column facts/outline layouts stack vertically. */
.course-intro-layout > div:first-child > .btn,
.course-detail-grid > div:first-child > .btn {
  margin-top: 14px;
  margin-bottom: 22px;
}
@media (max-width: 900px) {
  .course-intro-layout,
  .course-detail-grid { row-gap: 32px; }
  .course-intro-layout > div:first-child > .btn,
  .course-detail-grid > div:first-child > .btn { margin-bottom: 12px; }
}

/* About Us: balanced working-principle cards with fuller descriptions */
.about-principles .grid{align-items:stretch}
.about-principles .card{min-height:270px}
.about-principles .card p{flex:0 1 auto;margin-bottom:0}
@media(max-width:800px){.about-principles .card{min-height:0}}


/* Contact Us v1.1.8 — breathing room below the email enquiry button. */
.contact-email-button { margin-top: 10px; margin-bottom: 26px; }
p.contact-email-note { margin-top: 0; margin-bottom: 0; line-height: 1.6; }
@media (max-width: 580px) { .contact-email-button { margin-bottom: 22px; } }
