
/* Homepage visual direction inspired by the supplied reference image */
body:has(.hero#home) header{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(60,35,30,.08);box-shadow:0 4px 18px rgba(30,20,15,.045)}
body:has(.hero#home) .nav{height:88px;gap:22px}
body:has(.hero#home) .brand{min-width:280px}
body:has(.hero#home) .brand img{width:64px;height:64px}
body:has(.hero#home) .brand strong{font-size:21px}
body:has(.hero#home) .brand small{font-size:10px;letter-spacing:1.55px}
body:has(.hero#home) .navlinks{gap:30px;font-size:15px;color:#292326}
body:has(.hero#home) .navlinks a{transition:color .2s ease}
body:has(.hero#home) .navlinks a:hover{color:#bd2927}
body:has(.hero#home) .nav-cta{background:#bd2927;color:#fff;border-radius:32px;padding:16px 25px;box-shadow:0 8px 20px rgba(189,41,39,.16)}
body:has(.hero#home) .hero{min-height:calc(100vh - 88px);height:700px;max-height:850px;background:#34201d}
body:has(.hero#home) .hero-slides{z-index:-2;overflow:hidden}
body:has(.hero#home) .home-building{position:absolute;inset:0;background-repeat:no-repeat;background-size:cover}
body:has(.hero#home) .home-building-left{right:47%;background-image:url('../assets/school-building-main.jpeg');background-position:center 48%;clip-path:polygon(0 0,100% 0,86% 100%,0 100%)}
body:has(.hero#home) .home-building-right{left:43%;background-image:url('../assets/school-building-campus.jpeg');background-position:center 48%;clip-path:polygon(13% 0,100% 0,100% 100%,0 100%)}
body:has(.hero#home) .home-image-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,12,12,.65) 0%,rgba(25,13,13,.54) 39%,rgba(24,13,13,.22) 67%,rgba(20,12,12,.08) 100%)}
body:has(.hero#home) .home-diagonal{position:absolute;top:-5%;bottom:-5%;left:45.1%;width:5px;background:rgba(255,255,255,.68);transform:rotate(13deg);transform-origin:center;box-shadow:0 0 15px rgba(0,0,0,.18)}
body:has(.hero#home) .hero:before{display:none}
body:has(.hero#home) .hero:after{height:95px;background:linear-gradient(transparent,rgba(15,8,7,.24))}
body:has(.hero#home) .hero>.container{width:min(1460px,calc(100% - 64px))}
body:has(.hero#home) .hero-content{max-width:760px;padding:78px 0 100px}
body:has(.hero#home) .eyebrow{font-size:13px;letter-spacing:2.1px;color:#ffe5d7}
body:has(.hero#home) .eyebrow:before{width:30px;background:#f1ad96}
body:has(.hero#home) .hero h1{font-size:clamp(58px,6vw,88px);line-height:1.03;letter-spacing:-2.5px;margin:28px 0 20px;text-shadow:0 5px 22px rgba(0,0,0,.18)}
body:has(.hero#home) .hero h1 span{color:#ffad98}
body:has(.hero#home) .hero p{font-size:19px;line-height:1.75;max-width:650px;color:#fff;margin-bottom:32px;text-shadow:0 2px 12px rgba(0,0,0,.25)}
body:has(.hero#home) .hero-actions{gap:14px}
body:has(.hero#home) .hero-actions .btn{border-radius:30px;padding:16px 25px;font-size:15px;font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.16)}
body:has(.hero#home) .hero-actions .btn:not(.light){background:#c12726}
body:has(.hero#home) .hero-actions .btn.light{background:#fff;color:#b52625}
body:has(.hero#home) .hero-note{margin-top:34px;font-size:13px;color:#fff0e8}
body:has(.hero#home) .trust-strip{background:#fbf8f4}
@media(max-width:1100px){
 body:has(.hero#home) .navlinks{gap:17px}
 body:has(.hero#home) .brand{min-width:230px}
 body:has(.hero#home) .brand strong{font-size:18px}
 body:has(.hero#home) .nav-cta{padding:13px 18px}
 body:has(.hero#home) .hero-content{max-width:690px}
}
@media(max-width:760px){
 body:has(.hero#home) .nav{height:76px}
 body:has(.hero#home) .brand{min-width:0}
 body:has(.hero#home) .brand img{width:52px;height:52px}
 body:has(.hero#home) .brand strong{font-size:16px}
 body:has(.hero#home) .brand small{font-size:8px;letter-spacing:1px}
 body:has(.hero#home) .nav-cta{display:none}
 body:has(.hero#home) .hero{height:auto;min-height:680px;max-height:none}
 body:has(.hero#home) .home-building-left{display:none}
 body:has(.hero#home) .home-building-right{left:0;background-image:url('../assets/school-building-main.jpeg');background-position:center center;clip-path:none}
 body:has(.hero#home) .home-image-shade{background:linear-gradient(90deg,rgba(20,12,12,.73),rgba(20,12,12,.45)),linear-gradient(0deg,rgba(20,12,12,.25),transparent)}
 body:has(.hero#home) .home-diagonal{display:none}
 body:has(.hero#home) .hero>.container{width:calc(100% - 40px)}
 body:has(.hero#home) .hero-content{padding:95px 0 110px;max-width:100%}
 body:has(.hero#home) .hero h1{font-size:clamp(45px,10vw,68px);letter-spacing:-1.5px}
 body:has(.hero#home) .hero p{font-size:16px}
 body:has(.hero#home) .hero-actions .btn{padding:14px 18px}
}
@media(max-width:420px){
 body:has(.hero#home) .hero{min-height:650px}
 body:has(.hero#home) .hero h1{font-size:44px}
 body:has(.hero#home) .hero-actions{flex-direction:column;align-items:flex-start}
}

/* Homepage hero: use the supplied combined school photograph as one image.
   Keep the existing tagline, copy, navigation and calls to action unchanged. */
body:has(.hero#home) .hero-slides{background-image:url('../assets/homepage-school-composite.png');background-size:cover;background-position:center center;background-repeat:no-repeat}
body:has(.hero#home) .home-building{display:none}
body:has(.hero#home) .home-image-shade{background:linear-gradient(90deg,rgba(20,12,12,.68) 0%,rgba(25,13,13,.48) 48%,rgba(24,13,13,.20) 100%)}
body:has(.hero#home) .home-diagonal{display:none}
@media(max-width:760px){
 body:has(.hero#home) .hero-slides{background-position:center center}
 body:has(.hero#home) .home-image-shade{background:linear-gradient(90deg,rgba(20,12,12,.70),rgba(20,12,12,.40)),linear-gradient(0deg,rgba(20,12,12,.28),transparent)}
}


/* Exact desktop homepage hero from the user's supplied reference.
   The header remains live HTML; the hero composition is reproduced at source resolution. */
@media (min-width: 761px) {
  body:has(.hero#home) .hero {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1672 / 834;
    background: #2b1b1a;
    overflow: hidden;
  }
  body:has(.hero#home) .hero-slides {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: url("../assets/homepage-hero-exact-reference.jpg") !important;
    background-size: 100% 100% !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
  body:has(.hero#home) .hero-content,
  body:has(.hero#home) .home-building,
  body:has(.hero#home) .home-image-shade,
  body:has(.hero#home) .home-diagonal,
  body:has(.hero#home) .hero:before,
  body:has(.hero#home) .hero:after {
    display: none !important;
  }
}
@media (max-width: 760px) {
  /* Keep a responsive, readable live-text layout on small screens. */
  body:has(.hero#home) .hero {
    aspect-ratio: auto;
    height: auto;
    min-height: 680px;
  }
  body:has(.hero#home) .hero-slides {
    background-image: url("../assets/homepage-school-composite.png") !important;
    background-size: cover !important;
    background-position: center !important;
  }
  body:has(.hero#home) .hero-content {
    display: block !important;
  }
}


/* Homepage school photograph: enhanced high-resolution original composite.
   The existing typography, navigation, buttons, layout and overlays remain unchanged. */
body:has(.hero#home) .hero-slides{
  background-image:url('../assets/homepage-school-composite-enhanced.jpg');
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
}
body:has(.hero#home) .home-building-left,
body:has(.hero#home) .home-building-right,
body:has(.hero#home) .home-diagonal{display:none}

/* Make the homepage trust highlights fully clickable without changing their appearance. */
body:has(.hero#home) .trust-item{color:inherit;text-decoration:none;border-radius:12px;transition:transform .2s ease,background-color .2s ease;cursor:pointer}
body:has(.hero#home) .trust-item:hover{transform:translateY(-2px)}
body:has(.hero#home) .trust-item:focus-visible{outline:3px solid #c12726;outline-offset:5px}
body:has(.hero#home) .trust-item small{display:block}


/* Rose Buds homepage: image-free, redesigned hero tile. All existing copy,
   navigation, links and the rest of the site remain unchanged. */
body:has(.hero#home) .hero{
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:center!important;
  min-height:570px!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  color:#302326!important;
  background:linear-gradient(112deg,#fffdf9 0%,#fbf4ed 58%,#fff 100%)!important;
}
body:has(.hero#home) .hero-slides{display:none!important;background:none!important}
body:has(.hero#home) .hero:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:-1!important;
  inset:0!important;
  background:
    radial-gradient(ellipse at 88% 18%,rgba(185,37,36,.055),transparent 34%),
    linear-gradient(150deg,transparent 0 62%,rgba(185,37,36,.035) 62.2%,transparent 78%)!important;
}
body:has(.hero#home) .hero:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:-1!important;
  left:-4%;right:-4%;bottom:-76px;height:142px!important;
  border-top:5px solid #c12726;
  border-radius:50% 48% 0 0/42% 45% 0 0;
  background:linear-gradient(180deg,rgba(193,39,38,.055),rgba(255,255,255,0))!important;
  pointer-events:none;
}
body:has(.hero#home) .hero>.container{width:min(1460px,calc(100% - 64px))!important;position:relative;z-index:1}
body:has(.hero#home) .hero-content{display:block!important;max-width:820px!important;padding:105px 0 125px!important}
body:has(.hero#home) .eyebrow{color:#9f171f!important;font-size:13px!important;letter-spacing:2.5px!important;font-weight:800!important}
body:has(.hero#home) .eyebrow:before{background:#c12726!important}
body:has(.hero#home) .hero h1{color:#74121b!important;font-size:clamp(54px,6.2vw,88px)!important;line-height:1.04!important;letter-spacing:-2.2px!important;text-shadow:none!important;margin:24px 0 20px!important}
body:has(.hero#home) .hero h1 span{color:#c12726!important}
body:has(.hero#home) .hero p{color:#55464a!important;font-size:19px!important;line-height:1.8!important;max-width:690px!important;text-shadow:none!important;margin-bottom:30px!important}
body:has(.hero#home) .hero-actions{display:flex!important;gap:14px!important;flex-wrap:wrap!important}
body:has(.hero#home) .hero-actions .btn{border-radius:30px!important;padding:16px 25px!important;font-size:15px!important;font-weight:800!important;box-shadow:0 8px 22px rgba(105,16,25,.12)!important}
body:has(.hero#home) .hero-actions .btn:not(.light){background:#b51f29!important;color:#fff!important}
body:has(.hero#home) .hero-actions .btn.light{background:#fff!important;color:#9e1720!important;border:1px solid rgba(158,23,32,.2)!important}
body:has(.hero#home) .hero-note{color:#7a5558!important}
@media(max-width:760px){
 body:has(.hero#home) .hero{min-height:0!important;height:auto!important}
 body:has(.hero#home) .hero>.container{width:calc(100% - 40px)!important}
 body:has(.hero#home) .hero-content{padding:82px 0 105px!important;max-width:100%!important}
 body:has(.hero#home) .hero h1{font-size:clamp(43px,10vw,64px)!important;letter-spacing:-1.3px!important}
 body:has(.hero#home) .hero p{font-size:16px!important;line-height:1.7!important}
 body:has(.hero#home) .hero-actions{flex-direction:column!important;align-items:flex-start!important}
 body:has(.hero#home) .hero-actions .btn{padding:14px 19px!important}
}


/* Home hero: merged, enhanced photographs of both Rose Buds campuses.
   School logo and all other page content/assets remain unchanged. */
body:has(.hero#home) .hero{
  background:#fffaf4!important;
  min-height:650px!important;
  height:auto!important;
}
body:has(.hero#home) .hero-slides{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:url('../assets/homepage-school-composite-user-final.jpg')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
body:has(.hero#home) .hero-slides > *{display:none!important}
body:has(.hero#home) .hero:before{
  z-index:0!important;
  background:linear-gradient(90deg,
    rgba(255,250,244,.98) 0%,
    rgba(255,250,244,.96) 30%,
    rgba(255,250,244,.84) 43%,
    rgba(255,250,244,.48) 56%,
    rgba(255,250,244,.08) 73%,
    rgba(255,250,244,0) 100%)!important;
}
body:has(.hero#home) .hero:after{z-index:0!important}
body:has(.hero#home) .hero>.container{z-index:1!important}
body:has(.hero#home) .hero-content{max-width:760px!important}
@media(max-width:760px){
  body:has(.hero#home) .hero{min-height:650px!important}
  body:has(.hero#home) .hero-slides{background-position:58% center!important}
  body:has(.hero#home) .hero:before{background:linear-gradient(90deg,rgba(255,250,244,.97),rgba(255,250,244,.88) 56%,rgba(255,250,244,.48))!important}
  body:has(.hero#home) .hero-content{padding:82px 0 105px!important}
}


/* Final homepage hero recreation based on the user's visual reference.
   Existing navigation, CTA destinations, trust-strip links and icon markup are untouched. */
@media (min-width: 761px) {
  body:has(.hero#home) .hero {
    position: relative !important;
    isolation: isolate !important;
    display: flex !important;
    align-items: center !important;
    min-height: 540px !important;
    height: min(72vh, 700px) !important;
    max-height: 700px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #251916 !important;
    color: #fff !important;
  }
  body:has(.hero#home) .hero-slides {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    background-image: url('../assets/homepage-school-composite-user-final.jpg') !important;
    background-size: cover !important;
    background-position: center 48% !important;
    background-repeat: no-repeat !important;
  }
  body:has(.hero#home) .hero-slides > * { display: none !important; }
  body:has(.hero#home) .hero:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    background: linear-gradient(90deg,
      rgba(22, 13, 12, .78) 0%,
      rgba(22, 13, 12, .72) 32%,
      rgba(22, 13, 12, .48) 53%,
      rgba(22, 13, 12, .15) 76%,
      rgba(22, 13, 12, .08) 100%) !important;
  }
  body:has(.hero#home) .hero:after { display: none !important; }
  body:has(.hero#home) .hero > .container {
    position: relative !important;
    z-index: 1 !important;
    width: min(1460px, calc(100% - 64px)) !important;
  }
  body:has(.hero#home) .hero-content {
    display: block !important;
    max-width: 650px !important;
    padding: 78px 0 84px !important;
  }
  body:has(.hero#home) .eyebrow {
    color: #f7e8dc !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    margin-bottom: 24px !important;
  }
  body:has(.hero#home) .eyebrow:before {
    width: 28px !important;
    background: #e9b49b !important;
  }
  body:has(.hero#home) .hero h1 {
    color: #fff !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: clamp(56px, 6.2vw, 82px) !important;
    font-weight: 800 !important;
    line-height: 1.04 !important;
    letter-spacing: -2.4px !important;
    margin: 0 0 18px !important;
    text-shadow: 0 4px 24px rgba(0,0,0,.28) !important;
  }
  body:has(.hero#home) .hero h1 span {
    color: #f3a58f !important;
  }
  body:has(.hero#home) .hero p {
    color: rgba(255,255,255,.96) !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
    max-width: 560px !important;
    margin: 0 0 26px !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.35) !important;
  }
  body:has(.hero#home) .hero-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
  }
  body:has(.hero#home) .hero-actions .btn {
    border-radius: 28px !important;
    padding: 13px 22px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    box-shadow: 0 7px 20px rgba(0,0,0,.2) !important;
  }
  body:has(.hero#home) .hero-actions .btn:not(.light) {
    background: #bd2927 !important;
    color: #fff !important;
  }
  body:has(.hero#home) .hero-actions .btn.light {
    background: #fff !important;
    color: #8e1a1e !important;
    border: 1px solid rgba(255,255,255,.8) !important;
  }
  body:has(.hero#home) .hero-note {
    display: block !important;
    margin-top: 24px !important;
    color: rgba(255,245,238,.95) !important;
    font-size: 12px !important;
    letter-spacing: .2px !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  }
}
@media (max-width: 760px) {
  body:has(.hero#home) .hero {
    position: relative !important;
    min-height: 660px !important;
    height: auto !important;
    max-height: none !important;
    background: #261716 !important;
    color: #fff !important;
  }
  body:has(.hero#home) .hero-slides {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    background-image: url('../assets/homepage-school-composite-user-final.jpg') !important;
    background-size: cover !important;
    background-position: 58% center !important;
  }
  body:has(.hero#home) .hero-slides > * { display: none !important; }
  body:has(.hero#home) .hero:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    background: linear-gradient(90deg, rgba(22,13,12,.84), rgba(22,13,12,.56)) !important;
  }
  body:has(.hero#home) .hero:after { display: none !important; }
  body:has(.hero#home) .hero > .container {
    position: relative !important;
    z-index: 1 !important;
    width: calc(100% - 40px) !important;
  }
  body:has(.hero#home) .hero-content {
    display: block !important;
    max-width: 100% !important;
    padding: 94px 0 100px !important;
  }
  body:has(.hero#home) .eyebrow { color: #f7e8dc !important; letter-spacing: 2px !important; }
  body:has(.hero#home) .hero h1 {
    color: #fff !important;
    font-size: clamp(43px, 10vw, 64px) !important;
    line-height: 1.05 !important;
    letter-spacing: -1.5px !important;
    margin: 22px 0 18px !important;
  }
  body:has(.hero#home) .hero h1 span { color: #f3a58f !important; }
  body:has(.hero#home) .hero p {
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    max-width: 100% !important;
  }
  body:has(.hero#home) .hero-actions { display: flex !important; gap: 12px !important; flex-wrap: wrap !important; }
  body:has(.hero#home) .hero-actions .btn { padding: 13px 18px !important; }
  body:has(.hero#home) .hero-note { display: block !important; margin-top: 24px !important; color: #fff1e9 !important; font-size: 12px !important; }
}

/* Current homepage hero: supplied twin-facade school photograph.
   Existing header logo, navigation, trust-strip icons and links are untouched. */
body:has(.hero#home) .hero{position:relative!important;isolation:isolate!important;display:flex!important;align-items:center!important;min-height:570px!important;height:min(74vh,720px)!important;max-height:760px!important;overflow:hidden!important;background:#251916!important;color:#fff!important}
body:has(.hero#home) .hero-slides{display:block!important;position:absolute!important;inset:0!important;z-index:0!important;background-image:url('../assets/rose-buds-twin-facades-hero.jpg')!important;background-size:cover!important;background-position:center 50%!important;background-repeat:no-repeat!important}
body:has(.hero#home) .home-image-shade{position:absolute!important;inset:0!important;z-index:0!important;background:linear-gradient(90deg,rgba(22,12,12,.80) 0%,rgba(22,12,12,.68) 36%,rgba(22,12,12,.30) 62%,rgba(22,12,12,.08) 100%)!important}
body:has(.hero#home) .hero:before,body:has(.hero#home) .hero:after{display:none!important}
body:has(.hero#home) .hero>.container{position:relative!important;z-index:1!important;width:min(1460px,calc(100% - 64px))!important}
body:has(.hero#home) .hero-content{display:block!important;max-width:680px!important;padding:78px 0 84px!important}
body:has(.hero#home) .eyebrow{color:#ffe7dc!important;font-size:12px!important;font-weight:800!important;letter-spacing:2.4px!important;text-transform:uppercase!important;margin-bottom:22px!important}
body:has(.hero#home) .eyebrow:before{background:#efb18f!important}
body:has(.hero#home) .hero h1{color:#fff!important;font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(54px,6vw,82px)!important;line-height:1.04!important;letter-spacing:-2px!important;margin:0 0 18px!important;text-shadow:0 4px 22px rgba(0,0,0,.3)!important}
body:has(.hero#home) .hero h1 span{color:#ffb19a!important}
body:has(.hero#home) .hero p{color:#fff!important;font-size:17px!important;line-height:1.72!important;max-width:560px!important;margin:0 0 25px!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important}
body:has(.hero#home) .hero-actions{display:flex!important;flex-direction:row!important;align-items:center!important;gap:13px!important;flex-wrap:wrap!important}
body:has(.hero#home) .hero-actions .btn{display:inline-flex!important;align-items:center!important;gap:10px!important;border-radius:28px!important;padding:14px 22px!important;font-size:14px!important;font-weight:800!important;box-shadow:0 7px 20px rgba(0,0,0,.22)!important;text-decoration:none!important}
body:has(.hero#home) .hero-actions .btn:not(.light){background:#bd2927!important;color:#fff!important}
body:has(.hero#home) .hero-actions .btn.light{background:#fff!important;color:#8e1a1e!important;border:1px solid rgba(255,255,255,.85)!important}
body:has(.hero#home) .hero-action-icon{font-size:18px!important;line-height:1!important}
body:has(.hero#home) .hero-note{display:inline-block!important;margin-top:25px!important;padding:10px 15px!important;border-left:3px solid #e7b65f!important;background:rgba(72,17,18,.55)!important;color:#fff7ed!important;font-size:13px!important;font-weight:700!important;letter-spacing:.2px!important;text-shadow:0 2px 10px rgba(0,0,0,.3)!important}
@media(max-width:760px){
 body:has(.hero#home) .hero{min-height:650px!important;height:auto!important;max-height:none!important}
 body:has(.hero#home) .hero-slides{background-position:58% center!important}
 body:has(.hero#home) .home-image-shade{background:linear-gradient(90deg,rgba(22,12,12,.82),rgba(22,12,12,.52))!important}
 body:has(.hero#home) .hero>.container{width:calc(100% - 40px)!important}
 body:has(.hero#home) .hero-content{padding:86px 0 90px!important;max-width:100%!important}
 body:has(.hero#home) .hero h1{font-size:clamp(43px,10vw,64px)!important;letter-spacing:-1.3px!important}
 body:has(.hero#home) .hero p{font-size:16px!important}
 body:has(.hero#home) .hero-actions{flex-direction:column!important;align-items:flex-start!important}
}

/* Hero motto headline update */
body:has(.hero#home) .hero h1{
  max-width:720px!important;
  font-size:clamp(48px,5.4vw,74px)!important;
  line-height:1.08!important;
}
body:has(.hero#home) .hero h1 span{
  color:#ffb19a!important;
}

/* Second concept: maroon-and-gold editorial hero with twin campus photograph */
body:has(#home.rb-second-hero) #home{}
#home.hero{
  position:relative!important;display:block!important;isolation:isolate!important;
  min-height:650px!important;height:min(76vh,790px)!important;max-height:820px!important;
  overflow:hidden!important;background:#5a0714!important;color:#fff!important;
}
#home .rb-second-hero-photo{
  position:absolute!important;inset:0 0 0 39%!important;z-index:-1!important;
  background-image:url('../assets/rose-buds-twin-facades-hero.jpg')!important;
  background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;
}
#home .rb-second-hero-shade{
  position:absolute!important;inset:0!important;z-index:-1!important;
  background:linear-gradient(90deg,#590713 0%,#690b1b 35%,rgba(105,11,27,.97) 39%,rgba(105,11,27,.62) 45%,rgba(105,11,27,0) 58%)!important;
}
#home .rb-second-hero-copy{
  position:relative!important;z-index:2!important;box-sizing:border-box!important;
  width:52%!important;max-width:760px!important;padding:70px 42px 112px clamp(34px,5.2vw,92px)!important;
}
#home .rb-hero-schoolname{
  color:#fff!important;font-family:Georgia,serif!important;font-size:clamp(22px,2.6vw,36px)!important;
  line-height:1.25!important;letter-spacing:4px!important;text-align:center!important;
  margin:0 0 28px!important;text-transform:uppercase!important;font-weight:500!important;
}
#home .rb-hero-schoolname span{font-family:Arial,sans-serif!important;font-size:.62em!important;letter-spacing:7px!important}
#home .rb-hero-divider{width:118px!important;height:3px!important;background:#e9bd5c!important;margin:0 auto 36px!important}
#home h1{
  color:#fff!important;font-family:'Playfair Display',Georgia,serif!important;
  font-size:clamp(40px,4.4vw,68px)!important;line-height:1.08!important;
  letter-spacing:-1.4px!important;margin:0 0 26px!important;text-shadow:0 3px 16px rgba(0,0,0,.16)!important;
}
#home h1 span{color:#f5cf70!important}
#home .rb-second-hero-copy p{
  color:#fff4ec!important;font-size:clamp(16px,1.45vw,21px)!important;line-height:1.6!important;
  margin:0 0 42px!important;max-width:540px!important;
}
#home .hero-actions{display:flex!important;gap:18px!important;align-items:center!important;flex-wrap:wrap!important}
#home .hero-actions .btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;
  min-height:54px!important;padding:0 26px!important;border-radius:32px!important;
  font-size:15px!important;font-weight:800!important;text-decoration:none!important;
}
#home .hero-actions .rb-hero-explore{background:#ffe6a6!important;color:#64101a!important;border:1px solid #ffe6a6!important}
#home .hero-actions .rb-hero-call{background:transparent!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.92)!important}
#home .hero-action-icon{font-size:19px!important}
#home .rb-hero-gold-wave{
  position:absolute!important;left:-2%;right:-2%;bottom:-3px!important;height:76px!important;z-index:3!important;
  background:#79091b!important;border-top:8px solid #edc15e!important;
  clip-path:polygon(0 15%,18% 65%,36% 76%,54% 46%,72% 32%,88% 58%,100% 20%,100% 100%,0 100%)!important;
}
@media(max-width:800px){
  #home.hero{height:auto!important;min-height:780px!important;max-height:none!important}
  #home .rb-second-hero-photo{inset:0!important;background-position:58% center!important}
  #home .rb-second-hero-shade{background:linear-gradient(90deg,rgba(76,5,17,.96),rgba(76,5,17,.80) 65%,rgba(76,5,17,.50))!important}
  #home .rb-second-hero-copy{width:100%!important;max-width:100%!important;padding:76px 26px 130px!important}
  #home .rb-hero-schoolname{margin-bottom:24px!important}
  #home .rb-hero-divider{margin-bottom:28px!important}
  #home h1{font-size:clamp(42px,10vw,60px)!important}
  #home .rb-desktop-break{display:none!important}
  #home .hero-actions{align-items:stretch!important;flex-direction:column!important;max-width:300px!important}
  #home .hero-actions .btn{width:100%!important;box-sizing:border-box!important}
  #home .rb-hero-gold-wave{height:54px!important}
}

/* Heritage feature strip styled to match the supplied homepage reference */
body:has(.hero#home) .rb-heritage-strip{
  background:#fbf7f1!important;
  border-top:1px solid rgba(125,18,27,.08)!important;
  padding:22px 0 20px!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  gap:0!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-item{
  min-height:82px!important;display:flex!important;align-items:center!important;
  gap:20px!important;padding:8px 26px!important;box-sizing:border-box!important;
  border-radius:0!important;transform:none!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-item:not(:last-child){
  border-right:1px solid #c89b69!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-icon{
  width:104px!important;height:78px!important;flex:0 0 104px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  color:#a96808!important;background:transparent!important;border-radius:0!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-icon svg{width:100%!important;height:100%!important;display:block!important}
body:has(.hero#home) .rb-heritage-strip .trust-copy{display:block!important;min-width:0!important}
body:has(.hero#home) .rb-heritage-strip .trust-copy b{
  display:block!important;color:#74101b!important;font-family:Georgia,serif!important;
  font-size:clamp(17px,1.55vw,25px)!important;line-height:1.2!important;margin-bottom:7px!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-copy small{
  display:block!important;color:#393536!important;font-size:clamp(12px,1.05vw,16px)!important;
  line-height:1.45!important;max-width:290px!important;
}
body:has(.hero#home) .rb-heritage-strip .trust-item:hover{background:rgba(157,93,20,.045)!important}
@media(max-width:900px){
 body:has(.hero#home) .rb-heritage-strip .trust-grid{grid-template-columns:1fr!important}
 body:has(.hero#home) .rb-heritage-strip .trust-item{padding:15px 22px!important;min-height:76px!important}
 body:has(.hero#home) .rb-heritage-strip .trust-item:not(:last-child){border-right:0!important;border-bottom:1px solid #d8b98f!important}
 body:has(.hero#home) .rb-heritage-strip .trust-icon{width:82px!important;height:68px!important;flex-basis:82px!important}
 body:has(.hero#home) .rb-heritage-strip .trust-copy b{font-size:20px!important}
 body:has(.hero#home) .rb-heritage-strip .trust-copy small{font-size:14px!important}
}

/* Align the school name to the left as requested; preserve hero controls and layout */
#home .rb-hero-schoolname{
  text-align:left!important;
  margin-left:0!important;
  margin-right:auto!important;
}
#home .rb-hero-schoolname span{
  text-align:left!important;
}


/* Homepage hero divider: align the gold line to the left under the school name. */
#home .rb-hero-divider{margin-left:0!important;margin-right:auto!important}
