/* Theme variables */
:root{
  --navy:#071d32;
  --navy-mid:#0d314d;
  --navy-soft:#173f5a;
  --teal:#0d7b80;
  --teal-light:#eaf5f4;
  --gold:#d7a843;
  --gold-dark:#b78625;
  --cream:#f7f3ec;
  --mist:#eef4f5;
  --paper:#ffffff;
  --ink:#112438;
  --muted:#65768a;
  --line:#dce4ea;
  --shadow:0 24px 64px rgba(7,29,50,.13);
  --shadow-soft:0 12px 34px rgba(7,29,50,.08);
  --radius:22px;
  --container:min(1180px,92vw);
}

/* Base and typography */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:#fff;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.66;
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
.container{width:var(--container);margin:auto}

/* Header and navigation */
.topbar{
  background:#061828;
  color:#d6e1e9;
  font-size:.75rem;
}
.topbar .container{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

.header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(17,36,56,.08);
  box-shadow:0 10px 28px rgba(7,29,50,.055);
}
.nav{
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
}
.brand{
  display:flex;
  align-items:center;
  gap:.72rem;
  min-width:220px;
}
.brand-mark{
  width:62px;
  height:62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(7,29,50,.16);
  flex:0 0 auto;
}
.brand-mark img{width:100%;height:100%;object-fit:cover}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.55rem;
  color:var(--navy);
}
.brand-copy small{
  margin-top:.3rem;
  color:var(--muted);
  font-size:.65rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  white-space:nowrap;
}

.menu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:1.2rem;
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.025em;
}
.menu>a:not(.cta){
  padding:1.85rem 0;
  position:relative;
  white-space:nowrap;
}
.menu>a:not(.cta)::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:17px;
  height:2px;
  border-radius:2px;
  background:var(--gold);
  transition:.25s ease;
}
.menu>a:hover::after,.menu>a.active::after{right:0}
.menu>a:hover,.menu>a.active{color:var(--teal)}

.cta,.btn{
  min-height:47px;
  padding:.84rem 1.25rem;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  border:1px solid var(--gold);
  background:var(--gold);
  color:#10243a;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
  transition:.25s ease;
}
.cta:hover,.btn:hover{
  transform:translateY(-2px);
  background:var(--gold-dark);
  border-color:var(--gold-dark);
  box-shadow:0 14px 28px rgba(183,134,37,.24);
}
.btn-outline{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.46);
}
.btn-outline:hover{
  color:var(--navy);
  background:#fff;
  border-color:#fff;
}
.hamb{
  display:none;
  width:44px;height:44px;
  border-radius:50%;
  border:1px solid var(--line);
  background:#fff;
  color:var(--navy);
  font-size:1.25rem;
}

.hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:
    radial-gradient(circle at 86% 20%,rgba(215,168,67,.18),transparent 23%),
    radial-gradient(circle at 75% 78%,rgba(13,123,128,.34),transparent 30%),
    linear-gradient(135deg,#061a2d 0%,#0b2d49 58%,#0d5960 100%);
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.25;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:46px 46px;
}
.hero-inner{
  min-height:575px;
  padding:5rem 0;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  align-items:center;
  gap:4.25rem;
}
.hero-copy{max-width:650px}
.eyebrow{
  color:var(--gold);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.hero h1,.title,.page-hero h1{
  font-family:Georgia,"Times New Roman",serif;
}
.hero h1{
  margin:.45rem 0 1.2rem;
  max-width:700px;
  font-size:clamp(2.85rem,5vw,4.95rem);
  line-height:1.01;
  letter-spacing:-.035em;
}
.hero h1 span{color:#efc56b}
.hero p{
  max-width:620px;
  color:rgba(255,255,255,.76);
  font-size:1rem;
}
.actions{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  margin-top:1.8rem;
}
.hero-proof{
  margin-top:1.7rem;
  display:flex;
  flex-wrap:wrap;
  gap:.7rem 1.35rem;
  color:rgba(255,255,255,.64);
  font-size:.72rem;
}
.hero-proof span{
  display:flex;
  align-items:center;
  gap:.35rem;
}
.hero-proof span::before{
  content:"";
  width:5px;height:5px;
  background:var(--gold);
  border-radius:50%;
}
.hero-proof b{color:#fff}

.hero-panel{
  position:relative;
  overflow:hidden;
  padding:2rem;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.17);
  background:
    linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.045));
  backdrop-filter:blur(18px);
  box-shadow:0 34px 85px rgba(0,0,0,.22);
}
.hero-panel::before{
  content:"";
  position:absolute;
  width:230px;height:230px;
  border:1px solid rgba(215,168,67,.25);
  border-radius:50%;
  right:-90px;top:-90px;
}
.hero-panel::after{
  content:"";
  position:absolute;
  width:130px;height:130px;
  border-radius:28px;
  background:rgba(13,123,128,.19);
  right:34px;bottom:-70px;
  transform:rotate(22deg);
}
.hero-panel h3{
  margin:.35rem 0 1.2rem;
  max-width:430px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.85rem;
  line-height:1.15;
}
.pathway{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:46px 1fr;
  gap:.9rem;
  padding:1rem 0;
  border-top:1px solid rgba(255,255,255,.13);
}
.pathway:first-of-type{border-top:0}
.pathway-icon{
  width:46px;height:46px;
  display:grid;place-items:center;
  border-radius:15px;
  background:rgba(215,168,67,.14);
  color:#efc56b;
  font-size:.75rem;
  font-weight:800;
}
.pathway strong{display:block;font-size:.9rem}
.pathway span{display:block;color:rgba(255,255,255,.65);font-size:.79rem}

.trust-strip{
  background:#fff;
  border-bottom:1px solid var(--line);
  box-shadow:0 14px 36px rgba(7,29,50,.055);
}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-item{
  min-height:98px;
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.8rem;
  align-items:center;
  padding:1.15rem;
  border-right:1px solid var(--line);
}
.trust-item:last-child{border-right:0}
.trust-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:13px;
  color:var(--teal);
  background:var(--teal-light);
  font-weight:800;
}
.trust-item strong{display:block;font-size:.88rem}
.trust-item span{display:block;color:var(--muted);font-size:.74rem}

.section{padding:6rem 0}
.section.alt{background:var(--cream)}
.section.soft{background:var(--mist)}
.section.dark{
  color:#fff;
  background:
    radial-gradient(circle at 94% 8%,rgba(13,123,128,.25),transparent 22%),
    linear-gradient(145deg,#061a2d,#0c3049);
}
.title{
  margin:.4rem 0 1rem;
  max-width:820px;
  font-size:clamp(2.45rem,4.2vw,4.1rem);
  line-height:1.06;
  letter-spacing:-.03em;
}
.lead{color:var(--muted);max-width:760px}
.dark .lead{color:rgba(255,255,255,.7)}

.intro-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:4.5rem;
  align-items:center;
}
.intro-visual{
  min-height:420px;
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background:
    radial-gradient(circle at 22% 28%,rgba(215,168,67,.38),transparent 22%),
    radial-gradient(circle at 75% 70%,rgba(13,123,128,.45),transparent 28%),
    linear-gradient(135deg,#0a2c47,#0e6570);
  box-shadow:var(--shadow);
}
.intro-visual::before{
  content:"";
  position:absolute;
  inset:8%;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.2);
}
.intro-card{
  position:absolute;
  width:58%;
  padding:1.15rem 1.2rem;
  border-radius:17px;
  background:rgba(255,255,255,.95);
  box-shadow:var(--shadow-soft);
}
.intro-card.one{left:8%;top:16%}
.intro-card.two{right:8%;bottom:13%}
.intro-card strong{display:block;color:var(--navy)}
.intro-card span{display:block;color:var(--muted);font-size:.78rem}
.benefits{display:grid;gap:1rem;margin-top:1.5rem}
.benefit{display:grid;grid-template-columns:42px 1fr;gap:.85rem}
.benefit-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:13px;
  color:var(--teal);
  background:var(--teal-light);
  font-weight:800;
}
.benefit strong{display:block}
.benefit span{display:block;color:var(--muted);font-size:.8rem}

.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:2rem;
  margin-bottom:2.5rem;
}
.section-head>div:first-child{max-width:780px}
.text-link{color:var(--teal);font-weight:800;white-space:nowrap}

.cards,.case-grid,.review-grid,.blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.3rem;
}
/* Shared cards and content */
.card{
  overflow:hidden;
  border:1px solid rgba(17,36,56,.08);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow-soft);
  transition:.28s ease;
}
.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.card-media{
  min-height:165px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 24%,rgba(215,168,67,.46),transparent 22%),
    radial-gradient(circle at 18% 75%,rgba(13,123,128,.44),transparent 28%),
    linear-gradient(135deg,#0b2943,#165168);
}
.card-media::after{
  content:"";
  position:absolute;
  inset:18%;
  border:1px solid rgba(255,255,255,.22);
  border-radius:22px;
  transform:rotate(-7deg);
}
.card-body{padding:1.3rem}
.card h3{
  margin:.2rem 0 .55rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  line-height:1.15;
}
.card p{color:var(--muted)}
.link{
  color:var(--navy);
  font-size:.77rem;
  font-weight:800;
  text-transform:uppercase;
}
.link span{color:var(--gold-dark)}

.stats{background:#071d32;color:#fff}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{
  padding:2rem 1rem;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.14);
}
.stat:last-child{border-right:0}
.stat strong{
  display:block;
  color:#efc56b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2.15rem;
}
.stat span{font-size:.76rem;color:rgba(255,255,255,.67)}

.study-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:3.3rem;
  align-items:center;
}
.study-visual{
  min-height:450px;
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background:
    radial-gradient(circle at 25% 24%,rgba(215,168,67,.35),transparent 22%),
    linear-gradient(135deg,#dceff0 0 43%,#0d7277 44% 68%,#0b344e 69%);
  box-shadow:var(--shadow);
}
.study-visual::before{
  content:"";
  position:absolute;
  width:260px;height:260px;
  left:50%;top:50%;
  border:1px solid rgba(255,255,255,.32);
  border-radius:50%;
  transform:translate(-50%,-50%);
}
.study-visual::after{
  content:"Tasmania";
  position:absolute;
  left:2rem;bottom:1.4rem;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:3rem;
}
.study-list{display:grid;gap:.85rem;margin-top:1.5rem}
.study-link{
  padding:1rem 1.05rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  transition:.25s ease;
}
.study-link:hover{transform:translateX(4px);border-color:var(--teal)}
.study-link strong{display:block}
.study-link span{display:block;color:var(--muted);font-size:.76rem}

.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.team-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.team-photo{
  height:235px;
  background:
    radial-gradient(circle at 50% 33%,#dce9ed 0 20%,transparent 21%),
    linear-gradient(135deg,#eef5f6,#d4e4e8);
}
.team-photo img{width:100%;height:100%;object-fit:cover}
.team-card .card-body{padding:1.1rem}
.team-card h3{font-size:1.05rem}
.role{color:var(--teal);font-size:.75rem;font-weight:800}
.bio{max-height:4.8rem;overflow:hidden;color:var(--muted);font-size:.8rem}
.bio.open{max-height:none}
.readmore{padding:0;border:0;background:none;color:var(--navy);font-weight:800;cursor:pointer}

.case-card{
  overflow:hidden;
  border-radius:18px;
  background:#fff;
  color:var(--ink);
  box-shadow:var(--shadow-soft);
}
.case-top{
  min-height:120px;
  padding:1rem;
  background:
    radial-gradient(circle at 84% 26%,rgba(215,168,67,.46),transparent 23%),
    linear-gradient(135deg,#dcebed,#f5f8f8);
}
.case-body{padding:1.25rem}
.case-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem}

.review{
  padding:1.35rem;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.stars{color:#f2ad19;letter-spacing:.12em}
.review p{color:var(--muted)}

/* Internal page banners */
.page-hero{
  padding:4.5rem 0;
  color:#fff;
  background:
    radial-gradient(circle at 90% 18%,rgba(215,168,67,.17),transparent 22%),
    linear-gradient(135deg,#061a2d,#0c4f58);
}
.page-hero h1{
  margin:.35rem 0 0;
  font-size:clamp(2.7rem,4.8vw,4.7rem);
  line-height:1.05;
}

.case-detail{
  overflow:hidden;
  border:1px solid #aeb9c2;
  border-radius:14px;
  background:#fff;
}
.case-detail .bar{padding:1rem 1.2rem;background:#3e7898;color:#fff;font-weight:800}
.case-cols{display:grid;grid-template-columns:1.06fr .94fr}
.case-text{padding:1.55rem;border-right:1px solid #aeb9c2}
.case-text p{white-space:pre-line}
.case-video{min-height:430px;padding:1rem}
.case-video iframe{width:100%;height:410px;border:0}

.booking-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.booking-card,.office-card,.form-card{
  padding:1.75rem;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.booking-card.free{border-top:4px solid var(--teal)}
.booking-card.paid{border-top:4px solid var(--gold)}
.acuity{
  margin-top:2rem;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.acuity iframe{
  width:100%;
  height:980px;
  display:block;
  border:0;
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.full{grid-column:1/-1}
label{font-size:.81rem;font-weight:800}
input,textarea,select{
  width:100%;
  margin-top:.35rem;
  padding:.9rem 1rem;
  border:1px solid #cbd5de;
  border-radius:10px;
  background:#fff;
}
input:focus,textarea:focus,select:focus{
  outline:none;
  border-color:var(--teal);
  box-shadow:0 0 0 4px rgba(13,123,128,.11);
}
textarea{min-height:150px;resize:vertical}

/* Footer */
.footer{
  padding:4rem 0 1rem;
  color:#cad7e1;
  background:#061828;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr 1fr;
  gap:2rem;
}
.footer h4,.footer h3{color:#fff}
.footer a{display:block;margin:.4rem 0}
.footer-brand{
  display:flex;
  align-items:center;
  gap:1rem;
}
.footer-logo{
  width:106px;height:106px;
  border-radius:50%;
  object-fit:cover;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}
.footer-brand h3{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.7rem;
}
.footer-brand p{margin:.35rem 0 0;max-width:250px}
.copyright{
  margin-top:2.5rem;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.12);
  font-size:.7rem;
}

@media(max-width:1080px){
  .brand{min-width:auto}
  .brand-copy{display:none}
  .menu{gap:.8rem;font-size:.69rem}
  .hero-inner{gap:2.5rem}
  .team-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .hamb{display:block}
  .menu{
    position:fixed;
    left:0;right:0;top:84px;
    padding:1rem 5%;
    flex-direction:column;
    align-items:stretch;
    background:#fff;
    box-shadow:var(--shadow-soft);
    transform:translateY(-130%);
    opacity:0;
    pointer-events:none;
    transition:.3s ease;
  }
  .menu.open{transform:none;opacity:1;pointer-events:auto}
  .menu>a:not(.cta){padding:.72rem 0}
  .menu>a:not(.cta)::after{bottom:3px}
  .menu .cta{width:100%}
  .hero-inner,.intro-grid,.study-grid,.case-cols{grid-template-columns:1fr}
  .hero-inner{min-height:auto;padding:4.8rem 0}
  .hero-panel{max-width:650px}
  .trust-grid,.cards,.case-grid,.review-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .case-text{border-right:0;border-bottom:1px solid #aeb9c2}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .topbar{display:none}
  .nav{min-height:72px}
  .brand-mark{width:54px;height:54px}
  .menu{top:72px}
  .hero-inner{padding:4.1rem 0}
  .hero h1{font-size:2.85rem}
  .hero-panel{padding:1.35rem;border-radius:22px}
  .hero-panel h3{font-size:1.55rem}
  .hero-proof{display:grid;gap:.4rem}
  .section{padding:4.5rem 0}
  .section-head{display:block}
  .section-head .text-link{display:inline-block;margin-top:1rem}
  .trust-grid,.cards,.case-grid,.review-grid,.blog-grid,.team-grid,.stats-grid,
  .booking-grid,.contact-grid,.form-grid,.footer-grid{
    grid-template-columns:1fr;
  }
  .trust-item,.stat{border-right:0;border-bottom:1px solid var(--line)}
  .stat{border-bottom-color:rgba(255,255,255,.14)}
  .study-visual{min-height:340px}
  .study-visual::after{font-size:2.35rem}
  .case-video iframe{height:330px}
  .acuity iframe{height:1200px}
  .footer-brand{align-items:flex-start}
  .footer-logo{width:88px;height:88px}
}

.about-page-hero{padding-bottom:7.2rem}.about-card-section{padding-top:0;margin-top:-4.5rem;position:relative;z-index:4}.about-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch}.about-info-card{position:relative;padding:2rem 1.7rem;border:1px solid rgba(17,36,56,.08);border-radius:20px;background:#fff;box-shadow:0 20px 50px rgba(7,29,50,.11)}.about-info-card.featured{transform:translateY(-16px);border-color:rgba(13,123,128,.22)}.about-card-line{width:46px;height:4px;display:block;margin-bottom:1.15rem;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--gold))}.about-info-card h2{margin:.35rem 0 1rem;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:1.85rem;line-height:1.15}.about-card-copy,.about-info-card p{color:var(--muted);font-size:.9rem}.about-long-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:4rem;align-items:start}.about-long-copy p{margin-top:0;margin-bottom:1.1rem;color:var(--muted)}.about-team-grid{grid-template-columns:repeat(4,1fr)}.team-actions{margin-top:.9rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.email-icon{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:.95rem;box-shadow:0 8px 18px rgba(7,29,50,.17);transition:.22s ease}.email-icon:hover{transform:translateY(-2px);background:var(--teal);box-shadow:0 12px 24px rgba(13,123,128,.22)}.floating-contact{position:fixed;right:24px;bottom:24px;z-index:150;display:flex;flex-direction:column;align-items:flex-end;gap:.7rem}.floating-toggle{width:58px;height:58px;border:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--teal),#0a5960);color:#fff;font-size:2rem;line-height:1;cursor:pointer;box-shadow:0 18px 38px rgba(7,29,50,.26);transition:.25s ease}.floating-contact.open .floating-toggle{transform:rotate(45deg);background:var(--navy)}.floating-options{display:grid;gap:.6rem;opacity:0;transform:translateY(12px) scale(.95);pointer-events:none;transition:.22s ease}.floating-contact.open .floating-options{opacity:1;transform:none;pointer-events:auto}.floating-option{min-width:148px;padding:.65rem .8rem;display:flex;align-items:center;gap:.7rem;border-radius:999px;color:#fff;box-shadow:0 12px 28px rgba(7,29,50,.19);font-size:.78rem;font-weight:800}.floating-option span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.18);font-size:.65rem}.floating-option.whatsapp{background:#169b55}.floating-option.messenger{background:#1967d2}.floating-option:hover{transform:translateX(-3px)}@media(max-width:950px){.about-card-grid{grid-template-columns:1fr}.about-info-card.featured{transform:none}.about-long-grid{grid-template-columns:1fr;gap:1.5rem}.about-team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.about-page-hero{padding-bottom:6rem}.about-card-section{margin-top:-3.4rem}.about-info-card{padding:1.45rem}.about-team-grid{grid-template-columns:1fr}.floating-contact{right:16px;bottom:16px}.floating-toggle{width:54px;height:54px}}

.rich-editor{overflow:hidden;border:1px solid #cbd6de;border-radius:14px;background:#fff}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.4rem;padding:.65rem;border-bottom:1px solid #dce5eb;background:#f4f7f9}.editor-toolbar button,.editor-select{min-height:36px;padding:.45rem .65rem;border:1px solid #ccd7df;border-radius:8px;background:#fff;color:#071d32;font-size:.72rem;font-weight:800;cursor:pointer}.editor-surface{min-height:440px;padding:1.35rem;outline:none;line-height:1.75}.editor-surface:empty:before{content:attr(data-placeholder);color:#9aa8b4}.editor-surface img{max-width:100%;border-radius:12px}.editor-help{display:block;margin-top:.55rem;color:#65768a}.editor-cover-preview{width:180px;height:110px;margin-top:.65rem;object-fit:cover;border-radius:10px}.blog-meta{display:flex;justify-content:space-between;gap:.8rem;color:#0d7b80;font-size:.69rem;font-weight:800;text-transform:uppercase}.blog-meta time{color:#65768a;text-transform:none}.post-date{margin-top:1rem;color:rgba(255,255,255,.68)}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start}.article-cover{width:100%;max-height:480px;object-fit:cover;border-radius:22px;box-shadow:0 24px 64px rgba(7,29,50,.13);margin-bottom:2rem}.article-content{font-size:1rem;line-height:1.85}.article-content h2,.article-content h3,.article-content h4{font-family:Georgia,"Times New Roman",serif;color:#071d32;margin:2rem 0 .7rem}.article-content h2{font-size:2rem}.article-content h3{font-size:1.55rem}.article-content blockquote{margin:1.6rem 0;padding:1rem 1.2rem;border-left:4px solid #d7a843;background:#f7f3ec;font-style:italic}.article-content img{width:100%;max-height:650px;object-fit:contain;border-radius:18px;box-shadow:0 12px 34px rgba(7,29,50,.08)}.article-content figcaption{text-align:center;color:#65768a;font-size:.78rem}.article-sidebar{position:sticky;top:110px}.article-side-card{padding:1.45rem;border:1px solid #dce4ea;border-radius:18px;background:#f7f3ec;box-shadow:0 12px 34px rgba(7,29,50,.08)}@media(max-width:900px){.article-layout{grid-template-columns:1fr}.article-sidebar{position:static}}@media(max-width:650px){.editor-surface{min-height:360px;padding:1rem}.editor-toolbar button,.editor-select{font-size:.66rem;padding:.4rem .5rem}}

.hero-office{
  min-height:590px;
  display:grid;
  grid-template-columns:minmax(0,48%) minmax(0,52%);
  color:#fff;
  background:var(--navy);
  overflow:hidden;
}

.hero-office-copy{
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
  padding:5rem max(4vw,calc((100vw - 1180px)/2));
  background:
    radial-gradient(circle at 82% 18%,rgba(215,168,67,.15),transparent 26%),
    linear-gradient(145deg,#061a2d,#0b304a);
}

.hero-office-copy::after{
  content:"";
  position:absolute;
  width:310px;
  height:310px;
  right:-125px;
  bottom:-145px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  pointer-events:none;
}

.hero-copy-inner{
  width:min(620px,100%);
  position:relative;
  z-index:2;
}

.hero-office h1{
  max-width:620px;
  margin:.5rem 0 1.2rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,5.1vw,5.1rem);
  line-height:1;
  letter-spacing:-.038em;
}

.hero-office h1 span{
  color:#efc56b;
}

.hero-office p{
  max-width:590px;
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:1rem;
}

.hero-office-image{
  position:relative;
  min-width:0;
  min-height:590px;
  background:
    linear-gradient(
      90deg,
      rgba(6,26,45,.48) 0%,
      rgba(6,26,45,.15) 16%,
      rgba(6,26,45,0) 38%
    ),
    linear-gradient(
      0deg,
      rgba(6,26,45,.22) 0%,
      rgba(6,26,45,0) 32%
    ),
    url("images/equinox-office-hobart.webp") center center / cover no-repeat;
}

.hero-office-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 44%);
  pointer-events:none;
}

.hero-office-badge{
  position:absolute;
  left:2rem;
  bottom:2rem;
  z-index:3;
  max-width:280px;
  padding:.95rem 1.1rem;
  border:1px solid rgba(255,255,255,.2);
  border-radius:15px;
  background:rgba(6,26,45,.73);
  backdrop-filter:blur(13px);
  box-shadow:0 16px 36px rgba(0,0,0,.2);
}

.hero-office-badge span{
  display:block;
  margin-bottom:.25rem;
  color:#efc56b;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.hero-office-badge strong{
  color:#fff;
  font-size:.9rem;
}

@media(max-width:1000px){
  .hero-office{
    grid-template-columns:1fr 1fr;
  }

  .hero-office-copy{
    padding-left:5vw;
    padding-right:5vw;
  }

  .hero-office h1{
    font-size:clamp(2.8rem,5.5vw,4.4rem);
  }
}

@media(max-width:820px){
  .hero-office{
    grid-template-columns:1fr;
  }

  .hero-office-copy{
    min-height:500px;
    padding:4.5rem 5vw;
  }

  .hero-office-image{
    min-height:420px;
    background-position:center center;
  }
}

@media(max-width:650px){
  .hero-office-copy{
    min-height:auto;
    padding:4rem 5vw 3.5rem;
  }

  .hero-office h1{
    font-size:2.85rem;
  }

  .hero-office p{
    font-size:.95rem;
  }

  .hero-office-image{
    min-height:330px;
    background-position:61% center;
  }

  .hero-office-badge{
    left:1rem;
    right:1rem;
    bottom:1rem;
    max-width:none;
  }
}

.header{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  z-index:100;
  width:100%;
  background:#fff !important;
  backdrop-filter:none !important;
}

.nav{
  position:relative !important;
  transform:none !important;
  min-height:78px;
}

.brand{
  min-width:205px;
}

.brand-mark{
  width:54px;
  height:54px;
}

.brand-copy strong{
  font-size:1.38rem;
}

.menu{
  position:relative;
  transform:none;
}

/* Homepage hero */
.compact-hero{
  padding:26px 0 38px;
  background:
    radial-gradient(circle at 15% 25%,rgba(215,168,67,.08),transparent 22%),
    #f3f6f7;
}

.compact-hero-shell{
  min-height:465px;
  display:grid;
  grid-template-columns:minmax(0,43%) minmax(0,57%);
  overflow:hidden;
  border-radius:24px;
  background:#071d32;
  box-shadow:0 24px 64px rgba(7,29,50,.15);
}

.compact-hero-copy{
  min-width:0;
  padding:54px 48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:#fff;
  background:
    radial-gradient(circle at 85% 12%,rgba(215,168,67,.14),transparent 26%),
    linear-gradient(145deg,#061a2d,#0b314b);
}

.compact-hero-copy h1{
  max-width:520px;
  margin:.45rem 0 1rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.55rem,4vw,4.05rem);
  line-height:1.02;
  letter-spacing:-.033em;
}

.compact-hero-copy h1 span{
  color:#efc56b;
}

.compact-hero-copy p{
  max-width:520px;
  margin:0;
  color:rgba(255,255,255,.75);
  font-size:.96rem;
  line-height:1.7;
}

.compact-outline{
  color:#fff;
  background:transparent;
  border-color:rgba(255,255,255,.45);
}

.compact-outline:hover{
  color:#071d32;
  background:#fff;
  border-color:#fff;
}

.compact-proof{
  margin-top:1.35rem;
  display:flex;
  flex-wrap:wrap;
  gap:.55rem .95rem;
  color:rgba(255,255,255,.67);
  font-size:.69rem;
}

.compact-proof span{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}

.compact-proof span::before{
  content:"";
  width:5px;
  height:5px;
  flex:0 0 auto;
  border-radius:50%;
  background:#efc56b;
}

.compact-hero-image{
  position:relative;
  min-width:0;
  min-height:465px;
  background:
    linear-gradient(90deg,rgba(7,29,50,.24),transparent 20%),
    linear-gradient(0deg,rgba(7,29,50,.18),transparent 32%),
    url("images/equinox-office-hobart.webp") 54% center / cover no-repeat;
}

.compact-location{
  position:absolute;
  left:22px;
  bottom:22px;
  max-width:265px;
  padding:.8rem 1rem;
  border:1px solid rgba(255,255,255,.22);
  border-radius:13px;
  background:rgba(6,24,40,.76);
  color:#fff;
  backdrop-filter:blur(12px);
  box-shadow:0 12px 30px rgba(0,0,0,.2);
}

.compact-location small{
  display:block;
  margin-bottom:.2rem;
  color:#efc56b;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.compact-location strong{
  font-size:.82rem;
}

.hero-office,
.hero-office-copy,
.hero-office-image{
  max-height:none;
}

@media(max-width:1050px){
  .menu{
    gap:.7rem;
    font-size:.68rem;
  }

  .brand-copy{
    display:none;
  }

  .brand{
    min-width:auto;
  }

  .compact-hero-copy{
    padding:44px 36px;
  }

  .compact-hero-copy h1{
    font-size:clamp(2.45rem,4.6vw,3.55rem);
  }
}

@media(max-width:900px){
  .header{
    position:sticky !important;
    top:0 !important;
  }

  .menu{
    position:fixed !important;
    top:78px !important;
    left:0;
    right:0;
    transform:translateY(-130%) !important;
  }

  .menu.open{
    transform:none !important;
  }

  .compact-hero-shell{
    min-height:430px;
    grid-template-columns:1fr 1fr;
  }

  .compact-hero-copy{
    padding:38px 30px;
  }

  .compact-hero-image{
    min-height:430px;
    background-position:57% center;
  }
}

@media(max-width:760px){
  .compact-hero{
    padding:18px 0 28px;
  }

  .compact-hero-shell{
    grid-template-columns:1fr;
    border-radius:20px;
  }

  .compact-hero-copy{
    padding:42px 30px 36px;
  }

  .compact-hero-copy h1{
    max-width:580px;
    font-size:clamp(2.5rem,8vw,3.45rem);
  }

  .compact-hero-image{
    min-height:350px;
    background-position:55% center;
  }
}

@media(max-width:520px){
  .nav{
    min-height:68px;
  }

  .brand-mark{
    width:50px;
    height:50px;
  }

  .menu{
    top:68px !important;
  }

  .compact-hero{
    padding:12px 0 22px;
  }

  .compact-hero-shell{
    width:94vw;
    border-radius:16px;
  }

  .compact-hero-copy{
    padding:34px 22px 30px;
  }

  .compact-hero-copy h1{
    font-size:2.55rem;
  }

  .compact-hero-copy p{
    font-size:.9rem;
  }

  .compact-hero-copy .actions{
    display:grid;
  }

  .compact-hero-copy .btn{
    width:100%;
  }

  .compact-proof{
    display:grid;
    gap:.4rem;
  }

  .compact-hero-image{
    min-height:270px;
    background-position:58% center;
  }

  .compact-location{
    left:12px;
    right:12px;
    bottom:12px;
    max-width:none;
  }
}

@media(min-width:1100px){
  .compact-hero .container{
    width:min(1540px,96vw);
  }

  .compact-hero{
    padding:24px 0 34px;
  }

  .compact-hero-shell{
    min-height:500px;
    grid-template-columns:minmax(0,42%) minmax(0,58%);
    border-radius:22px;
  }

  .compact-hero-copy{
    padding:56px 60px;
  }

  .compact-hero-copy h1{
    max-width:610px;
    font-size:clamp(3rem,4.1vw,4.6rem);
  }

  .compact-hero-copy p{
    max-width:580px;
  }

  .compact-hero-image{
    min-height:500px;
    background-position:53% center;
  }
}

@media(min-width:1500px){
  .compact-hero .container{
    width:min(1680px,96vw);
  }

  .compact-hero-shell{
    grid-template-columns:minmax(0,41%) minmax(0,59%);
  }

  .compact-hero-copy{
    padding-left:72px;
    padding-right:64px;
  }
}

.services-cover{
  position:relative;
  min-height:360px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(7,29,50,.82),rgba(7,29,50,.36)),
    url("images/services-cover.webp") center center / cover no-repeat;
}

.services-cover-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(0deg,rgba(7,29,50,.5),transparent 52%),
    radial-gradient(circle at 86% 18%,rgba(215,168,67,.16),transparent 24%);
}

.services-cover-content{
  position:relative;
  z-index:2;
  padding-bottom:3.3rem;
}

.services-cover h1{
  max-width:800px;
  margin:.45rem 0 .9rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.7rem,4.7vw,4.7rem);
  line-height:1.04;
}

.services-cover p{
  max-width:690px;
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:1rem;
}

.services-main{
  background:#fff;
}

.services-heading{
  justify-content:center;
  text-align:center;
}

.services-heading>div{
  max-width:800px !important;
}

.services-heading .title{
  margin-left:auto;
  margin-right:auto;
}

.services-card-grid{
  max-width:980px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.35rem;
}

.service-feature-card{
  position:relative;
  min-height:340px;
  padding:2rem 1.8rem 1.7rem;
  border:1px solid #dce4ea;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 32px rgba(7,29,50,.06);
  text-align:center;
  transition:.26s ease;
}

.service-feature-card:hover{
  transform:translateY(-6px);
  border-color:rgba(13,123,128,.36);
  box-shadow:0 22px 48px rgba(7,29,50,.11);
}

.service-feature-card h3{
  margin:1rem 0 .65rem;
  color:var(--navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.6rem;
}

.service-feature-card p{
  margin:0 auto 1rem;
  max-width:410px;
  color:var(--muted);
  font-size:.9rem;
}

.service-feature-card ul{
  display:inline-grid;
  gap:.4rem;
  margin:.5rem 0 0;
  padding:0;
  list-style:none;
  text-align:left;
  color:#4f6174;
  font-size:.8rem;
}

.service-feature-card li{
  position:relative;
  padding-left:1.05rem;
}

.service-feature-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.58rem;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--gold);
}

.service-icon{
  width:74px;
  height:74px;
  margin:0 auto;
  position:relative;
  display:grid;
  place-items:center;
  color:#1598c7;
}

.icon-roof{
  position:absolute;
  width:42px;
  height:24px;
  top:11px;
  border:3px solid currentColor;
  border-bottom:0;
  transform:rotate(45deg);
}
.icon-pages{
  position:absolute;
  width:38px;
  height:30px;
  bottom:10px;
  border:3px solid currentColor;
  border-radius:4px;
}
.icon-pages::before,
.icon-pages::after{
  content:"";
  position:absolute;
  left:6px;
  right:6px;
  height:2px;
  background:currentColor;
}
.icon-pages::before{top:8px}
.icon-pages::after{top:16px}

.service-icon-migration{
  border:3px solid currentColor;
  border-radius:7px;
  width:58px;
  height:44px;
  margin-top:15px;
  margin-bottom:15px;
}
.icon-card-person{
  position:absolute;
  left:9px;
  top:10px;
  width:14px;
  height:14px;
  border:2px solid currentColor;
  border-radius:50%;
}
.icon-card-person::after{
  content:"";
  position:absolute;
  width:18px;
  height:10px;
  left:-4px;
  top:14px;
  border:2px solid currentColor;
  border-radius:9px 9px 2px 2px;
}
.icon-card-line{
  position:absolute;
  right:8px;
  top:12px;
  width:22px;
  height:3px;
  background:currentColor;
  box-shadow:0 9px 0 currentColor,0 18px 0 currentColor;
}

.icon-book-one,
.icon-book-two{
  position:absolute;
  width:42px;
  height:17px;
  border:3px solid currentColor;
  border-radius:12px 4px 4px 12px;
}
.icon-book-one{top:19px;left:17px}
.icon-book-two{top:38px;left:11px}
.icon-book-one::after,
.icon-book-two::after{
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  top:5px;
  height:2px;
  background:currentColor;
}

.icon-heart{
  font-size:29px;
  line-height:1;
  color:#1598c7;
}
.icon-health-line{
  position:absolute;
  bottom:10px;
  width:46px;
  height:3px;
  background:currentColor;
}
.icon-health-line::before{
  content:"";
  position:absolute;
  width:26px;
  height:26px;
  left:10px;
  bottom:9px;
  border:3px solid currentColor;
  border-radius:50%;
}

.services-booking-action{
  margin-top:2.4rem;
  text-align:center;
}

.services-booking-action .btn{
  min-width:290px;
  border-radius:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.services-contact-cta{
  padding:3.3rem 0;
  color:#fff;
  background:
    radial-gradient(circle at 85% 20%,rgba(13,123,128,.25),transparent 24%),
    linear-gradient(135deg,#071d32,#0b304a);
}

.services-contact-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:3rem;
}

.services-contact-inner h2{
  max-width:740px;
  margin:.35rem 0 .5rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3.2vw,3rem);
  line-height:1.08;
}

.services-contact-inner p{
  margin:0;
  color:rgba(255,255,255,.7);
}

.services-contact-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.75rem;
}

.services-secondary-btn{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.5);
}

.services-secondary-btn:hover{
  background:#fff;
  color:var(--navy);
  border-color:#fff;
}

@media(max-width:850px){
  .services-cover{
    min-height:320px;
  }

  .services-card-grid{
    grid-template-columns:1fr;
    max-width:650px;
  }

  .services-contact-inner{
    align-items:flex-start;
    flex-direction:column;
    gap:1.5rem;
  }

  .services-contact-actions{
    justify-content:flex-start;
  }
}

@media(max-width:560px){
  .services-cover{
    min-height:290px;
    background-position:58% center;
  }

  .services-cover-content{
    padding-bottom:2rem;
  }

  .services-cover h1{
    font-size:2.4rem;
  }

  .service-feature-card{
    min-height:auto;
    padding:1.55rem 1.25rem;
  }

  .services-booking-action .btn{
    width:100%;
    min-width:0;
  }

  .services-contact-actions{
    width:100%;
    display:grid;
  }

  .services-contact-actions .btn{
    width:100%;
  }
}

.section,.footer{content-visibility:auto;contain-intrinsic-size:1px 700px}
.compact-hero,.services-cover,.page-hero{content-visibility:visible}

.home-about-section{
  padding:4.2rem 0;
}

.home-about-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:3.2rem;
  align-items:center;
}

.home-about-copy .title{
  max-width:620px;
  margin-bottom:1rem;
  font-size:clamp(2.35rem,3.8vw,3.75rem);
}

.home-about-copy p{
  max-width:650px;
  margin:0 0 1rem;
  color:var(--muted);
  font-size:.94rem;
  line-height:1.75;
}

.home-about-actions{
  margin-top:1.35rem;
}

.home-about-image-wrap{
  position:relative;
  overflow:hidden;
  min-height:340px;
  border-radius:24px;
  background:#071d32;
  box-shadow:0 20px 52px rgba(7,29,50,.13);
}

.home-about-image-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,.04),transparent 42%),
    linear-gradient(0deg,rgba(7,29,50,.12),transparent 32%);
}

.home-about-image-wrap img{
  width:100%;
  height:100%;
  min-height:340px;
  object-fit:cover;
}

body .section{
  padding-top:4.7rem;
  padding-bottom:4.7rem;
}

body .section-head{
  margin-bottom:1.9rem;
}

body .cards,
body .case-grid,
body .review-grid,
body .blog-grid{
  gap:1rem;
}

body .card-body{
  padding:1.15rem;
}

body .card-media{
  min-height:145px;
}

body .team-photo{
  height:215px;
}

body .stats .stat{
  padding-top:1.55rem;
  padding-bottom:1.55rem;
}

body .study-visual{
  min-height:390px;
}

body .services-main{
  padding-top:4.2rem;
  padding-bottom:4.2rem;
}

body .services-contact-cta{
  padding-top:2.6rem;
  padding-bottom:2.6rem;
}

body .footer{
  padding-top:3.2rem;
}

@media(max-width:900px){
  .home-about-grid{
    grid-template-columns:1fr;
    gap:2rem;
  }

  .home-about-image-wrap,
  .home-about-image-wrap img{
    min-height:300px;
  }

  body .section{
    padding-top:4rem;
    padding-bottom:4rem;
  }
}

@media(max-width:650px){
  .home-about-section{
    padding:3.5rem 0;
  }

  .home-about-copy .title{
    font-size:2.45rem;
  }

  .home-about-copy p{
    font-size:.9rem;
  }

  .home-about-image-wrap,
  .home-about-image-wrap img{
    min-height:240px;
    border-radius:18px;
  }

  body .section{
    padding-top:3.6rem;
    padding-bottom:3.6rem;
  }

  body .section-head{
    margin-bottom:1.5rem;
  }

  body .card-media{
    min-height:135px;
  }

  body .team-photo{
    height:230px;
  }
}

.study-visual{
  min-height:390px;
  position:relative;
  overflow:hidden;
  border-radius:26px;
  background:
    linear-gradient(
      180deg,
      rgba(7,29,50,.02) 32%,
      rgba(7,29,50,.72) 100%
    ),
    url("images/study-tasmania-student.webp") center 48% / cover no-repeat !important;
  box-shadow:0 20px 48px rgba(7,29,50,.13);
}

.study-visual::before{
  content:"";
  position:absolute;
  inset:0;
  border:0;
  background:
    linear-gradient(135deg,rgba(255,255,255,.08),transparent 36%),
    radial-gradient(circle at 82% 18%,rgba(215,168,67,.14),transparent 22%);
  pointer-events:none;
}

.study-visual::after{
  content:"Study in Tasmania";
  position:absolute;
  left:1.6rem;
  bottom:1.35rem;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2.3rem;
  line-height:1.05;
  text-shadow:0 3px 16px rgba(0,0,0,.35);
}

.study-grid{
  gap:2.6rem;
}

.study-list{
  margin-top:1.2rem;
}

.study-link{
  padding:.9rem 1rem;
}

@media(max-width:900px){
  .study-visual{
    min-height:330px;
    background-position:center 45% !important;
  }

  .study-visual::after{
    font-size:2rem;
  }
}

@media(max-width:650px){
  .study-visual{
    min-height:260px;
    border-radius:18px;
    background-position:center 42% !important;
  }

  .study-visual::after{
    left:1rem;
    bottom:.9rem;
    font-size:1.7rem;
  }

  .study-grid{
    gap:1.6rem;
  }
}

.case-rich-content{color:#26384b;font-size:.96rem;line-height:1.8}.case-rich-content h2,.case-rich-content h3,.case-rich-content h4,.case-rich-content h5{margin:1.6rem 0 .6rem;color:#071d32;font-family:Georgia,"Times New Roman",serif;line-height:1.2}.case-rich-content p{margin:0 0 1rem}.case-rich-content ul,.case-rich-content ol{margin:0 0 1.15rem;padding-left:1.35rem}.case-rich-content blockquote{margin:1.4rem 0;padding:.9rem 1.1rem;border-left:4px solid #d7a843;background:#f7f3ec;font-style:italic}.case-rich-content a{color:#0d7b80;text-decoration:underline}.case-rich-content figure{margin:1.6rem 0}.case-rich-content img{width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:15px;box-shadow:0 12px 30px rgba(7,29,50,.09)}.case-rich-content figcaption{margin-top:.45rem;color:#65768a;text-align:center;font-size:.76rem}

.expertise-cards{
  align-items:stretch;
}

.expertise-card{
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(7,29,50,.08);
  box-shadow:0 16px 38px rgba(7,29,50,.075);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}

.expertise-card:hover{
  transform:translateY(-6px);
  border-color:rgba(13,123,128,.28);
  box-shadow:0 24px 52px rgba(7,29,50,.12);
}

.expertise-media{
  position:relative;
  min-height:205px !important;
  height:205px;
  overflow:hidden;
  background:#0b344e;
}

.expertise-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(7,29,50,.02) 42%,rgba(7,29,50,.62) 100%),
    linear-gradient(135deg,rgba(13,123,128,.08),transparent 45%);
  pointer-events:none;
}

.expertise-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .5s ease;
}

.expertise-card:nth-child(1) .expertise-media img{
  object-position:center 48%;
}

.expertise-card:nth-child(2) .expertise-media img{
  object-position:center 30%;
}

.expertise-card:nth-child(3) .expertise-media img{
  object-position:center 50%;
}

.expertise-card:hover .expertise-media img{
  transform:scale(1.045);
}

.media-label{
  position:absolute;
  left:1rem;
  bottom:.85rem;
  z-index:2;
  padding:.38rem .65rem;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  color:#fff;
  background:rgba(7,29,50,.68);
  backdrop-filter:blur(8px);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.expertise-card .card-body{
  flex:1;
  display:flex;
  flex-direction:column;
}

.expertise-card .card-body p{
  flex:1;
}

.expertise-card .link{
  margin-top:auto;
}

@media(max-width:900px){
  .expertise-media{
    height:220px;
    min-height:220px !important;
  }
}

@media(max-width:650px){
  .expertise-media{
    height:195px;
    min-height:195px !important;
  }

  .media-label{
    left:.8rem;
    bottom:.7rem;
  }
}

.topbar{
  background:
    linear-gradient(90deg,#061827 0%,#0a2942 55%,#061827 100%);
  color:rgba(255,255,255,.82);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.topbar .container{
  width:min(1540px,94vw);
}

.topbar-inner{
  min-height:34px;
  font-size:.72rem;
  letter-spacing:.01em;
}

.header{
  position:sticky !important;
  top:0 !important;
  z-index:120;
  width:100%;
  background:rgba(255,255,255,.96) !important;
  backdrop-filter:blur(16px) saturate(140%) !important;
  border-bottom:1px solid rgba(7,29,50,.08);
  box-shadow:0 10px 30px rgba(7,29,50,.07);
}

.header .container{
  width:min(1540px,94vw);
}

.nav{
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
}

.brand{
  display:flex;
  align-items:center;
  gap:.85rem;
  min-width:250px;
  text-decoration:none;
}

.brand-mark{
  width:58px;
  height:58px;
  flex:0 0 58px;
  border:2px solid rgba(215,168,67,.72);
  border-radius:50%;
  overflow:hidden;
  background:#071d32;
  box-shadow:0 8px 20px rgba(7,29,50,.14);
}

.brand-mark img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.brand-copy strong{
  display:block;
  color:#071d32;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.55rem;
  line-height:1;
  letter-spacing:-.02em;
}

.brand-copy small{
  display:block;
  margin-top:.28rem;
  color:#5e7183;
  font-size:.62rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.15em;
}

.menu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:.32rem;
  margin-left:auto;
}

.menu a{
  position:relative;
  min-height:42px;
  padding:.72rem .82rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  color:#102a42;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.015em;
  transition:
    color .2s ease,
    background .2s ease,
    transform .2s ease;
}

.menu a::after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:4px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#0d7b80,#d7a843);
  transition:left .2s ease,right .2s ease;
}

.menu a:hover{
  color:#0d7b80;
  background:#f3f8f8;
  transform:translateY(-1px);
}

.menu a:hover::after,
.menu a.active::after{
  left:18%;
  right:18%;
}

.menu a.active{
  color:#0d7b80;
  background:#eef7f7;
}

.menu .book{
  margin-left:.55rem;
  min-height:46px;
  padding:.8rem 1.28rem;
  border-radius:999px;
  color:#071d32;
  background:linear-gradient(135deg,#e2b64f,#d49c2c);
  box-shadow:0 10px 24px rgba(215,168,67,.26);
}

.menu .book::after{
  display:none;
}

.menu .book:hover{
  color:#071d32;
  background:linear-gradient(135deg,#edc665,#dba62f);
  box-shadow:0 14px 30px rgba(215,168,67,.32);
}

.compact-hero{
  padding:0 !important;
  background:#071d32;
}

.compact-hero .container{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.compact-hero-shell{
  width:100% !important;
  max-width:none !important;
  min-height:520px;
  border-radius:0 !important;
  box-shadow:none !important;
  grid-template-columns:minmax(0,42.5%) minmax(0,57.5%);
}

.compact-hero-copy{
  padding-left:max(5vw,calc((100vw - 1540px)/2 + 28px));
  padding-right:4vw;
}

.compact-hero-image{
  min-height:520px;
  background-position:54% center;
}

.compact-location{
  left:1.6rem;
  bottom:1.5rem;
}

.home-services-strip,
.hero-service-strip{
  border-top:0;
}

@media(min-width:1500px){
  .compact-hero-shell{
    min-height:540px;
    grid-template-columns:minmax(0,41%) minmax(0,59%);
  }

  .compact-hero-copy{
    padding-left:max(6vw,calc((100vw - 1680px)/2 + 30px));
  }

  .compact-hero-image{
    min-height:540px;
  }
}

@media(max-width:1100px){
  .header .container,
  .topbar .container{
    width:94vw;
  }

  .brand{
    min-width:auto;
  }

  .brand-copy{
    display:none;
  }

  .menu{
    gap:.16rem;
  }

  .menu a{
    padding:.68rem .58rem;
    font-size:.69rem;
  }

  .menu .book{
    padding:.74rem 1rem;
  }
}

@media(max-width:900px){
  .nav{
    min-height:74px;
  }

  .brand-mark{
    width:52px;
    height:52px;
    flex-basis:52px;
  }

  .menu{
    position:fixed !important;
    left:0;
    right:0;
    top:108px !important;
    display:grid;
    gap:.3rem;
    padding:1rem;
    border-top:1px solid #dbe4e9;
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 36px rgba(7,29,50,.12);
  }

  .menu a{
    width:100%;
    justify-content:flex-start;
    padding:.8rem 1rem;
  }

  .menu .book{
    margin:.35rem 0 0;
    justify-content:center;
  }

  .compact-hero-shell{
    min-height:470px;
    grid-template-columns:1fr 1fr;
  }

  .compact-hero-copy{
    padding:46px 30px;
  }

  .compact-hero-image{
    min-height:470px;
  }
}

@media(max-width:760px){
  .compact-hero-shell{
    grid-template-columns:1fr;
  }

  .compact-hero-copy{
    padding:42px 24px 36px;
  }

  .compact-hero-image{
    min-height:340px;
  }

  .compact-location{
    left:1rem;
    right:1rem;
    bottom:1rem;
  }
}

@media(max-width:520px){
  .topbar-inner{
    min-height:30px;
    font-size:.63rem;
  }

  .header .container{
    width:92vw;
  }

  .nav{
    min-height:68px;
  }

  .menu{
    top:98px !important;
  }

  .compact-hero-copy{
    padding:34px 20px 30px;
  }

  .compact-hero-image{
    min-height:275px;
  }
}

.topbar .container{
  width:min(1380px,92vw);
}

.topbar-inner{
  min-height:32px;
  font-size:.68rem;
}

.header{
  position:sticky !important;
  top:0 !important;
  z-index:120;
  background:rgba(255,255,255,.97) !important;
  border-bottom:1px solid rgba(7,29,50,.07);
  box-shadow:0 8px 24px rgba(7,29,50,.055);
  backdrop-filter:blur(14px) saturate(135%) !important;
}

.header .container{
  width:min(1380px,92vw);
}

.nav{
  min-height:82px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:2.2rem;
}

.brand{
  min-width:255px;
  display:flex;
  align-items:center;
  gap:.8rem;
}

.brand-mark{
  width:56px;
  height:56px;
  flex:0 0 56px;
}

.brand-copy strong{
  font-size:1.48rem;
}

.menu{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:.12rem;
  margin:0;
}

.menu a{
  min-height:40px;
  padding:.68rem .7rem;
  border-radius:9px;
  font-size:.7rem;
  white-space:nowrap;
}

.menu a::after{
  bottom:3px;
}

.menu a:hover{
  background:#f4f8f8;
}

.menu .book{
  margin-left:.5rem;
  min-height:44px;
  padding:.75rem 1.15rem;
  font-size:.7rem;
}

.compact-hero{
  padding:24px 0 34px !important;
  background:
    radial-gradient(circle at 15% 25%,rgba(215,168,67,.08),transparent 22%),
    #f3f6f7 !important;
}

.compact-hero .container{
  width:min(1540px,94vw) !important;
  max-width:1540px !important;
  margin:0 auto !important;
  padding:0 !important;
}

.compact-hero-shell{
  width:100% !important;
  max-width:none !important;
  min-height:500px;
  grid-template-columns:minmax(0,42%) minmax(0,58%);
  border-radius:22px !important;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(7,29,50,.15) !important;
}

.compact-hero-copy{
  padding:54px 52px !important;
}

.compact-hero-copy h1{
  max-width:590px;
  font-size:clamp(2.9rem,4vw,4.35rem);
}

.compact-hero-image{
  min-height:500px;
  background-position:53% center;
}

.compact-location{
  left:1.5rem;
  bottom:1.4rem;
}

.home-services-strip,
.hero-service-strip{
  width:min(1540px,94vw);
  margin:0 auto;
  border-left:1px solid rgba(7,29,50,.08);
  border-right:1px solid rgba(7,29,50,.08);
}

@media(max-width:1180px){
  .header .container,
  .topbar .container{
    width:94vw;
  }

  .brand{
    min-width:215px;
  }

  .brand-copy strong{
    font-size:1.32rem;
  }

  .brand-copy small{
    font-size:.56rem;
  }

  .menu a{
    padding:.65rem .5rem;
    font-size:.64rem;
  }

  .menu .book{
    padding:.72rem .9rem;
  }
}

@media(max-width:1020px){
  .nav{
    grid-template-columns:auto auto;
  }

  .brand-copy{
    display:none;
  }

  .brand{
    min-width:auto;
  }

  .hamb{
    display:flex;
    justify-self:end;
  }

  .menu{
    position:fixed !important;
    top:114px !important;
    left:0;
    right:0;
    display:grid;
    gap:.35rem;
    padding:1rem;
    background:rgba(255,255,255,.985);
    border-top:1px solid #dce5ea;
    box-shadow:0 18px 36px rgba(7,29,50,.12);
    transform:translateY(-130%) !important;
    transition:transform .24s ease;
  }

  .menu.open{
    transform:none !important;
  }

  .menu a{
    width:100%;
    justify-content:flex-start;
    padding:.82rem 1rem;
    font-size:.76rem;
  }

  .menu .book{
    margin:.35rem 0 0;
    justify-content:center;
  }
}

@media(max-width:900px){
  .compact-hero-shell{
    grid-template-columns:1fr 1fr;
    min-height:450px;
  }

  .compact-hero-copy{
    padding:42px 32px !important;
  }

  .compact-hero-image{
    min-height:450px;
  }
}

@media(max-width:760px){
  .compact-hero{
    padding:18px 0 26px !important;
  }

  .compact-hero .container{
    width:94vw !important;
  }

  .compact-hero-shell{
    grid-template-columns:1fr;
    border-radius:18px !important;
  }

  .compact-hero-copy{
    padding:40px 28px 34px !important;
  }

  .compact-hero-image{
    min-height:330px;
  }

  .home-services-strip,
  .hero-service-strip{
    width:94vw;
  }
}

@media(max-width:520px){
  .nav{
    min-height:68px;
  }

  .menu{
    top:100px !important;
  }

  .compact-hero .container{
    width:94vw !important;
  }

  .compact-hero-copy{
    padding:34px 22px 30px !important;
  }

  .compact-hero-copy h1{
    font-size:2.55rem;
  }

  .compact-hero-image{
    min-height:270px;
  }
}

@media (min-width:1021px){
  .header .container{
    width:min(1500px,94vw) !important;
    max-width:1500px !important;
  }

  .nav{
    min-height:84px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:2.5rem !important;
  }

  .brand{
    min-width:270px !important;
    flex:0 0 auto !important;
  }

  .hamb{
    display:none !important;
  }

  .menu{
    position:static !important;
    width:auto !important;
    margin:0 0 0 auto !important;
    padding:6px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:7px !important;
    transform:none !important;
    opacity:1 !important;
    pointer-events:auto !important;
    border:1px solid rgba(7,29,50,.07) !important;
    border-radius:15px !important;
    background:rgba(247,250,251,.94) !important;
    box-shadow:0 6px 18px rgba(7,29,50,.045) !important;
  }

  .menu > a,
  .menu > a:not(.cta){
    position:relative !important;
    width:auto !important;
    min-height:42px !important;
    padding:0 12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:10px !important;
    color:#153047 !important;
    background:transparent !important;
    font-size:12px !important;
    font-weight:750 !important;
    line-height:1 !important;
    letter-spacing:.01em !important;
    white-space:nowrap !important;
  }

  .menu > a::after,
  .menu > a:not(.cta)::after{
    content:"" !important;
    position:absolute !important;
    left:50% !important;
    right:50% !important;
    bottom:5px !important;
    height:2px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#0d7b80,#d7a843) !important;
    transition:left .2s ease,right .2s ease !important;
  }

  .menu > a:hover,
  .menu > a.active{
    color:#0d7b80 !important;
    background:#eaf4f4 !important;
    transform:none !important;
  }

  .menu > a:hover::after,
  .menu > a.active::after{
    left:22% !important;
    right:22% !important;
  }

  .menu > .cta{
    min-height:44px !important;
    margin-left:8px !important;
    padding:0 20px !important;
    border:0 !important;
    border-radius:11px !important;
    color:#071d32 !important;
    background:linear-gradient(135deg,#e4b84f,#d39c2d) !important;
    box-shadow:0 9px 20px rgba(215,168,67,.24) !important;
    font-size:12px !important;
    font-weight:850 !important;
  }

  .menu > .cta::after{
    display:none !important;
  }

  .menu > .cta:hover{
    color:#071d32 !important;
    background:linear-gradient(135deg,#edc665,#dca62f) !important;
    box-shadow:0 12px 25px rgba(215,168,67,.3) !important;
    transform:translateY(-1px) !important;
  }
}

@media (min-width:1021px) and (max-width:1250px){
  .header .container{
    width:96vw !important;
  }

  .nav{
    gap:1.5rem !important;
  }

  .brand{
    min-width:215px !important;
  }

  .brand-copy strong{
    font-size:1.32rem !important;
  }

  .brand-copy small{
    font-size:.55rem !important;
  }

  .menu{
    gap:3px !important;
    padding:5px !important;
  }

  .menu > a,
  .menu > a:not(.cta){
    padding:0 8px !important;
    font-size:10.8px !important;
  }

  .menu > .cta{
    margin-left:5px !important;
    padding:0 14px !important;
  }
}

.premium-lavalamp-header{
  position:sticky !important;
  top:0 !important;
  z-index:140 !important;
  background:rgba(255,255,255,.975) !important;
  border-bottom:1px solid rgba(7,29,50,.07) !important;
  box-shadow:0 9px 30px rgba(7,29,50,.065) !important;
  backdrop-filter:blur(16px) saturate(140%) !important;
}

.premium-lavalamp-header .premium-lavalamp-nav{
  width:min(1460px,94vw) !important;
  max-width:1460px !important;
  min-height:86px !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:minmax(235px,auto) minmax(0,1fr) !important;
  align-items:center !important;
  column-gap:2.4rem !important;
}

.premium-lavalamp-header .brand{
  min-width:0 !important;
  width:max-content !important;
  display:flex !important;
  align-items:center !important;
  gap:.82rem !important;
}

.premium-lavalamp-header .brand-mark{
  width:56px !important;
  height:56px !important;
  flex:0 0 56px !important;
  border:2px solid rgba(215,168,67,.72) !important;
  border-radius:50% !important;
  background:#071d32 !important;
  box-shadow:0 8px 20px rgba(7,29,50,.14) !important;
}

.premium-lavalamp-header .brand-copy strong{
  font-size:1.45rem !important;
  line-height:1 !important;
}

.premium-lavalamp-header .brand-copy small{
  margin-top:.26rem !important;
  font-size:.57rem !important;
  letter-spacing:.15em !important;
}

.premium-lavalamp-header .nav-actions{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:1rem;
}

.lavalamp-menu{
  position:relative;
  isolation:isolate;
  min-width:0;
  display:flex;
  align-items:center;
  gap:0;
  padding:5px;
  border:1px solid rgba(7,29,50,.075);
  border-radius:14px;
  background:#eef3f6;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    0 7px 20px rgba(7,29,50,.055);
}

.lavalamp-menu .nav-lamp{
  position:absolute;
  z-index:-1;
  left:5px;
  top:5px;
  width:0;
  height:calc(100% - 10px);
  border-radius:10px;
  opacity:0;
  background:linear-gradient(135deg,#0d8d8b,#12aa9d);
  box-shadow:
    0 8px 18px rgba(13,123,128,.22),
    inset 0 1px 0 rgba(255,255,255,.22);
  will-change:transform,width;
}

.lavalamp-menu > a{
  position:relative;
  z-index:1;
  min-height:42px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  color:#173047;
  background:transparent;
  font-size:11.5px;
  font-weight:800;
  line-height:1;
  letter-spacing:.015em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:color .2s ease;
}

.lavalamp-menu > a::after{
  display:none !important;
}

.lavalamp-menu > a:hover,
.lavalamp-menu > a:focus,
.lavalamp-menu > a.active{
  color:#fff !important;
  background:transparent !important;
  transform:none !important;
  outline:none;
}

.lavalamp-menu.is-hovering > a.active:not(:hover):not(:focus){
  color:#173047 !important;
}

.nav-book{
  min-height:52px;
  flex:0 0 auto;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  border:1px solid rgba(188,132,16,.2);
  border-radius:13px;
  color:#071d32;
  background:linear-gradient(135deg,#e6ba50,#d59d2f);
  box-shadow:0 10px 24px rgba(215,168,67,.25);
  font-size:11.5px;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}

.nav-book span{
  font-size:1rem;
  transition:transform .2s ease;
}

.nav-book:hover{
  color:#071d32;
  background:linear-gradient(135deg,#efca69,#dea937);
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(215,168,67,.32);
}

.nav-book:hover span{
  transform:translateX(3px);
}

.premium-lavalamp-header .hamb{
  display:none !important;
}

@media (min-width:1041px) and (max-width:1280px){
  .premium-lavalamp-header .premium-lavalamp-nav{
    width:96vw !important;
    grid-template-columns:minmax(190px,auto) minmax(0,1fr) !important;
    column-gap:1.2rem !important;
  }

  .premium-lavalamp-header .brand-copy strong{
    font-size:1.28rem !important;
  }

  .premium-lavalamp-header .brand-copy small{
    font-size:.5rem !important;
  }

  .premium-lavalamp-header .nav-actions{
    gap:.65rem;
  }

  .lavalamp-menu > a{
    padding:0 9px;
    font-size:9.7px;
  }

  .nav-book{
    min-height:48px;
    padding:0 14px;
    font-size:9.8px;
  }
}

@media (max-width:1040px){
  .premium-lavalamp-header .premium-lavalamp-nav{
    width:92vw !important;
    min-height:72px !important;
    grid-template-columns:auto auto !important;
    justify-content:space-between !important;
  }

  .premium-lavalamp-header .brand-copy{
    display:none !important;
  }

  .premium-lavalamp-header .brand-mark{
    width:52px !important;
    height:52px !important;
    flex-basis:52px !important;
  }

  .premium-lavalamp-header .hamb{
    width:46px;
    height:46px;
    justify-self:end;
    display:grid !important;
    place-items:center;
    border:1px solid rgba(7,29,50,.1);
    border-radius:12px;
    color:#071d32;
    background:#f1f6f7;
    font-size:1.25rem;
    cursor:pointer;
  }

  .premium-lavalamp-header .nav-actions{
    position:fixed;
    z-index:139;
    top:104px;
    left:0;
    right:0;
    padding:1rem 4vw 1.25rem;
    display:grid;
    gap:.8rem;
    background:rgba(255,255,255,.99);
    border-top:1px solid #dce5ea;
    box-shadow:0 22px 40px rgba(7,29,50,.13);
    transform:translateY(-145%);
    opacity:0;
    pointer-events:none;
    transition:transform .26s ease,opacity .2s ease;
  }

  .premium-lavalamp-header .nav-actions.open{
    transform:none;
    opacity:1;
    pointer-events:auto;
  }

  .lavalamp-menu{
    display:grid;
    gap:.32rem;
    padding:.55rem;
    border-radius:15px;
    background:#f3f7f8;
  }

  .lavalamp-menu .nav-lamp{
    display:none;
  }

  .lavalamp-menu > a{
    min-height:44px;
    padding:0 1rem;
    justify-content:flex-start;
    color:#173047 !important;
    border-radius:10px;
    font-size:.75rem;
  }

  .lavalamp-menu > a:hover,
  .lavalamp-menu > a:focus,
  .lavalamp-menu > a.active{
    color:#fff !important;
    background:linear-gradient(135deg,#0d8d8b,#12aa9d) !important;
  }

  .nav-book{
    width:100%;
    min-height:48px;
  }
}

@media (max-width:520px){
  .premium-lavalamp-header .nav-actions{
    top:100px;
  }
}

.lavalamp-menu{
  box-sizing:border-box;
  align-items:stretch;
}

.lavalamp-menu .nav-lamp{
  left:0 !important;
  top:0 !important;
  width:0;
  height:0;
  box-sizing:border-box;
  transform:translate3d(0,0,0);
  transform-origin:left center;
  pointer-events:none;
}

.lavalamp-menu > a{
  box-sizing:border-box;
  height:42px;
  min-height:42px;
  padding:0 14px;
  display:grid !important;
  place-items:center;
  text-align:center;
  line-height:1 !important;
}

@media(min-width:1041px){
  .lavalamp-menu{
    padding:5px;
  }

  .lavalamp-menu > a{
    align-self:center;
  }
}

.booking-hero{
  padding:2.8rem 0 2.7rem;
}

.booking-hero-inner{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:3rem;
}

.booking-hero h1{
  font-size:clamp(2.7rem,4vw,4rem);
}

.booking-hero p{
  max-width:680px;
  margin:.8rem 0 0;
  color:rgba(255,255,255,.74);
  font-size:.95rem;
}

.booking-security{
  min-width:250px;
  display:grid;
  gap:.45rem;
  padding:1rem 1.15rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:15px;
  background:rgba(255,255,255,.07);
  backdrop-filter:blur(10px);
  color:rgba(255,255,255,.82);
  font-size:.72rem;
  font-weight:700;
}

.booking-section{
  padding:2.4rem 0 3rem;
  background:
    radial-gradient(circle at 8% 15%,rgba(13,123,128,.07),transparent 24%),
    #f7f4ed;
}

.booking-page-shell{
  max-width:1120px;
}

.booking-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  margin-bottom:1.2rem;
}

.booking-option{
  position:relative;
  min-height:145px;
  display:grid;
  grid-template-columns:52px 1fr auto;
  align-items:center;
  gap:1rem;
  padding:1.25rem 1.35rem;
  overflow:hidden;
  border:1px solid rgba(7,29,50,.09);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(7,29,50,.06);
}

.booking-option::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
}

.booking-option.education::before{
  background:var(--teal);
}

.booking-option.migration::before{
  background:var(--gold);
}

.booking-option-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--teal);
  background:var(--teal-light);
  font-size:.82rem;
  font-weight:900;
}

.booking-option.migration .booking-option-icon{
  color:#9a6814;
  background:#fbf1d7;
}

.booking-kicker{
  margin-bottom:.25rem;
  color:var(--teal);
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.booking-option.migration .booking-kicker{
  color:#a6721c;
}

.booking-option h2{
  margin:0 0 .38rem;
  color:var(--navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem;
}

.booking-option p{
  margin:0;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.55;
}

.booking-price{
  align-self:start;
  padding:.38rem .65rem;
  border-radius:999px;
  color:var(--teal);
  background:#e8f5f4;
  font-size:.65rem;
  font-weight:900;
  text-transform:uppercase;
}

.booking-option.migration .booking-price{
  color:#8d6015;
  background:#fbf0d3;
}

.scheduler-card{
  overflow:hidden;
  border:1px solid rgba(7,29,50,.09);
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 50px rgba(7,29,50,.09);
}

.scheduler-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  padding:1.35rem 1.5rem;
  border-bottom:1px solid #e1e7eb;
  background:
    linear-gradient(120deg,#fbfcfd,#f2f7f7);
}

.scheduler-header h2{
  margin:.2rem 0 .25rem;
  color:var(--navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.65rem;
}

.scheduler-header p{
  max-width:690px;
  margin:0;
  color:var(--muted);
  font-size:.75rem;
}

.scheduler-external{
  flex:0 0 auto;
  padding:.7rem .9rem;
  border:1px solid rgba(13,123,128,.25);
  border-radius:10px;
  color:var(--teal);
  background:#fff;
  font-size:.7rem;
  font-weight:900;
  white-space:nowrap;
  transition:.2s ease;
}

.scheduler-external:hover{
  color:#fff;
  background:var(--teal);
  border-color:var(--teal);
}

.acuity-compact{
  position:relative;
  height:610px;
  margin:0;
  overflow:hidden;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}

.acuity-compact .acuity-frame{
  width:100%;
  height:610px !important;
  display:block;
  border:0;
  opacity:0;
  transition:opacity .25s ease;
}

.acuity-compact.is-loaded .acuity-frame{
  opacity:1;
}

.acuity-loading{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  color:var(--navy);
  background:
    radial-gradient(circle at 50% 40%,rgba(13,123,128,.08),transparent 30%),
    #fff;
  transition:opacity .2s ease,visibility .2s ease;
}

.acuity-compact.is-loaded .acuity-loading{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.acuity-loading strong{
  font-size:.9rem;
}

.acuity-loading span{
  color:var(--muted);
  font-size:.72rem;
}

.scheduler-spinner{
  width:34px;
  height:34px;
  margin-bottom:.35rem;
  border:3px solid #dce9e9;
  border-top-color:var(--teal);
  border-radius:50%;
  animation:scheduler-spin .75s linear infinite;
}

@keyframes scheduler-spin{
  to{transform:rotate(360deg)}
}

.scheduler-footer{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.75rem 1rem;
  border-top:1px solid #e1e7eb;
  color:var(--muted);
  background:#f8fafb;
  font-size:.7rem;
}

.scheduler-footer a{
  color:var(--teal);
  font-weight:900;
}

.acuity-noscript{
  padding:2rem;
  text-align:center;
}

@media(max-width:850px){
  .booking-hero-inner{
    align-items:flex-start;
    flex-direction:column;
    gap:1.4rem;
  }

  .booking-security{
    width:100%;
    grid-template-columns:repeat(3,1fr);
  }

  .booking-options{
    grid-template-columns:1fr;
  }

  .scheduler-header{
    align-items:flex-start;
    flex-direction:column;
    gap:1rem;
  }

  .acuity-compact,
  .acuity-compact .acuity-frame{
    height:650px !important;
  }
}

@media(max-width:650px){
  .booking-hero{
    padding:2.2rem 0;
  }

  .booking-hero h1{
    font-size:2.65rem;
  }

  .booking-security{
    grid-template-columns:1fr;
  }

  .booking-section{
    padding:1.5rem 0 2rem;
  }

  .booking-option{
    grid-template-columns:46px 1fr;
    min-height:auto;
    padding:1.1rem;
  }

  .booking-price{
    grid-column:2;
    justify-self:start;
  }

  .scheduler-header{
    padding:1.1rem;
  }

  .scheduler-external{
    width:100%;
    text-align:center;
  }

  .acuity-compact,
  .acuity-compact .acuity-frame{
    height:680px !important;
  }

  .scheduler-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}

.case-top{
  position:relative;
  overflow:hidden;
}

.case-top.has-image{
  min-height:210px;
  background:#0a2c43;
}

.case-top.has-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}

.case-card:hover .case-top.has-image img{
  transform:scale(1.04);
}

.case-top-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,29,50,.08),rgba(7,29,50,.74));
  pointer-events:none;
}

.case-top .eyebrow{
  position:relative;
  z-index:2;
}

.case-media-panel{
  min-height:430px;
  padding:1rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#f8fafb;
}

.case-feature-image{
  margin:0;
  overflow:hidden;
  border-radius:14px;
  background:#071d32;
  box-shadow:0 14px 36px rgba(7,29,50,.12);
}

.case-feature-image img{
  width:100%;
  max-height:520px;
  display:block;
  object-fit:cover;
}

.case-feature-image figcaption{
  padding:.75rem 1rem;
  color:#fff;
  background:#0a2a42;
  font-size:.72rem;
  font-weight:800;
}

.case-facebook-link{
  margin-top:.75rem;
  align-self:flex-start;
  color:#0d7b80;
  font-size:.72rem;
  font-weight:900;
}

.case-media-empty{
  padding:2.4rem 1.5rem;
  border:1px dashed #bac8d1;
  border-radius:14px;
  text-align:center;
  color:#68798a;
  background:#fff;
}

.case-media-empty strong{
  color:#071d32;
}

.case-media-empty p{
  margin:.45rem 0 0;
  font-size:.78rem;
}

@media(max-width:760px){
  .case-media-panel{
    min-height:auto;
  }

  .case-feature-image img{
    max-height:380px;
  }
}

.blog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:1.25rem;
}

.blog-card-equal{
  height:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:20px;
}

.blog-card-image{
  width:100%;
  height:230px !important;
  min-height:230px !important;
  flex:0 0 230px;
  overflow:hidden;
  background:linear-gradient(135deg,#e8eef1,#d7e3e7);
}

.blog-card-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.blog-card-body{
  min-height:310px;
  flex:1;
  display:flex;
  flex-direction:column;
  padding:1.35rem 1.35rem 1.25rem;
}

.blog-card-body .blog-meta{
  min-height:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
}

.blog-card-body h3{
  min-height:76px;
  margin:.5rem 0 .65rem;
  display:-webkit-box;
  overflow:hidden;
  font-size:1.5rem;
  line-height:1.12;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}

.blog-card-body p{
  min-height:92px;
  margin:0 0 1rem;
  display:-webkit-box;
  overflow:hidden;
  line-height:1.65;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
}

.blog-card-link{
  margin-top:auto;
  align-self:flex-start;
}

@media(max-width:980px){
  .blog-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .blog-card-image{
    height:220px !important;
    min-height:220px !important;
    flex-basis:220px;
  }
}

@media(max-width:650px){
  .blog-grid{
    grid-template-columns:1fr;
  }

  .blog-card-equal{
    width:100%;
    max-width:520px;
    margin:0 auto;
  }

  .blog-card-image{
    height:215px !important;
    min-height:215px !important;
    flex-basis:215px;
  }

  .blog-card-body{
    min-height:auto;
  }

  .blog-card-body h3,
  .blog-card-body p{
    min-height:auto;
  }
}

:root{
  --human-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --human-navy:#102b42;
  --human-teal:#087e86;
  --human-gold:#d8a538;
  --human-border:#dfe5e9;
  --human-muted:#617181;
}

html{scroll-behavior:smooth;scroll-padding-top:120px}
body,input,textarea,select,button{font-family:var(--human-font)!important}
body{color:#172b3c;font-size:16px;line-height:1.65;background:#fff}
h1,h2,h3,h4,h5,h6,.title,.page-hero h1,.compact-hero-copy h1,.brand-copy strong,.case-rich-content h2,.case-rich-content h3,.article-content h2,.article-content h3,.article-content h4{font-family:var(--human-font)!important;font-weight:750;letter-spacing:-.025em}
.title{font-size:clamp(2rem,3.1vw,3rem)!important;line-height:1.14!important}
.eyebrow{font-family:var(--human-font)!important;font-size:.78rem!important;font-weight:700!important;letter-spacing:.02em!important;text-transform:none!important;color:var(--human-teal)!important}
.btn,.nav-book{border-radius:6px!important;text-transform:none!important;letter-spacing:0!important}
.card,.team-card,.service-feature-card,.booking-option,.scheduler-card{border-radius:10px!important;box-shadow:0 8px 22px rgba(16,43,66,.07)!important}
.section{padding-top:4.2rem!important;padding-bottom:4.2rem!important}
.section-head.human-section-head{align-items:flex-end}
.human-section-head>div{max-width:690px}
.human-section-head p{margin:.55rem 0 0;color:var(--human-muted)}

.site-header{position:sticky;top:0;z-index:150;background:#fff!important;border-bottom:1px solid #e5eaed;box-shadow:0 3px 12px rgba(16,43,66,.06)}
.site-header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.site-header .brand{min-width:225px}
.site-header .brand-mark{width:52px;height:52px;flex-basis:52px;border:1px solid #d7b45c}
.site-header .brand-copy strong{font-size:1.35rem!important;color:var(--human-navy)}
.site-header .brand-copy small{font-size:.6rem;letter-spacing:.1em;color:#687786}
.site-header .nav-actions{display:flex;align-items:center;gap:1.1rem;margin-left:auto}
.site-nav{display:flex;align-items:center;gap:.15rem}
.site-nav>a,.nav-dropdown-trigger{min-height:42px;display:flex;align-items:center;padding:.65rem .72rem;border-radius:5px;color:#253b4d;font-size:.76rem;font-weight:650;white-space:nowrap;transition:.18s ease}
.site-nav>a:hover,.site-nav>a.active,.nav-dropdown:hover>.nav-dropdown-trigger,.nav-dropdown-trigger.active{color:var(--human-teal);background:#eef6f6}
.nav-dropdown{position:relative}
.nav-dropdown-trigger span{margin-left:.35rem;font-size:.75rem}
.nav-dropdown-menu{position:absolute;top:calc(100% + 10px);left:50%;width:270px;padding:.55rem;opacity:0;visibility:hidden;transform:translate(-50%,8px);border:1px solid var(--human-border);border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(16,43,66,.14);transition:.18s ease}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-dropdown-menu::before{content:"";position:absolute;top:-7px;left:50%;width:12px;height:12px;transform:translateX(-50%) rotate(45deg);border-left:1px solid var(--human-border);border-top:1px solid var(--human-border);background:#fff}
.nav-dropdown-menu a{position:relative;z-index:1;display:block;padding:.7rem .75rem;border-radius:6px;color:#24394b}
.nav-dropdown-menu a:hover{background:#f3f7f8}
.nav-dropdown-menu strong{display:block;font-size:.78rem}
.nav-dropdown-menu small{display:block;margin-top:.12rem;color:#758391;font-size:.66rem}
.site-header .nav-book{padding:.72rem 1rem;color:#102b42;background:#e3b047;box-shadow:none;font-size:.73rem;font-weight:750}
.site-header .nav-book:hover{background:#d7a137;transform:none}

.compact-hero-copy h1{max-width:590px!important;font-size:clamp(2.75rem,4vw,4rem)!important;line-height:1.08!important;font-weight:760!important}
.compact-hero-copy p{font-size:.96rem!important;line-height:1.7!important}
.compact-hero-copy .eyebrow{color:#e5b64d!important}

.home-stories-section{background:#f7f9fa}
.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
.story-card{height:100%;overflow:hidden;border:1px solid var(--human-border);border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(16,43,66,.07);transition:.2s ease}
.story-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(16,43,66,.11)}
.story-card-link{height:100%;display:flex;flex-direction:column;color:inherit}
.story-card-media{position:relative;height:215px;flex:0 0 215px;overflow:hidden;background:#dfe8ec}
.story-card-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.story-card:hover .story-card-media img{transform:scale(1.025)}
.story-card-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#183d57,#087e86)}
.story-card-placeholder span{width:72px;height:72px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.5);border-radius:50%;color:#fff;font-size:2rem;font-weight:700}
.story-category{position:absolute;left:14px;top:14px;padding:.35rem .55rem;border-radius:4px;color:#fff;background:rgba(16,43,66,.9);font-size:.65rem;font-weight:750}
.story-card-content{min-height:270px;flex:1;display:flex;flex-direction:column;padding:1.25rem}
.story-client{margin-bottom:.45rem;color:var(--human-teal);font-size:.72rem;font-weight:700}
.story-card h3{min-height:58px;margin:0 0 .65rem;color:var(--human-navy);font-size:1.3rem;line-height:1.22}
.story-card p{min-height:78px;margin:0 0 1rem;display:-webkit-box;overflow:hidden;color:var(--human-muted);font-size:.87rem;line-height:1.6;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.story-read{margin-top:auto;color:var(--human-navy);font-size:.74rem;font-weight:750}
.story-read b{color:var(--human-gold)}

.case-stories-hero,.testimonial-hero{padding:3.4rem 0!important}
.case-stories-hero p,.testimonial-hero p{max-width:650px;margin:.65rem 0 0;color:rgba(255,255,255,.74)}
.case-category-nav{position:sticky;top:78px;z-index:45;border-bottom:1px solid var(--human-border);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.case-category-nav .container{display:grid;grid-template-columns:repeat(3,1fr)}
.case-category-nav a{padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;border-right:1px solid var(--human-border);color:var(--human-navy)}
.case-category-nav a:first-child{border-left:1px solid var(--human-border)}
.case-category-nav a:hover{background:#f2f7f7;color:var(--human-teal)}
.case-category-nav b{font-size:.82rem}.case-category-nav span{color:#7a8792;font-size:.68rem}
.case-category-section:nth-of-type(even){background:#f7f9fa}
.category-section-heading{margin-bottom:1.6rem;display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding-bottom:1rem;border-bottom:1px solid var(--human-border)}
.category-section-heading>div{display:flex;align-items:center;gap:1rem}
.category-index{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--human-teal);font-size:.75rem;font-weight:750}
.category-section-heading h2{margin:.15rem 0 0;color:var(--human-navy);font-size:2rem}
.category-section-heading p{max-width:520px;margin:0;color:var(--human-muted);font-size:.85rem;text-align:right}
.story-empty{padding:2rem;border:1px dashed #c8d3da;border-radius:8px;color:#71808c;text-align:center;background:#fafcfd}
.case-back-link{display:inline-block;margin-bottom:.8rem;color:rgba(255,255,255,.75);font-size:.75rem;font-weight:650}

.reviews-section{background:#f7f8fa}

.case-admin-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.1rem}
.case-admin-stat{padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;border:1px solid #d8e1e7;border-radius:10px;color:#2d4254;background:#fff;box-shadow:0 6px 18px rgba(7,29,50,.05)}
.case-admin-stat.active{border-color:#0d7b80;background:#edf7f6}.case-admin-stat span{font-size:.76rem;font-weight:750}.case-admin-stat strong{font-size:1.35rem}
.case-filter-links{display:flex;flex-wrap:wrap;gap:.35rem}.case-filter-links a{padding:.42rem .65rem;border-radius:6px;color:#566878;background:#eef2f4;font-size:.65rem;font-weight:750}.case-filter-links a.active{color:#fff;background:#0d7b80}
.admin-category-badge{display:inline-flex;padding:.35rem .55rem;border-radius:5px;font-size:.62rem;font-weight:750}.admin-category-badge.nominations{color:#0a6570;background:#e2f2f1}.admin-category-badge.visa-grants{color:#7d5812;background:#f9edcf}.admin-category-badge.enrolments{color:#335989;background:#e7eef8}
.review-photo-preview{width:72px;height:72px;margin-top:.55rem;display:block;object-fit:cover;border-radius:50%}.admin-review-person{display:flex;align-items:center;gap:.65rem}.admin-review-person .thumb,.admin-review-initial{width:38px;height:38px;flex:0 0 38px;border-radius:50%}.admin-review-initial{display:grid;place-items:center;color:#fff;background:#62798d;font-size:.8rem;font-weight:750}.admin-review-person small{display:block;color:#758391}.admin-stars{color:#f4b400;letter-spacing:.05em}

@media(max-width:1100px){
  .site-header .brand-copy{display:none}.site-header .brand{min-width:auto}.site-header .nav-actions{gap:.5rem}.site-nav>a,.nav-dropdown-trigger{padding:.62rem .5rem;font-size:.7rem}
}
@media(max-width:980px){
  .hamb{display:flex!important}.site-header-inner{min-height:70px}.site-header .nav-actions{position:absolute;top:100%;left:3vw;right:3vw;display:none!important;padding:1rem;align-items:stretch;flex-direction:column;border:1px solid var(--human-border);border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(16,43,66,.14)}.site-header .nav-actions.open{display:flex!important}.site-nav{align-items:stretch;flex-direction:column}.site-nav>a,.nav-dropdown-trigger{width:100%;justify-content:space-between;padding:.75rem}.nav-dropdown-menu{position:static;width:auto;margin:.2rem 0 .5rem;padding:.3rem;opacity:1;visibility:visible;transform:none;border:0;border-left:2px solid #d8e2e6;border-radius:0;box-shadow:none}.nav-dropdown-menu::before{display:none}.site-header .nav-book{text-align:center}
  .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-category-nav{top:70px}.category-section-heading{align-items:flex-start;flex-direction:column}.category-section-heading p{text-align:left}
}
@media(max-width:650px){
  .section{padding-top:3.3rem!important;padding-bottom:3.3rem!important}.compact-hero-copy h1{font-size:2.45rem!important}.story-grid{grid-template-columns:1fr}.story-card-media{height:210px;flex-basis:210px}.case-category-nav{position:static}.case-category-nav .container{grid-template-columns:1fr}.case-category-nav a{border-left:1px solid var(--human-border);border-bottom:1px solid var(--human-border)}.case-admin-overview{grid-template-columns:1fr}
}

:root{
  --sunrise-charcoal:#2b3036;
  --sunrise-navy:#132f42;
  --sunrise-orange:#f47721;
  --sunrise-soft:#f7f5f4;
  --equinox-gold:#d9a83f;
  --human-text:#263746;
}

html,body,
button,input,textarea,select{
  font-family:"Poppins",Arial,sans-serif!important;
}

body{
  color:var(--human-text);
  font-size:15px;
  line-height:1.7;
}

h1,h2,h3,h4,h5,h6,
.title,
.page-hero h1,
.hero h1,
.compact-hero-copy h1,
.brand-copy strong,
.booking-option h2,
.scheduler-header h2{
  font-family:"Poppins",Arial,sans-serif!important;
  letter-spacing:-.025em!important;
}

h1,.page-hero h1,.compact-hero-copy h1{font-weight:700!important;line-height:1.14!important}
h2,.title{font-weight:600!important;line-height:1.25!important}
h3,h4,h5,h6{font-weight:600!important}

.eyebrow{
  color:var(--sunrise-orange)!important;
  font-weight:600!important;
  letter-spacing:.06em!important;
}

.sunrise-topbar{
  background:var(--sunrise-charcoal)!important;
  color:#fff;
  font-size:.76rem;
}

.sunrise-topbar-inner{
  min-height:48px!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
}

.topbar-contact-group{
  display:flex;
  align-items:center;
  gap:1.6rem;
}

.sunrise-topbar a,
.sunrise-topbar span{
  color:rgba(255,255,255,.94);
  white-space:nowrap;
}

.sunrise-topbar a:hover{color:#fff}

.sunrise-header{
  position:sticky;
  top:0;
  z-index:150;
  background:#fff!important;
  backdrop-filter:none!important;
  border-bottom:3px solid rgba(13,123,128,.55)!important;
  box-shadow:0 3px 12px rgba(18,47,66,.07)!important;
}

.sunrise-header-inner{
  min-height:86px!important;
  gap:2.2rem!important;
}

.sunrise-brand{
  min-width:245px!important;
}

.sunrise-brand .brand-mark{
  width:66px!important;
  height:66px!important;
  flex-basis:66px!important;
  border:0!important;
  box-shadow:none!important;
}

.sunrise-brand .brand-copy strong{
  color:#17364a!important;
  font-size:1.45rem!important;
  font-weight:600!important;
}

.sunrise-brand .brand-copy small{
  color:#657582!important;
  font-size:.58rem!important;
  font-weight:500!important;
  letter-spacing:.1em!important;
}

.sunrise-nav-actions{
  gap:1.15rem!important;
}

.sunrise-site-nav{
  display:flex;
  align-items:center;
  gap:1.9rem!important;
}

.sunrise-site-nav>a,
.sunrise-site-nav .nav-dropdown-trigger{
  position:relative;
  min-height:84px;
  padding:0!important;
  display:inline-flex;
  align-items:center;
  gap:.25rem;
  border-radius:0!important;
  color:#122d40!important;
  background:transparent!important;
  font-size:.76rem!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:uppercase;
  white-space:nowrap;
}

.sunrise-site-nav>a::after,
.sunrise-site-nav .nav-dropdown-trigger::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:18px;
  height:2px;
  background:var(--sunrise-orange);
  transition:right .2s ease;
}

.sunrise-site-nav>a:hover,
.sunrise-site-nav>a.active,
.sunrise-site-nav .nav-dropdown-trigger:hover,
.sunrise-site-nav .nav-dropdown-trigger.active{
  color:var(--sunrise-orange)!important;
}

.sunrise-site-nav>a:hover::after,
.sunrise-site-nav>a.active::after,
.sunrise-site-nav .nav-dropdown-trigger:hover::after,
.sunrise-site-nav .nav-dropdown-trigger.active::after{
  right:0;
}

.sunrise-book-button{
  min-height:44px!important;
  padding:.75rem 1.05rem!important;
  border:0!important;
  border-radius:4px!important;
  color:#142c3e!important;
  background:var(--equinox-gold)!important;
  box-shadow:none!important;
  font-size:.74rem!important;
  font-weight:700!important;
  text-transform:uppercase;
}

.sunrise-book-button:hover{
  color:#fff!important;
  background:var(--sunrise-orange)!important;
  transform:none!important;
}

.nav-dropdown-menu{
  top:calc(100% - 10px)!important;
  border-top:3px solid var(--sunrise-orange)!important;
  border-radius:2px!important;
  box-shadow:0 12px 30px rgba(18,47,66,.14)!important;
}

.nav-dropdown-menu a{
  border-radius:2px!important;
  font-family:"Poppins",Arial,sans-serif!important;
}

.nav-dropdown-menu a:hover{
  background:#f8f5f2!important;
}

.nav-dropdown-menu strong{font-weight:600!important}

.card, .team-card, .blog-card-equal, .booking-option, .scheduler-card, .about-info-card, .story-card, .case-detail, .form-card, .office-card{
  border-radius:6px!important;
  box-shadow:0 5px 16px rgba(18,47,66,.055)!important;
}

.btn,.cta,
.compact-hero .btn,
.text-link,
.study-link{
  border-radius:4px!important;
  font-family:"Poppins",Arial,sans-serif!important;
}

.compact-hero-copy h1{
  font-size:clamp(2.65rem,4vw,4.05rem)!important;
  max-width:620px!important;
}

.compact-hero-copy p{
  font-size:.95rem!important;
  line-height:1.75!important;
}

.title{
  font-size:clamp(2rem,3vw,3.05rem)!important;
}

.home-stories-section{
  background:#f8f6f5!important;
}

.story-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.45rem!important;
  align-items:stretch;
}

.success-story-card{
  height:100%;
  overflow:hidden;
  border:1px solid #e3e5e7;
  border-radius:3px;
  background:#fff;
  box-shadow:0 5px 14px rgba(18,47,66,.055);
  transition:transform .2s ease,box-shadow .2s ease;
}

.success-story-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(18,47,66,.10);
}

.success-story-link{
  height:100%;
  min-height:515px;
  display:flex;
  flex-direction:column;
  color:inherit;
}

.success-story-quote-panel{
  position:relative;
  min-height:260px;
  padding:2rem 2rem 4.4rem;
  overflow:hidden;
  color:#fff;
  background:var(--sunrise-navy);
}

.success-story-quote-panel::before{
  content:"";
  position:absolute;
  left:0;
  top:48px;
  bottom:54px;
  width:4px;
  background:var(--sunrise-orange);
}

.success-story-category{
  display:inline-block;
  margin-bottom:1rem;
  color:#f8aa68;
  font-size:.68rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.success-story-quote-panel p{
  margin:0;
  display:-webkit-box;
  overflow:hidden;
  color:rgba(255,255,255,.88);
  font-size:.92rem;
  line-height:1.7;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
}

.success-quote-mark{
  position:absolute;
  right:1.35rem;
  bottom:-.55rem;
  color:#ff5d59;
  font-family:Georgia,"Times New Roman",serif;
  font-size:6.5rem;
  line-height:1;
  transform:rotate(180deg);
}

.success-story-lower{
  position:relative;
  flex:1;
  padding:5.5rem 2rem 1.6rem;
  background:#fff;
}

.success-story-image{
  position:absolute;
  left:2rem;
  top:-3rem;
  width:55%;
  height:118px;
  overflow:hidden;
  border:8px solid #fff;
  background:#eef2f3;
  box-shadow:0 4px 12px rgba(18,47,66,.12);
}

.success-story-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.success-story-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  background:#edf1f2;
}

.success-story-placeholder img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:50%;
}

.success-story-details{
  display:flex;
  flex-direction:column;
  min-height:135px;
}

.success-story-details h3{
  margin:0 0 .3rem;
  color:#102d41;
  font-size:1.05rem;
}

.success-story-title{
  color:var(--sunrise-orange);
  font-size:.82rem;
  line-height:1.5;
}

.success-story-read{
  margin-top:auto;
  padding-top:1rem;
  color:#17364a;
  font-size:.7rem;
  font-weight:600;
  text-transform:uppercase;
}

.case-stories-hero .eyebrow,
.category-section-heading .eyebrow{
  color:#f6b24b!important;
}

.case-category-nav a:hover{
  color:var(--sunrise-orange)!important;
  background:#fbf7f3!important;
}

.category-index{
  border-radius:3px!important;
  background:var(--sunrise-orange)!important;
}

@media(max-width:1160px){
  .sunrise-site-nav{gap:1.1rem!important}
  .sunrise-site-nav>a,
  .sunrise-site-nav .nav-dropdown-trigger{font-size:.69rem!important}
  .sunrise-brand .brand-copy{display:none!important}
  .sunrise-brand{min-width:auto!important}
}

@media(max-width:980px){
  .sunrise-topbar-inner{min-height:42px!important}
  .topbar-contact-group:first-child span{display:none}
  .sunrise-header-inner{min-height:72px!important}
  .sunrise-brand .brand-mark{width:54px!important;height:54px!important;flex-basis:54px!important}
  .sunrise-nav-actions{
    position:absolute!important;
    top:100%!important;
    left:3vw!important;
    right:3vw!important;
    display:none!important;
    padding:1rem!important;
    align-items:stretch!important;
    flex-direction:column!important;
    border:1px solid #dfe4e7!important;
    border-top:3px solid var(--sunrise-orange)!important;
    border-radius:2px!important;
    background:#fff!important;
    box-shadow:0 18px 45px rgba(18,47,66,.16)!important;
  }
  .sunrise-nav-actions.open{display:flex!important}
  .sunrise-site-nav{align-items:stretch!important;flex-direction:column!important;gap:0!important}
  .sunrise-site-nav>a,
  .sunrise-site-nav .nav-dropdown-trigger{
    width:100%!important;
    min-height:46px!important;
    padding:.7rem .2rem!important;
    justify-content:space-between!important;
  }
  .sunrise-site-nav>a::after,
  .sunrise-site-nav .nav-dropdown-trigger::after{bottom:3px}
  .sunrise-book-button{width:100%;text-align:center}
  .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:650px){
  .sunrise-topbar-inner{justify-content:center}
  .topbar-contact-right a:first-child{display:none}
  .topbar-contact-group{gap:.8rem}
  .story-grid{grid-template-columns:1fr!important}
  .success-story-link{min-height:auto}
  .success-story-quote-panel{min-height:235px}
  .success-story-lower{padding-left:1.4rem;padding-right:1.4rem}
  .success-story-image{left:1.4rem;width:62%}
}

.success-editorial-hero{
  position:relative;
  padding:2rem 0 3.4rem;
  overflow:hidden;
  border-bottom:1px solid rgba(18,47,66,.08);
  background:
    radial-gradient(circle at 70% 22%,rgba(13,123,128,.055),transparent 28%),
    #fff;
}

.success-breadcrumb{
  display:flex;
  align-items:center;
  gap:.65rem;
  margin-bottom:2.2rem;
  overflow:hidden;
  color:#667785;
  font-size:.68rem;
  white-space:nowrap;
}

.success-breadcrumb a{
  color:#526879;
}

.success-breadcrumb a:hover{
  color:var(--sunrise-orange,#f47721);
}

.success-breadcrumb strong{
  overflow:hidden;
  color:#203749;
  font-weight:500;
  text-overflow:ellipsis;
}

.success-editorial-grid{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);
  align-items:center;
  gap:4rem;
}

.success-editorial-copy{
  max-width:760px;
}

.success-editorial-copy .eyebrow{
  margin-bottom:.7rem;
  color:#f47721!important;
  text-transform:uppercase;
}

.success-editorial-copy h1{
  max-width:760px;
  margin:0;
  color:#102d42;
  font-size:clamp(2.5rem,4.5vw,4.6rem);
  font-weight:600!important;
  line-height:1.12!important;
  letter-spacing:-.045em!important;
}

.success-editorial-copy>p{
  max-width:680px;
  margin:1.2rem 0 0;
  color:#465e70;
  font-size:.96rem;
  line-height:1.8;
}

.success-intro-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem 1.25rem;
  margin-top:1rem;
}

.success-intro-meta span{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:#20394d;
  font-size:.78rem;
  font-weight:500;
}

.success-intro-meta span::before{
  content:"";
  width:7px;
  height:7px;
  border:2px solid #163d68;
  border-radius:50%;
}

.success-route-art{
  min-height:280px;
  display:grid;
  place-items:center;
  opacity:.9;
}

.success-route-art svg{
  width:100%;
  max-width:480px;
  height:auto;
}

.success-story-main{
  padding:3.25rem 0 4.8rem;
  background:#f6f8f9;
}

.success-story-panels{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);
  gap:1.35rem;
  align-items:stretch;
}

.success-journey-panel,
.success-media-panel{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(18,47,66,.10);
  border-radius:9px;
  background:#fff;
  box-shadow:0 12px 34px rgba(18,47,66,.06);
}

.success-journey-panel{
  padding:1.65rem 1.7rem 1.45rem;
}

.success-panel-heading,
.success-media-heading{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin-bottom:1.25rem;
}

.success-panel-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(244,119,33,.28);
  border-radius:50%;
  color:#f47721;
  background:#fff8f2;
  font-size:.9rem;
  font-weight:700;
}

.success-panel-heading small{
  display:block;
  color:#73818d;
  font-size:.62rem;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.success-panel-heading h2,
.success-media-heading h2{
  margin:0;
  color:#102d42;
  font-size:1.22rem;
  font-weight:600!important;
}

.success-rich-content{
  font-family:"Poppins",Arial,sans-serif!important;
  color:#354b5c!important;
  font-size:.84rem!important;
  line-height:1.82!important;
}

.success-rich-content h2,
.success-rich-content h3,
.success-rich-content h4,
.success-rich-content h5{
  font-family:"Poppins",Arial,sans-serif!important;
  color:#102d42!important;
  font-size:1rem!important;
  font-weight:600!important;
}

.success-rich-content strong,
.success-rich-content b{
  color:#193b55;
}

.success-rich-content ul,
.success-rich-content ol{
  display:grid;
  gap:.35rem;
}

.success-goodwish{
  margin-top:1.15rem;
  padding-top:1rem;
  border-top:1px solid rgba(18,47,66,.10);
  color:#3e5669;
  font-size:.78rem;
}

.success-media-panel{
  display:flex;
  flex-direction:column;
  padding:1rem;
  background:#fff;
}

.success-media-heading{
  min-height:48px;
  margin:-1rem -1rem 1rem;
  padding:.9rem 1.1rem;
  color:#fff;
  background:linear-gradient(100deg,#0b2840,#123e61);
}

.success-media-heading span{
  color:#f4c363;
}

.success-media-heading h2{
  color:#fff;
  font-size:.92rem;
}

.success-video-frame{
  position:relative;
  min-height:490px;
  flex:1;
  overflow:hidden;
  border-radius:5px;
  background:#1c1e21;
}

.success-video-frame iframe{
  width:100%;
  height:100%;
  min-height:490px;
  display:block;
  border:0;
}

.success-image-frame{
  margin:0;
  overflow:hidden;
  border-radius:5px;
  background:#e9eef1;
}

.success-image-frame img{
  width:100%;
  height:490px;
  display:block;
  object-fit:cover;
}

.success-image-frame figcaption{
  padding:.7rem .9rem;
  color:#fff;
  background:#0e304a;
  font-size:.7rem;
}

.success-media-fallback{
  margin-top:.75rem;
  align-self:flex-start;
  color:#16767c;
  font-size:.68rem;
  font-weight:600;
}

.success-media-empty{
  min-height:420px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:.65rem;
  padding:2rem;
  text-align:center;
  color:#6b7e8d;
  background:#f5f8f9;
}

.success-media-empty img{
  width:78px;
  height:78px;
  border-radius:50%;
}

.success-media-empty strong{
  color:#17374e;
}

.success-media-empty p{
  max-width:330px;
  margin:0;
  font-size:.76rem;
}

.success-facts-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1rem;
  margin-top:1.35rem;
}

.success-fact-card{
  min-height:180px;
  padding:1.15rem .9rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  border:1px solid rgba(18,47,66,.09);
  border-radius:7px;
  text-align:center;
  background:#fff;
  box-shadow:0 7px 22px rgba(18,47,66,.045);
}

.success-fact-icon{
  width:48px;
  height:48px;
  margin-bottom:.75rem;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#143b61;
  background:#fff0e5;
  font-size:1.1rem;
}

.success-fact-card small{
  color:#6e7d88;
  font-size:.61rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.055em;
}

.success-fact-card strong{
  margin:.38rem 0 .25rem;
  color:#102d42;
  font-size:.92rem;
  line-height:1.35;
}

.success-fact-card p{
  margin:0;
  color:#647685;
  font-size:.65rem;
  line-height:1.5;
}

.success-consultation-cta{
  display:grid;
  grid-template-columns:76px minmax(0,1fr) auto;
  align-items:center;
  gap:1.25rem;
  margin-top:1.35rem;
  padding:1.35rem 1.55rem;
  border:1px solid rgba(244,119,33,.25);
  border-radius:8px;
  background:linear-gradient(100deg,#fff8f2,#fffdf9);
}

.success-cta-icon{
  width:60px;
  height:60px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#173e62;
  background:#ffe5cf;
  font-size:1.55rem;
}

.success-consultation-cta h2{
  margin:0 0 .2rem;
  color:#102d42;
  font-size:1.25rem;
  font-weight:600!important;
}

.success-consultation-cta p{
  max-width:720px;
  margin:0;
  color:#526879;
  font-size:.76rem;
}

.success-consultation-cta .btn{
  min-width:220px;
  justify-content:center;
  border-radius:4px!important;
  color:#142c3e;
  background:#e2ad3b;
}

.related-success-section{
  margin-top:3rem;
}

.related-success-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1.5rem;
  margin-bottom:1.15rem;
}

.related-success-heading h2{
  margin:.1rem 0 0;
  color:#102d42;
  font-size:1.45rem;
  font-weight:600!important;
}

.related-success-heading>a{
  color:#1c6470;
  font-size:.7rem;
  font-weight:600;
}

.related-success-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}

.related-success-card{
  overflow:hidden;
  border:1px solid rgba(18,47,66,.09);
  border-radius:6px;
  background:#fff;
  box-shadow:0 5px 16px rgba(18,47,66,.045);
  transition:transform .2s ease,box-shadow .2s ease;
}

.related-success-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 25px rgba(18,47,66,.09);
}

.related-success-media{
  position:relative;
  height:205px;
  overflow:hidden;
  background:#e9eef0;
}

.related-success-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.related-success-media>span{
  position:absolute;
  left:.75rem;
  top:.75rem;
  padding:.32rem .5rem;
  border-radius:3px;
  color:#fff;
  background:rgba(12,45,68,.86);
  font-size:.58rem;
  font-weight:600;
  text-transform:uppercase;
}

.related-success-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
}

.related-success-placeholder img{
  width:82px;
  height:82px;
  border-radius:50%;
}

.related-success-copy{
  padding:1rem 1.05rem 1.1rem;
}

.related-success-copy h3{
  margin:0 0 .25rem;
  color:#102d42;
  font-size:.94rem;
}

.related-success-copy p{
  min-height:44px;
  margin:0 0 .85rem;
  color:#f47721;
  font-size:.7rem;
  line-height:1.5;
}

.related-success-copy strong{
  color:#173d5e;
  font-size:.65rem;
  text-transform:uppercase;
}

@media(max-width:1020px){
  .success-editorial-grid{
    grid-template-columns:1fr;
    gap:1.25rem;
  }

  .success-route-art{
    position:absolute;
    right:-80px;
    top:90px;
    width:440px;
    opacity:.18;
    pointer-events:none;
  }

  .success-story-panels{
    grid-template-columns:1fr;
  }

  .success-facts-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .success-video-frame,
  .success-video-frame iframe,
  .success-image-frame img{
    min-height:520px;
    height:520px;
  }
}

@media(max-width:760px){
  .success-editorial-hero{
    padding:1.25rem 0 2.3rem;
  }

  .success-breadcrumb{
    margin-bottom:1.5rem;
  }

  .success-editorial-copy h1{
    font-size:2.55rem;
  }

  .success-route-art{
    display:none;
  }

  .success-story-main{
    padding:1.75rem 0 3rem;
  }

  .success-journey-panel{
    padding:1.25rem;
  }

  .success-facts-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .success-consultation-cta{
    grid-template-columns:58px minmax(0,1fr);
  }

  .success-consultation-cta .btn{
    grid-column:1/-1;
    width:100%;
  }

  .related-success-grid{
    grid-template-columns:1fr;
  }

  .related-success-media{
    height:235px;
  }

  .success-video-frame,
  .success-video-frame iframe,
  .success-image-frame img{
    min-height:390px;
    height:390px;
  }
}

@media(max-width:480px){
  .success-editorial-copy h1{
    font-size:2.15rem;
  }

  .success-intro-meta{
    flex-direction:column;
    gap:.45rem;
  }

  .success-facts-grid{
    grid-template-columns:1fr;
  }

  .success-fact-card{
    min-height:150px;
  }

  .success-consultation-cta{
    grid-template-columns:1fr;
    text-align:center;
  }

  .success-cta-icon{
    margin:0 auto;
  }
}

html{overflow-x:hidden}
body{overflow-x:hidden}
img,svg,video,iframe{max-width:100%}
img{height:auto}
*,*::before,*::after{box-sizing:border-box}

.compact-hero-image{
  background-image:
    linear-gradient(90deg,rgba(7,29,50,.24),transparent 20%),
    linear-gradient(0deg,rgba(7,29,50,.18),transparent 32%),
    var(--hero-image)!important;
  background-position:center,center,53% center!important;
  background-size:auto,auto,cover!important;
  background-repeat:no-repeat!important;
}

.study-visual{
  background-image:
    linear-gradient(180deg,rgba(7,29,50,.02) 32%,rgba(7,29,50,.72) 100%),
    var(--study-image)!important;
  background-position:center,center 48%!important;
  background-size:auto,cover!important;
  background-repeat:no-repeat!important;
}

.services-cover{
  background-image:
    linear-gradient(90deg,rgba(7,29,50,.82),rgba(7,29,50,.36)),
    var(--services-cover-image)!important;
  background-position:center,center!important;
  background-size:auto,cover!important;
  background-repeat:no-repeat!important;
}

.media-page-hero{
  position:relative;
  isolation:isolate;
  background-image:
    linear-gradient(90deg,rgba(7,29,50,.92),rgba(7,29,50,.68)),
    var(--page-banner)!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.media-page-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(7,29,50,.2),transparent 65%)}

.home-stories-cover{
  min-height:205px;
  margin-bottom:1.5rem;
  padding:2rem 2.2rem;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:2rem;
  position:relative;
  overflow:hidden;
  border-radius:8px;
  color:#fff;
  background-image:linear-gradient(90deg,rgba(7,29,50,.92),rgba(7,29,50,.48)),var(--stories-cover-image);
  background-size:cover;
  background-position:center;
}
.home-stories-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,29,50,.24),transparent 58%);pointer-events:none}
.home-stories-cover>*{position:relative;z-index:1}
.home-stories-cover .eyebrow{color:#f4b55b!important}
.home-stories-cover .title{margin:.15rem 0 .3rem;color:#fff!important}
.home-stories-cover p{max-width:720px;margin:0;color:rgba(255,255,255,.82)}
.home-stories-cover .text-link{flex:0 0 auto;color:#fff;border-bottom-color:rgba(255,255,255,.6)}

.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.formgrid, .form-grid, .cards, .story-grid, .team-grid, .blog-grid, .stats-grid, .trust-grid, .footer-grid{min-width:0}
.card, .story-card, .success-story-card, .team-card, .blog-card-equal{min-width:0}

@media(max-width:1180px){
  .container{width:min(1080px,calc(100% - 36px))}
  .sunrise-site-nav{gap:.85rem!important}
  .sunrise-site-nav>a,.sunrise-site-nav .nav-dropdown-trigger{font-size:.65rem!important}
  .compact-hero-copy{padding:42px 38px!important}
  .compact-hero-copy h1{font-size:clamp(2.5rem,4vw,3.65rem)!important}
  .expertise-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1.35fr 1fr 1fr .85fr;gap:1.5rem}
}

@media(max-width:1024px){
  .container{width:calc(100% - 32px)}
  .topbar-contact-group{gap:.8rem}
  .compact-hero-shell{grid-template-columns:46% 54%!important;min-height:460px}
  .compact-hero-copy{padding:38px 30px!important}
  .compact-hero-image{min-height:460px!important}
  .compact-proof{gap:.45rem .7rem}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-about-grid,.study-grid,.about-long-grid,.contact-grid{gap:2rem}
  .story-grid, .expertise-cards, .team-grid, .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .services-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
  .success-story-panels{grid-template-columns:1fr!important}
  .success-video-frame,.success-video-frame iframe,.success-image-frame img{min-height:500px!important;height:500px!important}
}

@media(max-width:980px){
  .sunrise-header{position:sticky;top:0}
  .sunrise-nav-actions{max-height:calc(100vh - 118px);overflow-y:auto}
  .nav-dropdown-menu{position:static!important;display:none!important;width:100%!important;min-width:0!important;margin:.2rem 0 .55rem;padding:.35rem;border:1px solid #e2e7ea!important;box-shadow:none!important}
  .nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:block!important}
  .nav-dropdown-menu a{padding:.7rem!important}
  .home-about-grid,.study-grid,.about-long-grid,.contact-grid{grid-template-columns:1fr!important}
  .home-about-image-wrap{order:-1;max-height:440px;overflow:hidden}
  .home-about-image-wrap img{width:100%;height:440px;object-fit:cover}
  .study-visual{min-height:430px}
  .case-category-nav .container{overflow-x:auto;justify-content:flex-start;scrollbar-width:thin}
  .case-category-nav a{min-width:180px;flex:0 0 auto}
  .success-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .related-success-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:820px){
  .compact-hero{padding:18px 0 24px!important}
  .compact-hero-shell{grid-template-columns:1fr!important;min-height:0;border-radius:14px!important}
  .compact-hero-copy{padding:38px 30px 34px!important}
  .compact-hero-copy h1{font-size:clamp(2.5rem,8vw,3.4rem)!important}
  .compact-hero-image{min-height:390px!important}
  .compact-location{left:16px!important;bottom:16px!important}
  .home-stories-cover{align-items:flex-start;flex-direction:column;min-height:245px;padding:1.6rem}
  .home-stories-cover .text-link{margin-top:auto}
  .section{padding:3.5rem 0!important}
  .page-hero{padding:2.6rem 0!important}
  .page-hero h1{font-size:clamp(2.1rem,7vw,3.1rem)!important}
  .success-editorial-grid{grid-template-columns:1fr!important}
  .success-route-art{display:none}
  .success-consultation-cta{grid-template-columns:58px minmax(0,1fr)!important}
  .success-consultation-cta .btn{grid-column:1/-1;width:100%}
  .booking-options{grid-template-columns:1fr!important}
  .booking-security{grid-template-columns:1fr!important}
  .scheduler-header{align-items:flex-start;flex-direction:column}
  .scheduler-external{width:100%;text-align:center}
}

@media(max-width:680px){
  .container{width:calc(100% - 24px)}
  body{font-size:14px}
  .sunrise-topbar-inner{min-height:38px!important;justify-content:center}
  .topbar-contact-group:first-child{display:none}
  .topbar-contact-right a:first-child{display:none}
  .sunrise-header-inner{min-height:68px!important}
  .sunrise-brand .brand-mark{width:50px!important;height:50px!important;flex-basis:50px!important}
  .compact-hero-copy{padding:32px 22px 28px!important}
  .compact-hero-copy h1{font-size:clamp(2.2rem,10vw,2.85rem)!important}
  .compact-hero-copy .actions{display:grid;grid-template-columns:1fr;gap:.65rem}
  .compact-hero-copy .btn{width:100%;justify-content:center}
  .compact-hero-image{min-height:300px!important;background-position:center,center,58% center!important}
  .compact-location{max-width:calc(100% - 32px);padding:.65rem .8rem}
  .trust-grid, .stats-grid, .story-grid, .expertise-cards, .team-grid, .blog-grid, .services-card-grid, .related-success-grid{grid-template-columns:1fr!important}
  .trust-item{min-height:88px}
  .home-about-image-wrap img{height:300px}
  .study-visual{min-height:320px;border-radius:12px}
  .study-visual::after{font-size:1.85rem!important}
  .section-head{align-items:flex-start;flex-direction:column;gap:.8rem}
  .title{font-size:clamp(1.85rem,8vw,2.45rem)!important}
  .success-story-link{min-height:auto}
  .success-story-quote-panel{min-height:220px;padding:1.5rem 1.4rem 4rem}
  .success-story-lower{padding:5rem 1.4rem 1.35rem}
  .success-story-image{left:1.4rem;width:64%}
  .case-category-nav .container{width:100%;padding-inline:12px}
  .success-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .success-video-frame,.success-video-frame iframe,.success-image-frame img{min-height:370px!important;height:370px!important}
  .success-consultation-cta{grid-template-columns:1fr!important;text-align:center}
  .success-cta-icon{margin-inline:auto}
  .form-grid,.formgrid{grid-template-columns:1fr!important}
  .form-grid .full,.formgrid .full{grid-column:auto!important}
  .footer-grid{grid-template-columns:1fr!important}
  .footer-brand{align-items:flex-start;flex-direction:column}
  .floating-contact{right:12px;bottom:12px}
  .floating-toggle{width:50px;height:50px}
  .acuity-compact,.acuity-compact .acuity-frame{height:660px!important}
}

@media(max-width:430px){
  .container{width:calc(100% - 20px)}
  .compact-hero-copy{padding:28px 18px 25px!important}
  .compact-hero-image{min-height:255px!important}
  .compact-proof{display:grid;grid-template-columns:1fr}
  .home-stories-cover{min-height:270px;padding:1.3rem}
  .home-stories-cover p{font-size:.8rem}
  .success-facts-grid{grid-template-columns:1fr!important}
  .success-fact-card{min-height:145px!important}
  .success-editorial-copy h1{font-size:2rem!important}
  .success-breadcrumb{font-size:.58rem}
  .success-journey-panel{padding:1rem!important}
  .success-video-frame,.success-video-frame iframe,.success-image-frame img{min-height:300px!important;height:300px!important}
  .booking-option{grid-template-columns:42px 1fr!important}
  .booking-price{grid-column:2}
  .scheduler-card{border-radius:10px!important}
  .acuity-compact,.acuity-compact .acuity-frame{height:620px!important}
}

:root{
  --theme-navy:#092a40;
  --theme-navy-2:#123e5b;
  --theme-gold:#dcae42;
  --theme-orange:#e8792c;
  --theme-ink:#162d3e;
  --theme-text:#42596a;
  --theme-line:rgba(18,47,66,.12);
  --theme-paper:#f7f5f1;
}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body,button,input,textarea,select{font-family:"Inter",Arial,sans-serif!important}
body{color:var(--theme-text);font-size:15px;line-height:1.68;overflow-x:hidden}
h1,h2,.title,.page-hero h1,.compact-hero-copy h1,.services-cover h1,.service-detail-hero h1,.booking-hero h1{font-family:"Lora",Georgia,serif!important;color:var(--theme-ink);font-weight:600!important;line-height:1.18!important;letter-spacing:-.025em!important}
h3,h4,h5,h6,.brand-copy strong{font-family:"Inter",Arial,sans-serif!important}
.container{width:min(1180px,92vw)!important;margin-inline:auto!important}
.section{height:auto!important;min-height:0!important;padding:4.7rem 0!important}
.eyebrow{color:var(--theme-orange)!important;font-size:.68rem!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.title{font-size:clamp(2.05rem,3.5vw,3.45rem)!important}

.sunrise-topbar{position:relative!important;z-index:190!important;background:#292f35!important}
.sunrise-topbar-inner{min-height:42px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;color:#fff!important;font-size:.69rem!important}
.topbar-contact-group{display:flex!important;align-items:center!important;gap:1.35rem!important}
.sunrise-topbar a,.sunrise-topbar span{color:rgba(255,255,255,.92)!important}
.sunrise-header{position:sticky!important;top:0!important;z-index:180!important;display:block!important;background:#fff!important;border-bottom:2px solid rgba(220,174,66,.72)!important;box-shadow:0 5px 18px rgba(9,42,64,.07)!important}
.sunrise-header-inner{min-height:84px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1.5rem!important}
.sunrise-brand{display:flex!important;align-items:center!important;gap:.8rem!important;min-width:220px!important}
.sunrise-brand .brand-mark{width:62px!important;height:62px!important;flex:0 0 62px!important;border-radius:50%!important;overflow:hidden!important}
.sunrise-brand .brand-mark img{width:100%!important;height:100%!important;object-fit:cover!important}
.sunrise-brand .brand-copy strong{display:block!important;color:var(--theme-navy)!important;font-size:1.32rem!important;font-weight:700!important;line-height:1.05!important}
.sunrise-brand .brand-copy small{display:block!important;margin-top:.2rem!important;color:#667786!important;font-size:.54rem!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.sunrise-nav-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:1rem!important}
.sunrise-site-nav{display:flex!important;align-items:center!important;gap:1.35rem!important}
.sunrise-site-nav>a,.sunrise-site-nav .nav-dropdown-trigger{position:relative!important;min-height:82px!important;padding:0!important;display:inline-flex!important;align-items:center!important;gap:.25rem!important;border-radius:0!important;color:#173247!important;background:transparent!important;font-size:.69rem!important;font-weight:700!important;text-transform:uppercase!important;white-space:nowrap!important}
.sunrise-site-nav>a::after,.sunrise-site-nav .nav-dropdown-trigger::after{content:""!important;position:absolute!important;left:0!important;right:100%!important;bottom:18px!important;height:2px!important;background:var(--theme-orange)!important;transition:right .18s ease!important}
.sunrise-site-nav>a:hover,.sunrise-site-nav>a.active,.sunrise-site-nav .nav-dropdown-trigger:hover,.sunrise-site-nav .nav-dropdown-trigger.active{color:var(--theme-orange)!important}
.sunrise-site-nav>a:hover::after,.sunrise-site-nav>a.active::after,.sunrise-site-nav .nav-dropdown-trigger:hover::after,.sunrise-site-nav .nav-dropdown-trigger.active::after{right:0!important}
.sunrise-book-button{min-height:44px!important;padding:.72rem 1.05rem!important;border:0!important;border-radius:5px!important;color:#122b3c!important;background:var(--theme-gold)!important;box-shadow:0 7px 16px rgba(177,124,14,.15)!important;font-size:.7rem!important;font-weight:800!important;text-transform:uppercase!important;white-space:nowrap!important}
.sunrise-book-button:hover{color:#fff!important;background:var(--theme-orange)!important}
.hamb{display:none!important;width:45px!important;height:42px!important;padding:9px!important;border:1px solid var(--theme-line)!important;border-radius:5px!important;background:#fff!important}
.hamb span{display:block!important;width:100%!important;height:2px!important;margin:4px 0!important;background:var(--theme-navy)!important}
.nav-dropdown-menu{top:calc(100% - 13px)!important;min-width:260px!important;border-top:3px solid var(--theme-orange)!important;border-radius:4px!important;box-shadow:0 15px 35px rgba(9,42,64,.15)!important}

.feedback-hero{height:auto!important;min-height:0!important;padding:1.8rem 0 0!important;background:#f2f5f5!important}
.feedback-hero .compact-hero-shell{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;min-height:610px!important;overflow:hidden!important;border-radius:10px 10px 0 0!important;box-shadow:0 16px 42px rgba(9,42,64,.12)!important}
.feedback-hero .compact-hero-copy{padding:4.2rem 3.4rem!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:linear-gradient(145deg,#082b42,#0b3854)!important}
.feedback-hero .compact-hero-copy h1{max-width:570px!important;margin:.55rem 0 1rem!important;color:#fff!important;font-size:clamp(3rem,5vw,5.2rem)!important}
.feedback-hero .compact-hero-copy h1 span{color:#f2c35f!important}
.feedback-hero .compact-hero-copy p{max-width:590px!important;margin:0!important;color:rgba(255,255,255,.82)!important;font-size:.94rem!important;line-height:1.75!important}
.feedback-hero .compact-hero-image{min-height:610px!important;background-image:linear-gradient(0deg,rgba(5,25,38,.25),rgba(5,25,38,0) 45%),var(--hero-image)!important;background-size:cover!important;background-position:center!important}
.feedback-hero .actions{margin-top:1.5rem!important}
.feedback-hero .btn{border-radius:5px!important}
.prominent-proof{display:flex!important;flex-wrap:wrap!important;gap:.55rem!important;margin-top:1.35rem!important}
.prominent-proof span{padding:.5rem .7rem!important;border:1px solid rgba(255,255,255,.23)!important;border-radius:4px!important;color:#fff!important;background:rgba(255,255,255,.08)!important;font-size:.62rem!important;font-weight:700!important}
.feedback-service-strip{height:auto!important;min-height:0!important;background:#fff!important;border-bottom:1px solid var(--theme-line)!important}
.feedback-service-strip .trust-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
.feedback-service-strip .trust-item{min-width:0!important;padding:1rem 1.1rem!important;color:inherit!important;background:#fff!important;transition:background .18s ease!important}
.feedback-service-strip .trust-item:hover{background:#f9f6ef!important}
.feedback-service-strip .trust-item strong{display:block!important;color:var(--theme-ink)!important;font-size:.72rem!important}
.feedback-service-strip .trust-item span{display:block!important;color:#6a7c88!important;font-size:.58rem!important;line-height:1.45!important}

.human-about-section{background:#fff!important}
.human-about-grid{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr)!important;align-items:center!important;gap:4.5rem!important}
.human-about-copy p{max-width:690px!important;font-size:.91rem!important}
.principal-note{margin:1.35rem 0 0!important;padding:1rem 1.15rem!important;border-left:4px solid var(--theme-gold)!important;color:#17384e!important;background:#f8f4eb!important;font-family:"Lora",Georgia,serif!important;font-size:1.02rem!important;line-height:1.55!important}
.principal-note strong,.principal-note span{display:block!important}
.principal-note span{margin-top:.5rem!important;color:#6b7c88!important;font-family:"Inter",Arial,sans-serif!important;font-size:.64rem!important}

.home-success-section{background:var(--theme-paper)!important}
.home-success-heading{align-items:flex-end!important}
.home-success-asymmetric{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)!important;grid-template-rows:1fr 1fr!important;gap:1rem!important}
.home-success-card{min-height:255px!important;display:grid!important;grid-template-columns:42% 58%!important;overflow:hidden!important;border:1px solid var(--theme-line)!important;border-radius:7px!important;background:#fff!important;box-shadow:0 7px 20px rgba(9,42,64,.055)!important}
.home-success-card.featured{grid-row:1/3!important;display:flex!important;flex-direction:column!important}
.home-success-image{position:relative!important;min-height:0!important;overflow:hidden!important;background:#dde5e8!important}
.home-success-card.featured .home-success-image{height:370px!important;flex:0 0 370px!important}
.home-success-image img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;transition:transform .35s ease!important}
.home-success-card:hover .home-success-image img{transform:scale(1.025)!important}
.home-success-image>span{position:absolute!important;left:.75rem!important;top:.75rem!important;padding:.3rem .5rem!important;border-radius:3px!important;color:#fff!important;background:rgba(8,43,65,.88)!important;font-size:.56rem!important;font-weight:700!important;text-transform:uppercase!important}
.home-success-copy{min-width:0!important;padding:1.25rem!important;display:flex!important;flex-direction:column!important}
.home-success-copy small{color:var(--theme-orange)!important;font-size:.58rem!important;font-weight:800!important;text-transform:uppercase!important}
.home-success-copy h3{margin:.32rem 0 .15rem!important;color:var(--theme-ink)!important;font-size:1.02rem!important}
.home-success-title{color:#31536a!important;font-size:.72rem!important;line-height:1.45!important}
.home-success-copy p{margin:.7rem 0!important;display:-webkit-box!important;overflow:hidden!important;color:#617583!important;font-size:.7rem!important;line-height:1.6!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important}
.home-success-card.featured .home-success-copy p{-webkit-line-clamp:4!important}
.home-success-actions{margin-top:auto!important;display:flex!important;flex-wrap:wrap!important;gap:.55rem 1rem!important}
.home-success-actions a{color:#123e5b!important;font-size:.62rem!important;font-weight:800!important;text-transform:uppercase!important}
.home-success-actions a:last-child{color:#1877f2!important}

.expertise-two-section{background:#f4f7f7!important}
.expertise-two-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1.25rem!important}
.expertise-wide-card{display:grid!important;grid-template-columns:46% 54%!important;min-height:330px!important;overflow:hidden!important;border:1px solid var(--theme-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:0 8px 22px rgba(9,42,64,.06)!important}
.expertise-wide-card img{width:100%!important;height:100%!important;min-height:330px!important;object-fit:cover!important}
.expertise-wide-card>div{padding:2rem!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.expertise-wide-card>div>span{color:var(--theme-orange)!important;font-size:.62rem!important;font-weight:800!important;text-transform:uppercase!important}
.expertise-wide-card h3{margin:.35rem 0 .6rem!important;color:var(--theme-ink)!important;font-family:"Lora",Georgia,serif!important;font-size:1.65rem!important}
.expertise-wide-card p{font-size:.82rem!important}
.expertise-wide-card a{margin-top:.6rem!important;color:#0d6d73!important;font-size:.68rem!important;font-weight:800!important}
.feedback-stats{height:auto!important;min-height:0!important}

.services-two-overview{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1.25rem!important}
.services-two-overview article{overflow:hidden!important;border:1px solid var(--theme-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:0 8px 22px rgba(9,42,64,.06)!important}
.services-two-overview img{width:100%!important;height:320px!important;object-fit:cover!important}
.services-two-overview article>div{padding:1.7rem!important}
.services-two-overview article>div>span{color:var(--theme-orange)!important;font-weight:800!important}
.services-two-overview h2{font-size:1.8rem!important}
.service-detail-hero{position:relative!important;min-height:470px!important;display:flex!important;align-items:center!important;color:#fff!important;background:linear-gradient(90deg,rgba(7,36,55,.94),rgba(7,36,55,.65),rgba(7,36,55,.12)),var(--detail-image) center/cover!important}
.service-detail-hero h1{max-width:760px!important;color:#fff!important;font-size:clamp(2.65rem,5vw,4.7rem)!important}
.service-detail-hero p{max-width:680px!important;color:rgba(255,255,255,.83)!important}
.service-detail-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 330px!important;gap:2.4rem!important;align-items:start!important}
.detail-check-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important;margin-top:1.4rem!important}
.detail-check-grid article{padding:1.15rem!important;border:1px solid var(--theme-line)!important;border-radius:7px!important;background:#fff!important}
.detail-check-grid h3{color:var(--theme-ink)!important;font-size:.95rem!important}
.detail-check-grid p,.detail-check-grid a{font-size:.75rem!important}
.service-detail-aside{position:sticky!important;top:110px!important;padding:1.35rem!important;border-radius:7px!important;color:#fff!important;background:var(--theme-navy)!important}
.service-detail-aside h3,.service-detail-aside li{color:#fff!important}
.service-detail-aside ul{padding-left:1.1rem!important}
.service-detail-aside li{margin:.5rem 0!important;font-size:.75rem!important}
.migration-intro{display:grid!important;grid-template-columns:1fr 1fr!important;gap:2rem!important;align-items:end!important}
.migration-service-list{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important;margin-top:1.7rem!important}
.migration-service-list article{display:grid!important;grid-template-columns:52px 1fr!important;gap:.8rem!important;padding:1.2rem!important;border:1px solid var(--theme-line)!important;border-radius:7px!important;background:#fff!important}
.migration-service-list article>span{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:50%!important;color:#fff!important;background:var(--theme-navy)!important;font-weight:800!important}
.service-detail-cta{padding:2rem 0!important;color:#fff!important;background:var(--theme-navy)!important}
.service-detail-cta .container{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:2rem!important}
.service-detail-cta h2{margin:0!important;color:#fff!important}
.service-detail-cta p{margin:.35rem 0 0!important;color:rgba(255,255,255,.76)!important}

.story-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.15rem!important;align-items:stretch!important}
.public-story-card{height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border:1px solid var(--theme-line)!important;border-radius:7px!important;background:#fff!important;box-shadow:0 6px 18px rgba(9,42,64,.05)!important}
.public-story-media{position:relative!important;height:230px!important;overflow:hidden!important;background:#dde5e8!important}
.public-story-media img{width:100%!important;height:100%!important;object-fit:cover!important}
.public-story-media span{position:absolute!important;left:.7rem!important;top:.7rem!important;padding:.3rem .48rem!important;border-radius:3px!important;color:#fff!important;background:rgba(8,43,65,.88)!important;font-size:.56rem!important;font-weight:700!important;text-transform:uppercase!important}
.public-story-body{flex:1!important;padding:1.15rem!important;display:flex!important;flex-direction:column!important}
.public-story-outcome{color:var(--theme-orange)!important;font-size:.58rem!important;font-weight:800!important;text-transform:uppercase!important}
.public-story-body h3{margin:.35rem 0!important;color:var(--theme-ink)!important;font-size:1rem!important}
.public-story-body p{display:-webkit-box!important;overflow:hidden!important;font-size:.72rem!important;line-height:1.6!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important}
.public-story-actions{margin-top:auto!important;display:flex!important;justify-content:space-between!important;gap:.6rem!important;padding-top:.8rem!important}
.public-story-actions a{font-size:.61rem!important;font-weight:800!important}
.facebook-story-link{color:#1877f2!important}

.home-blog-bottom{background:#fff!important}
.blog-byline{margin-top:auto!important;padding:.55rem 0!important;color:#70818e!important;font-size:.61rem!important}
.privacy-content{max-width:850px!important}
.privacy-content h2{margin-top:1.6rem!important;color:var(--theme-ink)!important}
.footer a{color:rgba(255,255,255,.78)!important}
.marn-note{margin-top:.8rem!important;padding:.65rem .75rem!important;border-left:3px solid var(--theme-gold)!important;background:rgba(255,255,255,.055)!important}
.marn-note strong,.marn-note span{display:block!important;color:#fff!important;font-size:.66rem!important}
.marn-note span{color:rgba(255,255,255,.67)!important}
.copyright{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:1.5rem!important}
.copyright a{white-space:nowrap!important}

.home-success-card, .expertise-wide-card, .public-story-card, .blog-card-equal{transition:transform .18s ease,box-shadow .18s ease!important}
.home-success-card:hover, .expertise-wide-card:hover, .public-story-card:hover, .blog-card-equal:hover{transform:translateY(-3px)!important;box-shadow:0 12px 28px rgba(9,42,64,.09)!important}

@media(max-width:1180px){
  .sunrise-brand{min-width:175px!important}.sunrise-brand .brand-copy strong{font-size:1.12rem!important}.sunrise-site-nav{gap:.78rem!important}.sunrise-site-nav>a,.sunrise-site-nav .nav-dropdown-trigger{font-size:.62rem!important}.sunrise-nav-actions{gap:.65rem!important}
  .feedback-hero .compact-hero-copy{padding:3.4rem 2.5rem!important}.feedback-hero .compact-hero-shell,.feedback-hero .compact-hero-image{min-height:560px!important}
  .home-success-card{grid-template-columns:38% 62%!important}
}
@media(max-width:1040px){
  .sunrise-brand{min-width:auto!important}.sunrise-brand .brand-copy{display:block!important}.hamb{display:block!important;margin-left:auto!important}.sunrise-nav-actions{position:absolute!important;top:100%!important;left:4vw!important;right:4vw!important;z-index:220!important;display:none!important;padding:1rem!important;align-items:stretch!important;flex-direction:column!important;border:1px solid var(--theme-line)!important;border-top:3px solid var(--theme-gold)!important;border-radius:5px!important;background:#fff!important;box-shadow:0 18px 42px rgba(9,42,64,.16)!important}.sunrise-nav-actions.open{display:flex!important}.sunrise-site-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important}.sunrise-site-nav>a,.sunrise-site-nav .nav-dropdown-trigger{width:100%!important;min-height:47px!important;padding:.65rem .55rem!important;justify-content:space-between!important;border-bottom:1px solid #edf0f2!important}.sunrise-site-nav>a::after,.sunrise-site-nav .nav-dropdown-trigger::after{bottom:0!important}.nav-dropdown-menu{position:static!important;width:auto!important;margin:.2rem 0 .5rem!important;padding:.25rem!important;opacity:1!important;visibility:visible!important;transform:none!important;border:0!important;border-left:2px solid #e5c26f!important;border-radius:0!important;box-shadow:none!important}.sunrise-book-button{width:100%!important;text-align:center!important}
  .feedback-hero .compact-hero-shell{grid-template-columns:1fr 1fr!important}.feedback-hero .compact-hero-copy h1{font-size:3.2rem!important}
  .feedback-service-strip .trust-grid{grid-template-columns:1fr 1fr!important}
  .human-about-grid{grid-template-columns:1fr!important;gap:2rem!important}
  .home-success-asymmetric{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important}.home-success-card.featured{grid-column:1/3!important;grid-row:auto!important}.home-success-card.featured .home-success-image{height:360px!important}.home-success-card:not(.featured){display:flex!important;flex-direction:column!important}.home-success-card:not(.featured) .home-success-image{height:240px!important;flex:0 0 240px!important}

  .expertise-two-grid,.services-two-overview{grid-template-columns:1fr!important}.expertise-wide-card{min-height:310px!important}
  .service-detail-grid{grid-template-columns:1fr!important}.service-detail-aside{position:relative!important;top:auto!important}.migration-intro{grid-template-columns:1fr!important}
  .story-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:760px){
  .container{width:92vw!important}.section{padding:3.6rem 0!important}.sunrise-topbar-inner{min-height:34px!important;font-size:.6rem!important}.topbar-contact-group:first-child a{display:none!important}.topbar-contact-right a:last-child{display:none!important}.sunrise-header-inner{min-height:68px!important}.sunrise-brand .brand-mark{width:50px!important;height:50px!important;flex-basis:50px!important}.sunrise-brand .brand-copy strong{font-size:1rem!important}.sunrise-brand .brand-copy small{font-size:.46rem!important}.sunrise-nav-actions{left:3vw!important;right:3vw!important}.sunrise-site-nav{grid-template-columns:1fr!important}
  .feedback-hero{padding-top:1rem!important}.feedback-hero .compact-hero-shell{grid-template-columns:1fr!important;min-height:0!important}.feedback-hero .compact-hero-copy{padding:2.7rem 1.55rem!important}.feedback-hero .compact-hero-copy h1{font-size:2.8rem!important}.feedback-hero .compact-hero-image{min-height:360px!important}.prominent-proof{display:grid!important;grid-template-columns:1fr!important}.feedback-service-strip .trust-grid{grid-template-columns:1fr 1fr!important}
  .home-success-asymmetric{grid-template-columns:1fr!important}.home-success-card.featured{grid-column:auto!important}.home-success-card,.home-success-card.featured{display:flex!important;flex-direction:column!important}.home-success-card .home-success-image,.home-success-card.featured .home-success-image{height:250px!important;flex:0 0 250px!important}
  
  .expertise-wide-card{grid-template-columns:1fr!important}.expertise-wide-card img{height:260px!important;min-height:260px!important}
  .services-two-overview img{height:260px!important}.service-detail-hero{min-height:390px!important}.detail-check-grid,.migration-service-list{grid-template-columns:1fr!important}.service-detail-cta .container{align-items:flex-start!important;flex-direction:column!important}
  .story-grid{grid-template-columns:1fr!important}.public-story-media{height:260px!important}
  .footer-grid{grid-template-columns:1fr 1fr!important}.copyright{flex-direction:column!important}
}
@media(max-width:500px){
  body{font-size:14px!important}.title{font-size:2.15rem!important}.feedback-service-strip .trust-grid{grid-template-columns:1fr!important}.feedback-hero .compact-hero-copy h1{font-size:2.42rem!important}.feedback-hero .actions{display:grid!important}.feedback-hero .btn{width:100%!important}.feedback-hero .compact-hero-image{min-height:300px!important}.principal-note{font-size:.92rem!important}.home-success-card .home-success-image,.home-success-card.featured .home-success-image{height:220px!important;flex-basis:220px!important}.expertise-wide-card>div{padding:1.35rem!important}.footer-grid{grid-template-columns:1fr!important}
}

/* Dark banner text contrast */
.page-hero,
.about-hero,
.services-cover,
.case-stories-hero,
.service-detail-hero {
  color: #ffffff;
}

.page-hero h1,
.page-hero h2,
.page-hero h3,
.page-hero p,
.page-hero .title,
.about-hero h1,
.about-hero h2,
.about-hero p,
.services-cover h1,
.services-cover h2,
.services-cover p,
.services-cover .title,
.case-stories-hero h1,
.case-stories-hero h2,
.case-stories-hero p,
.case-stories-hero .title,
.service-detail-hero h1,
.service-detail-hero h2,
.service-detail-hero p {
  color: #ffffff !important;
}

.page-hero .eyebrow,
.about-hero .eyebrow,
.services-cover .eyebrow,
.case-stories-hero .eyebrow,
.service-detail-hero .eyebrow {
  color: #f4a62a !important;
}

.services-contact-inner h2,
.services-contact-inner h3,
.services-contact-inner p {
  color: #ffffff !important;
}



/* Home About image */
.human-about-image {
  width: 100% !important;
  height: 330px !important;
  overflow: hidden !important;
  border-radius: 9px !important;
  box-shadow: 0 14px 34px rgba(9, 42, 64, 0.11) !important;
}

.human-about-image img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Google reviews */
.human-reviews-section,
.reviews-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 20%, rgba(66, 133, 244, 0.10), transparent 24%),
    radial-gradient(circle at 88% 18%, rgba(251, 188, 5, 0.11), transparent 22%),
    radial-gradient(circle at 84% 88%, rgba(52, 168, 83, 0.08), transparent 24%),
    linear-gradient(180deg, #fbfdff 0%, #f6f9fc 100%) !important;
}

.human-reviews-section::before,
.reviews-section::before {
  content: "";
  position: absolute;
  left: -90px;
  bottom: -110px;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(66, 133, 244, 0.13);
  border-radius: 50%;
  pointer-events: none;
}

.review-section-heading {
  position: relative;
  z-index: 1;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 320px !important;
  align-items: end !important;
  gap: 2rem !important;
  margin-bottom: 2rem !important;
}

.review-section-heading .title {
  max-width: 780px;
  margin-bottom: 0.55rem;
}

.review-section-heading p {
  max-width: 700px;
  color: #52697a !important;
}

.google-review-summary,
.review-page-summary {
  position: relative;
  min-width: 0 !important;
  padding: 1.2rem 1.2rem 1.15rem 4.35rem !important;
  overflow: hidden;
  border: 1px solid rgba(66, 133, 244, 0.20) !important;
  border-radius: 10px !important;
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.07), rgba(255, 255, 255, 0.98) 48%),
    #ffffff !important;
  box-shadow: 0 12px 30px rgba(31, 73, 125, 0.08) !important;
}

.google-review-summary::before,
.review-page-summary::before {
  content: "";
  position: absolute;
  left: 1.15rem;
  top: 1.2rem;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCI+CjxwYXRoIGZpbGw9IiM0Mjg1RjQiIGQ9Ik0xNy42NCA5LjIwNWMwLS42MzgtLjA1Ny0xLjI1Mi0uMTY0LTEuODQxSDl2My40ODJoNC44NDRjLS4yMDkgMS4xMjUtLjg0MyAyLjA3OC0xLjc5NyAyLjcxNnYyLjI1OGgyLjkwOWMxLjcwMi0xLjU2NyAyLjY4NC0zLjg3NCAyLjY4NC02LjYxNXoiLz4KPHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTkgMThjMi40MyAwIDQuNDY3LS44MDYgNS45NTYtMi4xOGwtMi45MDktMi4yNThjLS44MDYuNTQtMS44MzUuODU5LTMuMDQ3Ljg1OS0yLjM0NCAwLTQuMzI5LTEuNTg1LTUuMDM3LTMuNzE1SC45NTZ2Mi4zMzNDMi40MzcgMTUuOTg0IDUuNDgyIDE4IDkgMTh6Ii8+CjxwYXRoIGZpbGw9IiNGQkJDMDUiIGQ9Ik0zLjk2MyAxMC43MDZBNS40MiA1LjQyIDAgMCAxIDMuNjgyIDljMC0uNTkuMTAxLTEuMTY2LjI4MS0xLjcwNlY0Ljk2MUguOTU2QTkuMDAxIDkuMDAxIDAgMCAwIDAgOWMwIDEuNDUyLjM0OCAyLjgyNi45NTYgNC4wMzlsMy4wMDctMi4zMzN6Ii8+CjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Ik05IDMuNThjMS4zMjEgMCAyLjUwOC40NTQgMy40NDMgMS4zNDVsMi41ODEtMi41ODFDMTMuNDY0Ljg5MiAxMS40MjYgMCA5IDAgNS40ODIgMCAyLjQzNyAyLjAxNi45NTYgNC45NjFsMy4wMDcgMi4zMzNDNC42NzEgNS4xNjQgNi42NTYgMy41OCA5IDMuNTh6Ii8+Cjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.google-review-summary::after,
.review-page-summary::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    #4285f4 0 25%,
    #ea4335 25% 50%,
    #fbbc05 50% 75%,
    #34a853 75% 100%
  );
}

.google-review-summary > strong,
.review-page-summary > strong {
  display: block !important;
  color: #16354d !important;
  font-size: 1.35rem !important;
  font-weight: 750 !important;
}

.google-review-summary > span,
.review-page-summary > span {
  display: block !important;
  margin-top: 0.12rem;
  color: #607485 !important;
  font-size: 0.72rem !important;
}

.google-review-summary > div {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.85rem !important;
  margin-top: 0.65rem !important;
}

.google-review-summary a,
.review-page-summary a {
  color: #1967d2 !important;
  font-size: 0.66rem !important;
  font-weight: 700 !important;
}

.google-review-summary a:hover,
.review-page-summary a:hover {
  color: #0b57d0 !important;
  text-decoration: underline;
}

.google-review-grid {
  position: relative;
  z-index: 1;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.2rem !important;
  align-items: stretch !important;
}

.google-review-card {
  position: relative;
  height: 100% !important;
  min-height: 315px !important;
  padding: 1.35rem 1.35rem 1.25rem !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden;
  border: 1px solid rgba(16, 55, 81, 0.11) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 10px 26px rgba(31, 73, 125, 0.075) !important;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease !important;
}

.google-review-card::before {
  content: "“";
  position: absolute;
  right: 1rem;
  bottom: -1.3rem;
  color: rgba(66, 133, 244, 0.07);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 8rem;
  line-height: 1;
  pointer-events: none;
}

.google-review-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background: #4285f4;
}

.google-review-card:nth-child(2)::after {
  background: #34a853;
}

.google-review-card:nth-child(3)::after {
  background: #ea4335;
}

.google-review-card:nth-child(4)::after {
  background: #fbbc05;
}

.google-review-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(66, 133, 244, 0.28) !important;
  box-shadow: 0 18px 38px rgba(31, 73, 125, 0.13) !important;
}

.google-review-header {
  position: relative;
  z-index: 1;
  display: grid !important;
  grid-template-columns: 50px minmax(0, 1fr) 30px !important;
  align-items: center !important;
  gap: 0.8rem !important;
}

.review-avatar {
  width: 48px !important;
  height: 48px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  border: 3px solid rgba(255, 255, 255, 0.92);
  border-radius: 50% !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #4b78a5, #173b5c) !important;
  box-shadow: 0 0 0 2px rgba(66, 133, 244, 0.16);
  font-size: 1rem !important;
  font-weight: 700 !important;
}

.google-review-card:nth-child(2) .review-avatar {
  background: linear-gradient(135deg, #58b979, #237346) !important;
  box-shadow: 0 0 0 2px rgba(52, 168, 83, 0.17);
}

.google-review-card:nth-child(3) .review-avatar {
  background: linear-gradient(135deg, #e86d67, #a9332d) !important;
  box-shadow: 0 0 0 2px rgba(234, 67, 53, 0.15);
}

.review-avatar img {
  width: 100% !important;
  height: 100% !important;
  display: block;
  object-fit: cover !important;
}

.google-review-person h3 {
  margin: 0 0 0.14rem !important;
  color: #102d42 !important;
  font-size: 0.94rem !important;
  font-weight: 700 !important;
}

.google-review-meta {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 0.35rem !important;
  color: #718290 !important;
  font-size: 0.64rem !important;
}

.google-review-meta b {
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  color: #ffffff !important;
  background: #1a73e8;
  font-size: 0.58rem;
  line-height: 1;
}

.google-review-meta time {
  width: 100%;
  margin-top: 0.05rem;
  color: #8b98a3;
}

.google-mark {
  width: 28px !important;
  height: 28px !important;
  display: block !important;
  overflow: hidden;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCI+CjxwYXRoIGZpbGw9IiM0Mjg1RjQiIGQ9Ik0xNy42NCA5LjIwNWMwLS42MzgtLjA1Ny0xLjI1Mi0uMTY0LTEuODQxSDl2My40ODJoNC44NDRjLS4yMDkgMS4xMjUtLjg0MyAyLjA3OC0xLjc5NyAyLjcxNnYyLjI1OGgyLjkwOWMxLjcwMi0xLjU2NyAyLjY4NC0zLjg3NCAyLjY4NC02LjYxNXoiLz4KPHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTkgMThjMi40MyAwIDQuNDY3LS44MDYgNS45NTYtMi4xOGwtMi45MDktMi4yNThjLS44MDYuNTQtMS44MzUuODU5LTMuMDQ3Ljg1OS0yLjM0NCAwLTQuMzI5LTEuNTg1LTUuMDM3LTMuNzE1SC45NTZ2Mi4zMzNDMi40MzcgMTUuOTg0IDUuNDgyIDE4IDkgMTh6Ii8+CjxwYXRoIGZpbGw9IiNGQkJDMDUiIGQ9Ik0zLjk2MyAxMC43MDZBNS40MiA1LjQyIDAgMCAxIDMuNjgyIDljMC0uNTkuMTAxLTEuMTY2LjI4MS0xLjcwNlY0Ljk2MUguOTU2QTkuMDAxIDkuMDAxIDAgMCAwIDAgOWMwIDEuNDUyLjM0OCAyLjgyNi45NTYgNC4wMzlsMy4wMDctMi4zMzN6Ii8+CjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Ik05IDMuNThjMS4zMjEgMCAyLjUwOC40NTQgMy40NDMgMS4zNDVsMi41ODEtMi41ODFDMTMuNDY0Ljg5MiAxMS40MjYgMCA5IDAgNS40ODIgMCAyLjQzNyAyLjAxNi45NTYgNC45NjFsMy4wMDcgMi4zMzNDNC42NzEgNS4xNjQgNi42NTYgMy41OCA5IDMuNTh6Ii8+Cjwvc3ZnPg==") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  color: transparent !important;
  font-size: 0 !important;
}

.google-stars {
  position: relative;
  z-index: 1;
  margin: 1rem 0 0.65rem !important;
  font-size: 0.94rem !important;
  letter-spacing: 0.08em !important;
}

.google-stars span {
  color: #fbbc04 !important;
  text-shadow: 0 1px 1px rgba(151, 105, 0, 0.12);
}

.google-stars i {
  color: #dce2e7 !important;
  font-style: normal !important;
}

.google-review-card p {
  position: relative;
  z-index: 1;
  margin: 0 0 1rem !important;
  color: #31495b !important;
  font-size: 0.84rem !important;
  line-height: 1.72 !important;
}

.google-review-link {
  position: relative;
  z-index: 1;
  margin-top: auto !important;
  padding-top: 0.65rem;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border-top: 1px solid rgba(16, 55, 81, 0.08);
  color: #1967d2 !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
}

.google-review-link:hover {
  color: #0b57d0 !important;
}

.review-page-summary {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-bottom: 1.5rem;
}

.google-review-grid-all {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Dark banner text contrast */
.page-hero,
.about-hero,
.services-cover,
.case-stories-hero,
.service-detail-hero {
  color: #ffffff;
}

.page-hero h1,
.page-hero h2,
.page-hero h3,
.page-hero p,
.page-hero .title,
.about-hero h1,
.about-hero h2,
.about-hero p,
.services-cover h1,
.services-cover h2,
.services-cover p,
.services-cover .title,
.case-stories-hero h1,
.case-stories-hero h2,
.case-stories-hero p,
.case-stories-hero .title,
.service-detail-hero h1,
.service-detail-hero h2,
.service-detail-hero p {
  color: #ffffff !important;
}

.page-hero .eyebrow,
.about-hero .eyebrow,
.services-cover .eyebrow,
.case-stories-hero .eyebrow,
.service-detail-hero .eyebrow {
  color: #f4a62a !important;
}

.services-contact-inner h2,
.services-contact-inner h3,
.services-contact-inner p {
  color: #ffffff !important;
}

@media (max-width: 1040px) {
  .human-about-image {
    height: 300px !important;
  }

  .review-section-heading {
    grid-template-columns: 1fr !important;
  }

  .google-review-summary {
    width: 100% !important;
  }

  .google-review-grid,
  .google-review-grid-all {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .human-about-image {
    height: 250px !important;
  }

  .google-review-grid,
  .google-review-grid-all {
    grid-template-columns: 1fr !important;
  }

  .google-review-card {
    min-height: 285px !important;
  }

  .google-review-summary {
    padding-left: 4rem !important;
  }
}

@media (max-width: 500px) {
  .human-about-image {
    height: 220px !important;
  }

  .google-review-summary {
    padding: 4.1rem 1rem 1rem !important;
  }

  .google-review-summary::before {
    left: 1rem;
    top: 0.9rem;
  }

  .google-review-summary > div {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  .google-review-card {
    padding: 1.15rem !important;
  }
}

/* Fixed responsive navigation */
:root {
  --desktop-topbar-height: 42px;
  --desktop-header-height: 86px;
  --mobile-header-height: 72px;
}

html {
  scroll-padding-top: calc(
    var(--desktop-topbar-height) + var(--desktop-header-height) + 14px
  ) !important;
}

body {
  padding-top: calc(
    var(--desktop-topbar-height) + var(--desktop-header-height)
  ) !important;
}

.topbar,
.sunrise-topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 10000 !important;
  width: 100% !important;
  min-height: var(--desktop-topbar-height) !important;
}

.topbar .container,
.sunrise-topbar-inner {
  min-height: var(--desktop-topbar-height) !important;
}

.header,
.site-header,
.sunrise-header,
.premium-lavalamp-header {
  position: fixed !important;
  top: var(--desktop-topbar-height) !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  width: 100% !important;
  min-height: var(--desktop-header-height) !important;
  transform: none !important;
  background: rgba(255, 255, 255, 0.98) !important;
  border-bottom: 1px solid rgba(9, 42, 64, 0.10) !important;
  box-shadow: 0 5px 20px rgba(9, 42, 64, 0.10) !important;
  backdrop-filter: blur(14px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(135%) !important;
}

.site-header-inner,
.sunrise-header-inner,
.header .container,
.header .nav {
  min-height: var(--desktop-header-height) !important;
}

.nav-actions,
.site-nav,
.nav-dropdown,
.nav-dropdown-menu {
  z-index: 10001 !important;
}

@media (max-width: 900px) {
  html {
    scroll-padding-top: calc(var(--mobile-header-height) + 12px) !important;
  }

  body {
    padding-top: var(--mobile-header-height) !important;
  }

  .topbar,
  .sunrise-topbar {
    display: none !important;
  }

  .header,
  .site-header,
  .sunrise-header,
  .premium-lavalamp-header {
    top: 0 !important;
    min-height: var(--mobile-header-height) !important;
  }

  .site-header-inner,
  .sunrise-header-inner,
  .header .container,
  .header .nav {
    min-height: var(--mobile-header-height) !important;
  }

  .site-header .nav-actions,
  .sunrise-header .nav-actions,
  .header .nav-actions {
    position: fixed !important;
    top: var(--mobile-header-height) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: calc(100vh - var(--mobile-header-height) - 18px) !important;
    overflow-y: auto !important;
  }
}

/* Balanced professional navigation */
.sunrise-header,
.site-header,
.header {
  background: rgba(255, 255, 255, 0.99) !important;
  border-bottom: 1px solid rgba(13, 48, 72, 0.10) !important;
  box-shadow: 0 5px 18px rgba(9, 42, 64, 0.075) !important;
}

.sunrise-header-inner,
.site-header-inner {
  width: min(1360px, 94vw) !important;
  min-height: 86px !important;
  margin-inline: auto !important;
  padding-inline: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2rem !important;
}

.sunrise-brand,
.brand {
  flex: 0 0 auto !important;
  min-width: 250px !important;
  padding-left: 0 !important;
  padding-right: 1rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.82rem !important;
}

.sunrise-brand .brand-mark,
.brand .brand-mark {
  width: 62px !important;
  height: 62px !important;
  flex: 0 0 62px !important;
}

.sunrise-brand .brand-copy,
.brand .brand-copy {
  min-width: 0 !important;
}

.sunrise-nav-actions,
.nav-actions {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 1.15rem !important;
}

.sunrise-site-nav,
.site-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.15rem !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.sunrise-site-nav > a,
.sunrise-site-nav .nav-dropdown-trigger,
.site-nav > a,
.site-nav .nav-dropdown-trigger {
  position: relative !important;
  min-height: 50px !important;
  padding: 0.72rem 0.15rem 0.86rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #183448 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0.69rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0.018em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  transition: color 0.18s ease !important;
}

.sunrise-site-nav > a:hover,
.sunrise-site-nav > a.active,
.sunrise-site-nav .nav-dropdown-trigger:hover,
.sunrise-site-nav .nav-dropdown-trigger.active,
.sunrise-site-nav .nav-dropdown:hover > .nav-dropdown-trigger,
.site-nav > a:hover,
.site-nav > a.active,
.site-nav .nav-dropdown-trigger:hover,
.site-nav .nav-dropdown-trigger.active,
.site-nav .nav-dropdown:hover > .nav-dropdown-trigger {
  color: #df761e !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Short underline centred directly beneath the menu label */
.sunrise-site-nav > a::after,
.sunrise-site-nav .nav-dropdown-trigger::after,
.site-nav > a::after,
.site-nav .nav-dropdown-trigger::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 5px !important;
  width: 0 !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #dda633, #f47721) !important;
  transform: translateX(-50%) !important;
  transition: width 0.18s ease !important;
}

.sunrise-site-nav > a:hover::after,
.sunrise-site-nav > a.active::after,
.sunrise-site-nav .nav-dropdown-trigger:hover::after,
.sunrise-site-nav .nav-dropdown-trigger.active::after,
.sunrise-site-nav .nav-dropdown:hover > .nav-dropdown-trigger::after,
.site-nav > a:hover::after,
.site-nav > a.active::after,
.site-nav .nav-dropdown-trigger:hover::after,
.site-nav .nav-dropdown-trigger.active::after,
.site-nav .nav-dropdown:hover > .nav-dropdown-trigger::after {
  right: auto !important;
  width: 22px !important;
}

/* Clean dropdown chevron */
.sunrise-site-nav .nav-dropdown-trigger span,
.site-nav .nav-dropdown-trigger span {
  width: 6px !important;
  height: 6px !important;
  margin: -3px 1px 0 0 !important;
  display: inline-block !important;
  flex: 0 0 6px !important;
  overflow: hidden !important;
  border-right: 1.5px solid currentColor !important;
  border-bottom: 1.5px solid currentColor !important;
  color: inherit !important;
  font-size: 0 !important;
  line-height: 0 !important;
  transform: rotate(45deg) !important;
  transform-origin: center !important;
  transition:
    transform 0.18s ease,
    margin 0.18s ease !important;
}

.sunrise-site-nav .nav-dropdown:hover > .nav-dropdown-trigger span,
.sunrise-site-nav .nav-dropdown:focus-within > .nav-dropdown-trigger span,
.site-nav .nav-dropdown:hover > .nav-dropdown-trigger span,
.site-nav .nav-dropdown:focus-within > .nav-dropdown-trigger span {
  margin-top: 3px !important;
  transform: rotate(225deg) !important;
}

.nav-dropdown-menu {
  top: calc(100% - 3px) !important;
  min-width: 270px !important;
  padding: 0.48rem !important;
  border: 1px solid rgba(13, 48, 72, 0.10) !important;
  border-top: 3px solid #dda633 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.995) !important;
  box-shadow: 0 18px 42px rgba(9, 42, 64, 0.15) !important;
}

.nav-dropdown-menu a {
  padding: 0.78rem 0.82rem !important;
  border-radius: 5px !important;
  transition:
    color 0.16s ease,
    background-color 0.16s ease,
    transform 0.16s ease !important;
}

.nav-dropdown-menu a:hover {
  color: #0d6570 !important;
  background: #f4f8f8 !important;
  transform: translateX(2px) !important;
}

.nav-dropdown-menu a strong {
  color: #17354b !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
}

.nav-dropdown-menu a small {
  margin-top: 0.14rem !important;
  color: #71818d !important;
  font-size: 0.61rem !important;
  line-height: 1.45 !important;
}

.sunrise-book-button,
.nav-book {
  flex: 0 0 auto !important;
  min-width: 112px !important;
  min-height: 46px !important;
  padding: 0.76rem 1.08rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(158, 108, 15, 0.16) !important;
  border-radius: 6px !important;
  color: #132f42 !important;
  background: linear-gradient(135deg, #e7b94a, #dca536) !important;
  box-shadow: 0 8px 18px rgba(172, 118, 14, 0.16) !important;
  font-size: 0.68rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  transition:
    color 0.18s ease,
    background 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease !important;
}

.sunrise-book-button:hover,
.nav-book:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, #173c59, #0c2c44) !important;
  box-shadow: 0 11px 24px rgba(9, 42, 64, 0.19) !important;
  transform: translateY(-1px) !important;
}

/* Medium desktop and tablet */
@media (max-width: 1180px) and (min-width: 901px) {
  .sunrise-header-inner,
  .site-header-inner {
    width: min(1180px, 96vw) !important;
    gap: 1rem !important;
  }

  .sunrise-brand,
  .brand {
    min-width: 190px !important;
    padding-right: 0.5rem !important;
  }

  .sunrise-brand .brand-copy strong,
  .brand .brand-copy strong {
    font-size: 1.08rem !important;
  }

  .sunrise-site-nav,
  .site-nav {
    gap: 0.7rem !important;
  }

  .sunrise-site-nav > a,
  .sunrise-site-nav .nav-dropdown-trigger,
  .site-nav > a,
  .site-nav .nav-dropdown-trigger {
    font-size: 0.61rem !important;
  }

  .sunrise-book-button,
  .nav-book {
    min-width: 98px !important;
    padding-inline: 0.78rem !important;
    font-size: 0.62rem !important;
  }
}

/* Mobile navigation */
@media (max-width: 900px) {
  .sunrise-header-inner,
  .site-header-inner {
    width: 94vw !important;
    min-height: var(--mobile-header-height, 72px) !important;
    padding-inline: 0 !important;
    gap: 0.75rem !important;
  }

  .sunrise-brand,
  .brand {
    min-width: 0 !important;
    padding: 0 !important;
  }

  .sunrise-nav-actions,
  .nav-actions {
    position: fixed !important;
    top: var(--mobile-header-height, 72px) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: calc(100vh - var(--mobile-header-height, 72px) - 18px) !important;
    padding: 0.75rem !important;
    display: none !important;
    overflow-y: auto !important;
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 0.45rem !important;
    border: 1px solid rgba(13, 48, 72, 0.10) !important;
    border-top: 3px solid #dda633 !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.995) !important;
    box-shadow: 0 20px 46px rgba(9, 42, 64, 0.18) !important;
  }

  .sunrise-nav-actions.open,
  .nav-actions.open {
    display: flex !important;
  }

  .sunrise-site-nav,
  .site-nav {
    width: 100% !important;
    display: flex !important;
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 0.18rem !important;
  }

  .sunrise-site-nav > a,
  .sunrise-site-nav .nav-dropdown-trigger,
  .site-nav > a,
  .site-nav .nav-dropdown-trigger {
    width: 100% !important;
    min-height: 46px !important;
    padding: 0.76rem 0.8rem !important;
    justify-content: space-between !important;
    border-radius: 6px !important;
    font-size: 0.69rem !important;
  }

  .sunrise-site-nav > a:hover,
  .sunrise-site-nav > a.active,
  .sunrise-site-nav .nav-dropdown-trigger:hover,
  .sunrise-site-nav .nav-dropdown-trigger.active,
  .site-nav > a:hover,
  .site-nav > a.active,
  .site-nav .nav-dropdown-trigger:hover,
  .site-nav .nav-dropdown-trigger.active {
    background: rgba(244, 119, 33, 0.06) !important;
  }

  .sunrise-site-nav > a::after,
  .sunrise-site-nav .nav-dropdown-trigger::after,
  .site-nav > a::after,
  .site-nav .nav-dropdown-trigger::after {
    left: 0 !important;
    top: 50% !important;
    bottom: auto !important;
    width: 3px !important;
    height: 0 !important;
    transform: translateY(-50%) !important;
    transition: height 0.18s ease !important;
  }

  .sunrise-site-nav > a:hover::after,
  .sunrise-site-nav > a.active::after,
  .sunrise-site-nav .nav-dropdown-trigger:hover::after,
  .sunrise-site-nav .nav-dropdown-trigger.active::after,
  .site-nav > a:hover::after,
  .site-nav > a.active::after,
  .site-nav .nav-dropdown-trigger:hover::after,
  .site-nav .nav-dropdown-trigger.active::after {
    width: 3px !important;
    height: 24px !important;
  }

  .nav-dropdown-menu {
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0.2rem 0 0.35rem 0.7rem !important;
    padding: 0.3rem !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    border: 0 !important;
    border-left: 2px solid #dda633 !important;
    border-radius: 0 !important;
    background: #f7f9fa !important;
    box-shadow: none !important;
  }

  .sunrise-book-button,
  .nav-book {
    width: 100% !important;
    margin-top: 0.25rem !important;
  }
}

/* Compact responsive homepage hero */
.compact-hero {
  padding: 14px 0 24px !important;
}

.compact-hero .container {
  width: min(1480px, 95vw) !important;
}

.compact-hero-shell {
  min-height: 420px !important;
  grid-template-columns: minmax(0, 42%) minmax(0, 58%) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 46px rgba(7, 29, 50, 0.14) !important;
}

.compact-hero-copy {
  padding: 38px 46px !important;
}

.compact-hero-copy h1 {
  max-width: 590px !important;
  margin: 0.35rem 0 0.75rem !important;
  font-size: clamp(2.45rem, 3.55vw, 3.85rem) !important;
  line-height: 1.03 !important;
}

.compact-hero-copy p {
  max-width: 560px !important;
  font-size: 0.88rem !important;
  line-height: 1.62 !important;
}

.compact-hero-copy .actions {
  margin-top: 1rem !important;
  gap: 0.65rem !important;
}

.compact-hero-copy .btn {
  min-height: 42px !important;
  padding: 0.68rem 1rem !important;
  font-size: 0.7rem !important;
}

.compact-proof {
  margin-top: 0.95rem !important;
  gap: 0.42rem 0.85rem !important;
  font-size: 0.62rem !important;
}

.compact-hero-image {
  min-height: 420px !important;
  background-position: 54% center !important;
}

.compact-location {
  left: 16px !important;
  bottom: 16px !important;
  max-width: 235px !important;
  padding: 0.65rem 0.8rem !important;
  border-radius: 9px !important;
}

.compact-location small {
  font-size: 0.56rem !important;
}

.compact-location strong {
  font-size: 0.74rem !important;
}

/* Standard laptop */
@media (max-width: 1180px) and (min-width: 901px) {
  .compact-hero-shell {
    min-height: 390px !important;
    grid-template-columns: minmax(0, 44%) minmax(0, 56%) !important;
  }

  .compact-hero-copy {
    padding: 32px 34px !important;
  }

  .compact-hero-copy h1 {
    font-size: clamp(2.2rem, 3.7vw, 3.25rem) !important;
  }

  .compact-hero-image {
    min-height: 390px !important;
  }
}

/* Tablet keeps text and image side by side */
@media (max-width: 900px) and (min-width: 641px) {
  .compact-hero {
    padding: 12px 0 20px !important;
  }

  .compact-hero .container {
    width: 96vw !important;
  }

  .compact-hero-shell {
    min-height: 370px !important;
    grid-template-columns: minmax(0, 48%) minmax(0, 52%) !important;
    border-radius: 14px !important;
  }

  .compact-hero-copy {
    padding: 28px 24px !important;
  }

  .compact-hero-copy h1 {
    margin-bottom: 0.65rem !important;
    font-size: clamp(2rem, 4.8vw, 2.85rem) !important;
  }

  .compact-hero-copy p {
    font-size: 0.78rem !important;
    line-height: 1.55 !important;
  }

  .compact-hero-copy .actions {
    display: flex !important;
    flex-wrap: wrap !important;
  }

  .compact-hero-copy .btn {
    min-height: 38px !important;
    padding: 0.58rem 0.72rem !important;
    font-size: 0.62rem !important;
  }

  .compact-proof {
    font-size: 0.55rem !important;
  }

  .compact-hero-image {
    min-height: 370px !important;
    background-position: 58% center !important;
  }

  .compact-location {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    max-width: none !important;
  }
}

/* Mobile: both text and image visible inside one compact view */
@media (max-width: 640px) {
  .compact-hero {
    padding: 8px 0 14px !important;
  }

  .compact-hero .container {
    width: 96vw !important;
  }

  .compact-hero-shell {
    width: 100% !important;
    height: min(
      650px,
      calc(100svh - var(--mobile-header-height, 72px) - 14px)
    ) !important;
    min-height: 520px !important;
    max-height: 650px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(0, 68%) minmax(150px, 32%) !important;
    overflow: hidden !important;
    border-radius: 13px !important;
  }

  .compact-hero-copy {
    min-height: 0 !important;
    padding: 20px 18px 16px !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .compact-hero-copy .eyebrow {
    margin-bottom: 0.15rem !important;
    font-size: 0.55rem !important;
  }

  .compact-hero-copy h1 {
    max-width: 100% !important;
    margin: 0.2rem 0 0.55rem !important;
    font-size: clamp(1.85rem, 8.6vw, 2.45rem) !important;
    line-height: 1.01 !important;
  }

  .compact-hero-copy p {
    max-width: 100% !important;
    font-size: 0.72rem !important;
    line-height: 1.48 !important;
  }

  .compact-hero-copy .actions {
    margin-top: 0.72rem !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.45rem !important;
  }

  .compact-hero-copy .btn {
    width: 100% !important;
    min-height: 36px !important;
    padding: 0.52rem 0.42rem !important;
    justify-content: center !important;
    font-size: 0.58rem !important;
    white-space: nowrap !important;
  }

  .compact-proof {
    margin-top: 0.62rem !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.25rem 0.55rem !important;
    font-size: 0.51rem !important;
    line-height: 1.35 !important;
  }

  .compact-proof span {
    gap: 0.25rem !important;
  }

  .compact-proof span::before {
    width: 4px !important;
    height: 4px !important;
  }

  .compact-hero-image {
    min-height: 0 !important;
    height: 100% !important;
    background-position: 56% center !important;
  }

  .compact-location {
    left: 9px !important;
    right: auto !important;
    bottom: 9px !important;
    max-width: 205px !important;
    padding: 0.45rem 0.58rem !important;
    border-radius: 7px !important;
  }

  .compact-location small {
    margin-bottom: 0.08rem !important;
    font-size: 0.48rem !important;
  }

  .compact-location strong {
    display: block !important;
    font-size: 0.62rem !important;
    line-height: 1.25 !important;
  }
}

/* Small mobile */
@media (max-width: 390px) {
  .compact-hero-shell {
    min-height: 500px !important;
    grid-template-rows: minmax(0, 70%) minmax(145px, 30%) !important;
  }

  .compact-hero-copy {
    padding: 17px 15px 14px !important;
  }

  .compact-hero-copy h1 {
    font-size: clamp(1.72rem, 8.8vw, 2.05rem) !important;
  }

  .compact-hero-copy p {
    font-size: 0.67rem !important;
  }

  .compact-hero-copy .btn {
    font-size: 0.54rem !important;
  }

  .compact-proof {
    font-size: 0.47rem !important;
  }

  .compact-location {
    max-width: 180px !important;
  }
}

/* Short landscape phones */
@media (max-width: 900px) and (max-height: 560px) and (orientation: landscape) {
  .compact-hero-shell {
    height: auto !important;
    min-height: 340px !important;
    max-height: none !important;
    grid-template-columns: minmax(0, 50%) minmax(0, 50%) !important;
    grid-template-rows: 1fr !important;
  }

  .compact-hero-copy {
    padding: 20px !important;
  }

  .compact-hero-copy h1 {
    font-size: clamp(1.7rem, 4.5vw, 2.35rem) !important;
  }

  .compact-hero-image {
    min-height: 340px !important;
  }
}

