/* ===== source: css/hero.css ===== */
/* =========================================================
   HERO - home page hero banner and quick links
   ========================================================= */

/* =========================================================
   HERO
   ========================================================= */

.hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    padding: 70px 0 40px;

    background:
       
        
        url("../../images/hero/security_hero.webp") center top / 100% auto no-repeat;
}
.hero-media {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 62%;
  -webkit-mask-image: linear-gradient(
    to right,
    transparent,
    #000 30%
  );
  mask-image: linear-gradient(
    to right,
    transparent,
    #000 30%
  );
}

.hero-media .media,
.hero-media .imgreq {
  height: 100%;
  border: 0;
  background: transparent;
}

.hero-media .imgreq {
  justify-content: flex-end;
  padding-right: 12%;
  color: #8a90a0;
}

.hero-in1 {
  position: relative;
  z-index: 1;
}

.hero h1 {
  text-transform: uppercase;
  line-height: 1;
  margin: 14px 0 18px;
}

.hero h1 b {
  color: #ff2b32;
}

.hero-p {
  max-width: 470px;
  color: #d3d7de;
  font-size: 15px;
}

.hero .btns {
  margin: 26px 0 34px;
}

.quick {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  font-size: 12px;
}

.quick a {
  color: #d3d7de;
  border-bottom: 2px solid transparent;
  padding: 2px 0;
}

.quick a:hover {
  color: #fff;
  border-color: var(--red);
}

/* ===== source: css/media.css ===== */
/* =========================================================
   MEDIA - image wrappers and [IMAGE REQUIRED] placeholders (shared)
   ========================================================= */

/* =========================================================
   MEDIA
   ========================================================= */

.media {
  position: relative;
  overflow: hidden;
  background: linear-gradient(
    135deg,
    #1b1e26,
    #3a4256
  );
}

.media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s;
}

.imgreq {
  width: 100%;
  height: 100%;
  min-height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px;
  font-size: 11.5px;
  line-height: 1.35;
  color: #b3b8c2;
  border: 0;
}

.imgreq small {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  color: #8a90a0;
  word-break: break-all;
}

/* ===== source: css/promo.css ===== */
/* =========================================================
   PROMO - promo strip and promo cards (home page top strip)
   ========================================================= */

/* =========================================================
   PROMO STRIP
   ========================================================= */


/* =========================================================
   PROMO ROW
   2 CARDS TOP
   2 CARDS BOTTOM
   ========================================================= */
.promo-row {
  display: grid;
  grid-template-columns: repeat(
    2,
    minmax(0, 1fr)
  );
  gap: 16px;
}

/* =========================================================
   PROMO CARD
   ========================================================= */

.promo-card {
  display: flex;
  gap: 12px;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 12px;
  min-width: 0;
  transition: .2s;
}

.promo-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
}

.promo-card .media {
  flex: 0 0 84px;
  border-radius: 4px;
  min-height: 84px;
}

.promo-card .imgreq {
  min-height: 0;
  font-size: 0;
  padding: 0;
}

.promo-card .imgreq small {
  display: none;
}

.promo-card .imgreq::after {
  content: "IMAGE";
  font-size: 9px;
  letter-spacing: 1.5px;
  color: #8a90a0;
}

.pc-b {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
  min-width: 0;
  flex: 1;
}

.pc-b h3 {
  font-size: 13px;
  line-height: 1.25;
}

.pf {
  font-size: 12px;
  color: var(--mut);
}

.pc-b .btn {
  margin-top: auto;
}

.tag {
  background: var(--red);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
  letter-spacing: .4px;
}


/* =========================================================
   SECURITY BUNDLE PROMO CARDS - CENTERED / MATCH SCREENSHOT
   ========================================================= */

.promo-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  width: calc(100% - 0px);
  max-width: 1200px;
  margin: 36px auto 38px;
  align-items: stretch;
}

.promo-row .promo-card {
  width: 100%;
  min-height: 206px;
  height: 206px;
  padding: 0;
  gap: 0;
  border-radius: 0;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 235px;
  background: #fff;
}

.promo-row .promo-card .media {
  order: 2;
  width: 235px;
  height: 206px;
  min-height: 206px;
  flex: none;
  border-radius: 0;
  overflow: hidden;
}

.promo-row .promo-card .media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.promo-row .promo-card .pc-b {
  order: 1;
  padding: 18px 20px;
  gap: 12px;
  justify-content: flex-start;
}

.promo-row .promo-card .tag {
  align-self: flex-start;
  background: #f05252;
  border-radius: 0;
  padding: 7px 13px;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.promo-row .promo-card .pc-b h3 {
  font-size: 24px;
  line-height: 1.28;
  font-weight: 800;
  color: #000;
  margin: 0;
}

.promo-row .promo-card .pc-b .btn {
  margin-top: auto;
  align-self: flex-start;
  min-width: 179px;
  padding: 12px 18px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .4px;
}

@media (max-width: 1000px) {
  .promo-row {
    grid-template-columns: 1fr;
    max-width: 700px;
    gap: 20px;
    margin-top: 30px;
    margin-bottom: 34px;
  }
}

@media (max-width: 620px) {
  .promo-row {
    width: 100%;
    gap: 18px;
    margin-top: 24px;
    margin-bottom: 28px;
  }

  .promo-row .promo-card {
    height: auto;
    min-height: 180px;
    grid-template-columns: minmax(0, 1fr) 120px;
  }

  .promo-row .promo-card .media {
    width: 120px;
    height: 180px;
    min-height: 180px;
  }

  .promo-row .promo-card .pc-b {
    padding: 14px;
    gap: 9px;
  }

  .promo-row .promo-card .pc-b h3 {
    font-size: 18px;
  }

  .promo-row .promo-card .tag {
    font-size: 11px;
    padding: 6px 9px;
  }

  .promo-row .promo-card .pc-b .btn {
    min-width: 0;
    padding: 9px 12px;
    font-size: 11px;
  }
}


/* =========================================================
   EXACT HOME OFFERS - matches supplied reference image
   ========================================================= */
.exact-home-offers{background:#fff;padding:24px 0 30px;}
.exact-home-wrap{width:calc(100% - 32px);max-width:1545px;margin:0 auto;}
.exact-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.exact-course-card{height:350px;background:#fff;border:1px solid #e3e3e3;box-shadow:0 7px 22px rgba(0,0,0,.08);border-radius:5px;overflow:hidden;display:grid;grid-template-columns:44% 60px 1fr;min-width:0;}
.exact-course-photo{height:100%;overflow:hidden;background:#111;}
.exact-course-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.exact-vertical{background:#ed1118;color:#fff;font:800 15px/1 var(--f-head);letter-spacing:.8px;writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 0;}
.exact-course-body{position:relative;padding:19px 18px 16px;background:#fff;min-width:0;display:flex;flex-direction:column;}
.exact-course-body h3{font:800 25px/1.12 var(--f-head);color:#08090c;margin:0 72px 22px 0;}
.exact-course-body p{font:500 14px/1.55 var(--f-body);color:#101116;margin:0 0 8px;}
.exact-course-body p b{font-weight:800;}
.exact-price{position:absolute;right:13px;top:18px;background:#f51118;color:#fff;border-radius:12px;padding:10px 11px;font:800 18px/1 var(--f-head);white-space:nowrap;}
.exact-book{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:12px;background:#f30d14;color:#fff;border-radius:6px;min-height:46px;padding:10px 14px;font:800 15px/1 var(--f-head);box-shadow:0 3px 0 rgba(0,0,0,.08);text-align:center;white-space:nowrap;}
.exact-book span{font-size:22px;line-height:0;}
.exact-bundle{height:210px;margin:30px 0;position:relative;overflow:hidden;border-radius:5px;background:linear-gradient(120deg,#080a0d 0%,#11151b 55%,#190c0f 100%);display:flex;align-items:center;justify-content:space-between;padding:0 36px 0 44px;color:#fff;}
.exact-bundle:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,11,14,1) 0%,rgba(9,11,14,.98) 46%,rgba(9,11,14,.18) 77%,rgba(9,11,14,.05) 100%);pointer-events:none;}
.exact-bundle-copy,.exact-bundle-btn{position:relative;z-index:1;}
.exact-bundle-copy h2{font:800 39px/1.05 var(--f-head);margin:0 0 16px;color:#fff;}
.exact-bundle-copy h2 em{font-style:normal;color:#f30d14;}
.exact-bundle-copy p{font:500 15px/1.45 var(--f-body);color:#fff;margin:0;}
.exact-bundle-copy strong{color:#f30d14;}
.exact-bundle-btn{min-width:190px;margin-left:25px;}
.exact-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.exact-promo-card{height:283px;background:#fff;border:1px solid #dedede;box-shadow:0 7px 22px rgba(0,0,0,.08);border-radius:5px;overflow:hidden;display:grid;grid-template-columns:1fr 46%;min-width:0;}
.exact-promo-copy{padding:18px 20px 18px;display:flex;flex-direction:column;min-width:0;}
.exact-save{align-self:flex-start;background:#f04b50;color:#fff;padding:7px 13px;font:800 14px/1 var(--f-head);letter-spacing:1px;}
.exact-promo-copy h3{font:800 24px/1.18 var(--f-head);color:#08090c;margin:19px 0 12px;}
.exact-promo-photo{height:100%;overflow:hidden;position:relative;}
.exact-promo-photo:before{content:"";position:absolute;left:-1px;top:0;border-style:solid;border-width:283px 24px 0 0;border-color:#f20d14 transparent transparent transparent;z-index:1;}
.exact-promo-photo img{width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:1050px){.exact-course-card{grid-template-columns:40% 54px 1fr}.exact-course-body h3{font-size:21px}.exact-bundle-copy h2{font-size:32px}.exact-promo-copy h3{font-size:21px}}
@media(max-width:760px){.exact-home-wrap{width:calc(100% - 24px)}.exact-top-grid,.exact-bottom-grid{grid-template-columns:1fr}.exact-course-card{height:320px}.exact-bundle{height:auto;min-height:230px;padding:30px 24px;}.exact-bundle-copy h2{font-size:28px}.exact-bundle-btn{min-width:150px}.exact-promo-card{height:240px}.exact-promo-photo:before{border-width:240px 18px 0 0}.exact-promo-copy h3{font-size:20px}}
@media(max-width:520px){.exact-course-card{grid-template-columns:38% 42px 1fr;height:285px}.exact-course-body{padding:14px 10px}.exact-course-body h3{font-size:17px;margin-right:48px;margin-bottom:12px}.exact-course-body p{font-size:11px}.exact-price{font-size:13px;padding:8px 7px;top:12px;right:8px}.exact-book{min-height:38px;font-size:11px;padding:8px}.exact-vertical{font-size:11px}.exact-bundle{background-size:auto;}.exact-bundle-copy h2{font-size:22px}.exact-bundle-copy p{font-size:12px}.exact-bundle-btn{min-width:125px}.exact-promo-card{height:200px;grid-template-columns:1fr 43%}.exact-promo-copy{padding:12px}.exact-promo-copy h3{font-size:17px;margin:12px 0}.exact-save{font-size:11px;padding:6px 8px}.exact-promo-photo:before{border-width:200px 14px 0 0}}


/* ===== source: css/courses.css ===== */
/* =========================================================
   COURSES - course grid, course cards, filters, course page content blocks (SIA Courses hub + course pages)
   ========================================================= */

/* =========================================================
   HEADS / FILTERS
   ========================================================= */

.head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
}

.filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 4px 0 26px;
}

.filters button {
  border: 1px solid var(--line);
  background: var(--card);
  color: var(--ink);
  border-radius: 4px;
  padding: 8px 14px;
  font: 600 12.5px var(--f-body);
  cursor: pointer;
  display: inline-block;
  transition: .2s;
}

.filters button:hover {
  border-color: var(--red);
}

.filters button.on {
  background: var(--red);
  border-color: var(--red);
  color: #fff;
}

.empty {
  text-align: center;
  color: var(--mut);
  padding: 30px;
}

/* =========================================================
   COURSE CARDS
   ========================================================= */

.grid3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.card {
  position: relative;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: .2s;
}

.card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
}

.card:hover .media img {
  transform: scale(1.05);
}

.card .media {
  height: 150px;
  flex: none;
}

.card .body {
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}

.card p {
  font-size: 12.5px;
  color: var(--mut);
  flex: 1;
}

.cat {
  color: var(--red);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.facts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 12px;
  color: var(--mut);
}

.facts li {
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 2px 8px;
}

.badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  background: var(--red);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 3px;
}

.dur {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  background: var(--ink2);
  color: #fff;
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 4px;
}

.buy {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding-top: 6px;
}

.buy small {
  display: block;
  font-size: 11px;
  color: var(--mut);
}

.buy b {
  font: 700 17px var(--f-head);
}

.center-t {
  text-align: center;
}

.narrow-l {
  max-width: 820px;
}

.narrow-l p {
  margin-bottom: 12px;
  
  
}

.ics .ic .ico {
  font-size: 26px;
  display: block;
  margin-bottom: 8px;
}

.ics .ic p {
  margin-top: 8px;
}

.qloc {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-decoration: none;
  color: inherit;
}

.qloc:hover {
  border-color: var(--red);
}

.qloc span {
  color: var(--mut);
  font-size: 14px;
}

.stats {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 22px;
}

.stats b {
  display: block;
  font-family: var(--f-head);
  font-size: 26px;
}

.stats span {
  font-size: 12px;
  color: var(--mut);
  text-transform: uppercase;
  letter-spacing: .06em;
}

.course-head .two {
  align-items: center;
  gap: 32px;
}

.price-was {
  color: var(--mut);
  text-decoration: line-through;
  font-size: 14px;
  margin-left: 6px;
}

.meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0;
}

.meta-row li {
  list-style: none;
  font-size: 12px;
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 3px 8px;
}

.tbl {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.tbl th,
.tbl td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
}

.tbl-wrap {
  overflow-x: auto;
}

/* Security Guard page blocks (numbered lists, warning line, link row) - existing tokens only */

.olist {
  margin: 12px 0 18px 22px;
  padding: 0;
  display: grid;
  gap: 8px;
}

.narrow-l h3 {
  margin-top: 22px;
}

.linkrow a {
  margin: 0 4px;
}

/* ===== source: css/why.css ===== */
/* =========================================================
   WHY BAND - "Why train with SGS" dark band
   ========================================================= */

/* =========================================================
   WHY BAND
   ========================================================= */

.why {
    
    max-width: none;

 
    background: #0e1016;
    color: #fff;
     width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}


.why::before {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -100px;
    top: -130px;
    border: 1px solid rgba(215,25,31,.25);
    border-radius: 50%;
    box-shadow: 0 0 0 28px rgba(215,25,31,.025),
                0 0 0 56px rgba(215,25,31,.018);
    pointer-events: none;
}
.why-in {
    width: 100%;
    max-width: 1180px;
    
    margin: 0 auto;

    min-height: 140px;
    padding: 50px 40px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;

    box-sizing: border-box;
}

.why p {
  color: #c8ccd4;
  margin: 10px 0 0;
  font-size: 14px;
  max-width: 640px;
}

/* ===== source: css/topics.css ===== */
/* =========================================================
   TOPICS - feature rows / three column link boxes
   ========================================================= */

/* =========================================================
   TOPICS / FEATURE ROWS
   ========================================================= */

.skill {
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: 36px;
  align-items: start;
}

.skill .btn {
  margin-top: 14px;
}

.cols3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.colbox {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 20px;
}

.colbox h3 {
  font-size: 16px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.colbox li a {
  display: block;
  padding: 6px 0;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .4px;
  color: var(--red);
}

.colbox li a:hover {
  color: var(--ink);
}


/* =========================================================
   SGS COURSE BOX - LOCAL FONT SIZE ONLY
   ========================================================= */

.cols3 .colbox h3 {
  font-size: 24px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

.cols3 .colbox ul li,
.cols3 .colbox ul li a {
  font-size: 17px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

@media (max-width: 900px) {
  .cols3 .colbox h3 {
    font-size: 23px !important;
  }

  .cols3 .colbox ul li,
  .cols3 .colbox ul li a {
    font-size: 17px !important;
  }
}

@media (max-width: 600px) {
  .cols3 .colbox h3 {
    font-size: 22px !important;
  }

  .cols3 .colbox ul li,
  .cols3 .colbox ul li a {
    font-size: 16px !important;
  }
}

/* ===== source: css/feature.css ===== */
/* =========================================================
   FEATURE - two column feature block with tall image
   ========================================================= */

.two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px;
  align-items: center;
}

.feat p {
  color: var(--mut);
  margin: 10px 0 14px;
  font-size: 14px;
}

.feat .spec {
  color: var(--ink);
  background: var(--card);
  border: 1px solid var(--line);
  border-left: 3px solid var(--red);
  border-radius: 6px;
  padding: 14px 16px;
  font-size: 13px;
}

.feat .media.tall {
  border-radius: 6px;
  min-height: 340px;
  height: 100%;
  border: 1px solid var(--line);
}

.feat .media.tall .imgreq {
  min-height: 340px;
}

/* ===== source: css/locations.css ===== */
/* =========================================================
   LOCATIONS - location cards grid
   ========================================================= */

.loc:hover .media img {
  transform: scale(1.05);
}

/* =========================================================
   LOCATIONS
   ========================================================= */

.locs {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}

.loc {
  display: flex;
  flex-direction: column;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
  transition: .2s;
}

.loc:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
}

.loc .media {
  height: 110px;
  flex: none;
}

.loc .imgreq {
  min-height: 0;
  font-size: 10.5px;
}

.loc .imgreq small {
  display: none;
}

.loc-b {
  padding: 10px 12px;
  font-size: 12.5px;
}

.loc-b b {
  display: block;
  font: 700 14px var(--f-head);
}

.loc-b span {
  color: var(--red);
  font-weight: 600;
}
.sia-main-title {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
}

.sia-location-title {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    margin-top: 20px !important;
    margin-bottom: 0 !important;
}
/* ===== source: css/reviews.css ===== */
/* =========================================================
   REVIEWS - review cards, rating score, panels
   ========================================================= */

/* =========================================================
   REVIEWS / PANELS
   ========================================================= */

.panel {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 20px;
}

.ph {
  color: var(--mut);
  font-style: italic;
}

.rev {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 20px;
  font-size: 14px;
}

.qm {
  display: block;
  font: 900 40px/.7 var(--f-head);
  color: var(--red);
  margin-bottom: 8px;
  font-style: normal;
}

.center .panel {
  margin-top: 22px;
}

/* =========================================================
   CONTENT BLOCKS (added for real-content pages)
   Built only from existing design tokens (--red, --ink, --line, --soft, --card, --mut).
   ========================================================= */

.stars {
  color: var(--red);
  letter-spacing: 2px;
  font-size: 15px;
  display: block;
  margin-bottom: 8px;
}

.rev p {
  margin: 0 0 14px;
}

.rev-by {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 13px;
}

.rev-by .av {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--ink);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 13px;
  flex: none;
}

.rev-by b {
  display: inline;
}

.rev-by .ok {
  color: var(--red);
  font-style: normal;
  font-weight: 700;
}

.rev-by small {
  display: block;
  color: var(--mut);
  font-size: 12px;
}

.score {
  font-size: 15px;
  margin: 6px 0 18px;
}

.score b {
  font-size: 34px;
  font-family: var(--f-head);
}

/* ===== source: BOOK NOW BUTTONS (new) ===== */
/* =========================================================
   BOOK NOW BUTTONS - shared hook class for every button that
   opens book now.html. Existing .btn / .exact-book styles
   (colours, hover, size) are NOT changed here.
   ========================================================= */

.btn-book-now {
  cursor: pointer;
  text-decoration: none;
}